/*!
 * Theme Name: PYR1T3
 * Theme URI: https://keithrodri.co/
 * Description: KR Lite Theme
 * Version: 0.1
 * Author: Keith Rodri
 * Author URI: https://keithrodri.co/
 * Tags: HTML5, CSS3, starter, framework
 *
 */
*,
*:after,
*:before {
  box-sizing: border-box;
}

html, body, div, span, .rates-block td, .nf-error-msg, input, textarea, label, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, .blog-block p a, .blog-block .em-item-desc a, .em-item-desc, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  text-decoration: none;
  box-sizing: border-box;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

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

*:focus {
  outline: none;
}

/**
 * modules/mixins
 * ---
 */
@font-face {
  font-family: "Montserrat";
  src: url("fonts/Montserrat-Bold.woff");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("fonts/Montserrat-Medium.woff");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Montserrat";
  src: url("fonts/Montserrat-Regular.woff");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "Kanit";
  src: url("fonts/Kanit-Medium.woff");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "Kanit";
  src: url("fonts/Kanit-SemiBold.woff");
  font-weight: 700;
  font-style: normal;
}
body {
  color: #2c4431;
}

a {
  color: #296d57;
}
a:hover {
  color: #296d57;
}

.btn-1, input[type=submit],
.btn-primary,
.nav-style-1 ul.header-cta-mobile li a,
.nav-style-2 ul.header-cta-mobile li a,
.nav-style-1 .nav-cta ul li a,
.nav-style-2 .nav-cta ul li a {
  color: #296d57;
  background-color: #f5f4f0;
  border: 2px solid #296d57;
}
.btn-1:hover, input[type=submit]:hover,
.btn-primary:hover,
.nav-style-1 ul.header-cta-mobile li a:hover,
.nav-style-2 ul.header-cta-mobile li a:hover,
.nav-style-1 .nav-cta ul li a:hover,
.nav-style-2 .nav-cta ul li a:hover {
  color: #f5f4f0;
  background-color: #296d57;
  border-color: #296d57;
}

.btn-2,
.btn-secondary,
.nav-style-1 ul.header-cta-mobile li:nth-of-type(odd) a,
.nav-style-2 ul.header-cta-mobile li:nth-of-type(odd) a,
.nav-style-1 .nav-cta ul li:nth-of-type(odd) a,
.nav-style-2 .nav-cta ul li:nth-of-type(odd) a {
  color: #296d57;
  background-color: #f5f4f0;
  border: 2px solid #296d57;
}
.btn-2:hover,
.btn-secondary:hover,
.nav-style-1 ul.header-cta-mobile li:nth-of-type(odd) a:hover,
.nav-style-2 ul.header-cta-mobile li:nth-of-type(odd) a:hover,
.nav-style-1 .nav-cta ul li:nth-of-type(odd) a:hover,
.nav-style-2 .nav-cta ul li:nth-of-type(odd) a:hover {
  color: #f5f4f0;
  background-color: #296d57;
  border-color: #296d57;
}

.btn-alt-color .btn-1, .btn-alt-color input[type=submit],
.btn-alt-color .btn-primary,
.btn-alt-color .nav-style-1 ul.header-cta-mobile li a,
.nav-style-1 ul.header-cta-mobile li .btn-alt-color a,
.btn-alt-color .nav-style-2 ul.header-cta-mobile li a,
.nav-style-2 ul.header-cta-mobile li .btn-alt-color a,
.btn-alt-color .nav-style-1 .nav-cta ul li a,
.nav-style-1 .nav-cta ul li .btn-alt-color a,
.btn-alt-color .nav-style-2 .nav-cta ul li a,
.nav-style-2 .nav-cta ul li .btn-alt-color a {
  background-color: #2c4431;
  border: 2px solid #2c4431;
  color: #ffffff;
}
.btn-alt-color .btn-1:hover, .btn-alt-color input[type=submit]:hover,
.btn-alt-color .btn-primary:hover,
.btn-alt-color .nav-style-1 ul.header-cta-mobile li a:hover,
.nav-style-1 ul.header-cta-mobile li .btn-alt-color a:hover,
.btn-alt-color .nav-style-2 ul.header-cta-mobile li a:hover,
.nav-style-2 ul.header-cta-mobile li .btn-alt-color a:hover,
.btn-alt-color .nav-style-1 .nav-cta ul li a:hover,
.nav-style-1 .nav-cta ul li .btn-alt-color a:hover,
.btn-alt-color .nav-style-2 .nav-cta ul li a:hover,
.nav-style-2 .nav-cta ul li .btn-alt-color a:hover {
  background-color: #296d57;
  border: 2px solid #296d57;
}
.btn-alt-color .btn-2,
.btn-alt-color .btn-secondary,
.btn-alt-color .nav-style-1 ul.header-cta-mobile li:nth-of-type(odd) a,
.nav-style-1 ul.header-cta-mobile li:nth-of-type(odd) .btn-alt-color a,
.btn-alt-color .nav-style-2 ul.header-cta-mobile li:nth-of-type(odd) a,
.nav-style-2 ul.header-cta-mobile li:nth-of-type(odd) .btn-alt-color a,
.btn-alt-color .nav-style-1 .nav-cta ul li:nth-of-type(odd) a,
.nav-style-1 .nav-cta ul li:nth-of-type(odd) .btn-alt-color a,
.btn-alt-color .nav-style-2 .nav-cta ul li:nth-of-type(odd) a,
.nav-style-2 .nav-cta ul li:nth-of-type(odd) .btn-alt-color a {
  background-color: transparent;
  color: #2c4431;
  border: 2px solid #2c4431;
}
.btn-alt-color .btn-2:hover,
.btn-alt-color .btn-secondary:hover,
.btn-alt-color .nav-style-1 ul.header-cta-mobile li:nth-of-type(odd) a:hover,
.nav-style-1 ul.header-cta-mobile li:nth-of-type(odd) .btn-alt-color a:hover,
.btn-alt-color .nav-style-2 ul.header-cta-mobile li:nth-of-type(odd) a:hover,
.nav-style-2 ul.header-cta-mobile li:nth-of-type(odd) .btn-alt-color a:hover,
.btn-alt-color .nav-style-1 .nav-cta ul li:nth-of-type(odd) a:hover,
.nav-style-1 .nav-cta ul li:nth-of-type(odd) .btn-alt-color a:hover,
.btn-alt-color .nav-style-2 .nav-cta ul li:nth-of-type(odd) a:hover,
.nav-style-2 .nav-cta ul li:nth-of-type(odd) .btn-alt-color a:hover {
  color: #296d57;
  border: 2px solid #296d57;
}

a.btn.mobile-book-now, a.mobile-book-now.btn-2, a.mobile-book-now.btn-secondary, a.mobile-book-now.btn-1, a.mobile-book-now.btn-primary, .nav-style-1 ul.header-cta-mobile li a.mobile-book-now, .nav-style-2 ul.header-cta-mobile li a.mobile-book-now, .nav-style-1 .nav-cta ul li a.mobile-book-now,
.nav-style-2 .nav-cta ul li a.mobile-book-now {
  display: none;
  width: 100%;
  margin: 1rem auto;
}
@media (max-width: 700px) {
  a.btn.mobile-book-now, a.mobile-book-now.btn-2, a.mobile-book-now.btn-secondary, a.mobile-book-now.btn-1, a.mobile-book-now.btn-primary, .nav-style-1 ul.header-cta-mobile li a.mobile-book-now, .nav-style-2 ul.header-cta-mobile li a.mobile-book-now, .nav-style-1 .nav-cta ul li a.mobile-book-now,
  .nav-style-2 .nav-cta ul li a.mobile-book-now {
    display: block;
  }
}

.disabled_link {
  color: #296d57;
  opacity: 0.5 !important;
  text-decoration: underline;
}

html {
  font-size: 62.5%;
  -webkit-font-smoothing: antialiased;
}

body {
  font-family: "Montserrat", sans-serif;
  font-size: 1.4rem;
}

h1,
.h1,
h2,
.h2,
.has-placeholder .date span,
.has-placeholder .date .rates-block td,
.rates-block .has-placeholder .date td,
.has-placeholder .date .nf-error-msg,
.has-placeholder .date input,
.has-placeholder .date textarea,
.has-placeholder .date label,
h3,
.h3,
h4,
.h4,
.em-item-title,
h5,
.h5,
h6,
.h6,
.rates-block table.table-head tr:nth-child(1),
.em-event-location a,
.em-event-time,
.em-event-date {
  font-weight: 300;
  letter-spacing: 0rem;
  font-family: "Montserrat", sans-serif;
}

section .h1,
section .h2,
section .has-placeholder .date span,
section .has-placeholder .date .rates-block td,
.rates-block section .has-placeholder .date td,
section .has-placeholder .date .nf-error-msg,
section .has-placeholder .date input,
section .has-placeholder .date textarea,
section .has-placeholder .date label,
.has-placeholder .date section span,
.has-placeholder .date section .rates-block td,
.rates-block .has-placeholder .date section td,
.has-placeholder .date section .nf-error-msg,
.has-placeholder .date section input,
.has-placeholder .date section textarea,
.has-placeholder .date section label,
section .h3,
section .h4,
section .em-item-title,
section .h5,
section .h6,
section .rates-block table.table-head tr:nth-child(1),
.rates-block table.table-head section tr:nth-child(1),
section .em-event-location a,
.em-event-location section a,
section .em-event-time,
section .em-event-date {
  margin-bottom: 0;
}

h1,
.h1 {
  font-family: "Kanit", sans-serif;
  font-size: clamp(6rem, 1.4vw, 8rem);
  line-height: 110%;
  margin: 0 0 50px;
  font-weight: 700;
  text-transform: none;
  letter-spacing: 0rem;
}
@media (max-width: 900px) {
  h1,
  .h1 {
    font-size: clamp(3rem, 1.4vw, 5rem);
    margin: 0 0 25px;
  }
}
h2,
.h2,
.has-placeholder .date span,
.has-placeholder .date .rates-block td,
.rates-block .has-placeholder .date td,
.has-placeholder .date .nf-error-msg,
.has-placeholder .date input,
.has-placeholder .date textarea,
.has-placeholder .date label {
  font-family: "Kanit", sans-serif;
  font-size: 4.2rem;
  line-height: 120%;
  font-weight: 700;
}
@media (max-width: 900px) {
  h2,
  .h2,
  .has-placeholder .date span,
  .has-placeholder .date .rates-block td,
  .rates-block .has-placeholder .date td,
  .has-placeholder .date .nf-error-msg,
  .has-placeholder .date input,
  .has-placeholder .date textarea,
  .has-placeholder .date label {
    font-size: 4rem;
    line-height: 4.5rem;
  }
}

h3,
.h3 {
  font-family: "Kanit", sans-serif;
  font-size: clamp(2.8rem, 1.5vw, 3.6rem);
  line-height: 120%;
  font-weight: 500;
}
@media (max-width: 900px) {
  h3,
  .h3 {
    font-size: clamp(2rem, 1.6vw, 1rem);
  }
}
h4,
.h4,
.em-item-title {
  font-size: 1.8rem;
  line-height: 115%;
  font-weight: 700;
  letter-spacing: 0.05rem;
  text-transform: uppercase;
}
@media (max-width: 900px) {
  h4,
  .h4,
  .em-item-title {
    font-size: 1.4rem;
  }
}
@media (max-width: 700px) {
  h4,
  .h4,
  .em-item-title {
    font-size: 1.4rem;
  }
}

h5,
.h5 {
  font-size: 1.8rem;
  line-height: 120%;
  text-transform: none;
  font-weight: 500;
  letter-spacing: 0;
}
@media (max-width: 1300px) {
  h5,
  .h5 {
    font-size: 1.8rem;
  }
}
@media (max-width: 900px) {
  h5,
  .h5 {
    font-size: 1.6rem;
  }
}
@media (max-width: 700px) {
  h5,
  .h5 {
    font-size: 1.5rem;
  }
}

h6,
.h6,
.rates-block table.table-head tr:nth-child(1),
.em-event-location a,
.em-event-time,
.em-event-date {
  font-size: 1.4rem;
  line-height: 120%;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  font-weight: 700;
}

p, .blog-block p a, .blog-block .em-item-desc a, .em-item-desc,
.p,
span,
.rates-block td,
.nf-error-msg,
input,
textarea,
label {
  font-size: clamp(1.4rem, 0.75vw, 1.6rem);
  line-height: 140%;
  font-weight: 400;
}
@media (max-width: 1300px) {
  p, .blog-block p a, .blog-block .em-item-desc a, .em-item-desc,
  .p,
  span,
  .rates-block td,
  .nf-error-msg,
  input,
  textarea,
  label {
    font-size: clamp(1.4rem, 1.8vw, 1.6rem);
  }
}
@media (max-width: 700px) {
  p, .blog-block p a, .blog-block .em-item-desc a, .em-item-desc,
  .p,
  span,
  .rates-block td,
  .nf-error-msg,
  input,
  textarea,
  label {
    font-size: 1.4rem;
  }
}

