/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, 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, label, 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; }

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

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after {
  content: '';
  content: none; }

q:before, q:after {
  content: '';
  content: none; }

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

*,
*:after,
*:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

* {
  margin: 0;
  padding: 0; }

html {
  font-variant-ligatures: common-ligatures;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.004);
  text-rendering: optimizeLegibility !important;
  -webkit-font-smoothing: antialiased !important;
  font-size: 16px; }

body {
  font-family: inter-variable, serif;
  font-style: normal;
  font-weight: 500;
  letter-spacing: -0.25px;
  font-size: 1rem;
  line-height: 1.5; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: larken, serif;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: normal;
  position: relative; }

h1 {
  font-size: 4rem; }
  @media (max-width: 767px) {
    h1 {
      font-size: 2.5rem; } }

h2 {
  font-size: 2.5em; }
  @media (max-width: 767px) {
    h2 {
      font-size: 2.25rem; } }

h3 {
  font-size: 1.5rem; }
  @media (max-width: 767px) {
    h3 {
      font-size: 1.25rem; } }

p,
ul,
ol {
  margin: 1rem 0; }

a {
  position: relative;
  text-decoration: none;
  transition: all 0.4s cubic-bezier(0.28, 0, 0.18, 1); }
  a.button {
    display: inline-block;
    color: #103d19;
    line-height: 1;
    padding: 1rem 2rem;
    background: #8fbe8a;
    border-radius: .5rem;
    font-family: larken, serif;
    font-size: 1.25rem;
    text-decoration: none; }
    a.button:hover {
      color: #ffffff;
      background: #579151; }

strong {
  font-weight: 700; }

::selection {
  background: rgba(255, 242, 121, 0.5); }

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

* {
  margin: 0;
  padding: 0; }

body, html {
  position: relative;
  height: auto;
  min-height: 100%; }

body {
  background: #103d19; }
  body.nav-open,
  body.loading,
  body.show-menu,
  body.show-gallery {
    overflow: hidden; }

.peekaboo {
  display: block;
  position: fixed;
  width: 100%;
  padding: 1rem 0;
  text-align: center;
  color: #fdfdf2; }

#wrap {
  background: #fef9ed;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  border-radius: 0 0 0.5rem 0.5rem;
  z-index: 5;
  padding: 0 2rem 4rem; }
  #wrap.sections-home {
    overflow: hidden; }
  @media (max-width: 767px) {
    #wrap {
      padding: 0 1.5rem 2rem; } }

.container {
  width: 100%;
  margin: 0 auto; }
  .container.width-narrow {
    max-width: 720px; }
  .container.width-normal {
    max-width: 1080px; }
  .container.flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    .container.flex-middle {
      align-items: center; }
    .container.flex-start {
      align-items: flex-start; }

/*
.container {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
	padding: 0 5rem;
	&.baseline {
		align-items: baseline;
	}
	&.middle {
		align-items: center;
	}
	&.flex-center {
		justify-content: center;
	}
	&.flex-column {
		flex-direction: column;
	}
	&.flex-end {
		justify-content: flex-end;
	}
	&.inner {
		max-width: calc(1200px + 10rem);
	}
	&.single {
		max-width: calc(1000px + 10rem);
	}
	@include breakpoint(tablet) {
		padding: 0 3rem;
	}
	@include breakpoint(mobile) {
		padding: 0 1.5rem;
	}
}
*/
.fill {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%; }
  .fill svg,
  .fill img,
  .fill video {
    height: 100%;
    width: 100%;
    object-fit: cover;
    display: block; }

.responsive-container {
  position: relative;
  padding-bottom: 56.25%;
  /* 16:9 */
  padding-top: 0px;
  height: 0;
  overflow: hidden;
  margin: 2rem 0; }
  .responsive-container iframe,
  .responsive-container object,
  .responsive-container embed,
  .responsive-container video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.wp-video {
  width: 100% !important;
  height: auto !important;
  margin: 2rem 0; }
  .wp-video .mejs-mediaelement {
    position: relative !important; }
  .wp-video .mejs-layers {
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0; }

a.skip-main {
  left: -999px;
  position: absolute;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
  z-index: -999; }
  a.skip-main:focus,
  a.skip-main:active {
    color: #fff;
    background-color: #000;
    left: auto;
    top: auto;
    width: 30%;
    height: auto;
    overflow: auto;
    margin: 10px 35%;
    padding: 5px;
    border-radius: 15px;
    border: 4px solid yellow;
    text-align: center;
    font-size: 1rem;
    z-index: 999; }

.hide {
  left: -999px;
  position: absolute;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
  z-index: -999; }

.cookie-notice-container span {
  margin: 0 10px 0 0; }

.cookie-notice-container a {
  margin: 0 0 0 10px !important; }

.cookie-notice-container #cn-notice-text {
  display: inline;
  margin: 0; }

.cookie-notice-container #cn-accept-cookie {
  color: #ffffff; }

.cookie-notice-container .cn-close-icon {
  top: 50%;
  margin-top: 0;
  transform: translateY(-50%); }

.hidemobile {
  display: block; }
  @media (max-width: 1023px) {
    .hidemobile {
      display: none !important; } }

.hidedesktop {
  display: none; }
  @media (max-width: 1023px) {
    .hidedesktop {
      display: block !important; } }

