@charset "UTF-8";
/*
Theme Name: Visit Sitka
Theme URI: https://visitsitka.org
Description: Website tailored to the specific needs of Sitka, Alaska.
Author: Vern Smith
Author URI: https://websmith.international
Version: 1.3
*/
:root {
  --ws-primary: #009775;
}

html, body, body div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video, main {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
  box-sizing: border-box;
}

html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
  display: block;
}

audio, canvas, progress, video {
  display: inline-block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

progress {
  vertical-align: baseline;
}

template, [hidden] {
  display: none;
}

a {
  background-color: transparent;
}

a:active, a:hover {
  outline-width: 0;
}

abbr[title] {
  border-bottom: none;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

b, strong {
  font-weight: inherit;
}

b, strong {
  font-weight: bolder;
}

dfn {
  font-style: italic;
}

mark {
  background-color: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

svg:not(:root) {
  overflow: hidden;
}

code, kbd, pre, samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

figure {
  margin: 1em 40px;
}

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

button, input, select, textarea {
  font: inherit;
  margin: 0;
}

optgroup {
  font-weight: bold;
}

button, input, select {
  overflow: visible;
}

button, select {
  text-transform: none;
}

button, [type=button], [type=reset], [type=submit] {
  cursor: pointer;
  transition: all 400ms cubic-bezier(0.5, 0.1, 0.5, 0.9);
}

[disabled] {
  cursor: default;
}

button, html [type=button], [type=reset], [type=submit] {
  -webkit-appearance: button;
}

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

button:-moz-focusring, input:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

textarea {
  overflow: auto;
}

[type=checkbox], [type=radio] {
  box-sizing: border-box;
  padding: 0;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto;
}

[type=search] {
  -webkit-appearance: none;
}

[type=search]::-webkit-search-cancel-button, [type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

blockquote, q {
  quotes: none;
}

del {
  text-decoration: line-through;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

th {
  font-weight: bold;
  vertical-align: bottom;
}

td {
  font-weight: normal;
  vertical-align: top;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 1em 0;
  padding: 0;
}

pre {
  white-space: pre-line;
  word-wrap: break-word;
}

input[type=radio] {
  vertical-align: text-bottom;
}

input[type=checkbox] {
  vertical-align: bottom;
  *vertical-align: baseline;
}

select, input, textarea {
  font: 99%/1 "Circular", Helvetica, Arial, sans-serif;
}

table {
  font-size: inherit;
}

td, td img {
  vertical-align: top;
}

a, button, input[type=submit] {
  transition-duration: 140ms;
  transition-timing-function: cubic-bezier(0.5, 0.1, 0.5, 0.9);
  transition-property: color, background, border;
}

button {
  width: auto;
  overflow: visible;
}

/* Custom text-selection colors */

::selection {
  background: rgba(0, 151, 117, 0.85);
  color: #fff;
  text-shadow: none;
}

a:link {
  -webkit-tap-highlight-color: rgba(0, 151, 117, 0.85);
}

ins {
  background-color: #009775;
  color: #ffffff;
  text-decoration: none;
}

mark {
  background-color: #009775;
  color: #fff;
  font-style: italic;
  font-weight: bold;
}

/* we wanna keep the wordpress img settings */
.alignleft, img.alignleft {
  display: inline;
  float: left;
  margin-right: 24px;
  margin-top: 4px;
}

.alignright, img.alignright {
  display: inline;
  float: right;
  margin-left: 24px;
  margin-top: 4px;
}

.aligncenter, img.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.alignleft, img.alignleft, .alignright, img.alignright, .aligncenter, img.aligncenter {
  margin-bottom: 12px;
}

.clear {
  clear: both;
}

.clear-left {
  clear: left;
}

.clear-right {
  clear: right;
}

/* And here begins the Wordpress fun. Paste all of the custom CSS here!!!
-------------------------------------------------------------------------------*/
body {
  font: 100%/1 "Circular", Helvetica, Arial, sans-serif;
  background-color: #ffffff;
  margin: 0;
  padding: 0;
  color: #231f20;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

@font-face {
  font-family: "Circular";
  font-display: swap;
  src: url("_fonts/CircularStd-Book.eot");
  src: local("Circular Std Book"), local("CircularStd-Book"), url("_fonts/CircularStd-Book.eot?#iefix") format("embedded-opentype"), url("_fonts/CircularStd-Book.woff2") format("woff2"), url("_fonts/CircularStd-Book.woff") format("woff"), url("_fonts/CircularStd-Book.ttf") format("truetype"), url("_fonts/CircularStd-Book.svg#CircularStd-Book") format("svg");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Circular";
  font-display: swap;
  src: url("_fonts/CircularStd-BookItalic.eot");
  src: local("Circular Std Book Italic"), local("CircularStd-BookItalic"), url("_fonts/CircularStd-BookItalic.eot?#iefix") format("embedded-opentype"), url("_fonts/CircularStd-BookItalic.woff2") format("woff2"), url("_fonts/CircularStd-BookItalic.woff") format("woff"), url("_fonts/CircularStd-BookItalic.ttf") format("truetype"), url("_fonts/CircularStd-BookItalic.svg#CircularStd-BookItalic") format("svg");
  font-weight: normal;
  font-style: italic;
}
@font-face {
  font-family: "Circular";
  font-display: swap;
  src: url("_fonts/CircularStd-Bold.eot");
  src: local("Circular Std Bold"), local("CircularStd-Bold"), url("_fonts/CircularStd-Bold.eot?#iefix") format("embedded-opentype"), url("_fonts/CircularStd-Bold.woff2") format("woff2"), url("_fonts/CircularStd-Bold.woff") format("woff"), url("_fonts/CircularStd-Bold.ttf") format("truetype"), url("_fonts/CircularStd-Bold.svg#CircularStd-Bold") format("svg");
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: "Circular";
  font-display: swap;
  src: url("_fonts/CircularStd-BoldItalic.eot");
  src: local("Circular Std Bold Italic"), local("CircularStd-BoldItalic"), url("_fonts/CircularStd-BoldItalic.eot?#iefix") format("embedded-opentype"), url("_fonts/CircularStd-BoldItalic.woff2") format("woff2"), url("_fonts/CircularStd-BoldItalic.woff") format("woff"), url("_fonts/CircularStd-BoldItalic.ttf") format("truetype"), url("_fonts/CircularStd-BoldItalic.svg#CircularStd-BoldItalic") format("svg");
  font-weight: bold;
  font-style: italic;
}
@font-face {
  font-family: "Circular";
  font-display: swap;
  src: url("_fonts/CircularStd-Black.eot");
  src: local("Circular Std Black"), local("CircularStd-Black"), url("_fonts/CircularStd-Black.eot?#iefix") format("embedded-opentype"), url("_fonts/CircularStd-Black.woff2") format("woff2"), url("_fonts/CircularStd-Black.woff") format("woff"), url("_fonts/CircularStd-Black.ttf") format("truetype"), url("_fonts/CircularStd-Black.svg#CircularStd-Black") format("svg");
  font-weight: 900;
  font-style: normal;
}
@font-face {
  font-family: "Circular";
  font-display: swap;
  src: url("_fonts/CircularStd-BlackItalic.eot");
  src: local("Circular Std Black Italic"), local("CircularStd-BlackItalic"), url("_fonts/CircularStd-BlackItalic.eot?#iefix") format("embedded-opentype"), url("_fonts/CircularStd-BlackItalic.woff2") format("woff2"), url("_fonts/CircularStd-BlackItalic.woff") format("woff"), url("_fonts/CircularStd-BlackItalic.ttf") format("truetype"), url("_fonts/CircularStd-BlackItalic.svg#CircularStd-BlackItalic") format("svg");
  font-weight: 900;
  font-style: italic;
}
@font-face {
  font-family: "Formata";
  font-display: swap;
  src: url("_fonts/Formata-Bold.eot");
  src: local("Formata Bold"), local("Formata-Bold"), url("_fonts/Formata-Bold.eot?#iefix") format("embedded-opentype"), url("_fonts/Formata-Bold.woff2") format("woff2"), url("_fonts/Formata-Bold.woff") format("woff"), url("_fonts/Formata-Bold.ttf") format("truetype"), url("_fonts/Formata-Bold.svg#Formata-Bold") format("svg");
  font-weight: normal;
  font-style: normal;
}
h1, h2, h3, h4, h5, h6, p, ul, ol, dl {
  padding: 0;
  margin: 0;
  font-weight: normal;
}

h2, h3, h4, h5, h6 {
  line-height: 1;
}

main h1, h2, .headline {
  font-size: 3.125rem;
  font: 100%/1 "Formata", Helvetica, Arial, sans-serif;
}

h3, h4, h5, h6 {
  font-weight: 900;
}

main h1 {
  font-size: 5rem;
}

h2 {
  font-size: 3.125rem;
}

article.post h2 {
  margin-bottom: 2rem;
}

h3 {
  font-size: 2.25rem;
  margin-bottom: 1rem;
}

.emphasized h3 {
  font-size: 2.375rem;
}

h3.section-title {
  position: relative;
  margin-bottom: 2rem;
  line-height: 1;
  display: flex;
  width: 100%;
  justify-content: center;
  align-content: center;
  align-items: center;
  white-space: nowrap;
}

h3.section-title::before, h3.section-title::after {
  display: block;
  content: "";
  height: 2px;
  background-color: #231f20;
  width: 100%;
}

h3.section-title::before {
  margin-right: 1rem;
}

h3.section-title::after {
  margin-left: 1rem;
}

h4 {
  font-size: 1.5625rem;
  margin-bottom: 1rem;
}

.emphasized h4 {
  font-size: 1.625rem;
}

* + h4 {
  margin-top: 2rem;
}

.block h4 {
  margin: 0;
}

h5 {
  font-size: 1.125rem;
  margin-bottom: 10px;
}

.emphasized h5 {
  font-size: 1.25rem;
}

address {
  font-weight: 900;
  letter-spacing: 0.025em;
  font-size: 1.125rem;
  font-style: normal;
  margin: 1em 0;
}

.event-details address {
  font-size: 1.75rem;
}

time {
  font-weight: 900;
  letter-spacing: 0.025em;
  font-size: 1.125rem;
  font-style: normal;
  margin: 1em 0;
}

.event-details time {
  font-size: 2.25rem;
}

main p, main ul, main ol, main dl {
  line-height: 1.5;
  font-size: 1.0625rem;
  margin-bottom: 1.25rem;
  margin-top: 0.25rem;
}
main p:last-child, main ul:last-child, main ol:last-child, main dl:last-child {
  margin-bottom: 0;
}
main p small {
  line-height: 1.25;
}
main .emphasized p, main .emphasized ul, main .emphasized ol, main .emphasized dl {
  font-size: 1.125rem;
}

ol {
  counter-reset: numbered;
  list-style: none;
  padding-left: 1.5em;
}

ol li {
  position: relative;
  margin-bottom: 1em;
}

ol li::before {
  content: counter(numbered) ".) ";
  counter-increment: numbered;
  display: inline-block;
  font-weight: 900;
  transform: translate(-100%, 0);
  position: absolute;
  left: 0;
  padding-right: 0.25em;
}

ol ol {
  font-size: 95%;
}

ol li li:first-child {
  margin-top: 1em;
}

ol li ol li {
  counter-increment: listStyle;
}

ol li ol li::before {
  content: counter(listStyle, lower-alpha) ".) ";
}

ol li ol li ol li {
  counter-increment: listStyleSub;
}

ol li ol li ol li::before {
  content: counter(listStyleSub, lower-roman) ".) ";
}

ul {
  list-style: none;
}

.post-content ul {
  padding-left: 1.5em;
}

.post-content ul li {
  position: relative;
  margin-bottom: 1em;
}

.post-content ul li::before {
  content: "";
  display: block;
  font-weight: 900;
  transform: translate(-100%, -50%);
  position: absolute;
  right: calc(100% + 0.25em);
  top: 0.75em;
  height: 0.375rem;
  width: 0.375rem;
  background-color: #231F20;
}

a {
  color: inherit;
  text-decoration: none;
  word-break: break-word;
}

a.wrapped {
  display: block;
  box-sizing: border-box;
  color: inherit !important;
}

.contacts a {
  word-break: break-all;
  margin: 0 0.5em;
}

a img {
  border: none;
}

p a:link, ul a:link, ol a:link, dl a:link, p a:visited, ul a:visited, ol a:visited, dl a:visited {
  color: #009775;
  text-decoration: none;
}

a:hover, a:active, a:focus, p a:link:hover, ul a:link:hover, ol a:link:hover, dl a:link:hover {
  color: #939598;
  text-decoration: none;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

svg {
  display: inline-block;
  vertical-align: bottom;
  transition-duration: 140ms;
  transition-timing-function: cubic-bezier(0.5, 0.1, 0.5, 0.9);
  transition-property: all;
}

:focus {
  outline: none;
}

::-webkit-input-placeholder {
  line-height: initial;
  height: inherit;
}

::-moz-placeholder {
  line-height: initial;
  height: inherit;
  font-size: inherit;
}

:-ms-input-placeholder {
  line-height: initial;
  height: inherit;
  font-size: inherit;
}

:-moz-placeholder {
  line-height: initial;
  height: inherit;
  font-size: inherit;
}

input {
  letter-spacing: 0.0125em;
  text-rendering: optimizeLegibility;
  box-sizing: border-box;
  font-family: inherit;
  border-radius: 0;
}

input[type=date], input[type=datetime], input[type=email], input[type=number], input[type=search], input[type=tel], input[type=text], input[type=time], input[type=url], select, textarea {
  border: solid 1px #bcbec0;
  padding: 0.875rem;
  background: transparent;
}

input[type=date]:focus, input[type=datetime]:focus, input[type=email]:focus, input[type=number]:focus, input[type=search]:focus, input[type=tel]:focus, input[type=text]:focus, input[type=time]:focus, input[type=url]:focus, select:focus, textarea:focus {
  border-color: #009775;
  outline: auto #009775 5px;
}

input[type=checkbox], .wpcf7 input[type=checkbox], input[type=radio], .wpcf7 input[type=radio] {
  display: inline;
  width: auto;
}

input[type=submit] {
  display: inline-block;
  padding: 1.125em 1.25em;
  border: solid 0.1875rem #009775;
  color: #fff;
  font-weight: 900;
  line-height: 0.75;
  margin-top: 1em;
  letter-spacing: 0.025em;
  background-color: transparent;
}

input[type=submit]:hover {
  background-color: #009775;
}

.screen-reader-text {
  display: none;
}

.flex {
  display: flex;
}

.inline {
  box-sizing: border-box;
}

.left.inline {
  padding-right: 1rem;
}

.right.inline {
  padding-left: 1rem;
}

.right {
  float: right;
}

.left {
  float: left;
}

.top {
  top: 0;
}

.bottom {
  bottom: 0;
}

.clearfloat {
  clear: both;
  height: 0;
  font-size: 1px;
  line-height: 0;
}

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

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

.two-column {
  column-count: 2;
  column-gap: 40px;
}

.green {
  background-color: #009775;
}

.black {
  background-color: #231f20;
}

.gray {
  background-color: #939598;
}

.light-gray {
  background-color: #f1f2f2;
}

.white {
  background-color: #ffffff;
}

.bg {
  background-size: cover;
  background-position: center center;
}

.bg *, .black *, .green *, .gray * {
  color: #fff;
}

.eighty {
  width: 80%;
}

.seventy-five {
  width: 75%;
}

.seventy {
  width: 70%;
}

.sixty-five {
  width: 65%;
}

.sixty {
  width: 60%;
}

.fifty-five {
  width: 55%;
}

.half {
  width: 50%;
}

.forty-five {
  width: 45%;
}

.forty {
  width: 40%;
}

.thirty-five {
  width: 35%;
}

.third {
  width: 33.333%;
}

.thirty {
  width: 30%;
}

.twenty-five {
  width: 25%;
}

.twenty {
  width: 20%;
}

.fifteen {
  width: 15%;
}

.eighth {
  width: 12.5%;
}

.ten {
  width: 10%;
}

.ratio {
  height: auto;
  position: relative;
  max-height: 900px;
}

.ratio::before {
  content: "";
  display: block;
}

.ratio.one-one::before {
  padding-top: 100%;
}

.ratio.sixteen-nine::before {
  padding-top: 56.25%;
}

main > section {
  margin: 5rem 0;
  position: relative;
}

.no-gfx main > section:first-child {
  margin-top: 7.5rem;
}

main > section.bg, main > section.split {
  margin: 0;
  padding: 5rem;
  position: relative;
}

main > article.post {
  margin: 10rem 0 5rem;
}

.container {
  margin: 0 auto;
  padding-right: 2.5rem;
  padding-left: 2.5rem;
  max-width: 1280px;
}

.weather > .container {
  display: flex;
}

.content {
  position: relative;
  padding: 2.5rem;
}

.general .container .content, .sub-directory {
  padding: 0;
  max-width: 1000px;
}

.intro-text, .general .post-content {
  max-width: 880px;
}

.section-title + .intro-text {
  text-align: center;
  margin: 1.5em auto;
}

.intro-text .block {
  margin-left: auto;
  margin-right: auto;
  color: #231f20;
}

.intro-text .block:hover {
  color: #ffffff;
}

.outline {
  position: relative;
}

.outline::after {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  background-color: transparent;
  border-color: #009775;
  border-width: 0;
  border-style: solid;
  transition-duration: 100ms;
  transition-timing-function: cubic-bezier(0.5, 0.1, 0.5, 0.9);
  transition-property: border;
  box-sizing: border-box;
  content: "";
  display: block;
}

.outline.hovering::after {
  border-width: 0.375rem;
}

.block {
  display: table;
  padding: 1em 1.125em;
  border: solid 0.1875rem #009775;
  color: #fff;
  font-weight: 900;
  line-height: 0.75;
  margin-top: 1em;
  font-size: 0.875rem;
  box-sizing: border-box;
}

.block:hover {
  background-color: #009775;
  color: inherit;
}

h5 + .block, .block + .block, .pagination .block {
  display: inline-block;
}

.white .block, .back-link .block {
  color: #231F20;
}

.white .block:hover, .back-link .block:hover {
  color: #fff;
}

.back-link .block, .block.apply {
  background-color: #009775;
  white-space: nowrap;
  color: #fff;
}

.back-link .block:hover, .block.apply:hover {
  background-color: #fff;
  border-color: #009775;
  color: #231F20;
}

.block .label {
  display: block;
}

.back-link .block .label::before {
  display: inline;
  content: "⟵";
  margin-right: 0.5em;
}

/*---------------*/
/*  Page Styles  */
/*---------------*/
#header, #logo a svg, #header nav > ul > li::after, #header nav li > ul, #header nav li > ul::before, #header nav > ul > li > a, #header nav > ul > li > div, #header .searchform, #header .share-menu, .navicon-bar, .navicon-bar:nth-child(2)::before, .close::before, .close::after, #bgvid, #vimeo-banner, .stamp, .page-link h4, .page-link h4 .parent, .device-wrapper, .expander::before, .expander::after, .award, .posts .post .date, .posts-nav .title-link, .posts-nav h4, .posts-nav h4 .arrow {
  transition-duration: 140ms;
  transition-timing-function: cubic-bezier(0.5, 0.1, 0.5, 0.9);
}

#header {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  padding: 0.875rem 0;
  z-index: 99999;
  transition-property: background, opacity, visibility;
  opacity: 0;
  visibility: hidden;
}

.loaded #header, .playing #header.scrolling {
  opacity: 1;
  visibility: visible;
}

.playing #header {
  opacity: 0;
  visibility: hidden;
}

#header.down, .no-gfx #header {
  background-color: #231F20;
}

#header .container {
  max-width: none;
  justify-content: space-between;
  align-items: center;
}

#header > .container {
  padding-right: 0;
}

