@font-face {
  font-family: 'Open Sans';
  src: url("../fonts/open-sans-400.woff") format("woff");
  font-weight: 400;
  font-style: normal; }

@font-face {
  font-family: 'Open Sans';
  src: url("../fonts/open-sans-400italic.woff") format("woff");
  font-weight: 400;
  font-style: italic; }

@font-face {
  font-family: 'Open Sans';
  src: url("../fonts/open-sans-700.woff") format("woff");
  font-weight: 700;
  font-style: normal; }

@font-face {
  font-family: 'Open Sans';
  src: url("../fonts/open-sans-700italic.woff") format("woff");
  font-weight: 700;
  font-style: italic; }

@media screen and (max-width: 739px) {
  .fs-grid .fs-row,
  .fs_grid_row {
    width: 96%;
    width: calc( 100% - 40px); } }

@media screen and (min-width: 740px) {
  .fs-grid .fs-row,
  .fs_grid_row {
    width: 640px; } }

@media screen and (min-width: 980px) {
  .fs-grid .fs-row,
  .fs_grid_row {
    width: 840px; } }

@media screen and (min-width: 1220px) {
  .fs-grid .fs-row,
  .fs_grid_row {
    width: 920px; } }

@media screen and (min-width: 1600px) {
  .fs-grid .fs-row,
  .fs_grid_row {
    width: 920px; } }

html {
  font-size: 62.5%;
  scroll-behavior: smooth; }

html,
body,
button,
input,
select,
textarea {
  font-family: "Open Sans", Helvetica, Arial, sans-serif; }

body {
  color: #000000;
  font-size: 18px;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.5; }