footer {
  position: sticky;
  bottom: 0;
  right: 0;
  left: 0;
  padding: 2rem;
  color: #fdfdf2; }
  footer .section.footer-promo {
    overflow: hidden;
    position: relative;
    margin: 0 -2rem; }
    footer .section.footer-promo .gt-banner-inner {
      max-width: calc(600px + 4rem);
      margin: 0 auto;
      padding: 4rem 2rem;
      text-align: center;
      position: relative;
      z-index: 1; }
    footer .section.footer-promo .gt-banner-eyebrow {
      font-size: .9rem;
      letter-spacing: 3px;
      text-transform: uppercase;
      color: #6da868;
      font-weight: 600;
      margin: 0 0 1rem; }
    footer .section.footer-promo h2 {
      font-family: larken, serif;
      font-size: 4rem;
      font-weight: 400;
      color: #f5f5ea;
      line-height: 1.05;
      margin: 0 0 1rem; }
      footer .section.footer-promo h2 em {
        font-style: italic;
        color: #8fbe8a; }
    footer .section.footer-promo p {
      font-size: 1rem;
      color: #8aa888;
      line-height: 1.75;
      margin: 0 0 3rem; }
    footer .section.footer-promo .gt-banner-note {
      font-size: .9rem;
      color: #4a6a48;
      margin: 1rem 0 0; }
    footer .section.footer-promo .gt-banner-ghost {
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
      font-family: larken, serif;
      font-size: 280px;
      font-weight: 400;
      color: rgba(255, 255, 255, 0.04);
      line-height: 1;
      pointer-events: none;
      user-select: none;
      white-space: nowrap; }
  footer .logo {
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate3d(-50%, 0, 0); }
    footer .logo img {
      display: block;
      height: 6rem;
      width: auto;
      transition: all 0.8s cubic-bezier(0.28, 0, 0.18, 1);
      transform: scale(1.2);
      opacity: 0; }
  footer p span {
    display: block;
    font-size: .75rem; }
  footer p a {
    color: #fdfdf2;
    border-bottom: 1px solid #fdfdf2; }
  footer.fully-visible .logo img {
    transform: scale(1);
    opacity: 1; }
  @media (max-width: 767px) {
    footer .container {
      flex-direction: column; }
    footer .section.footer-promo .gt-banner-inner {
      padding: 2rem 2rem 1rem; }
    footer .section.footer-promo h2 {
      font-size: 2.5rem; }
    footer .section.footer-promo p {
      font-size: .9rem;
      margin: 0 0 1rem; }
    footer .section.footer-promo .gt-banner-note {
      font-size: .75rem; }
    footer p {
      margin: 0;
      font-size: .9rem; }
      footer p span {
        margin: 0 0 0.5rem; }
    footer .logo {
      position: relative;
      top: auto;
      left: auto;
      transform: translate3d(0, 0, 0);
      margin: 0 0 1rem; } }

header {
  background: #fef9ed;
  padding: 0 2rem;
  height: 5rem;
  display: flex;
  justify-content: space-between;
  position: relative;
  align-items: center;
  z-index: 105; }
  header .logo {
    margin: 0 0 -4rem 2.5rem; }
    header .logo img {
      display: block;
      height: 8rem;
      width: auto; }
  header ul {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    margin: 0 auto; }
    header ul li {
      margin: 0 1rem; }
    header ul a {
      font-weight: 600;
      color: #103d19; }
      header ul a:after {
        content: '';
        position: absolute;
        bottom: -3px;
        left: 0;
        background: #103d19;
        display: block;
        height: 1px;
        transition: all 0.4s cubic-bezier(0.28, 0, 0.18, 1);
        width: 0; }
      header ul a:hover:after {
        width: 100%; }
  header .menu-toggle {
    -webkit-appearance: none;
    position: relative;
    background: none;
    border: none;
    height: 1.25rem;
    width: 2.5rem;
    text-indent: -9999px;
    margin: 0 1.5rem 0 0;
    cursor: pointer;
    display: none; }
    header .menu-toggle span {
      position: absolute;
      background: #000000;
      height: 2px;
      width: 100%;
      left: 0;
      transition: all 0.4s cubic-bezier(0.28, 0, 0.18, 1); }
      header .menu-toggle span:nth-child(1) {
        top: 0; }
      header .menu-toggle span:nth-child(2) {
        bottom: 0; }
      header .menu-toggle span:nth-child(3),
      header .menu-toggle span:nth-child(4) {
        top: 50%;
        transform: translateY(-50%); }
  @media (max-width: 1023px) {
    header .logo {
      z-index: 9999;
      margin: 0 0 -4rem 1.5rem; }
    header ul {
      background: #fef9ed;
      position: fixed;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      display: flex;
      flex-direction: column;
      justify-content: center;
      transition: all 0.4s cubic-bezier(0.77, 0, 0.175, 1) 0.4s;
      transform: translate3d(0, -100%, 0); }
      header ul li {
        text-align: center;
        font-family: larken, serif;
        font-size: 5rem;
        line-height: 1.5;
        transition: all 0.4s cubic-bezier(0.77, 0, 0.175, 1);
        opacity: 0; }
      header ul a:after {
        display: none; }
    header .menu-toggle {
      display: block; }
    header .button {
      display: none; }
    header.expanded .menu-toggle span:nth-child(1) {
      top: 4px;
      opacity: 0; }
    header.expanded .menu-toggle span:nth-child(2) {
      bottom: 4px;
      opacity: 0; }
    header.expanded .menu-toggle span:nth-child(3) {
      transform: translateY(-50%) rotate(45deg); }
    header.expanded .menu-toggle span:nth-child(4) {
      transform: translateY(-50%) rotate(-45deg); }
    header.expanded ul {
      transition: all 0.4s cubic-bezier(0.77, 0, 0.175, 1);
      transform: translate3d(0, 0, 0); }
      header.expanded ul li {
        transition: all 0.4s cubic-bezier(0.77, 0, 0.175, 1) 0.4s;
        opacity: 1; } }
  @media (max-width: 767px) {
    header ul li {
      font-size: 2.5rem;
      line-height: 1.5; }
    header .logo {
      margin: 0 0 -2rem 0.5rem;
      transition: all 0.4s cubic-bezier(0.77, 0, 0.175, 1); }
      header .logo img {
        transition: all 0.4s cubic-bezier(0.77, 0, 0.175, 1);
        display: block;
        height: 6rem;
        width: auto; }
    header .menu-toggle {
      margin: 0; }
    header.expanded .logo {
      margin: 0 0 0 0.5rem; }
      header.expanded .logo img {
        height: 4rem; } }

.pad-top-small {
  padding-top: 1rem; }

.pad-top-medium {
  padding-top: 4rem; }

.pad-top-large {
  padding-top: 8rem; }

.pad-bottom-small {
  padding-bottom: 1rem; }

.pad-bottom-medium {
  padding-bottom: 4rem; }

.pad-bottom-large {
  padding-bottom: 8rem; }

.cards .cards-container {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 1rem;
  row-gap: 1rem;
  margin: 0 auto; }

.cards .card {
  width: calc((100% / 3) - (2rem / 3));
  padding-bottom: 25%;
  background-color: #000000;
  border-radius: .5rem;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  overflow: hidden;
  opacity: 0;
  transition: none; }
  .cards .card figure {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 1; }
    .cards .card figure img {
      transition: all 1.6s cubic-bezier(0.28, 0, 0.18, 1);
      transform: scale(1); }
  .cards .card-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.75) 0%, rgba(39, 45, 51, 0) 100%);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    z-index: 2;
    padding: 1.5rem;
    color: #fdfdf2; }
    .cards .card-content h3 {
      display: flex;
      justify-content: space-between;
      align-items: center; }
      .cards .card-content h3 svg {
        fill: #fdfdf2;
        transition: all 0.4s cubic-bezier(0.28, 0, 0.18, 1);
        opacity: 0;
        margin: 0 1rem 0 0; }
  .cards .card:hover figure img {
    transform: scale(1.05); }
  .cards .card:hover h3 svg {
    opacity: 1;
    margin: 0; }

.cards-home {
  padding-top: 1rem; }

@media (max-width: 1023px) {
  .cards .card {
    width: calc(50% - .5rem);
    padding-bottom: 28.25%; }
    .cards .card h3 svg {
      display: none; }
  .cards-home .card {
    width: calc((100% / 3) - (2rem / 3));
    padding-bottom: 25%; }
    .cards-home .card h3 {
      width: 50%; } }

@media (max-width: 767px) {
  .cards .card {
    width: 100%;
    padding-bottom: 56.25%; }
    .cards .card-content {
      justify-content: center;
      text-align: center; }
      .cards .card-content h3 {
        width: auto;
        justify-content: center; }
  .cards-work .card {
    width: calc(50% - .5rem);
    padding-bottom: 50%; }
    .cards-work .card h3 {
      display: none; } }

.quotes .eyebrow {
  display: block;
  font-size: .9rem;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: #6da868;
  font-weight: 600;
  margin: 0 0 18px; }

.quotes h2 {
  margin: 2.5rem 0;
  font-size: 1.75rem;
  line-height: 1.6;
  font-weight: 400;
  font-style: italic; }

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

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

@media (max-width: 1023px) {
  .quotes {
    padding: 6rem 0; } }

@media (max-width: 767px) {
  .quotes {
    padding: 4rem 0; } }

/*
.recent-work {
	width: 100%;
	padding-top: 5rem;
	padding-bottom: calc(56.25% - 5rem);
	overflow: hidden;
	
	figure {
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
}
*/
/* Horizontal Projects Styles */
.advance {
  display: flex;
  justify-content: space-between;
  position: absolute;
  width: 100%;
  top: 50%;
  transform: translateY(-50%);
  z-index: 5; }
  .advance .arrow-svg {
    display: block;
    height: 6rem;
    width: auto;
    overflow: visible;
    cursor: pointer;
    transition: opacity 0.8s cubic-bezier(0.28, 0, 0.18, 1);
    opacity: 1; }
    .advance .arrow-svg-next {
      transform: rotate(180deg); }
    .advance .arrow-svg .arrow-svg-wrap {
      transform: translateY(353px) rotateY(180deg);
      transform-origin: 80px 0px 0px; }
    .advance .arrow-svg circle {
      stroke-width: 2px;
      stroke: #000000;
      fill: none;
      opacity: 1;
      transform-origin: center center;
      transition: all 0.8s cubic-bezier(0.28, 0, 0.18, 1);
      stroke-dasharray: 1;
      stroke-dashoffset: 1; }
    .advance .arrow-svg .arrow-svg-arrow {
      fill: #000000;
      transition: all 0.8s cubic-bezier(0.28, 0, 0.18, 1);
      transform: rotateY(180deg) translate(-55px, 36.1px) scale(1.75); }
    .advance .arrow-svg .arrow-svg-line {
      stroke: #000000;
      stroke-width: 2;
      transition: all 0.8s cubic-bezier(0.28, 0, 0.18, 1);
      transform: translate(50px, 42px); }
    .advance .arrow-svg:hover circle {
      stroke-dasharray: 4px;
      stroke-dashoffset: 4px;
      transform: scale(1.1); }
    .advance .arrow-svg:hover .arrow-svg-arrow {
      transform: rotateY(180deg) translate(-30px, 36.1px) scale(1.75); }
    .advance .arrow-svg:hover .arrow-svg-line {
      transform: translate(25px, 42px) scaleX(0.5); }
    .advance .arrow-svg.swiper-button-disabled {
      opacity: 0; }
  @media (max-width: 767px) {
    .advance {
      display: none; } }

.recent-work .swiper-container {
  overflow: visible; }
  .recent-work .swiper-container .project {
    background: #000000;
    border-radius: .5rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    overflow: hidden; }
    .recent-work .swiper-container .project figure {
      width: 100%;
      padding-bottom: 66.7%;
      overflow: hidden; }
    .recent-work .swiper-container .project .overlay {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: linear-gradient(0deg, rgba(0, 0, 0, 0.75) 0%, rgba(39, 45, 51, 0) 100%);
      display: flex;
      flex-direction: column;
      justify-content: center;
      color: #fdfdf2; }
      .recent-work .swiper-container .project .overlay .title {
        position: absolute;
        top: 2rem;
        right: 2rem;
        left: 2rem;
        transition: all 0.8s cubic-bezier(0.28, 0, 0.18, 1);
        transform: translateY(-20%);
        opacity: 0; }
      .recent-work .swiper-container .project .overlay .content {
        position: absolute;
        bottom: 2rem;
        right: 2rem;
        left: 2rem;
        transition: all 0.8s cubic-bezier(0.28, 0, 0.18, 1);
        transform: translateY(20%);
        opacity: 0; }
        .recent-work .swiper-container .project .overlay .content p {
          display: none;
          width: 75%;
          margin: 1rem auto 0; }
    .recent-work .swiper-container .project.swiper-slide-active .overlay .title {
      transform: translateY(0%);
      opacity: 1; }
      .recent-work .swiper-container .project.swiper-slide-active .overlay .title p {
        margin: 0; }
    .recent-work .swiper-container .project.swiper-slide-active .overlay .content {
      transform: translateY(0%);
      opacity: 1; }

@media (max-width: 767px) {
  .recent-work .swiper-container .project .overlay .title {
    bottom: 1.5rem;
    right: 1.5rem;
    left: 1.5rem; }
  .recent-work .swiper-container .project .overlay .content {
    bottom: 1.5rem;
    right: 1.5rem;
    left: 1.5rem; }
    .recent-work .swiper-container .project .overlay .content h2 {
      font-size: 1.5rem; } }

.section.banner {
  padding: 4rem 0 0;
  border-top: 1px solid #ddd; }
  .section.banner .content {
    background: #bcdbc2;
    border-radius: .5rem;
    padding: 4rem 2rem 3rem;
    text-align: center; }
  @media (max-width: 767px) {
    .section.banner {
      padding: 2rem 0; }
      .section.banner .content {
        padding: 2rem 2rem 1rem; } }

.section.contact_form {
  padding: 4rem 0 0; }
  .section.contact_form h2 {
    margin: 0 0 1rem; }
  .section.contact_form .gform_wrapper .gform-field-label,
  .section.contact_form .gform_wrapper .gfield_label,
  .section.contact_form .gform_wrapper .gform-field-label--type-sub {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0); }
  .section.contact_form .gform_wrapper .gf_clear {
    display: none; }
  .section.contact_form .gform_wrapper .gform_body {
    border-top: 1px solid #ddd;
    padding: 2rem 0 0; }
    .section.contact_form .gform_wrapper .gform_body .gform_fields .gfield {
      margin-bottom: 1rem; }
      .section.contact_form .gform_wrapper .gform_body .gform_fields .gfield legend,
      .section.contact_form .gform_wrapper .gform_body .gform_fields .gfield > label {
        font-size: .9rem;
        font-weight: 600;
        margin-bottom: .5rem;
        display: block; }
      .section.contact_form .gform_wrapper .gform_body .gform_fields .gfield .gfield_required_text {
        font-size: .75rem;
        font-weight: 400;
        color: #888; }
    .section.contact_form .gform_wrapper .gform_body .gform_fields .gsection {
      margin: 2rem 0 1rem; }
    .section.contact_form .gform_wrapper .gform_body input[type="text"],
    .section.contact_form .gform_wrapper .gform_body input[type="email"],
    .section.contact_form .gform_wrapper .gform_body input[type="tel"],
    .section.contact_form .gform_wrapper .gform_body textarea,
    .section.contact_form .gform_wrapper .gform_body select {
      width: 100%;
      padding: 0.75rem 1rem;
      border: 1px solid #ddd;
      border-radius: .25rem;
      font-size: 1rem;
      font-family: inherit;
      background: #fff;
      transition: border-color 0.2s; }
      .section.contact_form .gform_wrapper .gform_body input[type="text"]:focus,
      .section.contact_form .gform_wrapper .gform_body input[type="email"]:focus,
      .section.contact_form .gform_wrapper .gform_body input[type="tel"]:focus,
      .section.contact_form .gform_wrapper .gform_body textarea:focus,
      .section.contact_form .gform_wrapper .gform_body select:focus {
        outline: none;
        border-color: #333; }
    .section.contact_form .gform_wrapper .gform_body textarea {
      min-height: 150px;
      resize: vertical; }
    .section.contact_form .gform_wrapper .gform_body select {
      appearance: none;
      cursor: pointer; }
    .section.contact_form .gform_wrapper .gform_body .gform-field-label--type-sub {
      font-size: .8rem;
      color: #888;
      margin-bottom: .25rem;
      display: block; }
    .section.contact_form .gform_wrapper .gform_body .gform-grid-row {
      display: flex;
      gap: 1rem; }
      .section.contact_form .gform_wrapper .gform_body .gform-grid-row .gform-grid-col--size-auto {
        flex: 1; }
    .section.contact_form .gform_wrapper .gform_body .ginput_container_address {
      display: flex;
      flex-wrap: wrap;
      gap: 1rem; }
      .section.contact_form .gform_wrapper .gform_body .ginput_container_address .ginput_full {
        width: 100%; }
      .section.contact_form .gform_wrapper .gform_body .ginput_container_address .ginput_left,
      .section.contact_form .gform_wrapper .gform_body .ginput_container_address .ginput_right {
        width: calc(50% - .5rem); }
  .section.contact_form .gform_wrapper .gform_footer {
    margin-top: 1.5rem; }
    .section.contact_form .gform_wrapper .gform_footer .gform_button {
      background: none;
      border: 1px solid #103d19;
      color: #103d19;
      padding: 0.75rem 1.25rem;
      font-size: 1rem;
      font-family: inherit;
      border-radius: .5rem;
      cursor: pointer;
      transition: all 0.4s cubic-bezier(0.28, 0, 0.18, 1); }
      .section.contact_form .gform_wrapper .gform_footer .gform_button:hover {
        background: #103d19;
        color: #fdfdf2; }
  .section.contact_form .gform_wrapper .gform_validation_errors {
    background: rgba(192, 43, 10, 0.05);
    border: none;
    border-radius: .25rem;
    padding: 1rem 1.5rem;
    margin-bottom: 1.5rem;
    text-align: center; }
    .section.contact_form .gform_wrapper .gform_validation_errors h2 {
      font-family: inter-variable, serif;
      font-size: 1rem;
      color: #c02b0a;
      margin: 0 0 0.5rem; }
      .section.contact_form .gform_wrapper .gform_validation_errors h2 .gform-icon {
        display: none; }
    .section.contact_form .gform_wrapper .gform_validation_errors ol {
      display: none; }
  .section.contact_form .gform_wrapper.gform_validation_error .gform_heading .validation_error {
    color: #c02b0a;
    font-size: .9rem;
    border: none;
    padding: 0;
    margin: 0 0 1rem; }
  .section.contact_form .gform_wrapper .gfield_error input[type="text"],
  .section.contact_form .gform_wrapper .gfield_error input[type="email"],
  .section.contact_form .gform_wrapper .gfield_error input[type="tel"],
  .section.contact_form .gform_wrapper .gfield_error textarea,
  .section.contact_form .gform_wrapper .gfield_error select {
    border-color: #c02b0a; }
    .section.contact_form .gform_wrapper .gfield_error input[type="text"]:focus,
    .section.contact_form .gform_wrapper .gfield_error input[type="email"]:focus,
    .section.contact_form .gform_wrapper .gfield_error input[type="tel"]:focus,
    .section.contact_form .gform_wrapper .gfield_error textarea:focus,
    .section.contact_form .gform_wrapper .gfield_error select:focus {
      border-color: #c02b0a; }
  .section.contact_form .gform_wrapper .gfield_error .gfield_validation_message {
    color: #c02b0a;
    font-size: .8rem;
    margin-top: .25rem; }
  .section.contact_form .gform_wrapper .gform_confirmation_message {
    color: #103d19;
    font-size: 1rem;
    padding: 1rem;
    background: rgba(16, 61, 25, 0.05);
    border-radius: .25rem; }
  @media (max-width: 767px) {
    .section.contact_form .gform_wrapper .gform_body .gform-grid-row {
      flex-direction: column;
      gap: 1rem; }
    .section.contact_form .gform_wrapper .gform_body .ginput_container_address .ginput_left,
    .section.contact_form .gform_wrapper .gform_body .ginput_container_address .ginput_right {
      width: 100%; } }

.section.media-text {
  padding: 4rem 0;
  border-top: 1px solid #ddd; }
  .section.media-text .image {
    width: calc(50% - 2rem);
    border-radius: .5rem;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    overflow: hidden; }
    .section.media-text .image figure {
      position: relative;
      width: 100%;
      padding-bottom: 100%; }
      .section.media-text .image figure img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover; }
  .section.media-text .content {
    width: calc(50% - 2rem);
    font-size: 1.2rem;
    line-height: 1.75;
    color: #555;
    position: sticky;
    top: 4rem; }
    .section.media-text .content h3 {
      font-size: 2rem;
      margin: 0 0 2rem;
      color: #000; }
      .section.media-text .content h3:before {
        content: '';
        display: block;
        width: 2.5rem;
        height: 3px;
        background: #8fbe8a;
        margin-bottom: 1rem; }
  .section.media-text.odd .image {
    order: 1; }
  .section.media-text.odd .content {
    order: 2; }
  .section.media-text.even .image {
    order: 2; }
  .section.media-text.even .content {
    order: 1; }
  @media (max-width: 767px) {
    .section.media-text {
      padding: 2rem 0 1rem; }
      .section.media-text .image {
        width: 100%; }
      .section.media-text .content {
        width: 100%;
        position: relative;
        top: auto;
        padding: 2rem 0 0; }
      .section.media-text.odd .image {
        order: 1; }
      .section.media-text.odd .content {
        order: 2; }
      .section.media-text.even .image {
        order: 1; }
      .section.media-text.even .content {
        order: 2; } }

.section.hero {
  width: 100%;
  height: calc(100vh - 6rem);
  margin: 0 auto;
  border-radius: .5rem;
  overflow: hidden;
  color: #fdfdf2;
  font-size: 1.2rem; }
  .section.hero .overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.75) 0%, rgba(39, 45, 51, 0) 100%);
    display: flex;
    flex-direction: column;
    justify-content: center;
    z-index: 1; }
    .section.hero .overlay .cta {
      width: 100%;
      max-width: calc(720px + 8rem);
      position: absolute;
      top: 50%;
      left: 50%;
      padding: 0 4rem;
      transform: translate3d(-50%, -50%, 0);
      text-align: center; }
      .section.hero .overlay .cta h1 em {
        font-style: italic;
        color: #8fbe8a; }
      .section.hero .overlay .cta p {
        max-width: 600px;
        margin: 1.5rem auto 0; }
  .section.hero figure,
  .section.hero video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; }
  .section.hero + .section {
    border-top: none; }
  @media (max-width: 1023px) {
    .section.hero {
      height: 50vh; } }
  @media (max-width: 767px) {
    .section.hero {
      height: 75vh; }
      .section.hero .overlay .cta {
        padding: 0 2rem;
        text-align: center; } }

.section.team {
  background: #f2f2e4;
  padding: 4rem 2rem;
  margin: 0 -2rem; }
  .section.team h2 {
    margin: 0 0 1rem; }
  .section.team .team-members {
    border-top: 1px solid #ddd;
    display: flex;
    gap: 4rem; }
    .section.team .team-members .team-member {
      background: #ffffff;
      box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
      border-radius: .5rem;
      overflow: hidden;
      text-align: center;
      margin: 2rem 0 0;
      flex: 1; }
      .section.team .team-members .team-member .photo {
        width: 100%;
        overflow: hidden;
        aspect-ratio: 3/4;
        margin-bottom: 1rem; }
        .section.team .team-members .team-member .photo img {
          width: 100%;
          height: 100%;
          object-fit: cover; }
      .section.team .team-members .team-member .role {
        font-size: .75rem;
        letter-spacing: 1px;
        text-transform: uppercase;
        color: #888;
        margin: 0.25rem 0 1rem; }
  @media (max-width: 1023px) {
    .section.team .team-members {
      gap: 1rem; }
      .section.team .team-members .team-member:after {
        right: -1rem; } }
  @media (max-width: 767px) {
    .section.team .team-members {
      flex-direction: column;
      border: none; }
      .section.team .team-members .team-member {
        padding: 0;
        margin: 0; }
        .section.team .team-members .team-member:after {
          display: none; } }

.section.wysiwyg {
  padding: 3rem 0;
  border-top: 1px solid #ddd; }
  .section.wysiwyg h2 {
    margin: 1rem 0; }
    .section.wysiwyg h2 em {
      font-style: italic;
      color: #32723e; }
    .section.wysiwyg h2 a {
      color: #32723e;
      /*
				white-space: nowrap;
				&:hover {
					&:after {
						position: absolute;
						left: 50%;
						transform: translateX(-50%);
						top: -3em;
						background-color: rgba(255,255,255,1);
						font-size: 1.5rem;
						line-height: 2.5em;
						max-width: 17em;
						height: 2.5em;
						white-space: nowrap;
						text-overflow: ellipsis;
						overflow: hidden;
						padding: 0 1em;
						border-radius: 4px;
						content: attr(data-title);
					}
				}
				*/ }
  .section.wysiwyg .eyebrow {
    display: block;
    font-size: .9rem;
    letter-spacing: 3px;
    text-transform: uppercase;
    color: #6da868;
    font-weight: 600;
    margin: 0 0 18px; }
  .section.wysiwyg p {
    font-size: 1.25rem; }
    .section.wysiwyg p.label {
      font-size: 1rem; }
  .section.wysiwyg blockquote p {
    border-left: 3px solid #8fbe8a;
    padding-left: 1.5rem;
    font-family: larken, serif;
    font-size: 1.5rem;
    font-weight: 400;
    color: #32723e;
    font-style: italic;
    margin: 2rem 0; }
  .section.wysiwyg.text-align-left {
    text-align: left; }
  .section.wysiwyg.text-align-center {
    text-align: center; }
  .section.wysiwyg-home {
    border-top: none;
    padding: 10rem 0; }
  .section.wysiwyg.first {
    border-top: none; }
  @media (max-width: 1023px) {
    .section.wysiwyg-home {
      padding: 6rem 0; } }
  @media (max-width: 767px) {
    .section.wysiwyg {
      padding: 2rem 0; }
      .section.wysiwyg-home {
        padding: 4rem 0; } }

.gt-header {
  margin: 0 auto;
  padding: 8rem 0 4rem;
  text-align: center; }
  .gt-header h1 {
    margin: 0 0 1rem; }
  .gt-header p {
    font-size: 18px;
    line-height: 1.75;
    color: #555;
    max-width: 580px;
    margin: 0 auto 40px; }
  @media (max-width: 767px) {
    .gt-header {
      padding: 4rem 0 2rem; } }

.gt-stats {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3rem; }
  .gt-stats > div {
    display: flex;
    flex-direction: column;
    align-items: center; }
    .gt-stats > div:not(:last-child) {
      padding-right: 3rem;
      border-right: 1px solid #d4d4aa; }
  @media (max-width: 767px) {
    .gt-stats {
      gap: 1rem; }
      .gt-stats > div:not(:last-child) {
        padding-right: 1rem;
        border-right: 1px solid #d4d4aa; } }

.gt-stat-num {
  font-family: larken, serif;
  font-size: 4rem;
  color: #103d19;
  line-height: 1; }
  @media (max-width: 767px) {
    .gt-stat-num {
      font-size: 2.5rem; } }

.gt-stat-label {
  font-size: .8rem;
  color: #999;
  margin-top: .25rem;
  text-transform: uppercase;
  letter-spacing: 1px; }
  @media (max-width: 767px) {
    .gt-stat-label {
      font-size: .75rem; } }

.gt-divider {
  border: none;
  border-top: 1px solid #d4d4aa; }

.gt-layout {
  background: #f2f2e4;
  border: 1px solid #ccc;
  border-radius: 1rem;
  padding: 2rem;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 30%;
  align-items: start; }
  @media (max-width: 1023px) {
    .gt-layout {
      grid-template-columns: 1fr; } }
  @media (max-width: 767px) {
    .gt-layout {
      padding: 1.5rem; } }

.gt-tabs-wrap {
  border-right: 1px solid #ccc;
  padding: 0 2rem 0 0; }
  @media (max-width: 1023px) {
    .gt-tabs-wrap {
      border: none;
      padding: 0; } }
  @media (max-width: 767px) {
    .gt-tabs-wrap {
      border-right: none;
      padding: 0;
      min-width: 0;
      width: 100%;
      overflow: hidden; } }

.gt-tabs {
  border-bottom: none;
  background: rgba(0, 0, 0, 0.06);
  border-radius: .5rem;
  padding: .25rem;
  gap: 4px;
  display: inline-flex; }
  @media (max-width: 767px) {
    .gt-tabs {
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
      scrollbar-width: none;
      width: 100%; }
      .gt-tabs::-webkit-scrollbar {
        display: none; } }

.gt-tab {
  border: none;
  outline: none;
  font-family: larken, serif;
  font-size: 1rem;
  padding: 0.5rem 1.5rem;
  border-radius: .5rem;
  color: #103d19;
  background: transparent;
  transition: all 0.2s cubic-bezier(0.28, 0, 0.18, 1);
  cursor: pointer; }
  .gt-tab:hover:not(.is-active) {
    color: #333;
    background: rgba(255, 255, 255, 0.5); }
  .gt-tab.is-active {
    background: #fff;
    color: #2a5c27;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.12), 0 0 0 1px rgba(0, 0, 0, 0.05); }
  @media (max-width: 1023px) {
    .gt-tab {
      padding: 0.75rem 1rem; } }
  @media (max-width: 767px) {
    .gt-tab {
      flex-shrink: 0;
      font-size: 0.9rem;
      padding: 0.5rem 1rem; } }

.gt-panel {
  display: none; }
  .gt-panel.is-active {
    display: block; }

.gt-panel-summary {
  font-family: larken, serif;
  font-size: 2rem;
  font-weight: 400;
  padding: 2rem 0;
  border-bottom: 1px solid #ddd;
  margin: 0; }
  @media (max-width: 767px) {
    .gt-panel-summary {
      font-size: 1.25rem;
      padding: 1.5rem 0; } }

.gt-acc-item {
  border-bottom: 1px solid #ddd; }

.gt-acc-btn {
  width: 100%;
  text-align: left;
  padding: 1rem 0;
  background: none;
  border: none;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: larken, serif;
  font-size: 1.5rem;
  transition: all 0.4s cubic-bezier(0.28, 0, 0.18, 1); }
  .gt-acc-btn:hover {
    color: #2a5c27; }
  .gt-acc-btn[aria-expanded="true"] {
    background: none;
    color: #2a5c27; }
  .gt-acc-btn svg {
    flex-shrink: 0;
    transition: transform 0.4s cubic-bezier(0.28, 0, 0.18, 1);
    height: 1.5rem;
    width: auto; }
  .gt-acc-btn[aria-expanded="true"] svg {
    transform: rotate(180deg); }
  @media (max-width: 767px) {
    .gt-acc-btn {
      font-size: 1rem; } }

.gt-acc-panel {
  overflow: hidden;
  max-height: 0;
  transition: max-height 0.4s cubic-bezier(0.28, 0, 0.18, 1); }
  .gt-acc-panel-wrap {
    display: flex;
    gap: 2rem;
    padding: 0 0 1rem 0;
    align-items: center;
    flex-wrap: wrap; }
  @media (max-width: 767px) {
    .gt-acc-panel {
      flex-direction: column;
      gap: 1rem; } }

.gt-acc-image {
  flex: 0 0 25%;
  max-width: 100%;
  border-radius: .5rem;
  overflow: hidden;
  padding-bottom: 17.5%; }
  @media (max-width: 767px) {
    .gt-acc-image {
      flex: none;
      width: 100%;
      padding-bottom: 56%; } }

.gt-acc-content {
  flex: 1;
  min-width: 180px; }

.gt-form-wrap {
  position: sticky;
  top: 4rem;
  padding: 0 0 0 2rem; }
  @media (max-width: 1023px) {
    .gt-form-wrap {
      top: auto;
      position: relative;
      padding: 2rem 0 0; } }
  .gt-form-wrap .gsection,
  .gt-form-wrap .gform-field-label,
  .gt-form-wrap .gfield_label,
  .gt-form-wrap .gform-field-label--type-sub {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0); }
  .gt-form-wrap .gf_clear {
    display: none; }
  .gt-form-wrap .gform_title {
    font-family: larken, serif;
    font-size: 2rem;
    margin: 0 0 1rem; }
  .gt-form-wrap .gform_description {
    font-size: 13px;
    color: #888;
    margin: 0 0 20px;
    line-height: 1.5; }
  .gt-form-wrap .gform_fields {
    display: flex;
    flex-direction: column;
    gap: 8px; }
  .gt-form-wrap .ginput_container_name {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px; }
    .gt-form-wrap .ginput_container_name span {
      display: block; }
  .gt-form-wrap .ginput_container_email {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px; }
    .gt-form-wrap .ginput_container_email span {
      display: block; }
  .gt-form-wrap .ginput_container_address {
    display: grid;
    grid-template-columns: 2fr 1.5fr 1fr;
    gap: 8px; }
    .gt-form-wrap .ginput_container_address span {
      display: block; }
    .gt-form-wrap .ginput_container_address .address_line_1 {
      grid-column: 1 / -1; }
    .gt-form-wrap .ginput_container_address .address_city {
      grid-column: 1; }
    .gt-form-wrap .ginput_container_address .address_state {
      grid-column: 2; }
    .gt-form-wrap .ginput_container_address .address_zip {
      grid-column: 3; }
    .gt-form-wrap .ginput_container_address .address_country {
      display: none; }
  .gt-form-wrap input[type="text"],
  .gt-form-wrap input[type="email"],
  .gt-form-wrap input[type="tel"],
  .gt-form-wrap select,
  .gt-form-wrap textarea {
    width: 100%;
    padding: 8px 10px;
    border: 1px solid #c8c89e;
    border-radius: 4px;
    background: #fafaf8;
    font-family: inter-variable, sans-serif;
    font-size: 13px;
    color: #333;
    box-sizing: border-box;
    outline: none; }
    .gt-form-wrap input[type="text"]:focus,
    .gt-form-wrap input[type="email"]:focus,
    .gt-form-wrap input[type="tel"]:focus,
    .gt-form-wrap select:focus,
    .gt-form-wrap textarea:focus {
      border-color: #2a5c27; }
  .gt-form-wrap textarea {
    resize: vertical;
    min-height: 75px; }
  .gt-form-wrap input[type="submit"] {
    width: 100%;
    margin-top: 4px;
    padding: 11px;
    background: #2a5c27;
    color: #fff;
    border: none;
    border-radius: 4px;
    font-family: larken, serif;
    font-size: 15px;
    letter-spacing: 0.02em;
    cursor: pointer;
    transition: background 0.2s; }
    .gt-form-wrap input[type="submit"]:hover {
      background: #1a3d1a; }
  .gt-form-wrap .gform_validation_errors {
    background: rgba(192, 43, 10, 0.05);
    border: none;
    border-radius: .25rem;
    padding: 1rem 1.5rem;
    margin-bottom: 1.5rem;
    text-align: center; }
    .gt-form-wrap .gform_validation_errors h2 {
      font-family: inter-variable, serif;
      font-size: 1rem;
      color: #c02b0a;
      margin: 0 0 0.5rem; }
      .gt-form-wrap .gform_validation_errors h2 .gform-icon {
        display: none; }
    .gt-form-wrap .gform_validation_errors ol {
      display: none; }
  .gt-form-wrap.gform_validation_error .gform_heading .validation_error {
    color: #c02b0a;
    font-size: .9rem;
    border: none;
    padding: 0;
    margin: 0 0 1rem; }
  .gt-form-wrap .gfield_error input[type="text"],
  .gt-form-wrap .gfield_error input[type="email"],
  .gt-form-wrap .gfield_error input[type="tel"],
  .gt-form-wrap .gfield_error textarea,
  .gt-form-wrap .gfield_error select {
    border-color: #c02b0a; }
    .gt-form-wrap .gfield_error input[type="text"]:focus,
    .gt-form-wrap .gfield_error input[type="email"]:focus,
    .gt-form-wrap .gfield_error input[type="tel"]:focus,
    .gt-form-wrap .gfield_error textarea:focus,
    .gt-form-wrap .gfield_error select:focus {
      border-color: #c02b0a; }
  .gt-form-wrap .gfield_error .gfield_validation_message {
    color: #c02b0a;
    font-size: .8rem;
    margin-top: .25rem; }
  .gt-form-wrap .gform_confirmation_message {
    color: #103d19;
    font-size: 1rem;
    padding: 1rem;
    background: rgba(16, 61, 25, 0.05);
    border-radius: .25rem; }
  @media (max-width: 767px) {
    .gt-form-wrap {
      position: relative;
      top: auto;
      padding: 1.5rem 0 0; }
      .gt-form-wrap .ginput_container_name,
      .gt-form-wrap .ginput_container_email {
        grid-template-columns: 1fr; }
      .gt-form-wrap .ginput_container_address {
        grid-template-columns: 1fr; }
        .gt-form-wrap .ginput_container_address .address_city,
        .gt-form-wrap .ginput_container_address .address_state,
        .gt-form-wrap .ginput_container_address .address_zip {
          grid-column: 1; } }

/**
 * Swiper 5.3.6
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://swiperjs.com
 *
 * Copyright 2014-2020 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: February 29, 2020
 */
@font-face {
  font-family: swiper-icons;
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal; }

:root {
  --swiper-theme-color: #007aff; }

.swiper-container {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  z-index: 1; }

.swiper-container-vertical > .swiper-wrapper {
  flex-direction: column; }

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box; }

.swiper-container-android .swiper-slide, .swiper-wrapper {
  transform: translate3d(0px, 0, 0); }

.swiper-container-multirow > .swiper-wrapper {
  flex-wrap: wrap; }

.swiper-container-multirow-column > .swiper-wrapper {
  flex-wrap: wrap;
  flex-direction: column; }

.swiper-container-free-mode > .swiper-wrapper {
  transition-timing-function: ease-out;
  margin: 0 auto; }

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform; }

.swiper-slide-invisible-blank {
  visibility: hidden; }

.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide {
  height: auto; }

.swiper-container-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform,height; }

.swiper-container-3d {
  perspective: 1200px; }

.swiper-container-3d .swiper-cube-shadow, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-wrapper {
  transform-style: preserve-3d; }

.swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10; }

.swiper-container-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), transparent); }

.swiper-container-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), transparent); }

.swiper-container-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), transparent); }

.swiper-container-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), transparent); }

.swiper-container-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  -ms-overflow-style: none; }

.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none; }

.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start; }

.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
  scroll-snap-type: x mandatory; }