#logo {
  display: inline-block;
}

#logo a {
  display: block;
  width: 100%;
  height: 100%;
}

#logo a svg {
  height: 3.5rem;
  fill: #fff;
  transition-property: fill, height;
}

#logo a:hover svg {
  fill: #009775;
}

.down #logo a svg {
  height: 2.75rem;
}

#header nav {
  display: flex;
  align-content: center;
  align-items: center;
}

#header nav ul, #header nav a, #header nav svg {
  color: #fff;
  fill: #fff;
}

#header nav ul {
  margin: 0;
  font-weight: 900;
  list-style: none;
  line-height: 1;
}

#header nav svg {
  max-height: 1.25rem;
  max-width: 1.25rem;
  width: 100%;
  height: 100%;
}

#header nav > ul {
  font-size: 1.25rem;
}

#header nav > ul > li {
  position: relative;
  display: inline-block;
}

#header nav > ul > li > a, #header nav > ul > li > div {
  padding: 0.6em 0.9em;
  display: block;
  cursor: pointer;
  transition-property: padding;
}

#header nav > ul > li::after {
  position: absolute;
  bottom: calc(0% - 0.875rem);
  left: 0;
  right: 0;
  height: 0;
  content: "";
  display: block;
  background-color: #009775;
  transform: translate(0, 100%);
  transition-property: height, transform;
}

#header nav > ul > li:hover::after {
  height: 0.375rem;
}

#header.down nav > ul > li:hover::after {
  transform: translate(0, 0);
}

#header nav li > ul {
  position: absolute;
  top: 100%;
  left: 0;
  background-color: transparent;
  min-width: 100%;
  padding: 1.3125rem 1.125rem 0.4375rem;
  opacity: 0;
  visibility: hidden;
  z-index: 10;
  transform: translate(0, -0.375rem);
  transition-property: opacity, visibility, transform, padding;
  font-size: 1.0625rem;
}

#header.down nav li > ul {
  padding: 0.9375rem 1.125rem 0.4375rem;
}

#header nav li > ul::before {
  height: calc(100% - 0.875rem);
  position: absolute;
  width: 100%;
  background-color: #009775;
  content: "";
  display: block;
  left: 0;
  bottom: 0;
  transition-property: height;
}

#header.down nav li > ul::before {
  height: calc(100% - 0.5rem);
}

#header nav #pages-menu li:hover > ul {
  opacity: 1;
  visibility: visible;
  transform: translate(0, 0);
}

#header nav li > ul li {
  display: block;
  margin: 0.375rem 0;
  line-height: 1.375;
  white-space: nowrap;
  position: relative;
}

#header nav li > ul li:hover a {
  border-bottom: solid 2px;
}

#header nav li > ul.share-menu {
  background-color: #231f20;
  white-space: nowrap;
  left: auto;
  right: 0;
  top: calc(100% + 0.875rem);
  padding: 0.375rem 1.125rem;
  line-height: 0;
  transform: translate(0.375rem, 0);
  transition-property: opacity, visibility, transform;
}

#header nav li > ul.share-menu::before {
  display: none;
}

#header.sharing nav li > ul.share-menu {
  opacity: 1;
  visibility: visible;
  transform: translate(0, 0);
  pointer-events: auto;
}

#header nav li > ul.share-menu li {
  display: inline-block;
  margin-right: 1rem;
  line-height: 1;
}

#header nav li > ul.share-menu li:last-child {
  margin-right: 0;
}

#header nav li > ul.share-menu li a {
  border: none !important;
  display: block;
  width: 100%;
  height: 100%;
}

#header nav li > ul.share-menu li svg {
  fill: #939598;
  display: block;
  min-height: 1.25rem;
  min-width: 1.25rem;
  height: auto;
  width: auto;
  max-width: none;
}

#header nav li > ul.share-menu li a:hover svg {
  fill: #009775;
}

.device-only {
  display: none !important;
}

.device-wrapper {
  display: none;
}

#header .navicon {
  display: none;
}

.navicon {
  position: relative;
  cursor: pointer;
  flex-shrink: 0;
}

.navicon-bar {
  margin: 4px 0;
  width: 1.625rem;
}

.navicon-bar:first-child {
  margin-top: 0;
}

.navicon-bar:last-child {
  margin-bottom: 0;
}

.navicon-bar, .navicon-bar:nth-child(2)::before {
  background-color: #fff;
  height: 3px;
  position: relative;
  pointer-events: none;
  transform-origin: center center;
  display: block;
  transition-property: background, opacity, visibility, transform;
}

.navicon-bar:nth-child(2)::before {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  content: "";
}

.navicon:hover .navicon-bar, .navicon:hover .navicon-bar:nth-child(2)::before {
  background-color: #009775;
}