main {
  overflow-x: hidden; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
  font-weight: 700;
  margin-top: 4rem;
  margin-bottom: 2rem;
  line-height: 1.2;
  text-transform: uppercase;
  color: #000000; }

h1 {
  font-size: 46px;
  font-size: 4.6rem; }
  @media only screen and (max-width: 979px) {
    h1 {
      font-size: 42px;
      font-size: 4.2rem; } }
  @media only screen and (max-width: 739px) {
    h1 {
      font-size: 36px;
      font-size: 3.6rem; } }
  @media only screen and (max-width: 599px) {
    h1 {
      font-size: 32px;
      font-size: 3.2rem; } }
h2 {
  font-size: 36px;
  font-size: 3.6rem;
  margin-top: 4rem;
  margin-bottom: 1rem; }
  @media only screen and (max-width: 739px) {
    h2 {
      font-size: 32px;
      font-size: 3.2rem; } }
  @media only screen and (max-width: 599px) {
    h2 {
      font-size: 28px;
      font-size: 2.8rem; } }
h3 {
  font-size: 24px;
  font-size: 2.4rem;
  margin-top: 3rem;
  margin-bottom: 1rem; }

h4 {
  font-size: 20px;
  font-size: 2rem;
  margin-top: 3rem;
  margin-bottom: 1rem; }

h5 {
  font-size: 18px;
  font-size: 1.8rem;
  margin-top: 2rem;
  margin-bottom: 1rem; }

h6 {
  font-size: 16px;
  font-size: 1.6rem;
  margin-top: 2rem;
  margin-bottom: 1rem; }

p {
  margin-bottom: 2rem; }

ul,
ol {
  margin-top: 0;
  margin-bottom: 2rem; }

ul {
  list-style: disc; }

ol {
  list-style: decimal; }

ul li,
ol li {
  margin-bottom: 0.5rem; }

ul ul,
ol ol,
ul ol,
ol ul {
  margin-top: 0.25rem;
  margin-bottom: 0;
  margin-left: 2rem; }

dt {
  font-weight: bold; }

dd {
  margin: 0 1.5em 1.5em; }

b,
strong {
  font-weight: bold; }

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

blockquote {
  margin-left: 0;
  margin-bottom: 2rem;
  font-style: italic; }
  blockquote p {
    padding: 1rem 1rem 1rem 2rem; }

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

sup {
  bottom: 1ex; }

sub {
  top: .5ex; }

small {
  font-size: 75%; }

big {
  font-size: 125%; }

table {
  margin: 0 0 2rem 0;
  width: 100%;
  border-collapse: collapse; }

th {
  font-weight: bold; }

th,
td {
  border: 1px solid grey;
  padding: 0.4rem 0.8rem; }

figure {
  margin-top: 0;
  margin-bottom: 0;
  margin-block-start: 0;
  margin-block-end: 0;
  margin-inline-start: 0;
  margin-inline-end: 0; }
  figure img {
    display: block; }

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

hr {
  border: 0;
  height: 1px;
  margin-top: 4rem;
  margin-bottom: 4rem; }

a {
  color: inherit; }

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

::-webkit-input-placeholder {
  /* WebKit, Blink, Edge */
  color: #fefefe; }

:-moz-placeholder {
  /* Mozilla Firefox 4 to 18 */
  color: #fefefe;
  opacity: 1; }

::-moz-placeholder {
  /* Mozilla Firefox 19+ */
  color: #fefefe;
  opacity: 1; }

:-ms-input-placeholder {
  /* Internet Explorer 10-11 */
  color: #fefefe; }

::-ms-input-placeholder {
  /* Microsoft Edge */
  color: #fefefe; }

::placeholder {
  /* Most modern browsers support this now. */
  color: #fefefe; }

form fieldset {
  border: none; }
  form fieldset > legend {
    display: none; }

form label {
  color: #000000; }

form input[type=text],
form input[type=search],
form input[type=number],
form input[type=tel],
form input[type=email],
form input[type=password],
form input[type=submit],
form input[type=button],
form select,
form textarea,
form button {
  appearance: none;
  -webkit-appearance: none;
  width: 100%;
  padding: 1rem 2rem;
  line-height: 1.2;
  margin: 0.5rem 0;
  border: none;
  border-bottom: 2px solid #000000;
  background: rgba(0, 0, 0, 0.05);
  color: #000000;
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
  font-weight: 500; }
  form input[type=text]:focus,
  form input[type=search]:focus,
  form input[type=number]:focus,
  form input[type=tel]:focus,
  form input[type=email]:focus,
  form input[type=password]:focus,
  form input[type=submit]:focus,
  form input[type=button]:focus,
  form select:focus,
  form textarea:focus,
  form button:focus {
    outline: none;
    border-color: #58E9A6; }

form textarea {
  resize: vertical; }

form select {
  color: #AAAAAA;
  appearance: none;
  -webkit-appearance: none;
  padding-right: 4rem;
  background-image: linear-gradient(45deg, transparent 50%, #AAAAAA 50%), linear-gradient(135deg, #AAAAAA 50%, transparent 50%), linear-gradient(to right, #AAAAAA, #AAAAAA);
  background-position: calc( 100% - 1.8rem) 52%, calc( 100% - 1.2rem) 52%, calc( 100% - 3.4rem) 0.75rem;
  background-size: 0.6rem 0.6rem, 0.6rem 0.6rem, 0.1rem calc( 100% - 1.5rem);
  background-repeat: no-repeat; }

form input[type=submit],
form input[type=button],
form button[type=submit] {
  background: #58E9A6;
  border-color: #58E9A6;
  transition: all 0.33s ease;
  padding: 1rem;
  color: white;
  width: 100%;
  font-weight: bold;
  text-align: center; }
  form input[type=submit]:hover,
  form input[type=button]:hover,
  form button[type=submit]:hover {
    cursor: pointer; }

.nf-form-fields-required {
  opacity: 0.5;
  font-size: smaller;
  margin-bottom: 2rem; }

.nf-field-container .field-wrap input[type=button] {
  width: 100%; }

.nf-field-container.label-above .nf-field-label {
  margin-bottom: 0.2rem; }

/****************************
****** WIDE/FULL ALIGN ******
****************************/
.wp-block-cover.alignwide > .wp-block-cover__inner-container,
.wp-block-cover.alignfull > .wp-block-cover__inner-container,
.wp-block-group.alignwide > .wp-block-group__inner-container,
.wp-block-group.alignfull > .wp-block-group__inner-container {
  width: 100%; }

@media screen and (min-width: 740px) {
  .wp-block-cover.alignwide > .wp-block-cover__inner-container,
  .wp-block-cover.alignfull > .wp-block-cover__inner-container,
  .wp-block-group.alignwide > .wp-block-group__inner-container,
  .wp-block-group.alignfull > .wp-block-group__inner-container {
    width: calc( 640px * 0.9791666667); } }

@media screen and (min-width: 980px) {
  .wp-block-cover.alignwide > .wp-block-cover__inner-container,
  .wp-block-cover.alignfull > .wp-block-cover__inner-container,
  .wp-block-group.alignwide > .wp-block-group__inner-container,
  .wp-block-group.alignfull > .wp-block-group__inner-container {
    width: calc( 840px * 0.9791666667); } }

@media screen and (min-width: 1220px) {
  .wp-block-cover.alignwide > .wp-block-cover__inner-container,
  .wp-block-cover.alignfull > .wp-block-cover__inner-container,
  .wp-block-group.alignwide > .wp-block-group__inner-container,
  .wp-block-group.alignfull > .wp-block-group__inner-container {
    width: calc( 920px * 0.9791666667); } }

@media screen and (min-width: 1600px) {
  .wp-block-cover.alignwide > .wp-block-cover__inner-container,
  .wp-block-cover.alignfull > .wp-block-cover__inner-container,
  .wp-block-group.alignwide > .wp-block-group__inner-container,
  .wp-block-group.alignfull > .wp-block-group__inner-container {
    width: calc( 920px * 0.9791666667); } }

.wp-block-cover.alignwide > .wp-block-cover__inner-container,
.wp-block-cover.alignfull > .wp-block-cover__inner-container,
.wp-block-group.alignwide > .wp-block-group__inner-container,
.wp-block-group.alignfull > .wp-block-group__inner-container {
  margin-left: auto;
  margin-right: auto; }

.alignwide {
  margin-left: -12%;
  margin-right: -12%;
  width: 124%;
  max-width: 100vw; }
  @media only screen and (max-width: 1219px) {
    .alignwide {
      margin-left: -8%;
      margin-right: -8%;
      width: 116%; } }
  @media only screen and (max-width: 739px) {
    .alignwide {
      margin-left: 0;
      margin-right: 0;
      width: 100%; } }
.alignfull {
  margin-left: calc( -100vw / 2 + 100% / 2);
  margin-right: calc( -100vw / 2 + 100% / 2);
  width: 100vw; }

/*******************
****** COLORS ******
*******************/
.has-black-color {
  color: #000000 !important; }

.has-black-background-color {
  background-color: #000000 !important; }

.has-grey-color {
  color: #AAAAAA !important; }

.has-grey-background-color {
  background-color: #AAAAAA !important; }

.has-white-color {
  color: #FFFFFF !important; }

.has-white-background-color {
  background-color: #FFFFFF !important; }

.has-accent-color {
  color: #58E9A6 !important; }

.has-accent-background-color {
  background-color: #58E9A6 !important; }

/************************************
***** MARGIN & PADDING HELPERS ******
************************************/
.margin-top-0 {
  margin-top: 0rem !important; }

.margin-bottom-0 {
  margin-bottom: 0rem !important; }

.padding-top-0 {
  padding-top: 0rem !important; }

.padding-bottom-0 {
  padding-bottom: 0rem !important; }

.margin-top-1 {
  margin-top: 1rem !important; }

.margin-bottom-1 {
  margin-bottom: 1rem !important; }

.padding-top-1 {
  padding-top: 1rem !important; }

.padding-bottom-1 {
  padding-bottom: 1rem !important; }

.margin-top-2 {
  margin-top: 2rem !important; }

.margin-bottom-2 {
  margin-bottom: 2rem !important; }

.padding-top-2 {
  padding-top: 2rem !important; }

.padding-bottom-2 {
  padding-bottom: 2rem !important; }

.margin-top-4 {
  margin-top: 4rem !important; }

.margin-bottom-4 {
  margin-bottom: 4rem !important; }

.padding-top-4 {
  padding-top: 4rem !important; }

.padding-bottom-4 {
  padding-bottom: 4rem !important; }

.margin-top-6 {
  margin-top: 6rem !important; }

.margin-bottom-6 {
  margin-bottom: 6rem !important; }

.padding-top-6 {
  padding-top: 6rem !important; }

.padding-bottom-6 {
  padding-bottom: 6rem !important; }

.margin-top-8 {
  margin-top: 8rem !important; }

.margin-bottom-8 {
  margin-bottom: 8rem !important; }

.padding-top-8 {
  padding-top: 8rem !important; }

.padding-bottom-8 {
  padding-bottom: 8rem !important; }

.margin-top-10 {
  margin-top: 10rem !important; }

.margin-bottom-10 {
  margin-bottom: 10rem !important; }

.padding-top-10 {
  padding-top: 10rem !important; }

.padding-bottom-10 {
  padding-bottom: 10rem !important; }

/*******************
***** BUTTONS ******
*******************/
.wp-block-buttons .wp-block-button {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
  font-weight: bold;
  border-radius: 0;
  margin-right: 1rem; }
  @media only screen and (max-width: 739px) {
    .wp-block-buttons .wp-block-button {
      margin: 0 0 1rem;
      display: block; } }
  .wp-block-buttons .wp-block-button:hover .wp-block-button__link {
    text-decoration: underline; }

.wp-block-buttons .wp-block-button:last-of-type {
  margin-right: 0; }

.wp-block-buttons .wp-block-button__link {
  border-radius: 0;
  background-color: #58E9A6;
  color: #FFFFFF;
  padding: 1.25rem 2.5rem 1rem 2.5rem; }
  @media only screen and (max-width: 739px) {
    .wp-block-buttons .wp-block-button__link {
      display: block; } }
.wp-block-buttons .wp-block-button:not(.is-style-outline) .wp-block-button__link.has-background {
  border: none; }

/**********************
****** SEPARATOR ******
**********************/
.wp-block-separator {
  border-color: #58E9A6; }

/*******************
***** COLUMNS ******
*******************/
.wp-block-columns {
  margin-bottom: 0; }

.wp-block-image {
  margin-bottom: 0; }

@media only screen and (max-width: 599px) {
  .wp-block-columns.is-mobile-reverse {
    flex-direction: column-reverse; } }

/************************
****** COVER/GROUP ******
************************/
.wp-block-cover,
.wp-block-cover.has-background,
.wp-block-group,
.wp-block-group.has-background {
  margin-top: 5rem;
  margin-bottom: 5rem;
  padding: 3rem 5rem; }
  @media only screen and (max-width: 739px) {
    .wp-block-cover,
    .wp-block-cover.has-background,
    .wp-block-group,
    .wp-block-group.has-background {
      margin-top: 3rem;
      margin-bottom: 3rem;
      padding: 2rem 2.2rem;
      padding: calc( 2rem + 1.0416666666666667vw); } }
/*******************
***** GALLERY ******
*******************/
.wp-block-gallery {
  margin-left: 0; }

/*******************
****** HELPER ******
*******************/
.is-style-centered {
  text-align: center; }

header {
  background: #000000; }
  header #logo_menu_holder {
    position: relative;
    width: 100%;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center; }
    @media only screen and (max-width: 979px) {
      header #logo_menu_holder {
        flex-wrap: wrap; } }
  header #logo {
    width: 25rem;
    max-width: 50%;
    padding: 3rem 0; }
    @media only screen and (max-width: 739px) {
      header #logo {
        padding: 1.9rem 0 1.1rem; } }
  header #menu_handle {
    display: none;
    position: relative;
    font-family: "Comfortaa", Helvetica, Arial, sans-serif;
    font-weight: bold;
    line-height: 1;
    padding: 1.5rem 1.75rem 1.25rem 5rem;
    border-radius: 5px;
    background-color: #FFFFFF;
    color: #000000;
    cursor: pointer;
    transition: 0.33s ease background-color; }
    @media only screen and (max-width: 979px) {
      header #menu_handle {
        display: block; } }
    header #menu_handle::after {
      content: "";
      position: absolute;
      left: 2rem;
      top: calc( 50% - 0.5px);
      width: 1.75rem;
      height: 2px;
      transition: transform 0.66s ease;
      background: #000000;
      box-shadow: 0 -6px 0 #000000, 0 6px 0 #000000; }
  @media only screen and (max-width: 979px) {
    header #menu_holder {
      display: none;
      width: 100%; } }
  header ul {
    list-style: none;
    padding: 0;
    margin: 0;
    line-height: 1;
    display: flex; }
    @media only screen and (max-width: 979px) {
      header ul {
        flex-basis: 100%;
        flex-direction: column; } }
  header li {
    margin: 0;
    position: relative; }
    @media only screen and (max-width: 979px) {
      header li {
        margin: 0 0 1rem;
        background: rgba(255, 255, 255, 0.1);
        text-align: center; } }
    header li a {
      display: inline-block;
      position: relative;
      font-family: "Open Sans", Helvetica, Arial, sans-serif;
      font-weight: bold;
      text-align: center;
      text-decoration: none;
      text-transform: uppercase;
      padding: 1.75rem 2.5rem 1.5rem 2.5rem;
      color: #FFFFFF;
      transition: 0.33s ease color; }
      header li a::before, header li a::after {
        position: absolute;
        color: #58E9A6;
        opacity: 0;
        transition: 0.33s ease left, 0.33s ease right, 0.33s ease opacity; }
      header li a::before {
        content: "[";
        left: 0; }
      header li a::after {
        content: "]";
        right: 0; }
      header li a:hover {
        color: #58E9A6;
        text-decoration: underline; }
        header li a:hover::before {
          left: 1rem;
          opacity: 1; }
        header li a:hover::after {
          right: 1rem;
          opacity: 1; }
  header li.current-menu-item a {
    color: #58E9A6; }
    header li.current-menu-item a::before {
      left: 1rem;
      opacity: 1; }
    header li.current-menu-item a::after {
      right: 1rem;
      opacity: 1; }

footer {
  margin-top: 10rem;
  background: #000000;
  color: #FFFFFF; }
  footer .footer_menu_container {
    text-align: center;
    padding: 3rem 0; }
    footer .footer_menu_container ul {
      list-style: none;
      margin: 0;
      padding: 0; }
      footer .footer_menu_container ul li {
        display: inline-block;
        margin: 0;
        text-transform: uppercase;
        color: #FFFFFF;
        font-size: smaller; }
        footer .footer_menu_container ul li:not(:last-of-type) {
          margin-right: 1rem; }
        footer .footer_menu_container ul li:not(:last-of-type)::after {
          padding-left: 1rem;
          content: " | "; }
