/*!
	Theme Name: Canvas
	Author: Neon Canvas
	Author URI: http://neoncanvas.com
	Description: Client framework for Neon Canvas sites
	Version: 3.0
	Text Domain: canvas
*/
/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Prevent adjustments of font size after orientation changes in IE and iOS.
 */
html {
  font-family: sans-serif; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary { /* 1 */
  display: block;
}

/**
 * Add the correct display in IE 9-.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */
template,
[hidden] {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent; /* 1 */
  -webkit-text-decoration-skip: objects; /* 2 */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the bottom border in Firefox 39-.
 * 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 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * 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;
}

/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * 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;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/* Forms
   ========================================================================== */
/**
 * 1. Change font properties to `inherit` in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
select,
textarea {
  font: inherit; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Restore the font weight unset by the previous rule.
 */
optgroup {
  font-weight: bold;
}

/**
 * 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;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button; /* 2 */
}

/**
 * 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 dotted ButtonText;
}

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

/**
 * 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 {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type=checkbox],
[type=radio] {
  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 and cancel buttons in Chrome and Safari on OS X.
 */
[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54;
}

/**
 * 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 */
}

*,
*:after,
*:before {
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

html {
  scrollbar-gutter: stable;
}

body {
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  font-weight: 400;
}
body.active {
  overflow: hidden;
}
body.logged-in.admin-bar {
  margin-top: 32px;
}
body.logged-in.admin-bar header {
  margin-top: 32px;
}

a {
  transition-property: all;
  transition-duration: 0.8s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0.1s;
  text-decoration: none;
  cursor: pointer;
}

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

iframe {
  max-width: 100%;
}

hr {
  margin: 2em 0;
  height: 1px;
  border: 0;
  background: #ededed;
}

.wrapper:before, .wrapper:after {
  content: "";
  display: table;
}
.wrapper:after {
  clear: both;
}
.wrapper {
  position: relative;
  margin: 0 auto;
  padding: 0 30px;
  max-width: calc(1140px + 2 * 30px);
}
.wrapper.wide {
  max-width: calc(1436px + 2 * 30px);
}
.wrapper.narrow {
  max-width: calc(820px + 2 * 30px);
}

section {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
  padding: 5em 0;
  background: white;
}
section.full {
  padding: 0;
}
@media only screen and (max-width: 920px) {
  section {
    padding-top: 2.5em;
    padding-bottom: 2.5em;
  }
}

@media screen and (max-width: 920px) {
  .fl-col-small {
    max-width: 100% !important;
  }
}

@media screen and (max-width: 920px) {
  .mobile-hide {
    display: none !important;
  }
}

@media screen and (min-width: 920px) {
  .mobile-show {
    display: none !important;
  }
}

.uai {
  display: none !important;
}

.fl-accordion-button-label:focus {
  outline: none !important;
}

body.logged-in.admin-bar {
  margin-top: 0 !important;
}

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

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "ivypresto-display", serif;
  font-weight: 400;
  margin: 0 0 20px;
  padding: 0;
  line-height: 1.1em;
  color: #232f36;
  text-wrap: balance;
  hyphens: manual;
  -webkit-hyphens: manual;
}
h1 em,
h1 i,
h2 em,
h2 i,
h3 em,
h3 i,
h4 em,
h4 i,
h5 em,
h5 i,
h6 em,
h6 i {
  font-style: italic;
  font-weight: inherit;
}

h1 {
  font-size: 95px;
  line-height: 1.158em;
}
@media only screen and (max-width: 1140px) {
  h1 {
    font-size: clamp(30px, -3.8px + 8.67vw, 95px);
  }
}

h2 {
  font-size: 60px;
  line-height: 1.25em;
}
@media only screen and (max-width: 1140px) {
  h2 {
    font-size: clamp(25px, 6.8px + 4.67vw, 60px);
  }
}

h3 {
  font-family: "proxima-nova", sans-serif;
  font-size: 32px;
  line-height: 1em;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #5a778a;
}
@media only screen and (max-width: 1140px) {
  h3 {
    font-size: clamp(21px, 15.28px + 1.47vw, 32px);
    line-height: 1.15em;
  }
}

h4 {
  font-family: "proxima-nova", sans-serif;
  font-weight: 700;
  font-size: 21px;
  line-height: 1.25em;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #232f36;
}
@media only screen and (max-width: 1140px) {
  h4 {
    font-size: clamp(18px, 16.44px + 0.4vw, 21px);
  }
}

h5 {
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  line-height: 1.2em;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #5a778a;
}

h6 {
  font-family: "proxima-nova", sans-serif;
  font-size: 14px;
  line-height: 1.2em;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #5a778a;
}

p {
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  line-height: 31px;
  color: #232f36;
  margin: 0 0 20px;
  text-wrap: pretty;
}
p.eyebrow {
  text-wrap: balance;
}
p:last-of-type {
  margin: 0 0 30px;
}
@media only screen and (max-width: 480px) {
  p {
    line-height: 28px;
  }
}

ul,
ol {
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  line-height: 31px;
  color: #232f36;
}
ul strong,
ol strong {
  font-weight: 700;
}

strong,
b {
  font-weight: 700;
}

blockquote {
  position: relative;
  margin: 0 0 30px;
  padding: 6px 0 6px 30px;
  border-left: 3px solid #f0d6bc;
  background: none;
}
blockquote:after {
  display: none;
}
blockquote .stars {
  display: block;
  margin: 0 0 16px;
}
blockquote .stars i {
  color: #a9732c;
  letter-spacing: 3px;
}
blockquote p.lrg {
  margin: 0 0 12px;
  font-family: "ivypresto-display", serif;
  font-size: 26px;
  line-height: 1.3;
  color: #232f36;
  text-wrap: balance;
}
@media only screen and (max-width: 480px) {
  blockquote p.lrg {
    font-size: 21px;
  }
}
blockquote p:last-of-type {
  margin-bottom: 16px;
}
blockquote .name,
blockquote > span {
  display: block;
  font-family: "proxima-nova", sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #5a778a;
}
@media only screen and (max-width: 480px) {
  blockquote {
    padding-left: 22px;
  }
  blockquote p.lrg {
    font-size: 22px;
  }
}

body:not(.home) .fl-rich-text > :first-child,
body:not(.home) .fl-rich-text > div:first-child > :first-child,
body:not(.home) .entry-content > :first-child,
body:not(.home) .entry-content > div:first-child > :first-child {
  margin-top: 0;
}
body:not(.home) .fl-rich-text > :last-child,
body:not(.home) .fl-rich-text > div:last-child > :last-child,
body:not(.home) .entry-content > :last-child,
body:not(.home) .entry-content > div:last-child > :last-child {
  margin-bottom: 0;
}
body:not(.home) .fl-rich-text p,
body:not(.home) .entry-content p {
  margin: 0 0 1em;
}
body:not(.home) .fl-rich-text h1,
body:not(.home) .fl-rich-text h2,
body:not(.home) .entry-content h1,
body:not(.home) .entry-content h2 {
  margin: 1.6em 0 0.5em;
}
body:not(.home) .fl-rich-text h3,
body:not(.home) .entry-content h3 {
  margin: 1.3em 0 0.4em;
}
body:not(.home) .fl-rich-text h4,
body:not(.home) .fl-rich-text h5,
body:not(.home) .fl-rich-text h6,
body:not(.home) .entry-content h4,
body:not(.home) .entry-content h5,
body:not(.home) .entry-content h6 {
  margin: 1.2em 0 0.4em;
}
body:not(.home) .fl-rich-text p.eyebrow + :is(h1, h2, h3, h4),
body:not(.home) .fl-rich-text :is(h1, h2) + :is(h3, h4),
body:not(.home) .fl-rich-text h3 + h4,
body:not(.home) .entry-content p.eyebrow + :is(h1, h2, h3, h4),
body:not(.home) .entry-content :is(h1, h2) + :is(h3, h4),
body:not(.home) .entry-content h3 + h4 {
  margin-top: 0;
}
body:not(.home) .fl-rich-text :is(p, ul, ol) + :is(h5, h6),
body:not(.home) .entry-content :is(p, ul, ol) + :is(h5, h6) {
  margin-top: 40px;
}
@media only screen and (max-width: 920px) {
  body:not(.home) .fl-rich-text :is(p, ul, ol) + :is(h5, h6),
  body:not(.home) .entry-content :is(p, ul, ol) + :is(h5, h6) {
    margin-top: 32px;
  }
}
body:not(.home) .fl-rich-text ul,
body:not(.home) .fl-rich-text ol,
body:not(.home) .entry-content ul,
body:not(.home) .entry-content ol {
  --list-lh: 31px;
  margin: 0 0 1em;
  line-height: var(--list-lh);
}
body:not(.home) .fl-rich-text ul ul,
body:not(.home) .fl-rich-text ul ol,
body:not(.home) .fl-rich-text ol ul,
body:not(.home) .fl-rich-text ol ol,
body:not(.home) .entry-content ul ul,
body:not(.home) .entry-content ul ol,
body:not(.home) .entry-content ol ul,
body:not(.home) .entry-content ol ol {
  margin: 14px 0 0;
}
@media only screen and (max-width: 480px) {
  body:not(.home) .fl-rich-text ul,
  body:not(.home) .fl-rich-text ol,
  body:not(.home) .entry-content ul,
  body:not(.home) .entry-content ol {
    --list-lh: 28px;
  }
}
body:not(.home) .fl-rich-text li,
body:not(.home) .entry-content li {
  margin: 0 0 14px;
  line-height: inherit;
}
body:not(.home) .fl-rich-text table,
body:not(.home) .entry-content table {
  width: 100%;
  margin: 0 0 1.5em;
  border-collapse: collapse;
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  line-height: 1.5;
  color: #232f36;
}
@media only screen and (max-width: 920px) {
  body:not(.home) .fl-rich-text table,
  body:not(.home) .entry-content table {
    display: block;
    overflow-x: auto;
  }
}
body:not(.home) .fl-rich-text th,
body:not(.home) .fl-rich-text td,
body:not(.home) .entry-content th,
body:not(.home) .entry-content td {
  padding: 12px 16px;
  border-bottom: 1px solid rgba(35, 47, 54, 0.15);
  text-align: left;
  vertical-align: top;
}
body:not(.home) .fl-rich-text th,
body:not(.home) .entry-content th {
  font-weight: 700;
  background: #dae4ec;
}
body:not(.home) .fl-rich-text .wp-caption,
body:not(.home) .entry-content .wp-caption {
  max-width: 100%;
}
body:not(.home) .fl-rich-text .wp-caption-text,
body:not(.home) .fl-rich-text figcaption,
body:not(.home) .entry-content .wp-caption-text,
body:not(.home) .entry-content figcaption {
  margin: 8px 0 0;
  font-family: "proxima-nova", sans-serif;
  font-size: 14px;
  line-height: 1.5;
  color: #5a778a;
}
@media only screen and (max-width: 920px) {
  body:not(.home) .fl-rich-text h1,
  body:not(.home) .fl-rich-text h2,
  body:not(.home) .entry-content h1,
  body:not(.home) .entry-content h2 {
    margin: 1.25em 0 0.4em;
  }
  body:not(.home) .fl-rich-text h3,
  body:not(.home) .entry-content h3 {
    margin: 1.05em 0 0.35em;
  }
  body:not(.home) .fl-rich-text h4,
  body:not(.home) .fl-rich-text h5,
  body:not(.home) .fl-rich-text h6,
  body:not(.home) .entry-content h4,
  body:not(.home) .entry-content h5,
  body:not(.home) .entry-content h6 {
    margin: 1em 0 0.35em;
  }
}

.btn {
  display: inline-block;
  color: #232f36;
  font-size: 0.9em;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
  padding: 10px 30px;
  width: auto;
  background: #f0d6bc;
  border: 0;
  outline: 0;
  cursor: pointer;
  height: auto;
}
.btn {
  border-radius: 38px;
  background-clip: padding-box;
  transition-property: color;
  transition-duration: 0.45s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0s;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 76px;
  padding: 0 50px;
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
}
@media only screen and (max-width: 920px) {
  .btn {
    height: 64px;
    padding: 0 40px;
  }
}
@media only screen and (max-width: 480px) {
  .btn {
    height: 56px;
    font-size: 14px;
    padding: 0 32px;
  }
}
.btn {
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.btn:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #232f36;
  opacity: 0;
  transition: opacity 0.35s ease;
  z-index: -1;
}
.btn:hover {
  color: #ffffff;
}
.btn:hover:before {
  opacity: 1;
}
.btn[data-wipe]:before {
  transition: none;
}
.btn[data-wipe]:hover:before {
  opacity: 0;
}
.btn[data-wipe].is-wipe-in, .btn[data-wipe].is-filled {
  color: #ffffff;
}
.btn[data-wipe].is-wipe-in:before {
  animation: btn-fill-in 0.35s ease forwards;
}
.btn[data-wipe].is-filled:before {
  opacity: 1;
}
.btn[data-wipe].is-wipe-out:before {
  animation: btn-fill-out 0.35s ease forwards;
}

.btn-light {
  display: inline-block;
  color: #232f36;
  font-size: 0.9em;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
  padding: 10px 30px;
  width: auto;
  background: #dae4ec;
  border: 0;
  outline: 0;
  cursor: pointer;
  height: auto;
}
.btn-light {
  border-radius: 38px;
  background-clip: padding-box;
  transition-property: color;
  transition-duration: 0.45s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0s;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 76px;
  padding: 0 50px;
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
}
@media only screen and (max-width: 920px) {
  .btn-light {
    height: 64px;
    padding: 0 40px;
  }
}
@media only screen and (max-width: 480px) {
  .btn-light {
    height: 56px;
    font-size: 14px;
    padding: 0 32px;
  }
}
.btn-light {
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.btn-light:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #ffffff;
  opacity: 0;
  transition: opacity 0.35s ease;
  z-index: -1;
}
.btn-light:hover {
  color: #232f36;
}
.btn-light:hover:before {
  opacity: 1;
}
.btn-light[data-wipe]:before {
  transition: none;
}
.btn-light[data-wipe]:hover:before {
  opacity: 0;
}
.btn-light[data-wipe].is-wipe-in, .btn-light[data-wipe].is-filled {
  color: #232f36;
}
.btn-light[data-wipe].is-wipe-in:before {
  animation: btn-fill-in 0.35s ease forwards;
}
.btn-light[data-wipe].is-filled:before {
  opacity: 1;
}
.btn-light[data-wipe].is-wipe-out:before {
  animation: btn-fill-out 0.35s ease forwards;
}
.btn-light.on-white:before {
  background: #232f36;
}
.btn-light.on-white:hover, .btn-light.on-white.is-wipe-in, .btn-light.on-white.is-filled {
  color: #ffffff;
}

.btn-white {
  display: inline-block;
  color: #5a778a;
  font-size: 0.9em;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
  padding: 10px 30px;
  width: auto;
  background: #ffffff;
  border: 0;
  outline: 0;
  cursor: pointer;
  height: auto;
}
.btn-white {
  border-radius: 38px;
  background-clip: padding-box;
  transition-property: color;
  transition-duration: 0.45s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0s;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 76px;
  padding: 0 50px;
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
}
@media only screen and (max-width: 920px) {
  .btn-white {
    height: 64px;
    padding: 0 40px;
  }
}
@media only screen and (max-width: 480px) {
  .btn-white {
    height: 56px;
    font-size: 14px;
    padding: 0 32px;
  }
}
.btn-white {
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.btn-white:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #232f36;
  opacity: 0;
  transition: opacity 0.35s ease;
  z-index: -1;
}
.btn-white:hover {
  color: #ffffff;
}
.btn-white:hover:before {
  opacity: 1;
}
.btn-white[data-wipe]:before {
  transition: none;
}
.btn-white[data-wipe]:hover:before {
  opacity: 0;
}
.btn-white[data-wipe].is-wipe-in, .btn-white[data-wipe].is-filled {
  color: #ffffff;
}
.btn-white[data-wipe].is-wipe-in:before {
  animation: btn-fill-in 0.35s ease forwards;
}
.btn-white[data-wipe].is-filled:before {
  opacity: 1;
}
.btn-white[data-wipe].is-wipe-out:before {
  animation: btn-fill-out 0.35s ease forwards;
}

.btn-outline {
  display: inline-block;
  color: #5a778a;
  font-size: 0.9em;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
  padding: 10px 30px;
  width: auto;
  background: transparent;
  border: 0;
  outline: 0;
  cursor: pointer;
  height: auto;
}
.btn-outline {
  border-radius: 38px;
  background-clip: padding-box;
  transition-property: color;
  transition-duration: 0.45s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0s;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 76px;
  padding: 0 50px;
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
}
@media only screen and (max-width: 920px) {
  .btn-outline {
    height: 64px;
    padding: 0 40px;
  }
}
@media only screen and (max-width: 480px) {
  .btn-outline {
    height: 56px;
    font-size: 14px;
    padding: 0 32px;
  }
}
.btn-outline {
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.btn-outline:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #0e5a8d;
  opacity: 0;
  transition: opacity 0.35s ease;
  z-index: -1;
}
.btn-outline:hover {
  color: #ffffff;
}
.btn-outline:hover:before {
  opacity: 1;
}
.btn-outline[data-wipe]:before {
  transition: none;
}
.btn-outline[data-wipe]:hover:before {
  opacity: 0;
}
.btn-outline[data-wipe].is-wipe-in, .btn-outline[data-wipe].is-filled {
  color: #ffffff;
}
.btn-outline[data-wipe].is-wipe-in:before {
  animation: btn-fill-in 0.35s ease forwards;
}
.btn-outline[data-wipe].is-filled:before {
  opacity: 1;
}
.btn-outline[data-wipe].is-wipe-out:before {
  animation: btn-fill-out 0.35s ease forwards;
}
.btn-outline {
  border: 1px solid #0e5a8d;
}

.btn-hollow {
  display: inline-block;
  color: white;
  font-size: 0.9em;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
  padding: 10px 30px;
  width: auto;
  background: transparent;
  border: solid 2px white;
  outline: 0;
  cursor: pointer;
  height: auto;
}
.btn-hollow:hover {
  color: white;
  background: #222325;
}
.btn-hollow {
  border-radius: 38px;
  background-clip: padding-box;
  transition-property: color;
  transition-duration: 0.45s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0s;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 76px;
  padding: 0 50px;
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
}
@media only screen and (max-width: 920px) {
  .btn-hollow {
    height: 64px;
    padding: 0 40px;
  }
}
@media only screen and (max-width: 480px) {
  .btn-hollow {
    height: 56px;
    font-size: 14px;
    padding: 0 32px;
  }
}
.btn-hollow {
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.btn-hollow:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #ffffff;
  opacity: 0;
  transition: opacity 0.35s ease;
  z-index: -1;
}
.btn-hollow:hover {
  color: #232f36;
}
.btn-hollow:hover:before {
  opacity: 1;
}
.btn-hollow[data-wipe]:before {
  transition: none;
}
.btn-hollow[data-wipe]:hover:before {
  opacity: 0;
}
.btn-hollow[data-wipe].is-wipe-in, .btn-hollow[data-wipe].is-filled {
  color: #232f36;
}
.btn-hollow[data-wipe].is-wipe-in:before {
  animation: btn-fill-in 0.35s ease forwards;
}
.btn-hollow[data-wipe].is-filled:before {
  opacity: 1;
}
.btn-hollow[data-wipe].is-wipe-out:before {
  animation: btn-fill-out 0.35s ease forwards;
}
.btn-hollow {
  border-width: 1px;
}

.link-arrow {
  transition-property: all;
  transition-duration: 0.8s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0.1s;
  display: inline-flex;
  align-items: center;
  gap: calc(10px - 0.35em);
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1em;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  white-space: nowrap;
  color: #5a778a;
}
.link-arrow i {
  font-size: 0.9em;
  transition: color 0.8s cubic-bezier(0.6, 0, 0.2, 1) 0.1s, transform 0.55s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.link-arrow:hover, .link-arrow:focus-visible {
  color: #0e5a8d;
}
.link-arrow:hover i, .link-arrow:focus-visible i {
  transform: translateX(6px);
}
.link-arrow.light {
  color: #ffffff;
}
.link-arrow.light:hover {
  color: #f0d6bc;
}
@media only screen and (max-width: 1140px) {
  .link-arrow {
    display: inline;
    line-height: 1.4;
    white-space: normal;
  }
  .link-arrow i {
    display: inline;
    margin-left: calc(10px - 0.35em);
  }
}
@media only screen and (max-width: 480px) {
  .link-arrow {
    font-size: 14px;
  }
}

.carousel-nav {
  display: flex;
  gap: 20px;
}

.carousel-arrow {
  display: flex;
  justify-content: center;
  align-items: center;
  transition-property: background-color;
  transition-duration: 0.35s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0s;
  transition-timing-function: ease;
  position: relative;
  overflow: hidden;
  width: 76px;
  height: 76px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #5a778a;
  color: #ffffff;
  font-size: 16px;
  cursor: pointer;
}
.carousel-arrow:hover {
  background: #232f36;
}
.carousel-arrow:focus-visible {
  outline: 2px solid #0e5a8d;
  outline-offset: 3px;
}
@media only screen and (max-width: 920px) {
  .carousel-arrow {
    width: 60px;
    height: 60px;
  }
}
@media only screen and (max-width: 480px) {
  .carousel-arrow {
    width: 52px;
    height: 52px;
    font-size: 14px;
  }
}

.gform_legacy_markup_wrapper {
  margin-bottom: 16px;
  margin-top: 16px;
  max-width: 100%;
}

.gform_legacy_markup_wrapper form {
  text-align: left;
  max-width: 100%;
  margin: 0 auto;
}

.gform_legacy_markup_wrapper *,
.gform_legacy_markup_wrapper :after,
.gform_legacy_markup_wrapper :before {
  box-sizing: border-box !important;
}

.gform_legacy_markup_wrapper h1,
.gform_legacy_markup_wrapper h2,
.gform_legacy_markup_wrapper h3 {
  font-weight: 400;
  border: none;
  background: 0 0;
}

.gform_legacy_markup_wrapper input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]) {
  font-size: inherit;
  font-family: inherit;
  padding: 5px 4px;
  letter-spacing: normal;
}

.gform_legacy_markup_wrapper input[type=image] {
  border: none !important;
  padding: 0 !important;
  width: auto !important;
}

.gform_legacy_markup_wrapper textarea {
  font-size: inherit;
  font-family: inherit;
  letter-spacing: normal;
  padding: 6px 8px;
  line-height: 1.5;
  resize: none;
}

.gform_legacy_markup_wrapper select {
  line-height: 1.5;
}

.gform_legacy_markup_wrapper .ginput_container_multiselect select {
  background-image: none !important;
  -webkit-appearance: none;
  -moz-appearance: none;
  outline: 0;
}

.gform_legacy_markup_wrapper ul.gform_fields {
  margin: 0 !important;
  list-style-type: none;
  display: block;
}

.gform_legacy_markup_wrapper ul,
html > body .entry ul {
  text-indent: 0;
}

.gform_legacy_markup_wrapper form li,
.gform_legacy_markup_wrapper li {
  margin-left: 0 !important;
  list-style-type: none !important;
  list-style-image: none !important;
  list-style: none !important;
  overflow: visible;
}

.gform_legacy_markup_wrapper ul li.gfield {
  clear: both;
}

.gform_legacy_markup_wrapper ul.gfield_checkbox li,
.gform_legacy_markup_wrapper ul.gfield_radio li {
  overflow: hidden;
}

.gform_legacy_markup_wrapper form ul.gform_fields.left_label li.gfield,
.gform_legacy_markup_wrapper form ul.gform_fields.right_label li.gfield,
.gform_legacy_markup_wrapper ul.gform_fields.left_label li.gfield,
.gform_legacy_markup_wrapper ul.gform_fields.right_label li.gfield {
  margin-bottom: 14px;
}

.gform_legacy_markup_wrapper form ul.left_label li ul.gfield_checkbox li,
.gform_legacy_markup_wrapper form ul.left_label li ul.gfield_radio li,
.gform_legacy_markup_wrapper form ul.right_label li ul.gfield_checkbox li,
.gform_legacy_markup_wrapper form ul.right_label li ul.gfield_radio li,
.gform_legacy_markup_wrapper ul.left_label li ul.gfield_checkbox li,
.gform_legacy_markup_wrapper ul.left_label li ul.gfield_radio li,
.gform_legacy_markup_wrapper ul.right_label li ul.gfield_checkbox li,
.gform_legacy_markup_wrapper ul.right_label li ul.gfield_radio li {
  margin-bottom: 10px;
}

.gform_legacy_markup_wrapper ul li:after,
.gform_legacy_markup_wrapper ul li:before,
.gform_legacy_markup_wrapper ul.gform_fields {
  padding: 0;
  margin: 0;
  overflow: visible;
}

.gform_legacy_markup_wrapper select {
  font-size: inherit;
  font-family: inherit;
  letter-spacing: normal;
}

.gform_legacy_markup_wrapper select option {
  padding: 2px;
  display: block;
}

.gform_legacy_markup_wrapper .inline {
  display: inline !important;
}

.gform_legacy_markup_wrapper .gform_heading {
  width: 100%;
  margin-bottom: 18px;
}

.gform_legacy_markup_wrapper .clear-multi {
  display: flex;
}

.gform_legacy_markup_wrapper .gfield_date_day,
.gform_legacy_markup_wrapper .gfield_date_year {
  display: -moz-inline-stack;
  display: inline-block;
}

.gform_legacy_markup_wrapper .gfield_date_day,
.gform_legacy_markup_wrapper .gfield_date_month,
.gform_legacy_markup_wrapper .gfield_date_year {
  width: 33.333%;
  flex-direction: row;
}

@media only screen and (min-width: 321px) {
  .gform_legacy_markup_wrapper .gfield_date_day,
  .gform_legacy_markup_wrapper .gfield_date_month {
    max-width: 4rem;
  }
  .gform_legacy_markup_wrapper .gfield_date_year {
    max-width: 4.5rem;
  }
}
.gform_legacy_markup_wrapper .gfield_date_dropdown_day,
.gform_legacy_markup_wrapper .gfield_date_dropdown_month,
.gform_legacy_markup_wrapper .gfield_date_dropdown_year {
  vertical-align: top;
  flex-direction: row;
}

.gform_legacy_markup_wrapper .gfield_date_dropdown_day,
.gform_legacy_markup_wrapper .gfield_date_dropdown_month,
.gform_legacy_markup_wrapper .gfield_date_dropdown_year {
  margin-right: 0.5rem;
}

.gform_legacy_markup_wrapper .gfield_date_day,
.gform_legacy_markup_wrapper .gfield_date_month {
  width: 4rem;
  margin-right: 0.5rem;
}

.gform_legacy_markup_wrapper .gfield_date_day input[type=number],
.gform_legacy_markup_wrapper .gfield_date_month input[type=number] {
  width: calc(3rem + 8px) !important;
}

.gform_legacy_markup_wrapper .gfield_date_year input[type=number] {
  width: calc(4rem + 8px) !important;
}

.gform_legacy_markup_wrapper .gfield_date_year {
  width: 5rem;
}

.gform_legacy_markup_wrapper .gfield_date_day input,
.gform_legacy_markup_wrapper .gfield_date_month input {
  width: calc(3rem + 8px);
}

.gform_legacy_markup_wrapper .gfield_date_year input {
  width: 4rem;
}

.gform_legacy_markup_wrapper .field_sublabel_above div[class*=gfield_date_].ginput_container label,
.gform_legacy_markup_wrapper .field_sublabel_below div[class*=gfield_date_].ginput_container label {
  width: 3rem;
  text-align: center;
}

.gform_legacy_markup_wrapper .field_sublabel_above div.gfield_date_year.ginput_container label,
.gform_legacy_markup_wrapper .field_sublabel_below div.gfield_date_year.ginput_container label {
  width: 4rem;
}

.gform_legacy_markup_wrapper .gfield_time_ampm,
.gform_legacy_markup_wrapper .gfield_time_hour,
.gform_legacy_markup_wrapper .gfield_time_minute {
  font-size: 15px;
  width: 33.333%;
  flex-direction: row;
}

@media only screen and (min-width: 321px) {
  .gform_legacy_markup_wrapper .gfield_time_ampm,
  .gform_legacy_markup_wrapper .gfield_time_hour,
  .gform_legacy_markup_wrapper .gfield_time_minute {
    max-width: 72px;
  }
}
.gform_legacy_markup_wrapper ul.gform_fields:not(.top_label) .ginput_container_time span {
  float: left;
}

.gform_legacy_markup_wrapper .gfield_time_hour {
  margin-right: 10px;
  display: flex;
}

.gform_legacy_markup_wrapper .gfield_time_hour i {
  font-style: normal !important;
  font-family: sans-serif !important;
  width: 4px;
  text-align: center;
  float: right;
  margin-top: 9%;
}

.gform_legacy_markup_wrapper .gfield_time_minute {
  margin-right: 8px;
  display: flex;
}

.gform_legacy_markup_wrapper .ginput_complex .gfield_time_hour input,
.gform_legacy_markup_wrapper .ginput_complex .gfield_time_minute input {
  margin-left: 0;
  width: 85% !important;
}

.gform_legacy_markup_wrapper .gfield_time_hour input,
.gform_legacy_markup_wrapper .gfield_time_minute input {
  margin-right: 6px;
  width: 56px;
}