.open .navicon-bar {
  opacity: 0;
  visibility: hidden;
}

.open .navicon-bar:nth-child(1) {
  transform: translate(0, -100%);
}

.open .navicon-bar:nth-child(2), .open .navicon-bar:nth-child(2)::before {
  opacity: 1;
  visibility: visible;
}

.open .navicon-bar:nth-child(2) {
  transform: rotate(45deg);
}

.open .navicon-bar:nth-child(2)::before {
  transform: rotate(-90deg);
}

.open .navicon-bar:nth-child(3) {
  transform: translate(0, 100%);
}

#header .searchform {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  opacity: 0;
  visibility: hidden;
  transform: translate(0.375rem, 0);
  pointer-events: none;
  transition-property: opacity, visibility, transform;
  padding: 2rem 0;
}

#header.searching .searchform {
  opacity: 1;
  visibility: visible;
  transform: translate(0, 0);
  pointer-events: auto;
}

.searchform .flex {
  justify-content: flex-end;
  align-items: center;
}

.searchform ::-webkit-input-placeholder {
  font-weight: 900;
  color: #939598;
}

.searchform ::-moz-placeholder {
  font-weight: 900;
  color: #939598;
}

.searchform :-ms-input-placeholder {
  font-weight: 900;
  color: #939598;
}

.searchform :-moz-placeholder {
  font-weight: 900;
  color: #939598;
}

.searchform input[type=search] {
  border-width: 0 0 2px 0;
  padding: 0 0 0.3125rem;
  font-size: 2.625rem;
  margin-right: 1.25rem;
  font-weight: 900;
  width: 100%;
  max-width: 43.5rem;
}

.searchform input[type=submit] {
  margin-top: 0;
  font-size: 1.125rem;
}

.close {
  margin: 0.875rem 2.5rem;
  position: relative;
  display: block;
  width: 2.25rem;
  height: 2.25rem;
}

.close::before, .close::after {
  display: block;
  width: 100%;
  height: 0.375rem;
  position: absolute;
  cursor: pointer;
  content: "";
  top: 50%;
  left: 0;
  background-color: #fff;
  transition-property: background;
}

.close:hover::before, .close:hover::after {
  background-color: #009775;
}

.close::before {
  transform: translate(0, -50%) rotate(-45deg);
}

.close::after {
  transform: translate(0, -50%) rotate(45deg);
}

#page-nav {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  color: #fff;
  line-height: 1;
  padding: 0.25rem 0;
  transition-property: background, padding;
  transition-duration: 140ms;
  transition-timing-function: cubic-bezier(0.5, 0.1, 0.5, 0.9);
}

.down #page-nav, .no-gfx #page-nav {
  background-color: #104345;
}

#page-nav .container {
  width: 100%;
  display: flex;
}

#page-nav .container > .flex {
  margin-left: auto;
  align-items: center;
}

#page-nav label {
  text-transform: uppercase;
  font-weight: 900;
  font-size: 0.875rem;
}

#page-nav .section-selector-wrapper {
  padding: 0.5rem 0.25rem 0.5rem 0.5rem;
  margin: -0.25rem -0.25rem -0.25rem 0.5rem;
  border: solid 2px currentColor;
  position: relative;
  transition-property: border;
  transition-duration: 140ms;
  transition-timing-function: cubic-bezier(0.5, 0.1, 0.5, 0.9);
}

.down #page-nav .section-selector-wrapper, .no-gfx #page-nav .section-selector-wrapper {
  border-color: transparent;
}

#page-nav .section-selector-wrapper::before {
  position: absolute;
  top: -2px;
  left: 0;
  bottom: -2px;
  right: -2.5rem;
  display: block;
  content: "";
  opacity: 0;
  background-color: #24959b;
  transition-property: opacity;
  transition-duration: 140ms;
  transition-timing-function: cubic-bezier(0.5, 0.1, 0.5, 0.9);
}

.down #page-nav .section-selector-wrapper::before, .no-gfx #page-nav .section-selector-wrapper::before {
  opacity: 1;
}

#page-nav select {
  position: relative;
  border: none;
  border-radius: 0;
  color: currentColor;
  font-weight: 900;
  font-size: 1rem;
  line-height: 1;
  transition-property: border;
  transition-duration: 140ms;
  transition-timing-function: cubic-bezier(0.5, 0.1, 0.5, 0.9);
  --bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
  display: block;
  width: 100%;
  padding: 0.375rem 2.25rem 0.375rem 0.75rem;
  background-color: transparent;
  background-image: var(--bs-form-select-bg-img, none);
  background-repeat: no-repeat;
  background-position: right 0.75rem center;
  background-size: 16px 12px;
  appearance: none;
}

#page-nav select option {
  background-color: #24959b;
}

main > section.banner {
  padding: 16.25rem 0 5rem;
}

main > section.banner.child {
  padding: 0;
}

main > section.banner.grandchild {
  padding: 5rem 0 0;
}

.banner.parent::before {
  display: block;
  content: "";
  padding-top: 13.75rem;
}

.banner.parent .container::after, .banner.stepchild .container::after {
  position: absolute;
  display: block;
  content: "";
  pointer-events: none;
  opacity: 0.5;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 30%, rgb(0, 0, 0) 100%);
}

.banner.parent .container > * {
  position: relative;
  z-index: 10;
}

.banner.parent .container h2 {
  font-size: 5rem;
}

.banner.child::before {
  display: block;
  content: "";
  padding-top: 33.125rem;
}

.banner.child .container {
  position: relative;
  height: 0;
}

.banner.child .container h2 {
  display: table;
  padding: 0.5em;
  position: relative;
  top: 0;
  transform: translate(0, -50%);
  background: linear-gradient(to right, rgb(62, 130, 171) 0%, rgb(105, 72, 144) 100%);
}

.banner.stepchild .container h2 {
  position: relative;
  z-index: 10;
}

.banner.stepchild.stepsister .container {
  display: none;
}

.banner .stamp {
  max-width: 33.125rem;
  text-align: center;
  margin: 0 auto;
  position: relative;
  z-index: 50;
  padding-bottom: 5rem;
}

.stamp .tagline {
  display: none;
}

.banner .stamp .block {
  font-size: 1.25rem;
  margin: 5rem auto 0;
  background-color: #009775;
}

.banner .stamp .block:hover {
  background-color: #fff;
}

.banner .stamp .block:hover span {
  color: #009775 !important;
}

.stamp svg {
  fill: #fff;
}

/* Video Banner Stylez */
#video {
  overflow: hidden;
}

#bgvid, #vimeo-banner {
  position: absolute;
  left: 50%;
  right: 0;
  top: 50%;
  bottom: 0;
  height: auto;
  width: auto;
  min-height: 100%;
  min-width: 100%;
  overflow: hidden;
  transform: translate(-50%, -50%);
}

#bgvid {
  transition-duration: 800ms, 800ms, 600ms;
  transition-property: visibility, opacity, filter;
}

#bgvid.hiding {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

#bgvid.removed, .playing #bgvid {
  -webkit-filter: blur(50px);
  opacity: 0;
  visibility: hidden;
}

#vimeo-banner iframe {
  width: 100% !important;
  height: 100% !important;
  position: absolute !important;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  min-height: 100%;
  min-width: 100%;
  pointer-events: none;
  background-color: #000;
}

.playing #vimeo-banner iframe, .mobile-visible #vimeo-banner iframe {
  pointer-events: auto;
}

.vp-player-layout.js-playerLayout {
  left: 0 !important;
  right: 0 !important;
}

.playing .stamp, .mobile-visible .stamp {
  opacity: 0;
  visibility: hidden;
}

.headline p {
  text-align: center;
  font-size: 3.125rem;
  line-height: 1.4;
}

.split .bg {
  position: absolute;
  top: 0;
  bottom: 0;
}

.split .bg:nth-of-type(1) {
  left: 0;
}

.split .bg:nth-of-type(2) {
  right: 0;
}

.split:nth-of-type(odd) .bg:nth-of-type(1), .split:nth-of-type(even) .bg:nth-of-type(2) {
  width: 70%;
}

.split:nth-of-type(odd) .bg:nth-of-type(2), .split:nth-of-type(even) .bg:nth-of-type(1) {
  width: 30%;
}

.split .content {
  max-width: 35rem;
  width: 65%;
}

.split:nth-of-type(odd) .content {
  left: calc(70% + 2.5rem);
  transform: translate(-50%, 0);
}

.split:nth-of-type(even) .content {
  left: calc(30% - 2.5rem);
  transform: translate(-50%, 0);
}

.split-spacer {
  margin-bottom: -1rem;
  display: block;
}

.split .block {
  display: inline-block;
  margin-right: 1em;
}

.page-links .flex {
  justify-content: flex-start;
  margin-left: -1rem;
  margin-right: -1rem;
}

.page-links .flex.full {
  flex-wrap: wrap;
  margin: -1rem;
}

.page-links .featured {
  width: 100%;
  margin: 1rem;
  align-items: flex-end;
  justify-content: space-between;
}

.page-links .featured > div::before {
  padding-top: 12.5rem;
  display: block;
  content: "";
}

.page-links .featured::after {
  position: absolute;
  display: block;
  content: "";
  pointer-events: none;
  opacity: 0.7;
  inset: 0;
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 30%, rgb(0, 0, 0) 100%);
}

.page-links .featured > * {
  position: relative;
  z-index: 10;
}

.page-links .content > * {
  max-width: 35rem;
}

.page-links.featured .bg {
  position: relative;
  margin-left: 0;
  margin-right: 0;
}

.page-links.featured .bg::before {
  content: "";
  position: absolute;
  display: block;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background-color: transparent;
  background-image: linear-gradient(to right, rgb(35, 31, 32) 0%, rgba(35, 31, 32, 0) 80%, rgba(35, 31, 32, 0) 100%);
  opacity: 0.9;
}

.page-links.featured h4 {
  font-size: 2.25rem;
  margin-bottom: 1rem;
}

.page-links.featured p {
  margin-bottom: 1rem;
  margin-top: -0.32em;
}

.page-links .excerpt {
  padding-right: 1rem;
}

.page-links .details span {
  display: inline-block;
  font-weight: 900;
}

.page-links .details .name {
  padding-left: 0.5em;
  margin-left: 0.5em;
  border-left: 0.1875rem solid #fff;
}

.page-links .details .address {
  display: block;
  line-height: 1;
  margin-top: 0.375rem;
}

.page-link {
  position: relative;
  width: 100%;
  margin: 0 1rem;
  min-width: calc(25% - 2rem);
}

.full .page-link {
  width: calc(25% - 2rem);
  margin: 1rem;
}

.page-link > .content {
  position: static;
  padding: 0;
}

.page-link > .content::before, .page-link > .content::after {
  display: block;
  content: "";
  width: 100%;
}

.page-link > .content::before {
  padding-top: 100%;
}

.page-links.double .page-link > .content::before {
  padding-top: 50%;
}

.page-link > .content::after {
  padding-bottom: 1.25rem;
}

.forced .page-link > .content::after {
  padding-bottom: 2.5rem;
}

.page-link h4 {
  padding: 0.25rem 0.5rem;
  background-color: #231F20;
  transition-property: background, color;
  display: inline-block;
  position: relative;
  margin: 0;
  word-break: break-word;
}

.page-link:hover h4 {
  background-color: #009775;
}

.page-link h4 .parent {
  display: table;
  font-size: 56.25%;
  position: absolute;
  background-color: #231F20;
  left: 0;
  bottom: 100%;
  padding: 0.25rem 0.5rem;
  transition-property: background, color;
  white-space: nowrap;
}

.page-link:hover h4 .parent {
  background-color: #009775;
}

.directory-listings article {
  margin-bottom: 5rem;
}

.directory-listings article:last-child {
  margin-bottom: 0;
}

.directory-listings .thumb {
  width: 30%;
  max-width: 16.25rem;
  margin-right: 2rem;
  flex-shrink: 0;
  height: 100%;
}

.directory-listings .listing-header .thumb {
  display: none;
}

.directory-listings .thumb::before {
  display: block;
  content: "";
  padding-top: 75%;
}

.directory-listings ul {
  list-style: none;
}

.directory-listings .listing {
  max-width: 50rem;
}

.listing footer ul, .listing footer p {
  font-weight: 900;
  line-height: 1;
  margin: 0 0 0.625rem;
}

