/* Theme base styles */

:root {

	/* Spacing */

	--container-width: 1416px;
  --container-width-medium: 1176px;
	--container-width-narrow: 940px;
	--vertical-spacing: 8rem;
	--gap: 2rem;
	--gap-xxs: calc(var(--gap) / 5);
	--gap-xs: calc(var(--gap) / 2.5);
	--gap-sm: calc(var(--gap) / 1.25);
  --gap-24: calc(var(--gap) * 1.2);
	--gap-md: calc(var(--gap) * 1.6);
	--gap-lg: calc(var(--gap) * 2);
  --gap-56: calc(var(--gap) * 2.8);
  --gap-72: calc(var(--gap) * 3.6);
	--gap-xl: calc(var(--gap) * 4);
	--gap-xxl: calc(var(--gap) * 4.8);

	/* Colors */

	--base-color: #2F2D2D;
	--green: #1B4D2C;
	--green-light: #00905E;
  --shadow-green: #2E3C43;
  --mint: #E5F4EF;
	--orange: #DF7B00;
	--orange-light: #EC9223;
	--cream: #FAF7F1;

	--black: #000;
	--dark-gray: #2F2D2D;
	--light-gray: #F4F2E6;
	--border-color: rgba(47, 45, 45, 0.08);
	--medium-gray: #A69C96; /* form borders, form placeholders, table borders, table header, table footer, dividers */
	--white: #fff;

	/* Typography */

	--base-font-size: 1.6rem;
	--base-line-height: 1.75;
	--primary-font-family: 'Montserrat', sans-serif;
}

/* Generic */

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

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

@media (max-width: 767px) {
  .oembed_container {
    margin-bottom: 1.5rem;
  }
}
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

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

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

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

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

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

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bold;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

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

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 85%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

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

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px solid initial;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

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

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

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

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

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

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}

/* Objects */

.grid {
  display: grid;
}

.flex, .flex-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display:flex;
}

.flex-wrap {
  -ms-flex-wrap: wrap;
  flex-wrap:wrap;
}

.flex-item {
  -webkit-box-flex: 1;
  -ms-flex: 1 0;
  flex:1 0
}

.flexInline {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display:inline-flex
}

.flex-column {
  flex-direction:column
}

.flex-column-reverse {
  flex-direction:column-reverse
}

.flex-row {
  flex-direction:row
}

.flex-row-reverse {
  flex-direction:row-reverse
}

.flex-middle {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items:center
}

.flex-top {
  -webkit-box-align: flex-start;
  -ms-flex-align: flex-start;
  align-items:flex-start
}

.flex-bottom {
  -webkit-box-align: flex-end;
  -ms-flex-align: flex-end;
  align-items:flex-end
}

.flex-center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content:center
}

.flex-end {
  -webkit-box-pack: flex-end;
  -ms-flex-pack: flex-end;
  justify-content:flex-end
}

.flex-self {
  -ms-flex-item-align: center;
  -ms-grid-row-align: center;
  align-self:center
}

.flex-stretch {
  -webkit-box-align: stretch;
  -ms-flex-align: stretch;
  align-items:stretch
}

.flex-space {
  -ms-flex-pack: distribute;
  justify-content:space-around
}

.flex-space-between {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content:space-between
}

@media (max-width: 767px) {
  .flex-column-reverse, .flex:not(.flex-row) {
      flex-direction:column
  }

  .flex-row-reverse {
      flex-direction:row
  }
}

.block {
  display: block;
}


.col-full {
  width: 100%;
}

.gap {
  gap: var(--gap);
}

.gap-24 {
  gap: var(--gap-24);
}

.gap-56 {
  gap: var(--gap-56);
}

.gap-72 {
  gap: var(--gap-72);
}

.gap-xxs {
  gap: var(--gap-xxs);
}

.gap-xs {
  gap: var(--gap-xs);
}

.gap-sm {
  gap: var(--gap-sm);
}

.gap-md {
  gap: var(--gap-md);
}

.gap-lg {
  gap: var(--gap-lg);
}

.gap-xl {
  gap: var(--gap-xl);
}

.gap-xxl {
  gap: var(--gap-xxl);
}




.content-wrapper {
  max-width: var(--container-width);
  margin: 0 auto;
}

.content-wrapper--medium {
  max-width: var(--container-width-medium);
}

.content-wrapper--narrow {
  max-width: var(--container-width-narrow);
}

@media (min-width: 1456px) {
  .content-wrapper__left {
    padding-right: 0 !important;
    margin-left: calc((100% - var(--container-width) - 2rem) / 2);
    /*margin-right: -2rem;*/
  }

  .content-wrapper__right {
    padding-right: 0 !important;
    margin-right: calc((100% - var(--container-width) - 2rem) / 2);
    /*margin-left: -2rem;*/
  }


  .content-wrapper__left .content-wrapper,
  .content-wrapper__right .content-wrapper {
    margin: 0;
  }
}

section,
.dnd-section:not([class*='force-full-width']),
.content-wrapper--vertical-spacing {
  padding: calc(var(--vertical-spacing) / 2) 2rem;
  /* position: relative; */
  z-index: 2;
  background: var(--white);
}

.dnd-section {
  background: var(--white);
  position: relative;
}

.dnd-section > .row-fluid {
  max-width: var(--container-width);
  margin: 0 auto;
}

.dnd-section .row-module {
  margin: 0 calc(var(--gap) * -1);
}

.dnd-section > .row-fluid {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--container-width);
  position: relative;
}

.dnd-section > .row-fluid .hs-private {
  width: 100%; /* for the dnd add module here placeholder */
}

@media (min-width: 768px) {
  .dnd-section .row-fluid {
    -webkit-column-gap: var(--gap);
       -moz-column-gap: var(--gap);
            column-gap: var(--gap);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }

  .dnd-section [class*='span'] {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }

  
    .dnd-section .span0 {
      flex-basis: 0.0%;
    }
  
    .dnd-section .span1 {
      flex-basis: 8.333333333333332%;
    }
  
    .dnd-section .span2 {
      flex-basis: 16.666666666666664%;
    }
  
    .dnd-section .span3 {
      flex-basis: 25.0%;
    }
  
    .dnd-section .span4 {
      flex-basis: 33.33333333333333%;
    }
  
    .dnd-section .span5 {
      flex-basis: 41.66666666666667%;
    }
  
    .dnd-section .span6 {
      flex-basis: 50.0%;
    }
  
    .dnd-section .span7 {
      flex-basis: 58.333333333333336%;
    }
  
    .dnd-section .span8 {
      flex-basis: 66.66666666666666%;
    }
  
    .dnd-section .span9 {
      flex-basis: 75.0%;
    }
  
    .dnd-section .span10 {
      flex-basis: 83.33333333333334%;
    }
  
    .dnd-section .span11 {
      flex-basis: 91.66666666666666%;
    }
  
    .dnd-section .span12 {
      flex-basis: 100.0%;
    }
  
}

@media (min-width: 992px) {
  section,
  .dnd-section:not([class*='force-full-width']),
  .content-wrapper--vertical-spacing {
    padding: var(--vertical-spacing) 2rem;
  }
}

/* Visibilty classes */

.hide {
  display: none !important;
}

.show {
  display: block;
}

.invisible {
  visibility: hidden;
}

.hidden {
  display: none !important;
  visibility: hidden;
}

/* Responsive visibilty classes */

.visible-phone {
  display: none !important;
}

.visible-tablet {
  display: none !important;
}

.hidden-desktop {
  display: none !important;
}

@media (max-width: 767px) {
  .visible-phone {
    display: inherit !important;
  }

  .hidden-phone {
    display: none !important;
  }

  .hidden-desktop {
    display: inherit !important;
  }

  .visible-desktop {
    display: none !important;
  }
}

@media (min-width: 768px) and (max-width: 1139px) {
  .visible-tablet {
    display: inherit !important;
  }

  .hidden-tablet {
    display: none !important;
  }

  .hidden-desktop {
    display: inherit !important;
  }

  .visible-desktop {
    display: none !important;
  }
}

/* Elements */

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

html[lang^="ja"] body,
html[lang^="zh"] body,
html[lang^="ko"] body {
  line-break: strict;
  word-break: break-all;
}

* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  color: var(--base-color);
  font-family: var(--primary-font-family);
  font-size: var(--base-font-size);
  line-height: var(--base-line-height);
}


strong, b {
  font-weight: 600;
}

/* Anchors */

a:not(.button) {
  color: var(--shadow-green);
  text-decoration: underline;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

a:not(.button):hover,
a:not(.button):focus {
  color: var(--green);
  text-decoration: none;
}

a:not(.button):active {
  color: var(--green);
}

/* Paragraphs */

p {
  margin: 0 0 1.6rem;
}

/* Headings */

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  margin: 0 0 1.6rem;
  line-height: 1.25;
  font-weight: 600;
}

h1,
.h1,
.has-h1 h2 {
  font-size: 3.2rem;
}
h2,
.h2 {
  font-size: 2.8rem;
}
h3,
.h3,
.has-h3 h2 {
  font-size: 2.4rem;
}
h4,
.h4,
.has-h4 h3 {
  font-size: 2rem;
}
h5,
.h5,
.has-h5 h2,
.has-h5 h3 {
  font-size: 1.8rem;
}
h6,
.h6 {
  font-size: 1.8rem;
}

.overline {
  font-size: 1.4rem;
  font-weight: 600;
  text-transform: uppercase;
  color: var(--green);
}

@media (min-width: 992px) {
  p,
  h1,
  .h1,
  h2,
  .h2,
  h3,
  .h3,
  h4,
  .h4,
  h5,
  .h5,
  h6,
  .h6 {
    margin: 0 0 2.4rem;
  }

  h1,
  .h1,
  .has-h1 h2 {
    font-size: 5.6rem;
    line-height: 1.1;
    letter-spacing: -1px;
  }
  h2,
  .h2 {
    font-size: 4rem;
  }
  h3,
  .h3,
  .has-h3 h2 {
    font-size: 3.2rem;
  }
  h4,
  .h4,
  .has-h4 h3 {
    font-size: 2.8rem;
  }
  h5,
  .h5,
  .has-h5 h2,
  .has-h5 h3{
    font-size: 2.4rem;
  }

  .overline {
    font-size: 1.6rem;
  }
}

.body {
  font-size: 1.6rem;
}

.body-sm {
  font-size: 1.4rem;
}

h2 .body-sm {
  line-height: 1.5;
}

.subtitle {
  font-weight: 600;
  font-size: 2rem;
  line-height: 1.75;
}

.subtitle-2,
.has-subtitle-2 h3 {
  font-weight: 600;
  font-size: 1.8rem;
  line-height: var(--base-line-height);
}

.font-400 {
  font-weight: 400;
}

.font-600 {
  font-weight: 600;
}

/* Lists */

ul,
ol {
  margin: 0 0 2rem;
  padding-left: 2rem;
}

ul ul,
ol ul,
ul ol,
ol ol {
  margin: 0;
}

ul.no-list {
  margin: 0;
  list-style: none;
  padding-left: 0;
}

/* Checkmarks UL */

ul.checkmarks {
  list-style: none;
  margin-block: 3.2rem;
  padding: 0;  
}

ul.checkmarks li {
  margin-bottom: 2.4rem;
  padding-left: 32px;
  position: relative;
}

ul.checkmarks li::before {
  content: '';
  background-image: url('data:image/svg+xml,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M9.99935 18.3346C14.6017 18.3346 18.3327 14.6036 18.3327 10.0013C18.3327 5.39893 14.6017 1.66797 9.99935 1.66797C5.39697 1.66797 1.66602 5.39893 1.66602 10.0013C1.66602 14.6036 5.39697 18.3346 9.99935 18.3346ZM14.5469 7.88223L9.16602 13.2631L5.66009 9.75722L6.83861 8.57872L9.16602 10.9061L13.3684 6.70371L14.5469 7.88223Z" fill="%2300905E"/></svg>');
  background-size: contain;
  background-repeat: no-repeat;
  height: 20px;
  width: 20px;
  position: absolute;
  left: 0;
  top: 4px;
}

/* 2 Column Lists */

ul.col2 li, 
ol.col2 li {
  margin-bottom: 0.8rem;
}

@media (min-width: 768px) {
  ul.col2, 
  ol.col2 {
    column-count: 2;
    column-gap: 1.6rem;
  }
}

/* Code blocks */

pre {
  overflow: auto;
}

code {
  vertical-align: bottom;
}

/* Blockquotes */

blockquote {
  border-left: 6px solid var(--orange);
  font-size: 2.4rem;
  font-style: italic;
  margin: 2rem 0;
  padding-left: 2rem;
}

/* Horizontal rules */

hr {
  border: none;
  border-bottom: 1px solid var(--medium-gray);
  margin: 4rem auto;
}
.button-container:empty {
  display: none;
}

.button,
form input[type="submit"],
form .hs-button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 1.1rem 1.9rem;
  border: 1px solid;
  border-radius: .6rem;
  gap: 1.2rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  text-align: center;
  white-space: normal;
  cursor: pointer;

  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.25px;
  font-weight: 600;
  text-decoration: none;
}

.button:hover {
  text-decoration: none;
}

@media (max-width: 767px) {
  .hs_cos_wrapper_type_module:has(> .button-wrapper) {
    width: 100%;
  }

  .button,
  form input[type="submit"],
  form .hs-button {
    display: flex;
    justify-content: center;
    width: 100%;
    gap: 1rem;
  }

  .button[class*="button--text"] {
    display: inline-flex;
    justify-content: flex-start;
    text-align: left;
    width: auto;
  }

  .button:not([class*="button--text"]),
  .footer-top form input[type="submit"] {
    padding: 1rem 1.6rem;
    font-size: 1.4rem;
    line-height: 1.25;
  }
}

@media (max-width: 1140px) {
  .menu-primary .button.mobile__button {
    padding: 1rem 1.6rem;
    font-size: 1.2rem;
    line-height: 1.25;
  }
}

/* Primary */

.button--primary,
.button--primary:focus,
.button--primary:active,
form input[type="submit"],
form input[type="submit"]:focus,
form input[type="submit"]:active,
form .hs-button,
form .hs-button:focus,
form .hs-button:active {
  background-color: var(--orange);
  border-color: var(--orange);
  color: var(--base-color);
}

.button--primary:hover,
form input[type="submit"]:hover,
form .hs-button:hover {
  background-color: var(--orange-light);
  border-color: var(--orange-light);
  color: var(--base-color);
  text-decoration: none;
}

/* Secondary */

.button--secondary,
.button--secondary:focus,
.button--secondary:active {
  background-color: var(--green);
  border-color: var(--green);
  color: var(--white);
}

.button--secondary:hover {
  background-color: var(--green-light);
  border-color: var(--green-light);
  color: var(--white);
  text-decoration: none;
}

.button--secondary .button__icon img {
  filter: saturate(1) grayscale(0) contrast(1) brightness(1) invert(1);
}

/* White */

.button--white,
.button--white:focus,
.button--white:active  {
  background-color: var(--white);
  border-color: var(--white);
  color: var(--base-color);
}

.button--white:hover{
  background-color: var(--orange-light);
  border-color: var(--orange-light);
  color: var(--base-color);
}

.button--white.active {
  background-color: var(--white);
  border-color: var(--orange-light);
  color: var(--base-color);
  text-decoration: none;
}

/* Outline */

.button--outline,
.button--outline:focus,
.button--outline:active {
  background-color: transparent;
  border-color: var(--orange);
  color: var(--base-color);
}

