/* Theme base styles */
:root {
    --primary: #0D205B;
    --secondary: #373737;
    --accent1: #F08F28;
    --accent2: #7A99AC;
    --accent3: #C4D82D;
    --white: #ffffff;
    --black: #000000;
    --green: #C4D82D;
    --grey-dark:#373737;
    --grey:#5f6369;
    --grey-light:#f1f3f6;
    --blue-light:#7A99AC;
    --blue-dark:#04113c;
    --green-dark:#6b9560;
    --orange:#F08F28;
    --section-width: 1440px ;
    --font-heading: Lato;
    --font-body: Lato;
    --xs: 360;
    --sm: 480;
    --md: 768;
    --lg: 1024;
    --xl: 1280;
    --xxl: 1440;
    --container-width: 1440px;


}
html { font-size:16px !important; scroll-behavior: smooth; scroll-padding-top: 100px; }
body { position:relative; } 
/* main { overflow-x:hidden; } */

img { display:flex; }

.gradient-text, .text-gradient {
  background: linear-gradient(90deg, var(--blue) 0%, var(--magenta) 100%);
  -webkit-background-clip: text; /* Safari/Chrome */
  background-clip: text;
  color: transparent;            /* Firefox */
  -webkit-text-fill-color: transparent; /* Safari */
  display: inline;               /* ensures width = text only */
  width: max-content;
}

.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }

.text-uppercase { text-transform: uppercase; }
.text-lowercase { text-transform: lowercase; }
.text-capitalize { text-transform: capitalize; }

.d-block { display:block !important;}
.d-inline { display:inline !important;}
.d-inline-block { display:inline-block !important;}
.d-flex { display:flex !important;}
.d-inline-flex { display:inline-flex !important;}
.d-grid { display:grid !important;}
.d-inline-grid { display:inline-grid !important;}

.text-white { color: var(--white) !important;}
.text-black { color: var(--black) !important;}
.text-primary { color: var(--primary) !important;}
.text-secondary { color: var(--secondary) !important;}
.text-supplemental { color: var(--supplemental) !important;}
.text-accent1 { color: var(--accent1) !important;}
.text-accent2 { color: var(--accent2) !important;}
.text-accent3 { color: var(--accent3) !important;}
.text-green { color: var(--green) !important;}


.fw500 { font-weight:500 !important;}
.fw600 { font-weight:600 !important;}
.fw700 { font-weight:700 !important;}
.fw800 { font-weight:800 !important;}
.fw900 { font-weight:900 !important;} 

.italic { font-style:italic !important;}
.uppercase { text-transform:uppercase !important;}
.lowercase { text-transform:lowercase !important;}
.capitalize { text-transform:capitalize !important;}

.bg-white { background: var(--white) !important;}
.bg-black { background: var(--black) !important;}
.bg-primary { background: var(--primary) !important;}
.bg-secondary { background: var(--secondary) !important;}
.bg-accent1 { background: var(--accent1) !important;}
.bg-accent2 { background: var(--accent2) !important;}
.bg-accent3 { background: var(--accent3) !important;}
.bg-green { background: var(--green) !important;}



.justify-content-start { justify-content:start !important;}
.justify-content-center { justify-content:center !important;}
.justify-content-end { justify-content:end !important;}

.align-items-start { align-items:start !important;}
.align-items-center { align-items:center !important;}
.align-items-end { align-items:end !important;}

.mb-0 { margin-bottom:0 !important; }
.mb-1 { margin-bottom:.25rem !important; }
.mb-2 { margin-bottom:.5rem !important; }
.mb-3 { margin-bottom:.75rem !important; }
.mb-4 { margin-bottom:1rem !important; }
.mb-5 { margin-bottom:1.5rem !important; }

.margin-inline-auto { margin-inline:auto !important; }

.border-1-blue { border:1px solid var(--blue) }

.invisible { visibility:hidden !important; }

/* Modal Container */
.modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 1; /* Sit on top */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

/* Modal Content */
.modal-content {
  background-color: #fefefe;
  margin: 15% auto; /* 15% from the top and centered */
  padding: 20px;
  border: 1px solid #888;
  width: 80%; /* Could be more or less, depending on screen size */
  max-width:800px;
}

/* Close Button */
.close {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}

@media(max-width:991px){
  .hide-mobile {
    display:none !important;
  }
}
@media(min-width:992px){
  .hide-desktop {
    display:none !important;
  }
}

@media(max-width:320px){
  .btn, .hs-blog-post-listing__post-button, .hs-button {
    width: 100%;
  }
}
form.hs-form input[type=file] {
  padding:.7rem;
}

form .hs_recaptcha .grecaptcha-badge {
  margin:unset;
}
.text-xs-left { text-align: left; }
.text-xs-center { text-align: center; }
.text-xs-right { text-align: right; }

@media (min-width: 480px) {
    .text-sm-left { text-align: left; }
    .text-sm-center { text-align: center; }
    .text-sm-right { text-align: right; }
}
@media (min-width: 768px) {    
    .text-md-left { text-align: left; }
    .text-md-center { text-align: center; }
    .text-md-right { text-align: right; }
}
@media (min-width: 1024px) {
    .text-lg-left { text-align: left; }
    .text-lg-center { text-align: center; }
    .text-lg-right { text-align: right; }
}
@media (min-width: 1280px) {    
    .text-xl-left { text-align: left; }
    .text-xl-center { text-align: center; }
    .text-xl-right { text-align: right; }
}
@media (min-width: 1440px) {       
    .text-xxl-left { text-align: left; }
    .text-xxl-center { text-align: center; }
    .text-xxl-right { text-align: right; }
}
.justify-content-xs-start { justify-content:start; }
.justify-content-xs-center { justify-content:center; }
.justify-content-xs-end { justify-content:end; }