.listing footer ul:last-child, .listing footer p:last-child {
  margin-bottom: 0;
}

.listing footer ul li {
  display: inline-block;
  padding: 0 0.875rem 0 0;
  margin: 0 0.625rem 1rem 0;
}

.listing footer ul li::before {
  display: none;
}

.listing footer ul li:first-child {
  padding-left: 0;
}

.listing footer ul li:last-child {
  padding-right: 0;
  border: none;
}

.videos .flex {
  margin: -1rem;
  flex-wrap: wrap;
}

.videos .video {
  margin: 1rem;
  position: relative;
  width: calc(50% - 2rem);
}

.videos .video::before {
  padding-top: 56.25%;
  display: block;
  content: "";
}

.videos .video iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}

.photos.grid {
  --ws-gutter-x: 2rem;
  --ws-gutter-y: 2rem;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1 * var(--ws-gutter-y));
  margin-right: calc(-0.5 * var(--ws-gutter-x));
  margin-left: calc(-0.5 * var(--ws-gutter-x));
}

.photos.grid > .col {
  width: 33.3333%;
  flex: 0 0 auto;
  max-width: 100%;
  padding-right: calc(var(--ws-gutter-x) * 0.5);
  padding-left: calc(var(--ws-gutter-x) * 0.5);
  margin-top: var(--ws-gutter-y);
}

.photos a.photo {
  display: block;
}

p.caption {
  font-size: 0.875rem;
  line-height: 1.125;
  padding-left: 0.5em;
  margin-top: 0.5em;
  border-left: solid 2px #009775;
}

section.attachment .container {
  max-width: 100%;
}

.image-wrapper.bg {
  position: relative;
  -webkit-user-select: none;
          user-select: none;
}
.image-wrapper > .img {
  pointer-events: none;
}
.image-wrapper > .poster {
  position: absolute;
  inset: 0;
  z-index: 19;
  -webkit-user-select: none;
          user-select: none;
}

.offer + .offer {
  margin-top: 2rem;
}

.offer::after {
  display: block;
  content: "";
  clear: both;
}

.offer img {
  float: right;
  margin: 0 0 1rem 2rem;
  width: 50%;
  max-width: 480px;
}

.offer-details {
  max-width: 60rem;
}
.offer-details h5 {
  margin-bottom: 1.25rem;
  font-size: 1.3125rem;
}

.sub-directory .two-column {
  column-gap: 3rem;
  margin: 2rem 0 3rem;
}

.sub-directory li {
  width: 100%;
  break-inside: avoid;
  line-height: 1;
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin: 0;
  padding: 0 0 1rem;
  font-weight: 900;
  font-size: 1.25rem;
}

.sub-directory li a {
  word-break: break-word;
}

.team-members {
  flex-wrap: wrap;
  margin: -1rem;
}

.member {
  width: calc(25% - 2rem);
  margin: 1rem;
}

.member .bg {
  position: relative;
}

.member .bg::before {
  padding-top: 125%;
  display: block;
  content: "";
}

.member .bg img {
  display: none;
}

.member p {
  margin: 0.5rem 0;
  letter-spacing: 0.025em;
}

.general .container .content.contact-information {
  width: 50%;
  padding-right: 5rem;
}

.contact-information h5 {
  font-size: 1.125rem;
  line-height: 1.2;
  margin-top: 2rem;
}

.contact-information address, .contact-information p {
  font-size: 1.125rem;
  font-weight: normal;
  margin: 1rem 0;
  line-height: 1.2;
  letter-spacing: 0.025em;
}

.contact-form {
  width: 50%;
}

.single .content > .wp-post-img, .single .content > h2 {
  margin: 2.5rem 0 2.25rem;
  display: block;
}

.search-result {
  margin-bottom: 2.5rem;
}

.search-result.member {
  width: auto;
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
}

.search-result .breadcrumbs {
  margin: 0 0 0.5rem;
  font-size: 0.9375rem;
  font-weight: 600;
}

.search-result .breadcrumbs .breadcrumb_last {
  font-weight: 500;
}

.search-result .breadcrumbs + h4 {
  margin-top: 0;
}

.categories .container::after {
  height: 4px;
  background-color: #939598;
  margin-top: 3rem;
  content: "";
}

.categories h4 {
  display: none;
}

.category-list {
  margin: -0.5rem;
}

.categories .block {
  display: inline-flex;
  margin: 0.5rem;
  font-size: 1rem;
  padding: 0.75em 1em;
  text-transform: capitalize;
}

.categories .block:hover {
  background-color: #fff;
}

.posts.flex {
  flex-wrap: wrap;
  margin: -1.5rem;
}

.posts .post {
  width: calc(33.3333% - 3rem);
  margin: 1.5rem;
}

.posts .post a.bg {
  display: block;
}

.posts .post .bg .content {
  padding-left: 0;
  padding-top: 160px;
}

.posts .post .date {
  padding: 0.25rem 0.5rem;
  background-color: #231F20;
  transition-property: background, color;
  display: inline-block;
  position: relative;
  margin: 0;
  word-break: break-word;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.0375em;
  font-size: 1.125rem;
}

.posts .post .hovering .date {
  background-color: #009775;
}

.posts .post .date .num {
  font-size: 105%;
}

.posts .post h4 {
  margin-bottom: 0;
}

.posts .post h4 + h6 {
  margin: 1em 0;
  color: #939598;
  font-weight: 700;
}

.posts .post h4 + h6 a {
  color: #939598;
}

.posts .post h4 a:hover, .posts .post h4 + h6 a:hover {
  color: #009775;
}

.post {
  margin: 1rem 0;
}

.post .content {
  padding: 1.25rem;
}

.post .content img {
  max-width: 100%;
}

.posts-nav > .flex {
  justify-content: space-between;
}

.posts-nav .prev, .posts-nav .next {
  justify-content: flex-end;
}
.posts-nav a {
  position: relative;
  max-width: 50%;
}
.posts-nav a:hover {
  color: #009775;
}
.posts-nav a:hover .title-link {
  border-color: #009775 !important;
}
.posts-nav a:hover h4 {
  color: #009775;
}
.posts-nav .tagline {
  text-transform: uppercase;
  font-size: 0.75rem;
  padding: 0.5em 0.625em;
  color: #fff;
  margin: 0;
}
.posts-nav .prev .tagline {
  margin-left: auto;
}
.posts-nav .prev .title-link {
  padding-right: 1.5rem;
  border-right: solid 4px #939598;
}
.posts-nav .prev:hover h4 .arrow {
  transform: translate(-0.25rem, 0);
}
.posts-nav .next .tagline {
  margin-right: auto;
}
.posts-nav .next .title-link {
  padding-left: 1.5rem;
  border-left: solid 4px #939598;
}
.posts-nav .next:hover h4 .arrow {
  transform: translate(0.25rem, 0);
}
.posts-nav h4 {
  align-items: center;
  margin: 0.5rem 0 0;
  padding-bottom: 0;
  color: #231f20;
}
.posts-nav h4 * + * {
  margin-left: 1rem;
}
.posts-nav h4 .arrow {
  color: #009775;
}

.post-meta .container > * {
  max-width: 1000px;
}

.post-meta .container > h2:first-child {
  margin-bottom: 0.5em;
}

.post-meta p {
  margin: 0;
  font-weight: bold;
}

.post-meta p + p {
  margin-left: 1rem;
  padding-left: 1rem;
  border-left: solid 3px #009775;
}

.post-meta .sep {
  max-width: 880px;
  height: 4px;
  background-color: #231f20;
  margin-top: 3rem;
  margin-bottom: -1.5rem;
}

.wp-caption {
  max-width: 100%;
}
.wp-caption > * {
  font-size: 0.875rem;
  font-style: italic;
}

.post-tags .post-content {
  max-width: 880px;
}

.tags {
  padding-left: 1rem;
  flex-wrap: wrap;
}

.tags a {
  background-color: #009775;
  cursor: pointer;
  margin: 0 0.375rem 0.625rem;
  padding: 0.75em 1em;
  position: relative;
  text-transform: capitalize;
  display: inline-block;
  letter-spacing: 0.0125em;
  border: solid 0.1875rem #009775;
  color: #fff;
  font-weight: 600;
  line-height: 0.75;
  font-size: 0.75rem;
  box-sizing: border-box;
}

.tags a:hover {
  color: #009775;
  background-color: #fff;
}

section.author .content {
  max-width: 880px;
}

section.author .avatar {
  float: left;
  margin: 0 2em 0.75em 0;
  clear: left;
  max-width: 160px;
  min-width: 100px;
  width: 40%;
}

section.author .bio p {
  font-size: 0.875rem;
}

section.author .block {
  margin-top: 1.5rem;
}

.signup-bar.page-links .flex {
  margin: 0;
}

.signup-bar input[type=email] {
  width: 100%;
  border-color: #fff;
  border-width: 3px;
  background-color: #fff;
  color: #231f20;
}

.signup-bar input[type=submit] {
  margin-left: 1.5rem;
  margin-top: 0;
  background-color: #009775;
}

.signup-bar input[type=submit]:hover {
  background-color: #fff;
  color: #231f20;
}

.signup-bar .mc4wp-alert p {
  font-weight: bold;
}

.featured.signup-bar .ctct-form-embed.form_0 .ctct-form-defaults .ctct-form-text {
  color: #fff;
  font-size: 1.125rem !important;
}

.faq {
  margin-bottom: 2.5rem;
}

.faq:last-child {
  margin-bottom: 0;
}

.events .upcoming {
  margin: -1rem -1rem -2rem;
  flex-wrap: wrap;
}

.events .upcoming::after {
  display: block;
  clear: both;
  content: "";
  width: 100%;
}

.events .event {
  margin: 1rem 1rem 2rem;
  width: calc(25% - 2rem);
  transition-property: none;
}

.event-details > * {
  font-weight: 900;
  letter-spacing: 0.025em;
  font-size: 1.375rem;
  font-style: normal;
  margin: 0.75em 0;
  display: block;
}

#sidebar {
  width: 16.25rem;
  margin-left: 2.5rem;
  flex-shrink: 0;
  position: relative;
}

#sidebar.locked nav {
  position: fixed;
  left: 50%;
  transform: translate(-50%, 0);
  width: calc(100% - 5rem);
  max-width: calc(1280px - 5rem);
  height: 0;
}

#sidebar.locked.bottomed nav {
  position: absolute;
  left: 0;
  top: 0 !important;
  right: 0;
  bottom: 0;
  transform: none;
  width: auto;
  max-width: none;
  height: auto;
}

#sidebar nav ul {
  list-style: none;
  font-weight: 900;
}

#sidebar.locked nav ul {
  position: absolute;
  right: 0;
  top: 0;
  width: 16.25rem;
}

#sidebar.locked.bottomed nav ul {
  top: auto !important;
  bottom: 0;
}

#sidebar nav ul li {
  margin-bottom: 1em;
}

.weather-widget {
  width: 16.25rem;
  margin-left: 2.5rem;
  flex-shrink: 0;
}

main .awesome-weather-wrap {
  background-color: #009775 !important;
}

main .awesome-weather-wrap {
  font: inherit;
  font-weight: 600;
  letter-spacing: 0.025em;
  text-shadow: none;
}

main .awesome-weather-todays-stats {
  width: auto;
  float: none;
  padding: 1rem;
  text-align: center;
}

.awesome-weather-forecast, .awesome-weather-attribution {
  display: none;
}

main .awesome-weather-current-temp {
  width: 100%;
  float: none;
  padding: 1rem;
  text-align: center;
  position: relative;
}

.awesome-weather-current-temp::before {
  position: absolute;
  bottom: 0;
  left: 50%;
  height: 3px;
  background-color: #fff;
  display: block;
  content: "";
  width: 60%;
  transform: translate(-50%, 50%);
}

main .awesome-weather-current-temp sup {
  font-size: 2.5rem;
}

.pagination {
  margin: 5rem 0 0;
}

.pagination .page-numbers.prev, .pagination .page-numbers.next {
  text-transform: uppercase;
  font-size: 0.75rem;
  color: #231F20;
  display: inline-block;
  padding: 1em 2em;
  border: solid 0.1875rem #939598;
  font-weight: 900;
  line-height: 0.75;
  white-space: nowrap;
  box-sizing: border-box;
}