.gform_legacy_markup_wrapper .gfield_time_hour input[type=number],
.gform_legacy_markup_wrapper .gfield_time_minute input[type=number] {
  max-width: 64px;
  min-width: 64px;
}

.gform_legacy_markup_wrapper .gfield_time_ampm {
  vertical-align: top;
  display: -moz-inline-stack;
  display: inline-block;
}

.gform_legacy_markup_wrapper .gfield_time_ampm select {
  min-width: 77px;
  width: 77px;
  height: 100%;
  margin-top: 0 !important;
  margin-left: 0 !important;
}

.gform_legacy_markup_wrapper .gfield_time_ampm_shim {
  display: block;
  font-size: 13px;
  margin: 9px 0 1px 1px;
}

.gform_legacy_markup_wrapper .field_sublabel_above div[class*=gfield_time_].ginput_container label,
.gform_legacy_markup_wrapper .field_sublabel_below div[class*=gfield_time_].ginput_container label {
  width: 48px;
  text-align: center;
}

.gform_legacy_markup_wrapper .field_name_first,
.gform_legacy_markup_wrapper .field_name_last,
.gform_legacy_markup_wrapper .field_name_middle {
  width: 49.5%;
  display: -moz-inline-stack;
  display: inline-block;
  vertical-align: top;
}

.gform_legacy_markup_wrapper .ginput_complex.ginput_container {
  overflow: visible;
  width: 100%;
}

.gform_legacy_markup_wrapper label.gfield_label,
.gform_legacy_markup_wrapper legend.gfield_label {
  font-weight: 700;
  font-size: inherit;
}

.gform_legacy_markup_wrapper .top_label .gfield_label,
.gform_legacy_markup_wrapper legend.gfield_label {
  display: -moz-inline-stack;
  display: inline-block;
  line-height: 1.3;
  clear: both;
}

.gform_legacy_markup_wrapper .top_label .gfield_hide_label {
  display: none;
}

body .gform_legacy_markup_wrapper .top_label div.ginput_container {
  margin-top: 8px;
}

body.gform_legacy_markup_wrapper div.clear-multi {
  display: -moz-inline-stack;
  display: inline-block;
}

body .gform_legacy_markup_wrapper ul li.gfield {
  margin-top: 16px;
  padding-top: 0;
}