.button--outline:hover {
  background-color: var(--orange-light);
  border-color: var(--orange-light);
  color: var(--base-color);
  text-decoration: none;
}

/* Outline Alt */

.button--outline-alt,
.button--outline-alt:focus,
.button--outline-alt:active {
  background-color: transparent;
  border-color: var(--green);
  color: var(--green);
}

.button--outline-alt:hover,
.button--outline-alt.is-active {
  background-color: var(--green-light);
  border-color: var(--green-light);
  color: var(--white);
  text-decoration: none;
}

/* Outline White */

.button--outline-white,
.button--outline-white:focus,
.button--outline-white:active {
  background-color: transparent;
  border-color: var(--white);
  color: var(--white);
}

.button--outline-white:hover {
  background-color: var(--orange-light);
  border-color: var(--orange-light);
  color: var(--base-color);
}

/* Text Primary */

.button--text-primary,
.button--text-primary:focus,
.button--text-primary:active {
  background-color: transparent;
  border-color: transparent;
  color: var(--base-color);
  text-align: left;
  text-decoration: underline;
  text-decoration-color: transparent;
  text-underline-offset: 7px;
  text-decoration-thickness: 1px;
}

.button--text-primary:hover {
  text-decoration-color: var(--orange-light);
  color: var(--base-color);
}

/* Text Secondary */

.button--text-secondary,
.button--text-secondary:focus,
.button--text-secondary:active {
  padding: 0;
  background: none;
  color: var(--base-color);
  border: 0;
  border-radius: 0;
  text-align: left;
  text-decoration: underline;
  text-decoration-color: var(--orange-light);
  text-underline-offset: 7px;
  text-decoration-thickness: 1px;
}

.button--text-secondary:hover {
  color: var(--base-color);
  text-decoration: underline;
  text-decoration-color: var(--base-color);
}

/* Text Tertiary */

.button--text-tertiary,
.button--text-tertiary:focus,
.button--text-tertiary:active {
  padding: 0;
  background: none;
  color: var(--base-color);
  border: 0;
  border-radius: 0;
  text-align: left;
  text-decoration: underline;
  text-decoration-color: transparent;
  text-underline-offset: 7px;
  text-decoration-thickness: 1px;
}

.button--text-tertiary:hover {
  color: var(--base-color);
  text-decoration: underline;
  text-decoration-color: var(--base-color);
}

/* Text Quaternary */

.button--text-quaternary,
.button--text-quaternary:focus,
.button--text-quaternary:active {
  padding: 0;
  background: none;
  color: var(--green);
  border: 0;
  border-radius: 0;
  text-align: left;
  text-decoration: underline;
  text-decoration-color: var(--green);
  text-underline-offset: 7px;
  text-decoration-thickness: 1px;
}

.button--text-quaternary:hover {
  color: var(--base-color);
  text-decoration: underline;
  text-decoration-color: var(--base-color);
}

/* Text Secondary - Alt */

.button--text-secondary-alt,
.button--text-secondary-alt:focus,
.button--text-secondary-alt:active {
  padding: 0;
  background: none;
  color: var(--base-color);
  border-color: transparent;
  border-radius: 0;
  border: 0;
  gap: var(--gap-xs);
  text-align: left;
}

.button--text-secondary-alt:hover {
  text-decoration: none !important;
}

.button--text-secondary-alt .button__label,
.button--text-secondary-alt:focus .button__label,
.button--text-secondary-alt:active .button__label {
  color: var(--base-color);

  text-decoration: underline;
  text-decoration-color: var(--orange-light);
  text-underline-offset: 7px;
  text-decoration-thickness: 1px;
}

.button--text-secondary-alt:hover .button__label {
  color: var(--base-color);
  text-decoration-color: var(--base-color);
}

/* Text White */

.button--text-white,
.button--text-white:focus,
.button--text-white:active {
  background-color: transparent;
  border-color: transparent;
  color: var(--white);
}

.button--text-white:hover {
  border-color: var(--white);
  color: var(--white);
}

/* Text White Alt */

.button--text-white-alt,
.button--text-white-alt:focus,
.button--text-white-alt:active {
  padding: 0;
  background: none;
  color: var(--white);
  border: 0;
  border-radius: 0;
  border-bottom: 1px solid transparent;
}

.button--text-white-alt:hover {
  color: var(--white);
  border-bottom-color: var(--orange-light);
}

/* Icon */

.button__icon {
  /* -ms-flex-negative: 0;
  flex-shrink: 0;
  flex: 0 0 2.4rem; */
  display: flex;
  height: 2.4rem;
  width: 2.4rem;
}

.button__icon img {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  flex: 0 0 2.4rem;
  height: 2.4rem;
}

.button__icon:has(svg) {
  flex: 0 0 1.75rem;
  height: 2rem;
}

.button__icon span {
  display: block;
}

.button__icon svg {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  flex: 0 0 2rem;
  height: 2rem;
}

.button svg {
  pointer-events: none;
}

/* Full */

.button--full,
form input[type="submit"],
form .hs-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
}

/* Small */

.button--small {
  padding: .8rem 1.5rem;
  font-size: 1.4rem;
  line-height: 1.25;
}

.button--small[class*="--text"] {
  padding: 0;
  line-height: 1.8rem;
}

/* Large */

.button--large {
  padding: 1.7rem 2.3rem;
}

/* CTA Override */

a.cta_button {
  -webkit-box-sizing: border-box !important;
  box-sizing: border-box !important;
}


/* sup, sub */

.button:not(.button__icon):has(sup),
.button:not(.button__icon):has(sub) {
  gap: 0;
}
.bg-burst {
  display: block;
  position: absolute;
  bottom: -8rem;
  left: 0;
  right: 0;
  height: 16rem;
  background: var(--orange-light);
  opacity: 0.33;
  filter: blur(100px);
}

.bg-green {
  background: var(--green);
}

.bg-light-green {
  background: var(--green-light);
}

.bg-shadow-green {
  background: var(--shadow-green);
}

.bg-mint {
  background: var(--mint);
}

.bg-orange {
  background: var(--orange);
}

.bg-light-orange {
  background: var(--orange-light);
}

.bg-white {
  background: var(--white);
}

.bg-cream {
  background: var(--cream);
}

.bg-cream-gradient {
  background: linear-gradient(180deg, #FFFFFF 64.68%, var(--cream) 100%);
}

.bg-transparent {
  background: transparent;
}
.icon__wrapper {
  width: 6.4rem;
  height: 6.4rem;
  flex: 0 0 6.4rem;
  padding: 1.6rem;
}

.icon__wrapper-small {
  width: 4rem;
  height: 4rem;
  flex: 0 0 4rem;
  padding: 1rem;
}

.icon__wrapper-medium {
  width: 8rem;
  height: 8rem;
  flex: 0 0 8rem;
  padding: 2rem;
}

.icon__wrapper-large {
  width: 9.6rem;
  height: 9.6rem;
  flex: 0 0 9.6rem;
  padding: 2.8rem;
}

.icon__wrapper img {
  width: 100% !important;
  height: auto !important;
  object-fit: contain;
}

img.icon-green {
  filter: invert(24%) sepia(31%) saturate(879%) hue-rotate(88deg) brightness(90%) contrast(92%);
}

img.icon-light-green {
  filter: invert(31%) sepia(38%) saturate(3250%) hue-rotate(139deg) brightness(100%) contrast(101%);
}

img.icon-mint {
  filter: invert(88%) sepia(4%) saturate(785%) hue-rotate(87deg) brightness(116%) contrast(91%);
}

img.icon-orange {
  filter: invert(48%) sepia(97%) saturate(1726%) hue-rotate(8deg) brightness(95%) contrast(101%);
}

img.icon-light-orange {
  filter: invert(86%) sepia(45%) saturate(5764%) hue-rotate(344deg) brightness(96%) contrast(92%);
}

img.icon-white {
  filter: brightness(0%) invert(100%);
}

@media (max-width: 767px) {
  .header-content__icon,
  .icon__wrapper,
  .icon__wrapper-medium,
  .icon__wrapper-large {
    width: 6.4rem;
    height: 6.4rem;
    flex: 0 0 6.4rem;
    padding: 1.6rem;
  }
}
/* Labels */

form label,
.fakelabel {
  display: block;
  margin-bottom: 0.8rem;
  font-weight: 600;
  font-size: 1.4rem;
}

.hs-form-booleancheckbox label {
  font-weight: 400;
  font-size: 1.2rem;
}

.hs-form-field:not(.hs-fieldtype-select) > label {
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  height: 1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}
.form--show-labels .hs-form-field:not(.hs-fieldtype-select) > label {
  border: initial !important;
  clip: initial !important;
  height: initial !important;
  overflow: initial !important;
  padding: initial !important;
  position: initial !important;
  white-space: initial !important;
  width: initial !important;
}

/* Inputs */

form input[type="text"],
form input[type="email"],
form input[type="password"],
form input[type="tel"],
form input[type="number"],
form input[type="file"],
form input[type="search"],
form select,
form textarea {
  display: block;
  width: 100%;
  min-height: 5.2rem;
  border: 0;
  border-bottom: 1px solid #C7BCB6;
  padding: 1.2rem 0.8rem;
  margin-bottom: 1.2rem;
  color: var(--base-color);
  font-size: 1.4rem;
  background-color: transparent;
}

form select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url('data:image/svg+xml,<svg width="8" height="6" viewBox="0 0 8 6" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M4.70711 4.79289C4.31658 5.18342 3.68342 5.18342 3.29289 4.79289L0.707109 2.20711C0.0771437 1.57714 0.523309 0.5 1.41421 0.5H6.58579C7.47669 0.5 7.92286 1.57714 7.29289 2.20711L4.70711 4.79289Z" fill="%232F2D2D"/></svg>');
  background-position: calc(100% - 1rem) 50%;
  background-repeat: no-repeat;
  background-size: 8px;
  border: 0;
  border-bottom: 1px solid #C7BCB6;
  -webkit-text-fill-color: var(--base-color);
  opacity: 1;
}

form textarea {
  min-height: 15rem;
}

form fieldset {
  max-width: 100% !important;
}

.hs-fieldtype-booleancheckbox {
  display: flex;
  flex-direction: column;
  gap: var(--gap-xs);
}

.hs-fieldtype-booleancheckbox .inputs-list {
  margin: 0.4rem 0 0 0;
}

.hs-fieldtype-booleancheckbox .input {
  order: 1;
}

.hs-fieldtype-booleancheckbox .hs-field-desc {
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1.5;
  margin-bottom: 1.6rem;
  order: 2;
}

::-webkit-input-placeholder {
  color: inherit;
}

::-webkit-input-placeholder,
::-moz-placeholder,
:-ms-input-placeholder,
:-moz-placeholder,
::placeholder,
.hs-fieldtype-date .input .hs-dateinput:before {
  color: inherit;
}

/* Inputs - checkbox/radio */

.inputs-list {
  margin: 0 0 2rem 0;
  padding: 0;
  list-style: none;
}

.inputs-list > li {
  display: block;
}

input[type="checkbox"],
input[type="radio"] {
  cursor: pointer;
  margin-right: 0.5rem;
  position: relative;
  top: 0.1rem;
}

input[type="checkbox"],
input[type="radio"],
input[type="range"],
input[type="checkbox"]:focus,
input[type="radio"]:focus,
input[type="range"]:focus,
progress {
  accent-color: var(--green-light);
}

/* Inputs - date picker */

.hs-dateinput {
  position: relative;
}

.hs-dateinput:before {
  content: "\01F4C5";
  position: absolute;
  right: 1rem;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.fn-date-picker .pika-table thead th {
  color: var(--base-color);
}

.fn-date-picker td.is-selected .pika-button {
  background: var(--dark-gray);
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
}

.fn-date-picker td .pika-button:hover,
.fn-date-picker td .pika-button:focus {
  background-color: var(--dark-gray) !important;
  border-radius: 0 !important;
  color: #fff;
}

.fn-date-picker td.is-today .pika-button {
  color: var(--dark-gray);
}

/* Inputs - file picker */

form input[type="file"] {
  width: auto !important;
  min-height: auto;
  background-color: transparent;
  border: initial;
  padding: initial;
}
form input[type="file"]::-webkit-file-upload-button,
form input[type="file"]::file-selector-button {
  margin-right: var(--gap);
}

/* Submit button */
/* 
.hs-submit {
  margin-top: var(--gap-sm);
} */

/* Headings and text */

form .hs-richtext,
form .hs-richtext p {
  font-size: 1.2rem;
}

form .hs-richtext p {
  margin: 0 0 1.6rem;
}

form .hs-richtext a {
  color: var(--green);
}

form .hs-richtext a:hover,
form .hs-richtext a:focus {
  text-decoration: none;
}

form .hs-richtext img {
  max-width: 100% !important;
}

/* form .hs-richtext *:last-child {
  margin-bottom: 0;
} */

/* GDPR */

.legal-consent-container .hs-form-booleancheckbox-display > span,
.legal-consent-container .hs-form-booleancheckbox-display > span p {
  font-size: 1.4rem;
}

.legal-consent-container .hs-form-booleancheckbox-display p {
  position: relative;
  top: -1px;
}

/* Validation */

.hs-form-required {
  color: #E00000;
}

.hs-input.invalid.error {
  border-color: #E00000;
}

.hs-error-msg,
.hs-error-msgs {
  margin: 0;
  color: #E00000;
  font-size: 1.1rem;
  font-weight: 400;
}

ul.no-list.hs-error-msgs {
  margin-top: -1rem;
}

.hs_error_rollup {
  display: none;
}

/* Captcha */

.hs_recaptcha {
  display: none;
}

.grecaptcha-badge {
  margin-bottom: 2rem;
}

/* Change Autocomplete styles in Chrome */

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  transition:
    background-color calc(infinity * 1s) step-end,
    background-image calc(infinity * 1s) step-end allow-discrete,
    color calc(infinity * 1s) step-end;
}

/* Fix Column Layouts */

.hs-form fieldset {
  max-width: inherit !important;
}
.hs-form fieldset.form-columns-1 .hs-form-field,
.hs-form fieldset.form-columns-2 .hs-form-field,
.hs-form fieldset.form-columns-3 .hs-form-field {
  width: 100% !important;
}
.hs-form fieldset.form-columns-1 .hs-form-field .input,
.hs-form fieldset.form-columns-2 .hs-form-field .input,
.hs-form fieldset.form-columns-3 .hs-form-field .input {
  margin-right: 0 !important;
}
.hs-form
  fieldset.form-columns-1
  .hs-form-field
  .hs-input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.hs-form
  fieldset.form-columns-2
  .hs-form-field
  .hs-input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
.hs-form
  fieldset.form-columns-3
  .hs-form-field
  .hs-input:not([type="checkbox"]):not([type="radio"]):not([type="file"]) {
  width: 100% !important;
}

@media (min-width: 992px) {
  .hs-form fieldset.form-columns-1 .hs-form-field {
    width: 100% !important;
  }
  .hs-form fieldset.form-columns-2 .hs-form-field {
    width: 50% !important;
  }
  .hs-form fieldset.form-columns-2 .hs-form-field:nth-of-type(1) {
    padding-right: 0.75rem;
  }
  .hs-form fieldset.form-columns-2 .hs-form-field:nth-of-type(2) {
    padding-left: 0.75rem;
  }
  .hs-form fieldset.form-columns-3 .hs-form-field {
    width: 33.333% !important;
  }
  .hs-form fieldset.form-columns-3 .hs-form-field:nth-of-type(1) {
    padding-right: 0.75rem;
  }
  .hs-form fieldset.form-columns-3 .hs-form-field:nth-of-type(2) {
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }
  .hs-form fieldset.form-columns-3 .hs-form-field:nth-of-type(3) {
    padding-left: 0.75rem;
  }
}