.pagination .page-numbers.prev:hover, .pagination .page-numbers.next:hover {
  border-color: #009775;
  color: #fff;
  background-color: #009775;
}

.pagination .page-numbers.prev {
  margin-right: 0.5rem;
}

.pagination .prev::before {
  content: "❮";
  display: inline;
  margin: 0 0.5rem 0 -0.125rem;
}

.pagination .page-numbers.next {
  margin-left: 0.5rem;
}

.pagination .next::after {
  content: "❯";
  display: inline;
  margin: 0 -0.125rem 0 0.5rem;
}

.pagination .page-numbers:not(.prev):not(.next) {
  font-size: 1.5rem;
  font-weight: 900;
  margin: 0 0.5rem;
  color: #939598;
}

.pagination .page-numbers.current {
  color: #231F20 !important;
}

.pagination a.page-numbers:not(.prev):not(.next):hover {
  color: #009775;
}

.social .container > .flex {
  margin-left: -1rem;
  margin-right: -1rem;
}

.social article {
  width: 100%;
  margin: 0 1rem;
  max-width: 600px;
  display: flex;
  flex-flow: column;
}

.social article .post {
  height: 100%;
}

.social .account {
  display: flex;
  align-items: center;
  padding-bottom: 1rem;
  border-bottom: solid 1px #939598;
  margin-bottom: 1rem;
}

.account .avatar {
  width: 2.375rem;
  height: 2.375rem;
  margin-right: 0.875rem;
}

#instagram .account .avatar {
  border-radius: 50%;
}

.account .username {
  font-weight: 900;
  letter-spacing: 0.025em;
}

.post .content p {
  font-size: 0.9375rem;
  word-break: break-word;
}

.social .block {
  width: 100%;
  text-align: center;
  color: #231f20;
  display: inline-flex;
  justify-content: center;
  align-items: center;
}

.social .block:hover {
  color: #fff;
}

.social .block svg {
  height: 1.75rem;
  display: inline-block;
  margin-left: 1.5rem;
  fill: #009775;
}

.social .block:hover svg {
  fill: #fff;
}

.social .ratio {
  height: auto !important;
}

.share-links {
  list-style: none;
  margin-top: 1.5rem;
}

.share-links li {
  margin-right: 1.5rem;
  display: inline-block;
}

.share-links li h5 {
  margin: 0;
}

.share-links a {
  display: block;
  line-height: 1;
}

.share-links a svg {
  height: 1.25rem;
  display: inline-block;
  fill: #939598;
}

.share-links a:hover svg {
  fill: #009775;
}

.pw-form {
  margin: 1.5rem 0;
  padding: 2rem 1.5rem;
  max-width: 400px;
}

.pw-form label {
  font-weight: bold;
  display: block;
  margin-bottom: 0.5em;
}

.pw-form input[type=password] {
  display: block;
  border-radius: 0 !important;
  height: auto !important;
  padding: 0.875rem !important;
  border: none !important;
  color: #231f20 !important;
  width: 100%;
}

.pw-form input[type=submit] {
  background-color: #FFF !important;
  margin-top: 1.5rem;
  border-color: #231f20;
  color: #231f20;
}

.pw-form input[type=submit]:hover {
  background-color: #939598 !important;
  color: #FFFFFF;
}

/* CFF Styles */
#facebook .cff-wrapper {
  width: 100%;
}

#facebook .cff-wrapper-ctn {
  float: none;
}

#facebook #cff {
  width: 100%;
  height: 100%;
  float: none;
}

#facebook #cff:after {
  display: none;
}

#facebook #cff .cff-item {
  float: none;
  padding: 0;
  display: flex;
  height: 100%;
}

#facebook #cff.cff-half-layout .cff-text-wrapper, #facebook #cff.cff-half-layout .cff-media-wrap {
  float: none;
  width: 50%;
  flex: 0 0 50%;
}

#facebook #cff.cff-half-layout .cff-text-wrapper {
  padding: 1.25rem;
  background-color: #f1f2f2;
}

#facebook #cff .cff-author {
  display: flex;
  align-items: center;
  padding-bottom: 1rem;
  border-bottom: solid 1px #939598;
  margin-bottom: 1rem;
}

#facebook #cff .cff-author .cff-author-text {
  float: none;
  width: auto;
  min-height: 0;
}

#facebook #cff .cff-author .cff-page-name, #facebook #cff .cff-author .cff-date, #facebook #cff-lightbox-wrapper .cff-author .cff-page-name, #facebook #cff-lightbox-wrapper .cff-author .cff-date, #facebook #cff .cff-author-img {
  float: none;
  padding: 0;
  margin: 0 !important;
}

#facebook #cff .cff-author-img {
  order: -1;
  width: 2.375rem;
  height: 2.375rem;
  margin-right: 0.875rem !important;
  background: none;
}

#facebook #cff.cff-half-layout .cff-media-wrap {
  order: -1;
}

#facebook #cff.cff-half-layout .cff-photo, #facebook #cff.cff-half-layout .cff-iframe-wrap, #facebook #cff.cff-half-layout .cff-html5-video, #facebook #cff.cff-half-layout .cff-vidLink {
  width: 100%;
  float: none;
  height: 100%;
}

#cff.cff-half-layout .cff-photo img {
  float: none;
  height: 100%;
  object-fit: cover;
}

#cff.cff-half-layout .cff-post-text {
  font-size: 0.9375rem;
  word-break: break-word;
  line-height: 1.5;
}

/* WPCF7 Styles */
.mw-650 {
  max-width: 650px;
}

.wpcf7 {
  margin: 2rem 0;
}

.wpcf7 .sent .on-success.hide {
  display: none;
}

.wpcf7 .on-success.show {
  opacity: 0;
  visibility: hidden;
  height: 0;
  pointer-events: none;
}

.wpcf7 .sent .on-success.show {
  opacity: 1;
  visibility: visible;
  height: auto;
  pointer-events: all;
}

.wpcf7 .sent .on-success + .wpcf7-response-output {
  display: none !important;
}

.wpcf7 .mw-650 {
  clear: both;
}

.wpcf7 span, .wpcf7 label, .wpcf7 input, .wpcf7 textarea {
  display: block;
  box-sizing: border-box;
  width: 100%;
  border-radius: 0;
}

.wpcf7 .flex.w-auto {
  flex-wrap: wrap;
}

.wpcf7 .w-auto span, .wpcf7 .w-auto label, .wpcf7 .w-auto input, .wpcf7 .w-auto textarea {
  width: auto;
}

.wpcf7 h5 {
  line-height: 1.2;
}

.wpcf7 .flex-control {
  margin-bottom: 0.5rem;
}

.wpcf7 .flex > *:first-child {
  flex-shrink: 0;
  margin-right: 1rem;
  max-width: 60%;
}

.wpcf7 span.wpcf7-form-control-wrap {
  margin: 0 0 1.5rem;
  display: inline-block;
}

.wpcf7 span.wpcf7-form-control-wrap.service-categories {
  display: block;
}

.wpcf7 span.wpcf7-list-item {
  margin: 0 0 0.75em;
  break-inside: avoid;
}

.wpcf7 .flex .wpcf7-radio {
  display: flex;
  justify-content: flex-start;
}

.wpcf7 .flex .wpcf7-radio span.wpcf7-list-item {
  width: auto;
  margin: 0 1rem 0 0;
}

.wpcf7-radio .wpcf7-list-item, .wpcf7-checkbox .wpcf7-list-item {
  display: inline-flex;
  line-height: 1.2;
}

.wpcf7-radio .wpcf7-list-item input, .wpcf7-checkbox .wpcf7-list-item input {
  margin-top: 0.2em;
  margin-left: 1px;
}

.wpcf7 span.wpcf7-list-item-label {
  display: inline;
  margin: 0 0 0 0.5em;
}

.wpcf7 label {
  margin-bottom: 0.5rem;
  font-size: 0.75rem;
}

.req::after {
  display: inline;
  content: "*";
  color: #dc3232;
  font-weight: normal;
}

.wpcf7 .wpcf7-checkbox span.wpcf7-list-item label, .wpcf7 .flex .wpcf7-radio span.wpcf7-list-item label {
  font-size: 1rem;
  margin: 0;
  display: flex;
}

.wpcf7 select {
  display: block;
  padding: 0.875rem 70px 0.875rem 0.875rem !important;
  height: auto !important;
  border: solid 1px #bcbec0;
  border-radius: 0;
  background: #fff url("_images/sprites-selectbox_arrow.png") no-repeat right center;
  color: #231F20;
  font-size: 0.875rem;
  line-height: 16px !important;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  box-sizing: border-box;
  width: 100%;
  max-width: 25rem;
  font-family: inherit;
  letter-spacing: 0.0125em;
  text-rendering: optimizeLegibility;
}

.wpcf7 select option {
  padding: 0 4px;
}

.wpcf7 select::-ms-expand {
  display: none;
}

.wpcf7 select:disabled::-ms-expand {
  background: #f60;
}

.wpcf7 input[type=submit] {
  width: auto;
  text-transform: uppercase;
  background-color: #009775;
}

.wpcf7 input[type=submit].btn-lg {
  background-color: transparent;
  font-size: 1rem;
  margin-top: 1.5em;
}

.wpcf7 input[type=submit]:hover {
  background-color: #fff;
  color: #009775;
}

.wpcf7 input[type=submit].btn-lg:hover {
  background-color: #009775;
  color: #fff;
}

.wpcf7 .flex-control.flex-submit {
  align-items: center;
  margin-top: 1.5rem;
}

.wpcf7 .flex-control.flex-submit input[type=submit].btn-lg {
  margin-top: 0;
}

.wpcf7 .flex-control.flex-submit span.ajax-loader {
  width: 24px;
}

.wpcf7 .left.inline {
  padding-right: 0.5rem;
}

.wpcf7 .right.inline {
  padding-left: 0.5rem;
}

.wpcf7 .left.inline.plus {
  padding-right: 1rem;
}

.wpcf7 .right.inline.plus {
  padding-left: 1rem;
}

.wpcf7 .three-column {
  column-gap: 3rem;
  column-count: 3;
}

.wpcf7 div.wpcf7-validation-errors {
  border: 2px solid #f7e700;
  margin: 0;
  padding: 1rem;
}

.wpcf7 .wpcf7-not-valid {
  background-color: rgba(241, 93, 73, 0.1) !important;
}

.wpcf7 span.wpcf7-not-valid-tip {
  font-size: 0.75em;
  position: absolute;
  top: 100%;
  left: 0;
  margin-top: 0.125em;
}

.wpcf7 div.wpcf7-mail-sent-ok {
  padding: 1.5rem;
  border: none;
  background-color: #009775;
  color: #fff;
  font-weight: 900;
  font-size: 1.5rem;
  margin: 2rem 0 0;
}

#footer h5 {
  font-size: 1.375rem;
  line-height: 1.25;
  margin-bottom: 1em;
}

#footer ul {
  font-weight: 900;
}

#footer .content {
  padding-left: 0;
  padding-right: 0;
}

#footer .container > .flex:first-child {
  justify-content: space-between;
  margin-bottom: 3rem;
}

#footer .container > .flex:last-child {
  align-items: center;
}

.menu-resources ul {
  font-size: 1.125rem;
  padding: 0.75em 0;
}

.menu-resources ul li {
  margin-right: 3em;
}

.menu-resources ul li a:hover {
  color: #231F20 !important;
}

.menu-footer ul {
  font-size: 1.375rem;
  flex-wrap: wrap;
}

#footer ul li {
  display: inline-block;
}

.menu-footer {
  margin-right: 2.5rem;
}

.menu-footer ul {
  max-width: 15rem;
}

.menu-footer ul li {
  margin-bottom: 1em;
  white-space: nowrap;
  break-inside: avoid;
  width: 100%;
}

#footer ul li a {
  color: #fff;
  display: inline-block;
}

#footer ul li a:hover {
  color: #009775;
}

#footer .middle {
  margin-right: 2.5rem;
}

#footer .subscribe {
  max-width: 25rem;
  margin-bottom: 2rem;
}

#footer .flex-control {
  position: relative;
}

#footer [data-name=user-email] {
  width: 100%;
  max-width: none;
  flex-shrink: 1;
  margin: 0 1rem 0 0;
}