.margin-xs-left { margin-right:auto; }
.margin-xs-center { margin-inline:auto; }
.margin-xs-right { margin-left:auto; }

@media (min-width: 480px) {
    .justify-content-sm-start { justify-content:start; }
    .justify-content-sm-center { justify-content:center; }
    .justify-content-sm-end { justify-content:end; }
    
    .margin-sm-left { margin-right:auto; }
    .margin-sm-center { margin-inline:auto; }
    .margin-sm-right { margin-left:auto; }
}
@media (min-width: 768px) {    
    .justify-content-md-start { justify-content:start; }
    .justify-content-md-center { justify-content:center; }
    .justify-content-md-end { justify-content:end; }

    .margin-md-left { margin-right:auto; }
    .margin-md-center { margin-inline:auto; }
    .margin-md-right { margin-left:auto; }
}
@media (min-width: 1024px) {
    .justify-content-lg-start { justify-content:start; }
    .justify-content-lg-center { justify-content:center; }
    .justify-content-lg-end { justify-content:end; }

    .margin-lg-left { margin-right:auto; }
    .margin-lg-center { margin-inline:auto; }
    .margin-lg-right { margin-left:auto; }
}
@media (min-width: 1280px) {    
    .justify-content-xl-start { justify-content:start; }
    .justify-content-xl-center { justify-content:center; }
    .justify-content-xl-end { justify-content:end; }

    .margin-xl-left { margin-right:auto; }
    .margin-xl-center { margin-inline:auto; }
    .margin-xl-right { margin-left:auto; }
}
@media (min-width: 1440px) {       
    .justify-content-xxl-start { justify-content:start; }
    .justify-content-xxl-center { justify-content:center; }
    .justify-content-xxl-end { justify-content:end; }

    .margin-xxl-left { margin-right:auto; }
    .margin-xxl-center { margin-inline:auto; }
    .margin-xxl-right { margin-left:auto; }
}

/* Tools
Any animations, or functions used throughout the project.
Note: _macros.css needs to be imported into each stylesheet where macros are used and not included here
*/

/* Generic
This is where reset, normalize & box-sizing styles go.
*/

*, *:before, *:after {
  box-sizing: border-box;
}
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

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

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

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

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

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

body {
  margin: 0;
}

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

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

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

/**
 * Add the correct box sizing in Firefox.
 */

hr {
  box-sizing: content-box;
  height: 0;
}

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

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

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

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

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

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

b,
strong {
  font-weight: bolder;
}

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

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

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