p, .blog-block p a, .blog-block .em-item-desc a, .em-item-desc,
.p {
  margin-bottom: 20px;
}

span, .rates-block td, .nf-error-msg, input, textarea, label {
  margin-bottom: 0;
}

p.major, .blog-block p a.major, .blog-block .em-item-desc a.major, .accordion-container.flex-row p, .accordion-container.flex-row .blog-block p a, .blog-block p .accordion-container.flex-row a, .accordion-container.flex-row .blog-block .em-item-desc a, .blog-block .em-item-desc .accordion-container.flex-row a, .em-item-desc,
.p.major,
.accordion-container.flex-row .p.em-item-desc,
span.major,
.rates-block td.major,
.major.nf-error-msg,
input.major,
textarea.major,
label.major,
.accordion-container.flex-row span.em-item-desc,
.accordion-container.flex-row .rates-block td.em-item-desc,
.rates-block .accordion-container.flex-row td.em-item-desc,
.accordion-container.flex-row .em-item-desc.nf-error-msg,
.accordion-container.flex-row input.em-item-desc,
.accordion-container.flex-row textarea.em-item-desc,
.accordion-container.flex-row label.em-item-desc {
  font-family: "Montserrat", sans-serif;
  font-size: clamp(2.1rem, 1vw, 2.4rem);
  margin-bottom: 15px;
  font-weight: 500;
}
@media (max-width: 900px) {
  p.major, .blog-block p a.major, .blog-block .em-item-desc a.major, .accordion-container.flex-row p, .accordion-container.flex-row .blog-block p a, .blog-block p .accordion-container.flex-row a, .accordion-container.flex-row .blog-block .em-item-desc a, .blog-block .em-item-desc .accordion-container.flex-row a, .em-item-desc,
  .p.major,
  .accordion-container.flex-row .p.em-item-desc,
  span.major,
  .rates-block td.major,
  .major.nf-error-msg,
  input.major,
  textarea.major,
  label.major,
  .accordion-container.flex-row span.em-item-desc,
  .accordion-container.flex-row .rates-block td.em-item-desc,
  .rates-block .accordion-container.flex-row td.em-item-desc,
  .accordion-container.flex-row .em-item-desc.nf-error-msg,
  .accordion-container.flex-row input.em-item-desc,
  .accordion-container.flex-row textarea.em-item-desc,
  .accordion-container.flex-row label.em-item-desc {
    font-size: clamp(1.4rem, 1vw, 1.8rem);
  }
}

p.minor, .blog-block p a.minor, .blog-block .em-item-desc a.minor, .post-row p, .post-row .blog-block p a, .blog-block p .post-row a, .post-row .blog-block .em-item-desc a, .blog-block .em-item-desc .post-row a, .minor.em-item-desc, .post-row .em-item-desc,
span.minor,
.rates-block td.minor,
.rates-block .post-row td.em-item-desc,
.post-row .rates-block td.em-item-desc,
.nf-error-msg,
input.minor,
textarea.minor,
label.minor {
  font-size: 1.2rem;
}

p a, .blog-block p a a, .blog-block .em-item-desc a a, .em-item-desc a,
span a,
.rates-block td a,
.nf-error-msg a,
input a,
textarea a,
label a,
li a {
  font-weight: 700;
  text-decoration: underline;
  letter-spacing: 0.5px;
}
p a:hover, .em-item-desc a:hover,
span a:hover,
.rates-block td a:hover,
.nf-error-msg a:hover,
input a:hover,
textarea a:hover,
label a:hover,
li a:hover {
  color: #296d57;
}

strong {
  font-weight: 700;
}

li {
  font-size: 1.5rem;
  font-family: #2c4431;
  font-weight: 700;
  position: relative;
  letter-spacing: 0.5px;
  line-height: 2.3rem;
  margin-bottom: 25px;
}
@media (max-width: 700px) {
  li {
    font-size: 1.4rem;
    font-weight: 400;
  }
}

ul.bullets li {
  padding-left: 20px;
}
ul.bullets li::before {
  content: "";
  display: block;
  position: absolute;
  width: 7px;
  height: 7px;
  left: 0;
  top: 10px;
  transform: translateY(-50%);
  border-radius: 20px;
  background-color: #c7d8c3;
}
@media (max-width: 700px) {
  ul.bullets li {
    padding-left: 15px;
  }
  ul.bullets li::before {
    width: 6px;
    height: 6px;
    top: 12px;
    border: 1.5px solid #000;
  }
}

ul.bullets li::before {
  border-color: #296d57;
}