#footer .subscribe input[type=email] {
  width: 100%;
  background-color: #fff;
  border: none;
  color: #231F20;
  border-radius: 0 !important;
  height: auto !important;
  margin: 0 0 0;
}

#footer .subscribe input[type=email]:focus {
  outline: #009775 solid 2px;
}

#footer .subscribe input[type=email].wpcf7-not-valid {
  outline: #dc3232 solid 2px;
}

#footer input[type=submit] {
  margin: 0;
  font-size: 0.875rem;
  height: 100%;
  display: inline-block;
}

#footer span.wpcf7-spinner {
  position: absolute;
  right: 48px;
  top: 24px;
  transform: translate(50%, -50%);
  width: 90px;
  margin: 0 !important;
  height: 40px;
  background-color: #231F20;
}

#footer span.wpcf7-spinner::before {
  top: calc(50% - 8px);
  left: calc(50% - 8px);
}

#footer .wpcf7 span.wpcf7-not-valid-tip {
  margin-top: 0.25rem;
}

#footer .wpcf7 form .wpcf7-response-output {
  margin: 1.5rem 0 0;
  padding: 0.5rem;
  font-size: 0.875rem;
}

div.g-recaptcha {
  display: none;
}

div.ctct-form-embed form.ctct-form-custom {
  min-height: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-wrap: wrap !important;
}

div.ctct-form-embed div.ctct-form-defaults {
  padding: 0 !important;
  border-radius: 0 !important;
  font: inherit !important;
  background-color: transparent !important;
}

div.ctct-form-embed div.ctct-form-defaults * {
  font: inherit !important;
}

div.ctct-form-embed div.ctct-form-defaults h2.ctct-form-header, div.ctct-form-embed div.ctct-form-defaults div#gdpr_text, div.ctct-form-embed div.ctct-form-defaults p.ctct-form-footer {
  display: none !important;
}

div.ctct-form-embed div.ctct-form-defaults p.ctct-form-text {
  font-weight: 900 !important;
  margin: 0 0 1em !important;
  line-height: 1.25 !important;
  font-size: 1.375rem !important;
  width: 100% !important;
}

div.ctct-form-embed form.ctct-form-custom div.ctct-form-field {
  margin: 0 !important;
  width: calc(100% - 100px - 1rem) !important;
}

div.ctct-form-embed form.ctct-form-custom .ctct-form-required::before, div.ctct-form-embed form.ctct-form-custom label.ctct-form-label {
  display: none !important;
}

#planner-request div.ctct-form-embed form.ctct-form-custom label.ctct-form-label {
  display: block !important;
}

div.ctct-form-embed form.ctct-form-custom input.ctct-form-element {
  border-radius: 0 !important;
  height: auto !important;
  padding: 0.875rem !important;
  border: none !important;
  color: #231F20 !important;
  margin: 0 1rem 0 0 !important;
  box-shadow: none !important;
  display: block !important;
}

div.ctct-form-embed form.ctct-form-custom button.ctct-form-button {
  display: inline-block !important;
  padding: 1.125em 1.25em !important;
  border: 0.1875rem solid #009775 !important;
  color: #fff !important;
  font-weight: 900 !important;
  line-height: 0.8 !important;
  letter-spacing: 0.025em !important;
  background-color: transparent !important;
  border-radius: 0 !important;
  width: auto !important;
  margin: auto 0 0 auto !important;
  font-size: 0.875rem !important;
  height: 100% !important;
}

.signup-bar div.ctct-form-embed form.ctct-form-custom button.ctct-form-button {
  background-color: #009775 !important;
}

#footer .follow {
  white-space: nowrap;
}

.follow a {
  margin-right: 1.5rem;
}

.follow svg {
  height: 1.5rem;
  max-width: 2rem;
  fill: #fff;
}

.follow a:hover svg {
  fill: #009775;
}

#footer .end {
  max-width: 24rem;
}

#footer .partner-list {
  font-weight: normal;
  font-size: 1.125rem;
}

#footer .partner-list li {
  margin-bottom: 0.5em;
}

.awards {
  display: flex;
  margin-right: 1.5rem;
}

.award {
  margin-right: 1.5rem;
  display: block;
  opacity: 0.8;
  transition-property: opacity;
}

a.award:hover {
  opacity: 1;
}

.award img {
  max-height: 5rem;
  width: auto;
}

#logo-footer svg {
  height: 2.25rem;
  fill: #fff;
  margin-right: 1.5rem;
}

#logo-footer:hover svg {
  fill: #009775;
}

#legal-menu, .copyright {
  font-size: 0.75rem;
  margin: 0.25rem 0;
}

#legal-menu li {
  margin-right: 0.75em;
}

#legal-menu li:last-child {
  margin-right: 0;
}

#legal-menu li::after {
  display: inline;
  content: "∕";
  margin-left: 0.875em;
}

#legal-menu li:last-child::after {
  display: none;
}

.copyright {
  color: #939598;
}