body .gform_legacy_markup_wrapper ul.gfields li.gfield label.gfield_label {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

body .gform_legacy_markup_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html {
  line-height: inherit;
}

body .gform_legacy_markup_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html ul li,
body .gform_legacy_markup_wrapper form div.gform_body ul.gform_fields li.gfield.gfield_html ul li {
  list-style-type: disc !important;
  margin: 0 0 8px 0;
  overflow: visible;
  padding-left: 0;
}

body .gform_legacy_markup_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html ul,
body .gform_legacy_markup_wrapper form div.gform_body ul.gform_fields li.gfield.gfield_html ul {
  list-style-type: disc !important;
  margin: 16px 0 16px 28px !important;
  padding-left: 0;
}

body .gform_legacy_markup_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html ol li,
body .gform_legacy_markup_wrapper form div.gform_body ul.gform_fields li.gfield.gfield_html ol li {
  list-style-type: decimal !important;
  overflow: visible;
  margin: 0 0 8px 0;
  padding-left: 0;
}

body .gform_legacy_markup_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html ol,
body .gform_legacy_markup_wrapper form div.gform_body ul.gform_fields li.gfield.gfield_html ol {
  list-style-type: decimal !important;
  margin: 16px 0 18px 32px;
  padding-left: 0;
}

body .gform_legacy_markup_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html ol li ul,
body .gform_legacy_markup_wrapper form div.gform_body ul.gform_fields li.gfield.gfield_html ol li ul li {
  list-style-type: disc !important;
  padding-left: 0;
}

body .gform_legacy_markup_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html ol li ul {
  margin: 16px 0 16px 16px;
}

body .gform_legacy_markup_wrapper form div.gform_body ul.gform_fields li.gfield.gfield_html ol li ul li {
  margin: 0 0 8px;
}

body .gform_legacy_markup_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html dl {
  margin: 0 0 18px 0;
  padding-left: 0;
}

body .gform_legacy_markup_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html dl dt {
  font-weight: 700;
}

body .gform_legacy_markup_wrapper div.gform_body ul.gform_fields li.gfield.gfield_html dl dd {
  margin: 0 0 16px 18px;
}

.gform_legacy_markup_wrapper span.gf_clear_span {
  display: block;
  height: 1px;
  overflow: hidden;
  width: 100%;
  float: none;
  clear: both;
  margin-top: -1px;
}

.gform_legacy_markup_wrapper .chosen-container {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  font-size: 13px;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.gform_legacy_markup_wrapper .chosen-container * {
  box-sizing: border-box;
}

.gform_legacy_markup_wrapper .chosen-container .chosen-drop {
  position: absolute;
  top: 100%;
  z-index: 1010;
  width: 100%;
  border: 1px solid #aaa;
  border-top: 0;
  background: #fff;
  box-shadow: 0 4px 5px rgba(0, 0, 0, 0.15);
  display: none;
}

.gform_legacy_markup_wrapper .chosen-container.chosen-with-drop .chosen-drop {
  display: block;
}

.gform_legacy_markup_wrapper .chosen-container a {
  cursor: pointer;
}

.gform_legacy_markup_wrapper .chosen-container .chosen-single .group-name,
.gform_legacy_markup_wrapper .chosen-container .search-choice .group-name {
  margin-right: 4px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  font-weight: 400;
  color: #999;
}

.gform_legacy_markup_wrapper .chosen-container .chosen-single .group-name:after,
.gform_legacy_markup_wrapper .chosen-container .search-choice .group-name:after {
  content: ":";
  padding-left: 2px;
  vertical-align: top;
}

.gform_legacy_markup_wrapper .chosen-container-single .chosen-single {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 0 0 0 8px;
  height: 25px;
  border: 1px solid #aaa;
  background-color: #fff;
  background: linear-gradient(#fff 20%, #f6f6f6 50%, #eee 52%, #f4f4f4 100%);
  background-clip: padding-box;
  box-shadow: 0 0 3px #fff inset, 0 1px 1px rgba(0, 0, 0, 0.1);
  color: #444;
  text-decoration: none;
  white-space: nowrap;
  line-height: 24px;
}

.gform_legacy_markup_wrapper .chosen-container-single .chosen-single input[type=text] {
  cursor: pointer;
  opacity: 0;
  position: absolute;
  width: 0;
}

.gform_legacy_markup_wrapper .chosen-container-single .chosen-default {
  color: #999;
}

.gform_legacy_markup_wrapper .chosen-container-single .chosen-single span {
  display: block;
  overflow: hidden;
  margin-right: 26px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.gform_legacy_markup_wrapper .chosen-container-single .chosen-single-with-deselect span {
  margin-right: 38px;
}

.gform_legacy_markup_wrapper .chosen-container-single .chosen-single abbr {
  position: absolute;
  top: 6px;
  right: 26px;
  display: block;
  width: 12px;
  height: 12px;
  background: url(chosen-sprite.png) -42px 1px no-repeat;
  font-size: 1px;
}

.gform_legacy_markup_wrapper .chosen-container-single .chosen-single abbr:hover {
  background-position: -42px -10px;
}

.gform_legacy_markup_wrapper .chosen-container-single.chosen-disabled .chosen-single abbr:hover {
  background-position: -42px -10px;
}

.gform_legacy_markup_wrapper .chosen-container-single .chosen-single div {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 18px;
  height: 100%;
}

.gform_legacy_markup_wrapper .chosen-container-single .chosen-single div b {
  display: block;
  width: 100%;
  height: 100%;
  background: url(chosen-sprite.png) no-repeat 0 2px;
}

.gform_legacy_markup_wrapper .chosen-container-single .chosen-search {
  position: relative;
  z-index: 1010;
  margin: 0;
  padding: 3px 4px;
  white-space: nowrap;
}

.gform_legacy_markup_wrapper .chosen-container-single .chosen-search input[type=text] {
  margin: 1px 0;
  padding: 4px 20px 4px 5px;
  width: 100%;
  height: auto;
  outline: 0;
  border: 1px solid #aaa;
  background: url(chosen-sprite.png) no-repeat 100% -20px;
  font-size: 1em;
  font-family: sans-serif;
  line-height: normal;
  border-radius: 0;
}

.gform_legacy_markup_wrapper .chosen-container-single .chosen-drop {
  margin-top: -1px;
  border-radius: 0 0 4px 4px;
  background-clip: padding-box;
}

.gform_legacy_markup_wrapper .chosen-container-single.chosen-container-single-nosearch .chosen-search {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.gform_legacy_markup_wrapper .chosen-container .chosen-results {
  color: #444;
  position: relative;
  overflow-x: hidden;
  overflow-y: auto;
  margin: 0 4px 4px 0;
  padding: 0 0 0 4px;
  max-height: 240px;
  -webkit-overflow-scrolling: touch;
}

.gform_legacy_markup_wrapper .chosen-container .chosen-results li {
  display: none;
  margin: 0;
  padding: 5px 6px;
  list-style: none;
  line-height: 15px;
  word-wrap: break-word;
  -webkit-touch-callout: none;
}

.gform_legacy_markup_wrapper .chosen-container .chosen-results li.active-result {
  display: list-item;
  cursor: pointer;
}

.gform_legacy_markup_wrapper .chosen-container .chosen-results li.disabled-result {
  display: list-item;
  color: #ccc;
  cursor: default;
}

.gform_legacy_markup_wrapper .chosen-container .chosen-results li.highlighted {
  background-color: #3875d7;
  background-image: linear-gradient(#3875d7 20%, #2a62bc 90%);
  color: #fff;
}

.gform_legacy_markup_wrapper .chosen-container .chosen-results li.no-results {
  color: #777;
  display: list-item;
  background: #f4f4f4;
}

.gform_legacy_markup_wrapper .chosen-container .chosen-results li.group-result {
  display: list-item;
  font-weight: 700;
  cursor: default;
}

.gform_legacy_markup_wrapper .chosen-container .chosen-results li.group-option {
  padding-left: 15px;
}

.gform_legacy_markup_wrapper .chosen-container .chosen-results li em {
  font-style: normal;
  text-decoration: underline;
}

.gform_legacy_markup_wrapper .chosen-container-multi .chosen-choices {
  position: relative;
  overflow: hidden;
  margin: 0;
  padding: 0 5px;
  width: 100%;
  height: auto;
  border: 1px solid #aaa;
  background-color: #fff;
  background: linear-gradient(#eee 1%, #fff 15%);
  cursor: text;
}

.gform_legacy_markup_wrapper .chosen-container-multi .chosen-choices li {
  float: left;
  list-style: none;
}

.gform_legacy_markup_wrapper .chosen-container-multi .chosen-choices li.search-field {
  margin: 0;
  padding: 0;
  white-space: nowrap;
}

.gform_legacy_markup_wrapper .chosen-container-multi .chosen-choices li.search-field input[type=text] {
  margin: 1px 0;
  padding: 0;
  height: 25px;
  outline: 0;
  border: 0 !important;
  background: 0 0 !important;
  box-shadow: none;
  color: #999;
  font-size: 100%;
  font-family: sans-serif;
  line-height: normal;
  border-radius: 0;
  width: 25px;
}

.gform_legacy_markup_wrapper .chosen-container-multi .chosen-choices li.search-choice {
  position: relative;
  margin: 3px 5px 3px 0;
  padding: 3px 20px 3px 5px;
  border: 1px solid #aaa;
  max-width: 100%;
  border-radius: 3px;
  background-color: #eee;
  background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);
  background-size: 100% 19px;
  background-repeat: repeat-x;
  background-clip: padding-box;
  box-shadow: 0 0 2px #fff inset, 0 1px 0 rgba(0, 0, 0, 0.05);
  color: #333;
  line-height: 13px;
  cursor: default;
}

.gform_legacy_markup_wrapper .chosen-container-multi .chosen-choices li.search-choice span {
  word-wrap: break-word;
}

.gform_legacy_markup_wrapper .chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
  position: absolute;
  top: 4px;
  right: 3px;
  display: block;
  width: 12px;
  height: 12px;
  background: url(chosen-sprite.png) -42px 1px no-repeat;
  font-size: 1px;
}

.gform_legacy_markup_wrapper .chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover {
  background-position: -42px -10px;
}

.gform_legacy_markup_wrapper .chosen-container-multi .chosen-choices li.search-choice-disabled {
  padding-right: 5px;
  border: 1px solid #ccc;
  background-color: #e4e4e4;
  background-image: linear-gradient(#f4f4f4 20%, #f0f0f0 50%, #e8e8e8 52%, #eee 100%);
  color: #666;
}

.gform_legacy_markup_wrapper .chosen-container-multi .chosen-choices li.search-choice-focus {
  background: #d4d4d4;
}

.gform_legacy_markup_wrapper .chosen-container-multi .chosen-choices li.search-choice-focus .search-choice-close {
  background-position: -42px -10px;
}

.gform_legacy_markup_wrapper .chosen-container-multi .chosen-results {
  margin: 0;
  padding: 0;
}

.gform_legacy_markup_wrapper .chosen-container-multi .chosen-drop .result-selected {
  display: list-item;
  color: #ccc;
  cursor: default;
}

.gform_legacy_markup_wrapper .chosen-container-active .chosen-single {
  border: 1px solid #5897fb;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}

.gform_legacy_markup_wrapper .chosen-container-active.chosen-with-drop .chosen-single {
  border: 1px solid #aaa;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
  background-image: linear-gradient(#eee 20%, #fff 80%);
  box-shadow: 0 1px 0 #fff inset;
}

.gform_legacy_markup_wrapper .chosen-container-active.chosen-with-drop .chosen-single div {
  border-left: none;
  background: 0 0;
}

.gform_legacy_markup_wrapper .chosen-container-active.chosen-with-drop .chosen-single div b {
  background-position: -18px 2px;
}

.gform_legacy_markup_wrapper .chosen-container-active .chosen-choices {
  border: 1px solid #5897fb;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
}

.gform_legacy_markup_wrapper .chosen-container-active .chosen-choices li.search-field input[type=text] {
  color: #222 !important;
}

.gform_legacy_markup_wrapper .chosen-disabled {
  opacity: 0.5 !important;
  cursor: default;
}

.gform_legacy_markup_wrapper .chosen-disabled .chosen-single {
  cursor: default;
}

.gform_legacy_markup_wrapper .chosen-disabled .chosen-choices .search-choice .search-choice-close {
  cursor: default;
}

.gform_legacy_markup_wrapper .chosen-rtl {
  text-align: right;
}

.gform_legacy_markup_wrapper .chosen-rtl .chosen-single {
  overflow: visible;
  padding: 0 8px 0 0;
}

.gform_legacy_markup_wrapper .chosen-rtl .chosen-single span {
  margin-right: 0;
  margin-left: 26px;
  direction: rtl;
}

.gform_legacy_markup_wrapper .chosen-rtl .chosen-single-with-deselect span {
  margin-left: 38px;
}

.gform_legacy_markup_wrapper .chosen-rtl .chosen-single div {
  right: auto;
  left: 3px;
}

.gform_legacy_markup_wrapper .chosen-rtl .chosen-single abbr {
  right: auto;
  left: 26px;
}

.gform_legacy_markup_wrapper .chosen-rtl .chosen-choices li {
  float: right;
}

.gform_legacy_markup_wrapper .chosen-rtl .chosen-choices li.search-field input[type=text] {
  direction: rtl;
}

.gform_legacy_markup_wrapper .chosen-rtl .chosen-choices li.search-choice {
  margin: 3px 5px 3px 0;
  padding: 3px 5px 3px 19px;
}

.gform_legacy_markup_wrapper .chosen-rtl .chosen-choices li.search-choice .search-choice-close {
  right: auto;
  left: 4px;
}

.gform_legacy_markup_wrapper .chosen-rtl.chosen-container-single .chosen-results {
  margin: 0 0 4px 4px;
  padding: 0 4px 0 0;
}

.gform_legacy_markup_wrapper .chosen-rtl .chosen-results li.group-option {
  padding-right: 15px;
  padding-left: 0;
}

.gform_legacy_markup_wrapper .chosen-rtl.chosen-container-active.chosen-with-drop .chosen-single div {
  border-right: none;
}

.gform_legacy_markup_wrapper .chosen-rtl .chosen-search input[type=text] {
  padding: 4px 5px 4px 20px;
  background: url(chosen-sprite.png) no-repeat -30px -20px;
  direction: rtl;
}

.gform_legacy_markup_wrapper .chosen-rtl.chosen-container-single .chosen-single div b {
  background-position: 6px 2px;
}

.gform_legacy_markup_wrapper .chosen-rtl.chosen-container-single.chosen-with-drop .chosen-single div b {
  background-position: -12px 2px;
}

@media only screen and (-webkit-min-device-pixel-ratio: 1.5), only screen and (min-resolution: 144dpi), only screen and (min-resolution: 1.5dppx) {
  .gform_legacy_markup_wrapper .chosen-container .chosen-results-scroll-down span,
  .gform_legacy_markup_wrapper .chosen-container .chosen-results-scroll-up span,
  .gform_legacy_markup_wrapper .chosen-container-multi .chosen-choices .search-choice .search-choice-close,
  .gform_legacy_markup_wrapper .chosen-container-single .chosen-search input[type=text],
  .gform_legacy_markup_wrapper .chosen-container-single .chosen-single abbr,
  .gform_legacy_markup_wrapper .chosen-rtl .chosen-search input[type=text] {
    background-image: url(chosen-sprite@2x.png) !important;
    background-size: 52px 37px !important;
    background-repeat: no-repeat !important;
  }
}
body .gform_legacy_markup_wrapper .chosen-container a.chosen-single {
  border-radius: inherit;
}

body .gform_legacy_markup_wrapper ul.chosen-results li {
  line-height: inherit;
}

@media only screen and (max-width: 641px) {
  .gform_legacy_markup_wrapper input:not([type=radio]):not([type=checkbox]):not([type=image]):not([type=file]) {
    line-height: 2;
    min-height: 2rem;
  }
  .gform_legacy_markup_wrapper textarea {
    line-height: 1.5;
  }
  .gform_legacy_markup_wrapper .chosen-container.chosen-container-single[style] {
    width: 100% !important;
  }
  .gform_legacy_markup_wrapper .chosen-container-single .chosen-single {
    height: 40px;
    line-height: 2.8;
  }
  .gform_legacy_markup_wrapper .chosen-container-single .chosen-single div b {
    position: relative;
    top: 10px;
  }
  .gform_legacy_markup_wrapper div.chosen-container.chosen-container-multi[style] {
    width: 100% !important;
  }
  .gform_legacy_markup_wrapper .chosen-container.chosen-container-multi ul.chosen-choices li.search-choice,
  .gform_legacy_markup_wrapper .chosen-container.chosen-container-multi ul.chosen-choices li.search-field {
    width: 100%;
    line-height: inherit;
    float: none;
  }
  .gform_legacy_markup_wrapper .chosen-container.chosen-container-multi ul.chosen-choices li.search-choice span {
    margin-bottom: 0;
  }
  .gform_legacy_markup_wrapper .chosen-container-multi .chosen-choices li.search-choice .search-choice-close {
    top: calc(50% - 6px);
  }
  .gform_legacy_markup_wrapper .ginput_container span:not(.ginput_price) {
    margin-bottom: 8px;
    display: block;
  }
  .gform_legacy_markup_wrapper li.field_sublabel_below .ginput_complex {
    margin-top: 12px !important;
  }
  .gform_legacy_markup_wrapper ul.gform_fields:not(.top_label) .gform_fileupload_multifile .gform_drop_area {
    margin-left: 29%;
    width: 70%;
  }
  body .gform_legacy_markup_wrapper span.ginput_left.address_city + input.gform_hidden + span.ginput_left.address_country {
    width: calc(50% - 8px);
    margin-right: 0;
  }
  .gform_legacy_markup_wrapper ul.gform_fields:not(.top_label) .ginput_container.ginput_recaptcha {
    margin-left: 29% !important;
  }
  .gform_legacy_markup_wrapper .gform_page_footer .button.gform_previous_button {
    margin-bottom: 0;
  }
  .gform_legacy_markup_wrapper .gform_page_footer .button.gform_button,
  .gform_legacy_markup_wrapper .gform_page_footer .button.gform_next_button {
    margin-right: 10px;
  }
  body .gform_legacy_markup_wrapper select.medium.gfield_select + div.chosen-container-multi[style],
  body .gform_legacy_markup_wrapper select.medium.gfield_select + div.chosen-container-single[style] {
    width: calc(50% - 8px) !important;
  }
  body .gform_legacy_markup_wrapper select.large.gfield_select + div.chosen-container-multi[style],
  body .gform_legacy_markup_wrapper select.large.gfield_select + div.chosen-container-single[style] {
    width: 100% !important;
  }
  body .gform_legacy_markup_wrapper select.small.gfield_select + div.chosen-container-multi[style],
  body .gform_legacy_markup_wrapper select.small.gfield_select + div.chosen-container-single[style] {
    width: 25% !important;
  }
}
.gfield_repeater_cell > .gfield_repeater_wrapper {
  border-left: 8px solid rgba(54, 86, 102, 0.1);
  background-color: rgba(1, 1, 1, 0.02);
  padding: 10px 20px;
  border-radius: 8px;
  border-bottom: 1px solid #eee;
}

.gfield_repeater_wrapper input {
  border: 1px solid #c5c6c5;
  border-radius: 4px;
}

.gfield_repeater_wrapper .gfield_repeater_wrapper {
  margin-top: 10px;
}

.gfield_repeater_buttons .add_repeater_item_text,
.gfield_repeater_buttons .remove_repeater_item_text {
  min-width: 100px;
  height: 30px;
  background: rgba(242, 242, 242, 0.5);
  transition: all 0.3s cubic-bezier(0.67, 0.17, 0.4, 0.83);
  font-size: 12px;
  color: #757575;
  border-radius: 20px;
  margin-right: 10px;
  margin-bottom: 5px;
  border: 1px solid rgba(117, 117, 117, 0.4);
  font-weight: 400;
}

.gfield_repeater_buttons .add_repeater_item_plus,
.gfield_repeater_buttons .remove_repeater_item_minus {
  width: 22px;
  height: 22px;
  background: rgba(242, 242, 242, 0.5);
  transition: all 0.3s cubic-bezier(0.67, 0.17, 0.4, 0.83);
  font-size: 16px;
  color: #757575;
  border-radius: 50%;
  margin: 10px 5px 0 5px;
  border: 1px solid rgba(117, 117, 117, 0.4);
  font-weight: 700;
  padding: 0;
  padding-bottom: 5px;
}

.gfield_repeater_buttons button.gfield_icon_disabled {
  cursor: default;
  -moz-opacity: 0.3;
  -khtml-opacity: 0.3;
  opacity: 0.3;
}

.gfield_repeater_buttons button.gfield_icon_disabled:hover {
  background: rgba(242, 242, 242, 0.5);
  color: #757575;
  border: 1px solid rgba(117, 117, 117, 0.4);
}

.gfield_repeater_buttons button:hover {
  background: #fafafa;
  color: #374750;
  border: 1px solid #757575;
}

.gfield_repeater .gfield_repeater_items .gfield_repeater_item:not(:last-child) {
  border-bottom: 2px solid #e0e0e6;
  padding-bottom: 20px;
}

.gfield_repeater_cell > .gfield_repeater_wrapper {
  border-left: 8px solid #f1f1f1;
  box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.06), 0 2px 1px -1px rgba(0, 0, 0, 0.06), 0 1px 5px 0 rgba(0, 0, 0, 0.06);
}

.gfield_repeater_buttons .add_repeater_item_text:focus,
.gfield_repeater_buttons .remove_repeater_item_text:focus {
  outline: 0;
}

.gfield_repeater_item .gfield_repeater_cell .gfield_required {
  color: #c32121;
}

.gform_legacy_markup_wrapper .gfield_repeater_cell label {
  color: #9b9a9a;
  font-weight: 400;
  font-size: 14px;
  padding-top: 8px;
}

.gfield_repeater_value .gfield_repeater_value .gfield_repeater_cell {
  padding-bottom: 20px;
  padding-top: 0;
}

div .gfield_repeater_cell {
  margin-top: 5px;
}

.gfield_repeater .gfield_repeater_items .gfield_repeater_item:not(:last-child) {
  border-bottom: 2px solid #e0e0e6;
  padding-bottom: 20px;
  margin-bottom: 20px;
  margin-right: 10px;
}

.gfield_repeater_value > .gfield_repeater {
  border-left: 8px solid rgba(54, 86, 102, 0.1);
  background-color: rgba(1, 1, 1, 0.02);
  padding: 10px 20px;
  border-radius: 8px;
  border-bottom: 1px solid #eee;
  margin: 10px;
}

.gfield_repeater_cell .gfield_repeater_value:not(:first-child) {
  color: rgba(117, 117, 117, 0.7);
  border: 1px solid #c5c6c5;
  border-radius: 4px;
  margin-right: 10px;
  padding-left: 10px;
  background-color: #f0f0f0;
}

.gfield_repeater .gfield_repeater_items,
.gfield_repeater_items .gfield_repeater_cell:not(:first-child) {
  padding-top: 5px;
}

.gfield_repeater .gfield_label {
  color: #23282d;
  font-size: 16px;
  font-weight: 600;
}

.gfield_repeater_value .gfield_label {
  padding-bottom: 0;
}

.gfield_repeater_value .gfield_repeater_value .gfield_repeater_item:first-child {
  padding-bottom: 0;
}

.gform_wrapper .gform_body {
  width: 100% !important;
}
.gform_wrapper .gform_body .gform_fields .gfield {
  padding-right: 0;
}
.gform_wrapper .gform_body .gform_fields .gfield label,
.gform_wrapper .gform_body .gform_fields .gfield label.gfield_label {
  font-family: "proxima-nova", sans-serif;
  font-weight: 300;
  font-size: 0.8em;
}
.gform_wrapper .gform_body .gform_fields .gfield label .gfield_required,
.gform_wrapper .gform_body .gform_fields .gfield label.gfield_label .gfield_required {
  display: none;
}
.gform_wrapper .gform_body .gform_fields .gfield div.ginput_container input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
.gform_wrapper .gform_body .gform_fields .gfield div.ginput_container textarea,
.gform_wrapper .gform_body .gform_fields .gfield div.ginput_container input[type=email],
.gform_wrapper .gform_body .gform_fields .gfield div.ginput_container input[type=tel] {
  transition-property: all;
  transition-duration: 0.8s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0.1s;
  font-family: "proxima-nova", sans-serif;
  font-size: 0.9em;
  padding: 0.6em;
  max-width: 100%;
  outline: 0;
  border: solid 1px #222325;
  width: 100%;
}
.gform_wrapper .gform_body .gform_fields .gfield div.ginput_container input:not([type=radio]):not([type=checkbox]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]):focus,
.gform_wrapper .gform_body .gform_fields .gfield div.ginput_container textarea:focus,
.gform_wrapper .gform_body .gform_fields .gfield div.ginput_container input[type=email]:focus,
.gform_wrapper .gform_body .gform_fields .gfield div.ginput_container input[type=tel]:focus {
  border-color: #222325;
}
.gform_wrapper .gform_body .gform_fields .gfield div.ginput_container .gfield_checkbox input[type=checkbox] {
  margin-top: 0;
  margin-right: 0.3em;
}
.gform_wrapper .gform_body .gform_fields .multicolumn-wrapper ul li {
  float: left;
  width: 50%;
  clear: none;
}
.gform_wrapper .gform_body .gform_fields .multicolumn-wrapper ul li:first-child {
  padding-right: 2.5%;
}
.gform_wrapper .gform_footer input[type=submit] {
  transition-property: all;
  transition-duration: 0.8s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0.1s;
  display: inline-block;
  color: white;
  font-size: 0.9em;
  font-weight: 600;
  text-transform: none;
  letter-spacing: 0;
  padding: 10px 30px;
  width: auto;
  background: #222325;
  border: 0;
  outline: 0;
  cursor: pointer;
  height: auto;
}
.gform_wrapper ::-webkit-input-placeholder {
  color: #222325;
}
.gform_wrapper :-moz-placeholder {
  color: #222325;
}
.gform_wrapper ::-moz-placeholder {
  color: #222325;
}
.gform_wrapper :-ms-input-placeholder {
  color: #222325;
}

.gform_confirmation_message {
  background: #c7ffc7;
  padding: 20px;
  margin: 20px 0 0;
  border: 1px solid #7cd07c;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.15);
}

.gform_heading {
  display: none !important;
}

div#apbct-check_email_exist-popup_description {
  display: none !important;
}

@font-face {
  font-family: "canvas";
  src: url("fonts/canvas.eot");
  src: url("fonts/canvas.eot?#iefix") format("embedded-opentype"), url("fonts/canvas.woff") format("woff"), url("fonts/canvas.ttf") format("truetype"), url("fonts/canvas.svg#canvas") format("svg");
  font-weight: normal;
  font-style: normal;
}
[class^=c-]:before,
[class*=" c-"]:before {
  font-family: "canvas";
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.c-facebook:before {
  content: "i";
}

.c-google-plus:before {
  content: "j";
}

.c-instagram:before {
  content: "k";
}

.c-snapchat:before {
  content: "l";
}

.c-twitter:before {
  content: "m";
}

.c-youtube:before {
  content: "n";
}

.c-pinterest:before {
  content: "a";
}

.c-neon-canvas-horizontal:before {
  content: "b";
}

/*!
 *  Font Awesome 4.7.0 by @davegandy - http://fontawesome.io - @fontawesome
 *  License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
 */
.bgvideo {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 0;
}
.bgvideo video {
  position: absolute;
  top: 0;
  left: 50%;
  min-width: 100%;
  min-height: 100%;
  width: auto;
  height: auto;
  z-index: 0;
  transform: translateX(-50%);
  background-position: center right;
}

.container-fluid,
.container,
.container-lrg {
  margin-right: auto;
  margin-left: auto;
  padding: 0 25px;
}
@media screen and (max-width: 920px) {
  .container-fluid,
  .container,
  .container-lrg {
    max-width: 500px;
  }
}

.container-lrg {
  max-width: 1350px;
}
@media screen and (max-width: 920px) {
  .container-lrg {
    max-width: 500px;
  }
}

.container-fluid {
  padding-right: 25px;
  padding-left: 25px;
}

.row {
  box-sizing: border-box;
  display: flex;
  flex: 0 1 auto;
  flex-direction: row;
  flex-wrap: wrap;
}

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

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

.col-xs,
.col-xs-1,
.col-xs-2,
.col-xs-3,
.col-xs-4,
.col-xs-5,
.col-xs-6,
.col-xs-7,
.col-xs-8,
.col-xs-9,
.col-xs-10,
.col-xs-11,
.col-xs-12,
.col-xs-offset-0,
.col-xs-offset-1,
.col-xs-offset-2,
.col-xs-offset-3,
.col-xs-offset-4,
.col-xs-offset-5,
.col-xs-offset-6,
.col-xs-offset-7,
.col-xs-offset-8,
.col-xs-offset-9,
.col-xs-offset-10,
.col-xs-offset-11,
.col-xs-offset-12 {
  box-sizing: border-box;
  flex: 0 0 auto;
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}

.col-xs {
  flex-grow: 1;
  flex-basis: 0;
  max-width: 100%;
}

.col-xs-1 {
  flex-basis: 8.33333333%;
  max-width: 8.33333333%;
}

.col-xs-2 {
  flex-basis: 16.66666667%;
  max-width: 16.66666667%;
}

.col-xs-3 {
  flex-basis: 25%;
  max-width: 25%;
}

.col-xs-4 {
  flex-basis: 33.33333333%;
  max-width: 33.33333333%;
}

.col-xs-5 {
  flex-basis: 41.66666667%;
  max-width: 41.66666667%;
}

.col-xs-6 {
  flex-basis: 50%;
  max-width: 50%;
}

.col-xs-7 {
  flex-basis: 58.33333333%;
  max-width: 58.33333333%;
}

.col-xs-8 {
  flex-basis: 66.66666667%;
  max-width: 66.66666667%;
}

.col-xs-9 {
  flex-basis: 75%;
  max-width: 75%;
}

.col-xs-10 {
  flex-basis: 83.33333333%;
  max-width: 83.33333333%;
}

.col-xs-11 {
  flex-basis: 91.66666667%;
  max-width: 91.66666667%;
}

.col-xs-12 {
  flex-basis: 100%;
  max-width: 100%;
}

.col-xs-offset-0 {
  margin-left: 0;
}

.col-xs-offset-1 {
  margin-left: 8.33333333%;
}

.col-xs-offset-2 {
  margin-left: 16.66666667%;
}

.col-xs-offset-3 {
  margin-left: 25%;
}

.col-xs-offset-4 {
  margin-left: 33.33333333%;
}

.col-xs-offset-5 {
  margin-left: 41.66666667%;
}

.col-xs-offset-6 {
  margin-left: 50%;
}

.col-xs-offset-7 {
  margin-left: 58.33333333%;
}

.col-xs-offset-8 {
  margin-left: 66.66666667%;
}

.col-xs-offset-9 {
  margin-left: 75%;
}

.col-xs-offset-10 {
  margin-left: 83.33333333%;
}

.col-xs-offset-11 {
  margin-left: 91.66666667%;
}

.start-xs {
  justify-content: flex-start;
  text-align: start;
}

.center-xs {
  justify-content: center;
  text-align: center;
}

.end-xs {
  justify-content: flex-end;
  text-align: end;
}

.top-xs {
  align-items: flex-start;
}

.middle-xs {
  align-items: center;
}

.bottom-xs {
  align-items: flex-end;
}

.around-xs {
  justify-content: space-around;
}

.between-xs {
  justify-content: space-between;
}

.first-xs {
  order: -1;
}

.last-xs {
  order: 1;
}

@media only screen and (min-width: 830px) {
  .container {
    width: 47rem;
  }
  .col-sm,
  .col-sm-1,
  .col-sm-2,
  .col-sm-3,
  .col-sm-4,
  .col-sm-5,
  .col-sm-6,
  .col-sm-7,
  .col-sm-8,
  .col-sm-9,
  .col-sm-10,
  .col-sm-11,
  .col-sm-12,
  .col-sm-offset-0,
  .col-sm-offset-1,
  .col-sm-offset-2,
  .col-sm-offset-3,
  .col-sm-offset-4,
  .col-sm-offset-5,
  .col-sm-offset-6,
  .col-sm-offset-7,
  .col-sm-offset-8,
  .col-sm-offset-9,
  .col-sm-offset-10,
  .col-sm-offset-11,
  .col-sm-offset-12 {
    box-sizing: border-box;
    flex: 0 0 auto;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .col-sm {
    flex-grow: 1;
    flex-basis: 0;
    max-width: 100%;
  }
  .col-sm-1 {
    flex-basis: 8.33333333%;
    max-width: 8.33333333%;
  }
  .col-sm-2 {
    flex-basis: 16.66666667%;
    max-width: 16.66666667%;
  }
  .col-sm-3 {
    flex-basis: 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    flex-basis: 33.33333333%;
    max-width: 33.33333333%;
  }
  .col-sm-5 {
    flex-basis: 41.66666667%;
    max-width: 41.66666667%;
  }
  .col-sm-6 {
    flex-basis: 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    flex-basis: 58.33333333%;
    max-width: 58.33333333%;
  }
  .col-sm-8 {
    flex-basis: 66.66666667%;
    max-width: 66.66666667%;
  }
  .col-sm-9 {
    flex-basis: 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    flex-basis: 83.33333333%;
    max-width: 83.33333333%;
  }
  .col-sm-11 {
    flex-basis: 91.66666667%;
    max-width: 91.66666667%;
  }
  .col-sm-12 {
    flex-basis: 100%;
    max-width: 100%;
  }
  .col-sm-offset-0 {
    margin-left: 0;
  }
  .col-sm-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-sm-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-sm-offset-3 {
    margin-left: 25%;
  }
  .col-sm-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-sm-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-sm-offset-6 {
    margin-left: 50%;
  }
  .col-sm-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-sm-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-sm-offset-9 {
    margin-left: 75%;
  }
  .col-sm-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-sm-offset-11 {
    margin-left: 91.66666667%;
  }
  .start-sm {
    justify-content: flex-start;
    text-align: start;
  }
  .center-sm {
    justify-content: center;
    text-align: center;
  }
  .end-sm {
    justify-content: flex-end;
    text-align: end;
  }
  .top-sm {
    align-items: flex-start;
  }
  .middle-sm {
    align-items: center;
  }
  .bottom-sm {
    align-items: flex-end;
  }
  .around-sm {
    justify-content: space-around;
  }
  .between-sm {
    justify-content: space-between;
  }
  .first-sm {
    order: -1;
  }
  .last-sm {
    order: 1;
  }
}
@media only screen and (min-width: 64em) {
  .container {
    width: 63rem;
  }
  .col-md,
  .col-md-1,
  .col-md-2,
  .col-md-3,
  .col-md-4,
  .col-md-5,
  .col-md-6,
  .col-md-7,
  .col-md-8,
  .col-md-9,
  .col-md-10,
  .col-md-11,
  .col-md-12,
  .col-md-offset-0,
  .col-md-offset-1,
  .col-md-offset-2,
  .col-md-offset-3,
  .col-md-offset-4,
  .col-md-offset-5,
  .col-md-offset-6,
  .col-md-offset-7,
  .col-md-offset-8,
  .col-md-offset-9,
  .col-md-offset-10,
  .col-md-offset-11,
  .col-md-offset-12 {
    box-sizing: border-box;
    flex: 0 0 auto;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .col-md {
    flex-grow: 1;
    flex-basis: 0;
    max-width: 100%;
  }
  .col-md-1 {
    flex-basis: 8.33333333%;
    max-width: 8.33333333%;
  }
  .col-md-2 {
    flex-basis: 16.66666667%;
    max-width: 16.66666667%;
  }
  .col-md-3 {
    flex-basis: 25%;
    max-width: 25%;
  }
  .col-md-4 {
    flex-basis: 33.33333333%;
    max-width: 33.33333333%;
  }
  .col-md-5 {
    flex-basis: 41.66666667%;
    max-width: 41.66666667%;
  }
  .col-md-6 {
    flex-basis: 50%;
    max-width: 50%;
  }
  .col-md-7 {
    flex-basis: 58.33333333%;
    max-width: 58.33333333%;
  }
  .col-md-8 {
    flex-basis: 66.66666667%;
    max-width: 66.66666667%;
  }
  .col-md-9 {
    flex-basis: 75%;
    max-width: 75%;
  }
  .col-md-10 {
    flex-basis: 83.33333333%;
    max-width: 83.33333333%;
  }
  .col-md-11 {
    flex-basis: 91.66666667%;
    max-width: 91.66666667%;
  }
  .col-md-12 {
    flex-basis: 100%;
    max-width: 100%;
  }
  .col-md-offset-0 {
    margin-left: 0;
  }
  .col-md-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-md-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-md-offset-3 {
    margin-left: 25%;
  }
  .col-md-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-md-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-md-offset-6 {
    margin-left: 50%;
  }
  .col-md-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-md-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-md-offset-9 {
    margin-left: 75%;
  }
  .col-md-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-md-offset-11 {
    margin-left: 91.66666667%;
  }
  .start-md {
    justify-content: flex-start;
    text-align: start;
  }
  .center-md {
    justify-content: center;
    text-align: center;
  }
  .end-md {
    justify-content: flex-end;
    text-align: end;
  }
  .top-md {
    align-items: flex-start;
  }
  .middle-md {
    align-items: center;
  }
  .bottom-md {
    align-items: flex-end;
  }
  .around-md {
    justify-content: space-around;
  }
  .between-md {
    justify-content: space-between;
  }
  .first-md {
    order: -1;
  }
  .last-md {
    order: 1;
  }
}
@media only screen and (min-width: 75em) {
  .container {
    width: 74rem;
  }
  .col-lg,
  .col-lg-1,
  .col-lg-2,
  .col-lg-3,
  .col-lg-4,
  .col-lg-5,
  .col-lg-6,
  .col-lg-7,
  .col-lg-8,
  .col-lg-9,
  .col-lg-10,
  .col-lg-11,
  .col-lg-12,
  .col-lg-offset-0,
  .col-lg-offset-1,
  .col-lg-offset-2,
  .col-lg-offset-3,
  .col-lg-offset-4,
  .col-lg-offset-5,
  .col-lg-offset-6,
  .col-lg-offset-7,
  .col-lg-offset-8,
  .col-lg-offset-9,
  .col-lg-offset-10,
  .col-lg-offset-11,
  .col-lg-offset-12 {
    box-sizing: border-box;
    flex: 0 0 auto;
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .col-lg {
    flex-grow: 1;
    flex-basis: 0;
    max-width: 100%;
  }
  .col-lg-1 {
    flex-basis: 8.33333333%;
    max-width: 8.33333333%;
  }
  .col-lg-2 {
    flex-basis: 16.66666667%;
    max-width: 16.66666667%;
  }
  .col-lg-3 {
    flex-basis: 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    flex-basis: 33.33333333%;
    max-width: 33.33333333%;
  }
  .col-lg-5 {
    flex-basis: 41.66666667%;
    max-width: 41.66666667%;
  }
  .col-lg-6 {
    flex-basis: 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    flex-basis: 58.33333333%;
    max-width: 58.33333333%;
  }
  .col-lg-8 {
    flex-basis: 66.66666667%;
    max-width: 66.66666667%;
  }
  .col-lg-9 {
    flex-basis: 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    flex-basis: 83.33333333%;
    max-width: 83.33333333%;
  }
  .col-lg-11 {
    flex-basis: 91.66666667%;
    max-width: 91.66666667%;
  }
  .col-lg-12 {
    flex-basis: 100%;
    max-width: 100%;
  }
  .col-lg-offset-0 {
    margin-left: 0;
  }
  .col-lg-offset-1 {
    margin-left: 8.33333333%;
  }
  .col-lg-offset-2 {
    margin-left: 16.66666667%;
  }
  .col-lg-offset-3 {
    margin-left: 25%;
  }
  .col-lg-offset-4 {
    margin-left: 33.33333333%;
  }
  .col-lg-offset-5 {
    margin-left: 41.66666667%;
  }
  .col-lg-offset-6 {
    margin-left: 50%;
  }
  .col-lg-offset-7 {
    margin-left: 58.33333333%;
  }
  .col-lg-offset-8 {
    margin-left: 66.66666667%;
  }
  .col-lg-offset-9 {
    margin-left: 75%;
  }
  .col-lg-offset-10 {
    margin-left: 83.33333333%;
  }
  .col-lg-offset-11 {
    margin-left: 91.66666667%;
  }
  .start-lg {
    justify-content: flex-start;
    text-align: start;
  }
  .center-lg {
    justify-content: center;
    text-align: center;
  }
  .end-lg {
    justify-content: flex-end;
    text-align: end;
  }
  .top-lg {
    align-items: flex-start;
  }
  .middle-lg {
    align-items: center;
  }
  .bottom-lg {
    align-items: flex-end;
  }
  .around-lg {
    justify-content: space-around;
  }
  .between-lg {
    justify-content: space-between;
  }
  .first-lg {
    order: -1;
  }
  .last-lg {
    order: 1;
  }
}
@media screen and (max-width: 920px) {
  .mobile-first {
    order: 0;
  }
}

@media screen and (max-width: 920px) {
  .mobile-last {
    order: 1;
  }
}

.max-w-200 {
  width: 200px;
  max-width: 100%;
}
.max-w-200.centered {
  margin-left: auto;
  margin-right: auto;
}

.max-w-250 {
  width: 250px;
  max-width: 100%;
}
.max-w-250.centered {
  margin-left: auto;
  margin-right: auto;
}

.max-w-300 {
  width: 300px;
  max-width: 100%;
}
.max-w-300.centered {
  margin-left: auto;
  margin-right: auto;
}

.max-w-350 {
  width: 350px;
  max-width: 100%;
}
.max-w-350.centered {
  margin-left: auto;
  margin-right: auto;
}

.max-w-400 {
  width: 400px;
  max-width: 100%;
}
.max-w-400.centered {
  margin-left: auto;
  margin-right: auto;
}

.max-w-450 {
  width: 450px;
  max-width: 100%;
}
.max-w-450.centered {
  margin-left: auto;
  margin-right: auto;
}

.max-w-500 {
  width: 500px;
  max-width: 100%;
}
.max-w-500.centered {
  margin-left: auto;
  margin-right: auto;
}

.max-w-550 {
  width: 550px;
  max-width: 100%;
}
.max-w-550.centered {
  margin-left: auto;
  margin-right: auto;
}

.max-w-600 {
  width: 600px;
  max-width: 100%;
}
.max-w-600.centered {
  margin-left: auto;
  margin-right: auto;
}

.max-w-650 {
  width: 650px;
  max-width: 100%;
}
.max-w-650.centered {
  margin-left: auto;
  margin-right: auto;
}

.max-w-700 {
  width: 700px;
  max-width: 100%;
}
.max-w-700.centered {
  margin-left: auto;
  margin-right: auto;
}

.max-w-750 {
  width: 750px;
  max-width: 100%;
}
.max-w-750.centered {
  margin-left: auto;
  margin-right: auto;
}

.max-w-800 {
  width: 800px;
  max-width: 100%;
}
.max-w-800.centered {
  margin-left: auto;
  margin-right: auto;
}

.max-w-850 {
  width: 850px;
  max-width: 100%;
}
.max-w-850.centered {
  margin-left: auto;
  margin-right: auto;
}

.max-w-900 {
  width: 900px;
  max-width: 100%;
}
.max-w-900.centered {
  margin-left: auto;
  margin-right: auto;
}

.max-w-950 {
  width: 950px;
  max-width: 100%;
}
.max-w-950.centered {
  margin-left: auto;
  margin-right: auto;
}

.max-w-1000 {
  width: 1000px;
  max-width: 100%;
}
.max-w-1000.centered {
  margin-left: auto;
  margin-right: auto;
}

.grid-row {
  position: relative;
  width: 100%;
}

.grid-row [class^=col] {
  float: left;
  margin: 0.5rem 2%;
  min-height: 0.125rem;
}

.grid-row::after {
  content: "";
  display: table;
  clear: both;
}

.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12 {
  width: 96%;
}

.col-1-sm {
  width: 4.3333333333%;
}

.col-2-sm {
  width: 12.6666666667%;
}

.col-3-sm {
  width: 21%;
}

.col-4-sm {
  width: 29.3333333333%;
}

.col-5-sm {
  width: 37.6666666667%;
}

.col-6-sm {
  width: 46%;
}

.col-7-sm {
  width: 54.3333333333%;
}

.col-8-sm {
  width: 62.6666666667%;
}

.col-9-sm {
  width: 71%;
}

.col-10-sm {
  width: 79.3333333333%;
}

.col-11-sm {
  width: 87.6666666667%;
}

.col-12-sm {
  width: 96%;
}

@media only screen and (min-width: 830px) {
  .col-1 {
    width: 4.3333333333%;
  }
  .col-2 {
    width: 12.6666666667%;
  }
  .col-3 {
    width: 21%;
  }
  .col-4 {
    width: 29.3333333333%;
  }
  .col-5 {
    width: 37.6666666667%;
  }
  .col-6 {
    width: 46%;
  }
  .col-7 {
    width: 54.3333333333%;
  }
  .col-8 {
    width: 62.6666666667%;
  }
  .col-9 {
    width: 71%;
  }
  .col-10 {
    width: 79.3333333333%;
  }
  .col-11 {
    width: 87.6666666667%;
  }
  .col-12 {
    width: 96%;
  }
  .hidden-sm {
    display: block;
  }
}
@keyframes badge-spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .badge-ring {
    animation: none !important;
  }
}
@keyframes btn-wipe-in {
  from {
    transform: scaleX(0);
    transform-origin: left center;
  }
  to {
    transform: scaleX(1);
    transform-origin: left center;
  }
}
@keyframes btn-wipe-out {
  from {
    transform: scaleX(1);
    transform-origin: right center;
  }
  to {
    transform: scaleX(0);
    transform-origin: right center;
  }
}
@keyframes btn-fill-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes btn-fill-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

.header-phone i.fa-phone,
.footer-phone a i.fa-phone,
#side-menu .contact-item i.fa-phone {
  display: inline-block;
  transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.header-phone:hover i.fa-phone,
.header-phone:focus-visible i.fa-phone,
.footer-phone a:hover i.fa-phone,
.footer-phone a:focus-visible i.fa-phone,
#side-menu .contact-item:hover i.fa-phone,
#side-menu .contact-item:focus-visible i.fa-phone {
  transform: rotate(90deg);
}

.footer-address a i.fa-map-marker-alt,
#side-menu .contact-item i.fa-map-marker-alt {
  display: inline-block;
  transform-origin: 50% 100%;
  transition: transform 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.footer-address a:hover i.fa-map-marker-alt,
.footer-address a:focus-visible i.fa-map-marker-alt,
#side-menu .contact-item:hover i.fa-map-marker-alt,
#side-menu .contact-item:focus-visible i.fa-map-marker-alt {
  transform: translateY(-4px);
}

@media (prefers-reduced-motion: reduce) {
  .link-arrow i,
  a.cta-block i,
  .header-phone i.fa-phone,
  .footer-phone a i.fa-phone,
  #side-menu .contact-item i.fa-phone,
  .footer-address a i.fa-map-marker-alt,
  #side-menu .contact-item i.fa-map-marker-alt {
    transition: none !important;
  }
}
@keyframes call-unfurl {
  from {
    opacity: 0;
    transform: translateX(-50%) translateY(-8px) scaleY(0.85);
  }
  to {
    opacity: 1;
    transform: translateX(-50%) translateY(0) scaleY(1);
  }
}
@keyframes call-refurl {
  from {
    opacity: 1;
    transform: translateX(-50%) translateY(0) scaleY(1);
  }
  to {
    opacity: 0;
    transform: translateX(-50%) translateY(-8px) scaleY(0.85);
  }
}
@keyframes call-row-in {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
  to {
    opacity: 1;
    transform: none;
  }
}
.banner {
  --banner-top: 171px;
  --banner-bar: 0px;
  --banner-h: max(360px, min(max(840px, 43.33vw), 100svh - var(--banner-top) - var(--banner-bar)));
}
@media screen and (max-width: 920px) {
  .banner {
    --banner-top: 125px;
    --banner-bar: 55px;
  }
}
@media screen and (max-width: 480px) {
  .banner {
    --banner-top: 109px;
  }
}
.banner {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  background-color: #232f36;
  background-image: url("/wp-content/uploads/2026/09/DSC06255-2048x1366.jpg");
  background-position: 70% 30%;
  overflow: hidden;
  height: var(--banner-h);
  padding: 0;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  .banner {
    background-image: url("/wp-content/uploads/2026/09/DSC06255-1536x1024.jpg");
  }
}
@media screen and (max-width: 480px) {
  .banner {
    background-image: url("/wp-content/uploads/2026/09/DSC06255-1024x683.jpg");
  }
}
.banner:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.25);
  z-index: 1;
  background: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.25) 45%, rgba(0, 0, 0, 0.08) 70%);
}
.banner .banner-message {
  position: relative;
  z-index: 1;
  width: 100%;
  padding: 0 30px 0 max(50px, 50% - 718px);
  text-align: left;
}
.banner .banner-message h1 {
  max-width: 8.5em;
  margin: 0 0 30px;
  font-size: min(clamp(30px, -3.8px + 8.67vw, 95px), (55vw - max(50px, 50vw - 718px) - 20px) / 7.72);
  text-wrap: balance;
  text-shadow: 0 2px 30px rgba(0, 0, 0, 0.25);
  color: #ffffff;
}
@media screen and (max-aspect-ratio: 4/5) {
  .banner {
    --banner-photo: clamp(46vw, 100svh - var(--banner-top) - var(--banner-bar) - 171px - 20vw - 16px, 66.68vw);
    display: block;
    height: auto;
    background-size: 100% auto;
    background-position: center calc((var(--banner-photo) - 66.68vw) * 0.3);
  }
  .banner:before {
    display: none;
  }
  .banner .banner-message {
    margin-top: var(--banner-photo);
    padding: 30px 30px 44px;
    background: #232f36;
    text-align: center;
  }
  .banner .banner-message h1 {
    margin: 0 auto 30px;
    font-size: clamp(30px, -3.8px + 8.67vw, 95px);
    text-shadow: none;
  }
}
@media screen and (max-width: 480px) {
  .banner .banner-message h1 {
    margin-bottom: 24px;
  }
}

.footer-cta {
  background: #dae4ec;
  padding: 161px 0 150px;
}
.footer-cta .wrapper {
  max-width: calc(1146px + 2 * 30px);
}
.footer-cta .footer-cta-intro {
  max-width: 735px;
  margin: 0 auto 50px;
  text-align: center;
}
.footer-cta .footer-cta-intro h2 {
  max-width: 708px;
  margin: 0 auto 15px;
}
.footer-cta .footer-cta-intro p {
  margin: 0;
}
@media only screen and (max-width: 980px) {
  .footer-cta {
    padding: 80px 0;
  }
  .footer-cta .footer-cta-intro {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 920px) {
  .footer-cta .footer-cta-intro {
    margin-bottom: 28px;
  }
}
@media only screen and (max-width: 480px) {
  .footer-cta {
    padding: 44px 0;
  }
  .footer-cta .footer-cta-intro {
    margin-bottom: 20px;
  }
  .footer-cta .footer-cta-intro h2 {
    margin-bottom: 12px;
  }
  .footer-cta .footer-cta-intro p {
    line-height: 1.7;
  }
}

footer {
  background: #ffffff;
}
footer .footer-top {
  padding: 167px 0;
}
footer .footer-top .wrapper {
  display: flex;
  align-items: flex-start;
}
footer .footer-brand {
  flex: 0 0 42%;
  max-width: 42%;
}
footer .footer-logo {
  display: block;
  line-height: 0;
}
footer .footer-logo img,
footer .footer-logo svg {
  width: 559px;
  max-width: 100%;
  height: auto;
  display: block;
}
footer .footer-social {
  display: flex;
  gap: 20px;
  margin: 50px 0 0;
  padding: 0;
  list-style: none;
}
footer .footer-social a {
  transition-property: all;
  transition-duration: 0.8s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0.1s;
  color: #232f36;
  font-size: 30px;
  line-height: 1;
}
footer .footer-social a:hover .fa-facebook, footer .footer-social a:focus-visible .fa-facebook {
  color: #1877f2;
}
footer .footer-social a:hover .fa-instagram, footer .footer-social a:focus-visible .fa-instagram {
  color: #e4405f;
}
footer .footer-social i {
  transition: color 0.35s ease;
}
footer .footer-location {
  flex: 0 0 27%;
  max-width: 27%;
  margin-left: 8.6%;
}
footer .footer-location h3 {
  margin: 0 0 22px;
}
footer .footer-location p {
  margin: 0 0 8px;
}
footer .footer-location a {
  display: inline-flex;
  align-items: flex-start;
  gap: 10px;
  color: #232f36;
}
footer .footer-location a:hover {
  color: #0e5a8d;
}
footer .footer-location i {
  margin-top: 6px;
  color: #232f36;
}
footer .footer-location .footer-address,
footer .footer-location .footer-phone {
  margin: 0 0 22px;
  line-height: 1.45;
}
footer .footer-location .footer-contact-label {
  display: block;
  margin: 0 0 4px;
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #5a778a;
}
footer .footer-location .footer-phone a {
  align-items: center;
}
footer .footer-location .footer-phone i {
  margin-top: 0;
}
footer .footer-location .footer-directions {
  margin: 22px 0 0;
}
footer .footer-location .footer-directions a {
  align-items: center;
}
footer .footer-location .footer-directions i {
  margin-top: 0;
}
footer .footer-nav {
  flex: 1;
  margin-left: 3%;
}
footer .footer-nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
footer .footer-nav li {
  margin: 0 0 27px;
  line-height: 1;
}
footer .footer-nav li:last-child {
  margin-bottom: 0;
}
footer .footer-nav a {
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #5a778a;
}
footer .footer-nav a:hover {
  color: #0e5a8d;
}
@media only screen and (min-width: 981px) and (max-width: 1240px) {
  footer .footer-brand {
    flex-basis: 34%;
    max-width: 34%;
  }
  footer .footer-location {
    margin-left: 5%;
  }
  footer .footer-nav a {
    white-space: nowrap;
  }
}
footer .credits {
  background: #232f36;
  padding: 24px 30px;
  text-align: center;
}
footer .credits .copy {
  margin: 0;
  color: #ffffff;
  font-size: 16px;
  line-height: 2;
}
footer .credits .credit {
  white-space: nowrap;
}
footer .credits .sep {
  margin: 0 0.75em;
}
@media only screen and (max-width: 1199px) {
  footer .credits .credit:first-child {
    display: block;
  }
  footer .credits .credit:first-child + .sep {
    display: none;
  }
}
footer .credits .credit-name {
  white-space: nowrap;
}
@media only screen and (max-width: 767px) {
  footer .credits .copy {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0 22px;
    line-height: 1.9;
  }
  footer .credits .credit:first-child {
    flex: 0 0 100%;
    margin-bottom: 4px;
    white-space: normal;
    text-wrap: balance;
  }
  footer .credits .sep {
    display: none;
  }
}
footer .credits a {
  color: #ffffff;
  text-decoration: none;
}
footer .credits a:hover {
  color: #f0d6bc;
}
@media only screen and (max-width: 980px) {
  footer .footer-top {
    padding: 60px 0 70px;
    text-align: center;
  }
  footer .footer-top .wrapper {
    display: block;
  }
  footer .footer-brand,
  footer .footer-location,
  footer .footer-nav {
    flex: none;
    max-width: 100%;
    margin: 0;
  }
  footer .footer-logo img,
  footer .footer-logo svg {
    width: 280px;
    margin: 0 auto;
  }
  footer .footer-social {
    justify-content: center;
    gap: 12px;
    margin-top: 26px;
  }
  footer .footer-social a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 44px;
    height: 44px;
    font-size: 28px;
  }
  footer .footer-location,
  footer .footer-nav {
    position: relative;
    margin-top: 46px;
    padding-top: 46px;
  }
  footer .footer-location:before,
  footer .footer-nav:before {
    content: "";
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 64px;
    height: 2px;
    background: #f0d6bc;
  }
  footer .footer-location h3 {
    margin-bottom: 20px;
  }
  footer .footer-location i {
    margin-top: 5px;
  }
  footer .footer-nav ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 18px 30px;
    max-width: 620px;
    margin: 0 auto;
  }
  footer .footer-nav li {
    margin: 0;
  }
  footer .footer-nav a {
    font-size: 14px;
    white-space: nowrap;
  }
}
@media only screen and (max-width: 480px) {
  footer .footer-top {
    padding: 50px 0 56px;
  }
  footer .footer-logo img,
  footer .footer-logo svg {
    width: 230px;
  }
  footer .footer-social a {
    font-size: 26px;
  }
  footer .footer-nav ul {
    gap: 16px 24px;
  }
  footer .credits .copy {
    font-size: 14px;
  }
}