.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
  scroll-snap-type: y mandatory; }

:root {
  --swiper-navigation-size: 44px; }

.swiper-button-next, .swiper-button-prev {
  position: absolute;
  top: 50%;
  width: calc(var(--swiper-navigation-size)/ 44 * 27);
  height: var(--swiper-navigation-size);
  margin-top: calc(-1 * var(--swiper-navigation-size)/ 2);
  z-index: 10;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--swiper-navigation-color, var(--swiper-theme-color)); }

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  opacity: .35;
  cursor: auto;
  pointer-events: none; }

.swiper-button-next:after, .swiper-button-prev:after {
  font-family: swiper-icons;
  font-size: var(--swiper-navigation-size);
  text-transform: none !important;
  letter-spacing: 0;
  text-transform: none;
  font-variant: initial; }

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
  left: 10px;
  right: auto; }

.swiper-button-prev:after, .swiper-container-rtl .swiper-button-next:after {
  content: 'prev'; }

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
  right: 10px;
  left: auto; }

.swiper-button-next:after, .swiper-container-rtl .swiper-button-prev:after {
  content: 'next'; }

.swiper-button-next.swiper-button-white, .swiper-button-prev.swiper-button-white {
  --swiper-navigation-color: #ffffff; }

.swiper-button-next.swiper-button-black, .swiper-button-prev.swiper-button-black {
  --swiper-navigation-color: #000000; }

.swiper-button-lock {
  display: none; }

.swiper-pagination {
  position: absolute;
  text-align: center;
  transition: .3s opacity;
  transform: translate3d(0, 0, 0);
  z-index: 10; }

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0; }

.swiper-container-horizontal > .swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
  bottom: 10px;
  left: 0;
  width: 100%; }