.hs-richtext h4 {
  /* font-weight: 500; */
  font-size: 1.4rem;
  margin-bottom: 0.4rem;
}

.hs-richtext p {
  font-size: 1.2rem;
  margin-bottom: 0;
}

/*.hs-richtext a {
  color: var(--base-color);
  text-decoration: underline;
  font-weight: 600;
}

.hs-richtext a:hover {
  color: var(--base-color);
  text-decoration: none;
  font-weight: 600;
}*/

.hs-form {
  display: flex;
  flex-direction: column;
}

/* .hs-form fieldset:has(.hs-richtext) {
  order: 99;
  margin-top: 2.2rem;
}
 */
/* Table */

table {
	width: 100%;
	border: 1px solid var(--light-gray);
  border-collapse: collapse;
  margin-bottom: 1.4rem;
  overflow-wrap: break-word;
}

/* Table cells */

td,
th {
	padding: 1rem;
	text-align: left;
  vertical-align: top;
}

td {
	border-bottom: 1px solid var(--light-gray);
}

/* Table header */

thead th {
	background-color: var(--light-gray);
  vertical-align: bottom;
}

/* Table footer */

tfoot td {
  background-color: var(--light-gray);
}

/* Modules */

.banner {
  height: 66.2rem;
  overflow: hidden;
  padding: 6rem 2rem;
}

.banner .content-wrapper {
  max-width: 143rem;
}

.banner > .flex {
  z-index: 3;
}

.banner__content {
  max-width: 108rem;
  margin: 0 auto;
  font-size: 1.8rem;
}

.banner__bg {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.banner__bg:before {
  content: '';
  display: block;
  background: radial-gradient(94.9% 95% at 50% 100%, rgba(47, 45, 45, 0.6) 0%, rgba(47, 45, 45, 0.05) 100%);
  background-blend-mode: multiply;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.banner .banner__bg.content-wrapper,
.banner .rounded {
  overflow: hidden;
  transition: all .5s ease-in-out;
}

.banner.widen .banner__bg.content-wrapper {
  max-width: 100% !important;
}

.banner.widen .banner__bg.rounded {
  border-radius: 0 !important;
}

.banner__text {
  text-shadow: 0px 0px 16px rgba(0,0,0,0.4);
}

@media (max-width: 767px) {
  .banner {
    height: unset;
    padding: 18.4rem 2rem 5.6rem;
  }

  .banner__content {
    padding: 0 1.6rem;
  }

  /* .banner__bg {
    left: 2rem;
    right: 2rem;
  } */
}
.bg-burst__module {
  pointer-events: none;
  z-index: -1;
}
.cards__card {
  padding: 2.4rem;
  flex: 1;
  height: auto;
}

.cards__card.p8 {
  padding: 0.8rem;
}

.cards__card.bg-none {
  padding: 0.8rem !important;
}

.cards__icon.icon__wrapper {
  margin: /* 1.6rem */ 0 0;
}

.cards__card-content {
  padding: 1.6rem;
}

.cards__card.p40 .cards__card-content,
.cards__card.p32 .cards__card-content {
  padding: 0;
}

.cards__card-content h2 {
  line-height: 1.5;
}
.cards__card-content > * {
  margin-bottom: 0;
}

.cards__card h3,
.cards__card h3.h4 {
  font-size: 2.4rem;
  line-height: 1.2;
  word-break: break-word;
}

.cards__slider .flickity-slider {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: row;
}

/* .flickity-enabled .flickity-slider,
.flickity-enabled .cards__card {
  min-height: 100%;
}

.flickity-enabled .flickity-slider, 
.flickity-enabled .cards__card-content {
  height: 100%;
} */

.flickity-enabled .cards__card {
  transition: none !important;
}

@media (max-width: 420px) {
  .cards__card-images .cards__card-image {
    display: none;
  }

  .cards__card-images .cards__card-image:first-child {
    display: flex;
  }
}

@media (min-width: 768px) {
  .cards__card.p40 {
    padding: 4rem;
  }

  .cards__card.p32 {
    padding: 3.2rem;
  }

  .cards__card h2 {
    padding-top: .8rem;
  }

  .cards__card-content {
    padding: 0 1.6rem 1.6rem;
  }

  .cards__wrapper .cards__card-content {
    /* padding-top: 4.8rem; */
    padding-top: 0;
  }

  .cards__wrapper .cards.cards__3 .cards__card-content {
    flex: 1;
  }

  .cards__1 .cards__card-content {
    /*margin-right: 2.8rem;*/
    font-size: 1.8rem;
    gap: 4rem !important;
  }

  .cards__1 .cards__card-content h2 strong {
    font-size: 2.8rem;
  }

  .cards.cards__3 .cards__card-images {
    width: 100%;
  }

  /* disable Flickity for large devices */
  .cards__slider-mobile:after {
    content: '';
    display: none;
  }

  .cards__slider .cards__card {
    min-height: 100%;
  }
}

@media (min-width: 992px) and (max-width: 1340px) {
  .cards__slider {
    padding-left: 2.4rem;
  }
  
  .cards__slider.cards__width-narrow .cards__card.p40 {
    padding: 3.2rem 2.4rem;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .cards__card {
    /* flex: 0 1 45.6rem; */
    flex: 0 1 calc(50% - var(--gap-24) * 1 / 2);
  }
}

.cards__card-image {
  aspect-ratio: 3/2;
  max-height: 38rem;
  width: 100%;
}

.cards__card-images .cards__card-image {
  max-width: 9.5rem;
  height: auto;
}

.cards__card-image .button-container {
  top: 0;
  left: 1rem;
  right: 1rem;
  bottom: 0;
}

.cards__card h2 strong {
  display: block;
  margin-top: .4rem;
}

.icon-cards__wrapper .flickity__nav-wrapper {
  padding-right: 2rem;
}

@media (max-width: 767px) {
  /* .cards__card {
    align-items: center;
    text-align: center;
  } */
  
  .cards__card.p8.p32,
  .cards__card.p8.p40 {
    padding: 2.4rem;
  }

  .cards__card-images {
    flex-direction: row;
    flex-wrap: wrap;
  }

  .cards__card-image .button {
    max-width: max-content;
  }

  .cards__card-content {
    flex-direction: column;
    /* align-items: center; */
  }

  /* .cards__card-content .button-container {
    align-items: flex-start;
  } */

  .cards__card-content ul,
  .cards__card-content ol {
    text-align: left;
  }

  /* enable Flickity by default */
  .cards__slider-mobile:after {
    content: 'flickity';
    display: none; /* hide :after */
  }

  .icon__wrapper,
  .cards__icon,
  .icon-cards__wrapper .cards__slider > .flickity-button,
  .cards__slider > .flickity-button,
  .cards__slider-mobile > .flickity-button {
    display: none !important;
  }

  .cards__slider-mobile .cards__card,
  .cards__slider .cards__card {
    height: auto;
    width: 100%;
    max-width: calc(100vw - 4rem);
    margin-right: .8rem !important;
    transition: none;
  }

  /* .cards__slider-mobile .cards__card,
  .flickity-enabled .cards__card, */
  .flickity-enabled .flickity-slider,
  .flickity-enabled.resized .cards__card {
    min-height: 100%;
  }

  .flickity-enabled .flickity-slider, 
  .flickity-enabled .cards__card-content {
    height: 100%;
  }

  .cards__slider-wrapper--mobile .flickity__nav-wrapper {
    padding-bottom: 3px;
    padding-right: 2rem;
  }
}

@media (min-width: 992px) {
  .cards__1 .cards__card-content {
    align-items: center;
  }
  .cards__1 .cards__card h2.body {
    padding-top: 0;
  }
}

@media (min-width: 1200px) {
  .cards__2 .cards__card {
    flex-wrap: nowrap;
    align-items: center;
  }
  .cards__2 .cards__card-content {
    flex-direction: row;
    align-items: center;
    flex-grow: inherit;
    flex-wrap: nowrap;
  }
  .cards__2 .cards__card-content .body {
    flex-grow: inherit;
  }
  .cards__2 .cards__card-content .button-container {
    margin-top: 0 !important;
    margin-left: 24px !important;
  }
  .cards__2 .cards__card-content .button {
    white-space: nowrap;
  }
}

/* Card Grid */

.card-grid.gap-24:has(.bg-white) {
  gap: 1.6rem;
}

.card-grid .cards__card-content.gap-xs {
  gap: var(--gap-sm);
}

.card-grid .cards__card:not(.bg-white):not(.p40) .cards__icon.icon__wrapper.mb-24 {
  margin: 1.6rem !important;
}

.card-grid .cards__card.bg-white .cards__icon.icon__wrapper.mb-24 {
  margin: 0 1.6rem 1.6rem !important;
}

@media (min-width: 768px) {
  .card-grid.grid--2col,
  .card-grid.grid--3col,
  .card-grid.grid--4col {
    grid-template-columns: repeat(2, 1fr);
  }

  .card-grid .cards__card-content {
    height: 100%;
  }

  .card-grid .cards__card-content .button-container.mt-sm {
    margin-top: auto !important;
  }
}

@media (min-width: 980px) {
  .card-grid.grid--3col {
    grid-template-columns: repeat(3, 1fr);
  }

  .card-grid.grid--4col {
    grid-template-columns: repeat(4, 1fr);
  }
}

/* Form Card */

.form-card__form-title h2,
.form-card__form-title h3,
.form-card__form-title h4 {
  margin-bottom: 0.8rem;
}

.form-card__form-title *:last-child {
  margin-bottom: 0;
}

@media (min-width: 768px) {
  .form-card__card {
    grid-template-columns: 1fr 1fr;
  }

  .form-card__image-wrapper {
    height: 100%;
  }

  .form-card__form {
    padding: 4rem 4rem 4rem 0.8rem;
  }
}

@media (min-width: 1080px) {
  .form-card__form {
    padding: 4rem 8rem 4rem 4.8rem;
  }
}

@media (max-width: 767px) {
  .form-card__image-wrapper {
    aspect-ratio: 5/3;
    width: 100%;
  }

  .form-card__form-header {
    text-align: center;
  }
  
  .form-card__form {
    padding: 0 1.6rem 2.4rem;
  }
}
.care-options__card {
  padding: .8rem;
  transition: all .3s ease-in;
  box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.06);
  box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.1);
}

.care-options__card:hover {
  box-shadow: 0px 4px 6px -2px rgba(0, 0, 0, 0.03);
  box-shadow: 0px 12px 16px -4px rgba(0, 0, 0, 0.08);
}

.care-options__card-image img {
  aspect-ratio: 11 / 8;
}

.care-options__card-content {
  padding: 2.4rem 1.6rem 1.6rem;
}

@media (max-width: 767px) {
  .care-options__card-content h3 {
    margin-bottom: .8rem;
  }
}

@media (min-width: 768px) {
  .care-options__card {
    width: calc(33.33% - var(--gap-24) * 2/3);
    /* max-width: 45.6rem; */
  }

  .care-options__card-content {
    height: 100%;
    padding: 4rem 2.4rem 2.4rem;
    max-width: 44rem;
    margin: 0 auto;
  }

  .care-options__card-content .button-container {
    margin-top: auto;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .care-options__card {
    width: calc(50% - var(--gap-24) * 1/2);
  }
}
.info-bar__wrapper {
  padding: 6.4rem 2rem 4rem;
}

.info-bar__wrapper .content-wrapper > svg {
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}

.info-bar__sep {
  height: 100%;
  min-height: 2.8rem;
  width: 1px;
  background: #C7BCB6;
}

.info-bar--no-care-services .cs-item {
  display: none;
}

.info-bar a[href^="tel:"] {
  min-width: 156px;
}

@media (max-width: 767px) {
  .info-bar.flex-center {
    align-items: center;
  }

  .info-bar > span:first-child,
  .info-bar > a.button.button--text-secondary-alt > .button__label {
    text-align: center;
  }

  .button__label span {
    display: block;
  }

  .info-bar__sep {
    height: .1rem;
    min-height: .1rem;
    width: 100%;
    background: #D9D9D9;
  }
}
.content-media__top {
  padding: 0.8rem;
}

.content-media__content-text > * {
  margin-bottom: 0;
}

.content-media__icons.flex.gap-24 {
  row-gap: var(--gap-lg);
}

.content-media__icon.header-content.flex-column {
  gap: var(--gap-xs);
  margin: 0;
}

.content-media__image {
  aspect-ratio: 8/7;
  height: 100%;
  width: 100%;
}

/* disable Flickity for large devices */
.content-media__icons:after {
  content: '';
  display: none;
}

@media (min-width: 768px) {
  .content-media-wrapper.image-right:not(.content-media__alternate) .content-media__top,
  .content-media__alternate:not(.image-right) .content-media:nth-child(even) .content-media__top,
  .content-media__alternate.image-right .content-media:nth-child(odd) .content-media__top {
    flex-direction: row-reverse;
  }

  .content-media__icons.content-media__icons--2col .content-media__icon,
  .content-media__icons .content-media__icon {
    width: calc(50% - var(--gap-24) * 1/2);
  }

  .content-media__icons.content-media__icons--3col .content-media__icon {
    width: calc(33.33% - var(--gap-24) * 2/3);
  }

  .content-media__image {
    flex: 0 1 68rem;
  }

  .content-media__content {
    flex: 0 1 57.6rem;
    padding: 1.6rem 1.6rem 1.6rem 0;
  }

  .content-media__alternate .content-media__content,
  .content-media-wrapper.image-right .content-media__content {
    padding: 1.6rem 0 1.6rem 1.6rem;
  }
}

@media (min-width: 1025px) {
  .content-media__icons.content-media__icons--2col.gap-24 {
    gap: var(--gap-xl);
  }

  .content-media__icons.content-media__icons--2col .content-media__icon {
    width: calc(50% - var(--gap-xl) * 1/2);
  }

  .content-media__icons:not(.content-media__icons--2col):not(.content-media__icons--3col) .content-media__icon {
    width: calc(25% - var(--gap-24) * 3/4);
  }
}

@media (max-width: 767px) {
  .content-media-wrapper.gap-xl {
    gap: 4rem;
  }
  
  .content-media__top.gap-72 {
    gap: 3.2rem;
  }

  .content-media__content {
    padding: 0 1.6rem 1.6rem;
  }

  .content-media__image .button {
    max-width: calc(100% - 4rem);
    width: max-content;
  }

  /* enable Flickity for mobile */
  .content-media__icons:after {
    content: 'flickity';
    display: none; /* hide :after */
  }
}
.content-images-wrapper {
  padding: 4rem 0;
}

.content-images {
  padding: 0 2rem;
}

.content-images__sticky p:last-child {
  margin-bottom: 0;
}

.content-images__image,
.content-images__image-2 {
  aspect-ratio: 16/9;
}

.content-images__image-1 {
  aspect-ratio: 1;
}


@media (min-width: 768px) {
  .content-images-wrapper {
    padding: 8rem 0;
  }

  .content-images:first-child {
    opacity: 1;
  }

  .content-images__content {
    flex: 0 1 69.6rem;
  }

  .content-images__sticky {
    position: sticky;
    top: 25vh;
    opacity: 0;
    transform: translateY(20%);
    transition: .6s ease-in-out all;
  }

  .active .content-images__sticky {
    opacity: 1;
    transform: translateY(0);
  }

  .content-images__images {
    flex: 0 1 57.6rem;
  }
}

@media (max-width: 767px) {
  .content-images-wrapper {
    gap: 4rem;
  }

  .content-images .content-images__images {
    order: 1;
  }

  .content-images .content-images__content {
    order: 2;
  }

  .content-images:not(:nth-child(2)) .content-images__images {
    display: none;
  }

  .content-images__icon.icon__wrapper:not(.flex-row) {
    margin-left: 0;
  }
}
.cta-bar-wrapper {
  padding: 4rem 2rem;
  box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.06);
  box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.1);
  font-size: 1.8rem;
}