/* --------------------------------------------------------- */
/* ------------------------ WPFORMS  ----------------------- */
/* --------------------------------------------------------- */
div:is(#ws-wpforms-vars, .wpforms-container) {
  --wpforms-field-size-input-spacing: .75rem;
  --wpforms-field-size-input-height: 50px;
  --wpforms-field-border-radius: 0;
  --wpforms-label-size-font-size: .9375rem;
  --wpforms-field-size-line-height: 1.125;
  --wpforms-field-size-sublabel-spacing: .125rem;
  --wpforms-label-size-sublabel-font-size: .75rem;
  --wpforms-label-size-line-height: 1.125;
  --wpforms-button-border-radius: 0;
  --wpforms-button-border-style: solid;
  --wpforms-button-border-size: .1875rem;
  --wpforms-button-background-color: var(--ws-primary);
  --wpforms-button-border-color: var(--ws-primary);
}
div:is(#ws-wpforms-vars, .wpforms-container):last-child {
  margin-bottom: 0;
}
div:is(#ws-wpforms-vars, .wpforms-container) .wpforms-field-label {
  --wpforms-field-size-input-spacing: .5rem;
}
div:is(#ws-wpforms-vars, .wpforms-container) button[type=submit] {
  padding: 1em 1.125em;
  font-weight: 900;
  line-height: 0.75;
  font-size: 1.125rem;
  letter-spacing: 0.025em;
  text-transform: uppercase;
  height: auto;
}
div:is(#ws-wpforms-vars, .wpforms-container) .wpforms-field-container > .wpforms-field:first-child {
  padding-top: 0;
}
div:is(#ws-wpforms-vars, .wpforms-container) .wpforms-submit-container {
  margin-top: 1.25rem;
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
div:is(#ws-wpforms-vars, .wpforms-container) .wpforms-submit-container .wpforms-submit-spinner {
  margin: 0;
  align-self: center;
}
div:is(#ws-wpforms-vars, .wpforms-container) .wpforms-error {
  --wpforms-field-border-size: .125rem;
  padding-right: 1.25em;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23D23F46'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23D23F46' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 0.3125em center;
  background-size: 1em 1em;
}
div:is(#ws-wpforms-vars, .wpforms-container) .wpforms-error + .wpforms-field-sublabel {
  color: var(--wpforms-label-error-color);
}
div:is(#ws-wpforms-vars, .wpforms-container) .wpforms-error + .wpforms-field-sublabel + .wpforms-error {
  display: none !important;
}
div:is(#ws-wpforms-vars, .wpforms-container) em.wpforms-error {
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.8em;
  line-height: 1;
  background-image: none;
  padding-left: 0;
}
div:is(#ws-wpforms-vars, .wpforms-container) em.wpforms-error::before {
  display: none;
}

/* -------------------------------------------------------- */
/* --------------------- MEDIA QUERIES -------------------- */
/* -------------------------------------------------------- */
@media (max-width: 1200px) {
  #header nav > ul {
    font-size: 1.125rem;
  }
  #header nav li > ul {
    font-size: 1rem;
  }
  #header nav svg {
    max-height: 1.125rem;
    max-width: 1.125rem;
  }
  #logo a svg {
    height: 3.25rem;
  }
  .down #logo a svg {
    height: 2.5rem;
  }
}
@media (max-width: 1080px) {
  #header nav > ul {
    font-size: 1.0625rem;
  }
  #header nav li > ul {
    font-size: 0.9375rem;
  }
  .search-button > span {
    display: none;
  }
  #logo a svg {
    height: 3rem;
  }
  .down #logo a svg {
    height: 2.25rem;
  }
  #header nav > ul > li > a, #header nav > ul > li > div {
    padding: 0.5em 0.75em;
    letter-spacing: -0.00625em;
  }
  .events .event {
    width: calc(33.333% - 2rem);
  }
}
@media (max-width: 960px) {
  h2, .headline {
    font-size: calc(1.75rem + 2.25vw);
  }
  .banner.parent .container h2 {
    font-size: calc(2.125rem + 4.8vw);
  }
  h3 {
    font-size: calc(1.35rem + 1.6vw);
  }
  .emphasized h3 {
    font-size: calc(1.6rem + 1.6vw);
  }
  h4 {
    font-size: calc(0.9375rem + 1.25vw);
  }
  .emphasized h4 {
    font-size: calc(0.975rem + 1.325vw);
  }
  .page-links.featured h4 {
    font-size: calc(1.2rem + 1.7vw);
  }
  h5 {
    font-size: calc(0.875rem + 0.52vw);
  }
  main > section.banner {
    padding-top: calc(9rem + 9.6vw);
    padding-bottom: calc(2.5rem + 4vw);
  }
  .banner.child::before {
    padding-top: calc(56.25% - 1.5rem);
  }
  .banner .stamp {
    max-width: calc(20rem + 25vw);
  }
  .banner .stamp .block {
    font-size: calc(0.62rem + 1vw);
  }
  .headline p {
    font-size: calc(1.125rem + 3.35vw);
  }
  div.ctct-form-embed div.ctct-form-defaults p.ctct-form-text {
    font-size: calc(0.9375rem + 0.7vw) !important;
  }
  .categories .block {
    margin: 0.375rem;
    font-size: 0.825rem;
  }
  .page-links .container > .flex {
    flex-wrap: wrap;
    margin: -1rem;
  }
  .page-link {
    width: calc(50% - 2rem);
    margin: 1rem;
  }
  .page-link > .content::before {
    padding-top: 75%;
  }
  .full .page-link {
    width: calc(33.333% - 2rem);
  }
  .full .page-link > .content::before {
    padding-top: 100%;
  }
  .posts .post {
    width: calc(50% - 3rem);
  }
  .post-meta .container .white.flex {
    display: block;
  }
  .post-meta p + p {
    margin-left: 0;
    border-left: none;
    padding-left: 0;
  }
  .menu-footer ul {
    font-size: 1.25rem;
  }
  .menu-resources ul li {
    margin-right: 2.25em;
  }
  #footer .container > .flex:first-child {
    flex-wrap: wrap;
  }
  #footer .middle {
    margin-right: 0;
  }
  .end {
    margin-top: 1rem;
  }
  .end h5 {
    display: none;
  }
  #footer .follow {
    order: 3;
    padding-left: 0;
  }
  #footer .follow h5 {
    display: none;
  }
}
@media (max-width: 920px) {
  #logo a svg, .down #logo a svg {
    height: 2rem;
  }
}
@media (max-width: 880px) {
  body.no-scroll {
    overflow: hidden;
  }
  #header {
    padding: 0.75rem 0;
  }
  #header::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 20;
    background: inherit;
  }
  #header.down {
    background-color: #292d2e;
  }
  #header > .container {
    padding-right: 2.5rem;
  }
  #header > .container > *:not(.device-wrapper) {
    z-index: 100;
  }
  #logo {
    flex-shrink: 0;
  }
  #pages-menu, #search-menu, #header nav.menu-main > ul > li::after, #header nav > #pages-device-menu > li::after, #header .device-wrapper .searchform .close {
    display: none;
  }
  #header .navicon {
    display: block;
  }
  #header .share-button {
    padding: 0;
  }
  #header nav li > ul.share-menu {
    top: 50%;
    right: 100%;
    transform: translate(0.375rem, -50%);
    margin-right: 1.375rem;
    transition-property: opacity, visibility, transform, background;
  }
  #header.down nav li > ul.share-menu {
    background-color: transparent;
  }
  #header.sharing nav li > ul.share-menu {
    transform: translate(0, -50%);
  }
  #header nav.menu-main {
    width: 100%;
    justify-content: flex-end;
    padding-right: 2rem;
  }
  #header nav svg {
    max-height: 1.375rem;
    max-width: 1.375rem;
  }
  #header nav .trigger:hover svg {
    fill: #009775;
  }
  #header nav.menu-device > ul {
    font-size: 1.375rem;
    width: 100%;
  }
  #header nav li > ul {
    font-size: 1.125rem;
  }
  #header .device-wrapper {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    background-color: #231F20;
    padding: 5.25rem 2.5rem 3.75rem 0;
    max-width: 22.5rem;
    height: 100vh;
    overflow: scroll;
    transform: translate(100%, 0);
    transition-property: transform;
  }
  #header.open .device-wrapper {
    transform: translate(0, 0);
  }
  #header .device-wrapper #pages-device-menu li {
    display: block;
  }
  #header .device-wrapper #pages-device-menu li li {
    display: table;
  }
  #header .device-wrapper #pages-device-menu > li > a {
    padding: 0.75em 0 0.75em;
    margin-left: 2.5rem;
    display: table;
  }
  #header .device-wrapper #pages-device-menu > li > a:hover {
    color: #009775;
  }
  .expander {
    display: none;
    width: 1.375rem;
    height: 1.375rem;
    padding: 0.75em;
    position: absolute;
    top: 0;
    right: -0.75em;
    cursor: pointer;
    box-sizing: content-box;
  }
  .menu-item-has-children > .expander {
    display: block;
  }
  .expander::before, .expander::after {
    height: 3px;
    width: 12px;
    background-color: #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    content: "";
    display: block;
    transform: translate(-50%, -50%);
    transition-property: background, transform;
    cursor: pointer;
  }
  .show .expander::before {
    transform: translate(-50%, -50%) rotate(-180deg);
  }
  .expander::after {
    transform: translate(-50%, -50%) rotate(90deg);
  }
  .show .expander::after {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  .expander:hover::before, .expander:hover::after {
    background-color: #009775;
  }
  #header nav li > ul.sub-menu {
    position: relative;
    opacity: 1;
    visibility: visible;
    top: auto;
    transform: none;
    padding: 0 0 0 2.5rem;
    max-height: 0;
    background-color: #009775;
    transition-property: padding, max-height, margin;
    transition-delay: 140ms;
  }
  #header nav li.show > ul.sub-menu {
    max-height: 500px;
    padding: 1em 0 1em 2.5rem;
    margin-top: 0;
  }
  #header nav li > ul::before, #header.down nav li > ul::before {
    height: 100%;
    left: 100%;
    width: 2.5rem;
  }
  #header nav li > ul.sub-menu li {
    margin: 0 0 0.625rem;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition-timing-function: inherit;
    transition-duration: inherit;
    transition-property: opacity, visibility;
  }
  #header nav li > ul.sub-menu li:last-child {
    margin-bottom: 0;
  }
  #header nav li.show > ul.sub-menu li {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
    transition-delay: 140ms;
  }
  #header nav li > ul.sub-menu li a {
    margin-left: 0.5em;
  }
  #header .device-wrapper .searchform {
    opacity: 1;
    visibility: visible;
    transform: translate(0, 0);
    pointer-events: auto;
    position: static;
    padding-bottom: 0;
  }
  #header .device-wrapper .searchform .flex {
    display: block;
  }
  .searchform input[type=search] {
    font-size: 1.375rem;
  }
  .searchform input[type=submit] {
    padding: 0.625em;
    margin-top: 0.625em;
  }
  .member {
    width: calc(33.333% - 2rem);
  }
  .events .event {
    width: calc(50% - 2rem);
  }
  .general .container .content.contact-information {
    padding-right: 2.5rem;
    width: 45%;
  }
  .general .contact-form {
    width: 55%;
  }
  .split:nth-of-type(odd) .bg:nth-of-type(1), .split:nth-of-type(even) .bg:nth-of-type(2) {
    width: 60%;
  }
  .split:nth-of-type(odd) .bg:nth-of-type(2), .split:nth-of-type(even) .bg:nth-of-type(1) {
    width: 40%;
  }
  .split .content {
    width: 75%;
  }
  .split:nth-of-type(odd) .content {
    left: calc(60% + 2.5rem);
  }
  .split:nth-of-type(even) .content {
    left: calc(40% - 2.5rem);
  }
  .menu-footer ul {
    column-gap: 2.5rem;
  }
}
@media (max-width: 880px) and (min-width: 581px) {
  .social .post {
    flex-wrap: wrap;
    align-content: flex-start;
    align-items: flex-start;
    background-color: #f1f2f2;
  }
  .social .post > .half {
    width: 100%;
  }
  #facebook .cff-wrapper {
    height: 100%;
  }
  #facebook #cff .cff-item {
    flex-wrap: wrap;
  }
  #facebook #cff.cff-half-layout .cff-text-wrapper, #facebook #cff.cff-half-layout .cff-media-wrap {
    width: 100%;
    flex: 0 0 100%;
  }
  #facebook #cff.cff-half-layout .cff-html5-video, #facebook #cff.cff-half-layout .cff-iframe-wrap, #facebook #cff.cff-half-layout .cff-photo, #facebook #cff.cff-half-layout .cff-vidLink {
    height: auto;
  }
}
@media (max-width: 780px) {
  .full .page-link {
    width: calc(50% - 2rem);
  }
  .full .page-link > .content::before {
    padding-top: 75%;
  }
  .forced .full .page-link > .content::before {
    padding-top: 100%;
  }
  .directory-listings article {
    margin-bottom: 2.5rem;
  }
  .directory-listings .side-thumb {
    display: none;
  }
  .directory-listings .listing-header .thumb {
    display: block;
  }
  .directory-listings .listing-header {
    display: flex;
    align-items: center;
    margin-bottom: 2rem;
  }
  .directory-listings .thumb {
    width: 40%;
  }
  .directory-listings .listing-header h3 {
    margin-bottom: 0;
  }
  .event-details time {
    font-size: 2rem;
  }
  .event-details address {
    font-size: 1.5rem;
  }
  #sidebar, #sidebar.locked nav ul, .weather-widget {
    width: 12.5rem;
  }
  #sidebar nav ul {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.2;
  }
  nav.menu-footer {
    width: auto;
  }
  #footer .follow {
    order: 0;
    padding: 0;
  }
  .follow svg {
    height: 1.25rem;
    max-width: 1.75rem;
  }
  #footer h5 {
    font-size: 1.125rem;
  }
  #footer .follow h5, .end h5 {
    display: block;
  }
  #footer .subscribe {
    width: 80%;
    max-width: none;
    margin: 1rem 0;
  }
  #footer .end {
    margin: 1.5rem 0 0;
  }
  #footer .partner-list {
    font-size: 0.9375rem;
  }
  #footer .partner-list li {
    display: table;
  }
  #logo-footer svg {
    height: 1.75rem;
  }
  #legal-menu, .copyright {
    font-size: 0.625rem;
  }
}
@media (max-width: 720px) {
  .alignleft, img.alignleft, .alignright, img.alignright, .aligncenter, img.aligncenter {
    display: block;
    float: none;
    margin: 1em auto;
  }
}
@media (max-width: 660px) {
  h3.section-title {
    margin-bottom: 1.5rem;
  }
  main > section.banner.grandchild {
    padding-top: 2.5rem;
  }
  .stamp .graphics {
    margin: 0 auto;
    width: 85%;
  }
  main > section.split {
    padding: 0;
    display: flex;
    flex-wrap: wrap;
  }
  .split .bg {
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    bottom: auto;
  }
  .split .bg:nth-of-type(1) {
    order: 0;
  }
  .split .bg:nth-of-type(2) {
    order: 2;
  }
  .split .bg::before {
    display: block;
    content: "";
  }
  .split:nth-of-type(odd) .content, .split:nth-of-type(even) .content {
    order: 1;
    left: auto;
    right: auto;
    transform: none;
    max-width: 100%;
  }
  .split:nth-of-type(odd) .bg:nth-of-type(2), .split:nth-of-type(even) .bg:nth-of-type(1), .split:nth-of-type(odd) .bg:nth-of-type(1), .split:nth-of-type(even) .bg:nth-of-type(2), .split .content {
    width: 100%;
  }
  .split:nth-of-type(odd) .bg:nth-of-type(1)::before, .split:nth-of-type(even) .bg:nth-of-type(2)::before {
    padding-top: 56.25%;
  }
  .split:nth-of-type(odd) .bg:nth-of-type(2)::before, .split:nth-of-type(even) .bg:nth-of-type(1)::before {
    padding-top: 65%;
  }
  .page-links .featured {
    flex-wrap: wrap;
  }
  .page-links .excerpt {
    padding: 0;
  }
  .general > .flex {
    flex-wrap: wrap;
  }
  .general .container .content.contact-information, .general .contact-form {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }
  .videos .video {
    width: 100%;
  }
  .photos.grid > .col {
    width: 50%;
  }
  .weather > .container {
    display: block;
  }
  .weather-widget {
    width: 100%;
    margin: 2.5rem 0 0;
  }
  .member {
    width: calc(50% - 2rem);
  }
  .events .upcoming {
    margin: 0 0 -2.5rem;
  }
  .events .event {
    width: 100%;
    margin: 0 0 2.5rem;
  }
  .wpcf7 .three-column {
    column-gap: 2rem;
    column-count: 2;
  }
  #sidebar {
    display: none;
  }
  .menu-resources ul {
    font-size: 0.9375rem;
  }
  .menu-footer ul {
    font-size: 1rem;
  }
  div.ctct-form-embed div.ctct-form-defaults p.ctct-form-text {
    font-size: 1.125rem !important;
  }
}
@media (max-width: 580px) {
  time {
    letter-spacing: 0;
  }
  main p, main ul, main ol, main dl {
    margin-bottom: 1rem;
  }
  main > section {
    margin: 2.5rem 0;
  }
  .no-gfx main > section:first-child {
    margin-top: 5rem;
  }
  main > section.bg {
    padding: 2.5rem 1.25rem;
  }
  main > section.banner {
    padding-top: calc(9rem + 9.6vw);
    padding-bottom: calc(2.5rem + 4vw);
  }
  main > section.banner.parent {
    padding: calc(3rem + 7.6vw) 0 2rem;
  }
  main > section.banner.child {
    margin-bottom: 5rem;
  }
  .banner.child::before {
    padding-top: calc(56.25% - 1rem);
  }
  main > article.post {
    margin: 7.5rem 0 2.5rem;
  }
  .container, #header > .container, .split > .content {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
  .content {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  #header .device-wrapper {
    padding: 5.25rem 1.25rem 2.5rem 0;
  }
  #header .device-wrapper #pages-device-menu > li > a {
    margin-left: 1.25rem;
  }
  .banner .stamp {
    padding-bottom: 0;
  }
  .banner .stamp .block {
    margin-top: 4.5rem;
  }
  .banner.child .container h2 {
    padding: 1.25rem 1.25rem 1rem;
  }
  .single .content > .wp-post-img, .single .content > h2 {
    margin: 1.5rem 0 1rem;
  }
  .photos.grid {
    --ws-gutter-x: 1.25rem;
    --ws-gutter-y: 1.25rem;
  }
  .page-links .container > .flex, .team-members {
    margin: -0.625rem;
  }
  .page-links .featured {
    margin: 0.625rem;
  }
  .page-link, .full .page-link, .member {
    margin: 0.625rem;
    width: calc(50% - 1.25rem);
  }
  .page-link > .content::before, .full .page-link > .content::before {
    padding-top: 100%;
  }
  .page-links.featured .bg {
    overflow: hidden;
  }
  .page-links.featured .bg::before {
    width: 120%;
  }
  .member {
    width: calc(100% - 0.625rem);
  }
  .member .bg {
    width: calc(50% - 1.5rem);
    float: left;
    margin-right: 1.5rem;
  }
  .social .container > .flex {
    flex-wrap: wrap;
  }
  .social article:first-child {
    margin-bottom: 2rem;
  }
  .social .post {
    margin-bottom: 0;
  }
  .directory-listings article {
    flex-wrap: wrap;
  }
  .directory-listings .side-thumb {
    display: block;
  }
  .directory-listings .listing-header {
    margin: 0;
  }
  .directory-listings .listing-header .thumb {
    display: none;
  }
  .directory-listings .listing-header h3 {
    margin-bottom: 1rem;
  }
  .directory-listings .thumb {
    width: 100%;
    max-width: 32.5rem;
    margin-bottom: 1.25rem;
  }
  .posts.flex {
    margin-left: 0;
    margin-right: 0;
  }
  .posts .post {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
  .post-meta .sep {
    margin-bottom: 0;
  }
  section.author .avatar {
    max-width: 140px;
    margin: 0 1em 0.75em 0;
  }
  .signup-bar .content {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }
  .signup-bar.page-links .flex {
    display: block;
  }
  .signup-bar input[type=submit] {
    margin: 1.5rem 0 0;
  }
  .posts-nav a {
    max-width: none;
  }
  .posts-nav .title-link {
    border: none !important;
  }
  .posts-nav .prev .tagline {
    margin-left: 0;
    margin-right: auto;
  }
  .posts-nav .next .tagline {
    margin-left: auto;
    margin-right: 0;
  }
  .posts-nav h4 {
    font-size: 1.25rem;
  }
  .faq {
    margin-bottom: 1.25rem;
  }
  .events .upcoming {
    margin-bottom: -1.25rem;
  }
  .events .event {
    margin: 0 0 1.25rem;
  }
  .contact-information h5 {
    margin-top: 1rem;
  }
  .menu-resources ul {
    padding: 0;
  }
  .menu-resources ul li {
    margin: 1em 1.25em 1em 0;
  }
  .menu-footer ul {
    column-count: 1;
  }
  #footer .menu-footer ul li {
    display: block;
    width: auto;
  }
  #footer .subscribe {
    width: 100%;
  }
  form .w-sm-100 {
    width: 100% !important;
  }
  form .w-sm-100.inline {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  form .w-sm-float-flip {
    float: left !important;
    padding-right: 0.5rem;
    padding-left: 0 !important;
  }
  form .w-sm-float-flip + * {
    padding-right: 0 !important;
    padding-left: 0.5rem;
  }
}
@media (max-width: 520px) {
  .offer img {
    display: block;
    float: none;
    margin: 0 0 1rem;
    width: 100%;
    max-width: 100%;
  }
  #footer .container > .flex:last-child {
    flex-wrap: wrap;
  }
  #footer .awards {
    width: 100%;
    margin-bottom: 1rem;
  }
}
@media (max-width: 480px) {
  .social .post {
    flex-wrap: wrap;
    align-content: flex-start;
    align-items: flex-start;
    background-color: #f1f2f2;
  }
  .social .post > .half {
    width: 100%;
  }
  #facebook .cff-wrapper {
    height: 100%;
  }
  #facebook #cff .cff-item {
    flex-wrap: wrap;
  }
  #facebook #cff.cff-half-layout .cff-text-wrapper, #facebook #cff.cff-half-layout .cff-media-wrap {
    width: 100%;
    flex: 0 0 100%;
  }
  #facebook #cff.cff-half-layout .cff-html5-video, #facebook #cff.cff-half-layout .cff-iframe-wrap, #facebook #cff.cff-half-layout .cff-photo, #facebook #cff.cff-half-layout .cff-vidLink {
    height: auto;
  }
}
@media (max-width: 1280px) and (pointer: coarse) {
  a:hover, a:active, a:focus, p a:link:hover, ul a:link:hover, ol a:link:hover, dl a:link:hover {
    color: #009775;
  }
  input[type=submit]:hover {
    background-color: transparent;
  }
  .block:hover {
    background-color: inherit;
    color: inherit;
  }
  .white .block:hover, .back-link .block:hover, .pagination .page-numbers.prev:hover, .pagination .page-numbers.next:hover, .social .block:hover {
    color: #231F20;
  }
  .back-link .block:hover, .wpcf7 input[type=submit]:hover {
    background-color: #009775;
  }
  .navicon:hover .navicon-bar, .navicon:hover .navicon-bar:nth-child(2)::before, .close:hover::before, .close:hover::after {
    background-color: #fff;
  }
  .page-link:hover h4, .page-link:hover h4 .parent {
    background-color: #231F20;
  }
  .pagination .page-numbers.prev:hover, .pagination .page-numbers.next:hover {
    border-color: #939598;
    background-color: inherit;
  }
  .pagination a.page-numbers:not(.prev):not(.next):hover {
    color: #939598;
  }
  .menu-resources ul li a:hover {
    color: #fff !important;
  }
  .back-link .block:hover, .wpcf7 input[type=submit]:hover, #header .device-wrapper #pages-device-menu > li > a:hover, #footer ul li a:hover {
    color: #fff;
  }
  .expander:hover::before, .expander:hover::after {
    background-color: #fff;
  }
  .social .block:hover svg {
    fill: #009775;
  }
  .share-links a:hover svg {
    fill: #939598;
  }
  #logo a:hover svg, .follow a:hover svg, #logo-footer:hover svg, #header nav .trigger:hover svg {
    fill: #fff;
  }
  /* ----- Mobile Nav Setup ----- */
  body.no-scroll {
    overflow: hidden;
  }
  #header {
    padding: 0.75rem 0;
  }
  #header::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 20;
    background: inherit;
  }
  #header.down {
    background-color: #292d2e;
  }
  #header > .container {
    padding-right: 2.5rem;
  }
  #header > .container > *:not(.device-wrapper) {
    z-index: 100;
  }
  #logo {
    flex-shrink: 0;
  }
  #pages-menu, #search-menu, #header nav.menu-main > ul > li::after, #header nav > #pages-device-menu > li::after, #header .device-wrapper .searchform .close {
    display: none;
  }
  #header .navicon {
    display: block;
  }
  #header .share-button {
    padding: 0;
  }
  #header nav li > ul.share-menu {
    top: 50%;
    right: 100%;
    transform: translate(0.375rem, -50%);
    margin-right: 1.375rem;
    transition-property: opacity, visibility, transform, background;
  }
  #header.down nav li > ul.share-menu {
    background-color: transparent;
  }
  #header.sharing nav li > ul.share-menu {
    transform: translate(0, -50%);
  }
  #header nav.menu-main {
    width: 100%;
    justify-content: flex-end;
    padding-right: 2rem;
  }
  #header nav svg {
    max-height: 1.375rem;
    max-width: 1.375rem;
  }
  #header nav .trigger:hover svg {
    fill: #009775;
  }
  #header nav.menu-device > ul {
    font-size: 1.375rem;
    width: 100%;
  }
  #header nav li > ul {
    font-size: 1.125rem;
  }
  #header .device-wrapper {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    background-color: #231F20;
    padding: 5.25rem 2.5rem 3.75rem 0;
    max-width: 22.5rem;
    height: 100vh;
    overflow: scroll;
    transform: translate(100%, 0);
    transition-property: transform;
  }
  #header.open .device-wrapper {
    transform: translate(0, 0);
  }
  #header .device-wrapper #pages-device-menu li {
    display: block;
  }
  #header .device-wrapper #pages-device-menu li li {
    display: table;
  }
  #header .device-wrapper #pages-device-menu > li > a {
    padding: 0.75em 0 0.75em;
    margin-left: 2.5rem;
    display: table;
  }
  #header .device-wrapper #pages-device-menu > li > a:hover {
    color: #009775;
  }
  .expander {
    display: none;
    width: 1.375rem;
    height: 1.375rem;
    padding: 0.75em;
    position: absolute;
    top: 0;
    right: -0.75em;
    cursor: pointer;
    box-sizing: content-box;
  }
  .menu-item-has-children > .expander {
    display: block;
  }
  .expander::before, .expander::after {
    height: 3px;
    width: 12px;
    background-color: #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    content: "";
    display: block;
    transform: translate(-50%, -50%);
    transition-property: background, transform;
    cursor: pointer;
  }
  .show .expander::before {
    transform: translate(-50%, -50%) rotate(-180deg);
  }
  .expander::after {
    transform: translate(-50%, -50%) rotate(90deg);
  }
  .show .expander::after {
    transform: translate(-50%, -50%) rotate(0deg);
  }
  .expander:hover::before, .expander:hover::after {
    background-color: #009775;
  }
  #header nav li > ul.sub-menu {
    position: relative;
    opacity: 1;
    visibility: visible;
    top: auto;
    transform: none;
    padding: 0 0 0 2.5rem;
    max-height: 0;
    background-color: #009775;
    transition-property: padding, max-height, margin;
    transition-delay: 140ms;
  }
  #header nav li.show > ul.sub-menu {
    max-height: 500px;
    padding: 1em 0 1em 2.5rem;
    margin-top: 0;
  }
  #header nav li > ul::before, #header.down nav li > ul::before {
    height: 100%;
    left: 100%;
    width: 2.5rem;
  }
  #header nav li > ul.sub-menu li {
    margin: 0 0 0.625rem;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition-timing-function: inherit;
    transition-duration: inherit;
    transition-property: opacity, visibility;
  }
  #header nav li > ul.sub-menu li:last-child {
    margin-bottom: 0;
  }
  #header nav li.show > ul.sub-menu li {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
    transition-delay: 140ms;
  }
  #header nav li > ul.sub-menu li a {
    margin-left: 0.5em;
  }
  #header .device-wrapper .searchform {
    opacity: 1;
    visibility: visible;
    transform: translate(0, 0);
    pointer-events: auto;
    position: static;
    padding-bottom: 0;
  }
  #header .device-wrapper .searchform .flex {
    display: block;
  }
  .searchform input[type=search] {
    font-size: 1.375rem;
  }
  .searchform input[type=submit] {
    padding: 0.625em;
    margin-top: 0.625em;
  }
}
@media (max-width: 740px) and (pointer: coarse) {
  h2 {
    font-size: 2.75rem;
  }
  h3 {
    font-size: 2rem;
  }
  #header > .container {
    padding-right: 1.25rem;
  }
  .content {
    padding: 2.5rem 1.25rem;
  }
  .banner.parent .container h2 {
    font-size: 3.75rem;
  }
  .single .content > h2 {
    font-size: 2.5rem;
  }
  .event-details time {
    font-size: 1.5rem;
  }
  .event-details address {
    font-size: 1.25rem;
  }
  .menu-resources ul {
    padding-bottom: 1em;
  }
  .menu-resources ul li {
    margin-bottom: 0;
  }
  #header .device-wrapper {
    width: 100vw;
    padding: 5.25rem 2.5rem 3.75rem;
    max-width: none;
  }
  #header .device-wrapper .container {
    padding: 0;
  }
  #header .device-wrapper #pages-device-menu > li > a {
    margin-left: 0;
  }
  #header nav li > ul::after {
    height: 100%;
    right: 100%;
    width: 2.5rem;
    background-color: #009775;
    content: "";
    display: block;
    bottom: 0;
    position: absolute;
  }
  #header nav li > ul.sub-menu, #header nav li.show > ul.sub-menu {
    padding-left: 0.5rem;
  }
}
@media (max-width: 680px) and (pointer: coarse) {
  h2 {
    font-size: 2.5rem;
  }
  .single .content > h2 {
    font-size: 2rem;
  }
  .headline p {
    font-size: 2rem;
  }
  .event-details time {
    font-size: 1.25rem;
  }
  main > section.banner.home {
    padding: 12.5rem 0 5rem;
  }
  .stamp .graphics {
    width: 80%;
  }
  .banner .stamp .block {
    margin-top: 5rem;
  }
  .post-content ul li {
    margin-bottom: 0.75em;
  }
  .page-links.featured .bg {
    overflow: hidden;
  }
  .page-links.featured .bg::before {
    opacity: 0.7;
    width: 125%;
  }
  .page-links .details .name {
    display: block;
    margin-left: 0;
    line-height: 1.1;
  }
  .wpcf7-radio .wpcf7-list-item, .wpcf7-checkbox .wpcf7-list-item {
    font-size: 120%;
    word-break: break-word;
  }
}
@media (max-width: 320px) and (pointer: coarse) {
  html {
    font-size: 13px;
  }
  main p, main ul, main ol, main dl {
    font-size: 1.25rem;
  }
  .social .post > .half {
    width: 100%;
  }
  .social .post .content p {
    font-size: 1rem;
  }
  .sub-directory .two-column {
    column-count: 1;
  }
}
/*# sourceMappingURL=style.css.map */