header {
  transition-property: all;
  transition-duration: 0.8s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0.1s;
  background: #ffffff;
  z-index: 99999;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}
header.active {
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.2);
}
header .utility {
  height: 41px;
  background-color: #232f36;
  width: 100%;
}
header .utility .utility-inner {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding: 0 35px;
}
header .utility .lang-switch-wrap {
  position: relative;
}
header .utility .lang-switch {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 0;
  border: 0;
  background: none;
  cursor: pointer;
  color: #ffffff;
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
header .utility .lang-switch i {
  font-size: 0.8em;
  transition: transform 0.35s ease;
}
header .utility .lang-switch:hover {
  color: #f0d6bc;
}
header .utility .lang-switch[aria-expanded=true] i {
  transform: rotate(180deg);
}
header .utility .lang-switch:focus-visible {
  outline: 2px solid #ffffff;
  outline-offset: 4px;
}
header .utility .lang-switch img,
header .utility .lang-option img {
  flex: 0 0 23px;
  width: 23px;
  height: 15px;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}
header .utility .lang-menu {
  position: absolute;
  top: calc(100% + 12px);
  right: -8px;
  z-index: 10;
  min-width: 150px;
  padding: 5px;
  background: #232f36;
  box-shadow: 0 16px 36px rgba(35, 47, 54, 0.45);
}
header .utility .lang-menu:before {
  content: "";
  position: absolute;
  bottom: 100%;
  right: 14px;
  border: 7px solid transparent;
  border-bottom-color: #232f36;
}
header .utility .lang-menu[hidden] {
  display: none;
}
header .utility .lang-option {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  color: #ffffff;
  font-family: "proxima-nova", sans-serif;
  font-size: 14px;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  transition: background-color 0.3s ease;
}
header .utility .lang-option + .lang-option:before {
  content: "";
  position: absolute;
  top: 0;
  left: 12px;
  right: 12px;
  border-top: 1px solid rgba(255, 255, 255, 0.22);
}
header .utility .lang-option:hover, header .utility .lang-option:focus-visible {
  background: rgba(255, 255, 255, 0.12);
}
header .utility .lang-option:focus-visible {
  outline: 2px solid #ffffff;
  outline-offset: -2px;
}
header .utility .lang-option.gt-current-lang {
  font-weight: inherit;
  color: #f0d6bc;
}
@media screen and (max-width: 920px) {
  header .utility .utility-inner {
    padding: 0 30px;
  }
}
header .header-inner {
  height: 130px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 35px 0 50px;
}
@media screen and (max-width: 1400px) {
  header .header-inner {
    padding: 0 30px;
  }
}
@media screen and (max-width: 920px) {
  header .header-inner {
    height: 84px;
  }
}
@media screen and (max-width: 480px) {
  header .header-inner {
    height: 68px;
  }
}
header .logo {
  display: block;
  line-height: 0;
}
header .logo img,
header .logo svg {
  width: 300px;
  height: auto;
  display: block;
}
@media screen and (max-width: 980px) {
  header .logo img,
  header .logo svg {
    width: 220px;
  }
}
@media screen and (max-width: 480px) {
  header .logo img,
  header .logo svg {
    width: 165px;
  }
}
header .header-actions {
  display: flex;
  align-items: center;
  gap: 30px;
}
header .header-call {
  position: relative;
}
@media screen and (max-width: 920px) {
  header .header-call {
    display: none;
  }
}
header .header-call-toggle,
header .header-location-toggle,
header .header-consult {
  padding-left: clamp(24px, 4.5vw - 15px, 50px);
  padding-right: clamp(24px, 4.5vw - 15px, 50px);
}
header .header-call-toggle[aria-expanded=true],
header .header-location-toggle[aria-expanded=true] {
  border-color: #0e5a8d;
  color: #ffffff;
}
header .header-call-toggle[aria-expanded=true]:not(.is-wipe-in, .is-wipe-out):before,
header .header-location-toggle[aria-expanded=true]:not(.is-wipe-in, .is-wipe-out):before {
  opacity: 1;
}
header .header-call-toggle[aria-expanded=true] .header-call-caret,
header .header-location-toggle[aria-expanded=true] .header-call-caret {
  transform: rotate(180deg);
}
header .header-call-toggle:focus-visible,
header .header-location-toggle:focus-visible {
  outline: 2px solid #0e5a8d;
  outline-offset: 3px;
}
header .header-location {
  position: relative;
}
@media screen and (max-width: 1240px) {
  header .header-location {
    display: none;
  }
}
header .header-call-caret {
  margin-left: 5px;
  font-size: 0.8em;
  transition: transform 0.35s ease;
}
header .header-call-menu {
  position: absolute;
  top: calc(100% + 14px);
  left: 50%;
  z-index: 10;
  min-width: 236px;
  padding: 6px;
  background: #0e5a8d;
  box-shadow: 0 18px 40px rgba(35, 47, 54, 0.28);
  transform: translateX(-50%) translateY(-8px) scaleY(0.85);
  transform-origin: top center;
  opacity: 0;
  visibility: hidden;
}
header .header-call-menu.is-open {
  visibility: visible;
  animation: call-unfurl 0.3s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
header .header-call-menu.is-closing {
  visibility: visible;
  animation: call-refurl 0.22s ease forwards;
}
header .header-call-menu:before {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 50%;
  border: 8px solid transparent;
  border-bottom-color: #0e5a8d;
  transform: translateX(-50%);
}
header .header-call-menu:after {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 0;
  width: 100%;
  height: 14px;
}
header .header-call-option {
  position: relative;
  display: block;
  padding: 12px 18px;
  opacity: 0;
  transform: translateY(-8px);
  transition: background-color 0.3s ease;
}
header .header-call-option + .header-call-option:before {
  content: "";
  position: absolute;
  top: 0;
  left: 18px;
  right: 18px;
  border-top: 1px solid rgba(255, 255, 255, 0.22);
}
header .header-call-option:hover, header .header-call-option:focus-visible {
  background: rgba(255, 255, 255, 0.12);
}
header .header-call-option:focus-visible {
  outline: 2px solid #ffffff;
  outline-offset: -2px;
}
header .header-call-menu.is-open .header-call-option {
  animation: call-row-in 0.34s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}
header .header-call-menu.is-open .header-call-option:nth-child(1) {
  animation-delay: 0.1s;
}
header .header-call-menu.is-open .header-call-option:nth-child(2) {
  animation-delay: 0.18s;
}
header .header-call-label {
  display: block;
  margin: 0 0 6px;
  font-family: "proxima-nova", sans-serif;
  font-size: 14px;
  line-height: 1;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.72);
}
header .header-call-number {
  display: block;
  font-family: "proxima-nova", sans-serif;
  font-size: 18px;
  line-height: 1.1;
  letter-spacing: 0.02em;
  color: #ffffff;
}
header .header-call-value {
  display: flex;
  align-items: baseline;
  gap: 9px;
}
header .header-call-value i {
  flex: 0 0 14px;
  font-size: 13px;
  text-align: center;
  color: rgba(255, 255, 255, 0.72);
}
header .header-call-address {
  line-height: 1.3;
  white-space: nowrap;
}
@media (prefers-reduced-motion: reduce) {
  header .header-call-menu.is-open,
  header .header-call-menu.is-closing,
  header .header-call-menu.is-open .header-call-option {
    animation-duration: 0.01ms;
    animation-delay: 0s;
  }
}
@media screen and (max-width: 920px) {
  header .header-consult {
    display: none;
  }
}
header nav#site-navigation {
  display: none;
}

@media screen and (max-width: 1400px) {
  html[lang=es] header .header-location {
    display: none;
  }
}

body {
  --header-bottom: 171px;
  --admin-bar: 0px;
}
@media screen and (max-width: 920px) {
  body {
    --header-bottom: 125px;
  }
}
@media screen and (max-width: 480px) {
  body {
    --header-bottom: 109px;
  }
}
body.logged-in.admin-bar {
  --admin-bar: 32px;
}
body .fl-builder-content [id] {
  scroll-margin-top: calc(var(--header-bottom) + var(--admin-bar) + 30px);
}

#page {
  padding-top: calc(41px + 130px);
}
@media screen and (max-width: 920px) {
  #page {
    padding-top: calc(41px + 84px);
  }
}
@media screen and (max-width: 480px) {
  #page {
    padding-top: calc(41px + 68px);
  }
}

.logo-dot-wipe {
  fill: #232f36;
  transform: scaleX(0);
  transform-box: fill-box;
  transform-origin: right center;
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

a:hover .logo-dot-wipe,
a:focus-visible .logo-dot-wipe {
  transform: scaleX(1);
  transform-origin: left center;
}

a[data-wipe] .logo-dot-wipe {
  transition: none;
}
a[data-wipe]:hover .logo-dot-wipe, a[data-wipe]:focus-visible .logo-dot-wipe {
  transform: scaleX(0);
}
a[data-wipe].is-wipe-in .logo-dot-wipe {
  animation: btn-wipe-in 0.5s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}
a[data-wipe].is-filled .logo-dot-wipe {
  transform: scaleX(1);
  transform-origin: left center;
}
a[data-wipe].is-wipe-out .logo-dot-wipe {
  animation: btn-wipe-out 0.5s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

.menu-toggle {
  transition-property: all;
  transition-duration: 0.8s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0.1s;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  cursor: pointer;
  background: transparent;
  border: 0;
  z-index: 8;
}
.menu-toggle .menu-label {
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #5a778a;
}
.menu-toggle .menu-bars {
  transition-property: all;
  transition-duration: 0.8s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0.1s;
  position: relative;
  display: block;
  width: 48px;
  height: 5px;
  margin: 25px 0 15px;
  background: #5a778a;
}
.menu-toggle .menu-bars:before, .menu-toggle .menu-bars:after {
  transition-property: all;
  transition-duration: 0.8s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0.1s;
  content: "";
  position: absolute;
  left: 0;
  width: 48px;
  height: 5px;
  background: #5a778a;
}
.menu-toggle .menu-bars:before {
  top: -15px;
}
.menu-toggle .menu-bars:after {
  top: 15px;
}
.menu-toggle:hover .menu-label {
  color: #0e5a8d;
}
.menu-toggle:focus {
  outline: none;
}
.menu-toggle.active .menu-bars {
  background: transparent;
}
.menu-toggle.active .menu-bars:before, .menu-toggle.active .menu-bars:after {
  top: 0;
}
.menu-toggle.active .menu-bars:before {
  transform: rotate(45deg);
}
.menu-toggle.active .menu-bars:after {
  transform: rotate(-45deg);
}
@media only screen and (max-width: 920px) {
  .menu-toggle {
    align-items: center;
  }
  .menu-toggle .menu-label {
    font-size: 13px;
  }
  .menu-toggle .menu-bars {
    width: 39px;
    height: 4px;
    margin: 18px 0 11px;
  }
  .menu-toggle .menu-bars:before, .menu-toggle .menu-bars:after {
    width: 39px;
    height: 4px;
  }
  .menu-toggle .menu-bars:before {
    top: -9px;
  }
  .menu-toggle .menu-bars:after {
    top: 9px;
  }
}
@media only screen and (max-width: 480px) {
  .menu-toggle .menu-label {
    display: none;
  }
  .menu-toggle {
    align-items: flex-end;
  }
  .menu-toggle .menu-bars {
    width: 36px;
    margin: 9px 0;
  }
  .menu-toggle .menu-bars:before, .menu-toggle .menu-bars:after {
    width: 36px;
  }
}

.menu-overlay {
  position: fixed;
  inset: 0;
  z-index: 99998;
  background: rgba(35, 47, 54, 0.45);
  -webkit-backdrop-filter: blur(3px);
  backdrop-filter: blur(3px);
  cursor: pointer;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s cubic-bezier(0.22, 1, 0.36, 1), visibility 0s linear 0.5s;
}
.menu-overlay.active {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.5s cubic-bezier(0.22, 1, 0.36, 1), visibility 0s;
}

#side-menu {
  --menu-gap: clamp(14px, 6.6vh - 30px, 32px);
  --menu-item: clamp(6px, 3vh - 14px, 14px);
  --panel-pad: clamp(18px, 5vh - 15px, 32px);
  --panel-gap: clamp(10px, 3.2vh - 10px, 20px);
  --back-h: 32px;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 99999;
  display: flex;
  flex-direction: column;
  width: 460px;
  max-width: 100%;
  height: 100%;
  height: 100dvh;
  overflow-x: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  text-align: left;
  background: #ffffff;
  visibility: hidden;
  transform: translateX(100%);
  transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.6s cubic-bezier(0.22, 1, 0.36, 1), visibility 0s linear 0.6s;
}
#side-menu.active {
  visibility: visible;
  transform: translateX(0);
  box-shadow: -20px 0 60px rgba(35, 47, 54, 0.18);
  transition: transform 0.6s cubic-bezier(0.22, 1, 0.36, 1), box-shadow 0.6s cubic-bezier(0.22, 1, 0.36, 1), visibility 0s;
}
#side-menu .side-menu-top {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  padding: 0 0 calc(var(--menu-gap) - var(--menu-item));
}
#side-menu .side-menu-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin: 0 0 calc(var(--menu-gap) - var(--menu-item));
  padding: clamp(12px, 5vh - 18px, 28px) 40px 0;
}
#side-menu .side-menu-logo {
  display: block;
  line-height: 0;
}
#side-menu .side-menu-logo img,
#side-menu .side-menu-logo svg {
  display: block;
  width: 170px;
  height: auto;
}
#side-menu .menu-close {
  position: relative;
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 1px solid #a3bcd1;
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
  transition: background-color 0.35s ease, border-color 0.35s ease, transform 0.5s cubic-bezier(0.22, 1, 0.36, 1);
}
#side-menu .menu-close span:before,
#side-menu .menu-close span:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 1.5px;
  margin: -0.75px 0 0 -7px;
  border-radius: 2px;
  background: #232f36;
  transition: background-color 0.35s ease;
}
#side-menu .menu-close span:before {
  transform: rotate(45deg);
}
#side-menu .menu-close span:after {
  transform: rotate(-45deg);
}
#side-menu .menu-close:hover {
  border-color: #232f36;
  background: #232f36;
  transform: rotate(90deg);
}
#side-menu .menu-close:hover span:before,
#side-menu .menu-close:hover span:after {
  background: #ffffff;
}
#side-menu .menu-close:focus-visible {
  outline: 2px solid #0e5a8d;
  outline-offset: 3px;
}
#side-menu .menu-back {
  position: absolute;
  top: calc(var(--menu-item) / 2 + 3px);
  left: 40px;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  height: var(--back-h);
  margin: 0;
  padding: 0 8px 0 0;
  border: 0;
  background: transparent;
  cursor: pointer;
  font-family: "proxima-nova", sans-serif;
  font-size: 13px;
  line-height: 1;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #5a778a;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.35s ease, color 0.35s ease, visibility 0s linear 0.35s;
}
#side-menu .menu-back .icon {
  transition: transform 0.35s ease;
}
#side-menu .menu-back.active {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.35s ease 0.15s, color 0.35s ease, visibility 0s;
}
#side-menu .menu-back:hover {
  color: #0e5a8d;
}
#side-menu .menu-back:hover .icon {
  transform: translateX(-4px);
}
#side-menu .menu-back:focus-visible {
  outline: 2px solid #0e5a8d;
  outline-offset: 3px;
}
#side-menu .side-menu-nav {
  position: relative;
  overflow: hidden;
  padding-top: calc(var(--back-h) + var(--menu-gap) - var(--menu-item));
}
#side-menu ul#primary-menu {
  margin: 0;
  padding: 0 40px;
  list-style: none;
  transition: transform 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}
#side-menu ul#primary-menu.active {
  transform: translateX(-100%);
}
#side-menu ul#primary-menu > li {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 0;
  padding: 0;
}
#side-menu ul#primary-menu > li > a {
  flex: 1;
  display: block;
  padding: var(--menu-item) 0;
  font-family: "ivypresto-display", serif;
  font-size: 32px;
  font-weight: 400;
  line-height: 1.15;
  color: #232f36;
  transition: color 0.35s ease, transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}
#side-menu ul#primary-menu > li > a:hover {
  color: #0e5a8d;
  transform: translateX(6px);
}
#side-menu ul#primary-menu > li.current-menu-item > a, #side-menu ul#primary-menu > li.current-menu-ancestor > a, #side-menu ul#primary-menu > li.current_page_item > a {
  font-style: italic;
  color: #0e5a8d;
}
#side-menu ul#primary-menu .expand {
  position: relative;
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #5a778a;
  cursor: pointer;
  transition: color 0.35s ease, transform 0.35s cubic-bezier(0.22, 1, 0.36, 1);
}
#side-menu ul#primary-menu .expand:before {
  content: "\f054";
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: "Font Awesome 5 Free";
  font-size: 14px;
  font-weight: 900;
}
#side-menu ul#primary-menu .expand:hover {
  color: #0e5a8d;
  transform: translateX(3px);
}
#side-menu ul#primary-menu .expand:focus-visible {
  outline: 2px solid #0e5a8d;
  outline-offset: 3px;
}
#side-menu ul#primary-menu ul.sub-menu {
  position: absolute;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  margin: 0;
  padding: 0 40px;
  list-style: none;
  transform: translateX(100%);
}
#side-menu ul#primary-menu ul.sub-menu.active {
  display: block;
}
#side-menu ul#primary-menu ul.sub-menu li a {
  display: block;
  padding: var(--menu-item) 0;
  font-family: "ivypresto-display", serif;
  font-size: 26px;
  line-height: 1.2;
  color: #232f36;
  transition: color 0.35s ease, transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}
#side-menu ul#primary-menu ul.sub-menu li a:hover {
  color: #0e5a8d;
  transform: translateX(6px);
}
#side-menu ul#primary-menu ul.sub-menu li .expand {
  display: none;
}
#side-menu ul#primary-menu ul.sub-menu li ul.sub-menu {
  position: static;
  display: block;
  padding: 0 0 12px 18px;
  transform: none;
}
#side-menu ul#primary-menu ul.sub-menu li ul.sub-menu li {
  border: 0;
}
#side-menu ul#primary-menu ul.sub-menu li ul.sub-menu a {
  padding: 7px 0;
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
}
#side-menu .contact-info {
  position: relative;
  z-index: 0;
  flex: 1 0 auto;
  display: flex;
  flex-direction: column;
  gap: var(--panel-gap);
  overflow: hidden;
  padding: var(--panel-pad) 40px;
  background: #0e5a8d;
}
#side-menu .contact-info > * {
  transition: color 0.45s ease;
}
#side-menu .contact-info:before {
  content: "";
  position: absolute;
  right: -95px;
  bottom: -178px;
  z-index: -1;
  width: 260px;
  height: 264px;
  background: url("img/motifs/arc-motif-left.svg") no-repeat center/contain;
  pointer-events: none;
}
#side-menu .contact-info .btn {
  width: 100%;
  height: 56px;
  padding: 0 24px;
  margin-bottom: calc(var(--panel-pad) - var(--panel-gap));
}
#side-menu .contact-item {
  display: flex;
  align-items: center;
  gap: 16px;
  color: #ffffff;
}
#side-menu .contact-item + .contact-item {
  padding-top: var(--panel-gap);
  border-top: 1px solid rgba(255, 255, 255, 0.15);
}
#side-menu .contact-item .contact-icon {
  flex: 0 0 44px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(255, 255, 255, 0.35);
  border-radius: 50%;
  color: #f0d6bc;
  font-size: 16px;
  transition: background-color 0.35s ease, border-color 0.35s ease, color 0.35s ease;
}
#side-menu .contact-item .contact-text {
  display: flex;
  flex-direction: column;
  gap: 6px;
  transition: color 0.35s ease;
  font-family: "proxima-nova", sans-serif;
  font-size: 18px;
  line-height: 1.4;
  color: #ffffff;
}
#side-menu .contact-item .contact-label {
  font-size: 12px;
  line-height: 1;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.75);
}
#side-menu .contact-item strong {
  font-size: 19px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.02em;
}
#side-menu .contact-item:hover .contact-icon {
  border-color: #f0d6bc;
  background: #f0d6bc;
  color: #232f36;
}
#side-menu .contact-item:hover .contact-text {
  color: #f0d6bc;
}
@media screen and (max-height: 860px) {
  #side-menu ul#primary-menu > li > a {
    font-size: 28px;
  }
  #side-menu ul#primary-menu ul.sub-menu li a {
    font-size: 24px;
  }
  #side-menu .contact-info:before {
    right: -40px;
    bottom: -98px;
    width: 190px;
    height: 193px;
  }
}
@media screen and (max-width: 480px) {
  #side-menu {
    width: 100%;
  }
  #side-menu .side-menu-bar {
    height: 68px;
    margin-top: 41px;
    padding: 0 30px;
  }
  #side-menu .side-menu-logo img,
  #side-menu .side-menu-logo svg {
    width: 165px;
  }
  #side-menu .menu-back {
    left: 30px;
  }
  #side-menu ul#primary-menu {
    padding: 0 30px;
  }
  #side-menu ul#primary-menu > li > a {
    font-size: 28px;
  }
  #side-menu ul#primary-menu ul.sub-menu {
    padding-right: 30px;
    padding-left: 30px;
  }
  #side-menu .contact-info {
    padding: var(--panel-pad) 30px;
  }
  #side-menu .contact-info:before {
    right: -72px;
    bottom: -128px;
    width: 190px;
    height: 193px;
  }
  #side-menu .contact-info .btn {
    height: 54px;
  }
}
@media screen and (max-width: 480px) and (max-width: 359px) {
  #side-menu .contact-info .btn {
    padding-right: 16px;
    padding-left: 16px;
    letter-spacing: 0.08em;
  }
}
@media screen and (max-width: 480px) {
  #side-menu .contact-item strong {
    font-size: 20px;
  }
}
@media screen and (max-height: 700px) {
  #side-menu ul#primary-menu > li > a {
    font-size: 26px;
  }
  #side-menu ul#primary-menu ul.sub-menu li a {
    font-size: 22px;
  }
  #side-menu .contact-info .btn {
    height: 50px;
  }
  #side-menu .contact-item {
    gap: 14px;
  }
  #side-menu .contact-item .contact-icon {
    flex-basis: 40px;
    width: 40px;
    height: 40px;
  }
}
@media (prefers-reduced-motion: reduce) {
  #side-menu, #side-menu.active,
  #side-menu ul#primary-menu,
  #side-menu ul#primary-menu > li,
  #side-menu .menu-back,
  #side-menu .contact-info > * {
    transition: none !important;
  }
}

.mobile-bar {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 55px;
  background: #232f36;
  box-shadow: 0 -1px 4px rgba(0, 0, 0, 0.05), 0 -1px 4px rgba(0, 0, 0, 0.1);
  z-index: 9998;
}
.mobile-bar .mobile-bar-menu {
  display: flex;
  height: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
}
.mobile-bar .mobile-bar-menu > li {
  flex: 1 1 0;
  min-width: 0;
  margin: 0;
}
.mobile-bar .mobile-bar-menu > li + li {
  border-left: 1px solid rgba(255, 255, 255, 0.2);
}
.mobile-bar .mobile-bar-menu > li:first-child {
  flex: 0 0 50%;
}
.mobile-bar .mobile-bar-menu a {
  transition-property: all;
  transition-duration: 0.8s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0.1s;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 100%;
  padding: 0 8px;
  background: #232f36;
  color: #ffffff;
  font-family: "proxima-nova", sans-serif;
  font-size: 13px;
  line-height: 1;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  text-align: center;
}
.mobile-bar .mobile-bar-menu > li:first-child > a {
  background: #f0d6bc;
  color: #232f36;
  font-size: 14px;
  letter-spacing: 0.12em;
}
.mobile-bar .mobile-bar-menu a[href^="tel:"],
.mobile-bar .mobile-bar-menu a[href*="share.google"],
.mobile-bar .mobile-bar-menu a[href*="maps.app.goo.gl"],
.mobile-bar .mobile-bar-menu a[href*="google.com/maps"],
.mobile-bar .mobile-bar-menu a[href*="maps.google"] {
  gap: 0;
  font-size: 0;
  letter-spacing: 0;
}
.mobile-bar .mobile-bar-menu a[href^="tel:"]:before,
.mobile-bar .mobile-bar-menu a[href*="share.google"]:before,
.mobile-bar .mobile-bar-menu a[href*="maps.app.goo.gl"]:before,
.mobile-bar .mobile-bar-menu a[href*="google.com/maps"]:before,
.mobile-bar .mobile-bar-menu a[href*="maps.google"]:before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 18px;
  line-height: 1;
}
.mobile-bar .mobile-bar-menu a[href^="tel:"]:before {
  content: "\f095";
}
.mobile-bar .mobile-bar-menu a[href*="share.google"]:before,
.mobile-bar .mobile-bar-menu a[href*="maps.app.goo.gl"]:before,
.mobile-bar .mobile-bar-menu a[href*="google.com/maps"]:before,
.mobile-bar .mobile-bar-menu a[href*="maps.google"]:before {
  content: "\f3c5";
}
@media only screen and (max-width: 920px) {
  .mobile-bar {
    display: block;
  }
}
@media only screen and (max-width: 480px) {
  .mobile-bar .mobile-bar-menu > li:first-child > a {
    font-size: 13px;
  }
}

@media only screen and (max-width: 920px) {
  footer .credits {
    padding-bottom: calc(24px + 55px);
  }
}

.section-padding {
  padding: 5em 0;
}
@media only screen and (max-width: 920px) {
  .section-padding {
    padding: 2.5em 0;
  }
}

.section-padding-top {
  padding: 5em 0 0;
}
@media only screen and (max-width: 920px) {
  .section-padding-top {
    padding: 2.5em 0 0;
  }
}

.section-padding-bottom {
  padding: 0 0 5em;
}
@media only screen and (max-width: 920px) {
  .section-padding-bottom {
    padding: 0 0 2.5em;
  }
}

.fl-rich-text,
.fl-html {
  overflow-wrap: anywhere;
}

.fl-rich-text :is(h1, h2, h3, h4, h5, h6),
.fl-html :is(h1, h2, h3, h4, h5, h6) {
  overflow-wrap: normal;
}

.fl-html iframe[src*="google.com/maps"] {
  display: block;
  width: 100%;
  max-width: 100%;
}
@media only screen and (max-width: 920px) {
  .fl-html iframe[src*="google.com/maps"] {
    height: auto;
    aspect-ratio: 4/3;
  }
}

.padding-top-10 {
  padding-top: 10px;
}

.padding-top-20 {
  padding-top: 20px;
}

.padding-top-30 {
  padding-top: 30px;
}

.padding-top-40 {
  padding-top: 40px;
}

.padding-top-50 {
  padding-top: 50px;
}

.padding-top-60 {
  padding-top: 60px;
}

.padding-top-70 {
  padding-top: 70px;
}

.padding-top-80 {
  padding-top: 80px;
}

.padding-top-90 {
  padding-top: 90px;
}

.padding-bottom-10 {
  padding-bottom: 10px;
}

.padding-bottom-20 {
  padding-bottom: 20px;
}

.padding-bottom-30 {
  padding-bottom: 30px;
}

.padding-bottom-40 {
  padding-bottom: 40px;
}

.padding-bottom-50 {
  padding-bottom: 50px;
}

.padding-bottom-60 {
  padding-bottom: 60px;
}

.padding-bottom-70 {
  padding-bottom: 70px;
}

.padding-bottom-80 {
  padding-bottom: 80px;
}

.padding-bottom-90 {
  padding-bottom: 90px;
}

.padding-bottom-40 {
  padding-bottom: 40px;
}

.padding-bottom-50 {
  padding-bottom: 50px;
}

.padding-bottom-100 {
  padding-bottom: 100px;
}

.padding-left-10 {
  padding-left: 10px;
}

.padding-left-20 {
  padding-left: 20px;
}

.padding-left-30 {
  padding-left: 30px;
}

.padding-left-40 {
  padding-left: 40px;
}

.padding-left-50 {
  padding-left: 50px;
}

.padding-left-60 {
  padding-left: 60px;
}

.padding-left-70 {
  padding-left: 70px;
}

.padding-left-80 {
  padding-left: 80px;
}

.padding-left-90 {
  padding-left: 90px;
}

.padding-left-40 {
  padding-left: 40px;
}

.padding-left-50 {
  padding-left: 50px;
}

.padding-left-100 {
  padding-left: 100px;
}

.padding-right-10 {
  padding-right: 10px;
}

.padding-right-20 {
  padding-right: 20px;
}

.padding-right-30 {
  padding-right: 30px;
}

.padding-right-40 {
  padding-right: 40px;
}

.padding-right-50 {
  padding-right: 50px;
}

.padding-right-60 {
  padding-right: 60px;
}

.padding-right-70 {
  padding-right: 70px;
}

.padding-right-80 {
  padding-right: 80px;
}

.padding-right-90 {
  padding-right: 90px;
}

.padding-right-40 {
  padding-right: 40px;
}

.padding-right-50 {
  padding-right: 50px;
}

.padding-right-100 {
  padding-right: 100px;
}

.padding-top-40 {
  padding-top: 40px;
}