.footer .cta-bar-wrapper {
  padding: 2.4rem 2rem;
}

.cta-bar__icon {
  width: 6.4rem;
  height: 6.4rem;
  padding: 1.6rem;
}

.cta-bar__icon img {
  width: 32px !important;
  height: auto !important;
  object-fit: contain;
}

.cta-bar .cta-bar__button .button-container.mt-sm {
  margin-top: 0 !important;
}

@media (min-width: 768px) {
  .ft-cta .cta-bar__text {
    flex-direction: row;
    align-self: center;
    gap: var(--gap-sm);
  }

  .cta-bar__text {
    max-width: calc(100% - 8.8rem);
  }

  .cta-bar__button {
    margin-left: 2.4rem;
  }
}

.cta-bar__text p {
  line-height: 1.4;
}

.cta-bar__text * {
  margin-bottom: 0;
}

.cta-bar form.hs-form {
  display: flex;
  flex-direction: row;
  gap: var(--gap-sm);
}

.cta-bar form .hs-form-field input[type=text],
.cta-bar form input[type=text] {
  border-bottom: 1px solid var(--white);
  color: var(--white);
  background: transparent;
  margin-bottom: 4px;
}

.cta-bar .hs-error-msg,
.cta-bar .hs-error-msgs {
  color: var(--white);
}

.cta-bar form .hs-form-field,
.cta-bar form input[type=text] {
  max-width: 16rem;
}

.cta-bar form .hs_submit input[type=submit] {
  background-color: var(--white);
  border-color: var(--white);
  color: var(--base-color);
}

.cta-bar form .hs_submit input[type=submit]:active,
.cta-bar form .hs_submit input[type=submit]:focus,
.cta-bar form .hs_submit input[type=submit]:hover {
  background-color: var(--orange-light);
  border-color: var(--orange-light);
  color: var(--base-color);
}


@media (max-width: 767px) {
  .cta-bar__icon {
    display: none;
  }

  .cta-bar__content,
  .cta-bar form .hs-form-field input[type=text],
  .cta-bar form input[type=text] {
    align-items: center;
    text-align: center;
  }

  .cta-bar__content,
  .cta-bar__button,
  .cta-bar form .hs-form-field,
  .cta-bar form input[type=text] {
    max-width: 100%;
    width: 100%;
  }

  .footer .cta-bar {
    align-items: flex-start;
  }

  .footer .cta-bar__content {
    align-items: flex-start;
    text-align: left;
  }

  .cta-bar form.hs-form {
    flex-direction: column;
  }

  .cta-bar form .hs-form-field {
    max-width: 100%;
  }
}
.cta-box {
  padding: 4rem 2rem;
}

.cta-box__icon {
  width: 6.4rem;
  height: 6.4rem;
  margin-inline: auto;
  padding: 1.6rem;
}

.cta-box__icon img {
  width: 32px !important;
  height: auto !important;
  object-fit: contain;
}

.cta-box__text {
  max-width: 57.6rem;
  font-weight: 500;
}

.cta-box__text h2,
.cta-box__text h3,
.cta-box__text p,
.cta-box__text *:last-child {
  margin-bottom: 0;
}

.cta-box__button {
  width: 100%;
}
@media (max-width: 767px) {
  .differentiators {
    display: flex;
    flex-direction: column;
    gap: 5.6rem;
  }
}
.event-card {
  overflow: hidden;
  padding: 0;
  width: 100%;
}

.event-card__image {
  z-index: -1;
}

.event-card__inner,
.event-card__content {
  padding: 2rem;
}

.event-card__content {
  max-width: 68rem;
}

.event-card__content-text *:last-child {
  margin-bottom: 0;
}

.event-card__info-item > span {
  font-size: 1.4rem;
  font-weight: 600;
}

.event-card__zip {
  min-width: 35rem;
  padding: 0.8rem;
}

.event-card__zip input[type="text"] {
  margin: 0 !important;
}

.event-search-bar-wrapper {
  padding: 4rem 2rem;
  font-size: 1.8rem;
}

.event-search-bar__icon {
  width: 6.4rem;
  height: 6.4rem;
  padding: 1.6rem;
}

.event-search-bar__icon img {
  width: 32px !important;
  height: auto !important;
  object-fit: contain;
}

.event-search-bar__text p {
  line-height: 1.4;
}

.event-search-bar__text * {
  margin-bottom: 0;
}

.event-search-bar form.hs-form {
  display: flex;
  flex-direction: row;
  gap: var(--gap-sm);
}

.event-search-bar form .hs-form-field input[type=text]{
  border-bottom: 1px solid var(--white);
  color: var(--white);
  background: transparent;
  margin-bottom: 4px;
}

.event-search-bar .hs-error-msg,
.event-search-bar .hs-error-msgs {
  color: var(--white);
}

.event-search-bar form .hs-form-field {
  max-width: 16rem;
}

.event-search-bar form .hs_submit input[type=submit] {
  background-color: var(--white);
  border-color: var(--white);
  color: var(--base-color);
}

.event-search-bar form .hs_submit input[type=submit]:active,
.event-search-bar form .hs_submit input[type=submit]:focus,
.event-search-bar form .hs_submit input[type=submit]:hover {
  background-color: var(--orange-light);
  border-color: var(--orange-light);
  color: var(--base-color);
}

@media (min-width: 768px) {
  .event-card__inner {
    padding: 4rem;
  }

  .event-card__content {
    padding: 5.6rem;
  }

  .event-search-bar__button {
    margin-left: 2.4rem;
  }
}