small {
  font-size: 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;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

/**
 * Remove the padding so developers are not caught out when they zero out `fieldset` elements in all browsers.
 */

legend {
  padding: 0;
}

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

progress {
  vertical-align: baseline;
}

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

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

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

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

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

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

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

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

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

/*
 * Add the correct display in Edge and Firefox.
 */

details {
  display: block;
}

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

summary {
  display: list-item;
}

/* Objects
Non-cosmetic design patterns including grid and layout classes)
*/



/* CSS variables */

:root {
  --column-gap: 2.13%;
  --column-width-multiplier: 8.333;
}

/* Mobile layout */

.row-fluid {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}


  .row-fluid .span1,
  .row-fluid .span2,
  .row-fluid .span3,
  .row-fluid .span4,
  .row-fluid .span5,
  .row-fluid .span6,
  .row-fluid .span7,
  .row-fluid .span8,
  .row-fluid .span9,
  .row-fluid .span10,
  .row-fluid .span11,
  .row-fluid .span12{
  min-height: 1px;
  width: 100%;
}

/* Desktop layout */

@media (min-width: 1024px) {
  /* .row-fluid {
    flex-wrap: nowrap;
    justify-content: center;
  } */

  
    .row-fluid .span1 {
      width: calc(var(--column-width-multiplier) * 1% * 1 - var(--column-gap) * (11 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span2 {
      width: calc(var(--column-width-multiplier) * 1% * 2 - var(--column-gap) * (10 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span3 {
      width: calc(var(--column-width-multiplier) * 1% * 3 - var(--column-gap) * (9 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span4 {
      width: calc(var(--column-width-multiplier) * 1% * 4 - var(--column-gap) * (8 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span5 {
      width: calc(var(--column-width-multiplier) * 1% * 5 - var(--column-gap) * (7 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span6 {
      width: calc(var(--column-width-multiplier) * 1% * 6 - var(--column-gap) * (6 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span7 {
      width: calc(var(--column-width-multiplier) * 1% * 7 - var(--column-gap) * (5 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span8 {
      width: calc(var(--column-width-multiplier) * 1% * 8 - var(--column-gap) * (4 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span9 {
      width: calc(var(--column-width-multiplier) * 1% * 9 - var(--column-gap) * (3 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span10 {
      width: calc(var(--column-width-multiplier) * 1% * 10 - var(--column-gap) * (2 * var(--column-width-multiplier) / 100));
    }
  
    .row-fluid .span11 {
      width: calc(var(--column-width-multiplier) * 1% * 11 - var(--column-gap) * (1 * var(--column-width-multiplier) / 100));
    }
  
}

.card-grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 1.5rem;
}
@media (min-width: 768px) {
  .card-grid.grid-columns-2 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 1024px) {
  .card-grid.grid-columns-3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .card-grid.grid-columns-4 {
    grid-template-columns: repeat(4, 1fr);
  }
  .card-grid.grid-columns-5 {
    grid-template-columns: repeat(5, 1fr);
  }
}
.content-wrapper {
  margin: 0 auto;
  padding: 0 1.5rem;
}

.dnd-section > .row-fluid {
  margin: 0 auto;
}

.dnd-section .dnd-column {
  padding: 0 1.5rem;
}

@media (max-width: 1024px) {
  .dnd-section .dnd-column {
    padding: 0;
  }
}

/* Elements
Base HMTL elements are styled in this section (<body>, <h1>, <a>, <p>, <button> etc.)
*/

/* The overflow-wrap is meant to prevent long/large words from breaking the mobile responsiveness of a page (e.g. horizontal scrolling). It is preferred to reduce font sizes on mobile to address this, with this CSS specifically helping with extreme scenarios where a reduction in font size is not possible. */

body {
  line-height: 1.7;
  overflow-wrap: break-word;
}

/* Handles word breaking for a few specific languages which handle breaks in words differently. If your content is not translated into these languages, you can safely remove this.  */

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

/* Paragraphs */

p {
  font-size: 1rem;
  margin: 0 0 1.5rem;
  line-height:1.75;
}

/* Anchors */

a {
  cursor: pointer;
}

/* Headings */

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  margin: 0 0 1.25rem;
  line-height:1.125;
}







/* Lists */

ul,
ol {
  margin-bottom: 1.25rem;
}

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

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

/* Code blocks */

pre {
  overflow: auto;
}

code {
  vertical-align: bottom;
}

/* Blockquotes */

blockquote {
  border-left: 2px solid;
  margin: 0 0 1.4rem;
  padding-left: 0.7rem;
}

/* Horizontal rules */

hr {
  border: none;
  border-bottom: 1px solid #CCC;
}

/* Image alt text */

img {
  font-size: 0.583rem;
  word-break: normal;
}
.btn-wrap {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 1rem;
  z-index:3;
  position:relative;
}

.btn,
.button,
.hs-button {
  padding: 1.125rem 1.625rem;
  background: var(--accent1);
  border: 1px solid var(--accent1);
  color: var(--primaru);
  text-decoration: none;
  font-size: 1.125rem;
  font-weight: 700;
  white-space: nowrap;
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap:.5rem;
  text-transform: uppercase;
  letter-spacing: .25px;
  border-radius: .375rem;
  /* font-weight:500; */
}
:is(.btn, .button, .hs-button) svg {
  fill:var(--white);
}
:is(.btn, .button, .hs-button):hover svg {
  fill:var(--primary);
}
.btn:hover,
.button:hover,
.hs-button:hover {
  background: var(--accent2);
  border: 1px solid var(--accent2);
  color: var(--primary);
  text-decoration: none;
}
.btn.btn-primary, button.btn-primary,
.button.btn-primary,
.hs-button.btn-primary, .hs-button.primary {
  background: var(--accent1);
  border: 1px solid var(--accent1);
  color: var(--primary);
  font-weight: 700;
}
.btn.btn-primary:hover, button.btn-primary:hover,
.button.btn-primary:hover,
.hs-button.btn-primary:hover, .hs-button.primary:hover {
  background: var(--accent2);
  border: 1px solid var(--accent2);
  color: var(--primary);
}

.btn.btn-secondary, button.btn-secondary,
.button.btn-secondary,
.hs-button.btn-secondary {
  background: var(--white);
  border: 1px solid var(--primary);
  color: var(--primary);
}
.btn.btn-secondary:hover, button.btn-secondary:hover,
.button.btn-secondary:hover,
.hs-button.btn-secondary:hover {
  background: var(--primary);
  border: 1px solid var(--white);
  color: var(--white);
}
.btn.btn-supplemental, button.btn-supplemental,
.button.btn-supplemental,
.hs-button.btn-supplemental {
  box-shadow: inset 1px 1px rgba(255 255 255 / 0.5);
  background: linear-gradient(to bottom, #fcbe78, var(--orange)) !important;
  border: 1px solid var(--primary);
  color: var(--primary);
}
.btn.btn-supplemental:hover, button.btn-supplemental:hover,
.button.btn-supplemental:hover,
.hs-button.btn-supplemental:hover {
  background: linear-gradient(to bottom, var(--orange), #fcbe78) !important;
  border: 1px solid var(--primary);
  color: var(--primary);
}


.btn.btn-transitional, button.btn-transitional,
.button.btn-transitional,
.hs-button.btn-transitional {
  background: var(--white);
  border: 1px solid var(--grey-light);
  color: var(--blue-dark);
}
.btn.btn-transitional:hover, button.btn-transitional:hover,
.button.btn-transitional:hover,
.hs-button.btn-transitional:hover {
  background: var(--blue-dark);
  border: 1px solid var(--blue-dark);
  color: var(--white);
}
.btn.btn-reverse, button.btn-reverse,
.button.btn-reverse,
.hs-button.btn-reverse {
  background: var(--primary);
  border: 5px solid var(--secondary);
  color: var(--white);

}
.btn.btn-reverse:hover, button.btn-reverse:hover,
.button.btn-reverse:hover,
.hs-button.btn-reverse:hover {
  background: var(--secondary);
  border: 5px solid var(--secondary);
  color: var(--white);

}
.btn.btn-transparent, button.btn-transparent,
.button.btn-transparent,
.hs-button.btn-transparent {
  background: transparent;
  border: 0;
  padding: calc(0.75rem + 5px) calc(1.5rem + 5px);
  color: var(--white);
  display: flex;
  align-items: center;
  gap:.75rem;
}
.btn.btn-transparent:hover, button.btn-transparent:hover,
.button.btn-transparent:hover,
.hs-button.btn-transparent:hover {
  background: transparent;
  border: 0;
  padding: calc(0.75rem + 5px) calc(1.5rem + 5px);
  color: var(--blue-light);
}
:is(.btn.btn-transparent, button.btn-transparent, .button.btn-transparent, .hs-button.btn-transparent) svg{
  height:16px;
  transform:translateY(1px);
}
:is(.btn.btn-transparent, button.btn-transparent, .button.btn-transparent, .hs-button.btn-transparent) svg path {
  fill:var(--primary);
}
:is(.btn.btn-transparent:hover, button.btn-transparent:hover, .button.btn-transparent:hover, .hs-button.btn-transparent:hover) svg path {
  fill:var(--blue);
}

.btn.btn-transparent.arrow:after, button.btn-transparent.arrow:after,
.button.btn-transparent.arrow:after,
.hs-button.btn-transparent.arrow:after {
  content: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2IiBmaWxsPSJub25lIj4KPHBhdGggZD0iTTEgOEgxNU0xNSA4TDggMU0xNSA4TDggMTUiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS13aWR0aD0iMS42NjY2NyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPg==");
  width:16px;
  height:16px;
}

.btn.btn-transparent.arrow:hover:after, button.btn-transparent.arrow:hover:after,
.button.btn-transparent.arrow:hover:after,
.hs-button.btn-transparent.arrow:hover:after {
  content: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2IiBmaWxsPSJub25lIj4KPHBhdGggZD0iTTEgOEgxNU0xNSA4TDggMU0xNSA4TDggMTUiIHN0cm9rZT0iIzg2QzFFOSIgc3Ryb2tlLXdpZHRoPSIxLjY2NjY3IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9zdmc+");
}

.btn.btn-transparent.login, button.btn-transparent.login,
.button.btn-transparent.login, .hs-button.btn-transparent.login {
  gap:.5rem;
}

.btn.btn-transparent.login:before, button.btn-transparent.login:before,
.button.btn-transparent.login:before,
.hs-button.btn-transparent.login:before {
  content: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none'><path d='M5.3163 19.4384C5.92462 18.0052 7.34492 17 9 17H15C16.6551 17 18.0754 18.0052 18.6837 19.4384M16 9.5C16 11.7091 14.2091 13.5 12 13.5C9.79086 13.5 8 11.7091 8 9.5C8 7.29086 9.79086 5.5 12 5.5C14.2091 5.5 16 7.29086 16 9.5ZM22 12C22 17.5228 17.5228 22 12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12Z' stroke='%230075EB' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'></path></svg>");
  width:16px;
  height:16px;
} 

.btn.btn-transparent.login:active, button.btn-transparent.login:active,
.button.btn-transparent.login:active, .hs-button.btn-transparent.login:active, .btn.btn-transparent.login:focus, button.btn-transparent.login:focus,
.button.btn-transparent.login:focus, .hs-button.btn-transparent.login:focus {
  padding: calc(0.75rem + 5px) calc(1.5rem + 5px);
  border:0;
  background: transparent;
}

.remove-btn-style {
  background: none !important;
  border: none !important;
  color: var(--primary) !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  font-family: "Open Sans" !important;
  text-transform: none !important;
  padding: 0 !important;
}
/* Fields */

.hs-form-field {
  margin-bottom: 1.4rem;
}

/* Labels */

form label {
  display: block;
  font-size: 1rem;
  margin-bottom: 0.35rem;
  font-weight:600;
}

/* Form Title */
.form-title {
  margin-bottom: 0;
}

/* Help text */

form legend {
  font-size: 0.875rem;
}

/* Inputs */

form input[type=text],
form input[type=search],
form input[type=email],
form input[type=password],
form input[type=tel],
form input[type=number],
form input[type=file],
form select,
form textarea {
  display: inline-block;
  font-size: 0.875rem;
  padding: 0.7rem;
  width: 100%;
}

form textarea {
  resize: vertical;
}

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

/* Inputs - checkbox/radio */

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

form .inputs-list > li {
  display: block;
  margin: 0.7rem 0;
}

form .inputs-list input,
form .inputs-list span {
  vertical-align: middle;
}

form input[type=checkbox],
form input[type=radio] {
  cursor: pointer;
  margin-right: 0.35rem;
}

/* Inputs - date picker */

.hs-dateinput {
  position: relative;
}

.hs-dateinput:before {
  content:'\01F4C5';
  position: absolute;
  right: 10%;
  top: 50%;
  transform: translateY(-50%);
}

.fn-date-picker .pika-table thead th {
  color: #FFF;
}

.fn-date-picker td.is-selected .pika-button {
  border-radius: 0;
  box-shadow: none;
}

.fn-date-picker td .pika-button:hover,
.fn-date-picker td .pika-button:focus {
  border-radius: 0 !important;
  color: #FFF;
}

/* Inputs - file picker */

form input[type=file] {
  background-color: transparent;
  border: initial;
  padding: initial;
}

/* Headings and text */

form .hs-richtext,
form .hs-richtext p {
  font-size: 0.875rem;
  margin: 0 0 1.4rem;
}

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

/* GDPR */

.legal-consent-container .hs-form-checkbox-display > span,
.legal-consent-container .hs-form-checkbox-display > span p {
  margin-left: 1rem !important;
}

/* Validation */

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

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

.hs-error-msg {
  color: #EF6B51;
  margin-top: 0.35rem;
}

/* Submit button */

form input[type=submit],
form .hs-button {
  cursor: pointer;
  display: inline-block;
  text-align: center;
  transition: all 0.15s linear;
  white-space: normal;
}

/* Captcha */

.grecaptcha-badge {
  margin: 0 auto;
}


  /* Search button input field and suggestions */
  .body-container-wrapper .hs-search-field__button {
    padding: 15px;
  }

  .body-container-wrapper .hs-search-field__bar--button-inline .hs-search-field__button {
    margin-left: 6px;
    margin-bottom: 0;
  }

  .body-container-wrapper .hs-search-field__button svg {
    height: 15px;
    fill: #fff;
  }

  .body-container-wrapper .hs-search-field__bar > form > .hs-search-field__input {
    padding: 10px;
  }

  .body-container-wrapper .hs-search-field__suggestions li a {
    color: #494A52;
    padding: 0.35rem 0.7rem;
    text-decoration: none;
    transition: background-color 0.3s;
  }




form {
  font-size: 16px;
  /* background-color: transparent; */
}
form input:not(.hs-button), form select {
  width: 100%;
  /* padding: 12px 18px; */
}
form fieldset {
  max-width: 100%;
}
form fieldset.form-columns-1 .hs-input {
  width: 100% !important;
}
form ul.hs-error-msgs {
  padding-left: 0;
  list-style-type: none;
  font-size: 0.625rem;
  color: red;
}
form .inputs-list {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:.25rem;
  margin-top:1rem;
}
form .inputs-list .hs-form-checkbox {
  margin:0;
}
form .inputs-list .hs-form-checkbox label {
  display:flex;
  align-items: flex-start;
  font-weight:400;
}
form .inputs-list .hs-form-checkbox label input {
  width:auto !important;
  margin-right:0;
  transform:translateY(5px);
}
form .inputs-list .hs-form-checkbox label span {
  margin-left:.5rem !important;
}
/* form input.hs-button {
  color: var(--white);
  border: 1px solid var(--blue);
  padding: 1rem 1.5rem;
  font-size: 1rem;
}
form input.hs-button:hover {
  background-color: var(--orange);
  border: 1px solid var(--orange);
} */
/* Table */

table {
  border-collapse: collapse;
  margin-bottom: 1.4rem;
  overflow-wrap: break-word;
}

/* Table cells */

td,
th {
  vertical-align: top;
}

/* Table header */

thead th {
  vertical-align: bottom;
}
.heading-break {
    display:block;
    border-bottom:3px solid var(--orange);
    max-width:275px;
    margin-inline:unset;
    margin-bottom: 1.4rem ;
    width: 100%;
    width:100%;
}
.inline-list {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0 1rem;
    /* margin-left: 0; */
    transform: translateX(1.5rem);
    padding-left: 0;
    line-height: .75;
}
.inline-list li {
    list-style-type: disc;
    white-space: nowrap;
    margin-right: 1rem;
    margin-bottom: 1rem;
}


ul.checklist, .linklist {
    list-style-type: none;
    padding-left: 0;
    margin-top:0;
} 
ul.checklist li, ul.linklist li {
    display: flex;
    align-items: flex-start;
    /* padding-left: 20px; */
    margin-bottom:.75rem;
}
ul.checklist li:before {
    content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M7.5 12L10.5 15L16.5 9M22 12C22 17.5228 17.5228 22 12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12Z" stroke="%237A99AC" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/></svg>');
    display: inline-block;
    width:25px;
    height:25px;
    margin-right:.5rem;
}
ul.linklist li:before {
  content: url('data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNSIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI1IDI0IiBmaWxsPSJub25lIj48cGF0aCBkPSJNMTAuNTkzIDEzQzExLjAyMjUgMTMuNTc0MSAxMS41NzA0IDE0LjA0OTEgMTIuMTk5NiAxNC4zOTI5QzEyLjgyODggMTQuNzM2NyAxMy41MjQ1IDE0Ljk0MTEgMTQuMjM5NyAxNC45OTIzQzE0Ljk1NDggMTUuMDQzNSAxNS42NzI2IDE0Ljk0MDMgMTYuMzQ0NCAxNC42ODk3QzE3LjAxNjEgMTQuNDM5MiAxNy42MjYxIDE0LjA0NzAgMTguMTMzIDEzLjU0TDIxLjEzMyAxMC41NEMyMi4wNDM4IDkuNTk2OTUgMjIuNTQ3OCA4LjMzMzk0IDIyLjUzNjQgNy4wMjI5NkMyMi41MjUyIDUuNzExOTggMjEuOTk5MiA0LjQ1NzkxIDIxLjA3MjEgMy41MzA4N0MyMC4xNDUgMi42MDM4MyAxOC44OTEgMi4wNzc5OSAxNy41OCAyLjA2NjZDMTYuMjY5IDIgMTUuMDA2IDIuNTU5MTggMTQuMDYzIDMuNDY5OTdMMTIuMzQzIDUuMTc5OTdNMTQuNTkzIDExQzE0LjE2MzYgMTAuNDI1OCAxMy42MTU3IDkuOTUwNzggMTIuOTg2NSA5LjYwNzAzQzEyLjM1NzMgOS4yNjMyNyAxMS42NjE1IDkuMDU4ODUgMTAuOTQ2NCA5LjAwNzYzQzEwLjIzMTIgOC45NTY0MSA5LjUxMzQzIDkuMDU5NiA4Ljg0MTY3IDkuMzEwMThDOC4xNjk5MSA5LjU2MDc3IDcuNTU5OSA5LjkyOTAgNy4wNTMwMiAxMC40NjBMNC4wNTMwMiAxMy40NkMzLjE0MjIzIDE0LjQwMyAyLjYzODI2IDE1LjY2NiAyLjY0OTY1IDE2Ljk3N0MyLjY2MTA0IDE4LjI4OCAzLjE4Njg5IDE5LjU0MiA0LjExMzkzIDIwLjQ2OTEzQzUuMDQwOTcgMjEuMzk2MSA2LjI5NTAzIDIxLjkyMTkgNy42MDYwMSAyMS45MzMzQzguOTE3IDIxLjk0NDcgMTAuMTggMjEuNDQwOCAxMS4xMjMgMjAuNTNMMTIuODMzIDE4LjgyIiBzdHJva2U9IiMwMEFERUYiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+PC9zdmc+');
    display: inline-block;
    width:25px;
    height:25px;
    margin-right:.5rem;
}


ol {
  padding-left:0;
  margin-left:1rem;
}
ol li {
  margin-bottom:.5rem;
}

/* Components
Specific pieces of UI that are stylized. Typically used for global partial styling
*/

:root {
  --container-width-nav: 1400px;
}

div:not(.body-wrapper):has(.header-primary) {
  position: sticky;
  top: 0;
  z-index: 9999;
}

.header-primary {
  position: relative;
  --header-height: auto;
}

.navbar-logo > span {
  display: flex;
  flex-direction: column;
}

.navbar {
  background: var(--white);
  position: relative;
  padding: 1rem 0;

  .navbar-wrapper {
    display: flex;
    flex-wrap: nowrap;
    max-width: var(--container-width-nav);
    margin: 0 auto;
    padding-inline: 1rem;
    align-items: center;

    @media (min-width: 1200px) {
      justify-content: space-between;
      flex-direction: row;
      flex-wrap: unset;
      gap: 2rem;
    }

    .navbar-logo {
      width: 125px;
      min-width: 125px;

      @media (min-width: 400px) { width: 150px; }
      @media (min-width: 500px) { width: 100%; max-width: 200px; }

      img { width: 100% !important; }
    }

    .nav-btn-wrap {
      margin-left: auto;

      @media (max-width: 575px) {
        .btn-wrap:last-of-type > div:first-of-type { display: none; }
      }

      .btn-wrap .btn {
        font-size: 1rem;

        &.btn-transparent {
          text-transform: unset;
          color: var(--primary);

          &:hover { color: var(--secondary); }
        }
      }
    }
  }

  .menu-toggle {
    display: flex;
    flex-direction: column;
    background: none;
    border: none;
    font-size: 1.5em;
    cursor: pointer;
    color: var(--white);
    padding: 1rem;
    width: auto;

    @media (min-width: 1200px) { display: none; }
  }

  .nav-wrap {
    flex-basis: 100%;
    flex-direction: column;
    background: var(--blue-dark);
    height: calc(100vh - 75px);
    max-width: 100% !important;
    overflow-y: scroll;
    padding: 0;
    position: absolute;
    right: -100%;
    top: 100%;
    transition: all 0.4s linear;
    z-index: 9999;
    display: flex;
    width: 0;

    &.show {
      width: 100%;
      display: flex;
      right: 0;
    }

    @media (min-width: 1200px) {
      display: flex;
      flex-basis: auto;
      flex-grow: 1;
      flex-direction: row;
      column-gap: 2rem;
      width: auto;
      position: unset;
      height: auto;
      background: unset;
      padding: 0;
      inset: unset;
      margin-top: 0;
      overflow-y: unset;
    }

    .close-btn {
      padding-inline: 10px;
      display: flex;
      justify-content: end;

      @media (min-width: 1200px) { display: none; }

      svg {
        width: 1.5rem;
        height: auto;
        fill: var(--blue-dark);
      }
    }
  }

  .nav-btn-wrap .btn-wrap .hs-cta-wrapper:first-of-type {
    @media (max-width: 599px) { display: none; }
  }

  #nav {
    list-style: none;
    padding: 0;
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: 0;
    justify-content: flex-start;

    @media (min-width: 1200px) {
      flex-direction: row;
      column-gap: 1rem;
      align-items: center;
      justify-content: center;
      flex-grow: 1;
    }

    .menu-item {
      &.mobile-only {
        @media (min-width: 600px) { display: none; }
      }

      .menu-link {
        display: flex;
        align-items: center;
        justify-content: space-between;
        font-weight: 500;
        border-bottom: 1px solid var(--white);
        font-size: 1rem;
        padding: 1rem;
        background: var(--blue-dark);
        color: var(--white);
        text-decoration: none;
        position: relative;

        @media (min-width: 1200px) {
          color: var(--primary);
          background: none;
          padding: 0.5rem;
          justify-content: center;
          border-bottom: none;

          &:hover { color: var(--secondary); }
        }

        &.dropdown:after {
          content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="13" height="8" viewBox="0 0 13 8" fill="none"><path d="M1.5 1.5L6.5 6.5L11.5 1.5" stroke="%23000000" stroke-width="1.66667" stroke-linecap="round" stroke-linejoin="round"></path></svg>');
          display: block;
          width: 12px;
          margin-left: 0.5rem;
          filter: invert(1);

          @media (min-width: 1200px) { filter: unset; }
        }
      }

      .sub-menu {
        overflow: hidden;
        background: var(--white);
        width: 100%;
        display: none;
        position: relative;
        z-index: 10000;

        @media (min-width: 1200px) {
          position: absolute;
          z-index: 99;
          top: 100%;
          left: 0;
          right: 0;
          box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
          max-height: calc(100vh - (51% + 88px));

          &:has(.grid-cols-2-1) {
            background: linear-gradient(to right, var(--white) 50%, var(--blue-light) 50% 100%);
          }
        }

        &.basic {
          @media (min-width: 1200px) {
            width: auto;
            border-radius: 0.5rem;
          }

          ul[role=menu] {
            display: flex;
            flex-direction: column;
            gap: 0.5rem;

            @media (min-width: 1200px) { padding: 1rem; }

            li a {
              padding: 0.75rem 1rem;
              display: block;
              font-weight: 600;

              &:hover {
                background: var(--blue-dark);
                color: var(--white);
              }

              @media (min-width: 1200px) {
                padding: 0.5rem 1rem;
                border-left: 3px solid transparent;
                border-right: 3px solid transparent;

                &:hover {
                  background: unset;
                  color: unset;
                  border-left-color: var(--blue);
                }
              }
            }
          }
        }

        .content-wrapper {
          max-width: var(--container-width-nav);
          margin: 0 auto;
          padding-block: 3rem;

          @media (min-width: 1200px) {
            &:has(.grid-cols-2-1) {
              background: linear-gradient(to right, var(--white) 66%, var(--blue-light) 66% 100%);
            }
          }

          .dropdown-heading {
            padding-inline: 0.5rem;
            margin-bottom: 1rem;
            font-size: 1.125rem !important;
            font-weight: 600;
            color: var(--blue-dark);

            a {
              display: flex;
              align-items: center;
              gap: 0.5rem;
              font-size: inherit;
              font-weight: inherit;
              color: var(--primary);

              &:hover {
                color: var(--secondary);

                svg path { stroke: var(--secondary); }
              }
            }
          }

          .sub-menu-grid {
            display: grid;
            grid-template-columns: 1fr;
            grid-gap: 1.25rem;
            border-radius: 0.5rem;

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

            @media (min-width: 1200px) {
              grid-gap: 1rem;

              &.grid-cols-custom { grid-template-columns: 40% 1fr; }
              &.grid-cols-2 { grid-template-columns: repeat(2, 1fr); }
              &.grid-cols-3 { grid-template-columns: repeat(3, 1fr); }
              &.grid-cols-4 { grid-template-columns: repeat(4, 1fr); }
              &.grid-cols-5 { grid-template-columns: repeat(5, 1fr); }

              &.grid-cols-2-1 {
                grid-template-columns: repeat(3, 1fr);
                gap: 3rem;

                .sub-menu-col:first-of-type { grid-column: span 2; }
              }
            }

            .sub-menu-col {
              &:has(.vertical) {
                border: unset;
                padding: unset;
              }

              ul[role=menu] {
                display: flex;
                flex-direction: column;
                gap: 1rem;

                li {
                  display: flex;
                  width: 100%;

                  a {
                    border: 1px solid var(--blue);
                    border-radius: 0.5rem;
                    padding: 0.75rem 1rem;
                    width: 100%;
                  }
                }
              }
            }

            .menu-item-desc {
              font-size: 0.875rem;
              color: var(--grey-medium);
            }

            &.grid-cols-custom {
              .image-wrap {
                display: flex;
                justify-content: center;
              }

              .menu-wrap {
                ul { list-style-type: none; padding-left: 0; }

                > div > ul {
                  display: flex;
                  flex-direction: column;
                  gap: 1rem;

                  @media (min-width: 400px) {
                    display: grid;
                    grid-template-columns: repeat(2, 1fr);
                  }

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

                  > li {
                    > a {
                      color: var(--supplemental);
                      font-weight: 500;

                      &:hover { color: var(--primary); }
                    }

                    > ul {
                      display: flex;
                      flex-direction: column;

                      li a {
                        color: var(--grey-medium);
                        font-size: 0.875rem;
                        white-space: nowrap;

                        &:hover { color: var(--primary); }
                      }
                    }
                  }
                }
              }
            }
          }

          .h3 {
            margin-bottom: 1.5rem;
            line-height: 1.5;
            font-size: 1.25rem !important;
            font-weight: 600;
            color: var(--blue-dark);

            a {
              color: inherit;
              font-weight: 600;
              text-decoration: none;

              &:hover { color: var(--blue); }
            }
          }

          h4 { color: var(--supplemental); font-size: 1rem; }
          p { color: var(--grey-medium); }

          .icon-menu-list {
            padding-left: 0;
            display: flex;
            flex-direction: column;
            gap: 1.5rem;

            @media (min-width: 1200px) {
              &:not(:has(.menu-item-desc)) { gap: 2.25rem; }
              &.vertical { margin-top: 3.375rem; }

              &[class^=grid-columns-],
              &[class*=" grid-columns-"] { display: grid; }

              &.grid-columns-2 { grid-template-columns: repeat(2, 1fr); }
              &.grid-columns-3 { grid-template-columns: repeat(3, 1fr); }
              &.grid-columns-4 { grid-template-columns: repeat(4, 1fr); }
              &.grid-columns-5 { grid-template-columns: repeat(5, 1fr); }
            }

            li {
              display: flex;
              align-items: flex-start;
              gap: 0.75rem;
              position: relative;

              .link-content { position: inherit; }

              a {
                color: var(--primary);
                font-weight: 700;
                text-decoration: none;
                font-family: var(--font-heading);
              }

              .menu-item-desc {
                color: var(--grey-medium);
                font-size: 0.875rem;
              }

              > .hs_cos_wrapper {
                margin-right: 10px;
                min-width: 20px;
              }

              &:has(.menu-item-desc) .svg-icon {
                border-radius: 0.5rem;
                position: inherit;
                display: flex;
                align-items: center;
                justify-content: center;
              }

              svg {
                width: 24px;
                min-width: 24px;
                height: auto;
                position: inherit;
              }

              &:not(:has(.menu-item-desc)) {
                display: flex;
                width: 100%;
                align-items: center;

                @media (min-width: 1200px) { gap: 3rem; }

                a { width: 100%; }
                .svg-icon { display: flex; }
              }
            }
          }

          .nav-posts {
            display: flex;
            align-items: center;
            gap: 1rem;
            margin-bottom: 1rem;

            .post-image {
              max-width: 140px;
              aspect-ratio: 16/9;
              border-radius: 0.375rem;
              overflow: hidden;
            }

            .post-body h4 {
              font-size: 1rem;
              margin-bottom: 0;

              a { color: var(--black); }
            }
          }

          :is(.content-card .card-footer a, .button-wrap a) {
            color: var(--blue);
            display: flex;
            gap: 0.5rem;
            font-size: 1rem;
            font-weight: 500;

            &:after {
              content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path d="M3.33789 7C5.06694 4.01099 8.29866 2 12.0001 2C17.5229 2 22.0001 6.47715 22.0001 12C22.0001 17.5228 17.5229 22 12.0001 22C8.29866 22 5.06694 19.989 3.33789 17M12 16L16 12M16 12L12 8M16 12H2" stroke="%23094FA3" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path></svg>');
              display: block;
              width: 10px;
            }
          }
        }
      }
    }
  }
}
/* Menu and simple menu */

.hs-menu-wrapper ul {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding-left: 0;
}

/* Horizontal menu */

.hs-menu-wrapper.hs-menu-flow-horizontal .hs-menu-children-wrapper {
  flex-direction: column;
}

@media (max-width: 767px) {
  .hs-menu-wrapper.hs-menu-flow-horizontal ul {
    flex-direction: column;
  }
}

/* Vertical menu */

.hs-menu-wrapper.hs-menu-flow-vertical ul {
  flex-direction: column;
}

/* Flyouts */

.hs-menu-wrapper.hs-menu-flow-vertical.flyouts ul {
  display: inline-flex;
}

@media (max-width: 767px) {
  .hs-menu-wrapper.hs-menu-flow-vertical ul {
    display: flex;
  }
}

.hs-menu-wrapper.flyouts .hs-item-has-children {
  position: relative;
}

.hs-menu-wrapper.flyouts .hs-menu-children-wrapper {
  left: -9999px;
  opacity: 0;
  position: absolute;
}

.hs-menu-wrapper.flyouts .hs-menu-children-wrapper a {
  display: block;
  white-space: nowrap;
}

.hs-menu-wrapper.hs-menu-flow-horizontal.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper {
  left: 0;
  opacity: 1;
  top: 100%;
}

.hs-menu-wrapper.hs-menu-flow-vertical.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper {
  left: 100%;
  opacity: 1;
  top: 0;
}

@media (max-width: 767px) {
  .hs-menu-wrapper.flyouts .hs-menu-children-wrapper,
  .hs-menu-wrapper.hs-menu-flow-horizontal.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper,
  .hs-menu-wrapper.hs-menu-flow-vertical.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper {
    left: 0;
    opacity: 1;
    position: relative;
    top: auto;
  }
}

/* CTA, logo, and rich text images */

.hs_cos_wrapper_type_cta img,
.hs_cos_wrapper_type_logo img,
.hs_cos_wrapper_type_rich_text img {
  height: auto;
  max-width: 100%;
}
.google-maps {
  position: relative;
  padding-bottom: 75%;
  height: 0;
  overflow: hidden;
}

.google-maps iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100% !important;
  height: 100% !important;
}

.hs-responsive-embed-wrapper.hs-responsive-embed {
  max-width: 100% !important;
  max-height: 100% !important;
  /* min-width: 256px; */
  margin: 0px auto;
  display: block;
}
@media (min-width: 992px) {
  .hs-responsive-embed-wrapper.hs-responsive-embed .hs-responsive-embed-inner-wrapper {
    padding-bottom: 33% !important;
  }
}
.card-post {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  max-width:480px;
  margin-inline:auto;
  border-radius: 1rem;
  overflow: hidden;
  box-shadow: 0 6px 6px 0 rgba(0, 32, 91, .13);
}
.card-post .card-header {
  max-width: 100%;
  aspect-ratio: 16/9;

  text-align: center;
  overflow: hidden;
}
.card-post .card-header a {
  display: block;
  aspect-ratio: 16/9;
}
.card-post .card-header a img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.card-post .card-header a img.img-cover {
  object-fit: cover;
}
.card-post .card-body {
  padding:0 2rem 0;
}
.card-post .card-body .blog-post-tag{
  font-size: .875rem;
  font-weight: 500;
  color: var(--blue);
  padding: 0.25rem 0.5rem;
  border-radius: 0.25rem;
  background: var(--white);
  border: 1px solid var(--blue);
  margin-bottom: .5rem;
  display: inline-flex;
} 
.card-post .card-body h3 {
  line-height: .875;
}
.card-post .card-body h3 a {
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--primary);
  text-decoration: none;
}
.card-post .card-footer  {
  margin-top: auto;
  padding:0 2rem 1.5rem;
  a {
    font-size: 1rem;
  }
}
.card-post .card-footer .post-listing-link {
  font-family: var(--font-heading);
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  text-decoration:none;
  color: var(--secondary);
}

/* Utilities
Helper classes with ability to override anything that comes before it
*/

/* For content that needs to be visually hidden but stay visible for screenreaders */

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

@media (max-width: 767px) {
  .show-for-sr--mobile {
    border: 0 !important;
    clip: rect(0, 0, 0, 0) !important;
    height: 1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    white-space: nowrap !important;
    width: 1px !important;
  }
}