.padding-top-50 {
  padding-top: 50px;
}

.padding-top-100 {
  padding-top: 100px;
}

@media screen and (min-width: 920px) {
  .desktop-padding-top-10 {
    padding-top: 10px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-top-20 {
    padding-top: 20px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-top-30 {
    padding-top: 30px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-top-40 {
    padding-top: 40px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-top-50 {
    padding-top: 50px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-top-60 {
    padding-top: 60px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-top-70 {
    padding-top: 70px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-top-80 {
    padding-top: 80px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-top-90 {
    padding-top: 90px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-top-100 {
    padding-top: 100px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-bottom-10 {
    padding-bottom: 10px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-bottom-20 {
    padding-bottom: 20px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-bottom-30 {
    padding-bottom: 30px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-bottom-40 {
    padding-bottom: 40px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-bottom-50 {
    padding-bottom: 50px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-bottom-60 {
    padding-bottom: 60px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-bottom-70 {
    padding-bottom: 70px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-bottom-80 {
    padding-bottom: 80px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-bottom-90 {
    padding-bottom: 90px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-bottom-100 {
    padding-bottom: 100px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-left-10 {
    padding-left: 10px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-left-20 {
    padding-left: 20px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-left-30 {
    padding-left: 30px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-left-40 {
    padding-left: 40px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-left-50 {
    padding-left: 50px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-left-60 {
    padding-left: 60px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-left-70 {
    padding-left: 70px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-left-80 {
    padding-left: 80px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-left-90 {
    padding-left: 90px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-left-100 {
    padding-left: 100px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-right-10 {
    padding-right: 10px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-right-20 {
    padding-right: 20px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-right-30 {
    padding-right: 30px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-right-40 {
    padding-right: 40px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-right-50 {
    padding-right: 50px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-right-60 {
    padding-right: 60px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-right-70 {
    padding-right: 70px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-right-80 {
    padding-right: 80px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-right-90 {
    padding-right: 90px;
  }
}

@media screen and (min-width: 920px) {
  .desktop-padding-right-100 {
    padding-right: 100px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-top-10 {
    padding-top: 10px !important;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-top-20 {
    padding-top: 20px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-top-30 {
    padding-top: 30px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-top-40 {
    padding-top: 40px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-top-50 {
    padding-top: 50px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-top-60 {
    padding-top: 60px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-top-70 {
    padding-top: 70px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-top-80 {
    padding-top: 80px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-top-90 {
    padding-top: 90px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-top-100 {
    padding-top: 100px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-bottom-10 {
    padding-bottom: 10px !important;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-bottom-20 {
    padding-bottom: 20px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-bottom-30 {
    padding-bottom: 30px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-bottom-40 {
    padding-bottom: 40px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-bottom-50 {
    padding-bottom: 50px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-bottom-60 {
    padding-bottom: 60px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-bottom-70 {
    padding-bottom: 70px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-bottom-80 {
    padding-bottom: 80px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-bottom-90 {
    padding-bottom: 90px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-bottom-100 {
    padding-bottom: 100px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-left-10 {
    padding-left: 10px !important;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-left-20 {
    padding-left: 20px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-left-30 {
    padding-left: 30px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-left-40 {
    padding-left: 40px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-left-50 {
    padding-left: 50px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-left-60 {
    padding-left: 60px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-left-70 {
    padding-left: 70px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-left-80 {
    padding-left: 80px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-left-90 {
    padding-left: 90px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-left-100 {
    padding-left: 100px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-right-10 {
    padding-right: 10px !important;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-right-20 {
    padding-right: 20px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-right-30 {
    padding-right: 30px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-right-40 {
    padding-right: 40px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-right-50 {
    padding-right: 50px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-right-60 {
    padding-right: 60px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-right-70 {
    padding-right: 70px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-right-80 {
    padding-right: 80px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-right-90 {
    padding-right: 90px;
  }
}

@media screen and (max-width: 920px) {
  .mobile-padding-right-100 {
    padding-right: 100px;
  }
}

@media only screen and (max-width: 830px) {
  body .fl-builder-content .fl-row[data-node] > .fl-row-content-wrap {
    padding-left: 10px;
    padding-right: 10px;
  }
}
.spacer {
  content: "";
  display: block;
  position: relative;
  height: 20px;
}
.spacer.spacer-5 {
  height: 5px;
}
.spacer .spacer-10 {
  height: 10px;
}
.spacer.spacer-15 {
  height: 15px;
}
.spacer.spacer-20 {
  height: 15px;
}
.spacer.spacer-25 {
  height: 15px;
}
.spacer.spacer-lrg {
  height: 30px;
}

/*!
Animate.css - http://daneden.me/animate
Licensed under the MIT license

Copyright (c) 2013 Daniel Eden

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
*/
.wow {
  visibility: hidden;
}

.animated {
  animation-duration: 1s;
  animation-fill-mode: both;
}

.animated.hinge {
  animation-duration: 2s;
}
@keyframes bounce {
  0%, 20%, 50%, 80%, 100% {
    transform: translateY(0);
  }
  40% {
    transform: translateY(-30px);
  }
  60% {
    transform: translateY(-15px);
  }
}
.bounce {
  animation-name: bounce;
}
@keyframes flash {
  0%, 50%, 100% {
    opacity: 1;
  }
  25%, 75% {
    opacity: 0;
  }
}
.flash {
  animation-name: flash;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes pulse {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
.pulse {
  animation-name: pulse;
}
@keyframes shake {
  0%, 100% {
    transform: translateX(0);
  }
  10%, 30%, 50%, 70%, 90% {
    transform: translateX(-10px);
  }
  20%, 40%, 60%, 80% {
    transform: translateX(10px);
  }
}
.shake {
  animation-name: shake;
}
@keyframes swing {
  20% {
    transform: rotate(15deg);
  }
  40% {
    transform: rotate(-10deg);
  }
  60% {
    transform: rotate(5deg);
  }
  80% {
    transform: rotate(-5deg);
  }
  100% {
    transform: rotate(0deg);
  }
}
.swing {
  transform-origin: top center;
  animation-name: swing;
}
@keyframes tada {
  0% {
    transform: scale(1);
  }
  10%, 20% {
    transform: scale(0.9) rotate(-3deg);
  }
  30%, 50%, 70%, 90% {
    transform: scale(1.1) rotate(3deg);
  }
  40%, 60%, 80% {
    transform: scale(1.1) rotate(-3deg);
  }
  100% {
    transform: scale(1) rotate(0);
  }
}
.tada {
  animation-name: tada;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes wobble {
  0% {
    transform: translateX(0%);
  }
  15% {
    transform: translateX(-25%) rotate(-5deg);
  }
  30% {
    transform: translateX(20%) rotate(3deg);
  }
  45% {
    transform: translateX(-15%) rotate(-3deg);
  }
  60% {
    transform: translateX(10%) rotate(2deg);
  }
  75% {
    transform: translateX(-5%) rotate(-1deg);
  }
  100% {
    transform: translateX(0%);
  }
}
.wobble {
  animation-name: wobble;
}
@keyframes bounceIn {
  0% {
    opacity: 0;
    transform: scale(0.3);
  }
  50% {
    opacity: 1;
    transform: scale(1.05);
  }
  70% {
    transform: scale(0.9);
  }
  100% {
    transform: scale(1);
  }
}
.bounceIn {
  animation-name: bounceIn;
}
@keyframes bounceInDown {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  60% {
    opacity: 1;
    transform: translateY(30px);
  }
  80% {
    transform: translateY(-10px);
  }
  100% {
    transform: translateY(0);
  }
}
.bounceInDown {
  animation-name: bounceInDown;
}
@keyframes bounceInLeft {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  60% {
    opacity: 1;
    transform: translateX(30px);
  }
  80% {
    transform: translateX(-10px);
  }
  100% {
    transform: translateX(0);
  }
}
.bounceInLeft {
  animation-name: bounceInLeft;
}
@keyframes bounceInRight {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  60% {
    opacity: 1;
    transform: translateX(-30px);
  }
  80% {
    transform: translateX(10px);
  }
  100% {
    transform: translateX(0);
  }
}
.bounceInRight {
  animation-name: bounceInRight;
}
@keyframes bounceInUp {
  0% {
    opacity: 0;
    transform: translateY(2000px);
  }
  60% {
    opacity: 1;
    transform: translateY(-30px);
  }
  80% {
    transform: translateY(10px);
  }
  100% {
    transform: translateY(0);
  }
}
.bounceInUp {
  animation-name: bounceInUp;
}
@keyframes bounceOut {
  0% {
    transform: scale(1);
  }
  25% {
    transform: scale(0.95);
  }
  50% {
    opacity: 1;
    transform: scale(1.1);
  }
  100% {
    opacity: 0;
    transform: scale(0.3);
  }
}
.bounceOut {
  animation-name: bounceOut;
}
@keyframes bounceOutDown {
  0% {
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    transform: translateY(-20px);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}
.bounceOutDown {
  animation-name: bounceOutDown;
}
@keyframes bounceOutLeft {
  0% {
    transform: translateX(0);
  }
  20% {
    opacity: 1;
    transform: translateX(20px);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
.bounceOutLeft {
  animation-name: bounceOutLeft;
}
@keyframes bounceOutRight {
  0% {
    transform: translateX(0);
  }
  20% {
    opacity: 1;
    transform: translateX(-20px);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
.bounceOutRight {
  animation-name: bounceOutRight;
}
@keyframes bounceOutUp {
  0% {
    transform: translateY(0);
  }
  20% {
    opacity: 1;
    transform: translateY(20px);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
.bounceOutUp {
  animation-name: bounceOutUp;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.fadeIn {
  animation-name: fadeIn;
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInDown {
  animation-name: fadeInDown;
}
@keyframes fadeInDownBig {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInDownBig {
  animation-name: fadeInDownBig;
}
@keyframes fadeInLeft {
  0% {
    opacity: 0;
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInLeft {
  animation-name: fadeInLeft;
}
@keyframes fadeInLeftBig {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInLeftBig {
  animation-name: fadeInLeftBig;
}
@keyframes fadeInRight {
  0% {
    opacity: 0;
    transform: translateX(20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInRight {
  animation-name: fadeInRight;
}
@keyframes fadeInRightBig {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}
.fadeInRightBig {
  animation-name: fadeInRightBig;
}
@keyframes fadeInUp {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInUp {
  animation-name: fadeInUp;
}
@keyframes fadeInUpBig {
  0% {
    opacity: 0;
    transform: translateY(2000px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
.fadeInUpBig {
  animation-name: fadeInUpBig;
}
@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.fadeOut {
  animation-name: fadeOut;
}
@keyframes fadeOutDown {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(20px);
  }
}
.fadeOutDown {
  animation-name: fadeOutDown;
}
@keyframes fadeOutDownBig {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(2000px);
  }
}
.fadeOutDownBig {
  animation-name: fadeOutDownBig;
}
@keyframes fadeOutLeft {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-20px);
  }
}
.fadeOutLeft {
  animation-name: fadeOutLeft;
}
@keyframes fadeOutLeftBig {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
.fadeOutLeftBig {
  animation-name: fadeOutLeftBig;
}
@keyframes fadeOutRight {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(20px);
  }
}
.fadeOutRight {
  animation-name: fadeOutRight;
}
@keyframes fadeOutRightBig {
  0% {
    opacity: 1;
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
.fadeOutRightBig {
  animation-name: fadeOutRightBig;
}
@keyframes fadeOutUp {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-20px);
  }
}
.fadeOutUp {
  animation-name: fadeOutUp;
}
@keyframes fadeOutUpBig {
  0% {
    opacity: 1;
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
.fadeOutUpBig {
  animation-name: fadeOutUpBig;
}
@keyframes flip {
  0% {
    transform: perspective(400px) translateZ(0) rotateY(0) scale(1);
    animation-timing-function: ease-out;
  }
  40% {
    transform: perspective(400px) translateZ(150px) rotateY(170deg) scale(1);
    animation-timing-function: ease-out;
  }
  50% {
    transform: perspective(400px) translateZ(150px) rotateY(190deg) scale(1);
    animation-timing-function: ease-in;
  }
  80% {
    transform: perspective(400px) translateZ(0) rotateY(360deg) scale(0.95);
    animation-timing-function: ease-in;
  }
  100% {
    transform: perspective(400px) translateZ(0) rotateY(360deg) scale(1);
    animation-timing-function: ease-in;
  }
}
.animated.flip {
  backface-visibility: visible;
  animation-name: flip;
}
@keyframes flipInX {
  0% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateX(-10deg);
  }
  70% {
    transform: perspective(400px) rotateX(10deg);
  }
  100% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
}
.flipInX {
  backface-visibility: visible !important;
  animation-name: flipInX;
}
@keyframes flipInY {
  0% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
  40% {
    transform: perspective(400px) rotateY(-10deg);
  }
  70% {
    transform: perspective(400px) rotateY(10deg);
  }
  100% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
}
.flipInY {
  backface-visibility: visible !important;
  animation-name: flipInY;
}
@keyframes flipOutX {
  0% {
    transform: perspective(400px) rotateX(0deg);
    opacity: 1;
  }
  100% {
    transform: perspective(400px) rotateX(90deg);
    opacity: 0;
  }
}
.flipOutX {
  animation-name: flipOutX;
  backface-visibility: visible !important;
}
@keyframes flipOutY {
  0% {
    transform: perspective(400px) rotateY(0deg);
    opacity: 1;
  }
  100% {
    transform: perspective(400px) rotateY(90deg);
    opacity: 0;
  }
}
.flipOutY {
  backface-visibility: visible !important;
  animation-name: flipOutY;
}
@keyframes lightSpeedIn {
  0% {
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
  60% {
    transform: translateX(-20%) skewX(30deg);
    opacity: 1;
  }
  80% {
    transform: translateX(0%) skewX(-15deg);
    opacity: 1;
  }
  100% {
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
}
.lightSpeedIn {
  animation-name: lightSpeedIn;
  animation-timing-function: ease-out;
}
@keyframes lightSpeedOut {
  0% {
    transform: translateX(0%) skewX(0deg);
    opacity: 1;
  }
  100% {
    transform: translateX(100%) skewX(-30deg);
    opacity: 0;
  }
}
.lightSpeedOut {
  animation-name: lightSpeedOut;
  animation-timing-function: ease-in;
}
@keyframes rotateIn {
  0% {
    transform-origin: center center;
    transform: rotate(-200deg);
    opacity: 0;
  }
  100% {
    transform-origin: center center;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateIn {
  animation-name: rotateIn;
}
@keyframes rotateInDownLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInDownLeft {
  animation-name: rotateInDownLeft;
}
@keyframes rotateInDownRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInDownRight {
  animation-name: rotateInDownRight;
}
@keyframes rotateInUpLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInUpLeft {
  animation-name: rotateInUpLeft;
}
@keyframes rotateInUpRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
}
.rotateInUpRight {
  animation-name: rotateInUpRight;
}
@keyframes rotateOut {
  0% {
    transform-origin: center center;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: center center;
    transform: rotate(200deg);
    opacity: 0;
  }
}
.rotateOut {
  animation-name: rotateOut;
}
@keyframes rotateOutDownLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
}
.rotateOutDownLeft {
  animation-name: rotateOutDownLeft;
}
@keyframes rotateOutDownRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
}
.rotateOutDownRight {
  animation-name: rotateOutDownRight;
}
@keyframes rotateOutUpLeft {
  0% {
    transform-origin: left bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: left bottom;
    transform: rotate(-90deg);
    opacity: 0;
  }
}
.rotateOutUpLeft {
  animation-name: rotateOutUpLeft;
}
@keyframes rotateOutUpRight {
  0% {
    transform-origin: right bottom;
    transform: rotate(0);
    opacity: 1;
  }
  100% {
    transform-origin: right bottom;
    transform: rotate(90deg);
    opacity: 0;
  }
}
.rotateOutUpRight {
  animation-name: rotateOutUpRight;
}
@keyframes slideInDown {
  0% {
    opacity: 0;
    transform: translateY(-2000px);
  }
  100% {
    transform: translateY(0);
  }
}
.slideInDown {
  animation-name: slideInDown;
}
@keyframes slideInLeft {
  0% {
    opacity: 0;
    transform: translateX(-2000px);
  }
  100% {
    transform: translateX(0);
  }
}
.slideInLeft {
  animation-name: slideInLeft;
}
@keyframes slideInRight {
  0% {
    opacity: 0;
    transform: translateX(2000px);
  }
  100% {
    transform: translateX(0);
  }
}
.slideInRight {
  animation-name: slideInRight;
}
@keyframes slideOutLeft {
  0% {
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(-2000px);
  }
}
.slideOutLeft {
  animation-name: slideOutLeft;
}
@keyframes slideOutRight {
  0% {
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    transform: translateX(2000px);
  }
}
.slideOutRight {
  animation-name: slideOutRight;
}
@keyframes slideOutUp {
  0% {
    transform: translateY(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-2000px);
  }
}
.slideOutUp {
  animation-name: slideOutUp;
}
@keyframes hinge {
  0% {
    transform: rotate(0);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  20%, 60% {
    transform: rotate(80deg);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  40% {
    transform: rotate(60deg);
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  80% {
    transform: rotate(60deg) translateY(0);
    opacity: 1;
    transform-origin: top left;
    animation-timing-function: ease-in-out;
  }
  100% {
    transform: translateY(700px);
    opacity: 0;
  }
}
.hinge {
  animation-name: hinge;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes rollIn {
  0% {
    opacity: 0;
    transform: translateX(-100%) rotate(-120deg);
  }
  100% {
    opacity: 1;
    transform: translateX(0px) rotate(0deg);
  }
}
.rollIn {
  animation-name: rollIn;
}

/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */
@keyframes rollOut {
  0% {
    opacity: 1;
    transform: translateX(0px) rotate(0deg);
  }
  100% {
    opacity: 0;
    transform: translateX(100%) rotate(120deg);
  }
}
.rollOut {
  animation-name: rollOut;
}

body.home main,
body.page-template-ads-v1 main {
  overflow-x: clip;
}
body.home .nowrap,
body.page-template-ads-v1 .nowrap {
  white-space: nowrap;
}

.value-props {
  background: #ffffff;
  padding: 148px 0 0;
}
.value-props .wrapper {
  display: flex;
  align-items: flex-start;
}
.value-props:before {
  content: "";
  position: absolute;
  top: 186px;
  left: 50.6%;
  width: 887px;
  height: 899px;
  background: url("img/motifs/arc-motif-right.svg") no-repeat center/contain;
  z-index: 0;
}
.value-props .value-props-intro {
  position: relative;
  z-index: 1;
  flex: 0 0 39.14%;
  max-width: 39.14%;
}
.value-props .value-props-intro h2 {
  margin: 0 0 50px;
  text-wrap: balance;
}
.value-props .value-props-photo {
  position: relative;
  z-index: 2;
  margin-bottom: -141px;
}
.value-props .value-props-photo img {
  display: block;
  width: 100%;
  height: 602px;
  -o-object-fit: cover;
     object-fit: cover;
}
.value-props .value-props-list {
  display: flow-root;
  position: relative;
  z-index: 1;
  flex: 0 0 49.3%;
  max-width: 49.3%;
  margin: 0 0 0 11.56%;
  padding: 0;
  list-style: none;
}
.value-props .value-prop {
  display: flex;
  align-items: flex-start;
  position: relative;
  --pin: calc(var(--header-bottom) + var(--admin-bar) + 30px);
  z-index: 1;
  margin: 0 0 50px;
}
.value-props .value-prop:nth-child(2) {
  --pin: calc(var(--header-bottom) + var(--admin-bar) + 115px);
  z-index: 2;
}
.value-props .value-prop:last-child {
  --pin: calc(var(--header-bottom) + var(--admin-bar) + 200px);
  z-index: 3;
  margin-bottom: 0;
}
.value-props .value-prop-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 0 0 75px;
  width: 75px;
  height: 75px;
  margin-right: 71px;
  border-radius: 50%;
  background: #a3bcd1;
  color: #ffffff;
  font-size: 28px;
}
.value-props .value-prop-body {
  flex: 1;
}
.value-props .value-prop-body h3 {
  margin: 0 0 27px;
}
.value-props .value-prop-body p {
  margin: 0 0 25px;
  max-width: 431px;
}
@media only screen and (max-width: 980px) {
  .value-props {
    padding: 90px 0;
  }
  .value-props:before {
    display: none;
  }
  .value-props .value-props-intro h2 {
    margin-bottom: 30px;
  }
  .value-props .value-props-photo {
    margin-bottom: 0;
  }
  .value-props .value-props-photo img {
    height: auto;
    aspect-ratio: 562/602;
  }
  .value-props .value-props-list {
    margin-left: 7%;
  }
  .value-props .value-prop {
    --pin: calc(var(--header-bottom) + var(--admin-bar) + 16px);
  }
  .value-props .value-prop:nth-child(2) {
    --pin: calc(var(--header-bottom) + var(--admin-bar) + 101px);
  }
  .value-props .value-prop:last-child {
    --pin: calc(var(--header-bottom) + var(--admin-bar) + 186px);
    margin-bottom: 0;
  }
  .value-props .value-prop-icon {
    flex-basis: 60px;
    width: 60px;
    height: 60px;
    margin-right: 24px;
    font-size: 22px;
  }
  .value-props .value-prop-body h3 {
    margin-bottom: 15px;
  }
  .value-props .value-prop-body p {
    margin-bottom: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .value-props {
    padding: 60px 0;
  }
  .value-props .wrapper {
    display: block;
  }
  .value-props .value-props-intro,
  .value-props .value-props-list {
    flex: none;
    max-width: 100%;
    margin: 0;
  }
  .value-props .value-props-photo {
    margin-bottom: 40px;
  }
  .value-props .value-props-photo img {
    aspect-ratio: 16/10;
    -o-object-position: center 20%;
       object-position: center 20%;
  }
  .value-props .value-prop,
  .value-props .value-prop:nth-child(2),
  .value-props .value-prop:last-child {
    --pin: 0px;
  }
  .value-props .value-prop {
    margin-bottom: 36px;
  }
  .value-props .value-prop-icon {
    flex-basis: 52px;
    width: 52px;
    height: 52px;
    margin-right: 20px;
    font-size: 20px;
  }
}
@media only screen and (max-width: 400px) {
  .value-props .value-prop-icon {
    flex-basis: 40px;
    width: 40px;
    height: 40px;
    margin-right: 14px;
    font-size: 16px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .value-props .value-prop,
  .value-props .value-prop:nth-child(2),
  .value-props .value-prop:last-child {
    position: relative;
    top: auto;
  }
}

.meet-the-doctor {
  background: #232f36;
  padding: 150px 0;
}
.meet-the-doctor .wrapper {
  display: flex;
  align-items: flex-start;
}
.meet-the-doctor h2,
.meet-the-doctor h3 {
  color: #ffffff;
}
.meet-the-doctor p {
  color: #ffffff;
}
.meet-the-doctor .meet-the-doctor-copy {
  flex: 0 0 49.3%;
  max-width: 49.3%;
  margin-top: 164px;
}
.meet-the-doctor .meet-the-doctor-copy h2 {
  margin: 0 0 70px;
  text-wrap: balance;
}
.meet-the-doctor .meet-the-doctor-copy h3 {
  margin: 0 0 22px;
}
.meet-the-doctor .meet-the-doctor-copy p {
  margin: 0 0 30px;
  max-width: 642px;
}
.meet-the-doctor .meet-the-doctor-media {
  position: relative;
  flex: 0 0 49.3%;
  max-width: 49.3%;
  margin-left: 1.4%;
}
.meet-the-doctor .meet-the-doctor-media img {
  display: block;
  width: 100%;
  height: 800px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (max-width: 980px) {
  .meet-the-doctor {
    padding: 90px 0;
  }
  .meet-the-doctor .wrapper {
    align-items: center;
  }
  .meet-the-doctor .meet-the-doctor-copy {
    margin-top: 0;
  }
  .meet-the-doctor .meet-the-doctor-copy h2 {
    margin-bottom: 30px;
  }
  .meet-the-doctor .meet-the-doctor-media {
    flex-basis: 44.7%;
    max-width: 44.7%;
    margin-left: 6%;
  }
  .meet-the-doctor .meet-the-doctor-media img {
    height: auto;
    aspect-ratio: 708/800;
  }
}
@media only screen and (max-width: 767px) {
  .meet-the-doctor {
    padding: 60px 0;
  }
  .meet-the-doctor .wrapper {
    flex-direction: column;
    align-items: stretch;
  }
  .meet-the-doctor .meet-the-doctor-copy,
  .meet-the-doctor .meet-the-doctor-media {
    flex: none;
    max-width: 100%;
    margin: 0;
  }
  .meet-the-doctor .meet-the-doctor-media {
    order: 1;
  }
  .meet-the-doctor .meet-the-doctor-media img {
    aspect-ratio: 708/800;
  }
  .meet-the-doctor .meet-the-doctor-copy {
    order: 2;
    margin-top: 36px;
  }
  .meet-the-doctor .meet-the-doctor-copy h2 {
    margin-bottom: 20px;
  }
}

.play-button {
  display: flex;
  justify-content: center;
  align-items: center;
  transition-property: all;
  transition-duration: 0.8s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0.1s;
  position: absolute;
  left: 50%;
  top: 86%;
  transform: translate(-50%, -50%);
  width: 125px;
  height: 125px;
  border-radius: 50%;
  background: #ffffff;
  color: #5a778a;
  font-size: 30px;
  z-index: 2;
}
.play-button:hover {
  background: #f0d6bc;
  color: #232f36;
}
@media only screen and (max-width: 920px) {
  .play-button {
    width: 90px;
    height: 90px;
    font-size: 22px;
  }
}
@media only screen and (max-width: 480px) {
  .play-button {
    width: 70px;
    height: 70px;
    font-size: 18px;
  }
}

.credentials {
  background: #ffffff;
  padding: 55px 0;
}
.credentials .credentials-list {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: 0;
  padding: 0;
  list-style: none;
  gap: 30px;
}
.credentials .credentials-list li {
  flex: 0 1 auto;
  min-width: 0;
}
.credentials .credentials-list img {
  display: block;
  width: auto;
  max-width: 100%;
  height: auto;
  max-height: 90px;
}
@media only screen and (max-width: 920px) {
  .credentials {
    padding: 40px 0;
  }
  .credentials .credentials-list {
    gap: 24px;
  }
  .credentials .credentials-list img {
    max-height: 64px;
  }
}
@media only screen and (max-width: 480px) {
  .credentials .credentials-list {
    flex-direction: column;
    gap: 30px;
  }
  .credentials .credentials-list img {
    max-height: 48px;
  }
}

.credentials.credentials-inline {
  background: none;
  padding: 0;
}
.credentials.credentials-inline ul.credentials-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, max-content));
  justify-content: center;
  align-items: center;
  gap: 30px 60px;
  margin: 0;
  padding: 0;
}
.credentials.credentials-inline ul.credentials-list li {
  margin: 0;
  padding: 0;
}
.credentials.credentials-inline ul.credentials-list li:before {
  content: none;
}
.credentials.credentials-inline ul.credentials-list img {
  max-height: 72px;
}
@media only screen and (max-width: 920px) {
  .credentials.credentials-inline {
    padding: 0;
  }
  .credentials.credentials-inline .credentials-list img {
    max-height: 56px;
  }
}

.treatments {
  background: #dae4ec;
  padding: 150px 0 56px;
}
.treatments .treatments-intro {
  max-width: 562px;
  margin: 0 auto 30px;
  text-align: center;
}
.treatments .treatments-intro h2 {
  margin: 0 0 15px;
}
.treatments .treatments-intro p {
  margin: 0;
}
.treatments .treatments-stack {
  display: flow-root;
}
@media only screen and (max-width: 980px) {
  .treatments {
    padding: 90px 0 40px;
  }
}
@media only screen and (max-width: 480px) {
  .treatments {
    padding: 60px 0 30px;
  }
}

.treatment-card {
  display: flex;
  align-items: center;
  position: relative;
  padding: 30px;
  background: #ffffff;
  box-shadow: 0 -12px 30px rgba(35, 47, 54, 0.07);
}
.treatment-card:nth-child(1) {
  --pin: calc(var(--header-bottom) + var(--admin-bar) + 30px);
  margin-bottom: 50px;
  z-index: 1;
}
.treatment-card:nth-child(2) {
  --pin: calc(var(--header-bottom) + var(--admin-bar) + 60px);
  margin-bottom: 50px;
  z-index: 2;
}
.treatment-card:nth-child(3) {
  --pin: calc(var(--header-bottom) + var(--admin-bar) + 90px);
  margin-bottom: 0;
  z-index: 3;
}
.treatment-card .treatment-card-photo {
  flex: 0 0 36%;
  max-width: 36%;
}
.treatment-card .treatment-card-photo img {
  display: block;
  width: 100%;
  height: 440px;
  -o-object-fit: cover;
     object-fit: cover;
}
.treatment-card .treatment-card-copy {
  flex: 0 0 31.3%;
  max-width: 31.3%;
  margin-left: 7.3%;
}
.treatment-card .treatment-card-copy h3 {
  margin: 0 0 22px;
}
.treatment-card .treatment-card-copy p {
  margin: 0;
}
.treatment-card .treatment-card-links {
  position: relative;
  flex: 1;
  min-width: 0;
  margin: 0 0 0 5.7%;
  padding: 0;
  list-style: none;
}
.treatment-card .treatment-card-links:before {
  content: "";
  position: absolute;
  left: -52px;
  top: 50%;
  transform: translateY(-50%);
  width: 2px;
  height: 300px;
  background: #c1c1c0;
}
.treatment-card .treatment-card-links li {
  margin: 0 0 32px;
  line-height: 1;
}
.treatment-card .treatment-card-links li:last-child {
  margin-bottom: 0;
}
.treatment-card.kids .treatment-card-copy p {
  max-width: 393px;
}
.treatment-card.teens .treatment-card-copy p, .treatment-card.adults .treatment-card-copy p {
  max-width: 349px;
}
.treatment-card.reverse .treatment-card-photo {
  order: 3;
  margin-left: 7.3%;
}
.treatment-card.reverse .treatment-card-copy {
  margin-left: 3.3%;
}
@media only screen and (max-width: 1380px) {
  .treatment-card .treatment-card-copy {
    flex-basis: 29.5%;
    max-width: 29.5%;
    margin-left: 5.5%;
  }
  .treatment-card .treatment-card-links {
    margin-left: 4.5%;
  }
  .treatment-card .treatment-card-links:before {
    left: -40px;
  }
  .treatment-card.reverse .treatment-card-copy {
    margin-left: 2.5%;
  }
}
@media only screen and (max-width: 1140px) {
  .treatment-card {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
    grid-template-rows: 1fr auto auto 1fr;
    -moz-column-gap: 40px;
         column-gap: 40px;
    padding: 24px;
  }
  .treatment-card:nth-child(1) {
    --pin: calc(var(--header-bottom) + var(--admin-bar) + 16px);
  }
  .treatment-card:nth-child(2) {
    --pin: calc(var(--header-bottom) + var(--admin-bar) + 31px);
  }
  .treatment-card:nth-child(3) {
    --pin: calc(var(--header-bottom) + var(--admin-bar) + 46px);
  }
  .treatment-card .treatment-card-photo,
  .treatment-card .treatment-card-copy,
  .treatment-card .treatment-card-links {
    max-width: 100%;
    margin: 0;
  }
  .treatment-card .treatment-card-photo {
    grid-column: 1;
    grid-row: 1/-1;
  }
  .treatment-card .treatment-card-photo img {
    height: 100%;
    min-height: 300px;
    -o-object-position: center 20%;
       object-position: center 20%;
  }
  .treatment-card .treatment-card-copy {
    grid-column: 2;
    grid-row: 2;
    margin-bottom: 24px;
  }
  .treatment-card .treatment-card-copy h3 {
    margin-bottom: 15px;
  }
  .treatment-card .treatment-card-links {
    grid-column: 2;
    grid-row: 3;
    display: flex;
    flex-direction: column;
    gap: 14px;
  }
  .treatment-card .treatment-card-links:before {
    display: none;
  }
  .treatment-card .treatment-card-links li {
    margin: 0;
  }
  .treatment-card.reverse {
    grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  }
  .treatment-card.reverse .treatment-card-photo {
    grid-column: 2;
    margin: 0;
  }
  .treatment-card.reverse .treatment-card-copy,
  .treatment-card.reverse .treatment-card-links {
    grid-column: 1;
    margin-left: 0;
  }
  .treatment-card.reverse .treatment-card-copy {
    margin-bottom: 24px;
  }
}
@media only screen and (max-width: 767px) {
  .treatment-card {
    display: block;
    padding: 20px 20px 40px;
  }
  .treatment-card .treatment-card-photo img {
    height: auto;
    min-height: 0;
    aspect-ratio: 16/10;
  }
  .treatment-card .treatment-card-copy, .treatment-card.reverse .treatment-card-copy {
    margin: 20px 0;
  }
  .treatment-card .treatment-card-links {
    flex-direction: column;
    gap: 16px;
  }
}
@media only screen and (max-width: 480px) {
  .treatment-card {
    margin-bottom: 30px;
  }
}

.before-afters {
  background: #dae4ec;
  padding: 108px 0 73px;
}
.before-afters .wrapper {
  display: flex;
  align-items: flex-start;
}
.before-afters .before-afters-copy {
  flex: 0 0 32%;
  max-width: 32%;
}
.before-afters .before-afters-copy h2 {
  margin: 0 0 15px;
}
.before-afters .before-afters-copy p {
  margin: 0 0 30px;
}
.before-afters .before-afters-controls {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px 29px;
}
.before-afters .before-afters-controls .btn-white {
  flex-shrink: 0;
}
@media only screen and (max-width: 480px) {
  .before-afters .before-afters-controls {
    flex-wrap: wrap;
    gap: 18px;
  }
  .before-afters .before-afters-controls .carousel-nav {
    width: 100%;
    justify-content: center;
  }
}
.before-afters .before-afters-media {
  flex: 1;
  min-width: 0;
}
.before-afters .before-afters-media .carousel-progress {
  margin-left: auto;
  margin-right: auto;
}
.before-afters .before-afters-media {
  margin-left: 8.77%;
}
.before-afters .before-afters-media.is-swapping .before-afters-panel img {
  opacity: 0;
}
.before-afters .before-afters-panel {
  touch-action: pan-y;
  display: flex;
  gap: 17px;
  padding: 15px 15px 20px;
  background: #232f36;
}
.before-afters .before-afters-panel figure {
  flex: 1;
  margin: 0;
}
.before-afters .before-afters-panel figure img {
  display: block;
  width: 100%;
  height: 222px;
  -o-object-fit: cover;
     object-fit: cover;
  transition: opacity 0.35s ease;
}
.before-afters .before-afters-panel figure figcaption {
  margin-top: 15px;
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-align: center;
  color: #ffffff;
}
@media only screen and (max-width: 1300px) {
  .before-afters .before-afters-copy {
    flex-basis: 38%;
    max-width: 38%;
  }
  .before-afters .before-afters-media {
    margin-left: 5%;
  }
}
@media only screen and (max-width: 980px) {
  .before-afters {
    padding: 60px 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 980px) {
  .before-afters .before-afters-controls {
    flex-wrap: nowrap;
    gap: 12px;
  }
  .before-afters .before-afters-controls .btn-white {
    padding-left: 26px;
    padding-right: 26px;
  }
  .before-afters .before-afters-controls .carousel-nav {
    gap: 8px;
  }
  .before-afters .before-afters-controls .carousel-arrow {
    width: 52px;
    height: 52px;
  }
}
@media only screen and (max-width: 980px) {
  .before-afters .wrapper {
    flex-direction: column;
  }
  .before-afters .before-afters-copy,
  .before-afters .before-afters-media {
    flex: none;
    max-width: 100%;
    margin: 0;
  }
  .before-afters .before-afters-media {
    order: -1;
    width: 100%;
    margin-bottom: 36px;
  }
  .before-afters .before-afters-panel {
    flex-direction: column;
  }
  .before-afters .before-afters-panel figure img {
    height: auto;
    aspect-ratio: 16/9;
  }
}
@media only screen and (min-width: 768px) and (max-width: 980px) {
  .before-afters .before-afters-media {
    max-width: 600px;
    margin: 0 auto 40px;
  }
}
@media only screen and (max-width: 480px) {
  .before-afters {
    padding: 40px 0;
  }
  .before-afters .before-afters-panel {
    gap: 10px;
    padding: 10px;
  }
  .before-afters .before-afters-panel figcaption {
    margin-top: 12px;
    font-size: 14px;
  }
}

.carousel-progress {
  position: relative;
  width: 400px;
  max-width: 100%;
  height: 2px;
  margin: 57px 0 0 auto;
  background: #ffffff;
}
.carousel-progress span {
  position: absolute;
  top: -1px;
  left: 0;
  width: 133px;
  height: 4px;
  background: #5a778a;
  transition: left 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}
@media only screen and (max-width: 980px) {
  .carousel-progress {
    margin: 30px auto 0;
  }
}

.testimonials {
  background: linear-gradient(to bottom, #dae4ec 0, #dae4ec 377px, #ffffff 377px, #ffffff 100%);
  padding: 77px 0 69px;
}
.testimonials .wrapper {
  display: flex;
  align-items: flex-start;
}
.testimonials .testimonials-media {
  position: relative;
  flex: 0 0 39.14%;
  max-width: 39.14%;
}
.testimonials .testimonials-media img {
  display: block;
  width: 100%;
  height: 740px;
  -o-object-fit: cover;
     object-fit: cover;
}
.testimonials .testimonials-copy {
  position: relative;
  flex: 1;
  margin: 182px 0 0 11.56%;
}
.testimonials .testimonials-copy h2 {
  margin: 0 0 80px;
}
.testimonials .testimonials-copy h3 {
  margin: 0 0 22px;
}
.testimonials .testimonials-copy p {
  margin: 0 0 30px;
  max-width: 494px;
}
.testimonials .testimonials-controls {
  display: flex;
  align-items: center;
  gap: 20px;
}
@media only screen and (max-width: 480px) {
  .testimonials .testimonials-controls {
    flex-wrap: wrap;
    gap: 18px;
  }
  .testimonials .testimonials-controls .carousel-nav {
    width: 100%;
    justify-content: center;
  }
}
.testimonials .testimonials-badge {
  position: relative;
  width: 302px;
  height: 302px;
  margin: -35px 0 0 auto;
}
@media only screen and (max-width: 1440px) {
  .testimonials .testimonials-badge {
    margin-top: 20px;
  }
}
.testimonials .testimonials-badge .badge-ring {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  animation: badge-spin 26s linear infinite;
}
.testimonials .testimonials-badge .badge-center {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 79.1%;
  height: auto;
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
@media only screen and (max-width: 980px) {
  .testimonials {
    background: #ffffff;
    padding: 60px 0;
  }
  .testimonials .wrapper {
    align-items: center;
  }
  .testimonials .testimonials-media img {
    height: auto;
    aspect-ratio: 562/740;
  }
  .testimonials .testimonials-copy {
    margin: 0 0 0 6%;
  }
  .testimonials .testimonials-copy h2 {
    margin-bottom: 30px;
  }
  .testimonials .testimonials-badge {
    width: 180px;
    height: 180px;
    margin: 30px 0 0;
  }
}
@media only screen and (max-width: 767px) {
  .testimonials {
    padding: 40px 0;
  }
  .testimonials .wrapper {
    display: block;
  }
  .testimonials .testimonials-media,
  .testimonials .testimonials-copy {
    flex: none;
    max-width: 100%;
    margin: 0;
  }
  .testimonials .testimonials-media img {
    aspect-ratio: 4/3;
    -o-object-position: center 25%;
       object-position: center 25%;
  }
  .testimonials .testimonials-copy {
    margin-top: 36px;
  }
  .testimonials .testimonials-badge {
    width: 150px;
    height: 150px;
  }
}

.reviews {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 65px;
  padding: 150px;
  background-color: #303a41;
  background-image: url("img/reviews-office-reception.jpg");
}
.reviews:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: rgba(35, 47, 54, 0.82);
  z-index: 1;
}
.reviews .reviews-card {
  position: relative;
  z-index: 1;
  order: 2;
  flex: 0 1 1146px;
  min-height: 756px;
  max-width: 100%;
  padding: 140px 90px 149px;
  background: #ffffff;
  text-align: center;
}
.reviews .reviews-card h2 {
  margin: 0 0 30px;
}
.reviews .reviews-card h3 {
  margin: 0 0 22px;
}
.reviews .reviews-card p {
  margin: 0 auto;
  max-width: 562px;
}
.reviews .reviews-stars {
  margin: 0 0 30px;
  color: #f0d6bc;
  font-size: 24px;
  letter-spacing: 9px;
}
.reviews .reviews-track {
  display: grid;
}
.reviews .reviews-slide {
  grid-area: 1/1;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.45s cubic-bezier(0.22, 1, 0.36, 1), visibility 0.45s;
}
.reviews .reviews-slide.is-active {
  visibility: visible;
  opacity: 1;
}
.reviews .reviews-author {
  margin: 30px 0 0;
  color: #5a778a;
  font-size: 16px;
  letter-spacing: 0.1em;
}
.reviews .carousel-progress {
  margin: 74px auto 0;
  background: #c1c1c0;
}
.reviews > .carousel-arrow {
  position: relative;
  z-index: 2;
  flex: 0 0 76px;
  background: #ffffff;
  color: #232f36;
}
.reviews > .carousel-arrow.prev {
  order: 1;
}
.reviews > .carousel-arrow.next {
  order: 3;
}
.reviews > .carousel-arrow:hover {
  background: #f0d6bc;
}
@media only screen and (max-width: 1400px) {
  .reviews {
    gap: 40px;
    padding: 120px 60px;
  }
}
@media only screen and (max-width: 1140px) {
  .reviews {
    gap: 24px;
    padding: 80px 30px;
  }
  .reviews .reviews-card {
    min-height: 0;
    padding: 60px 40px 40px;
  }
}
@media only screen and (max-width: 920px) {
  .reviews {
    gap: 0;
  }
  .reviews .reviews-card {
    flex: 0 0 100%;
  }
  .reviews > .carousel-arrow {
    display: none;
  }
  .reviews .carousel-progress {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 480px) {
  .reviews {
    padding: 50px 30px;
  }
  .reviews .reviews-card {
    padding: 40px 24px 30px;
  }
  .reviews .reviews-stars {
    font-size: 18px;
    letter-spacing: 6px;
  }
}
@media only screen and (max-width: 767px) {
  .reviews .reviews-author {
    padding-bottom: 10px;
  }
}

.steps {
  position: relative;
  background: #ffffff;
  padding: 127px 0 150px;
}
.steps:before {
  content: "";
  position: absolute;
  top: 0;
  left: -3px;
  width: 887px;
  height: 899px;
  background: url("img/motifs/arc-motif-left.svg") no-repeat center/contain;
  z-index: 0;
}
.steps .wrapper {
  display: flex;
  align-items: flex-start;
}
.steps h2 {
  position: relative;
  --pin: calc(var(--header-bottom) + var(--admin-bar) + 30px);
  z-index: 1;
  flex: 0 0 28.9%;
  max-width: 28.9%;
  height: 510px;
  text-wrap: balance;
  margin: 43px 0 0;
}
.steps .steps-stack {
  position: relative;
  z-index: 1;
  display: flow-root;
  flex: 1;
  margin: 39px 0 0 11.6%;
}
@media only screen and (max-width: 980px) {
  .steps {
    padding: 80px 0;
  }
  .steps:before {
    display: none;
  }
  .steps .wrapper {
    display: block;
  }
  .steps h2 {
    position: static;
    --pin: 0px;
    flex: none;
    max-width: 100%;
    height: auto;
    margin: 0 0 40px;
  }
  .steps .steps-stack {
    margin: 0;
  }
}
@media only screen and (max-width: 480px) {
  .steps {
    padding: 50px 0;
  }
}

.step-card {
  display: flex;
  align-items: center;
  position: relative;
  padding: 30px;
}
.step-card:nth-child(1) {
  --pin: calc(var(--header-bottom) + var(--admin-bar) + 30px);
  margin-bottom: 50px;
  background: #dae4ec;
  z-index: 1;
}
.step-card:nth-child(1) .step-card-copy h3,
.step-card:nth-child(1) .step-card-copy p {
  color: #232f36;
}
.step-card:nth-child(2) {
  --pin: calc(var(--header-bottom) + var(--admin-bar) + 60px);
  margin-bottom: 50px;
  background: #5a778a;
  z-index: 2;
}
.step-card:nth-child(3) {
  --pin: calc(var(--header-bottom) + var(--admin-bar) + 90px);
  margin-bottom: 0;
  background: #232f36;
  z-index: 3;
}
.step-card .step-card-photo {
  flex: 0 0 48.7%;
  max-width: 48.7%;
  height: 390px;
  overflow: hidden;
  background: #a3bcd1;
}
.step-card .step-card-photo img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.step-card .step-card-copy {
  flex: 1;
  min-width: 0;
  margin-left: 8.9%;
  padding-right: 40px;
}
.step-card .step-card-copy h3 {
  margin: 0 0 15px;
  color: #ffffff;
}
@media only screen and (min-width: 981px) {
  .step-card .step-card-copy h3 {
    font-size: clamp(18px, 3vw - 11px, 32px);
  }
}
.step-card .step-card-copy p {
  margin: 0;
  color: #ffffff;
}
@media only screen and (min-width: 981px) and (max-width: 1240px) {
  .step-card .step-card-photo {
    flex-basis: 40%;
    max-width: 40%;
  }
  .step-card .step-card-copy {
    margin-left: 5%;
    padding-right: 70px;
  }
  .step-card .step-card-copy h3 {
    font-size: 20px;
  }
}
.step-card .step-card-number {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 30px;
  right: 30px;
  width: 75px;
  height: 75px;
  border-radius: 50%;
  background: #f0d6bc;
  color: #232f36;
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  letter-spacing: 0.1em;
}
@media only screen and (max-width: 980px) {
  .step-card {
    padding: 24px;
  }
  .step-card:nth-child(1) {
    --pin: calc(var(--header-bottom) + var(--admin-bar) + 16px);
  }
  .step-card:nth-child(2) {
    --pin: calc(var(--header-bottom) + var(--admin-bar) + 31px);
  }
  .step-card:nth-child(3) {
    --pin: calc(var(--header-bottom) + var(--admin-bar) + 46px);
  }
  .step-card .step-card-photo {
    flex-basis: 44%;
    max-width: 44%;
    height: auto;
    aspect-ratio: 4/3;
  }
  .step-card .step-card-copy {
    margin-left: 32px;
    padding-right: 70px;
  }
  .step-card .step-card-copy h3 {
    font-size: clamp(18px, 1.2vw + 12px, 24px);
  }
  .step-card .step-card-number {
    top: 24px;
    right: 24px;
    width: 56px;
    height: 56px;
    font-size: 14px;
  }
}
@media only screen and (max-width: 767px) {
  .step-card {
    display: block;
    padding: 20px;
  }
  .step-card .step-card-photo {
    flex: none;
    max-width: 100%;
    aspect-ratio: 16/10;
  }
  .step-card .step-card-copy {
    margin: 20px 0 0;
    padding-right: 0;
  }
  .step-card .step-card-number {
    top: 32px;
    right: 32px;
    width: 48px;
    height: 48px;
    font-size: 13px;
  }
}

.social {
  background: #ffffff;
  padding: 150px 0 0;
}
@media only screen and (max-width: 980px) {
  .social {
    padding: 80px 0 0;
  }
}
@media only screen and (max-width: 480px) {
  .social {
    padding: 50px 0 0;
  }
}

.value-prop,
.treatment-card,
.step-card,
.steps .wrapper > h2 {
  scroll-margin-top: var(--pin, 0px);
}
.value-prop.is-pinned,
.treatment-card.is-pinned,
.step-card.is-pinned,
.steps .wrapper > h2.is-pinned {
  position: sticky;
  top: var(--pin);
}

@media only screen and (max-width: 980px) {
  body.home .treatments-intro,
  body.page-template-ads-v1 .treatments-intro {
    margin-left: 0;
    text-align: left;
  }
  body.home .value-props-intro h2,
  body.home .meet-the-doctor-copy h2,
  body.home .treatments-intro h2,
  body.home .before-afters-copy h2,
  body.home .testimonials-copy h2,
  body.home .reviews-card h2,
  body.home .steps .wrapper > h2,
  body.home .value-prop-body h3,
  body.home .treatment-card-copy h3,
  body.home .step-card-copy h3,
  body.page-template-ads-v1 .value-props-intro h2,
  body.page-template-ads-v1 .meet-the-doctor-copy h2,
  body.page-template-ads-v1 .treatments-intro h2,
  body.page-template-ads-v1 .before-afters-copy h2,
  body.page-template-ads-v1 .testimonials-copy h2,
  body.page-template-ads-v1 .reviews-card h2,
  body.page-template-ads-v1 .steps .wrapper > h2,
  body.page-template-ads-v1 .value-prop-body h3,
  body.page-template-ads-v1 .treatment-card-copy h3,
  body.page-template-ads-v1 .step-card-copy h3 {
    text-wrap: balance;
  }
  body.home .meet-the-doctor-copy p,
  body.home .treatments-intro p,
  body.home .before-afters-copy p,
  body.home .testimonials-copy p,
  body.home .reviews-slide p,
  body.home .value-prop-body p,
  body.home .step-card-copy p,
  body.home .treatment-card-copy p,
  body.page-template-ads-v1 .meet-the-doctor-copy p,
  body.page-template-ads-v1 .treatments-intro p,
  body.page-template-ads-v1 .before-afters-copy p,
  body.page-template-ads-v1 .testimonials-copy p,
  body.page-template-ads-v1 .reviews-slide p,
  body.page-template-ads-v1 .value-prop-body p,
  body.page-template-ads-v1 .step-card-copy p,
  body.page-template-ads-v1 .treatment-card-copy p {
    text-wrap: pretty;
  }
  body.home .reviews .carousel-progress,
  body.home .reviews > .carousel-arrow,
  body.page-template-ads-v1 .reviews .carousel-progress,
  body.page-template-ads-v1 .reviews > .carousel-arrow {
    display: none;
  }
  body.home .reviews-slide:not(.is-active),
  body.page-template-ads-v1 .reviews-slide:not(.is-active) {
    display: none;
  }
}
@media only screen and (max-width: 767px) {
  body.home .before-afters .carousel-nav,
  body.home .before-afters .carousel-progress,
  body.home .testimonials .carousel-nav,
  body.page-template-ads-v1 .before-afters .carousel-nav,
  body.page-template-ads-v1 .before-afters .carousel-progress,
  body.page-template-ads-v1 .testimonials .carousel-nav {
    display: none;
  }
}

body.page-template-default section.content {
  padding: 0;
}
@media screen and (min-width: 920px) {
  body.page-template-default section.content .sticky {
    position: sticky;
    position: -webkit-sticky;
    top: calc(var(--header-bottom) + var(--admin-bar) + 30px);
  }
}
body.page-template-default .section-padding {
  padding: 5em 0;
}
@media only screen and (max-width: 920px) {
  body.page-template-default .section-padding {
    padding: 32px 0;
  }
}
@media only screen and (max-width: 480px) {
  body.page-template-default .section-padding {
    padding: 24px 0;
  }
}
body.page-template-default .section-padding-top {
  padding: 5em 0 0;
}
@media only screen and (max-width: 920px) {
  body.page-template-default .section-padding-top {
    padding: 32px 0 0;
  }
}
@media only screen and (max-width: 480px) {
  body.page-template-default .section-padding-top {
    padding: 24px 0 0;
  }
}
body.page-template-default .section-padding-bottom {
  padding: 0 0 5em;
}
@media only screen and (max-width: 920px) {
  body.page-template-default .section-padding-bottom {
    padding: 0 0 32px;
  }
}
@media only screen and (max-width: 480px) {
  body.page-template-default .section-padding-bottom {
    padding: 0 0 24px;
  }
}

.default-hero {
  position: relative;
  z-index: 0;
  overflow: clip;
  padding: 90px 0 100px;
  background: #dae4ec;
}
.default-hero:before {
  content: "";
  position: absolute;
  bottom: -330px;
  left: -260px;
  z-index: -1;
  width: 620px;
  height: 628px;
  background: url("img/motifs/arc-motif-left.svg") no-repeat center/contain;
  transform: rotate(180deg);
  pointer-events: none;
}
.default-hero .wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
  text-align: center;
}
.default-hero .wrapper:before, .default-hero .wrapper:after {
  display: none;
}
.default-hero h1 {
  max-width: 980px;
  margin: 0;
  text-wrap: balance;
  color: #232f36;
}
.default-hero .default-hero-badge {
  position: relative;
  flex: 0 0 auto;
  width: 220px;
  height: 220px;
}
.default-hero .default-hero-badge .badge-ring {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  animation: badge-spin 26s linear infinite;
}
.default-hero .default-hero-badge .badge-center {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 79.1%;
  height: auto;
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
@media only screen and (max-width: 980px) {
  .default-hero {
    padding: 70px 0 80px;
  }
  .default-hero .default-hero-badge {
    width: 170px;
    height: 170px;
  }
}
@media only screen and (max-width: 920px) {
  .default-hero {
    padding: 50px 0 56px;
  }
  .default-hero:before {
    bottom: -230px;
    left: -170px;
    width: 400px;
    height: 405px;
  }
  .default-hero .wrapper {
    gap: 22px;
  }
  .default-hero .default-hero-badge {
    width: 120px;
    height: 120px;
  }
}
@media only screen and (max-width: 480px) {
  .default-hero {
    padding: 36px 0 40px;
  }
  .default-hero .wrapper {
    gap: 18px;
  }
  .default-hero .default-hero-badge {
    width: 96px;
    height: 96px;
  }
}

.fl-rich-text p.eyebrow {
  margin: 0 0 18px;
  font-size: 14px;
  line-height: 1.3;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #5a778a;
}

.fl-rich-text p.lrg {
  font-size: 20px;
  line-height: 1.65;
}
@media only screen and (max-width: 480px) {
  .fl-rich-text p.lrg {
    font-size: 18px;
  }
}

.fl-builder-content :is(.fl-rich-text, .fl-accordion-content, .fl-html) :is(p, li) a:not([class*=btn]):not(.fl-button),
.entry-content :is(p, li) a:not([class*=btn]) {
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}

.fl-row blockquote {
  margin: 0;
  padding: 34px 36px;
  border-radius: 0 16px 16px 0;
  background: #dae4ec;
}
@media only screen and (max-width: 480px) {
  .fl-row blockquote {
    padding: 24px 20px;
  }
}

.fl-builder-content .btn-light:before {
  background: #232f36;
}
.fl-builder-content .btn-light:hover, .fl-builder-content .btn-light.is-wipe-in, .fl-builder-content .btn-light.is-filled {
  color: #ffffff;
}

.intro-bg {
  --card-bg: #dae4ec;
}
.intro-bg h1,
.intro-bg h2,
.intro-bg h4,
.intro-bg h5,
.intro-bg h6 {
  color: #232f36;
}
.intro-bg h3 {
  color: #5a778a;
}
.intro-bg p,
.intro-bg li {
  color: #232f36;
}
.intro-bg p.eyebrow {
  margin: 0 0 18px;
  font-size: 14px;
  line-height: 1.3;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #5a778a;
}
.intro-bg p.lrg {
  font-size: 20px;
  line-height: 1.65;
}
@media only screen and (max-width: 480px) {
  .intro-bg p.lrg {
    font-size: 18px;
  }
}
.intro-bg .fl-rich-text a:not([class*=btn]) {
  color: #0e5a8d;
  font-weight: 600;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}
.intro-bg .fl-rich-text a:not([class*=btn]):hover {
  color: #232f36;
}
.intro-bg .fl-rich-text ul {
  margin: 0 0 1em;
  padding: 0;
  list-style: none;
}
.intro-bg .fl-rich-text ul li {
  position: relative;
  margin: 0 0 8px;
  padding-left: 28px;
}
.intro-bg .fl-rich-text ul li:before {
  content: "";
  position: absolute;
  top: calc(var(--list-lh, 1.6em) / 2 - 4px);
  left: 2px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #5a778a;
}
.intro-bg .btn-light:before {
  background: #232f36;
}
.intro-bg .btn-light:hover, .intro-bg .btn-light.is-wipe-in, .intro-bg .btn-light.is-filled {
  color: #ffffff;
}
.fl-builder-content .intro-bg .fl-button:is(a, button) {
  border-radius: 38px;
  background-clip: padding-box;
  transition-property: color;
  transition-duration: 0.45s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0s;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 76px;
  padding: 0 50px;
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
}
@media only screen and (max-width: 920px) {
  .fl-builder-content .intro-bg .fl-button:is(a, button) {
    height: 64px;
    padding: 0 40px;
  }
}
@media only screen and (max-width: 480px) {
  .fl-builder-content .intro-bg .fl-button:is(a, button) {
    height: 56px;
    font-size: 14px;
    padding: 0 32px;
  }
}
.fl-builder-content .intro-bg .fl-button:is(a, button) {
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.fl-builder-content .intro-bg .fl-button:is(a, button):before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #232f36;
  opacity: 0;
  transition: opacity 0.35s ease;
  z-index: -1;
}
.fl-builder-content .intro-bg .fl-button:is(a, button):hover {
  color: #ffffff;
}
.fl-builder-content .intro-bg .fl-button:is(a, button):hover:before {
  opacity: 1;
}
.fl-builder-content .intro-bg .fl-button:is(a, button)[data-wipe]:before {
  transition: none;
}
.fl-builder-content .intro-bg .fl-button:is(a, button)[data-wipe]:hover:before {
  opacity: 0;
}
.fl-builder-content .intro-bg .fl-button:is(a, button)[data-wipe].is-wipe-in, .fl-builder-content .intro-bg .fl-button:is(a, button)[data-wipe].is-filled {
  color: #ffffff;
}
.fl-builder-content .intro-bg .fl-button:is(a, button)[data-wipe].is-wipe-in:before {
  animation: btn-fill-in 0.35s ease forwards;
}
.fl-builder-content .intro-bg .fl-button:is(a, button)[data-wipe].is-filled:before {
  opacity: 1;
}
.fl-builder-content .intro-bg .fl-button:is(a, button)[data-wipe].is-wipe-out:before {
  animation: btn-fill-out 0.35s ease forwards;
}
.fl-builder-content .intro-bg .fl-button:is(a, button) {
  border: 0;
  background: #dae4ec;
  color: #232f36;
}
.fl-builder-content .intro-bg .fl-button:is(a, button) * {
  color: inherit;
}
.intro-bg blockquote {
  margin: 0;
  padding: 34px 36px;
  border-left: 3px solid #f0d6bc;
  border-radius: 0 16px 16px 0;
  background: #dae4ec;
}
@media only screen and (max-width: 480px) {
  .intro-bg blockquote {
    padding: 24px 20px;
  }
}
.intro-bg blockquote:after {
  display: none;
}
.intro-bg blockquote .stars {
  margin: 0 0 16px;
}
.intro-bg blockquote .stars i {
  color: #a9732c;
}
.intro-bg blockquote p.lrg {
  margin: 0 0 12px;
  font-family: "ivypresto-display", serif;
  font-size: 26px;
  line-height: 1.3;
  color: #232f36;
}
@media only screen and (max-width: 480px) {
  .intro-bg blockquote p.lrg {
    font-size: 21px;
  }
}
.intro-bg blockquote p:last-of-type {
  margin-bottom: 18px;
}
.intro-bg blockquote .name {
  color: #5a778a;
}
.fl-builder-content .intro-bg .fl-accordion-item {
  margin: 0 0 12px;
  border: 0;
  background: #dae4ec;
}
.fl-builder-content .intro-bg .fl-accordion-item .fl-accordion-button {
  align-items: center;
  padding: 22px 28px;
}
.fl-builder-content .intro-bg .fl-accordion-item .fl-accordion-button-label {
  font-family: "proxima-nova", sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0;
  text-transform: none;
  color: #232f36;
}
.fl-builder-content .intro-bg .fl-accordion-item .fl-accordion-button-icon {
  display: flex;
  flex: 0 0 36px;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #ffffff;
  color: #232f36;
  font-size: 13px;
  opacity: 1;
}
.fl-builder-content .intro-bg .fl-accordion-item .fl-accordion-button-icon i {
  margin: 0;
  font-size: 13px;
  color: inherit;
}
.fl-builder-content .intro-bg .fl-accordion-item .fl-accordion-content {
  padding: 0 28px 24px;
}
.fl-builder-content .intro-bg .fl-accordion-item .fl-accordion-content p:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 480px) {
  .fl-builder-content .intro-bg .fl-accordion-item .fl-accordion-button {
    padding: 18px 20px;
  }
  .fl-builder-content .intro-bg .fl-accordion-item .fl-accordion-button-label {
    font-size: 16px;
  }
  .fl-builder-content .intro-bg .fl-accordion-item .fl-accordion-content {
    padding: 0 20px 20px;
  }
}
.intro-bg {
  position: relative;
  z-index: 0;
  overflow: clip;
  background: #ffffff;
}
.intro-bg:before {
  content: "";
  position: absolute;
  top: 50%;
  right: -220px;
  z-index: -1;
  width: 700px;
  height: 709px;
  background: url("img/motifs/arc-motif-right.svg") no-repeat center/contain;
  transform: translateY(-50%);
  pointer-events: none;
}
@media only screen and (max-width: 920px) {
  .intro-bg:before {
    top: auto;
    right: -180px;
    bottom: -200px;
    width: 420px;
    height: 426px;
    transform: none;
  }
}

.light-bg {
  --card-bg: #ffffff;
}
.light-bg h1,
.light-bg h2,
.light-bg h4,
.light-bg h5,
.light-bg h6 {
  color: #232f36;
}
.light-bg h3 {
  color: #43535c;
}
.light-bg p,
.light-bg li {
  color: #232f36;
}
.light-bg p.eyebrow {
  margin: 0 0 18px;
  font-size: 14px;
  line-height: 1.3;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #43535c;
}
.light-bg p.lrg {
  font-size: 20px;
  line-height: 1.65;
}
@media only screen and (max-width: 480px) {
  .light-bg p.lrg {
    font-size: 18px;
  }
}
.light-bg .fl-rich-text a:not([class*=btn]) {
  color: #0e5a8d;
  font-weight: 600;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}
.light-bg .fl-rich-text a:not([class*=btn]):hover {
  color: #232f36;
}
.light-bg .fl-rich-text ul {
  margin: 0 0 1em;
  padding: 0;
  list-style: none;
}
.light-bg .fl-rich-text ul li {
  position: relative;
  margin: 0 0 8px;
  padding-left: 28px;
}
.light-bg .fl-rich-text ul li:before {
  content: "";
  position: absolute;
  top: calc(var(--list-lh, 1.6em) / 2 - 4px);
  left: 2px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #0e5a8d;
}
.light-bg .btn-light:before {
  background: #232f36;
}
.light-bg .btn-light:hover, .light-bg .btn-light.is-wipe-in, .light-bg .btn-light.is-filled {
  color: #ffffff;
}
.fl-builder-content .light-bg .fl-button:is(a, button) {
  border-radius: 38px;
  background-clip: padding-box;
  transition-property: color;
  transition-duration: 0.45s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0s;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 76px;
  padding: 0 50px;
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
}
@media only screen and (max-width: 920px) {
  .fl-builder-content .light-bg .fl-button:is(a, button) {
    height: 64px;
    padding: 0 40px;
  }
}
@media only screen and (max-width: 480px) {
  .fl-builder-content .light-bg .fl-button:is(a, button) {
    height: 56px;
    font-size: 14px;
    padding: 0 32px;
  }
}
.fl-builder-content .light-bg .fl-button:is(a, button) {
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.fl-builder-content .light-bg .fl-button:is(a, button):before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #232f36;
  opacity: 0;
  transition: opacity 0.35s ease;
  z-index: -1;
}
.fl-builder-content .light-bg .fl-button:is(a, button):hover {
  color: #ffffff;
}
.fl-builder-content .light-bg .fl-button:is(a, button):hover:before {
  opacity: 1;
}
.fl-builder-content .light-bg .fl-button:is(a, button)[data-wipe]:before {
  transition: none;
}
.fl-builder-content .light-bg .fl-button:is(a, button)[data-wipe]:hover:before {
  opacity: 0;
}
.fl-builder-content .light-bg .fl-button:is(a, button)[data-wipe].is-wipe-in, .fl-builder-content .light-bg .fl-button:is(a, button)[data-wipe].is-filled {
  color: #ffffff;
}
.fl-builder-content .light-bg .fl-button:is(a, button)[data-wipe].is-wipe-in:before {
  animation: btn-fill-in 0.35s ease forwards;
}
.fl-builder-content .light-bg .fl-button:is(a, button)[data-wipe].is-filled:before {
  opacity: 1;
}
.fl-builder-content .light-bg .fl-button:is(a, button)[data-wipe].is-wipe-out:before {
  animation: btn-fill-out 0.35s ease forwards;
}
.fl-builder-content .light-bg .fl-button:is(a, button) {
  border: 0;
  background: #ffffff;
  color: #232f36;
}
.fl-builder-content .light-bg .fl-button:is(a, button) * {
  color: inherit;
}
.light-bg blockquote {
  margin: 0;
  padding: 34px 36px;
  border-left: 3px solid #f0d6bc;
  border-radius: 0 16px 16px 0;
  background: #ffffff;
}
@media only screen and (max-width: 480px) {
  .light-bg blockquote {
    padding: 24px 20px;
  }
}
.light-bg blockquote:after {
  display: none;
}
.light-bg blockquote .stars {
  margin: 0 0 16px;
}
.light-bg blockquote .stars i {
  color: #a9732c;
}
.light-bg blockquote p.lrg {
  margin: 0 0 12px;
  font-family: "ivypresto-display", serif;
  font-size: 26px;
  line-height: 1.3;
  color: #232f36;
}
@media only screen and (max-width: 480px) {
  .light-bg blockquote p.lrg {
    font-size: 21px;
  }
}
.light-bg blockquote p:last-of-type {
  margin-bottom: 18px;
}
.light-bg blockquote .name {
  color: #5a778a;
}
.fl-builder-content .light-bg .fl-accordion-item {
  margin: 0 0 12px;
  border: 0;
  background: #ffffff;
}
.fl-builder-content .light-bg .fl-accordion-item .fl-accordion-button {
  align-items: center;
  padding: 22px 28px;
}
.fl-builder-content .light-bg .fl-accordion-item .fl-accordion-button-label {
  font-family: "proxima-nova", sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0;
  text-transform: none;
  color: #232f36;
}
.fl-builder-content .light-bg .fl-accordion-item .fl-accordion-button-icon {
  display: flex;
  flex: 0 0 36px;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #dae4ec;
  color: #232f36;
  font-size: 13px;
  opacity: 1;
}
.fl-builder-content .light-bg .fl-accordion-item .fl-accordion-button-icon i {
  margin: 0;
  font-size: 13px;
  color: inherit;
}
.fl-builder-content .light-bg .fl-accordion-item .fl-accordion-content {
  padding: 0 28px 24px;
}
.fl-builder-content .light-bg .fl-accordion-item .fl-accordion-content p:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 480px) {
  .fl-builder-content .light-bg .fl-accordion-item .fl-accordion-button {
    padding: 18px 20px;
  }
  .fl-builder-content .light-bg .fl-accordion-item .fl-accordion-button-label {
    font-size: 16px;
  }
  .fl-builder-content .light-bg .fl-accordion-item .fl-accordion-content {
    padding: 0 20px 20px;
  }
}
.light-bg {
  background: #dae4ec;
}

.dark-bg {
  --card-bg: rgba(255, 255, 255, 0.06);
}
.dark-bg h1,
.dark-bg h2,
.dark-bg h4,
.dark-bg h5,
.dark-bg h6 {
  color: #ffffff;
}
.dark-bg h3 {
  color: #a3bcd1;
}
.dark-bg p,
.dark-bg li {
  color: #ffffff;
}
.dark-bg p.eyebrow {
  margin: 0 0 18px;
  font-size: 14px;
  line-height: 1.3;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #f0d6bc;
}
.dark-bg p.lrg {
  font-size: 20px;
  line-height: 1.65;
}
@media only screen and (max-width: 480px) {
  .dark-bg p.lrg {
    font-size: 18px;
  }
}
.dark-bg .fl-rich-text a:not([class*=btn]) {
  color: #f0d6bc;
  font-weight: 600;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}
.dark-bg .fl-rich-text a:not([class*=btn]):hover {
  color: #ffffff;
}
.dark-bg .fl-rich-text ul {
  margin: 0 0 1em;
  padding: 0;
  list-style: none;
}
.dark-bg .fl-rich-text ul li {
  position: relative;
  margin: 0 0 8px;
  padding-left: 28px;
}
.dark-bg .fl-rich-text ul li:before {
  content: "";
  position: absolute;
  top: calc(var(--list-lh, 1.6em) / 2 - 4px);
  left: 2px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #f0d6bc;
}
.dark-bg .btn-light:before {
  background: #ffffff;
}
.dark-bg .btn-light:hover, .dark-bg .btn-light.is-wipe-in, .dark-bg .btn-light.is-filled {
  color: #232f36;
}
.fl-builder-content .dark-bg .fl-button:is(a, button) {
  border-radius: 38px;
  background-clip: padding-box;
  transition-property: color;
  transition-duration: 0.45s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0s;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 76px;
  padding: 0 50px;
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
}
@media only screen and (max-width: 920px) {
  .fl-builder-content .dark-bg .fl-button:is(a, button) {
    height: 64px;
    padding: 0 40px;
  }
}
@media only screen and (max-width: 480px) {
  .fl-builder-content .dark-bg .fl-button:is(a, button) {
    height: 56px;
    font-size: 14px;
    padding: 0 32px;
  }
}
.fl-builder-content .dark-bg .fl-button:is(a, button) {
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.fl-builder-content .dark-bg .fl-button:is(a, button):before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #ffffff;
  opacity: 0;
  transition: opacity 0.35s ease;
  z-index: -1;
}
.fl-builder-content .dark-bg .fl-button:is(a, button):hover {
  color: #232f36;
}
.fl-builder-content .dark-bg .fl-button:is(a, button):hover:before {
  opacity: 1;
}
.fl-builder-content .dark-bg .fl-button:is(a, button)[data-wipe]:before {
  transition: none;
}
.fl-builder-content .dark-bg .fl-button:is(a, button)[data-wipe]:hover:before {
  opacity: 0;
}
.fl-builder-content .dark-bg .fl-button:is(a, button)[data-wipe].is-wipe-in, .fl-builder-content .dark-bg .fl-button:is(a, button)[data-wipe].is-filled {
  color: #232f36;
}
.fl-builder-content .dark-bg .fl-button:is(a, button)[data-wipe].is-wipe-in:before {
  animation: btn-fill-in 0.35s ease forwards;
}
.fl-builder-content .dark-bg .fl-button:is(a, button)[data-wipe].is-filled:before {
  opacity: 1;
}
.fl-builder-content .dark-bg .fl-button:is(a, button)[data-wipe].is-wipe-out:before {
  animation: btn-fill-out 0.35s ease forwards;
}
.fl-builder-content .dark-bg .fl-button:is(a, button) {
  border: 0;
  background: #dae4ec;
  color: #232f36;
}
.fl-builder-content .dark-bg .fl-button:is(a, button) * {
  color: inherit;
}
.dark-bg blockquote {
  margin: 0;
  padding: 34px 36px;
  border-left: 3px solid #f0d6bc;
  border-radius: 0 16px 16px 0;
  background: rgba(255, 255, 255, 0.06);
}
@media only screen and (max-width: 480px) {
  .dark-bg blockquote {
    padding: 24px 20px;
  }
}
.dark-bg blockquote:after {
  display: none;
}
.dark-bg blockquote .stars {
  margin: 0 0 16px;
}
.dark-bg blockquote .stars i {
  color: #f0d6bc;
}
.dark-bg blockquote p.lrg {
  margin: 0 0 12px;
  font-family: "ivypresto-display", serif;
  font-size: 26px;
  line-height: 1.3;
  color: #ffffff;
}
@media only screen and (max-width: 480px) {
  .dark-bg blockquote p.lrg {
    font-size: 21px;
  }
}
.dark-bg blockquote p:last-of-type {
  margin-bottom: 18px;
}
.dark-bg blockquote .name {
  color: rgba(255, 255, 255, 0.75);
}
.fl-builder-content .dark-bg .fl-accordion-item {
  margin: 0 0 12px;
  border: 0;
  background: rgba(255, 255, 255, 0.06);
}
.fl-builder-content .dark-bg .fl-accordion-item .fl-accordion-button {
  align-items: center;
  padding: 22px 28px;
}
.fl-builder-content .dark-bg .fl-accordion-item .fl-accordion-button-label {
  font-family: "proxima-nova", sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0;
  text-transform: none;
  color: #ffffff;
}
.fl-builder-content .dark-bg .fl-accordion-item .fl-accordion-button-icon {
  display: flex;
  flex: 0 0 36px;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #f0d6bc;
  color: #232f36;
  font-size: 13px;
  opacity: 1;
}
.fl-builder-content .dark-bg .fl-accordion-item .fl-accordion-button-icon i {
  margin: 0;
  font-size: 13px;
  color: inherit;
}
.fl-builder-content .dark-bg .fl-accordion-item .fl-accordion-content {
  padding: 0 28px 24px;
}
.fl-builder-content .dark-bg .fl-accordion-item .fl-accordion-content p:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 480px) {
  .fl-builder-content .dark-bg .fl-accordion-item .fl-accordion-button {
    padding: 18px 20px;
  }
  .fl-builder-content .dark-bg .fl-accordion-item .fl-accordion-button-label {
    font-size: 16px;
  }
  .fl-builder-content .dark-bg .fl-accordion-item .fl-accordion-content {
    padding: 0 20px 20px;
  }
}
.dark-bg {
  background: #232f36;
}

.cta-bg {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: relative;
  z-index: 0;
  background-color: #303a41;
  background-image: url("img/reviews-office-reception.jpg");
}
.cta-bg:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: rgba(35, 47, 54, 0.9);
  z-index: 1;
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
}
.cta-bg.fl-row:before {
  display: block;
}
.cta-bg .btn-light:before {
  background: #ffffff;
}
.cta-bg .btn-light:hover, .cta-bg .btn-light.is-wipe-in, .cta-bg .btn-light.is-filled {
  color: #232f36;
}
.cta-bg .sticky-row {
  position: relative;
  z-index: 2;
  align-items: flex-start;
  flex-wrap: nowrap;
  margin: 0;
}
.cta-bg .sticky-col {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: sticky;
  top: calc(var(--header-bottom) + var(--admin-bar) + 30px);
  flex: 1 1 50%;
  height: calc(100vh - var(--header-bottom) - var(--admin-bar) - 60px);
  min-height: 420px;
  max-height: 760px;
  background-color: #5a778a;
}
.cta-bg .padded-col {
  flex: 1 1 50%;
  min-width: 0;
  padding: 0 0 0 30px;
}
.cta-bg .blocks-container {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.cta-bg a.cta-block {
  position: relative;
  z-index: 0;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  height: 520px;
  padding: 30px 32px;
  overflow: hidden;
  background: #43535c;
  text-decoration: none;
}
.cta-bg a.cta-block .service-bg {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: absolute;
  inset: 0;
  z-index: -2;
  transition: transform 0.9s cubic-bezier(0.22, 1, 0.36, 1);
}
.cta-bg a.cta-block .service-bg[style*=DSC06419] {
  background-size: 128% auto !important;
  background-position: left top !important;
}
.cta-bg a.cta-block .service-bg[style*=DSC05512] {
  background-size: cover !important;
  background-position: 57% top !important;
}
.cta-bg a.cta-block .service-bg[style*=DSC06615] {
  background-size: auto 125% !important;
  background-position: center 15% !important;
}
.cta-bg a.cta-block:after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(to top, rgba(35, 47, 54, 0.9) 0%, rgba(35, 47, 54, 0.35) 55%, rgba(35, 47, 54, 0.08) 100%);
}
.cta-bg a.cta-block:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  width: 0;
  height: 4px;
  background: #f0d6bc;
  transition: width 0.6s cubic-bezier(0.22, 1, 0.36, 1);
}
.cta-bg a.cta-block h3 {
  margin: 0;
  font-size: 26px;
  line-height: 1.2;
  text-align: left;
  color: #ffffff;
}
.cta-bg a.cta-block i {
  display: flex;
  flex: 0 0 52px;
  align-items: center;
  justify-content: center;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: #f0d6bc;
  color: #232f36;
  font-size: 16px;
  transition: background-color 0.45s ease, transform 0.55s cubic-bezier(0.34, 1.56, 0.64, 1);
}
.cta-bg a.cta-block:hover .service-bg, .cta-bg a.cta-block:focus-visible .service-bg {
  transform: scale(1.06);
}
.cta-bg a.cta-block:hover:before, .cta-bg a.cta-block:focus-visible:before {
  width: 100%;
}
.cta-bg a.cta-block:hover i, .cta-bg a.cta-block:focus-visible i {
  background: #ffffff;
  transform: translateX(6px);
}
.cta-bg a.cta-block:focus-visible {
  outline: 2px solid #0e5a8d;
  outline-offset: 3px;
}
@media only screen and (max-width: 920px) {
  .cta-bg:before {
    background: rgba(35, 47, 54, 0.95);
  }
  .cta-bg .padded-col {
    flex-basis: 100%;
    max-width: 100%;
    padding: 0;
  }
  .cta-bg .blocks-container {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .cta-bg a.cta-block {
    height: 440px;
    padding: 24px;
  }
  .cta-bg a.cta-block:last-child:nth-child(odd) {
    grid-column: 1/-1;
  }
  .cta-bg a.cta-block h3 {
    font-size: 22px;
  }
}
@media only screen and (max-width: 480px) {
  .cta-bg a.cta-block {
    height: auto;
    aspect-ratio: 3/2;
    padding: 20px;
  }
  .cta-bg a.cta-block h3 {
    font-size: 20px;
  }
  .cta-bg a.cta-block i {
    flex-basis: 44px;
    width: 44px;
    height: 44px;
    font-size: 14px;
  }
}

.cta-bg.cta-bg-2 {
  background-image: url("/wp-content/uploads/2026/09/DSC06603-1536x1024.jpg");
}

.cta-bg.cta-bg-3 {
  background-image: url("/wp-content/uploads/2026/09/DSC06583-1536x1024.jpg");
}

.cta-bg.cta-bg-4 {
  background-image: url("/wp-content/uploads/2026/09/DSC06618-1536x1024.jpg");
}

.split-bg {
  --card-bg: #dae4ec;
}
.split-bg h1,
.split-bg h2,
.split-bg h4,
.split-bg h5,
.split-bg h6 {
  color: #232f36;
}
.split-bg h3 {
  color: #5a778a;
}
.split-bg p,
.split-bg li {
  color: #232f36;
}
.split-bg p.eyebrow {
  margin: 0 0 18px;
  font-size: 14px;
  line-height: 1.3;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #5a778a;
}
.split-bg p.lrg {
  font-size: 20px;
  line-height: 1.65;
}
@media only screen and (max-width: 480px) {
  .split-bg p.lrg {
    font-size: 18px;
  }
}
.split-bg .fl-rich-text a:not([class*=btn]) {
  color: #0e5a8d;
  font-weight: 600;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}
.split-bg .fl-rich-text a:not([class*=btn]):hover {
  color: #232f36;
}
.split-bg .fl-rich-text ul {
  margin: 0 0 1em;
  padding: 0;
  list-style: none;
}
.split-bg .fl-rich-text ul li {
  position: relative;
  margin: 0 0 8px;
  padding-left: 28px;
}
.split-bg .fl-rich-text ul li:before {
  content: "";
  position: absolute;
  top: calc(var(--list-lh, 1.6em) / 2 - 4px);
  left: 2px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #5a778a;
}
.split-bg .btn-light:before {
  background: #232f36;
}
.split-bg .btn-light:hover, .split-bg .btn-light.is-wipe-in, .split-bg .btn-light.is-filled {
  color: #ffffff;
}
.fl-builder-content .split-bg .fl-button:is(a, button) {
  border-radius: 38px;
  background-clip: padding-box;
  transition-property: color;
  transition-duration: 0.45s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0s;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 76px;
  padding: 0 50px;
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
}
@media only screen and (max-width: 920px) {
  .fl-builder-content .split-bg .fl-button:is(a, button) {
    height: 64px;
    padding: 0 40px;
  }
}
@media only screen and (max-width: 480px) {
  .fl-builder-content .split-bg .fl-button:is(a, button) {
    height: 56px;
    font-size: 14px;
    padding: 0 32px;
  }
}
.fl-builder-content .split-bg .fl-button:is(a, button) {
  position: relative;
  z-index: 0;
  overflow: hidden;
}
.fl-builder-content .split-bg .fl-button:is(a, button):before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #232f36;
  opacity: 0;
  transition: opacity 0.35s ease;
  z-index: -1;
}
.fl-builder-content .split-bg .fl-button:is(a, button):hover {
  color: #ffffff;
}
.fl-builder-content .split-bg .fl-button:is(a, button):hover:before {
  opacity: 1;
}
.fl-builder-content .split-bg .fl-button:is(a, button)[data-wipe]:before {
  transition: none;
}
.fl-builder-content .split-bg .fl-button:is(a, button)[data-wipe]:hover:before {
  opacity: 0;
}
.fl-builder-content .split-bg .fl-button:is(a, button)[data-wipe].is-wipe-in, .fl-builder-content .split-bg .fl-button:is(a, button)[data-wipe].is-filled {
  color: #ffffff;
}
.fl-builder-content .split-bg .fl-button:is(a, button)[data-wipe].is-wipe-in:before {
  animation: btn-fill-in 0.35s ease forwards;
}
.fl-builder-content .split-bg .fl-button:is(a, button)[data-wipe].is-filled:before {
  opacity: 1;
}
.fl-builder-content .split-bg .fl-button:is(a, button)[data-wipe].is-wipe-out:before {
  animation: btn-fill-out 0.35s ease forwards;
}
.fl-builder-content .split-bg .fl-button:is(a, button) {
  border: 0;
  background: #dae4ec;
  color: #232f36;
}
.fl-builder-content .split-bg .fl-button:is(a, button) * {
  color: inherit;
}
.split-bg blockquote {
  margin: 0;
  padding: 34px 36px;
  border-left: 3px solid #f0d6bc;
  border-radius: 0 16px 16px 0;
  background: #dae4ec;
}
@media only screen and (max-width: 480px) {
  .split-bg blockquote {
    padding: 24px 20px;
  }
}
.split-bg blockquote:after {
  display: none;
}
.split-bg blockquote .stars {
  margin: 0 0 16px;
}
.split-bg blockquote .stars i {
  color: #a9732c;
}
.split-bg blockquote p.lrg {
  margin: 0 0 12px;
  font-family: "ivypresto-display", serif;
  font-size: 26px;
  line-height: 1.3;
  color: #232f36;
}
@media only screen and (max-width: 480px) {
  .split-bg blockquote p.lrg {
    font-size: 21px;
  }
}
.split-bg blockquote p:last-of-type {
  margin-bottom: 18px;
}
.split-bg blockquote .name {
  color: #5a778a;
}
.fl-builder-content .split-bg .fl-accordion-item {
  margin: 0 0 12px;
  border: 0;
  background: #dae4ec;
}
.fl-builder-content .split-bg .fl-accordion-item .fl-accordion-button {
  align-items: center;
  padding: 22px 28px;
}
.fl-builder-content .split-bg .fl-accordion-item .fl-accordion-button-label {
  font-family: "proxima-nova", sans-serif;
  font-size: 18px;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: 0;
  text-transform: none;
  color: #232f36;
}
.fl-builder-content .split-bg .fl-accordion-item .fl-accordion-button-icon {
  display: flex;
  flex: 0 0 36px;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #dae4ec;
  color: #232f36;
  font-size: 13px;
  opacity: 1;
}
.fl-builder-content .split-bg .fl-accordion-item .fl-accordion-button-icon i {
  margin: 0;
  font-size: 13px;
  color: inherit;
}
.fl-builder-content .split-bg .fl-accordion-item .fl-accordion-content {
  padding: 0 28px 24px;
}
.fl-builder-content .split-bg .fl-accordion-item .fl-accordion-content p:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 480px) {
  .fl-builder-content .split-bg .fl-accordion-item .fl-accordion-button {
    padding: 18px 20px;
  }
  .fl-builder-content .split-bg .fl-accordion-item .fl-accordion-button-label {
    font-size: 16px;
  }
  .fl-builder-content .split-bg .fl-accordion-item .fl-accordion-content {
    padding: 0 20px 20px;
  }
}
.split-bg {
  --split: 40%;
  background: linear-gradient(to bottom, #dae4ec 0, #dae4ec var(--split), #ffffff var(--split), #ffffff 100%);
}
.split-bg.split-bg-30 {
  --split: 30%;
}
.split-bg.split-bg-50 {
  --split: 50%;
}
.split-bg.split-bg-60 {
  --split: 60%;
}
@media only screen and (max-width: 980px) {
  .split-bg {
    background: #ffffff;
  }
}

.fl-module.text-card {
  padding: 48px 50px;
  background: var(--card-bg, #dae4ec);
}
.fl-module.text-card > :last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 480px) {
  .fl-module.text-card {
    padding: 30px 24px;
  }
}
.fl-module.text-card.card-white {
  background: #ffffff;
  box-shadow: 0 -12px 30px rgba(35, 47, 54, 0.07);
}
.fl-module.text-card.card-ltblue {
  background: #dae4ec;
}
.fl-module.text-card.card-bluegray {
  background: #5a778a;
}
.fl-module.text-card.card-navy {
  background: #232f36;
}
.fl-module.text-card.card-white h1,
.fl-module.text-card.card-white h2,
.fl-module.text-card.card-white h4,
.fl-module.text-card.card-white h5,
.fl-module.text-card.card-white h6,
.fl-module.text-card.card-white p,
.fl-module.text-card.card-white li, .fl-module.text-card.card-ltblue h1,
.fl-module.text-card.card-ltblue h2,
.fl-module.text-card.card-ltblue h4,
.fl-module.text-card.card-ltblue h5,
.fl-module.text-card.card-ltblue h6,
.fl-module.text-card.card-ltblue p,
.fl-module.text-card.card-ltblue li {
  color: #232f36;
}
.fl-module.text-card.card-white h3,
.fl-module.text-card.card-white p.eyebrow, .fl-module.text-card.card-ltblue h3,
.fl-module.text-card.card-ltblue p.eyebrow {
  color: #5a778a;
}
.fl-module.text-card.card-white a:not([class*=btn]), .fl-module.text-card.card-ltblue a:not([class*=btn]) {
  color: #0e5a8d;
}
.fl-module.text-card.card-white a:not([class*=btn]):hover, .fl-module.text-card.card-ltblue a:not([class*=btn]):hover {
  color: #232f36;
}
.fl-module.text-card.card-white li:before, .fl-module.text-card.card-ltblue li:before {
  background: #5a778a;
}
.fl-module.text-card.card-bluegray h1,
.fl-module.text-card.card-bluegray h2,
.fl-module.text-card.card-bluegray h3,
.fl-module.text-card.card-bluegray h4,
.fl-module.text-card.card-bluegray h5,
.fl-module.text-card.card-bluegray h6,
.fl-module.text-card.card-bluegray p,
.fl-module.text-card.card-bluegray li, .fl-module.text-card.card-navy h1,
.fl-module.text-card.card-navy h2,
.fl-module.text-card.card-navy h3,
.fl-module.text-card.card-navy h4,
.fl-module.text-card.card-navy h5,
.fl-module.text-card.card-navy h6,
.fl-module.text-card.card-navy p,
.fl-module.text-card.card-navy li {
  color: #ffffff;
}
.fl-module.text-card.card-bluegray p.eyebrow, .fl-module.text-card.card-navy p.eyebrow {
  color: #f0d6bc;
}
.fl-module.text-card.card-bluegray a:not([class*=btn]), .fl-module.text-card.card-navy a:not([class*=btn]) {
  color: #f0d6bc;
}
.fl-module.text-card.card-bluegray a:not([class*=btn]):hover, .fl-module.text-card.card-navy a:not([class*=btn]):hover {
  color: #ffffff;
}
.fl-module.text-card.card-bluegray li:before, .fl-module.text-card.card-navy li:before {
  background: #f0d6bc;
}
.fl-module.text-card.card-ltblue h3,
.fl-module.text-card.card-ltblue p.eyebrow {
  color: #43535c;
}
.fl-module.text-card.card-bluegray p.eyebrow {
  color: #ffffff;
}
.fl-module.text-card.card-bluegray a:not([class*=btn]) {
  color: #ffffff;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
.fl-module.text-card.card-bluegray a:not([class*=btn]):hover {
  text-decoration-thickness: 2px;
}

body.blog section.blog-hero,
body.archive section.blog-hero {
  position: relative;
  z-index: 0;
  overflow: clip;
  padding: 80px 0 90px;
  background: #dae4ec;
  text-align: center;
}
body.blog section.blog-hero:before,
body.archive section.blog-hero:before {
  content: "";
  position: absolute;
  bottom: -330px;
  left: -260px;
  z-index: -1;
  width: 620px;
  height: 628px;
  background: url("img/motifs/arc-motif-left.svg") no-repeat center/contain;
  transform: rotate(180deg);
  pointer-events: none;
}
body.blog section.blog-hero p.eyebrow,
body.archive section.blog-hero p.eyebrow {
  margin: 0 0 12px;
  font-size: 14px;
  line-height: 1.2;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #43535c;
}
body.blog section.blog-hero h1,
body.archive section.blog-hero h1 {
  margin: 0;
  text-wrap: balance;
  color: #232f36;
}
@media only screen and (max-width: 920px) {
  body.blog section.blog-hero,
  body.archive section.blog-hero {
    padding: 44px 0 48px;
  }
  body.blog section.blog-hero:before,
  body.archive section.blog-hero:before {
    bottom: -230px;
    left: -170px;
    width: 400px;
    height: 405px;
  }
}
@media only screen and (max-width: 480px) {
  body.blog section.blog-hero,
  body.archive section.blog-hero {
    padding: 32px 0 36px;
  }
}
body.blog section.content,
body.archive section.content {
  padding: 70px 0 80px;
  background: #ffffff;
}
body.blog section.content .container-fluid,
body.archive section.content .container-fluid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 40px 30px;
  max-width: calc(1140px + 2 * 30px);
  margin: 0 auto;
  padding: 0 30px;
}
@media only screen and (max-width: 1140px) {
  body.blog section.content .container-fluid,
  body.archive section.content .container-fluid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media only screen and (max-width: 920px) {
  body.blog section.content .container-fluid,
  body.archive section.content .container-fluid {
    gap: 24px 20px;
    padding: 0 20px;
  }
}
@media only screen and (max-width: 640px) {
  body.blog section.content .container-fluid,
  body.archive section.content .container-fluid {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media only screen and (max-width: 920px) {
  body.blog section.content,
  body.archive section.content {
    padding: 32px 0 44px;
  }
}
body.blog .wp-pagenavi,
body.archive .wp-pagenavi {
  grid-column: 1/-1;
}

.post-card {
  transition-property: all;
  transition-duration: 0.8s;
  transition-timing-function: cubic-bezier(0.6, 0, 0.2, 1);
  transition-delay: 0.1s;
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border: 1px solid rgba(35, 47, 54, 0.1);
  cursor: pointer;
}
.post-card:hover {
  box-shadow: 0 14px 34px rgba(35, 47, 54, 0.1);
}
.post-card:hover .post-card-image img {
  transform: scale(1.04);
}
.post-card:hover .link-arrow {
  color: #0e5a8d;
}
.post-card:hover .link-arrow i {
  transform: translateX(6px);
}
.post-card .post-card-image {
  display: block;
  aspect-ratio: 3/2;
  overflow: hidden;
  background: #dae4ec;
}
.post-card .post-card-image img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 30%;
     object-position: 50% 30%;
  transition: transform 0.6s cubic-bezier(0.2, 0.7, 0.2, 1);
}
.post-card .post-card-body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: flex-start;
  padding: 28px 30px 32px;
}
@media only screen and (max-width: 480px) {
  .post-card .post-card-body {
    padding: 22px 22px 26px;
  }
}
.post-card .date {
  display: block;
  margin: 0 0 10px;
  font-family: "proxima-nova", sans-serif;
  font-size: 13px;
  line-height: 1.3;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #5a778a;
}
.post-card h2.entry-title {
  margin: 0 0 12px;
  font-size: clamp(23px, 21.51px + 0.38vw, 27px);
  line-height: 1.25;
}
.post-card h2.entry-title a {
  color: #232f36;
}
.post-card h2.entry-title a:hover {
  color: #0e5a8d;
}
.post-card .post-card-excerpt {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  margin: 0 0 22px;
  font-size: 16px;
  line-height: 1.6;
  color: #232f36;
}
.post-card .link-arrow {
  margin-top: auto;
  font-size: 14px;
}

.wp-pagenavi {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 8px;
  margin: 20px 0 0;
  font-family: "proxima-nova", sans-serif;
  text-align: center;
  width: 100%;
}
.wp-pagenavi a,
.wp-pagenavi span {
  display: inline-block;
  min-width: 42px;
  padding: 10px 14px;
  border: 1px solid rgba(35, 47, 54, 0.15);
  border-radius: 50px;
  text-align: center;
  text-decoration: none;
  color: #232f36;
  font-weight: 600;
  transition: all 0.25s ease;
  background-color: #ffffff;
}
.wp-pagenavi a:hover {
  border-color: #232f36;
  background-color: #dae4ec;
}
.wp-pagenavi span.current {
  background: #232f36;
  color: #ffffff;
  border-color: #232f36;
  cursor: default;
}
.wp-pagenavi .pages {
  border: 0;
  background: none;
}

body.single section.content {
  margin: 0;
  padding: 60px 0 70px;
}
@media screen and (max-width: 920px) {
  body.single section.content {
    padding: 28px 0 44px;
  }
}
body.single section.content .container {
  width: auto;
  margin: 0 auto;
  padding: 0 30px;
}
@media screen and (max-width: 920px) {
  body.single section.content .container {
    padding: 0 20px;
  }
}
body.single section.content .container {
  max-width: calc(820px + 2 * 30px);
}
body.single section.content .featured-image {
  margin: 0 0 44px;
  overflow: hidden;
  aspect-ratio: 16/9;
  background: #dae4ec;
}
body.single section.content .featured-image:empty {
  display: none;
}
body.single section.content .featured-image img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 30%;
     object-position: 50% 30%;
}
body.single section.content .featured-image img[src*=faq_header_02] {
  -o-object-position: 50% 12%;
     object-position: 50% 12%;
}
@media screen and (max-width: 920px) {
  body.single section.content .featured-image {
    aspect-ratio: 3/2;
    margin: 0 0 28px;
  }
}
body.single section.content h1.post-title {
  margin: 0 0 14px;
  text-align: left;
  text-wrap: balance;
}
body.single section.content .post-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 12px;
  margin: 0 0 32px;
  padding: 0 0 24px;
  border-bottom: 1px solid rgba(35, 47, 54, 0.12);
  font-family: "proxima-nova", sans-serif;
  font-size: 13px;
  line-height: 1.3;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #5a778a;
}
body.single section.content .post-meta .fa {
  margin: 0 8px 0 0;
}
@media screen and (max-width: 920px) {
  body.single section.content .post-meta {
    margin: 0 0 24px;
    padding: 0 0 18px;
  }
}
@media screen and (max-width: 480px) {
  body.single section.content .post-meta {
    flex-direction: column;
    align-items: flex-start;
  }
  body.single section.content .post-meta .post-meta-sep {
    display: none;
  }
}
body.single section.content .post-date {
  display: inline-flex;
  align-items: center;
}
body.single section.content .entry-content {
  padding: 0;
  text-align: left;
}
body.single section.content .entry-content a:not([class*=btn]) {
  color: #0e5a8d;
  font-weight: 600;
  text-decoration: underline;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}
body.single section.content .entry-content a:not([class*=btn]):hover {
  color: #232f36;
}
body.single section.content .entry-content ul,
body.single section.content .entry-content ol {
  padding-left: 1.3em;
}
body.single section.content .entry-content img {
  display: inline-block;
  vertical-align: top;
  margin: 0 8px 8px 0;
}
body.single section.content .entry-content p:has(> img) {
  line-height: 0;
}
body.single section.content .post-back {
  display: inline-flex;
  margin: 48px 0 0;
  font-size: 14px;
}
body.single section.content .post-back i {
  margin: 0;
}
body.single section.content .post-back:hover i {
  transform: translateX(-6px);
}
body.single .related-posts {
  padding: 70px 0 90px;
  background: #fcf7f2;
}
body.single .related-posts .wrapper > h2 {
  margin: 0 0 36px;
  text-align: center;
}
body.single .related-posts .related-posts-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 360px));
  justify-content: center;
  gap: 30px;
}
@media screen and (max-width: 920px) {
  body.single .related-posts {
    padding: 48px 0 56px;
  }
  body.single .related-posts .wrapper > h2 {
    margin-bottom: 24px;
  }
  body.single .related-posts .related-posts-grid {
    gap: 20px;
  }
}
@media screen and (min-width: 641px) and (max-width: 980px) {
  body.single .related-posts .related-posts-grid {
    grid-template-columns: repeat(2, minmax(0, 340px));
  }
}
@media screen and (max-width: 640px) {
  body.single .related-posts .related-posts-grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

body.error404 main {
  overflow-x: clip;
}
body.error404 .not-found {
  display: flex;
  align-items: center;
  min-height: calc(100vh - 41px - 130px);
  min-height: calc(100svh - 41px - 130px);
  padding: 120px 0;
  overflow: hidden;
  text-align: center;
  background: #ffffff;
}
body.error404 .not-found:before, body.error404 .not-found:after {
  content: "";
  position: absolute;
  width: 520px;
  height: 527px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  pointer-events: none;
}
body.error404 .not-found:before {
  top: -140px;
  left: -260px;
  background-image: url("img/motifs/arc-motif-left.svg");
}
body.error404 .not-found:after {
  right: -260px;
  bottom: -260px;
  background-image: url("img/motifs/arc-motif-left.svg");
  transform: rotate(180deg);
}
body.error404 .not-found .wrapper {
  width: 100%;
}
body.error404 .not-found-inner {
  position: relative;
  z-index: 1;
  max-width: 640px;
  margin: 0 auto;
}
body.error404 .not-found-code {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: -1;
  font-family: "ivypresto-display", serif;
  font-size: clamp(200px, 34vw, 440px);
  font-style: italic;
  line-height: 1;
  color: #dae4ec;
  opacity: 0.55;
  white-space: nowrap;
  transform: translate(-50%, -54%);
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
}
body.error404 .not-found p.not-found-eyebrow {
  margin: 0 auto 22px;
  font-size: 14px;
  line-height: 1.2;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: #5a778a;
}
body.error404 .not-found h1 {
  margin: 0 0 26px;
  text-wrap: balance;
  line-height: 1.12;
}
body.error404 .not-found h1 em {
  color: #0e5a8d;
}
body.error404 .not-found p {
  max-width: 500px;
  text-wrap: balance;
  margin: 0 auto 40px;
}
body.error404 .not-found-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 20px 40px;
  margin: 0 0 44px;
}
body.error404 .not-found p.not-found-phone {
  margin: 0 auto;
  font-size: 15px;
  color: #5a778a;
}
body.error404 .not-found p.not-found-phone a {
  color: #232f36;
  font-weight: 700;
  text-decoration: underline;
  text-decoration-color: #f0d6bc;
  text-decoration-thickness: 2px;
  text-underline-offset: 4px;
}
body.error404 .not-found p.not-found-phone a:hover {
  color: #0e5a8d;
}
body.error404 .footer-cta {
  display: none;
}
@media only screen and (max-width: 920px) {
  body.error404 .not-found {
    min-height: calc(100vh - 41px - 84px);
    min-height: calc(100svh - 41px - 84px - 55px);
    padding: 80px 0;
  }
  body.error404 .not-found:before, body.error404 .not-found:after {
    width: 340px;
    height: 345px;
  }
  body.error404 .not-found:before {
    top: -120px;
    left: -200px;
  }
  body.error404 .not-found:after {
    right: -200px;
    bottom: -190px;
  }
}
@media only screen and (max-width: 480px) {
  body.error404 .not-found {
    padding: 64px 0;
  }
  body.error404 .not-found-code {
    font-size: 190px;
  }
  body.error404 .not-found p.not-found-eyebrow {
    margin-bottom: 16px;
  }
  body.error404 .not-found p {
    margin-bottom: 32px;
  }
  body.error404 .not-found-actions {
    flex-direction: column;
    gap: 24px;
    margin-bottom: 36px;
  }
}

body.page-template-no-header main {
  overflow-x: clip;
}
body.page-template-no-header .landing {
  background: #dae4ec;
}
body.page-template-no-header .landing .fl-row:not(.dark-bg):not([class*=cta-bg]) .fl-module:not(.text-card) h3 {
  color: #43535c;
}
body.page-template-no-header .flex-row {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-around;
}
body.page-template-no-header .col-left,
body.page-template-no-header .col-right {
  min-height: calc(100vh - 171px);
  padding: 80px clamp(24px, 3vw, 60px);
}
body.page-template-no-header .col-left {
  flex: 0 0 50%;
  max-width: 50%;
  min-width: 0;
  padding-top: clamp(20px, 3.5vh, 48px);
}
body.page-template-no-header .col-right {
  flex: 0 0 50%;
  max-width: 50%;
}
body.page-template-no-header .col-right {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  position: sticky;
  top: 171px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background-color: #232f36;
  background-image: url("img/reviews-office-reception.jpg");
}
body.page-template-no-header .col-right:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: rgba(35, 47, 54, 0.82);
  z-index: 1;
}
body.page-template-no-header .container-sml {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 500px;
}
body.page-template-no-header .landing-empty {
  margin: 0;
  padding: 40px;
  border: 2px dashed #a3bcd1;
  text-align: center;
  color: #5a778a;
}
body.page-template-no-header .col-left .intro-bg {
  --card-pad: clamp(28px, calc(5vh - 4px), 64px);
  padding-top: calc(var(--card-pad) - 8px);
  padding-bottom: var(--card-pad);
}
body.page-template-no-header .col-left .intro-bg > .fl-row-content-wrap {
  padding-left: calc(var(--card-pad) - 20px);
  padding-right: calc(var(--card-pad) - 20px);
}
body.page-template-no-header .col-left .intro-bg .fl-rich-text {
  container-type: inline-size;
}
body.page-template-no-header .col-left .intro-bg .fl-module {
  margin-top: 0;
  margin-bottom: 0;
}
body.page-template-no-header .col-left .intro-bg .fl-module + .fl-module {
  margin-top: 24px;
}
body.page-template-no-header .col-left .intro-bg .fl-rich-text > :last-child,
body.page-template-no-header .col-left .intro-bg .fl-rich-text > div > :last-child {
  margin-bottom: 0;
}
body.page-template-no-header .col-left .intro-bg h5 {
  margin-bottom: 18px;
}
body.page-template-no-header .col-left .fl-row {
  max-width: 1146px;
  margin-left: auto;
  margin-right: auto;
}
body.page-template-no-header .col-left .fl-row-content-wrap > .fl-row-content {
  margin-left: 0;
}
body.page-template-no-header.page-meet-dr-bryan-hsu .col-left .intro-bg > .fl-row-content-wrap > .fl-row-content {
  margin-left: auto;
  margin-right: auto;
}
body.page-template-no-header .col-left .intro-bg ~ .fl-row > .fl-row-content-wrap {
  padding-left: 0;
  padding-right: 0;
}
body.page-template-no-header .col-left .intro-bg ~ .fl-row > .fl-row-content-wrap > .fl-row-content {
  max-width: none;
}
body.page-template-no-header .col-left .intro-bg ~ .fl-row .fl-module,
body.page-template-no-header .col-left .intro-bg ~ .fl-row .fl-module-content {
  margin-left: 0;
  margin-right: 0;
}
body.page-template-no-header .col-left .intro-bg ~ .fl-row .fl-rich-text {
  max-width: 680px;
}
body.page-template-no-header .col-left .fl-module-html .row {
  flex-wrap: nowrap;
  gap: 10px;
}
body.page-template-no-header .col-left .fl-module-html .row > [class*=col-] {
  flex: 1 1 0;
  max-width: none;
  padding: 0;
}
body.page-template-no-header .col-left .fl-module-html .row img {
  display: block;
  width: 100%;
  height: auto;
}
body.page-template-no-header .col-left .intro-bg + .fl-row {
  padding-top: clamp(20px, 3.5vh, 44px);
}
body.page-template-no-header .col-left .intro-bg + .fl-row .fl-col-content > .fl-module:first-child {
  margin-top: 0;
}
body.page-template-no-header .col-left .entry-content > *:first-child {
  margin-top: 0;
}
body.page-template-no-header .col-left .entry-content h1,
body.page-template-no-header .col-left .entry-content h2,
body.page-template-no-header .col-left .entry-content h3,
body.page-template-no-header .col-left .entry-content h4,
body.page-template-no-header .col-left .entry-content p,
body.page-template-no-header .col-left .entry-content li {
  text-align: left;
}
body.page-template-no-header .col-left .entry-content h1 {
  margin: 0 0 clamp(12px, 2.4vh, 30px);
}
body.page-template-no-header .col-left .entry-content h1,
body.page-template-no-header .col-left .entry-content h2,
body.page-template-no-header .col-left .entry-content h3,
body.page-template-no-header .col-left .entry-content h4,
body.page-template-no-header .col-left .entry-content h5 {
  text-wrap: balance;
}
body.page-template-no-header .col-left .entry-content p {
  text-wrap: pretty;
}
body.page-template-no-header .col-left .entry-content a[href^="tel:"] {
  white-space: nowrap;
}
body.page-template-no-header .col-left .entry-content label,
body.page-template-no-header .col-left .entry-content legend,
body.page-template-no-header .col-left .entry-content .gfield_label {
  display: block;
  margin: 0 0 10px;
  font-family: "proxima-nova", sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #232f36;
}
body.page-template-no-header .col-left .entry-content .gfield_consent_label,
body.page-template-no-header .col-left .entry-content .gchoice label,
body.page-template-no-header .col-left .entry-content .form-consent label {
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: 0;
  text-transform: none;
}
body.page-template-no-header .col-left .entry-content input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
body.page-template-no-header .col-left .entry-content select,
body.page-template-no-header .col-left .entry-content textarea {
  display: block;
  width: 100%;
  height: 60px;
  padding: 0 20px;
  border: 0;
  border-radius: 0;
  background: #ffffff;
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  color: #232f36;
}
body.page-template-no-header .col-left .entry-content input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]):focus,
body.page-template-no-header .col-left .entry-content select:focus,
body.page-template-no-header .col-left .entry-content textarea:focus {
  outline: 2px solid #0e5a8d;
  outline-offset: -2px;
}
body.page-template-no-header .col-left .entry-content textarea {
  height: 140px;
  padding: 16px 20px;
}
body.page-template-no-header .col-left .entry-content input[type=checkbox],
body.page-template-no-header .col-left .entry-content input[type=radio] {
  accent-color: #232f36;
}
body.page-template-no-header .col-left .entry-content input[type=submit],
body.page-template-no-header .col-left .entry-content button[type=submit],
body.page-template-no-header .col-left .entry-content .gform_button {
  border-radius: 38px;
  background-clip: padding-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 64px;
  padding: 0 50px;
  border: 0;
  background: #f0d6bc;
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: #232f36;
  cursor: pointer;
  transition: background-color 0.35s ease, color 0.35s ease;
}
body.page-template-no-header .col-left .entry-content input[type=submit]:hover, body.page-template-no-header .col-left .entry-content input[type=submit]:focus-visible,
body.page-template-no-header .col-left .entry-content button[type=submit]:hover,
body.page-template-no-header .col-left .entry-content button[type=submit]:focus-visible,
body.page-template-no-header .col-left .entry-content .gform_button:hover,
body.page-template-no-header .col-left .entry-content .gform_button:focus-visible {
  background: #232f36;
  color: #ffffff;
}
body.page-template-no-header .landing-reviews {
  padding: 50px 44px 40px;
  background: #ffffff;
}
body.page-template-no-header .landing-reviews-track {
  display: grid;
}
body.page-template-no-header blockquote.landing-review {
  grid-area: 1/1;
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  text-align: center;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.45s cubic-bezier(0.22, 1, 0.36, 1);
}
body.page-template-no-header blockquote.landing-review:before {
  display: none;
}
body.page-template-no-header blockquote.landing-review.is-active {
  visibility: visible;
  opacity: 1;
}
body.page-template-no-header blockquote.landing-review .stars {
  margin: 0 0 20px;
  color: #f0d6bc;
  font-size: 18px;
  letter-spacing: 4px;
}
body.page-template-no-header blockquote.landing-review p {
  margin: 0 0 16px;
  font-family: "proxima-nova", sans-serif;
  font-size: 16px;
  line-height: 1.6;
  color: #232f36;
}
body.page-template-no-header blockquote.landing-review p.lrg {
  margin: 0 0 20px;
  font-family: "ivypresto-display", serif;
  font-size: 32px;
  font-weight: 400;
  line-height: 1.2;
  color: #232f36;
}
body.page-template-no-header blockquote.landing-review cite.name {
  display: block;
  margin: 16px 0 0;
  font-family: "proxima-nova", sans-serif;
  font-size: 15px;
  font-style: normal;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #5a778a;
}
body.page-template-no-header .landing-dots {
  display: flex;
  justify-content: center;
  gap: 12px;
  margin: 28px 0 0;
}
body.page-template-no-header .landing-dot {
  width: 10px;
  height: 10px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #a3bcd1;
  cursor: pointer;
  transition: background-color 0.35s ease, transform 0.35s ease;
}
body.page-template-no-header .landing-dot:hover {
  background: #5a778a;
}
body.page-template-no-header .landing-dot.is-active {
  background: #232f36;
  transform: scale(1.2);
}
body.page-template-no-header .landing-dot:focus-visible {
  outline: 2px solid #232f36;
  outline-offset: 3px;
}
@media only screen and (min-width: 921px) {
  body.page-template-no-header .col-left .entry-content h1 {
    font-size: min(95px, max(40px, 13vh - 30px), 14cqi);
  }
}
@media only screen and (min-width: 921px) and (max-height: 800px) {
  body.page-template-no-header .col-left .intro-bg p.lrg {
    font-size: 18px;
    line-height: 1.55;
  }
  body.page-template-no-header .col-left .intro-bg p {
    margin-bottom: 14px;
  }
}
@media only screen and (max-width: 920px) {
  body.page-template-no-header .col-left,
  body.page-template-no-header .col-right {
    flex: 0 1 100%;
    max-width: 100%;
    min-height: 0;
    padding: 50px 30px;
  }
  body.page-template-no-header .col-left {
    padding-top: 24px;
  }
  body.page-template-no-header .col-right {
    display: none;
  }
  body.page-template-no-header .col-left .intro-bg {
    padding-top: 32px;
    padding-bottom: 32px;
  }
  body.page-template-no-header .col-left .intro-bg > .fl-row-content-wrap {
    padding-left: 28px;
    padding-right: 28px;
  }
  body.page-template-no-header .col-left .entry-content h1 {
    margin-bottom: 16px;
  }
}
@media only screen and (max-width: 480px) {
  body.page-template-no-header .col-left {
    padding: 20px 20px 48px;
  }
  body.page-template-no-header .col-left .intro-bg > .fl-row-content-wrap {
    padding-left: 20px;
    padding-right: 20px;
  }
  body.page-template-no-header .col-left .intro-bg .fl-module {
    margin-left: 0;
    margin-right: 0;
  }
  body.page-template-no-header .col-left .intro-bg:before {
    right: -210px;
    bottom: -260px;
    width: 340px;
    height: 345px;
  }
  body.page-template-no-header .col-left .intro-bg {
    padding-top: 22px;
    padding-bottom: 22px;
  }
  body.page-template-no-header .col-left .intro-bg p.lrg {
    font-size: 16px;
    line-height: 1.55;
  }
  body.page-template-no-header .col-left .intro-bg h5 {
    font-size: 14px;
    letter-spacing: 0.08em;
  }
  body.page-template-no-header .col-left .intro-bg p {
    margin-bottom: 12px;
    font-size: 15px;
    line-height: 1.55;
  }
  body.page-template-no-header .col-left .entry-content h1 {
    margin-bottom: 12px;
  }
  body.page-template-no-header .col-left .entry-content input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]):not([type=image]):not([type=file]),
  body.page-template-no-header .col-left .entry-content select {
    height: 54px;
  }
  body.page-template-no-header .col-left .entry-content input[type=submit],
  body.page-template-no-header .col-left .entry-content button[type=submit],
  body.page-template-no-header .col-left .entry-content .gform_button {
    width: 100%;
    height: 56px;
    padding: 0 24px;
  }
}

body.page-template-ads-v1 {
  --header-bottom: 130px;
}
@media screen and (max-width: 920px) {
  body.page-template-ads-v1 {
    --header-bottom: 84px;
  }
}
@media screen and (max-width: 480px) {
  body.page-template-ads-v1 {
    --header-bottom: 68px;
  }
}
body.page-template-ads-v1 #page {
  padding-top: 130px;
}
@media screen and (max-width: 920px) {
  body.page-template-ads-v1 #page {
    padding-top: 84px;
  }
}
@media screen and (max-width: 480px) {
  body.page-template-ads-v1 #page {
    padding-top: 68px;
  }
}
body.page-template-ads-v1 .header-call-toggle {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  white-space: nowrap;
}
body.page-template-ads-v1 #form {
  scroll-margin-top: calc(var(--header-bottom) + var(--admin-bar, 0px) + 20px);
}
body.page-template-ads-v1 .footer-cta-intro {
  margin-bottom: 0;
}
body.page-template-ads-v1 .footer-cta-intro .btn {
  margin-top: 30px;
}
body.page-template-ads-v1 footer .footer-top .wrapper {
  justify-content: space-between;
}
body.page-template-ads-v1 footer .footer-location {
  margin-left: auto;
}
body.page-template-ads-v1 .mobile-bar .mobile-bar-menu a[href^="tel:"] {
  gap: 8px;
  font-size: 13px;
  letter-spacing: 0.06em;
}
body.page-template-ads-v1 .mobile-bar .mobile-bar-menu a[href^="tel:"]:before {
  font-size: 16px;
}

/* Blog typography standard: source scss/views/_blog-typography.scss */
body.single-post section.content.article .container {
  max-width: calc(760px + 2 * 30px);
}
body.single-post section.content.article h1.post-title {
  font-size: 48px;
  line-height: 1.15;
}
body.single-post section.content.article .entry-content h1,
body.single-post section.content.article .entry-content h2,
body.single-post section.content.article .entry-content h3,
body.single-post section.content.article .entry-content h4 {
  overflow-wrap: break-word;
  letter-spacing: 0;
  text-transform: none;
}
body.single-post section.content.article .entry-content h2 {
  font-size: 34px;
  line-height: 1.2;
}
body.single-post section.content.article .entry-content h3 {
  font-size: 26px;
  line-height: 1.25;
}
body.single-post section.content.article .entry-content h4 {
  font-size: 22px;
  line-height: 1.3;
}
body.single-post section.content.article .entry-content p,
body.single-post section.content.article .entry-content li {
  font-size: 18px;
  line-height: 1.65;
}
body.single-post section.content.article .entry-content table {
  display: block;
  overflow-x: auto;
  width: 100%;
  border-collapse: collapse;
  font-size: 17px;
}
body.single-post section.content.article .entry-content th,
body.single-post section.content.article .entry-content td {
  padding: 10px 12px;
  border: 1px solid rgba(35, 47, 54, 0.15);
  text-align: left;
  vertical-align: top;
}
body.single-post section.content.article .entry-content thead th {
  background: rgba(35, 47, 54, 0.04);
  font-weight: 600;
}
body.single-post section.content.article .post-meta {
  font-size: 14px;
}
body.single-post section.content.article .post-back {
  min-height: 24px;
}
@media only screen and (max-width: 600px) {
  body.single-post section.content.article h1.post-title {
    font-size: 30px;
  }
  body.single-post section.content.article .entry-content h2 {
    font-size: 25px;
  }
  body.single-post section.content.article .entry-content h3 {
    font-size: 21px;
  }
  body.single-post section.content.article .entry-content h4 {
    font-size: 19px;
  }
  body.single-post section.content.article .entry-content p,
  body.single-post section.content.article .entry-content li {
    font-size: 17px;
  }
}

body.blog section.blog-hero h1,
body.archive section.blog-hero h1 {
  font-size: 48px;
  line-height: 1.15;
}
@media only screen and (max-width: 600px) {
  body.blog section.blog-hero h1,
  body.archive section.blog-hero h1 {
    font-size: 30px;
  }
}

.post-card .date {
  font-size: 14px;
}
.post-card .link-arrow {
  min-height: 24px;
}