html {
  min-height: 100%;
  position: relative;
  overflow-x: hidden;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

body {
  background-color: #f5f4f0;
  margin: 0 auto;
  min-height: 100vh;
  position: relative;
}

.container {
  position: relative;
  display: block;
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin: 0 auto;
  width: 100%;
  max-width: 1700px;
  padding: 0 48px;
}
@media (max-width: 900px) {
  .container {
    padding: 0 36px;
  }
}
@media (max-width: 700px) {
  .container {
    padding: 0 24px;
  }
}

main {
  min-height: 75vh;
}

section {
  width: 100%;
  position: relative;
}

iframe {
  margin: 0 auto;
  display: block;
}

img {
  max-width: 100%;
}

*:focus {
  outline: none;
}

::selection {
  background-color: rgba(41, 109, 87, 0.3);
  color: #000000;
  text-shadow: none;
}

.underline {
  text-decoration: underline;
}

.imgMaskRevealUp {
  clip-path: polygon(0 0%, 100% 0%, 100% 0%, 0 0%); /* Initial state fully masks the image */
  overflow: hidden;
  position: relative;
}

.imgMaskRevealUp img {
  transform: scale(1.05);
}

.reveal-text-by-line .words {
  /* border: 1px solid red; */
}
.reveal-text-by-line .line {
  overflow: hidden;
  display: inline-block;
  vertical-align: top;
}
.reveal-text-by-line .word, .reveal-text-by-line .whitespace {
  display: inline-block;
}

.flex-col-rev {
  display: flex;
  flex-direction: column-reverse;
}

.flex-row-rev {
  display: flex;
  flex-direction: row-reverse;
}

.hide {
  font-size: 0;
  opacity: 0;
  pointer-events: none;
}

.hidden {
  display: none !important;
}

.no-wrap {
  flex-wrap: nowrap;
}

.grain-texture {
  position: absolute;
  display: block;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  margin: 0;
  background-image: url("img/grain.png");
  background-repeat: repeat;
  background-size: 130px;
  opacity: 0.2;
  z-index: 100;
  pointer-events: none;
}

.fw-img {
  width: 100%;
}

.ta-center, .error404 h2 {
  text-align: center;
}

.no-scroll {
  position: relative !important;
  overflow-y: hidden !important;
  height: 100vh !important;
}

:root {
  --br-scale: 0.15rem;
  --br-xs: var(--br-scale);
  --br-sm: calc(var(--br-scale) * 2);
  --br-md: calc(var(--br-scale) * 4);
  --br-lg: calc(var(--br-scale) * 10);
  --br-xl: calc(var(--br-scale) * 20);
}
@media (max-width: 600px) {
  :root {
    --br-md: calc(var(--br-scale) * 3);
    --br-lg: calc(var(--br-scale) * 4);
    --br-xl: calc(var(--br-scale) * 10);
  }
}

.test {
  border-radius: var(--br-xs);
  border-radius: var(--br-lg);
}

.mix-multiply {
  mix-blend-mode: multiply;
}

.mix-darken {
  mix-blend-mode: darken;
}

.mix-screen {
  mix-blend-mode: screen;
}

.mix-lighten {
  mix-blend-mode: lighten;
}

.mix-overlay {
  mix-blend-mode: overlay;
}

.mix-softlight {
  mix-blend-mode: soft-light;
}

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

.btn, .btn-2, .btn-secondary, .nav-style-1 ul.header-cta-mobile li:nth-of-type(odd) a, .nav-style-2 ul.header-cta-mobile li:nth-of-type(odd) a, .nav-style-1 .nav-cta ul li:nth-of-type(odd) a,
.nav-style-2 .nav-cta ul li:nth-of-type(odd) a, .btn-1, input[type=submit], .btn-primary, .nav-style-1 ul.header-cta-mobile li a, .nav-style-2 ul.header-cta-mobile li a, .nav-style-1 .nav-cta ul li a,
.nav-style-2 .nav-cta ul li a, a.btn, button.btn {
  position: relative;
  display: inline-block;
  margin: 0;
  text-align: center;
  transform: scale(1);
  transition: 300ms;
  transition-timing-function: ease-out;
  white-space: nowrap;
  line-height: 100%;
  font-size: 1.4rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border-radius: 5px !important;
  padding: 1.6rem 3rem;
  min-width: 130px;
}
@media (max-width: 1300px) {
  .btn, .btn-2, .btn-secondary, .nav-style-1 ul.header-cta-mobile li:nth-of-type(odd) a, .nav-style-2 ul.header-cta-mobile li:nth-of-type(odd) a, .nav-style-1 .nav-cta ul li:nth-of-type(odd) a,
  .nav-style-2 .nav-cta ul li:nth-of-type(odd) a, .btn-1, input[type=submit], .btn-primary, .nav-style-1 ul.header-cta-mobile li a, .nav-style-2 ul.header-cta-mobile li a, .nav-style-1 .nav-cta ul li a,
  .nav-style-2 .nav-cta ul li a, a.btn, button.btn {
    padding: 1rem 2rem;
    min-width: 120px;
  }
}
@media (max-width: 700px) {
  .btn, .btn-2, .btn-secondary, .nav-style-1 ul.header-cta-mobile li:nth-of-type(odd) a, .nav-style-2 ul.header-cta-mobile li:nth-of-type(odd) a, .nav-style-1 .nav-cta ul li:nth-of-type(odd) a,
  .nav-style-2 .nav-cta ul li:nth-of-type(odd) a, .btn-1, input[type=submit], .btn-primary, .nav-style-1 ul.header-cta-mobile li a, .nav-style-2 ul.header-cta-mobile li a, .nav-style-1 .nav-cta ul li a,
  .nav-style-2 .nav-cta ul li a, a.btn, button.btn {
    font-size: 1.1rem;
  }
}

.btn-minor, .nav-style-1 ul.header-cta-mobile li:nth-of-type(odd) a, .nav-style-2 ul.header-cta-mobile li:nth-of-type(odd) a, .nav-style-1 ul.header-cta-mobile li a, .nav-style-2 ul.header-cta-mobile li a, .nav-style-1 .nav-cta ul li:nth-of-type(odd) a,
.nav-style-2 .nav-cta ul li:nth-of-type(odd) a, .nav-style-1 .nav-cta ul li a,
.nav-style-2 .nav-cta ul li a {
  padding: 10px 15px;
  font-size: 1.2rem;
  min-width: 100px;
  font-weight: 700;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.btn-icon img {
  width: 17px;
  height: auto;
  margin-right: 20px;
  margin-left: -5px;
  margin-bottom: -3px;
}
.btn-icon:hover img {
  animation: gelatine 0.5s;
}

.btn-group {
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 20px;
}
@media (max-width: 700px) {
  .btn-group {
    flex-direction: column;
  }
}
@media (max-width: 900px) {
  .btn-group {
    flex-direction: row;
  }
}

.ta-center .btn-group, .error404 h2 .btn-group {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
@media (max-width: 700px) {
  .ta-center .btn-group, .error404 h2 .btn-group {
    flex-direction: column;
  }
}

.btn-close, .btn-close-toggle {
  width: 20px;
  height: 20px;
  font-size: 0;
  padding: 8px;
  position: relative;
  pointer-events: all;
  display: block;
  transition: 0ms;
}
.btn-close::before, .btn-close::after, .btn-close-toggle::before, .btn-close-toggle::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 1.5px;
  background-color: #296d57;
  transform-origin: center;
  transition: 100ms;
  margin: auto;
}
.btn-close::before, .btn-close-toggle::before {
  transform: rotate(45deg);
}
.btn-close::after, .btn-close-toggle::after {
  transform: rotate(-45deg);
}

.btn-close:hover {
  transform: rotate(90deg);
  transition: 300ms;
}
input[type=submit] {
  cursor: pointer;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.slick-slider {
  position: relative;
  width: 100%;
}
.slick-slider .slick-dots {
  display: flex;
  justify-content: center;
}
.slick-slider .slick-dots button {
  outline-width: 0 !important;
  transition: 300ms;
  border: 0px solid #fff;
  display: inline-block;
  width: 10px;
  height: 10px;
  font-size: 0;
  padding: 0;
  border-radius: 50%;
  background-color: transparent;
  border: 2px solid #2c4431;
  margin: 10px;
  margin-left: 0;
}
.slick-slider .slick-dots .slick-active button {
  background-color: #2c4431;
}
.slick-slider .slick-next, .slick-slider .slick-prev {
  position: absolute;
  top: 0px;
  bottom: 0px;
  font-size: 0;
  background: transparent;
  border: 0px solid transparent;
  transition: 300ms;
  background: center/contain no-repeat;
  width: 25px;
  height: 25px;
}
.slick-slider .slick-next {
  background-image: url("img/icons/arrow-right.svg");
  right: 0px;
}
.slick-slider .slick-prev {
  background-image: url("img/icons/arrow-left.svg");
  left: 0px;
}

.splide img {
  transform: scale(1.1);
  transition: 1400ms cubic-bezier(0.25, 1, 0.5, 1);
}
.splide .is-active img {
  transform: scale(1);
}
.splide.content-slider img {
  transform: scale(1.05);
  transition: 2000ms cubic-bezier(0.25, 1, 0.5, 1);
}
.splide.content-slider .is-active img {
  transform: scale(1);
}
.splide[data-pagination=true] {
  margin-bottom: 2rem;
}
.splide .splide__pagination {
  transform: translateY(200%);
}
.splide .splide__pagination li button {
  border: 1px solid #f5f4f0;
  opacity: 1;
  transform: scale(1);
  background-color: transparent;
  border: 1px solid #2c4431 !important;
  width: 10px;
  height: 10px;
}
.splide .splide__pagination li button.is-active {
  transform: scale(1);
  background-color: #2c4431;
}
.splide .splide__arrows {
  width: 100%;
}
.splide button.splide__arrow {
  border-radius: 0;
  background-color: #f5f4f0;
  opacity: 1;
  bottom: 0;
  top: auto;
  transform: translateY(0);
  width: 40px;
  height: 40px;
}
.splide button.splide__arrow svg {
  fill: #2c4431;
}
.splide .splide__arrow--prev {
  left: auto;
  right: 40px;
}
.splide .splide__arrow--next {
  left: auto;
  right: 0;
}

.flex-row-rev .splide__arrow--prev {
  left: 0;
  right: 40px;
}
.flex-row-rev .splide__arrow--next {
  left: 40px;
  right: auto;
}

html.lenis {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto;
}

.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}

.lenis.lenis-stopped {
  overflow: hidden;
}

.lenis.lenis-scrolling iframe {
  pointer-events: none;
}

section.event-list {
  margin: 60px auto;
}

.event-intro {
  display: flex;
  flex-direction: column;
  gap: 20px;
  margin: 0 auto 40px;
  text-align: center;
  max-width: 900px;
}

.em-view-container {
  position: relative;
  width: 100%;
}

.em-event.em-item {
  display: flex;
  flex-direction: row;
  gap: 10vw;
  align-items: center;
  border-bottom: 1px solid rgba(44, 68, 49, 0.2);
  padding: 40px 0;
}

.em-item-image {
  display: block;
  width: 25%;
  background-color: rgba(44, 68, 49, 0.2);
  min-width: 350px;
  min-height: 200px;
}
.em-item-image img {
  display: block;
  width: 100%;
  height: auto;
}

.has-placeholder {
  text-align: center;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  padding-bottom: 1.6rem;
}
.em-item-info {
  width: 100%;
  max-width: 850px;
}

.em-item-title {
  pointer-events: none;
}

.em-event-meta.em-item-meta {
  margin: 24px 0;
}

.em-event-time, .em-event-date {
  display: inline-block;
  margin-right: 10px;
}

.em-event-location a {
  display: block;
  pointer-events: none;
  color: rgba(44, 68, 49, 0.5);
  margin-top: 0.8rem;
}

.em-item-desc {
  margin-bottom: 0;
}

.em-item-read-more {
  display: none;
  pointer-events: none;
}

@media (max-width: 900px) {
  .em-item-image {
    min-width: 250px;
  }
  .em-event.em-item {
    align-items: flex-start;
    gap: 2.4rem;
  }
  .em-item-desc {
    font-size: clamp(1.4rem, 1vw, 1.8rem);
  }
}
@media (max-width: 700px) {
  .em-event.em-item {
    flex-direction: column;
  }
  .em-item-image {
    min-width: 100%;
  }
}
.splide__container {
  box-sizing: border-box;
  position: relative;
}

.splide__list {
  backface-visibility: hidden;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}

.splide__pagination {
  -ms-flex-align: center;
  align-items: center;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}

.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}

.splide:not(.is-overflow) .splide__pagination {
  display: none;
}

.splide__progress__bar {
  width: 0;
}

.splide {
  position: relative;
  visibility: hidden;
}

.splide.is-initialized, .splide.is-rendered {
  visibility: visible;
}

.splide__slide {
  backface-visibility: hidden;
  box-sizing: border-box;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  position: relative;
}

.splide__slide img {
  vertical-align: bottom;
}

.splide__spinner {
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}

.splide__sr {
  clip: rect(0 0 0 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.splide__toggle.is-active .splide__toggle__play, .splide__toggle__pause {
  display: none;
}

.splide__toggle.is-active .splide__toggle__pause {
  display: inline;
}

.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}

@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.splide__track--fade > .splide__list > .splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0;
}

.splide__track--fade > .splide__list > .splide__slide.is-active {
  opacity: 1;
  z-index: 1;
}

.splide--rtl {
  direction: rtl;
}

.splide__track--ttb > .splide__list {
  display: block;
}

.splide__arrow {
  -ms-flex-align: center;
  align-items: center;
  background: #ccc;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  display: -ms-flexbox;
  display: flex;
  height: 2em;
  -ms-flex-pack: center;
  justify-content: center;
  opacity: 0.7;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2em;
  z-index: 1;
}

.splide__arrow svg {
  fill: #000;
  height: 1.2em;
  width: 1.2em;
}

.splide__arrow:hover:not(:disabled) {
  opacity: 0.9;
}

.splide__arrow:disabled {
  opacity: 0.3;
}

.splide__arrow:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__arrow--prev {
  left: 1em;
}

.splide__arrow--prev svg {
  transform: scaleX(-1);
}

.splide__arrow--next {
  right: 1em;
}

.splide.is-focus-in .splide__arrow:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__pagination {
  bottom: 0.5em;
  left: 0;
  padding: 0 1em;
  position: absolute;
  right: 0;
  z-index: 1;
}

.splide__pagination__page {
  background: #ccc;
  border: 0;
  border-radius: 50%;
  display: inline-block;
  height: 8px;
  margin: 3px;
  opacity: 0.7;
  padding: 0;
  position: relative;
  transition: transform 0.2s linear;
  width: 8px;
}

.splide__pagination__page.is-active {
  background: #fff;
  transform: scale(1.4);
  z-index: 1;
}

.splide__pagination__page:hover {
  cursor: pointer;
  opacity: 0.9;
}

.splide__pagination__page:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide.is-focus-in .splide__pagination__page:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__progress__bar {
  background: #ccc;
  height: 3px;
}

.splide__slide {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.splide__slide:focus {
  outline: 0;
}

@supports (outline-offset: -3px) {
  .splide__slide:focus-visible {
    outline: 3px solid #0bf;
    outline-offset: -3px;
  }
}
@media screen and (-ms-high-contrast: none) {
  .splide__slide:focus-visible {
    border: 3px solid #0bf;
  }
}
@supports (outline-offset: -3px) {
  .splide.is-focus-in .splide__slide:focus {
    outline: 3px solid #0bf;
    outline-offset: -3px;
  }
}
@media screen and (-ms-high-contrast: none) {
  .splide.is-focus-in .splide__slide:focus {
    border: 3px solid #0bf;
  }
  .splide.is-focus-in .splide__track > .splide__list > .splide__slide:focus {
    border-color: #0bf;
  }
}
.splide__toggle {
  cursor: pointer;
}

.splide__toggle:focus-visible {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide.is-focus-in .splide__toggle:focus {
  outline: 3px solid #0bf;
  outline-offset: 3px;
}

.splide__track--nav > .splide__list > .splide__slide {
  border: 3px solid transparent;
  cursor: pointer;
}

.splide__track--nav > .splide__list > .splide__slide.is-active {
  border: 3px solid #000;
}

.splide__arrows--rtl .splide__arrow--prev {
  left: auto;
  right: 1em;
}

.splide__arrows--rtl .splide__arrow--prev svg {
  transform: scaleX(1);
}

.splide__arrows--rtl .splide__arrow--next {
  left: 1em;
  right: auto;
}

.splide__arrows--rtl .splide__arrow--next svg {
  transform: scaleX(-1);
}

.splide__arrows--ttb .splide__arrow {
  left: 50%;
  transform: translate(-50%);
}

.splide__arrows--ttb .splide__arrow--prev {
  top: 1em;
}

.splide__arrows--ttb .splide__arrow--prev svg {
  transform: rotate(-90deg);
}

.splide__arrows--ttb .splide__arrow--next {
  bottom: 1em;
  top: auto;
}

.splide__arrows--ttb .splide__arrow--next svg {
  transform: rotate(90deg);
}

.splide__pagination--ttb {
  bottom: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  left: auto;
  padding: 1em 0;
  right: 0.5em;
  top: 0;
}

.loader {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  background-color: #f5f4f0;
  z-index: 100;
  pointer-events: none;
  animation-duration: 1.5s;
  animation-delay: 500ms;
  animation-name: loader;
  animation-fill-mode: forwards;
  animation-timing-function: ease-out;
}

@keyframes loader {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.global-banner {
  width: 100%;
  padding: 15px 0;
  background-color: rgba(41, 109, 87, 0.2);
  transition: margin-top 300ms ease-out;
}
.global-banner .container {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  align-items: stretch;
  justify-content: flex-start;
  flex-wrap: nowrap;
  gap: 15px;
}
@media (max-width: 700px) {
  .global-banner .container {
    flex-direction: column;
  }
}
.global-banner .btn-close::before, .global-banner .btn-close::after {
  background-color: #2c4431 !important;
}

.global-message {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 800px;
  text-align: center;
  margin: 0 auto;
}
@media (max-width: 700px) {
  .global-message {
    flex-direction: column;
  }
}
.global-message span, .global-message .rates-block td, .rates-block .global-message td, .global-message .nf-error-msg, .global-message input, .global-message textarea, .global-message label {
  font-size: 1.4rem;
}
.global-message a {
  color: #2c4431;
}
.global-message em, .global-message strong, .global-message b, .global-message i {
  text-decoration: underline;
  transition: color 300ms;
}

@media (max-width: 700px) {
  .global-banner .container {
    flex-direction: row;
  }
}
/**
 * partials/header
 * ---
 */
.header {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  position: relative;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  margin: 40px auto;
  flex-basis: auto;
}
@media (max-width: 700px) {
  .header {
    flex-direction: column;
  }
}

.header-wrapper {
  z-index: 100;
  position: relative;
}

.logo {
  width: 100%;
  max-width: 280px;
}
.logo a {
  display: block;
}
.logo img {
  width: 100%;
  display: block;
  margin: 0 auto;
  min-width: 100px;
}

@media (max-width: 1300px) {
  .header {
    margin: 24px auto;
  }
}
@media (max-width: 1300px) {
  .header {
    flex-direction: column;
    gap: 25px;
    margin: 24px auto;
  }
  .logo {
    margin: 0;
    max-width: 300px;
  }
}
@media (max-width: 700px) {
  .logo {
    max-width: 200px;
  }
}
nav {
  flex-grow: 5;
}
nav ul {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 32px;
  width: 100%;
}
@media (max-width: 700px) {
  nav ul {
    flex-direction: column;
  }
}
nav li {
  margin-bottom: 0;
  line-height: 110%;
}
nav a {
  text-decoration: none;
  color: #2c4431;
  transition: 300ms;
  font-size: 1.8rem;
  line-height: 100%;
  padding: 5px 2px;
  text-transform: uppercase;
}
nav a:hover {
  color: #296d57;
}
@media (max-width: 1300px) {
  nav ul {
    gap: 20px;
  }
  nav a {
    font-size: 1.2rem;
  }
}

ul.header-cta,
ul.header-cta-mobile {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: 10px;
  justify-content: space-between;
}
ul.header-cta li,
ul.header-cta-mobile li {
  list-style: none !important;
  margin: 0 !important;
  line-height: normal;
}
ul.header-cta li a,
ul.header-cta-mobile li a {
  text-decoration: none;
}

.nav-count-1 nav.nav-desktop > ul > li > a,
.nav-count-2 nav.nav-desktop > ul > li > a,
.nav-count-3 nav.nav-desktop > ul > li > a {
  font-size: 2.2rem;
}

.nav-count-4 nav.nav-desktop > ul > li > a,
.nav-count-5 nav.nav-desktop > ul > li > a {
  font-size: 1.7rem;
}

.nav-count-6 nav.nav-desktop > ul > li > a,
.nav-count-7 nav.nav-desktop > ul > li > a,
.nav-count-8 nav.nav-desktop > ul > li > a {
  font-size: 1.6rem;
}

@media (max-width: 1300px) {
  .nav-count-6 nav.nav-desktop > ul > li > a,
  .nav-count-7 nav.nav-desktop > ul > li > a,
  .nav-count-8 nav.nav-desktop > ul > li > a {
    font-size: 1.4rem;
  }
}
.header-wrapper.primary-bg-color li.menu-item-has-children:hover > a,
.header-wrapper.secondary-bg-color li.menu-item-has-children:hover > a {
  color: #f5f4f0;
}
.header-wrapper.primary-bg-color li.menu-item-has-children > a::before,
.header-wrapper.secondary-bg-color li.menu-item-has-children > a::before {
  border-top-color: #f5f4f0;
}
.header-wrapper.primary-bg-color ul.sub-menu li a::before,
.header-wrapper.secondary-bg-color ul.sub-menu li a::before {
  background-color: #f5f4f0 !important;
}

.header-wrapper.primary-bg-color {
  background-color: #2c4431;
}
.header-wrapper.primary-bg-color nav a {
  color: #f5f4f0;
}
.header-wrapper.primary-bg-color.nav-style-1 ul.header-cta li a,
.header-wrapper.primary-bg-color.nav-style-1 ul.header-cta-mobile li a, .header-wrapper.primary-bg-color.nav-style-2 ul.header-cta li a,
.header-wrapper.primary-bg-color.nav-style-2 ul.header-cta-mobile li a {
  background-color: #f5f4f0;
  color: #2c4431;
}
.header-wrapper.primary-bg-color.nav-style-1 ul.header-cta li:nth-of-type(odd) a,
.header-wrapper.primary-bg-color.nav-style-1 ul.header-cta-mobile li:nth-of-type(odd) a, .header-wrapper.primary-bg-color.nav-style-2 ul.header-cta li:nth-of-type(odd) a,
.header-wrapper.primary-bg-color.nav-style-2 ul.header-cta-mobile li:nth-of-type(odd) a {
  background-color: transparent;
  color: #f5f4f0;
  border-color: #f5f4f0 !important;
}
.header-wrapper.primary-bg-color ul.sub-menu {
  background-color: #2c4431;
}

.header-wrapper.secondary-bg-color {
  background-color: #296d57;
}
.header-wrapper.secondary-bg-color nav a {
  color: #f5f4f0;
}
.header-wrapper.secondary-bg-color.nav-style-1 ul.header-cta li a,
.header-wrapper.secondary-bg-color.nav-style-1 ul.header-cta-mobile li a, .header-wrapper.secondary-bg-color.nav-style-2 ul.header-cta li a,
.header-wrapper.secondary-bg-color.nav-style-2 ul.header-cta-mobile li a {
  border-color: #f5f4f0;
  background-color: #f5f4f0;
  color: #296d57;
}
.header-wrapper.secondary-bg-color.nav-style-1 ul.header-cta li:nth-of-type(odd) a,
.header-wrapper.secondary-bg-color.nav-style-1 ul.header-cta-mobile li:nth-of-type(odd) a, .header-wrapper.secondary-bg-color.nav-style-2 ul.header-cta li:nth-of-type(odd) a,
.header-wrapper.secondary-bg-color.nav-style-2 ul.header-cta-mobile li:nth-of-type(odd) a {
  background-color: transparent;
  color: #f5f4f0;
}
.header-wrapper.secondary-bg-color ul.sub-menu {
  background-color: #296d57;
}

.nav-style-1 .nav-desktop {
  position: absolute;
  margin: 0 auto;
  left: 0;
  right: 0;
}

.nav-style-2 header {
  gap: 50px;
}
.nav-style-2 .nav-desktop ul {
  justify-content: flex-start;
}

.nav-style-1 .nav-cta ul,
.nav-style-2 .nav-cta ul {
  justify-content: flex-end;
  gap: 2.4rem;
}
@media (max-width: 1300px) {
  .nav-style-1 .nav-desktop {
    position: relative;
  }
}
.nav-style-3 header {
  gap: 5vw;
}
.nav-style-3 .logo {
  order: 1;
}
.nav-style-3 .nav-desktop {
  width: 100%;
  order: 0;
}
.nav-style-3 .nav-cta {
  width: 100%;
  order: 2;
}
.nav-style-3 .nav-desktop > ul,
.nav-style-3 .nav-cta > ul {
  gap: 20px;
  width: 100%;
  justify-content: space-between;
}
.nav-style-3 .nav-desktop > ul > li,
.nav-style-3 .nav-cta > ul > li {
  text-align: center;
}
.nav-style-3 .nav-desktop > ul > li > a,
.nav-style-3 .nav-cta > ul > li > a {
  font-size: 1.6rem !important;
}

.nav-style-3.nav-count-4 .nav-desktop > ul > li > a,
.nav-style-3.nav-count-4 .nav-cta > ul > li > a,
.nav-style-3.nav-count-5 .nav-desktop > ul > li > a,
.nav-style-3.nav-count-5 .nav-cta > ul > li > a {
  font-size: 1.4rem !important;
}

@media (max-width: 1300px) {
  .nav-style-3 .logo {
    order: 0;
  }
  .nav-style-3 .nav-desktop {
    width: 100%;
    order: 1;
  }
  .nav-style-3 .nav-cta {
    margin-top: -1.2rem !important;
  }
  .nav-style-3 ul {
    justify-content: center !important;
  }
}
@media (max-width: 700px) {
  .header-wrapper header {
    gap: 0;
  }
}
@keyframes bobbing {
  0%, 100% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(2px);
  }
}
li.menu-item-has-children {
  padding-right: 10px;
  position: relative;
}

li.menu-item-has-children > a::before {
  content: "";
  box-sizing: border-box;
  width: 0;
  height: 0;
  font-size: 0;
  border-left: 0.5rem solid transparent;
  border-right: 0.5rem solid transparent;
  border-top: 0.7rem solid #2c4431; /* Set the color of the triangle */
  display: block;
  position: absolute;
  right: -0.5rem;
  top: 0.2rem;
  top: 0.2rem !important;
}

li.menu-item-has-children:hover > a {
  color: inherit;
}

li.menu-item-has-children:hover > a::before {
  animation: bobbing 1.5s cubic-bezier(0.65, 0, 0.35, 1) infinite; /* Adjust the duration and timing function as needed */
}

/* Display dropdown when parent is hovered or focused */
li.menu-item-has-children:hover > ul,
li.menu-item-has-children:focus > ul {
  pointer-events: all;
  opacity: 1;
}

/* Style for dropdown */
ul.sub-menu {
  display: block;
  position: absolute;
  opacity: 0;
  pointer-events: none;
  transition: 300ms;
  top: 100%;
  left: 0;
  right: 0;
  margin: auto;
  width: calc(100% + 16px);
  min-width: 150px;
  background-color: rgba(245, 244, 240, 0.95); /* Set background color */
  padding: 0px;
  padding-top: 10px;
  z-index: 25;
}

/* Style for dropdown items */
ul.sub-menu li {
  text-align: left;
  padding-left: 16px;
}
@media (max-width: 700px) {
  ul.sub-menu li {
    padding-left: 0px;
  }
}

/* Optional: Style for links in the dropdown */
ul.sub-menu li a {
  line-height: 150% !important;
  font-size: 1.2rem !important;
  font-weight: 600;
  position: relative;
  display: block;
  padding: 4px 0;
}
ul.sub-menu li a::before {
  content: "";
  display: block;
  position: absolute;
  left: -8px;
  top: 1.2rem;
  width: 5px;
  height: 1.5px;
  background-color: #2c4431;
  letter-spacing: 2px;
  transition: 100ms;
}
ul.sub-menu li a:hover::before {
  width: 3px;
  height: 3px;
  border-radius: 100px;
  top: 1.1rem;
  left: -7px;
}

/* Optional: Style for hovered or focused dropdown items */
.nav-style-4 .nav, .nav-style-4 ul.header-cta, .nav-style-4 .nav-center {
  display: none;
}
.nav-style-4 .nav-btn {
  display: block;
}
.nav-style-4 .nav-mobile {
  display: block;
  opacity: 0;
}

.logo-mobile {
  margin: 40px auto;
}

.header-wrapper.primary-bg-color .nav-mobile {
  background-color: #2c4431;
}
.header-wrapper.primary-bg-color .nav-btn::before, .header-wrapper.primary-bg-color .nav-btn::after, .header-wrapper.primary-bg-color .nav-btn span, .header-wrapper.primary-bg-color .nav-btn .rates-block td, .rates-block .header-wrapper.primary-bg-color .nav-btn td, .header-wrapper.primary-bg-color .nav-btn .nf-error-msg, .header-wrapper.primary-bg-color .nav-btn input, .header-wrapper.primary-bg-color .nav-btn textarea, .header-wrapper.primary-bg-color .nav-btn label {
  background-color: #f5f4f0;
}

.header-wrapper.secondary-bg-color .nav-mobile {
  background-color: #296d57;
}
.header-wrapper.secondary-bg-color .nav-btn::before, .header-wrapper.secondary-bg-color .nav-btn::after, .header-wrapper.secondary-bg-color .nav-btn span, .header-wrapper.secondary-bg-color .nav-btn .rates-block td, .rates-block .header-wrapper.secondary-bg-color .nav-btn td, .header-wrapper.secondary-bg-color .nav-btn .nf-error-msg, .header-wrapper.secondary-bg-color .nav-btn input, .header-wrapper.secondary-bg-color .nav-btn textarea, .header-wrapper.secondary-bg-color .nav-btn label {
  background-color: #f5f4f0;
}

.nav-mobile {
  display: none;
  pointer-events: none;
  background-color: #ffffff;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: 500ms;
  z-index: 94;
}
.nav-mobile ul {
  margin-top: 80px;
  font-size: 3rem;
  transition: 300ms 300ms ease-out;
  opacity: 0;
  text-align: center;
  flex-direction: column;
  gap: 24px;
}
.nav-mobile li.current-page a {
  color: #296d57;
}
.nav-mobile a {
  font-size: 3vw !important;
}
.nav-mobile a.btn-1 {
  margin: 20px auto;
}

.nav-mobile.revealed {
  opacity: 1;
  pointer-events: all;
}
.nav-mobile.revealed ul {
  opacity: 1;
  transition: 0;
}

.nav-btn {
  position: absolute;
  top: 0px;
  bottom: 0;
  margin: 0;
  right: 0;
  display: none;
  width: 25px;
  height: 15px;
  background-color: transparent;
  z-index: 95;
  font-size: 0;
  border: 0;
  cursor: pointer;
}
.nav-btn::before, .nav-btn::after, .nav-btn span, .nav-btn .rates-block td, .rates-block .nav-btn td, .nav-btn .nf-error-msg, .nav-btn input, .nav-btn textarea, .nav-btn label {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  border-radius: 20px;
  background-color: #2c4431;
  transition: 300ms ease-out;
}
.nav-btn span, .nav-btn .rates-block td, .rates-block .nav-btn td, .nav-btn .nf-error-msg, .nav-btn input, .nav-btn textarea, .nav-btn label {
  display: block;
  top: 0;
  top: 50%;
  margin: auto;
  opacity: 1;
}
.nav-btn::before {
  top: 0px;
  transform-origin: top;
}
.nav-btn::after {
  top: 100%;
  transform-origin: bottom;
}
.nav-btn:focus {
  outline: none;
}

.nav-btn.close {
  cursor: pointer;
}
.nav-btn.close span, .nav-btn.close .rates-block td, .rates-block .nav-btn.close td, .nav-btn.close .nf-error-msg, .nav-btn.close input, .nav-btn.close textarea, .nav-btn.close label {
  opacity: 0;
}
.nav-btn.close::before {
  transform: rotate(45deg);
  top: 52%;
}
.nav-btn.close::after {
  top: 48%;
  transform: rotate(-45deg);
}

@media (max-width: 700px) {
  .nav, ul.header-cta, .nav-center {
    display: none;
  }
  .nav-btn {
    display: block;
  }
  .nav-mobile {
    display: block;
    opacity: 0;
  }
  .nav-mobile a {
    font-size: 1.8rem !important;
  }
}
@media (max-width: 700px) {
  .nav-style-1 ul.header-cta-mobile, .nav-style-2 ul.header-cta-mobile {
    margin-top: 48px;
  }
  .nav-style-3 ul.header-cta-mobile {
    margin-top: 24px;
  }
}
.nav-cta-mobile, .header-cta-mobile, .logo-mobile {
  z-index: 105;
  position: relative;
}

ul.header-cta-mobile {
  align-items: center;
}

.main-nav-mobile, .header-cta-mobile {
  transition: height 300ms;
}

.nav-mobile.revealed ul.sub-menu {
  position: relative;
  margin-top: 0;
  display: none;
  background-color: transparent;
  transition: height 300ms;
}
.nav-mobile.revealed ul.sub-menu li {
  text-align: center;
}
.nav-mobile.revealed ul.sub-menu li a::before {
  display: none;
}

/**
 * partials/sidebar
 * ---
 */
/**
 * partials/footer
 * ---
 */
.footer {
  margin-top: 100px;
}

footer.primary-bg-color {
  background-color: #2c4431;
}

footer.secondary-bg-color {
  background-color: #296d57;
}

footer.primary-bg-color .footer-main, footer.secondary-bg-color .footer-main {
  border-top: 2px solid #f5f4f0;
}
footer.primary-bg-color a, footer.primary-bg-color span, footer.primary-bg-color .rates-block td, .rates-block footer.primary-bg-color td, footer.primary-bg-color .nf-error-msg, footer.primary-bg-color input, footer.primary-bg-color textarea, footer.primary-bg-color label, footer.secondary-bg-color a, footer.secondary-bg-color span, footer.secondary-bg-color .rates-block td, .rates-block footer.secondary-bg-color td, footer.secondary-bg-color .nf-error-msg, footer.secondary-bg-color input, footer.secondary-bg-color textarea, footer.secondary-bg-color label {
  color: #f5f4f0;
}
footer.primary-bg-color a.social-svg svg path, footer.secondary-bg-color a.social-svg svg path {
  fill: #f5f4f0;
}

footer {
  position: relative;
  padding: 25px 0;
}
footer .footer-main {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: flex-start;
  justify-content: space-between;
  width: 100%;
  border-top: 2px solid #296d57;
  padding-top: 80px;
}
footer a, footer span, footer .rates-block td, .rates-block footer td, footer .nf-error-msg, footer input, footer textarea, footer label {
  font-size: 1.1rem;
  text-transform: uppercase;
  font-weight: 900;
  letter-spacing: 1px;
  line-height: 200%;
  display: block;
  position: relative;
  display: inline-block;
  color: #296d57;
}
footer a:hover {
  opacity: 0.8;
}
footer .contact-item {
  display: flex;
  flex-direction: row;
  gap: 5px;
}

.copyright {
  color: #2c4431;
}

.footer-logo {
  max-width: 100px;
  width: 100%;
}

.footer-contact a, .footer-nav a {
  display: block;
}

.footer-nav {
  width: 100%;
  text-align: center;
  margin: 20px auto 40px;
}
.footer-nav ul {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 20px;
}
.footer-nav ul li {
  margin-bottom: 0;
}
.footer-nav ul a {
  font-size: 1.6rem;
}

@media (max-width: 1300px) {
  .footer-nav ul a {
    font-size: 1.2rem;
  }
}
@media (max-width: 900px) {
  .footer-nav ul {
    max-width: 100vw;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 10px;
  }
  .footer-nav ul li {
    width: calc(33% - 10px);
    display: inline-block;
  }
  .footer-nav ul a {
    font-size: 1rem;
  }
}
@media (max-width: 700px) {
  .footer-nav ul li {
    width: calc(50% - 10px);
  }
}
.footer-social a {
  line-height: 100%;
}
.footer-social a:hover {
  transform: scale(1.1);
}

footer .contact-item {
  margin-bottom: 4px;
}

@media (max-width: 900px) {
  footer .container {
    flex-direction: column;
    align-items: flex-start;
  }
  footer .footer-logo {
    width: 130px;
    height: auto;
  }
  footer .footer-logo, footer .footer-address, footer .footer-contact, footer .footer-nav, footer .footer-social {
    margin-bottom: 20px;
  }
}
.social-links {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
@media (max-width: 700px) {
  .social-links {
    flex-direction: column;
  }
}

a.social-svg:hover {
  transform: scale(1.1);
}

a.social-svg img, .social-svg svg {
  height: 25px;
  width: auto;
}

a.social-svg svg path {
  fill: #296d57;
}

@media (max-width: 900px) {
  footer .footer-main {
    flex-direction: column;
    align-items: center;
  }
  footer .footer-main .footer-address, footer .footer-main .footer-contact {
    text-align: center;
  }
  footer .footer-main .contact-item {
    justify-content: center;
  }
  footer .footer-main .social-links {
    flex-direction: row;
    margin-top: 25px;
    justify-content: space-between;
    width: 100%;
  }
}
@media (max-width: 700px) {
  .footer {
    margin-top: 25px;
  }
}
.error404 {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (max-width: 700px) {
  .error404 {
    flex-direction: column;
  }
}
.error404 main {
  min-height: 60vh;
  overflow: hidden;
}
.error404 main, .error404 main .container {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (max-width: 700px) {
  .error404 main, .error404 main .container {
    flex-direction: column;
  }
}
.error404 h2 {
  margin: auto;
}
.error404 h2 a {
  color: #2c4431;
  text-decoration-thickness: 0.2rem;
  text-underline-offset: 0.6rem;
}

span.four-o-four, .rates-block td.four-o-four, .four-o-four.nf-error-msg, input.four-o-four, textarea.four-o-four, label.four-o-four {
  font-size: 60vw;
  position: absolute;
  opacity: 0.1;
  pointer-events: none;
  text-align: center;
  margin: 0;
  display: block;
  width: 100%;
  transform: translateY(-7vw);
  font-family: "Kanit", sans-serif;
  max-height: 60vw;
  z-index: -1;
}

/**
 * partials/print
 * ---
 * Print version
 * (from https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css)
 */
@media print {
  *,
  *:before,
  *:after {
    background: transparent !important;
    color: #000 !important; /* Black prints faster: h5bp.com/s */
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  a[href]:after {
    content: " (" attr(href) ")";
  }
  abbr[title]:after {
    content: " (" attr(title) ")";
  }
  /*
   * Don't show links that are fragment identifiers,
   * or use the `javascript:` pseudo protocol
   */
  a[href^="#"]:after,
  a[href^="javascript:"]:after {
    content: "";
  }
  pre,
  blockquote {
    border: 1px solid #999;
    page-break-inside: avoid;
  }
  thead {
    display: table-header-group; /* h5bp.com/t */
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  p, .blog-block p a, .blog-block .em-item-desc a, .em-item-desc,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}
.contact-drawer {
  position: fixed;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  top: 0;
  right: 0;
  width: 33vw;
  height: 100vh;
  background-color: #f5f4f0;
  border-left: 1px solid #2c4431;
  z-index: 100;
  padding: 3vh 2vw;
  padding-top: 10vh;
  transform: translateX(100%);
  transition: 800ms cubic-bezier(0.22, 1, 0.36, 1);
}
.contact-drawer .social-links {
  justify-content: flex-start !important;
}
.contact-drawer a {
  color: #296d57;
}
@media (max-width: 1300px) {
  .contact-drawer {
    width: 45vw;
  }
}
@media (max-width: 900px) {
  .contact-drawer {
    width: 100%;
    min-height: 100vh;
  }
}

.contact-drawer-close-wall {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(245, 244, 240, 0.3);
  z-index: 9;
  opacity: 0;
  backdrop-filter: blur(0px); /* Apply blur */
  transform: translateX(100%);
  transition: opacity 500ms, transform 500ms 500ms;
}

.contact-drawer.open {
  transform: translateX(0%);
}

.contact-drawer-close-wall.open {
  transform: translateX(0%);
  opacity: 1;
  transition: opacity 800ms cubic-bezier(0.22, 1, 0.36, 1), backdrop-filter 1000ms 100ms cubic-bezier(0.22, 1, 0.36, 1);
}

.contact-drawer .h3 {
  margin: 30px 0 30px;
  font-size: 2.2vw;
  padding-right: 3vw;
  font-weight: 700;
  align-content: space-between;
}
.contact-drawer p.minor, .contact-drawer .blog-block p a.minor, .blog-block p .contact-drawer a.minor, .contact-drawer .blog-block .em-item-desc a.minor, .blog-block .em-item-desc .contact-drawer a.minor, .contact-drawer .post-row p, .contact-drawer .post-row .blog-block p a, .blog-block p .contact-drawer .post-row a, .contact-drawer .post-row .blog-block .em-item-desc a, .blog-block .em-item-desc .contact-drawer .post-row a, .post-row .contact-drawer p, .post-row .contact-drawer .blog-block p a, .blog-block p .post-row .contact-drawer a, .post-row .contact-drawer .blog-block .em-item-desc a, .blog-block .em-item-desc .post-row .contact-drawer a, .contact-drawer p.nf-error-msg, .contact-drawer .blog-block p a.nf-error-msg, .blog-block p .contact-drawer a.nf-error-msg, .contact-drawer .blog-block .em-item-desc a.nf-error-msg, .blog-block .em-item-desc .contact-drawer a.nf-error-msg, .contact-drawer .minor.em-item-desc, .contact-drawer .post-row .em-item-desc, .post-row .contact-drawer .em-item-desc, .contact-drawer .em-item-desc.nf-error-msg {
  margin-bottom: 30px;
  max-width: 320px;
}
.contact-drawer .contact-footer svg {
  height: 25px;
  width: auto;
}
.contact-drawer .btn-close {
  position: absolute;
  right: 3vw;
  top: 20px;
}

.contact-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-content: space-between;
}
@media (max-width: 700px) {
  .contact-body {
    flex-direction: column;
  }
}

.contact-item {
  margin-bottom: 30px;
}

.contact-footer {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  width: 100%;
}
.contact-footer .social-links {
  flex-direction: row;
  align-items: center;
  justify-content: center;
}

@media (max-width: 900px) {
  .contact-drawer {
    padding-left: 2rem;
    padding-right: 2rem;
  }
  .contact-drawer .h3 {
    font-size: 3.5rem;
  }
  .contact-drawer p.minor, .contact-drawer .blog-block p a.minor, .blog-block p .contact-drawer a.minor, .contact-drawer .blog-block .em-item-desc a.minor, .blog-block .em-item-desc .contact-drawer a.minor, .contact-drawer .post-row p, .contact-drawer .post-row .blog-block p a, .blog-block p .contact-drawer .post-row a, .contact-drawer .post-row .blog-block .em-item-desc a, .blog-block .em-item-desc .contact-drawer .post-row a, .post-row .contact-drawer p, .post-row .contact-drawer .blog-block p a, .blog-block p .post-row .contact-drawer a, .post-row .contact-drawer .blog-block .em-item-desc a, .blog-block .em-item-desc .post-row .contact-drawer a, .contact-drawer p.nf-error-msg, .contact-drawer .blog-block p a.nf-error-msg, .blog-block p .contact-drawer a.nf-error-msg, .contact-drawer .blog-block .em-item-desc a.nf-error-msg, .blog-block .em-item-desc .contact-drawer a.nf-error-msg, .contact-drawer .minor.em-item-desc, .contact-drawer .post-row .em-item-desc, .post-row .contact-drawer .em-item-desc, .contact-drawer .em-item-desc.nf-error-msg {
    font-size: 2rem;
  }
  .contact-footer {
    padding-bottom: 12vh;
  }
}
@media (max-width: 700px) {
  .contact-drawer {
    justify-content: flex-start;
  }
  .contact-drawer img {
    width: 60px;
    height: 60px;
    margin-top: 10px;
    margin-bottom: -20px;
  }
  .contact-drawer .contact-footer svg {
    height: 35px;
    width: auto;
  }
  .contact-drawer .btn-close {
    width: 30px;
    height: 30px;
    right: 2rem;
  }
}
hr {
  border: 0px;
  border-bottom: 3px solid #296d57;
}

hr, .spacer {
  display: block;
  width: 100%;
  margin: 100px 0;
}
@media (max-width: 1300px) {
  hr, .spacer {
    margin: 50px 0;
  }
}
@media (max-width: 700px) {
  hr, .spacer {
    margin: 25px 0;
  }
}

hr.spacer-sm {
  border-bottom: 1px solid rgba(44, 68, 49, 0.25);
}

.spacer-lg {
  margin: 150px 0;
}
@media (max-width: 1300px) {
  .spacer-lg {
    margin: 100px 0;
  }
}
@media (max-width: 700px) {
  .spacer-lg {
    margin: 50px 0;
  }
}

.spacer-sm {
  margin: 50px 0;
}
@media (max-width: 1300px) {
  .spacer-sm {
    margin: 24px 0;
  }
}
@media (max-width: 700px) {
  .spacer-sm {
    margin: 18px 0;
  }
}

.subtract.spacer-sm {
  margin: -2.5rem 0 0;
}

.subtract {
  margin: -10rem 0 0;
}

.subtract.spacer-lg {
  margin: -35rem 0 0;
}

@media (max-width: 1300px) {
  .subtract.spacer-lg {
    margin: -25rem 0 0;
  }
}
@media (max-width: 900px) {
  .subtract.spacer-sm {
    margin: 3rem 0 0;
  }
  .subtract {
    margin: -5rem 0 0;
  }
  .subtract.spacer-lg {
    margin: -10rem 0 0;
  }
}
@media (max-width: 700px) {
  .subtract.spacer-sm {
    margin: 1rem 0 0;
  }
  .subtract {
    margin: -2rem 0 0;
  }
  .subtract.spacer-lg {
    margin: -8rem 0 0;
  }
}
.container-masthead {
  display: block;
  margin: 0 auto;
}

section.masthead {
  display: grid;
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden;
  grid-template-areas: "content";
  color: #296d57;
  margin: 0 auto;
}

.masthead-wrapper {
  grid-area: content;
  margin: 0 auto;
  padding: 75px;
  width: 100%;
  max-width: 1050px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 3.6rem;
  z-index: 1; /* To ensure it is above the image */
}

.masthead.no-media .masthead-wrapper.fw {
  max-width: 1700px;
  margin: auto;
  padding: 40px 48px;
}
@media (max-width: 900px) {
  .masthead.no-media .masthead-wrapper.fw {
    padding: 20px 36px;
  }
}
@media (max-width: 700px) {
  .masthead.no-media .masthead-wrapper.fw {
    padding: 20px 24px;
  }
}

.masthead.has-media {
  color: #2c4431;
}
.masthead.has-media img, .masthead.has-media video {
  grid-area: content;
  width: 100%;
  height: 100%;
  max-height: 120vh;
  object-fit: cover;
  z-index: 0; /* To ensure it is behind the content */
  animation-name: mastheadZoom-lg;
  animation-duration: 6s;
  animation-timing-function: cubic-bezier(0.22, 1, 0.36, 1);
  animation-fill-mode: forwards;
}
.masthead.has-media .h1, .masthead.has-media .h3 {
  pointer-events: none !important;
  z-index: -3;
}

@media (min-width: 2000px) {
  .masthead-wrapper {
    max-width: 1400px;
  }
}
@media (max-width: 900px) {
  .masthead.has-media img {
    animation-name: mastheadZoom-md;
  }
}
.masthead.fw {
  max-width: calc(1700px - 2 * 48px);
}

.masthead.no-text img {
  height: auto;
  min-height: auto;
}

@keyframes mastheadZoom-lg {
  0% {
    scale: 1;
  }
  100% {
    scale: 1.05;
  }
}
@keyframes mastheadZoom-md {
  0% {
    scale: 1.2;
  }
  100% {
    scale: 1.25;
  }
}
.masthead.ta-center h3, .error404 h2.masthead h3 {
  margin: 0 auto;
}

.masthead.alt-color.has-media .h1, .masthead.alt-color.has-media .h3 {
  color: #ffffff;
}

.masthead.alt-color .h1, .masthead.alt-color .h3 {
  color: #2c4431;
}

@media (max-width: 900px) {
  .masthead-wrapper {
    padding: 30px 15px;
  }
  .masthead.fw .masthead-wrapper {
    padding: 50px;
    padding-top: 10vh;
    padding-bottom: 10vh;
  }
  .masthead.has-media .masthead-wrapper {
    padding: 10vh 36px;
  }
}
@media (max-width: 700px) {
  .masthead:not(.has-img) {
    min-height: 10vh;
  }
  .masthead.has-image .masthead-wrapper {
    padding: 80px 36px;
  }
}
section.intro {
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: 900px;
  width: 100%;
  padding: 36px 0;
  margin: 0 auto;
  margin-top: 5rem;
  margin-bottom: 5rem;
  gap: 3.6rem;
  z-index: 3;
}
@media (max-width: 700px) {
  section.intro {
    flex-direction: column;
  }
}
@media (max-width: 700px) {
  section.intro {
    margin-top: 2.4rem;
    margin-bottom: 2.4rem;
  }
}
@media (max-width: 1300px) {
  section.intro {
    gap: 1.6rem;
  }
}
@media (max-width: 900px) {
  section.intro {
    padding-left: 36px;
    padding-right: 36px;
  }
}
@media (max-width: 700px) {
  section.intro {
    padding-left: 0;
    padding-right: 0;
    gap: 12px;
  }
}

section.intro.alt-color {
  color: #296d57;
}

section.intro img {
  width: 100%;
}
@media (max-width: 700px) {
  section.intro img {
    transform: scale(0.8);
  }
}

section.intro.ta-center img {
  margin: 0 auto;
}

.card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  justify-content: flex-start;
  gap: 1.6rem;
  width: 100%;
}
@media (max-width: 700px) {
  .card {
    flex-direction: column;
  }
}
.card .btn-group {
  margin-top: auto;
  margin-left: 0;
}
.card p:nth-last-of-type(1), .card .blog-block p a:nth-last-of-type(1), .blog-block p .card a:nth-last-of-type(1), .card .blog-block .em-item-desc a:nth-last-of-type(1), .blog-block .em-item-desc .card a:nth-last-of-type(1), .card .em-item-desc:nth-last-of-type(1) {
  margin-bottom: 0px;
}
.card .img-mask {
  margin-bottom: 20px;
}
.card li {
  margin-bottom: 0;
}
@media (max-width: 900px) {
  .card {
    margin-bottom: 30px;
  }
  .card .img-mask {
    margin-bottom: 10px;
  }
}
@media (max-width: 700px) {
  .card .img-mask {
    max-width: 500px;
    margin: auto;
    margin-bottom: 20px;
  }
}

section.card-flex-row {
  flex-wrap: nowrap;
  justify-content: space-between;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  overflow: visible;
  margin: 50px auto 100px;
}
@media (max-width: 700px) {
  section.card-flex-row {
    flex-direction: column;
  }
}
section.card-flex-row div {
  width: 100%;
}
section.card-flex-row img {
  width: 100%;
  display: block;
}

section.card-flex-row.ta-center .btn-group {
  margin-left: auto;
  margin-right: auto;
}

section.card-flex-row.stretch {
  align-items: stretch;
}

section.card-flex-row.no-wrap {
  margin: 15px auto;
  flex-wrap: nowrap !important;
  flex-direction: row !important;
}

section.card-flex-row .card:nth-last-of-type(1) {
  /* margin-bottom: 0 !important; */
}

section.card-flex-row.card-total-1 div {
  max-width: 700px;
}

section.card-flex-row.card-total-2 {
  gap: 4.8rem;
}

section.card-flex-row.card-total-3 {
  gap: 3.6rem;
}

section.card-flex-row.card-total-4 {
  gap: 2.4rem;
}

@media (max-width: 1200px) {
  section.card-flex-row.card-total-4 {
    flex-wrap: wrap;
    margin-bottom: 50px;
    gap: 4.8rem;
  }
  section.card-flex-row.card-total-4.no-wrap {
    gap: 2.4rem;
  }
  section.card-flex-row.card-total-4 .card {
    width: calc(50% - 24px);
    margin-bottom: 50px;
  }
}
@media (max-width: 900px) {
  section.card-flex-row {
    margin-bottom: 50px;
  }
  section.card-flex-row .card {
    max-width: 400px;
  }
  section.card-flex-row.card-total-4.no-wrap {
    gap: 1.6rem;
  }
}
@media (max-width: 700px) {
  section.card-flex-row {
    margin-bottom: 20px;
  }
  section.card-flex-row .card {
    /* max-width: 500px; */
    margin-left: auto;
    margin-right: auto;
  }
  section.card-flex-row.no-wrap {
    gap: 1.6rem;
  }
  section.card-flex-row.card-total-1 .card {
    max-width: 500px;
  }
  section.card-flex-row.card-total-4 .card {
    max-width: 400px;
    width: 100% !important;
    /* margin-bottom: 0px !important; */
  }
}
section.feature-repeater {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  margin: 0 auto;
  gap: 120px;
}
@media (max-width: 700px) {
  section.feature-repeater {
    flex-direction: column;
  }
}

section.feature-repeater .feature-block:nth-last-of-type(odd) {
  flex-direction: row-reverse;
  align-self: flex-end;
}

.feature-block {
  width: 100%;
  gap: 7vw;
  max-width: 1300px;
  margin: auto;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}
@media (max-width: 700px) {
  .feature-block {
    flex-direction: column;
  }
}
.feature-block .ft-img,
.feature-block .ft-body {
  width: 90%;
  flex-grow: 1;
}
.feature-block .h3 {
  margin-bottom: 1rem;
}
.feature-block .ft-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 20px;
}
@media (max-width: 700px) {
  .feature-block .ft-body {
    flex-direction: column;
  }
}
.feature-block .ft-img {
  width: 110%;
  max-width: 600px;
}
.feature-block .ft-img img {
  width: 100%;
  height: auto;
  display: block;
  margin-left: auto;
}
.feature-block li {
  text-transform: uppercase;
  font-size: 1.6rem;
}

.feature-block.flex-row-rev {
  flex-direction: row-reverse;
}

.feature-block:nth-last-of-type(odd).flex-row-rev {
  flex-direction: row;
}

.feature-block.landscape .ft-img {
  width: 130%;
}
.feature-block.landscape .ft-img img {
  max-width: 900px;
}
.feature-block.landscape .ft-body {
  width: 100%;
}
.feature-block.landscape .ft-head {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.feature-block.landscape .ft-head.flex-col-rev {
  flex-direction: column-reverse;
}

@media (max-width: 900px) {
  section.feature-repeater {
    gap: 7.8rem;
  }
}
@media (min-width: 2000px) {
  .feature-block.landscape {
    max-width: none;
  }
}
@media (max-width: 900px) {
  .feature-block {
    flex-direction: column !important;
    align-items: center;
    max-width: 500px;
    gap: 20px;
    margin-left: auto;
    margin-right: auto;
  }
  .feature-block .ft-body,
  .feature-block .ft-img {
    width: 100%;
  }
}
.icon-row {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
  justify-content: center;
  gap: 20px;
  max-width: 100%;
  margin: 75px auto;
}
@media (max-width: 900px) {
  .icon-row {
    margin: 36px auto;
  }
}
@media (max-width: 700px) {
  .icon-row {
    flex-wrap: wrap;
  }
}

.icon-row.no-margin {
  margin-bottom: 0;
}

.icon-row.no-wrap {
  flex-wrap: nowrap;
}

.icon-row + .icon-row {
  margin-top: 0;
}

.icon-group {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  gap: 12px;
  text-align: center;
}
@media (max-width: 700px) {
  .icon-group {
    flex-direction: column;
  }
}
.icon-group img {
  width: 28px;
  height: auto;
}
@media (max-width: 900px) {
  .icon-group {
    margin-bottom: 20px;
  }
}
@media (max-width: 700px) {
  .icon-group {
    gap: 12px;
    width: calc(50% - 12px);
  }
}
.icon-group a {
  color: #2c4431;
  display: block;
  width: 100%;
}
.icon-group a:hover {
  opacity: 0.75;
}

.icon-group.major img, .accordion-container.flex-row p.icon-group img, .accordion-container.flex-row .blog-block p a.icon-group img, .blog-block p .accordion-container.flex-row a.icon-group img, .accordion-container.flex-row .blog-block .em-item-desc a.icon-group img, .blog-block .em-item-desc .accordion-container.flex-row a.icon-group img, .icon-group.em-item-desc img {
  width: 100%;
  max-width: 100px;
}
@media (max-width: 900px) {
  .icon-group.major img, .accordion-container.flex-row p.icon-group img, .accordion-container.flex-row .blog-block p a.icon-group img, .blog-block p .accordion-container.flex-row a.icon-group img, .accordion-container.flex-row .blog-block .em-item-desc a.icon-group img, .blog-block .em-item-desc .accordion-container.flex-row a.icon-group img, .icon-group.em-item-desc img {
    width: 40%;
  }
}

@media (max-width: 700px) {
  .icon-group.empty {
    display: none;
  }
}
section.marquee {
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
  padding: 20px 0;
  background-color: transparent;
}

section.marquee.color-reverse {
  background-color: #2c4431;
  color: #f5f4f0;
}

section.marquee.color-alt {
  color: #296d57;
  background-color: transparent;
}

section.marquee.color-alt.color-reverse {
  background-color: #296d57;
  color: #f5f4f0;
}

.marquee-content {
  display: inline-block;
}

.accordion-group {
  overflow: auto;
}

.accordion-target {
  cursor: pointer;
}

.accordion-child {
  display: none;
}

.accordion-active-start .accordion-child {
  display: block;
}

.accordion-container {
  max-width: 900px;
  width: 100%;
  margin: 50px auto;
  display: block;
  border: 2px solid #2c4431;
}

.accordion-group {
  border-bottom: 0;
  position: relative;
  margin-bottom: 2px;
}

.accordion-group:nth-of-type(1) .accordion-target {
  border-top: 0px solid;
}

.accordion-group:nth-last-of-type(1) {
  margin-bottom: 0 !important;
}

.accordion-target {
  border-top: 2px solid #2c4431;
  background-color: #2c4431;
  color: #f5f4f0;
  position: relative;
  overflow: auto;
  padding: 1vw 2vw;
  padding-right: 8vw;
}
.accordion-target .btn-close-toggle {
  position: absolute;
  right: 3vw;
  transform: rotate(45deg);
  transition: 0ms;
  top: calc(50% - 10px);
}
.accordion-target .btn-close-toggle::before, .accordion-target .btn-close-toggle::after {
  background-color: #f5f4f0;
}

.accordion-target:hover {
  background-color: rgba(44, 68, 49, 0.9);
}
.accordion-target:hover .btn-close-toggle {
  transform: rotate(135deg);
  transition: 500ms;
}

.accordion-child {
  padding: 2vw;
  padding-top: 50px;
}
.accordion-child p, .accordion-child .blog-block p a, .blog-block p .accordion-child a, .accordion-child .blog-block .em-item-desc a, .blog-block .em-item-desc .accordion-child a, .accordion-child .em-item-desc, .accordion-child span, .accordion-child .rates-block td, .rates-block .accordion-child td, .accordion-child .nf-error-msg, .accordion-child input, .accordion-child textarea, .accordion-child label, .accordion-child li, .accordion-child strong, .accordion-child em {
  opacity: 0.5;
  transition: opacity 700ms;
}

.accordion-active .accordion-child p, .accordion-active .accordion-child .blog-block p a, .blog-block p .accordion-active .accordion-child a, .accordion-active .accordion-child .blog-block .em-item-desc a, .blog-block .em-item-desc .accordion-active .accordion-child a, .accordion-active .accordion-child .em-item-desc, .accordion-active .accordion-child span, .accordion-active .accordion-child .rates-block td, .rates-block .accordion-active .accordion-child td, .accordion-active .accordion-child .nf-error-msg, .accordion-active .accordion-child input, .accordion-active .accordion-child textarea, .accordion-active .accordion-child label, .accordion-active .accordion-child li, .accordion-active .accordion-child strong, .accordion-active .accordion-child em {
  opacity: 1;
  transition: opacity 500ms;
  transition: 0ms;
}
.accordion-active .btn-close-toggle {
  transform: rotate(-45deg);
  transition: 0ms;
}
.accordion-active .btn-close-toggle::after {
  width: 0%;
  transition: 100ms;
}
.accordion-active .accordion-target:hover .btn-close-toggle {
  transform: rotate(135deg);
  transition: 500ms;
}

@media (max-width: 900px) {
  .accordion-child {
    padding-top: 24px;
  }
}
@media (max-width: 700px) {
  .accordion-target {
    padding-top: 16px;
    padding-bottom: 16px;
  }
  .accordion-target .btn-close-toggle {
    top: 16px !important;
  }
}
.accordion-container.flex-row {
  max-width: 100%;
}
.accordion-container.flex-row .flex-content {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 6.2rem;
  padding-bottom: 15px;
}
@media (max-width: 700px) {
  .accordion-container.flex-row .flex-content {
    flex-direction: column;
  }
}
.accordion-container.flex-row .flex-content > * {
  flex: 1 1 0px;
}
.accordion-container.flex-row .bullets li {
  margin-left: 2px;
}

@media (max-width: 900px) {
  .accordion-container.flex-row .flex-content {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 3.6rem;
  }
}
@media (max-width: 900px) and (max-width: 700px) {
  .accordion-container.flex-row .flex-content {
    flex-direction: column;
  }
}
@media (max-width: 700px) {
  .accordion-container.flex-row .flex-content {
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 0;
  }
}
@media (max-width: 700px) and (max-width: 700px) {
  .accordion-container.flex-row .flex-content {
    flex-direction: column;
  }
}
@media (max-width: 700px) {
  .accordion-container.flex-row p, .accordion-container.flex-row .blog-block p a, .blog-block p .accordion-container.flex-row a, .accordion-container.flex-row .blog-block .em-item-desc a, .blog-block .em-item-desc .accordion-container.flex-row a, .accordion-container.flex-row .em-item-desc {
    font-size: 1.4rem;
  }
  .accordion-container.flex-row .bullets li {
    font-size: 1.2rem !important;
  }
  .accordion-target {
    padding-right: 50px;
  }
}
.accordion-container.no-fill, .accordion-container.flex-row.no-fill {
  border-left: 0;
  border-right: 0;
  border-color: #2c4431;
}
.accordion-container.no-fill .accordion-target, .accordion-container.flex-row.no-fill .accordion-target {
  border-color: #2c4431;
  background-color: transparent;
  padding-left: 0;
  border-bottom: 0 !important;
  color: #2c4431;
}
.accordion-container.no-fill .accordion-child, .accordion-container.flex-row.no-fill .accordion-child {
  padding: 1.5vw 0;
  padding-bottom: 0;
}
.accordion-container.no-fill .accordion-target .btn-close-toggle, .accordion-container.flex-row.no-fill .accordion-target .btn-close-toggle {
  top: 1.5vw;
  right: 5px;
}
.accordion-container.no-fill .accordion-target .btn-close-toggle::before, .accordion-container.no-fill .accordion-target .btn-close-toggle::after, .accordion-container.flex-row.no-fill .accordion-target .btn-close-toggle::before, .accordion-container.flex-row.no-fill .accordion-target .btn-close-toggle::after {
  background-color: #2c4431;
  height: 2.2px;
}

input, textarea {
  padding: 8px;
  border: 0.15rem solid rgba(44, 68, 49, 0.5);
  border-radius: 3px;
  color: #2c4431;
}

input:focus, textarea:focus {
  border: 0.15rem solid #2c4431;
}

@media (max-width: 900px) {
  input {
    font-size: 16px !important;
  }
  input[type=submit] {
    height: 3.5rem !important;
    box-sizing: border-box;
    display: inline-block;
    font-size: 1.4rem !important;
  }
}
section.sign-up {
  margin: 6rem auto 8rem;
}

section.sign-up .form-container {
  max-width: 900px;
  min-height: 10.5rem;
  margin: 0 auto;
}

.form-heading {
  margin: 0rem 0 4rem;
}

.nf-before-form-content {
  display: none;
}

.nf-error-msg {
  color: #296d57 !important;
  padding: 0px 0 0;
  margin: 4px 0 0 0 !important;
}

.nf-input-limit {
  display: none;
}

.nf-field-container {
  margin-bottom: 0 !important;
}

nf-fields-wrap {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  align-items: stretch;
  flex-wrap: nowrap;
  gap: 20px;
}
@media (max-width: 700px) {
  nf-fields-wrap {
    flex-direction: column;
  }
}

.submit-container {
  margin-top: 3.6rem;
}

.nf-error input, .nf-error textarea {
  padding: 8px;
  border: 0.15rem solid #296d57 !important;
  border-radius: 3px;
}

.ninja-forms-req-symbol {
  display: none;
}

@media (max-width: 900px) {
  section.sign-up {
    max-width: 500px;
    margin: 3rem auto 3rem;
  }
  nf-fields-wrap {
    flex-direction: column;
    gap: 16px;
  }
  .label-above .nf-field-label {
    margin-bottom: 6px !important;
  }
  .nf-error-msg {
    padding-top: 0;
    margin-bottom: 6px;
  }
  .nf-after-form-content {
    margin-top: 16px;
  }
}
section.contact-form {
  margin: 8rem auto 10rem;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  display: flex;
  gap: 10vw;
}
@media (max-width: 700px) {
  section.contact-form {
    flex-direction: column;
  }
}
section.contact-form .form-container, section.contact-form img {
  flex: 0 1 auto; /* This makes both elements have equal width */
  min-width: 0;
}
section.contact-form .form-container {
  min-width: 320px;
  max-width: 600px;
}
section.contact-form nf-fields-wrap {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  align-items: stretch;
  flex-wrap: wrap;
  gap: 16px;
}
@media (max-width: 700px) {
  section.contact-form nf-fields-wrap {
    flex-direction: column;
  }
}
section.contact-form nf-field {
  width: calc(50% - 8px);
}
section.contact-form nf-field:nth-of-type(3) {
  width: 100%;
}
section.contact-form .checkbox-wrap {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  flex-direction: row-reverse;
  flex-wrap: nowrap;
  align-items: center;
  gap: 8px;
}
@media (max-width: 700px) {
  section.contact-form .checkbox-wrap {
    flex-direction: column;
  }
}
section.contact-form .checkbox-wrap .nf-field-element {
  width: auto;
}
section.contact-form .submit-container {
  margin: 16px 0 0;
}

@media (max-width: 1300px) {
  section.contact-form {
    gap: 50px;
  }
}
@media (max-width: 900px) {
  section.contact-form {
    flex-direction: column;
    gap: 50px;
  }
}
@media (max-width: 900px) {
  section.contact-form {
    margin: 2rem auto 5rem;
  }
  section.contact-form .form-container.form-container {
    width: 100%;
  }
  section.contact-form nf-fields-wrap {
    flex-direction: row;
  }
}
.testimonials {
  text-align: center;
  margin: 150px auto 100px;
  width: 100%;
}
.testimonials .review-stars {
  width: 100px;
  margin: 25px auto;
}
.testimonials .review-stars path, .testimonials .review-stars polygon {
  fill: #2c4431;
}

.slider-testimonial {
  margin-top: 25px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}
@media (max-width: 700px) {
  .slider-testimonial {
    flex-direction: column;
  }
}
.slider-testimonial .slick-track {
  display: flex;
  margin: auto;
}
.slider-testimonial .slick-slide {
  display: flex;
  height: auto;
  align-self: center;
  justify-content: center;
}
.slider-testimonial .slide-container {
  width: 100%;
  max-width: 900px;
  text-align: center;
  margin-bottom: 20px;
}
.slider-testimonial .slick-dots {
  margin-top: auto;
}
.slider-testimonial h6 {
  margin-top: 25px;
}

@media (max-width: 700px) {
  .testimonialsl {
    margin: 100px auto 50px;
  }
}
.slider-gallery-part.minor, .post-row p.slider-gallery-part, .post-row .blog-block p a.slider-gallery-part, .blog-block p .post-row a.slider-gallery-part, .post-row .blog-block .em-item-desc a.slider-gallery-part, .blog-block .em-item-desc .post-row a.slider-gallery-part, .post-row .slider-gallery-part.em-item-desc, .slider-gallery-part.nf-error-msg {
  max-width: 900px;
  margin: 0 auto;
}

.slider-gallery {
  position: relative;
  z-index: 1;
}
.slider-gallery::before {
  display: block;
  content: "";
  background-color: rgba(74, 52, 49, 0.6);
  z-index: 11;
  mix-blend-mode: lighten;
  pointer-events: none;
}
.slider-gallery .slick-track {
  display: flex;
  align-items: flex-end;
}
.slider-gallery img {
  border-radius: 2px;
}

.slider-nav {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
  margin-bottom: 100px;
  gap: 20px;
  margin-top: 20px;
}
.slider-nav.img-per-row-3 {
  gap: 30px;
}
.slider-nav.img-per-row-3 img {
  width: calc((100% - 60px) / 3);
}

.slider-nav.img-per-row-4 img {
  width: calc((100% - 60px) / 4);
}

.slider-nav.img-per-row-5 img {
  width: calc((100% - 80px) / 5);
}

.slider-nav.img-per-row-6 img {
  width: calc((100% - 100px) / 6);
}

.slider-nav.img-per-row-8 {
  gap: 10px;
}
.slider-nav.img-per-row-8 img {
  width: calc((100% - 70px) / 8);
}

.slider-nav img {
  width: calc((100% - 80px) / 5);
  height: auto;
  object-fit: cover;
  border-radius: 2px;
  transition: 100ms;
  box-sizing: border-box;
  border: 2px solid rgba(41, 109, 87, 0);
}

.slider-nav img:nth-last-child(1) {
  margin-right: auto;
}

.slider-nav img.active-thumb {
  opacity: 0.5;
  border: 2px solid #296d57;
}

@media (max-width: 1300px) {
  .slider-nav {
    margin-top: 4px;
    margin-bottom: 50px;
  }
  .slider-nav.img-per-row-3 {
    gap: 4px;
  }
  .slider-nav.img-per-row-3 img {
    width: calc((100% - 8px) / 3);
  }
  .slider-nav.img-per-row-4 {
    gap: 4px;
  }
  .slider-nav.img-per-row-4 img {
    width: calc((100% - 12px) / 4);
  }
  .slider-nav.img-per-row-5 {
    gap: 4px;
  }
  .slider-nav.img-per-row-5 img {
    width: calc((100% - 16px) / 5);
  }
  .slider-nav.img-per-row-6 {
    gap: 4px;
  }
  .slider-nav.img-per-row-6 img {
    width: calc((100% - 20px) / 6);
  }
  .slider-nav.img-per-row-8 {
    gap: 4px;
  }
  .slider-nav.img-per-row-8 img {
    width: calc((100% - 28px) / 8);
  }
}
@media (max-width: 700px) {
  .slider-gallery::before {
    display: none;
  }
  .slider-gallery img {
    opacity: 1 !important;
  }
  .slider-gallery img {
    margin-bottom: 10px;
  }
  .slider-nav {
    display: none;
  }
}
table, tbody, tr, td {
  border: 0;
}

section.rates-block {
  margin: 80px 0;
}

.rates-block.vert-center {
  align-items: center;
}

.rates-block {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  align-items: stretch;
  gap: 5vw;
}
@media (max-width: 700px) {
  .rates-block {
    flex-direction: column;
  }
}
.rates-block .rates-info, .rates-block .charts {
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.rates-block .rates-info {
  gap: 12px;
}
.rates-block .charts {
  gap: 60px;
}
.rates-block table {
  display: flex;
  width: 100%;
  margin-bottom: 50px;
  border: 1px solid rgba(44, 68, 49, 0.1);
}
.rates-block table:nth-last-of-type(1) {
  margin-bottom: 0;
}
.rates-block tbody {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.rates-block tr {
  display: flex;
  flex-wrap: nowrap;
  gap: 10px;
  width: 100%;
  padding: 8px 12px;
}
.rates-block table.table-head tr:nth-child(1) {
  background-color: #2c4431;
  color: #f5f4f0;
  padding: 8px 12px;
}
.rates-block table.align-decimal td:nth-of-type(2), .rates-block table.align-decimal td:nth-of-type(3) {
  text-align: right;
  max-width: 160px;
  display: block;
}
.rates-block tr:nth-child(odd) {
  background-color: rgba(199, 216, 195, 0.1);
}
.rates-block td {
  width: 100%;
}
.rates-block.flex-row-rev {
  flex-direction: row-reverse;
}
.rates-block h4 {
  margin-bottom: 20px;
}

.rates-block.center-layout {
  align-items: center;
  flex-direction: column;
  gap: 60px;
  max-width: 900px;
  margin: 80px auto;
}
.rates-block.center-layout .rates-info {
  text-align: center;
  gap: 20px;
}
.rates-block.center-layout .charts {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  width: 100%;
  gap: 20px;
}
.rates-block.center-layout h4 {
  text-align: center;
}
.rates-block.center-layout .rates-chart {
  width: 100%;
}
.rates-block.center-layout ul {
  max-width: 500px;
  margin: auto;
}
.rates-block.center-layout li {
  display: inline;
}
.rates-block.center-layout .btn-group {
  justify-content: center;
}

@media (max-width: 1300px) {
  .rates-block.center-layout table tr {
    padding: 8px 36px;
  }
  .rates-block.center-layout table tr:nth-child(1) {
    padding: 8px 36px;
  }
}
@media (max-width: 700px) {
  .rates-block.flex-row-rev {
    flex-direction: column;
  }
  .rates-block.center-layout .charts {
    flex-direction: column;
    gap: 30px;
  }
}
.modal-bg-area {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: rgba(255, 255, 255, 0.5);
  z-index: 101;
}

.modal {
  position: fixed;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 12px;
  top: 35%;
  left: 0;
  right: 0;
  width: 100%;
  max-width: 600px;
  min-height: 200px;
  padding: 20px 75px;
  border: 1px solid #2c4431;
  border-radius: 3px;
  background-color: #ffffff;
  margin: 0 auto;
  text-align: center;
  transform: translateY(-50%);
  transition: padding 600ms ease-out, margin 600ms ease-out;
  box-sizing: content-box;
}
.modal p, .modal .blog-block p a, .blog-block p .modal a, .modal .blog-block .em-item-desc a, .blog-block .em-item-desc .modal a, .modal .em-item-desc, .modal h3, .modal h5 {
  opacity: 0;
  transition: 800ms 200ms;
}
.modal .btn-group {
  justify-content: center;
}
.modal .btn-close:before, .modal .btn-close:after {
  background-color: #2c4431;
}

.open-modal .modal {
  padding: 40px 75px;
  margin-top: 0;
}
.open-modal .modal p, .open-modal .modal .blog-block p a, .blog-block p .open-modal .modal a, .open-modal .modal .blog-block .em-item-desc a, .blog-block .em-item-desc .open-modal .modal a, .open-modal .modal .em-item-desc, .open-modal .modal h3, .open-modal .modal h5 {
  opacity: 1;
}

.closing-modal .modal {
  margin-top: -50px;
}

.modal-cta {
  font-size: 16px;
  font-weight: 600;
}

.modal-close-btn {
  display: block;
  position: absolute;
  top: 15px;
  right: 15px;
  padding: 0;
  border: 0 !important;
  font-size: 0;
  background-color: transparent;
  background-size: contain;
  background-repeat: no-repeat;
}

@media (max-width: 900px) {
  .modal {
    width: calc(100% - 50px);
    min-height: 200px;
    padding: 10px 15px;
    box-sizing: border-box;
  }
  .modal .modal-promo, .modal .modal-cta {
    font-size: 12px;
    margin-bottom: 20px;
  }
}
section.text-block {
  max-width: 100%;
  margin: auto;
  gap: 6.2rem;
  margin-bottom: 40px;
}
section.text-block.center {
  text-align: center;
}
section.text-block.narrow {
  max-width: 900px;
}
section.text-block.frame {
  background-color: #f5f4f0;
  padding: 25px;
}
section.text-block.margin {
  margin: 50px auto;
}
section.text-block .text-column {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  gap: 6.2rem;
}
@media (max-width: 700px) {
  section.text-block .text-column {
    flex-direction: column;
  }
}
section.text-block .text-column p:nth-last-of-type(1), section.text-block .text-column .blog-block p a:nth-last-of-type(1), .blog-block p section.text-block .text-column a:nth-last-of-type(1), section.text-block .text-column .blog-block .em-item-desc a:nth-last-of-type(1), .blog-block .em-item-desc section.text-block .text-column a:nth-last-of-type(1), section.text-block .text-column .em-item-desc:nth-last-of-type(1) {
  margin-bottom: 0;
}
section.text-block .flex-content {
  width: 100%;
  gap: 20px;
  flex-direction: column;
  margin-bottom: 0px;
}
section.text-block .flex-content > * {
  flex: 1 1 0px;
}
section.text-block .text-block-title {
  margin-bottom: 20px;
}
section.text-block .btn-group {
  margin-top: 50px;
}
section.text-block img {
  width: 100%;
  height: auto;
  margin-top: auto;
  margin-bottom: auto;
}

@media (max-width: 700px) {
  section.text-block .text-column {
    gap: 1.6rem;
  }
}
/* Container for the Splide slider */
.infinity-carousel {
  width: 100%;
  /* Container for the slides */
  /* Individual slide items */
  /* Styling for images within each slide */
}
.infinity-carousel .splide__track {
  position: relative;
  width: 100%;
}
.infinity-carousel .splide__slide {
  overflow: hidden;
  height: 100%; /* Set a fixed height */
  width: auto; /* Width is auto to maintain aspect ratio */
  margin-right: 30px; /* Space between slides */
}
.infinity-carousel .splide__slide img {
  transform-origin: center;
  display: block;
  margin: auto; /* Center the image horizontally */
  width: auto; /* Width is auto to maintain aspect ratio */
  height: 100%; /* Image fills the height of the slide */
}

section.content-slider {
  display: flex;
  flex-direction: row;
  margin: 0 auto;
  margin-top: 5rem;
  margin-bottom: 5rem;
}
@media (max-width: 700px) {
  section.content-slider {
    margin-top: 2.4rem;
    margin-bottom: 2.4rem;
  }
}
section.content-slider .slider-area {
  display: block;
  position: relative;
  width: 100%;
}
section.content-slider .flex-content {
  gap: 10px;
  display: flex;
  flex-direction: column;
}
section.content-slider .ft-img {
  width: 100%;
  max-width: none;
}
@media (max-width: 900px) {
  section.content-slider .slider-area {
    margin-bottom: 2rem;
  }
}

section.content-slider.stack {
  flex-direction: column;
  gap: 50px;
}
section.content-slider.stack .ft-body {
  max-width: 900px;
}
section.content-slider.stack .ft-img img {
  width: 100%;
  max-width: none;
}
@media (max-width: 900px) {
  section.content-slider.stack {
    max-width: 100%;
    gap: 20px;
  }
  section.content-slider.stack .ft-body {
    max-width: 500px;
  }
}

section.scripts-html {
  display: block;
  min-width: 100px;
  max-width: 100%;
  margin: 100px auto;
}

.post-list {
  flex-direction: row;
  margin-bottom: 120px;
}

.post-row {
  margin-top: 60px;
}
.post-row h2 {
  margin-bottom: 14px;
}
@media (max-width: 700px) {
  .post-row {
    flex-direction: column;
    width: 100%;
    gap: 20px;
  }
  .post-row .post-thumb, .post-row .post-copy {
    width: 100%;
  }
}
.previous-post-cta, .post-row {
  margin-top: 120px;
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  gap: 4.8rem;
}
.previous-post-cta .previous-post-thumb, .previous-post-cta .post-thumb, .post-row .previous-post-thumb, .post-row .post-thumb {
  width: 33.33%;
  height: auto;
}
.previous-post-cta .previous-post-thumb img, .previous-post-cta .post-thumb img, .post-row .previous-post-thumb img, .post-row .post-thumb img {
  width: 100%;
}

.previous-post-text, .post-copy {
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 66.66%;
  align-items: flex-start;
}
@media (max-width: 700px) {
  .previous-post-text, .post-copy {
    flex-direction: column;
  }
}
.previous-post-text h4, .post-copy h4 {
  margin-bottom: 20px;
}

@media (max-width: 700px) {
  .previous-post-cta {
    flex-direction: column;
  }
}
.blog-post-wrapper {
  max-width: 900px;
  width: 100%;
  margin: 0 auto;
  margin-top: 50px;
  margin-bottom: 50px;
}
@media (max-width: 700px) {
  .blog-post-wrapper {
    margin-top: 50px;
  }
}

.single-post article {
  display: flex;
  flex-direction: column;
  gap: 3.2rem;
}
@media (max-width: 700px) {
  .single-post article {
    gap: 2.4rem;
  }
}

.blog-head {
  margin-bottom: 6.4rem;
}
.blog-head h1 {
  margin-bottom: 2.4rem;
}
@media (max-width: 700px) {
  .blog-head {
    margin-bottom: 3.2rem;
  }
}

.blog-block p a, .blog-block .em-item-desc a {
  font-style: 1.6rem;
  color: #2c4431;
  text-decoration: underline;
}
.blog-block p a:hover, .blog-block .em-item-desc a:hover {
  color: #296d57;
}
.blog-block li {
  font-size: clamp(1.4rem, 1vw, 1.6rem);
  font-weight: normal;
}
@media (max-width: 700px) {
  .blog-block li {
    margin-bottom: 4px;
  }
}
.blog-block h4 {
  margin-top: 16px;
  margin-bottom: 16px;
}
@media (max-width: 700px) {
  .blog-block h4 {
    margin-top: 38px;
    margin-bottom: 12px;
  }
}

.blog-block-img img {
  margin-bottom: 20px;
  width: 100%;
}

.img-caption {
  font-style: italic;
  font-size: 1.4rem;
}
@media (max-width: 700px) {
  .img-caption {
    font-size: 1.2rem;
  }
}

.blog-block-links li a {
  color: #2c4431;
  text-decoration: underline;
}
.blog-block-links li a:hover {
  color: #296d57;
}

.blog-post-wrapper hr {
  border-bottom: 1px solid #2c4431;
  opacity: 0.2;
}

.pagination {
  margin: 100px 0;
}
.pagination .page-numbers {
  margin-left: 0.5rem;
}

.wrapper {
  padding-top: 20px;
}

.header-wrapper.nav-fixed {
  position: fixed;
  width: 100%;
  background-color: #f5f4f0;
}

.header {
  margin-top: 45px;
  margin-bottom: 30px;
}
.header .logo {
  margin-top: -30px;
}

.header .logo-mobile {
  max-width: 100px;
  margin-top: 50px;
}

@media (max-width: 1300px) {
  .nav-style-3 header {
    gap: 40px;
  }
}
@media (max-width: 700px) {
  .header {
    margin-bottom: 0px;
  }
}
.feature-block li,
.accordion-child li {
  padding-left: 20px;
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0;
  margin-bottom: 10px;
}

.masthead.has-media .h1,
.masthead.has-media .h3 {
  color: #ffffff;
  text-shadow: 2px 4px 7px rgba(0, 0, 0, 0.65);
}

section.intro.alt-color {
  background-color: rgba(199, 216, 195, 0.75);
  border-radius: 5px;
}

ul.sub-menu li a::before {
  display: none;
}

.content-slider ul {
  border-radius: 5px;
}

section.card-flex-row .card .img-mask {
  border-radius: 10px;
}

#menu-footer li a {
  text-decoration: none;
}

.rates-block tr:nth-child(odd) {
  background-color: rgba(199, 216, 195, 0.75);
}

.header-wrapper.nav-style-3 nav.nav-desktop ul > li > a,
.header-wrapper.nav-style-3 nav.nav-cta ul > li > a {
  font-size: 1.4rem !important;
}

@media (min-width: 700px) {
  .hide-desktop {
    display: none;
  }
}
.footer-logo {
  margin-top: -15px;
}