.swiper-pagination-bullets-dynamic {
  overflow: hidden;
  font-size: 0; }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transform: scale(0.33);
  position: relative; }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66); }

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33); }

.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #000;
  opacity: .2; }

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer; }

.swiper-pagination-bullet-active {
  opacity: 1;
  background: var(--swiper-pagination-color, var(--swiper-theme-color)); }

.swiper-container-vertical > .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  transform: translate3d(0px, -50%, 0); }

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 6px 0;
  display: block; }

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  top: 50%;
  transform: translateY(-50%);
  width: 8px; }

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  transition: 0.2s transform, 0.2s top; }

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 4px; }

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
  left: 50%;
  transform: translateX(-50%);
  white-space: nowrap; }

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s left; }

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  transition: 0.2s transform, 0.2s right; }

.swiper-pagination-progressbar {
  background: rgba(0, 0, 0, 0.25);
  position: absolute; }

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  background: var(--swiper-pagination-color, var(--swiper-theme-color));
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform: scale(0);
  transform-origin: left top; }

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
  transform-origin: right top; }

.swiper-container-horizontal > .swiper-pagination-progressbar, .swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0; }

.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-container-vertical > .swiper-pagination-progressbar {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0; }

.swiper-pagination-white {
  --swiper-pagination-color: #ffffff; }

.swiper-pagination-black {
  --swiper-pagination-color: #000000; }

.swiper-pagination-lock {
  display: none; }

.swiper-scrollbar {
  border-radius: 10px;
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1); }

.swiper-container-horizontal > .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: 3px;
  z-index: 50;
  height: 5px;
  width: 98%; }