@media (max-width: 767px) {
  .event-card__inner {
    background: var(--green);
    padding: 0;
  }

  .event-card__content.bg-white {
    background: transparent;
    color: var(--white);
  }

  .event-card__info-item img.icon-green,
  .event-card__info-item img.icon-light-green {
    filter: invert(100%) brightness(100%) !important; 
  }

  .event-search-bar__icon {
    margin-inline: auto;
  }

  .event-card__content .button {
    background: var(--white) !important;
    color: var(--base-color) !important;
  }
  
  .event-search-bar__content,
  .event-search-bar form .hs-form-field input[type=text] {
    align-items: center;
    text-align: center;
  }

  .event-search-bar__button {
    width: 100%;
  }

  .event-search-bar form.hs-form {
    flex-direction: column;
  }

  .event-search-bar form .hs-form-field {
    max-width: 100%;
  }
}
.faqs-1__list {
  margin: 0;
  padding: 0;
  list-style: none;
  gap: 1rem;
}
.faqs-1__faq:not(:last-child) {
  border-bottom: 1px solid rgba(47, 45, 45, 0.1);
}
.faqs-1__question {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-gap: var(--gap-md);
  align-items: center;
  padding: 2.4rem 1.6rem;
  cursor: pointer;
  color: var(--base-color);
  border: 2px solid transparent;
  border-radius: 0;
  appearance: none;
  width: 100%;
  outline: none !important;
  text-align: left;
}
.faqs-1__faq.is-active .faqs-1__question {
  color: var(--green);
}
.faqs-1__question:focus-visible {
  cursor: pointer;
  border-color: var(--green-light);
}
.faqs-1__question > svg {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  height: 1rem;
  pointer-events: none;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.faqs-1__faq.is-active .faqs-1__question > svg {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.faq__button {
  background: transparent;
  height: 2rem;
  width: 2rem;
  position: relative;
  border: 0;
  outline: 0;
  padding: 0;
  flex-shrink: 0;
  pointer-events: none;
}
.faq__button .plus,
.faq__button .minus {
  width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  text-align: center;
  transition: .3s all ease-out;
}
.faq__button .plus {
  opacity: 1;
  transform: rotate(0deg);
}
.faqs-1__faq.is-active .faq__button .plus {
  opacity: 0;
  transform: rotate(90deg);
}
.faq__button .minus {
  opacity: 0;
  transform: rotate(-90deg);
}
.faqs-1__faq.is-active .faq__button .minus {
  opacity: 1;
  transform: rotate(0deg);
}
.faqs-1__question svg {
  transition: all 0.2s ease;
}
.faqs-1__faq.is-active .faqs-1__question > svg {
  transform: rotate(180deg);
}

.faqs-1__answer {
  display: none;
  font-size: 1.8rem;
  padding: 0 1.8rem;
}
.faqs-1__answer {
  display: none;
}
.faqs-1__faq.is-active .faqs-1__answer {
  display: block;
}

@media (max-width: 767px) {
  .faqs-1__question {
    padding: 1.6rem 0;
  }

  .faqs-1__answer {
    padding: 0;
  }
}
.faqs-2__faq:not(:last-child) {
  border-bottom: 1px solid rgba(47, 45, 45, 0.1);
}
.faqs-2__question {
  display: grid;
  grid-template-columns: 1fr auto;
  grid-gap: var(--gap-md);
  align-items: center;
  padding: 2.4rem 1.6rem;
  cursor: pointer;
  color: var(--base-color);
  border: 2px solid transparent;
  border-radius: 0;
  appearance: none;
  width: 100%;
  outline: none !important;
  text-align: left;
}
.faqs-2__faq.is-active .faqs-2__question {
  color: var(--green);
}

.faqs-2__question:focus-visible {
  cursor: pointer;
  border-color: var(--green-light);
}


.faq__button {
  background: transparent;
  height: 2rem;
  width: 2rem;
  position: relative;
  border: 0;
  outline: 0;
  padding: 0;
  flex-shrink: 0;
  pointer-events: none;
}
.faq__button .plus,
.faq__button .minus {
  width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  text-align: center;
  transition: .3s all ease-out;
}
.faq__button .plus {
  opacity: 1;
  transform: rotate(0deg);
}
.faqs-2__faq.is-active .faq__button .plus {
  opacity: 0;
  transform: rotate(90deg);
}
.faq__button .minus {
  opacity: 0;
  transform: rotate(-90deg);
}
.faqs-2__faq.is-active .faq__button .minus {
  opacity: 1;
  transform: rotate(0deg);
}

.faqs-2__question svg {
  transition: all 0.2s ease;
}
.faqs-2__faq.is-active .faqs-2__question > svg {
  transform: rotate(180deg);
}
.faqs-2__answer {
  display: none;
  font-size: 1.8rem;
  padding: 0 1.8rem;
}
.faqs-2__answer--small {
  font-size: 1.4rem;
}
.faqs-2__faq.is-active .faqs-2__answer {
  display: block;
}
.faqs-2__faq:not(.is-shown) {
  display: none;
}
.faqs-2__load-more {
  text-align: center;
}
.faqs-2__answer ul li *:last-child {
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .faqs-2__question {
    padding: 1.6rem 0;
  }

  .faqs-2__answer {
    padding: 0;
  }

  .faqs-2__load-more.mt-xl {
    margin-top: 2.4rem !important;
  }
}
.floor-plans__accordion {
  border-bottom: 1px solid rgba(47,45,45,.1);
  padding-bottom: var(--gap-sm);
}

.floor-plans__accordion-title {
  color: var(--black);
  cursor: pointer;
  border: 0;
  padding: 2.4rem 1.6rem;
  appearance: none;
  width: 100%;
  outline: none !important;
}

.floor-plans__accordion-title:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 3.2rem;
  pointer-events: none;
  border: 2px solid transparent;
}

.floor-plans__accordion-title:focus {
  border-bottom-color: transparent;
}

.floor-plans__accordion-title:focus:before {
  border-color: var(--green-light);
}

.floor-plans__accordion-button {
  background: transparent;
  height: 2.4rem;
  width: 2.4rem;
  position: relative;
  border: 0;
  outline: 0;
  padding: 0;
  flex-shrink: 0;
  pointer-events: none;
}
.floor-plans__accordion-button .plus,
.floor-plans__accordion-button .minus {
  width: 2rem;
  height: 2rem;
  display: block;
  position: absolute;
  top: .2rem;
  left: .2rem;
  right: .2rem;
  bottom: .2rem;
  text-align: center;
  transition: .3s all ease-out;
}
.floor-plans__accordion-button .plus {
  opacity: 1;
  transform: rotate(0deg);
}
.floor-plans__accordion-button svg {
  width: 100%;
  height: auto;
}
.floor-plans__accordion.is-active .floor-plans__accordion-button .plus {
  opacity: 0;
  transform: rotate(90deg);
}
.floor-plans__accordion-button .minus {
  opacity: 0;
  transform: rotate(-90deg);
}
.floor-plans__accordion.is-active .floor-plans__accordion-button .minus {
  opacity: 1;
  transform: rotate(0deg);
}

.floor-plans__details {
  display: none;
  padding-top: 2.4rem;
}
.floor-plans__accordion.is-active .floor-plans__details {
  display: flex;
}

.floor-plans__card {
  margin-bottom: var(--gap-lg);
  padding: .8rem;
}

.floor-plans__card-header {
  padding: 2.4rem;
}

.floor-plans__card-row:not(:last-child) {
  border-bottom: 1px solid rgba(255, 255, 255, 0.24);
}

.floor-plans__card-row {
  font-size: 1.4rem;
}

.floor-plans__card-row:last-child {
  padding-bottom: 0;
}

.floor-plans__card-row ul {
  /* list-style: none; */
  padding: 0 0 0 14px;
  margin: 0;
  gap: .4rem 4rem;
}

/*.floor-plans__card-row ul li {
  flex: 1 1 calc(50% - 4rem);
}*/

.floor-plans__card-image {
  padding: 3rem 2.4rem;
}

@media (min-width: 768px) {
  .floor-plans__accordion-title {
    position: sticky;
    top: var(--header-height);
  }

  .floor-plans__card {
    position: sticky;
    top: calc( var(--header-height) + 11.3rem);
    pointer-events: initial;
  }

  .floor-plans__card-header {
    flex: 0 1 50%;
  }

  .floor-plans__card-image {
    flex: 1;
  }

  .floor-plans__card-row-cell:last-child {
    flex: 1;
  }

  .floor-plans__details {
    pointer-events: none;
  }

  .floor-plans__card-row-cell:first-child {
    flex: 0 0 15rem;
  }
}

@media (max-width: 767px) {
  .floor-plans__details h4.mobile {
    padding: 1rem 2rem;
  }

  .floor-plans__card {
    flex-direction: column-reverse !important;
    gap: 0;
  }

  .floor-plans__card-row-cell.flex.gap-md {
    gap: 0.8rem;
  }

  .floor-plans__card-header {
    padding-top: 0;
  }

  .floor-plans__accordion-title h3 {
    flex: 1;
    text-align: left;
  }

  .floor-plans__card-row.flex.gap-sm,
  .floor-plans__card-row-cell.flex.gap-sm {
    gap: 0.4rem;
  }

  .floor-plans__card-row ul {
    padding-left: 3rem;
  }
}
.fpo__wrapper {
  max-width: 117.6rem;
  margin: 0 auto;
}

.fpo__card {
  padding: 3.2rem 2.4rem;
}

a.fpo__card {
  color: var(--base-color);
  text-decoration: none;
}

a.fpo__card.bg-mint:hover,
a.fpo__card.bg-mint:focus {
  background: var(--green);
  color: var(--white);
  text-decoration: none;
}

a.fpo__card.bg-mint:hover .fpo__card-icon.bg-white,
a.fpo__card.bg-mint:focus .fpo__card-icon.bg-white {
  background: var(--green-light);
}

a.fpo__card.bg-mint:hover .fpo__card-icon img.icon-light-green,
a.fpo__card.bg-mint:focus .fpo__card-icon img.icon-light-green {
  filter: brightness(0) invert(100%);
}

a.fpo__card:hover .button{
  background-color: var(--green-light);
  border-color: var(--green-light);
  color: var(--white);
}

.fpo__card > div {
  margin: 0 auto;
  width: 100%;
}

@media (min-width: 768px) {
  .fpo__card {
    padding: 5.6rem 2rem;
    width: 37.6rem;
    max-width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display:flex;
    flex-direction: column;
  }

  .fpo__cards--4col .fpo__card {
    width: 42rem;
  }

  .fpo__card > div {
    max-width: 29.6rem;
  }
}

.fpo__card-info:not(.hide-apt-info) .fpo__card-row:first-child {
  border-bottom: 1px solid rgba(47, 45, 45, 0.1);
  padding-bottom: .8rem;
  margin-bottom: .8rem;
}

a.fpo__card:hover .fpo__card-info:not(.hide-apt-info) .fpo__card-row:first-child {
  border-color: rgba(255, 255, 255, 0.1);
}

.fpo__card-info.hide-apt-info .fpo__card-row {
  flex-direction: column;
  text-align: center;
  gap: 0.8rem;
}

.fpo__card-row {
  line-height: 1.25;
}

.fpo__card-info:not(.hide-apt-info) .fpo__card-row.flex {
  display: grid;
  grid-template-columns: 40% calc(60% - var(--gap));
}

.fpo__card-row-cell.full {
  grid-column: 1 / 3;
  text-align: center;
}

.fpo__card-row-cell ul {
  list-style: none;
  margin: 0;
  padding: 0;
  /* text-align: right; */
  gap: 1.6rem;
  display: grid;
}

div.fpo__card-button {
  margin-top: auto;
}

@media (max-width: 767px) {
  .fpo__cards {
    gap: 1.6rem;
  }

  .fpo__card-icon {
    margin-inline: auto;
  }
}
.image-wrapper {
  overflow: hidden;
}


.image-video-popup__image .button-container {
  top: 0;
  left: 1rem;
  right: 1rem;
  bottom: 0;
}

@media (max-width: 767px) {
  .image-video-popup__image .button {
    max-width: max-content;
  }
}
.gallery__images {
}

.gallery__image-inner {
  transition: all .16s ease-in-out;
}

.gallery__caption {
  padding: 2.4rem;
}

.gallery__sizer,
.gallery__image {
  width: 100%;
}

.gallery__image-inner {
  aspect-ratio: 1;
}

.gallery__image {
  margin-bottom: 2.4rem;
}



.gallery select {
  display: inline-flex;
  align-items: center;
  gap: 1.2rem;
  padding: 1.1rem 4.7rem 1.1rem 1.9rem;
  border: 1px solid var(--orange);
  border-radius: .6rem;
  appearance: none;
  transition: all 0.2s ease;
  width: 100%;
  text-align: left;
  white-space: normal;
  cursor: pointer;
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: 0.25px;
  font-weight: 600;


  background-color: transparent;
  color: var(--base-color);

  background-image: url("data:image/svg+xml,%3Csvg width='9' height='6' viewBox='0 0 9 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5.20711 4.79289C4.81658 5.18342 4.18342 5.18342 3.79289 4.79289L1.20711 2.20711C0.577144 1.57714 1.02331 0.5 1.91421 0.5H7.08579C7.97669 0.5 8.42286 1.57714 7.79289 2.20711L5.20711 4.79289Z' fill='%23000'%3E%3C/path%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1.9rem center;
  background-size: 0.9rem;
}

@media (min-width: 768px) {
  .gallery__sizer,
  .gallery__image {
    width: calc(33.33333% - 1.6rem);
  }

  .gallery__image.odd .gallery__image-inner {
    aspect-ratio: 456/342;
  }

  .gallery__image.even .gallery__image-inner {
    aspect-ratio: 1;
  }

  .gallery__image:hover .gallery__image-inner {
    box-shadow: 0px 8px 8px -4px rgba(0, 0, 0, 0.03);
    box-shadow: 0px 20px 24px -4px rgba(0, 0, 0, 0.08);
  }

  .gallery__caption {
    position: absolute;
    left: .8rem;
    right: .8rem;
    bottom: .8rem;
    transform: scale(0.98) translateY(100%);
    opacity: 0;
    transition: all .16s ease-in-out;
    pointer-events: none;
  }

  .gallery__image:hover .gallery__caption {
    opacity: 1;
    transform: scale(1) translateY(0);
    pointer-events: initial;
  }
}
.gallery-slider__wrapper {
  padding: 0 0 0 2rem;
}

.gallery-slider__image {
  width: 105.6rem;
  max-width: 80vw;
  margin-right: .8rem;
}

.gallery-slider__image-inner {
  height: 63.8rem;
}

.gallery-slider__caption {
  text-align: left;
  padding: 1.6rem 0 1.6rem 4.8rem;
}

.gallery-slider__image .button-container {
  top: 0;
  left: 1rem;
  right: 1rem;
  bottom: 0;
}

.gallery-slider__image .button-container .button__label {
  white-space: nowrap;
}

.gallery-slider__wrapper .gallery-slider:after,
.gallery-slider__wrapper.gallery-slider--no-mobile-slider .gallery-slider:after { /* enable Flickity by default */
  content: 'flickity';
  display: none;
}

@media (min-width: 1416px) {
  .gallery-slider__wrapper .flickity-prev-next-button.next {
    right: calc((100vw - var(--container-width)) / 2);
  }
}

@media (min-width: 1460px) {
  .gallery-slider__wrapper {
    padding: 0;
  }
}

@media (max-width: 767px) {
  /* .gallery-slider__wrapper {
    margin: 0 -2rem 0 0;
    width: calc(100% + 2rem);
  }*/

  .gallery-slider__wrapper.gallery-slider--no-mobile-slider .gallery-slider:after { /* disable Flickity for mobile devices */
    content: '';
  }

  .gallery-slider__wrapper.gallery-slider--no-mobile-slider .gallery-slider__image:not(:first-child),
  .gallery-slider__wrapper.gallery-slider--no-mobile-slider .flickity__nav-wrapper,
  .gallery-slider .flickity-prev-next-button {
    display: none;
  }

  .gallery-slider__image {
    max-width: calc(100vw - 5rem);
  }

  .gallery-slider__wrapper.gallery-slider--no-mobile-slider .gallery-slider__image {
    margin-right: auto;
    max-width: calc(100% - 2rem);
  }

  .gallery-slider__image-inner .button {
    width: max-content !important;
  }

  .gallery-slider__image-inner {
    height: unset;
    aspect-ratio: 8 / 7;
  }

  .gallery-slider__caption {
    display: block;
    padding: 1.6rem;
  }

  .gallery-slider__wrapper .flickity__nav-wrapper {
    margin-left: 0;
    margin-top: 2.4rem !important;
    max-width: calc(100vw - 4rem);
  }

  .gallery-slider__wrapper .flickity__nav-wrapper .button-container.mt-56 {
    margin-top: 3.2rem !important;
  }
}
.scroll-down .header,
.scroll-up .header {
  box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.1);
}

.header-content {
  width: 100%;
  gap: var(--gap-24) var(--gap);
}

.header-content__icon {
  width: 6.4rem;
  height: 6.4rem;
  padding: 1.6rem;
}

.header-content__icon img {
  width: 32px !important;
  height: auto !important;
  object-fit: contain;
}

.header-content__left *:last-child,
.header-content__right *:last-child {
  margin-bottom: 0;
}

@media (min-width: 768px) {
  .header-content.flex-top .header-content__right.header-content__right--pt {
    padding-top: 4.8rem;
  }
}

@media (min-width: 1024px) {
  .header-content.flex-column {
    max-width: 69.6rem;
    margin: 0 auto;
  }

  .hero-text .header-content.flex-column {
    max-width: 93.6rem;
  }

  .header-content.flex-column {
    gap: var(--gap-sm);
  }

  .span3 .header-content {
    max-width: 28.8rem;
    margin: 0 auto;
    gap: var(--gap-24) var(--gap-lg);
  }

  .header-content.header-content__medium {
    max-width: 93.6rem;
  }

  .header-content.header-content__wide {
    max-width: 100%;
  }

  .header-content:not(.flex-column) .header-content__left:not(:last-child) {
    flex: 0 1 70%;
  }

  .header-content:not(.flex-column) .header-content__right {
    flex: 0 1 33%;
  }
}

@media (min-width: 1199px) {
  .header-content:not(.flex-column) .header-content__left:not(:last-child) {
    flex: 0 1 70.6rem;
  }

  .header-content:not(.flex-column) .header-content__right {
    flex: 0 1 57.6rem;
  }
}

@media (min-width: 768px) and (max-width: 1023px) {
  .header-content__left,
  .header-content__right {
    flex: 0 1 50%;
  }
}

@media (max-width: 767px) {
  .header-content__wrapper .flex:not(.flex-row) {
    gap: 1.6rem;
  }

  /* .header-content {
    text-align: center;
  } */

  .header-content > div {
    width: 100%;
  }

  .header-content.flex:not(.flex-row) {
    flex-direction: column;
    align-items: flex-start;
  }

  .header-content__icon {
    display: none;
  }

  .header-content.mobile-text-left,
  .header-content.mobile-text-left .text-center {
    text-align: left !important;
  }

  /*.header-content.text-center {
    text-align: left !important;
  }*/
}
.hero {
  padding: 13.1rem 2rem;
  font-size: 2rem;
  line-height: 1.25;
  /* overflow: hidden; */
}

.hero-text > svg,
.hero > svg {
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 99;
}

.hero:has(.hero__form) {
  padding: 8rem 2rem;
}

.hero:has(.hero__nearest):not(.no-geo) {
  padding: 10rem 2rem;
}

.hero.hero--nearest-comm.no-nearest-data .content-wrapper.flex.flex-space-between,
.hero.hero--nearest-comm.no-nearest-data .button-container.flex,
.hero.hero--nearest-comm.no-geo .content-wrapper.flex.flex-space-between,
.hero.hero--nearest-comm.no-geo .button-container.flex {
  justify-content: center;
  text-align: center;
}

.hero__nearest,
.hero.hero--nearest-comm.no-geo .hero__nearest {
  display: none;
}

.hero__nearest.has-data {
  display: block;
}

.hero .content-wrapper {
  z-index: 3;
}

/* .dnd-section:not(:first-child) .hero__content,
.pin-spacer:not(:first-child) .hero__content {
  padding-top: 0 !important;
} */

.hero__content {
  /* margin-inline: auto; */
  max-width: 90rem;
  /* width: 45%; */
  /*padding-top: 14rem;*/
}

.hero:not(.hero--left-aligned) .hero__content:first-child:last-child {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.hero:not(.hero--left-aligned) .hero__content:first-child:last-child .button-container {
  justify-content: center;
}

.hero .hero__text h1 {
  margin-bottom: 1.6rem;
}

.hero__home .hero__text h1 span {
  display: block;
}

.hero__opening {
  padding: .8rem 2.4rem .8rem .8rem;
}

.hero__tag {
  padding: .8rem 2.4rem;
}

.hero__content *:last-child {
  margin-bottom: 0;
}

.hero__bg {
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}

.hero__bg:before {
  content: '';
  display: block;
  background: linear-gradient(0deg, rgba(47, 45, 45, 0.7) 0%, rgba(47, 45, 45, 0) 100%);
  mix-blend-mode: multiply;

  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.hero--nearest-comm.hero__has-zip:not(.no-geo) .hero__bg.hero__bg--overlay-left:before,
.hero__bg.hero__bg--overlay-left:before {
  background: linear-gradient(to right, rgba(47, 45, 45, 0.7) 0%, rgba(47, 45, 45, 0) 100%);
}

.dnd-section:has(.hero__bg--no-img) {
  z-index: 2;
}

.hero__bg.hero__bg--no-img:before {
  content: '';
  background: var(--white);
  border-radius: 100%;
  opacity: 0.2;
  -webkit-filter: blur(100px);
  filter: blur(100px);
  mix-blend-mode: normal;
  position: absolute;
  bottom: -12rem;
  top: initial;
  left: 0;
  right: 0;
  height: 24rem;
  margin-inline: auto;
  max-width: 150rem;
  width: 100%;
}

.hero__video-bg {
  object-fit: cover;
  object-position: 50% 5%;
  height: 100%;
  width: 100%;
}

.hero__video-iframe {
  box-sizing: border-box;
  width: 177.77777778vh;
  height: 56.25vw;
  min-width: 100%;
  min-height: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.hero__bg img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  object-position: 50% 25%;
  position: relative;
  z-index: 1;
}

.hero__has-zip:not(.hero--nearest-comm) {
  text-align: center;
}

.hero__has-zip {
  font-weight: 400;
}

.hero__has-zip .hero__bg:not(.hero__bg--no-img):before {
  background:
    radial-gradient(
      76% 80% at 50% 100%,
      rgba(47, 45, 45, 0.8) 0%,
      rgba(47, 45, 45, 0.2) 100%
    );
}

.hero__has-zip .hero__content {
  max-width: 93.6rem;
  width: 100%;
}

.hero__has-zip.hero--nearest-comm:not(.no-geo):not(.no-nearest-data) form {
  margin: 0;
}

.hero__has-zip form {
  padding: 1.2rem 1.2rem 1.2rem 2rem;
  width: 55.1rem;
  max-width: 100%;
  color: var(--base-color);
}

.hero__has-zip form label {
  font-weight: 600;
  margin-bottom: 0;
}

.hero__has-zip form input[type=text] {
  font-size: 1.6rem;
  font-weight: 500;
  width: 20.4rem;
  max-width: 100%;
  margin-bottom: 0;
}

.hero__form {
  background: rgba(255, 255, 255, .98);
  font-weight: 400;
  min-height: 37.8rem;
  max-width: 46.6rem;
  padding: 2rem 2.4rem 2.4rem;
  width: 50%;
}

.hero__form-title {
  font-size: 1.4rem;
  font-weight: 500;
  flex: 1;
  line-height: 1.5;
}

.hero__form-title * {
  margin-bottom: 0;
}

.hero__form-icon {
  width: 6.4rem;
  height: 6.4rem;
  padding: 1.6rem;
}

.hero__form-icon img {
  width: 32px !important;
  height: auto !important;
  object-fit: contain;
}

.hero__form form input[type="text"], 
.hero__form form input[type="email"],
.hero__form form input[type="tel"], 
.hero__form form input[type="number"], 
.hero__form form input[type="file"],
.hero__form form select, 
.hero__form form textarea {
  margin-bottom: 0.8rem;
  min-height: 4.4rem;
  padding: 1rem 0.8rem;
}

.hero-text {
  padding: 8rem 2rem;
}

.hero-text__bg {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 16rem;
  background: var(--orange-light);
  opacity: 0.33;
  filter: blur(100px);
  pointer-events: none;
  z-index: -1;
}

.hero__nearest {
  line-height: 1.75;
}

.hero:has(.hero__nearest) .cards__card-image {
  height: 18rem;
}

.hero:has(.hero__nearest) .cards__card-content {
  padding: 1.6rem;
}

.hero:has(.hero__nearest) .cards__card-content a:not(:hover) {
  color: var(--base-color);
}

@media (min-width: 1141px) {
  .hero .content-wrapper {
    padding-top: var(--header-height);
  }
}

@media (min-width: 768px) {
  .hero {
    min-height: 58rem;
  }

  .hero.hero--simple:not(.hero--centered):not(:has(.hero__bg--no-img)),
  .hero.hero__has-zip:not(.hero--centered):not(:has(.hero__bg--no-img)),
  .hero.hero.no-geo:not(.hero--centered):not(:has(.hero__bg--no-img)) {
    min-height: 640px;
    padding-block: 10rem;
    place-content: end;
  }

  .hero.hero--video-bg {
    min-height: 640px;
    place-content: center;
  }

  .hero:has(.hero__form):has(.hero__bg--no-img) {
    min-height: 600px;
  }

  .hero:has(.hero__form):not(:has(.hero__bg--no-img)) {
    min-height: 710px;
    place-content: center;
  }

  .hero:has(.hero__nearest):not(.no-geo):not(:has(.hero__bg--no-img)) .content-wrapper.flex-middle {
    align-items: flex-end;
  }

  .hero.hero--left-aligned .hero__content {
    margin-left: 0;
    max-width: 70rem;
    text-align: left;
  }

  .hero__text {
    text-shadow: 0px 20px 24px rgba(0,0,0,0.08);
  }

  .hero__home .hero__text h1 span {
    margin-top: 1.6rem;
  }

  .hero__secondary .hero__content {
    margin: 0;
    max-width: 69.6rem;
    width: 45%;
  }

  .header-content.flex-top .header-content__right.header-content__right--pt {
    padding-top: 4.8rem;
  }

  .hero__nearest {
    flex: 0 1 34rem;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .hero__opening.tablet.flex {
    display: flex !important;
    margin-inline: auto;
    width: max-content;
  }
}

@media (min-width: 768px) and (max-width: 1080px) {
  .hero__has-zip.hero--nearest-comm .content-wrapper {
    max-width: calc(100vw - 6rem);
  }

  .hero__secondary .hero__content {
    width: 55%;
  }

  .hero__nearest {
    flex: 0 1 100%;
  }
}

@media (max-width: 1080px) {
  .hero__has-zip.hero--nearest-comm:not(.no-geo) form {
    margin-inline: auto !important;
  }

  .hero__has-zip form input[type=text] {
    text-align: center;
    width: 100%;
  }
}

@media (max-width: 767px) {
  .hero {
    line-height: 1.65;
  }

  .hero__secondary {
    font-size: 2rem;
    line-height: 1.5;
  }

  .hero-text {
    padding: 4rem 2rem 4rem;
  }

  .hero-text:not(:has(svg)) {
    margin-top: calc(var(--scroll-padding-top) / 2);
  }

  .hero__secondary .hero__bg,
  .hero-text > svg + .content-wrapper + .hero-text__bg,
  .hero > svg {
    display: none;
  }

  .hero-text > svg circle {
    fill: var(--cream);
  }

  .hero__home .hero__text h1 span {
    margin-top: 1.6rem;
  }

  .hero.hero__default .hero__text p {
    font-size: 1.8rem;
    font-weight: 400;
  }

  .hero-text .content-wrapper {
    padding-top: 4rem !important;
  }

  .hero__content,
  .hero__form {
    max-width: 100%;
    width: 100%;
  }

  .hero__secondary {
    background: var(--shadow-green);
    padding: calc(var(--vertical-spacing) / 2) 2rem !important;
  }

  .hero__secondary,
  .hero__form form input {
    text-align: center;
  }

  .hero__zip,
  .hero__form .hero__form-icon {
    margin-left: auto;
    margin-right: auto;
  }

  .hero__form .hs-form-field .input,
  .hero__form .hs-form-field .hs-error-msgs,
  .hero-text .header-content.text-center {
    text-align: left !important;
  }

  .hero.hero__default {
    padding: 0 1.6rem;
    margin-top: var(--header-height);
  }

  .hero.hero__default .content-wrapper {
    padding-top: 14rem !important;
  }

  .hero__default .hero__bg {
    bottom: unset;
    height: 22rem;
  }

  .hero__default .hero__bg:before {
    background: linear-gradient(180deg, rgba(250, 247, 241, 0) 45.99%, #FAF7F1 100%);
    background-blend-mode: unset;
  }

  .hero__default .hero__content {
    padding: 2.4rem 1.6rem;
    background: var(--green);
    border-radius: 3.2rem;
    text-align: center;
  }

  .hero__default.hero__home .hero__content {
    padding: 2.4rem 1.6rem 6.4rem;
  }

  .hero__default {
    background: var(--cream);
  }

  .hero__default .hero__form,
  .hero__form-icon {
    display: none;
  }

  .hero__opening {
    padding: 0;
    background: none;
    border-radius: 0;
  }

  .hero__nearest.cards .cards__card-content {
    text-align: left;
  }

  .hero__secondary .hero__content .button.button--white {
    background: var(--orange) !important;
    border-color: var(--orange) !important;
  }
}

.hero--text .modal__container {
  width: 100%;
}

.hero--text .modal__image {
  flex: 0 1 57.7rem;
}
.icon-cards__wrapper .cards__slider .cards__card {
  margin-right: 2.4rem;
}

@media (min-width: 768px) {
  .icon-cards__wrapper .cards__card {
    flex: unset;
  }

  .icon-cards__wrapper .cards:not(.cards__slider).cards__1 .cards__card {
    width: 100%;
  }

  .icon-cards__wrapper .cards:not(.cards__slider).cards__2 .cards__card,
  .icon-cards__wrapper .cards:not(.cards__slider).cards__4 .cards__card,
  .icon-cards__wrapper .cards.cards__slider.cards__width-narrow .cards__card {
    width: calc(50% - var(--gap-24) * 1/2);
  }

  .icon-cards__wrapper .cards:not(.cards__slider) .cards__card {
    width: calc(33.33% - var(--gap-24) * 2/3);
  }

  .icon-cards__wrapper .cards.cards__slider.cards__width-wide .cards__card {
    width: calc(33.33% - (var(--gap-24) * 2) * 2/3);
  }
}

@media (min-width: 1024px) {
  .icon-cards__wrapper .cards:not(.cards__slider).cards__4 .cards__card  {
    width: calc(25% - var(--gap-24) * 3/4);
  }

  .icon-cards__wrapper .cards.cards__slider.cards__width-narrow .cards__card  {
    width: calc(25% - (var(--gap-24) * 2) * 3/4);
  }
}

@media (min-width: 1456px) {
  .icon-cards__wrapper {
    margin-left: -2rem;
  }

  .icon-cards__wrapper .cards.cards__slider.cards__width-wide .cards__card {
    width: calc(33.33% - var(--gap-24) * 2/3);
  }

  .icon-cards__wrapper .cards.cards__slider.cards__width-wide .cards__card {
    max-width: 45.6rem;
  }

  .icon-cards__wrapper .cards.cards__slider.cards__width-narrow .cards__card  {
    width: calc(25% - var(--gap-24) * 3/4);
  }

  .icon-cards__wrapper .cards.cards__slider.cards__width-narrow .cards__card {
    max-width: 33.6rem;
  }
}

/* Process module */

.process.icon-cards__wrapper {
  padding: 4rem 0 2.4rem 2rem;
}

.process.icon-cards__header {
  padding-right: 2rem;
  margin-bottom: 4rem;
  margin-inline: auto;
  max-width: 86rem;
}

@media (min-width: 768px) {
  .process.icon-cards__wrapper {
    padding: 8rem;
  }

  .process.icon-cards__header {
    padding-right: 0;
    margin-bottom: 7rem;
  }
}

@media (max-width: 767px) {
  .process.icon-cards__wrapper .cards__card {
    width: calc(100% - 4rem);
  }
}
.icon-grid-1__icon {
  width: 6.4rem;
  height: 6.4rem;
  padding: 1.6rem;
}

.icon-grid-1__icon img {
  width: 32px !important;
  height: auto !important;
  object-fit: contain;
}

.icon-grid-1__item h3 {
  flex: 1;
}

@media (min-width: 700px) {
  .icon-grid-1__wrapper .hidden-desktop{
    display: none !important;
  }

  .icon-grid-1 {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 800px) {
  .icon-grid-1 {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 699px) {
  .icon-grid-1__wrapper .hidden-mobile{
    display: none;
  }
}

@media (max-width: 767px) {
  .icon-grid-1__wrapper .mt-56 {
    margin-top: 4rem !important;
  }
}
@media (min-width: 768px) {
  .image-cards__wrapper .cards .header-content {
    flex: 0 1 33.6rem;
    margin-left: 0;
    margin-right: auto;
  }

  .image-cards__wrapper .cards .header-content,
  .image-cards__wrapper:has(.header-content) .cards .cards__card {
    /* flex: 0 1 45.6rem; */
    flex: 0 1 calc(33.33% - var(--gap-24) * 2/3);
  }

  .image-cards__wrapper .cards__card-content {
    padding-block: 3.2rem;
  }
}


@media (min-width: 768px) and (max-width: 991px) {
  .image-cards__wrapper .cards .header-content,
  .image-cards__wrapper:has(.header-content) .cards .cards__card { 
    flex: 0 1 calc(50% - var(--gap-24) * 1/2);
  }
}


.image-cards__wrapper .cards .cards__card {
  padding: 0.8rem;
}

.image-cards__wrapper .cards .cards__icon.icon__wrapper {
  margin-top: 2.4rem;
  margin-left: 1.6rem;
}
.news-cards__card {
  grid-template-columns: 1fr 2fr;
  padding: .8rem;
  transition: all .3s ease-in;
}

.news-cards__card-inner {
  grid-template-columns: 1fr 2fr;
}

.news-cards__title.subtitle-2 {
  font-size: 1.6rem;
}

.news-cards__details {
  padding: 0.8rem 2rem 0.8rem 0;
}

.news-cards__image {
  height: 100%;
  width: 100%;
}

.news-cards__category {
  top: 1.6rem;
  left: 1.6rem;
  padding: .4rem 1.2rem;
  font-size: 1.4rem;
  font-weight: 600;
}

/* enable Flickity by default */
.news-cards__cards:after {
  content: 'flickity';
  display: none; /* hide :after */
}

@media screen and ( min-width: 1140px ) {
  /* disable Flickity for large devices */
  .news-cards__cards:after {
    content: '';
  }

  .news-cards__card {
    box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.06);
    box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.1);
  }

  .news-cards__card:hover {
    box-shadow: 0px 4px 6px -2px rgba(0, 0, 0, 0.03);
    box-shadow: 0px 12px 16px -4px rgba(0, 0, 0, 0.08);
  }
}

@media (max-width: 1139px) {
  .news-cards__card-inner {
    grid-template-columns: 1fr;
    min-height: 100%;
  }

  .news-cards__image {
    aspect-ratio: 5/3;
  }
  
  .news-cards__details {
    padding: 0 1.2rem 2.4rem;
  }
}

@media (max-width: 767px) {
  .news-cards__card {
    max-width: calc(100% - 2rem);
    margin-right: 0.8rem;
  }

  .news-cards__slider-nav {
    padding-right: 2rem;
  }
}
.page-nav__wrapper {
  padding: 2rem 2rem;
  /*border-bottom: 1px solid var(--cream);*/
  box-shadow: 0px 2px 3px 0px rgba(0, 0, 0, 0.05);
}

.page-nav.gap-24 {
  row-gap: var(--gap-sm);
}

.page-nav--mobile select {
  appearance: none;
  background-image: url('data:image/svg+xml,<svg class="desktop-menu-only" width="9" height="6" viewBox="0 0 9 6" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.20711 4.79289C4.81658 5.18342 4.18342 5.18342 3.79289 4.79289L1.20711 2.20711C0.577144 1.57714 1.02331 0.5 1.91421 0.5H7.08579C7.97669 0.5 8.42286 1.57714 7.79289 2.20711L5.20711 4.79289Z" fill="%23000"></path></svg>');
  background-repeat: no-repeat;
  background-position: 98% 50%;
  border: 1px solid var(--orange);
  border-radius: 8px;
  color: var(--base-color);
  font-size: 1.4rem;
  font-weight: 600;
  line-height: 1.1;
  padding: 1.2rem 2.4rem 1.2rem 1.6rem;
  width: 100%;
}

.page-nav__sticky {
  position: sticky;
  z-index: 3;
  top: var(--header-height);
  transition: top .3s ease-in;
}

@media (max-width: 767px) {
  .page-nav--desktop {
    display: none;
  }
}

@media (max-width: 1139px) {
  .page-nav__wrapper {
    padding: 0.8rem 2rem;
  }
}
.resource-cards-1:after {
  content: '';
  display: block;
  position: absolute;
  bottom: -8rem;
  left: 0;
  right: 0;
  height: 16rem;
  background: var(--orange-light);
  opacity: 0.16;
  filter: blur(100px);
}

.resource-cards-1__card {
  box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.1);
  color: var(--base-color);
  padding: .8rem;
  text-decoration: none !important;
  transition: all .3s ease-in;
}

.resource-cards-1__card:hover {
  box-shadow: 0px 4px 6px -2px rgba(0, 0, 0, 0.03);
  box-shadow: 0px 12px 16px -4px rgba(0, 0, 0, 0.08);
}
.resource-cards-1__details {
  padding: 2rem;
}
.resource-cards-1__title a {
  color: var(--base-color);
}
.resource-cards-1__button {
  margin-top: auto;
  align-self: flex-start;
}
.resource-cards-1__more {
  text-align: center;
}

.resource-cards-1__image {
  display: block;
}

.resource-cards-1__category {
  top: 1.6rem;
  left: 1.6rem;
  padding: .4rem 1.2rem;
  font-size: 1.4rem;
  font-weight: 600;
}

.resource-cards-1 .flickity-viewport {
  margin-bottom: 10px;
}

@media (min-width: 769px) {
  .resource-cards-1__cards {
    display: grid;
    grid-gap: var(--gap-24);
    grid-template-columns: repeat(2, 1fr);
    /*grid-template-rows: repeat(3, 1fr);*/
  }

  .resource-cards-1__cards:not(.resource-cards-1__cards--uniform) .resource-cards-1__card:nth-child(1) { grid-area: 1 / 1 / 3 / 2; }
  .resource-cards-1__cards:not(.resource-cards-1__cards--uniform) .resource-cards-1__card:nth-child(2) { grid-area: 1 / 2 / 2 / 3; }
  .resource-cards-1__cards:not(.resource-cards-1__cards--uniform) .resource-cards-1__card:nth-child(3) { grid-area: 3 / 1 / 4 / 2; }
  .resource-cards-1__cards:not(.resource-cards-1__cards--uniform) .resource-cards-1__card:nth-child(4) { grid-area: 2 / 2 / 4 / 3; }

  .resource-cards-1__cards.resource-cards-1__cards--featured .resource-cards-1__card:nth-child(1) { grid-area: 1 / 1 / 4 / 2; }
  .resource-cards-1__cards.resource-cards-1__cards--featured .resource-cards-1__card:nth-child(2) { grid-area: 1 / 2 / 2 / 3; }
  .resource-cards-1__cards.resource-cards-1__cards--featured .resource-cards-1__card:nth-child(3) { grid-area: 2 / 2 / 3 / 3; }
  .resource-cards-1__cards.resource-cards-1__cards--featured .resource-cards-1__card:nth-child(4) { grid-area: 3 / 2 / 4 / 3; }

  .resource-cards-1__image {
    aspect-ratio: 680/397;
    max-height: 39.7rem;
  }

  .resource-cards-1__card {
    flex-direction: column;
  }

  .resource-cards-1__card.small,
  .resource-cards-1__cards--uniform .resource-cards-1__card {
    flex-direction: row;
    gap: var(--gap-sm);
    align-items: center;
  }

  .resource-cards-1__card.small .resource-cards-1__image,
  .resource-cards-1__cards--uniform .resource-cards-1__card .resource-cards-1__image {
    aspect-ratio: unset;
    max-height: unset;
    height: 100%;
    width: 48%;
  }

  .resource-cards-1__card.small .resource-cards-1__details,
  .resource-cards-1__cards--uniform .resource-cards-1__card .resource-cards-1__details {
    flex: 1;
  }

  .resource-cards-1__cards--featured .resource-cards-1__card.small .resource-cards-1__image {
    width: 30%;
  }
  .resource-cards-1__cards--featured .resource-cards-1__card.small .resource-cards-1__details.gap-sm {
    gap: 0.8rem;
  }
  .resource-cards-1__cards--featured .resource-cards-1__card.small .resource-cards-1__title.h5 {
    font-size: 1.6rem;
  }

  /* disable Flickity for large devices */
  .resource-cards-1__cards:after {
    content: '';
    display: none;
  }
}

@media (min-width: 769px) and (max-width: 1024px) {
  .resource-cards-1__cards.resource-cards-1__cards--featured {
    grid-template-columns: 2fr 3fr;
  }
}

@media (max-width: 768px) {
  .resource-cards-1__card {
    box-shadow: none !important;
    min-height: 100%;
    margin-right: .8rem;
    transition: none;
    width: calc(100% - 4rem);
  }

  .resource-cards-1__image {
    height: 17.2rem;
  }

  .resource-cards-1__details {
    flex: 1;
  }

  .resource-cards-1 .flickity__nav {
    padding-right: 2rem;
  }

  /* enable Flickity by default */
  .resource-cards-1__cards:after {
    content: 'flickity';
    display: none; /* hide :after */
  }
}
.resource-cards-2__slider-wrapper.cards__card {
  border-radius: 3.2rem 3.2rem 0 0;
  overflow: hidden;
  padding: 0 0 4px;
}

.resource-cards-2__slider-nav {
  margin-top: var(--gap-24);
}

.resource-cards-2__cards .cards__icon.icon__wrapper {
  margin-top: 2.4rem;
  margin-left: 1.6rem;
}

@media (min-width: 768px) {
  .resource-cards-2 .cards__card {
    flex: unset;
  }

  .resource-cards-2 .cards {
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: auto auto;
  }

  .resource-cards-2 .cards__card:nth-child(1) {
    grid-column: 1 / span 3; /* Roughly 3/12 */
  }

  .resource-cards-2 .cards__card:nth-child(2) {
    grid-column: 4 / span 4; /* Roughly 4/12 */
  }

  .resource-cards-2 .cards__card:nth-child(3) {
    grid-column: 8 / span 5; /* Roughly 5/12 */
  }

  .resource-cards-2 .cards__card:nth-child(4) {
    grid-column: 1 / span 8; /* Roughly 8/12 */
  }

  .resource-cards-2 .cards__card:nth-child(5) {
    grid-column: 9 / span 4; /* Roughly 4/12 */
  }

  .resource-cards-2__slider-wrapper.cards__card {
    border-radius: 3.2rem;
    padding: 0;
  }

  .resource-cards-2__cards .cards__card-image {
    aspect-ratio: initial;
    height: 24.8rem;
  }

  .resource-cards-2__slider-nav {
    position: absolute;
    top: 2.4rem;
    right: 2.4rem;
    margin: 0;
  }
}
.residents__resident,
.residents__resident-inner,
.residents__text {
  min-height: 100%;
}

.residents__resident {
  border: 2px solid transparent;
  margin-right: .8rem;
  outline: none !important;
  max-width: 80vw;
  width: 105.6rem;
}

.residents__resident:focus {
  border-color: var(--green);
}

.residents__resident-inner {
  gap: 3.2rem 7.2rem;
  padding: 0.8rem;
  width: 100%;
}

.residents__image-wrapper {
  aspect-ratio: 4/3;
  max-width: 60rem;
  width: 100%;
}

.residents__image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.residents__image-wrapper button {
  max-width: max-content;
}

.residents__resident:not(.is-selected) .button {
  display: none;
}

.residents__buttons, 
.residents__buttons .button-container {
  width: 100%;
}

.residents__buttons .button-container.mt-sm.mt-xs {
  margin-top: 0.8rem !important;
} 

@media (min-width: 768px) {
  .residents__text {
    max-width: 29rem;
  }

  .residents__image-wrapper {
    width: 60%;
  }
}

@media (min-width: 1416px) {
  .residents__wrapper .flickity-prev-next-button.next {
    right: calc((100vw - var(--container-width)) / 2);
  }
}

@media (max-width: 767px) {
  .residents__wrapper {
    margin: 0 -2rem 0 0;
    width: calc(100% + 2rem);
  }

  .residents > .flickity-button {
    display: none;
  }

  .residents__wrapper .flickity__nav-wrapper {
    margin-left: 0;
    margin-top: 2.4rem !important;
    max-width: calc(100vw - 4rem);
  }

  .residents__resident {
    margin: 0 0.8rem 0 0;
    max-width: calc(100% - 2.4rem);
    width: 100%;
  }

  .residents__text.gap-24 {
    gap: 1.6rem;
    padding: 0 1rem 1.6rem;
  }
}
.reviews__review {
  padding: 5.6rem 2rem;
  width: 100%;
  min-height: 100%;
  border: 2px solid transparent;
  outline: none !important;
}

.reviews__review:focus {
  border-color: var(--green);
}

.reviews__inner {
  width: 93.6rem;
  max-width: 100%;
  min-height: 100%;
}

.reviews__review.content-collapsed,
.reviews__review.content-collapsed .reviews__inner {
  min-height: auto !important;
}

.reviews__testimony {
  color: var(--green);
  font-weight: 500;
  font-size: 32px;
  line-height: 1.25;

  display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

.reviews__review .reviews__more {
  align-self: flex-start;
}

.reviews__testimony.full-text {
  -webkit-line-clamp: unset;
  display: block;
}

.reviews__review:not(.is-selected) .reviews__inner .button {
  display: none;
}

.stars {
  /*--percent: calc(var(--rating) / 5 * 100%);*/
  display: flex;
  gap: .4rem;
  font-size: 0;
  font-size: 1.4rem;
  font-family: Times;
  line-height: 1;
}
/*.stars::before {
  content: "★★★★★";
  content: url("data:image/svg+xml,%3Csvg width='96' height='16' viewBox='0 0 96 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.00038 12.1759L3.29808 14.8081L4.3483 9.52254L0.391907 5.8638L5.74327 5.22931L8.00038 0.335938L10.2574 5.22931L15.6088 5.8638L11.6524 9.52254L12.7026 14.8081L8.00038 12.1759Z' fill='%231B4D2C'/%3E%3Cpath d='M28.0004 12.1759L23.2981 14.8081L24.3483 9.52254L20.3919 5.8638L25.7433 5.22931L28.0004 0.335938L30.2574 5.22931L35.6088 5.8638L31.6524 9.52254L32.7026 14.8081L28.0004 12.1759Z' fill='%231B4D2C'/%3E%3Cpath d='M48.0004 12.1759L43.2981 14.8081L44.3483 9.52254L40.3919 5.8638L45.7433 5.22931L48.0004 0.335938L50.2574 5.22931L55.6088 5.8638L51.6524 9.52254L52.7026 14.8081L48.0004 12.1759Z' fill='%231B4D2C'/%3E%3Cpath d='M68.0004 12.1759L63.2981 14.8081L64.3483 9.52254L60.3919 5.8638L65.7433 5.22931L68.0004 0.335938L70.2574 5.22931L75.6088 5.8638L71.6524 9.52254L72.7026 14.8081L68.0004 12.1759Z' fill='%231B4D2C'/%3E%3Cpath d='M88.0004 12.1759L83.2981 14.8081L84.3483 9.52254L80.3919 5.8638L85.7433 5.22931L88.0004 0.335938L90.2574 5.22931L95.6088 5.8638L91.6524 9.52254L92.7026 14.8081L88.0004 12.1759Z' fill='%231B4D2C'/%3E%3C/svg%3E%0A");*
  letter-spacing: 3px;
  background: linear-gradient(90deg, var(--green) var(--percent), #D8D8D8 var(--percent));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}*/


.reviews__thumb {
  padding: 2.4rem;
  margin-right: .8rem;
  width: calc(25% - .6rem);
  transition: background .3s ease-in-out;
  border: 2px solid transparent;
  outline: none !important;
}

.reviews__thumb:focus {
  border-color: var(--green);
}

.reviews__thumb:hover,
.reviews__thumb.is-selected {
  background: var(--mint);
}

@media (max-width: 767px) {
  .reviews__review {
    padding: 2.4rem;
  }

  .reviews .flickity-button {
    display: none;
  }

  .reviews__meta {
    align-items: flex-start;
  }

  .reviews__meta .stars {
    order: 2;
  }

  .reviews__testimony {
    font-weight: 600;
    font-size: 1.6rem;
    line-height: 1.65;

    /*-webkit-line-clamp: 6;*/
  }
}
.stories__story {
  gap: 3.2rem 7.2rem;
  padding: 0.8rem 8rem 0.8rem 0.8rem;
  width: 100%;
  min-height: 100%;
  border: 2px solid transparent;
  outline: none !important;
}

.stories__story:focus {
  border-color: var(--green);
}

.stories__image-wrapper,
.stories__image {
  aspect-ratio: 1;
  max-width: 40rem;
  width: 100%;
}

.stories__image-wrapper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.stories__testimony {
  color: var(--green);
  font-weight: 500;
  font-size: 2.4rem;
  line-height: 1.25;
}

.stories__story:not(.is-selected) .button {
  display: none;
}

.stories__thumb {
  padding: 2.4rem;
  margin-right: .8rem;
  width: calc(25% - .6rem);
  transition: background .3s ease-in-out;
  border: 2px solid transparent;
  outline: none !important;
  min-height: 100%;
}

.stories__thumb:focus {
  border-color: var(--green);
}

.stories__thumb:hover,
.stories__thumb.is-selected {
  background: var(--mint);
}

.stories__thumb .subtitle-2 {
  line-height: 1.4;
}

.stories__image-wrapper button {
  max-width: max-content;
}

@media (min-width: 768px) {
  .stories__text {
    padding-block: 2rem;
  }
}

@media (min-width: 768px) and (max-width: 1140px) {
  .stories__story {
    gap: 3.2rem;
    padding-right: 6rem;
  }

  .stories__testimony {
    font-size: 2rem;
  }
}

@media (max-width: 767px) {
  .stories .flickity-button {
    display: none;
  }

  .stories__wrapper .flickity__nav {
    padding-right: 2rem;
  }
  
  .stories__story {
    min-height: 100%;
    margin-right: 0.8rem;
    max-width: calc(100% - 4rem);
    padding: 0.8rem 0.8rem 3.2rem;
  }

  .stories__text {
    padding-inline: 0.8rem;
  }

  .stories__testimony {
    font-size: 1.8rem;
  }
}
.testimonial__card {
  padding: 0.8rem;
}

.testimonial__card.gap-72 {
  row-gap: var(--gap-md);
}

.testimonial__content {
  padding-bottom: var(--gap-md);
}

.testimonial__content-text > * {
  margin-bottom: 0;
}

.testimonial__quote {
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.25;
  text-indent: -1rem;
}

.testimonial__image {
  aspect-ratio: 1;
  width: 100%;
}

@media (min-width: 768px) {
  .testimonial__image {
    flex: 0 1 48rem;
  }

  .testimonial__content {
    flex: 0 1 77rem;
    padding-top: var(--gap-md);
  }
}

@media (max-width: 767px) {
  .testimonial__image {
    aspect-ratio: 32 / 23;
  }

  .testimonial__content {
    padding-inline: var(--gap-sm);
  }
}
.testimonial-2 {
  width: 100%;
  height: 100%;
}

.testimonial-2__card {
  width: 100%;
  height: auto;
  overflow: hidden;
}

.testimonial-2__image::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(100% 150% at 50% 100%, #2F2D2D 0%, rgba(47, 45, 45, 0) 100%);
  mix-blend-mode: multiply;
  z-index: 1;
}

.testimonial-2__image {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}

.testimonial-2__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.testimonial-2__content {
  z-index: 3;
  width: 100%;
  height: 100%;
  padding: 3.2rem;
}

@media (min-width: 768px) {
  .testimonial-2__card {
    aspect-ratio: 18/11;
  }

  .testimonial-2__content {
    padding: 8rem;
  }

  .testimonial-2__image::before {
    background: radial-gradient(76% 80% at 50% 100%, #2F2D2D 0%, rgba(47, 45, 45, 0) 100%);
  }
}

/* Components */

body.modal-open
  .body-wrapper
  > div[data-global-resource-path*="/templates/partials/header.html"] {
  z-index: unset;
}

.header {
  position: fixed;
  top: 0;
  z-index: 101;
  width: 100%;

  background-color: var(--white);
  /*border-bottom: 1px solid var(--light-gray);*/
}

.header__container {
  padding: 1.6rem 2rem;
}

.header__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 2rem;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

/* Logo */

.header__logo a {
  display: inline-block;
  font-size: 0;
  vertical-align: middle;
}

@media (max-width: 1140px) {
  .header__logo img {
    max-width: 11.9rem;
  }
}

/* Nav */

.header__navigation nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

/* Navigation skipper */

.header__skip {
  height: 1px;
  left: -1000px;
  overflow: hidden;
  position: absolute;
  text-align: left;
  top: -1000px;
  width: 1px;
  color: var(--white) !important;
  background: var(--green);
  padding: 0.6rem 1rem;
  border-radius: 0 0 8px 0;
  text-decoration: none !important;
  font-weight: 600;
}

.header__skip:hover,
.header__skip:focus,
.header__skip:active {
  height: auto;
  left: 0;
  overflow: visible;
  top: 0;
  width: auto;
  color: var(--white);
}

/* Last viewed community bar */

.header__recent-community {
  padding: 1.2rem 2rem;
}

@media (min-width: 992px) {
  .header__recent-community-right-inner a[href^="tel:"] {
    min-width: 215px;
  }
}

@media (max-width: 991px) {
  .header__recent-community {
    padding: 0.8rem 2rem;
  }

  .header__recent-community .flex {
    gap: var(--gap-xs);
    justify-content: center;
    text-align: center;
  }

  .header__recent-community-left.flex {
    font-size: 1.4rem;
  }
}

@media (max-width: 600px) {
  .header__recent-community .flex {
    flex-direction: column;
  }

  .header__recent-community-left.flex {
    gap: 0;
  }
}
.footer {
  font-size: 1.4rem;
}

.footer-top {
  padding: 4rem 2rem;
}

@media (min-width: 992px) {
  .ft-left {
    flex: 0 1 33.5rem;
  }

  .ft-right {
    flex: 0 1 50%;
  }
}

.footer-social a.button.button--white {
  padding: 1.4rem;
}

.footer-subscribe {
  padding: 4.9rem 4rem;
}

.form-title-icon {
  width: 8rem;
  height: 8rem;
  padding: 2rem;
}

.form-title-icon svg {
  width: 100%;
  height: auto;
  filter: invert(100%);
}

.footer-subscribe p {
  font-size: 1.6rem;
  font-weight: 500;
}

.footer-subscribe form.hs-form {
  display: flex;
  flex-direction: row;
  gap: var(--gap-sm);
}

.footer-subscribe form .hs_email input[type=email]{
  border-bottom: 1px solid var(--white);
  color: var(--white);
  background: transparent;
}

.footer-subscribe .hs-error-msg,
.footer-subscribe .hs-error-msgs {
  color: var(--white);
}

.footer-subscribe form .hs_email {
  flex: 0 1 calc(100% - 12.4rem);
}

.footer-subscribe form .hs_submit input[type=submit] {
  background-color: var(--white);
  border-color: var(--white);
  color: var(--base-color);
}

.footer-subscribe form .hs_submit input[type=submit]:active,
.footer-subscribe form .hs_submit input[type=submit]:focus,
.footer-subscribe form .hs_submit input[type=submit]:hover {
  background-color: var(--orange-light);
  border-color: var(--orange-light);
  color: var(--base-color);
}

@media (max-width: 600px) {
  .footer-subscribe form.hs-form {
    flex-direction: column;
  }
}

.footer-bottom {
  padding: 4rem 2rem;
}

.footer:not(.footer-lp) .footer-info {
  border-top: 1px solid rgba(47, 45, 45, 0.1);
  padding: 4rem 0 0;
}

@media (min-width: 768px) {
  .fb-left {
    flex: 0 1 105.6rem;
    padding-top: 1.5rem;
  }

  .fb-right {
    flex: 0 0 22.8rem;
  }
}

.footer-menu {
  width: 100%;
}

.footer-menu #hs_cos_wrapper_footer_menu {
  flex: 1;
}

.footer-menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
  width: 100%;
}

/* .footer-menu > ul {
  max-width: 18.1rem;
} */

.footer-menu ul:first-child > li > a[href*='javascript:;'] {
  font-weight: 600;
  font-size: 1.6rem;
  line-height: 1.5;
  border-bottom: 0;
  cursor: text;
}

/* .footer-menu a[href*='tel:'] {
  white-space: nowrap;
} */
 
.footer-menu a span {
  display: inline-block;
}


.footer-menu ul {
  display: flex;
  gap: 2.4rem;
  justify-content: space-between;
}

.footer-menu .hs-menu-wrapper > ul {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
}

@media (min-width: 1024px) {
  .is-community .footer-menu .hs-menu-wrapper > ul {
    grid-template-columns: repeat(6, 1fr);
  }
}

@media (max-width: 1023px) {
  .footer-menu .hs-menu-wrapper > ul {
    grid-template-columns: repeat(4, 1fr);
  }
}

.footer-menu ul > li {
  width: 100%;
}

.footer-menu ul ul {
  display: flex;
  flex-direction: column;
  gap: 1.2rem;
  margin-top: 2.4rem;
}

@media (min-width: 992px) {
  .footer-menu .hs-menu-wrapper > ul > li:last-child {
    display: none;
  }
}

@media (min-width: 768px) {
  .footer-links {
    display: block;
    flex: 0 1 60rem;
  }

  .footer-menu ul > li {
    max-width: 18.1rem;
  }
}

.footer-links ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  width: 100%;
  gap: var(--gap);
  justify-content: space-between;
}


.footer-copyright {
  font-weight: 600;
}

.footer-text p {
  margin-bottom: var(--gap-md);
}

.footer-text p:last-child {
  margin-bottom: 0;
}

.footer-logos img {
  filter: brightness(0%);
}


.footer-bottom a {
  color: var(--base-color);
  border-bottom: 1px solid transparent;
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: 400;
  text-decoration: none;
}

.footer-bottom a:hover,
.footer-bottom a:focus,
.footer-bottom a:active {
  color: var(--base-color);
  border-bottom-color: var(--base-color);
  text-decoration: none;
}

@media (max-width: 991px) {
  .footer-subscribe {
    padding: 2.4rem 2rem;
    flex: 1;
  }

  .form-title-icon {
    width: 6.4rem;
    height: 6.4rem;
    padding: 1.6rem;
  }

  .footer-info {
    display: block;
  }

  .footer:not(.footer-lp) .footer-links {
    display: none;
  }

  .footer-logos {
    max-width: 22rem;
    margin: 4rem auto 0;
  }
}

@media (max-width: 767px) {
  .footer-menu {
    gap: 0;
  }

  .footer-menu .hs-menu-wrapper > ul {
    grid-template-columns: 1fr;
  }

  .footer-menu ul {
    flex-direction: column;
    gap: 0;
  }

  .footer-info {
    border-top: 0;
    padding: 0;
  }

  .footer-top .content-wrapper {
    gap: 2.4rem;
  }

  .footer-subscribe {
    gap: 2.4rem;
    margin-top: 1.6rem;
  }

  .footer-bottom {
    padding-bottom: 10rem;
  }

  .footer-menu ul {
    max-width: 100%;
  }

  .footer-menu ul ul {
    display: none;
    list-style: none;
    margin-top: 0;
  }

  .footer-menu ul > li > a {
    padding: 1.2rem 0;
    display: block;
  }

  .footer-menu ul > li.hs-item-has-children > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    cursor: pointer !important;
  }

  .footer-menu ul > li.hs-item-has-children > a:after {
    content: '';
    display: inline-block;
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 11V5H13V11H19V13H13V19H11V13H5V11H11Z' fill='black'/%3E%3C/svg%3E%0A");
    width: 24px;
    height: 24px;
    transition: all .2s ease;
  }

  .footer-menu ul > li.hs-item-has-children > a.open:after {
    background-image: url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M5 11V13H19V11H5Z' fill='black'/%3E%3C/svg%3E%0A");
  }

  .footer-menu ul ul {
    text-align: left;
  }

  .footer-menu ul a.open + ul {
    display: grid;
  }


  .footer-menu ul ul {
    display: none;
    gap: 0;
  }

  .footer-menu ul > .hs-menu-depth-1 > a.open + ul {
    display: grid;
  }


  .ft-left {
    text-align: center;
    gap: 1.6rem;
  }

  .footer-logo {
    max-width: 23.7rem;
    margin: 0 auto;
  }

  .footer-social {
    justify-content: center;
  }

  .footer-social a.button.button--white {
    padding: 1.2rem;
    width: auto;
  }

  .footer-lp .footer-top .ft-left.flex-row {
    flex-direction: column;
    gap: 3.2rem;
  }
}

/* Utilities */

/* For content that needs to be visually hidden but stay visible for screenreaders */

.show-for-sr {
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  height: 1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}

@media (max-width: 767px) {
  .show-for-sr--mobile {
    border: 0 !important;
    clip: rect(0, 0, 0, 0) !important;
    height: 1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
}

/* Rounded */

.rounded {
  border-radius: 3.2rem;
}

.rounded-md {
  border-radius: 2.4rem;
}

.rounded-sm {
  border-radius: 1.6rem;
}

.rounded-circle {
  border-radius: 50%;
}

/* Spacing */

.mt-none {
  margin-top: 0 !important;
}
.mt-xs {
  margin-top: var(--gap-xs) !important;
}
.mt-sm {
  margin-top: var(--gap-sm) !important;
}
.mt-md {
  margin-top: var(--gap-md) !important;
}
.mt-24 {
  margin-top: var(--gap-24) !important;
}
.mt-56 {
  margin-top: var(--gap-56) !important;
}
.mt-lg {
  margin-top: var(--gap-lg) !important;
}
.mt-xl {
  margin-top: var(--gap-xl) !important;
}

.mb-none {
  margin-bottom: 0 !important;
}
.mb-xxs {
  margin-bottom: var(--gap-xxs) !important;
}
.mb-xs {
  margin-bottom: var(--gap-xs) !important;
}
.mb-sm {
  margin-bottom: var(--gap-sm) !important;
}
.mb-md {
  margin-bottom: var(--gap-md) !important;
}
.mb-24 {
  margin-bottom: var(--gap-24) !important;
}
.mb-56 {
  margin-bottom: var(--gap-56) !important;
}
.mb-lg {
  margin-bottom: var(--gap-lg) !important;
}
.mb-xl {
  margin-bottom: var(--gap-xl) !important;
}

.pt-none {
  padding-top: 0 !important;
}
.pt-xs {
  padding-top: var(--gap-xs) !important;
}
.pt-sm {
  padding-top: var(--gap-sm) !important;
}
.pt-md {
  padding-top: var(--gap-md) !important;
}
.pt-lg {
  padding-top: var(--gap-lg) !important;
}
.pt-xl {
  padding-top: var(--gap-xl) !important;
}

.pb-none {
  padding-bottom: 0;
}
.pb-xs {
  padding-bottom: var(--gap-xs);
}
.pb-sm {
  padding-bottom: var(--gap-sm);
}
.pb-md {
  padding-bottom: var(--gap-md) !important;
}
.pb-lg {
  padding-bottom: var(--gap-lg) !important;
}
.pb-xl {
  padding-bottom: var(--gap-xl);
}


@media (min-width: 768px) {
  .ml-auto {
    margin-left: auto;
  }

  .mb-auto {
    margin-bottom: auto;
  }

  .mr-auto {
    margin-right: auto;
  }
}

@media (max-width: 767px) {
  .pt-xl {
    padding-top: var(--gap-lg) !important;
  }
  .pb-xl {
    padding-bottom: var(--gap-lg);
  }

  .mt-xl {
    margin-top: var(--gap-lg) !important;
  }
  .mb-xl {
    margin-bottom: var(--gap-lg) !important;
  }
}

/* Text */

.text-left {
  text-align: left !important;
}
.text-center {
  text-align: center !important;
}
.text-right {
  text-align: right !important;
}

.text-lowercase {
  text-transform: lowercase !important;
}
.text-uppercase {
  text-transform: uppercase !important;
}
.text-capitalize {
  text-transform: capitalize !important;
}

.text-large {
  font-size: calc(var(--base-font-size) * 1.25);
}
.text-small {
  font-size: calc(var(--base-font-size) * 0.875);
}

.text-white,
.text-white a:not(.button) {
  color: var(--white);
}
.text-dark {
  color: var(--base-color);
}
.text-green {
  color: var(--green);
}


@media (max-width: 767px) {
  .mobile-text-left {
    text-align: left !important;
  }
}


/* Positioning */

.pos-rel {
  position: relative;
  z-index: 1;
}

.pos-abs {
  position: absolute;
}


/* Images */

.img-cover {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
}

.img-contain {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain;
}


/* Responsive embed */

.embed-container {
  aspect-ratio: 16 / 9;
  position: relative;
  /* padding-bottom: 56.25%; */
  height: 100%;
  overflow: hidden;
  max-width: 100%;
}
.embed-container iframe,
.embed-container object,
.embed-container embed,
.embed-container .hs-video-widget {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.embed-container--43 {
  aspect-ratio: 4 / 3;
}
.embed-container--1 {
  aspect-ratio: 1;
}

.video__wrapper .embed-container {
  aspect-ratio: unset;
  width: 100%;
  height: 100%;
}

/* Matterport Virtual Tour Embed */
.matterport-showcase {
  text-align: center;
  min-width: 90vw;
  max-width: calc(100% - 4rem);
}
.matterport-showcase iframe {
  min-height: 240px;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .matterport-showcase iframe {
    min-height: 360px; 
  }
}
@media screen and (min-width: 992px) {
  .matterport-showcase {
    min-width: 75vw;
  }
  .matterport-showcase iframe {
    height: 600px;
    max-width: 1068px;
  }
}


@media (min-width: 768px) {
  .mobile {
    display: none !important;
  }
}

@media (max-width: 991px) {
  .desktop {
    display: none !important;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .tablet {
    display: block !important;
  }
}


/* GSAP - Panel sections */

.dnd-section + .pin-spacer {
  z-index: 0 !important;
}

.pin-spacer + .dnd-section:not(class*="sticky"),
.container-fluid.body-container:not(:first-child) {
  position: relative;
  z-index: 1;
}

.pin-spacer .panel.scrolled {
  transform: translateY(0) !important;
}

.dnd-section.row-depth-1:has(+ .pin-spacer) {
  position: unset;
}


/* chat bubble */

@media (max-width: 767px) {
  #hubspot-messages-iframe-container {
    margin-bottom: 5rem;
  }
  #hubspot-messages-iframe-container .hs-shadow-container.active + iframe#hubspot-conversations-iframe {
    height: calc(100% - 5rem) !important;
  }
}
/**************************\
  Basic Modal Styles
\**************************/

.modal__overlay {
  position: fixed;
  z-index: 102;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.7);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 2rem;
}

.modal__container {
  position: relative;
  max-width: 100%;
  max-height: 100%;
  width: 1180px;
}

.modal__container.content-wrapper--narrow {
  width: var(--container-width-narrow);
}

@media (min-width: 980px) and (max-height: 800px) {
  .modal__container {
    width: 980px;
  }
}

.modal__contents {
  overflow: hidden;
  width: 100%;
}

.modal__contents-inner {
  padding: 2.4rem;
}

.modal__form {
  padding: 4.8rem 4.8rem;
}

.modal__form-title h2,
.modal__form-title h3,
.modal__form-title p {
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .modal__form {
    max-height: 55vh;
    overflow: auto;
    padding: 4.8rem 2.4rem;
  }

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

.modal__container--share.modal__container,
.share__wrapper {
  max-width: 90vw;
  width: 60rem;
}

.share__wrapper {
  margin-inline: auto;
  padding: 7.2rem 2.4rem;
}

.share__wrapper > * {
  width: 100%;
  max-width: 50.4rem;
  margin-left: auto;
  margin-right: auto;
}

.share__wrapper .button--full {
  flex: 1;
}

.modal__close {
  position: absolute;
  z-index: 99;
  top: -6rem;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  appearance: none;
  width: 4rem;
  height: 4rem;
  background-color: var(--green);
  border: 0;
  color: var(--white);
  font-size: 3rem;
  border-radius: 50%;
}
.modal__close:hover {
  background-color: var(--orange);
  cursor: pointer;
}
.modal__close > svg {
  pointer-events: none;
}

.modal__close.alt {
  background-color: var(--white);
  border: 0;
  color: var(--black);
  font-size: 3rem;
  border-radius: .6rem;
}
.modal__close.alt:hover {
  background-color: rgba(255, 255, 255, 0.7);
}

/**************************\
  Demo Animation Style
\**************************/
@-webkit-keyframes mmfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes mmfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@-webkit-keyframes mmfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@keyframes mmfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@-webkit-keyframes mmslideIn {
  from {
    -webkit-transform: translateY(15%);
    transform: translateY(15%);
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@keyframes mmslideIn {
  from {
    -webkit-transform: translateY(15%);
    transform: translateY(15%);
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}

@-webkit-keyframes mmslideOut {
  from {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(-10%);
    transform: translateY(-10%);
  }
}

@keyframes mmslideOut {
  from {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(-10%);
    transform: translateY(-10%);
  }
}

.micromodal-slide {
  display: none;
}

.micromodal-slide.is-open {
  display: block;
}

.micromodal-slide[aria-hidden="false"] .modal__overlay {
  -webkit-animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
  animation: mmfadeIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden="false"] .modal__container {
  -webkit-animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
  animation: mmslideIn 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden="true"] .modal__overlay {
  -webkit-animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
  animation: mmfadeOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden="true"] .modal__container {
  -webkit-animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
  animation: mmslideOut 0.3s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide .modal__container,
.micromodal-slide .modal__overlay {
  will-change: transform;
}