.swiper-container-vertical > .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%; }

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  border-radius: 10px;
  left: 0;
  top: 0; }

.swiper-scrollbar-cursor-drag {
  cursor: move; }

.swiper-scrollbar-lock {
  display: none; }

.swiper-zoom-container {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center; }

.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain; }

.swiper-slide-zoomed {
  cursor: move; }

.swiper-lazy-preloader {
  width: 42px;
  height: 42px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -21px;
  margin-top: -21px;
  z-index: 10;
  transform-origin: 50%;
  animation: swiper-preloader-spin 1s infinite linear;
  box-sizing: border-box;
  border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
  border-radius: 50%;
  border-top-color: transparent; }

.swiper-lazy-preloader-white {
  --swiper-preloader-color: #fff; }

.swiper-lazy-preloader-black {
  --swiper-preloader-color: #000; }

@keyframes swiper-preloader-spin {
  100% {
    transform: rotate(360deg); } }

.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000; }

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
  transition-timing-function: ease-out; }

.swiper-container-fade .swiper-slide {
  pointer-events: none;
  transition-property: opacity; }

.swiper-container-fade .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-fade .swiper-slide-active, .swiper-container-fade .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube {
  overflow: visible; }

.swiper-container-cube .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1;
  visibility: hidden;
  transform-origin: 0 0;
  width: 100%;
  height: 100%; }

.swiper-container-cube .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-cube.swiper-container-rtl .swiper-slide {
  transform-origin: 100% 0; }

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-next + .swiper-slide, .swiper-container-cube .swiper-slide-prev {
  pointer-events: auto;
  visibility: visible; }

.swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-cube .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }

.swiper-container-cube .swiper-cube-shadow {
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: .6;
  -webkit-filter: blur(50px);
  filter: blur(50px);
  z-index: 0; }

.swiper-container-flip {
  overflow: visible; }

.swiper-container-flip .swiper-slide {
  pointer-events: none;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  z-index: 1; }

.swiper-container-flip .swiper-slide .swiper-slide {
  pointer-events: none; }

.swiper-container-flip .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
  pointer-events: auto; }

.swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-top {
  z-index: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden; }
