/* Theme base styles 
This file should only import styles that are essential for the global layout of the website.
These should be placed inside the global folder.
*/

/* 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;
}

.hs_cos_wrapper_type_icon{
  line-height: 0; 
}
/*! 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 */
  scrollbar-gutter: stable;
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
  overflow-x: hidden;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 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 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  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;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}

/* Objects
Non-cosmetic design patterns including grid and layout classes)
*/

/* Responsive Grid */

.row-fluid {
  width: 100%;
  *zoom: 1;
}

.row-fluid:before, .row-fluid:after {
  display: table;
  content: "";
}

.row-fluid:after {
  clear: both;
}

.row-fluid [class*="span"] {
  display: block;
  float: left;
  width: 100%;
  margin-left: 2.127659574%;
  *margin-left: 2.0744680846382977%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

.row-fluid [class*="span"]:first-child {
  margin-left: 0;
}

.row-fluid .span12 {
  width: 99.99999998999999%;
  *width: 99.94680850063828%;
}

.row-fluid .span11 {
  width: 91.489361693%;
  *width: 91.4361702036383%;
}

.row-fluid .span10 {
  width: 82.97872339599999%;
  *width: 82.92553190663828%;
}

.row-fluid .span9 {
  width: 74.468085099%;
  *width: 74.4148936096383%;
}

.row-fluid .span8 {
  width: 65.95744680199999%;
  *width: 65.90425531263828%;
}

.row-fluid .span7 {
  width: 57.446808505%;
  *width: 57.3936170156383%;
}

.row-fluid .span6 {
  width: 48.93617020799999%;
  *width: 48.88297871863829%;
}

.row-fluid .span5 {
  width: 40.425531911%;
  *width: 40.3723404216383%;
}

.row-fluid .span4 {
  width: 31.914893614%;
  *width: 31.8617021246383%;
}

.row-fluid .span3 {
  width: 23.404255317%;
  *width: 23.3510638276383%;
}

.row-fluid .span2 {
  width: 14.89361702%;
  *width: 14.8404255306383%;
}

.row-fluid .span1 {
  width: 6.382978723%;
  *width: 6.329787233638298%;
}

.container-fluid {
  *zoom: 1;
}

.container-fluid:before, .container-fluid:after {
  display: table;
  content: "";
}

.container-fluid:after {
  clear: both;
}

@media (max-width: 767px) {
  .row-fluid {
    width: 100%;
  }

  .row-fluid [class*="span"] {
    display: block;
    float: none;
    width: auto;
    margin-left: 0;
  }
}

@media (min-width: 768px) and (max-width: 1139px) {
  .row-fluid {
    width: 100%;
    *zoom: 1;
  }

  .row-fluid:before, .row-fluid:after {
    display: table;
    content: "";
  }

  .row-fluid:after {
    clear: both;
  }

  .row-fluid [class*="span"] {
    display: block;
    float: left;
    width: 100%;
    margin-left: 2.762430939%;
    *margin-left: 2.709239449638298%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }

  .row-fluid [class*="span"]:first-child {
    margin-left: 0;
  }

  .row-fluid .span12 {
    width: 99.999999993%;
    *width: 99.9468085036383%;
  }

  .row-fluid .span11 {
    width: 91.436464082%;
    *width: 91.38327259263829%;
  }

  .row-fluid .span10 {
    width: 82.87292817100001%;
    *width: 82.8197366816383%;
  }

  .row-fluid .span9 {
    width: 74.30939226%;
    *width: 74.25620077063829%;
  }

  .row-fluid .span8 {
    width: 65.74585634900001%;
    *width: 65.6926648596383%;
  }

  .row-fluid .span7 {
    width: 57.182320438000005%;
    *width: 57.129128948638304%;
  }

  .row-fluid .span6 {
    width: 48.618784527%;
    *width: 48.5655930376383%;
  }

  .row-fluid .span5 {
    width: 40.055248616%;
    *width: 40.0020571266383%;
  }

  .row-fluid .span4 {
    width: 31.491712705%;
    *width: 31.4385212156383%;
  }

  .row-fluid .span3 {
    width: 22.928176794%;
    *width: 22.874985304638297%;
  }

  .row-fluid .span2 {
    width: 14.364640883%;
    *width: 14.311449393638298%;
  }

  .row-fluid .span1 {
    width: 5.801104972%;
    *width: 5.747913482638298%;
  }
}

@media (min-width: 1280px) {
  .row-fluid {
    width: 100%;
    *zoom: 1;
  }

  .row-fluid:before, .row-fluid:after {
    display: table;
    content: "";
  }

  .row-fluid:after {
    clear: both;
  }

  .row-fluid [class*="span"] {
    display: block;
    float: left;
    width: 100%;
    margin-left: 2.564102564%;
    *margin-left: 2.510911074638298%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
  }

  .row-fluid [class*="span"]:first-child {
    margin-left: 0;
  }

  .row-fluid .span12 {
    width: 100%;
    *width: 99.94680851063829%;
  }

  .row-fluid .span11 {
    width: 91.45299145300001%;
    *width: 91.3997999636383%;
  }

  .row-fluid .span10 {
    width: 82.905982906%;
    *width: 82.8527914166383%;
  }

  .row-fluid .span9 {
    width: 74.358974359%;
    *width: 74.30578286963829%;
  }

  .row-fluid .span8 {
    width: 65.81196581200001%;
    *width: 65.7587743226383%;
  }

  .row-fluid .span7 {
    width: 57.264957265%;
    *width: 57.2117657756383%;
  }

  .row-fluid .span6 {
    width: 48.717948718%;
    *width: 48.6647572286383%;
  }

  .row-fluid .span5 {
    width: 40.170940171000005%;
    *width: 40.117748681638304%;
  }

  .row-fluid .span4 {
    width: 31.623931624%;
    *width: 31.5707401346383%;
  }

  .row-fluid .span3 {
    width: 23.076923077%;
    *width: 23.0237315876383%;
  }

  .row-fluid .span2 {
    width: 14.529914530000001%;
    *width: 14.4767230406383%;
  }

  .row-fluid .span1 {
    width: 5.982905983%;
    *width: 5.929714493638298%;
  }
}

/* Clearfix */

.clearfix {
  *zoom: 1;
}

.clearfix:before, .clearfix:after {
  display: table;
  content: "";
}

.clearfix:after {
  clear: both;
}

/* Visibilty Classes */

.hide {
  display: none;
}

.show {
  display: block;
}

.invisible {
  visibility: hidden;
}

.hidden {
  display: none;
  visibility: hidden;
}

.show-for-sr {
  position: absolute!important;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0,0,0,0);
  white-space: nowrap;
  border: 0;
}

/* Responsive Visibilty Classes */

.visible-phone {
  display: none !important;
}

.visible-tablet {
  display: none !important;
}

.hidden-desktop {
  display: none !important;
}

@media (max-width: 767px) {
  .visible-phone {
    display: inherit !important;
  }

  .hidden-phone {
    display: none !important;
  }

  .hidden-desktop {
    display: inherit !important;
  }

  .visible-desktop {
    display: none !important;
  }
}

@media (min-width: 768px) and (max-width: 1139px) {
  .visible-tablet {
    display: inherit !important;
  }

  .hidden-tablet {
    display: none !important;
  }

  .hidden-desktop {
    display: inherit !important;
  }

  .visible-desktop {
    display: none !important ;
  }
}
.o-wrapper {
	container-type: inline-size;
	container-name: o-wrapper;
	position: relative;
	padding: 0;
	margin: 0 auto;
	width: 100%;
	max-width: var(--containerWidth);
}

.o-wrapper--module {
	padding: var(--moduleTopSpacing) var(--moduleRightSpacing) var(--moduleBottomSpacing) var(--moduleLeftSpacing);
}

.o-row {
	margin-inline: auto;
	padding-left: var(--moduleLeftSpacing);
	padding-right: var(--moduleRightSpacing);
	max-width: var(--containerWidth);
}

html.hs-inline-edit .default-module {
	background-color: #fafafa;
	border: 1px dashed #d2d2d2;
	padding: 30px;
	text-align: center;
	font-size: 18px;
	font-weight: 900;
}

html:not(.hs-inline-edit) .default-module {
	display: none;
}

.dnd-section.collapse {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}

.dnd-section > .row-fluid {
	margin: 0 auto;
}

@media (max-width: 767px) {
	.dnd-section .dnd-column {
		padding: 0;
	}
}

/* Elements
Base HMTL elements are styled in this section (<body<, <h1>, <a>, <p>, <button> etc.)
*/

html {
    font-size: 100%; 
}

body {
    word-break: break-word;
	font-family: var(--fontBody);
    color: var(--text);
}

body.disable-scroll{
    overflow-y: hidden; 
}

html[lang^="ja"] body,
html[lang^="zh"] body,
html[lang^="ko"] body {
    line-break: strict;
    word-break: break-all;
}


@font-face {
	font-family: 'Caros Soft';
	src: url('https://6986386.fs1.hubspotusercontent-na1.net/hubfs/6986386/Fuelius/assets/fonts/carossoft-medium-webfont.woff2') format('woff2'),
		url('https://6986386.fs1.hubspotusercontent-na1.net/hubfs/6986386/Fuelius/assets/fonts/carossoft-medium-webfont.woff') format('woff');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Caros Soft';
	src: url('https://6986386.fs1.hubspotusercontent-na1.net/hubfs/6986386/Fuelius/assets/fonts/carossoft-webfont.woff2') format('woff2'),
		url('https://6986386.fs1.hubspotusercontent-na1.net/hubfs/6986386/Fuelius/assets/fonts/carossoft-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

/* Paragraphs */

p {
	margin-bottom: 1.563rem;
	margin-top: 0;
	line-height: var(--copyLineHeight);
}

/* Anchors */

a {
	cursor: pointer;
	text-decoration: none;
	color: var(--linkColour);
}

a:hover,
a:focus,
a:active{
	text-decoration: underline;
	color: var(--linkHoverColour);
}

html.hs-inline-edit a{
	pointer-events: none;
	user-select: none;
}

/* Headings */ 

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: 'Caros Soft';
	font-weight: normal;
	margin: 1.563rem 0;
}

h1, .h1 {
	















font-size: 51px;
font-size: 3.1875rem;






	line-height: 1.1;
}

h2, .h2 {
	















font-size: 38px;
font-size: 2.375rem;






	line-height: 1.2;
}

h3, .h3 {
	















font-size: 28px;
font-size: 1.75rem;






	line-height: 1.3;
}

h4, .h4 {
	















font-size: 20px;
font-size: 1.25rem;






	line-height: 1.35;
}

h5, .h5 {
	















font-size: 16px;
font-size: 1.0rem;






	font-weight: var(--fontMedium);
	line-height: 1.35;
}

h6, .h6 {
	















font-size: 16px;
font-size: 1.0rem;






	line-height: 1.2;
	text-transform: uppercase;
}

@media (min-width: 992px) {

	h1, .h1 {
		















font-size: 64px;
font-size: 4.0rem;






	}

	h2, .h2 {
		















font-size: 51px;
font-size: 3.1875rem;






		line-height: 1.1;
	}

	h3, .h3 {
		















font-size: 38px;
font-size: 2.375rem;






		line-height: 1.2;
	}

	h4, .h4 {
		















font-size: 28px;
font-size: 1.75rem;






		font-weight: var(--fontMedium);
		line-height: 1.3;
	}

	h5, .h5 {
		















font-size: 20px;
font-size: 1.25rem;






	}

	h6, .h6 {
		















font-size: 16px;
font-size: 1.0rem;






	}

}

/* Lists */

ul,
ol {
	margin: 0 0 1.4rem;
}

ul li,
ol li {
	line-height: 1.5;
}

ul ul,
ol ul,
ul ol,
ol ol {
	margin: 0;
}

ul.no-list {
	list-style: none;
}

/* Code blocks */

pre {
	overflow: auto;
}

code {
	vertical-align: bottom;
}

/* Blockquotes */

blockquote {
	margin: 0 0 1.4rem;
	padding-left: 30px;
	font-weight: bold;
	font-size: 1rem;
	line-height: 1.7;
}

blockquote p {
	font-size: 1rem;
	line-height: 1.7;
	font-weight: bold;
}

/* Horizontal rules */

hr {
	background-color: #CCC;
	border: none;
	color: #CCC;
	height: 1px;
}

/* Image alt text */

img {
	font-size: 14px;
	word-break: normal;
}

@media (min-width: 768px){
	blockquote,
	blockquote p{
		font-size: 1.4rem;
	}
}
@keyframes ripple {
	from {
		opacity: 1;
		transform: scale3d(0.75,0.75,1);
	}

	to {
		opacity: 0;
		transform: scale3d(1.5,1.5,1);
	}
}

.e-button,
.hs-button,
.cta_button,
input[type=submit]:not(.normalise) {

	--paddingBlock: 12px;
	--paddingInline: 26px;
	--borderRadius: 360px;
	--borderWidth: 1px;
	--shadowDepth: 5px;
	--ringsDuration: 1s;
	--ringsDelay: .15s;
	--ringsColour: transparent;

	position: relative;
	cursor: pointer;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: var(--paddingBlock) var(--paddingInline);
	border: 0;
	box-shadow: 0 0 0 var(--borderWidth) transparent;
	border-radius: var(--borderRadius);
	font-size: 1rem;
	text-align: center;
	white-space: normal;
	line-height: 1.5;
	transform: translateY(0);
	transition: background var(--transitionSpeed), border var(--transitionSpeed), box-shadow var(--transitionSpeed), transform var(--transitionSpeed);

}

.e-button:before,
.hs-button:before,
.cta_button:before {
	opacity: 0;
	position: absolute;
	top: calc(var(--paddingBlock) * -1);
	left: calc(var(--paddingInline) * -1);
	right: 0;
	bottom: 0;
	content: '';
	height: calc(100% + (var(--paddingBlock)*2));
	width: calc(100% + (var(--paddingInline)*2));
	border: var(--borderWidth) solid var(--ringsColour);
	border-radius: var(--borderRadius);
	z-index: -1;
}

.e-button:focus:before,
.hs-button:focus:before,
.cta_button:focus:before {
	animation-name: ripple;
	animation-duration: var(--ringsDuration);
	animation-delay: var(--ringsDelay);
	animation-iteration-count: infinite;
	animation-timing-function: cubic-bezier(.65,0,.34,1);
}

.e-button:hover,
.hs-button:hover,
.cta_button:hover,
input[type=submit]:hover,
.e-button:focus,
.hs-button:focus,
.cta_button:focus,
input[type=submit]:focus,
.e-button:active,
.hs-button:active,
.cta_button:active,
input[type=submit]:active {
	text-decoration: none;
	transform: translateY(calc(var(--shadowDepth) * -1));
}


.e-button__icon {
    margin-left: 12px;
	width: 14px;
	height: 14px;
	fill: var(--white);
}
/* Primary */

.e-button--primary {
	background-color: var(--lime70);
	box-shadow: 0 0 0 var(--borderWidth) var(--lime70);
	color: var(--green90);
}

.e-button--primary:hover {
	background-color: var(--lime30);
	box-shadow: 0 0 0 var(--borderWidth) var(--lime70), 0 var(--shadowDepth) 0 0 var(--lime70);
	color: var(--green90);
}

.e-button--primary:focus {
	--ringsColour: var(--lime70);
	background-color: var(--lime30);
	box-shadow: 0 0 0 var(--borderWidth) var(--lime70);
	color: var(--green90);
}

/* Secondary */

.e-button--secondary {
	background-color: var(--green80);
	box-shadow: 0 0 0 var(--borderWidth) var(--grey80);
	color: var(--white);
}

.e-button--secondary:hover {
	background-color: var(--green60);
	box-shadow: 0 0 0 var(--borderWidth) var(--green80), 0 var(--shadowDepth) 0 0 var(--green80);
	color: var(--white);
}

.e-button--secondary:focus {
	--ringsColour: var(--grey80);
	background-color: var(--green60);
	box-shadow: 0 0 0 var(--borderWidth) var(--green80);
	color: var(--white);
}

/* Outline */

.e-button--outline {
	background-color: var(--white);
	box-shadow: 0 0 0 var(--borderWidth) var(--grey40);
	color: var(--green90);
}

.e-button--outline:hover {
	background-color: var(--white);
	box-shadow: 0 0 0 var(--borderWidth) var(--green60), 0 var(--shadowDepth) 0 0 var(--green60);
	color: var(--green90);
}

.e-button--outline:focus {
	--ringsColour: var(--grey40);
	background-color: var(--white);
	box-shadow: 0 0 0 var(--borderWidth) var(--green80);
	color: var(--green90);
}

/* Icon button */

.e-icon_button {
	display: inline-flex;
	align-items: center;
}

.e-icon_button__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-left: 12px;
	width: 20px;
	height: 20px;
	background-color: var(--lime70);
	border-radius: 100%;
	transition: background var(--transitionSpeed);
}

.e-icon_button__icon--alternative {
	background-color: var(--green80);
}

.e-icon_button__icon--pre {
    margin: 0 12px 0 0;
}

.e-icon_button__icon--pre svg {
   transform: rotate(180deg);
}

.e-icon_button__icon svg {
	width: 10px;
	fill: var(--text);
}

.e-icon_button__icon--alternative svg {
	fill: var(--white);
}

.e-icon_button:hover .e-icon_button__icon {
	background-color: var(--green80);
}

.e-icon_button:hover svg {
	fill: var(--white);
}

.e-icon_button__icon svg {
	transition: fill var(--transitionSpeed);
}

/* Utilities */

.e-button--full {
	width: 100%;
	justify-content: center;
}


button:disabled,
.e-button:disabled,
.cta_button:disabled,
button[disabled],
.e-button[disabled],
.cta_button[disabled] {
	opacity: .5;
}

.hs-cta-button {
	display: inline-block; 
}
/* Form fields */

.hs-form-field {
	margin-bottom: 32px;
	display: flex;
	flex-direction: column;
}

.hs-form-field.hs-recaptcha {
	align-items: flex-start;
}

fieldset.form-columns-2 {
	display: grid;
	align-items: flex-start;
}

@media (min-width: 992px) {

	fieldset.form-columns-2 {
		gap: 0 15px;
		grid-template-columns: 1fr 1fr;
	}

	fieldset.form-columns-2 .hs-form-field {
		float: none!important;
		width: 100%!important;
	}

}

fieldset.form-columns-1 .hs-input{
	width: 100% !important; 
}

/* Labels */

form label:not(form li label) {
	display: block;
	margin-bottom: 10px;
	font-weight: bold;
}

/* Help text - legends */

form .hs-field-desc{
	display: block;
	margin: 10px 0;
	font-weight: lighter;
	opacity: 0.8;
	font-size: var(--fontSizeSmall);
}

/* Inputs */

form .input {
	margin: 0!important;
}

form input[type=text],
form input[type=email],
form input[type=password],
form input[type=tel],
form input[type=number],
form .input:has(input[type=file]),
form textarea {
	display: inline-block;
	width: 100%;
	height: var(--formInputHeight);
	padding: 15px;
	border: 1px solid var(--grey40);
	border-radius: 8px;
	outline: none;
	line-height: var(--copyLineHeight);
	transition: border var(--transitionSpeed);
}

form input[type=text]:focus,
form input[type=email]:focus,
form input[type=password]:focus,
form input[type=tel]:focus,
form input[type=number]:focus,
form input[type=file]:focus,
form select:focus,
form textarea:focus {
	border-color: var(--green60);
}

form input[type=file]{
	padding-left: 0 !important;
	padding-right: 0 !important;
}

input[type=file]::file-selector-button{
	cursor: pointer; 
	margin-right: 20px;
}

form textarea{
	min-height: 160px; 
}

form fieldset {
	max-width: 100% !important;
}

/* Inputs - checkbox/radio */

form .inputs-list {
	margin: 10px 0 0;
	padding: 0;
	list-style: none;
}

form .inputs-list > li {
	position: relative;
	display: block;
}

form .inputs-list > li + li {
	margin-top: 10px;
}

form .inputs-list input,
form .inputs-list span {
	vertical-align: middle;
}

form input[type=checkbox],
form input[type=radio] {
	cursor: pointer;
	margin-right: 15px;
	opacity: 0;
	position: absolute;
	width: 24px;
	height: 24px;
	z-index: 99;
}

form input[type=checkbox] ~ span:first-of-type,
form input[type=radio] ~ span:first-of-type {
	position: relative;
	display: flex !important;
	align-items: flex-start;
}

form input[type=checkbox] ~ span:first-of-type:before,
form input[type=radio] ~ span:first-of-type:before {
	content: '';
	background: var(--white);
	display: inline-block;
	vertical-align: middle;
	min-width: 24px;
	width: 24px;
	height: 24px;
	padding: 2px;
	border-radius: 8px;
	margin-right: 15px;
	text-align: center;
	border: 1px solid var(--grey40);
	transition: border var(--transitionSpeed);
}

form input[type=radio] ~ span:first-of-type:before {
	border-radius: 100%;
}

form input[type=checkbox]:checked ~ span:first-of-type:before,
form input[type=radio]:checked ~ span:first-of-type:before{
	background-color: var(--white);
	border-color: var(--green60);
	background-repeat: no-repeat;
	background-image: url("data:image/svg+xml,%3Csvg fill='%23006F60' xmlns='http://www.w3.org/2000/svg' height='1em' viewBox='0 0 448 512'%3E%3C!--! Font Awesome Free 6.4.2 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --%3E%3Cpath d='M438.6 105.4c12.5 12.5 12.5 32.8 0 45.3l-256 256c-12.5 12.5-32.8 12.5-45.3 0l-128-128c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0L160 338.7 393.4 105.4c12.5-12.5 32.8-12.5 45.3 0z'/%3E%3C/svg%3E");
	background-size: 14px;
	background-position: center;
}

form input[type=radio]:checked ~ span:first-of-type:before{
	background-image: none !important; 
}

form input[type=radio]:checked ~ span:first-of-type:after {
	content: '';
	top: 5px;
	left: 5px;
	position: absolute;
	height: 14px;
	width: 14px;
	border-radius: 50%;
	background-color: var(--green60);
}

.hs-form-checkbox,
.hs-form-radio {
	color: var(--grey60);
	transition: color var(--transitionSpeed);
}

.hs-form-checkbox:has(input[type=checkbox]:checked),
.hs-form-radio:has(input[type=radio]:checked) {
	color: var(--black);
}

form .multi-container{
	margin-top: 20px; 
}

/* Inputs - datepicker */

.hs-dateinput {
	position: relative;
}

.hs-dateinput:before {
	content:'';
	position: absolute;
	top: 50%;
	height: 24px;
	width: 24px;
	background-size: 24px 24px;
	right: 20px;
	transform: translateY(-50%);
}

.fn-date-picker .pika-table thead th {
	color: var(--white);
}

.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: var(--white);
}

/* Inputs - file picker */

form input[type=file] {
	background-color: transparent;
	border: initial;
	padding: initial;
	max-width: max-content;
}

form .input:has(input[type=file]) {
	padding: 50px; 
	text-align: center;
}

/* 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-booleancheckbox-display > span,
.legal-consent-container .hs-form-booleancheckbox-display > span p {
	margin-left: 0 !important;
	font-size: 0.875rem;
	line-height: var(--copyLineHeight);
}

/* Validation */

.hs-form-required {
	color: var(--error);
}

.hs-input.invalid.error {
	border-color: var(--error);
}

.hs-error-msg {
	margin: 10px 0 0;
	color: var(--error);
}

/* Submit button */

form input[type=submit],
form .hs-button {
	background-color: var(--lime70);
}

form input[type=submit]:hover, 
form input[type=submit]:focus, 
form .hs-button:hover, 
form .hs-button:focus{
	text-decoration: none;
}

form.hs-form .actions{
	display: flex;
	margin-top: 32px;
}

/* Captcha */

.grecaptcha-badge {
	margin: 0 auto;
}

.hubspot-link__container{
	display: none; 
} 
/* Table */

table {
  border: 1px solid;
  margin-bottom: 1.4rem;
  overflow-wrap: break-word;
}

/* Table Cells */

th,
td {
  border: 1px solid;
  padding: 0.75rem;
  vertical-align: top;
}

/* Table Header */

thead th,
thead td {
  border-bottom: 2px solid;
  vertical-align: bottom;
}
/* Missing Template at Path: \'donorfy\/css\/global\/elements\/_icons.css\' */
img{
    max-width: 100%;
    object-fit: cover;
}

.hs_cos_wrapper_type_linked_image{
    display: block;
    line-height: 0;
}
.m-tag,
.m-rte span[style*="text-decoration: underline"] {
	display: inline-block;
	padding: 8px 15px;
	background-color: var(--lime30);
	border-radius: 10px;
	border-bottom: 4px solid var(--lime70);
	font-family: var(--fontHeading);
	text-align: center;
	text-decoration: none!important; /* Override inline RTE style used as hook */
	line-height: 1.2;
}

.m-tag--subheading {
	margin-bottom: 15px;
    text-transform: uppercase;
}

.m-tag--blog {
	font-size: .875rem;
    text-transform: uppercase;
   text-align: left;
}

/* Components
Specific pieces of UI that are stylized. Typically used for global partial styling
*/

.m-site_header { 
	--actionsHeight: 42px;
	--ctasHeight: 80px;
	--mobileControlsSpacing: 15px;
	--actionBorderRadius: 6px;
	position: relative;
	z-index: 10;
	background: var(--white);
}

html.hs-inline-edit .m-site_header {
	position: relative;
}

.m-site_header__inner {
	display: flex;
	padding-left: var(--moduleLeftSpacing);
	padding-right: var(--moduleRightSpacing);
}

.m-site_header__inner--lower {
	align-items: center;
	background-color: var(--white);
}

.m-site_header__logo {
	max-width: 125px;
}

.m-site_header__navigationgroup {
	padding-left: 20px;
	margin-left: auto;
	display: flex;
	align-items: center;
}

.m-site_header__navigation {
	display: none;
	align-self: stretch; 
}

.m-site_header__navigation::-webkit-scrollbar {
	width: 6px;
}

.m-site_header__navigation::-webkit-scrollbar-track {
	box-shadow: none;
}

.m-site_header__navigation::-webkit-scrollbar-thumb {
	background-color: slategrey;
	outline: 0;
}

.m-site_header__toggle {
	height: 40px;
	width: 40px;
	background: none;
	border: none;
}

.m-site_header__toggle {
	content: '';
	padding: 0;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='12' viewBox='0 0 20 12' fill='none'%3E%3Cpath d='M0.911374 12C0.67044 12 0.458316 11.9146 0.275001 11.7437C0.0916669 11.5728 0 11.3741 0 11.1478C0 10.9214 0.0916669 10.7229 0.275001 10.5522C0.458316 10.3816 0.67044 10.2963 0.911374 10.2963H19.0886C19.3296 10.2963 19.5417 10.3817 19.725 10.5526C19.9083 10.7235 20 10.9221 20 11.1485C20 11.3749 19.9083 11.5734 19.725 11.744C19.5417 11.9147 19.3296 12 19.0886 12H0.911374ZM0.911374 6.85185C0.67044 6.85185 0.458316 6.76642 0.275001 6.59554C0.0916669 6.42465 0 6.22602 0 5.99965C0 5.77327 0.0916669 5.57475 0.275001 5.40411C0.458316 5.23347 0.67044 5.14815 0.911374 5.14815H19.0886C19.3296 5.14815 19.5417 5.23358 19.725 5.40446C19.9083 5.57535 20 5.77398 20 6.00035C20 6.22673 19.9083 6.42525 19.725 6.59589C19.5417 6.76653 19.3296 6.85185 19.0886 6.85185H0.911374ZM0.911374 1.70373C0.67044 1.70373 0.458316 1.61829 0.275001 1.4474C0.0916669 1.27652 0 1.07789 0 0.851506C0 0.625137 0.0916669 0.426631 0.275001 0.255989C0.458316 0.085329 0.67044 0 0.911374 0H19.0886C19.3296 0 19.5417 0.0854444 19.725 0.256335C19.9083 0.427226 20 0.625856 20 0.852226C20 1.07861 19.9083 1.27713 19.725 1.44777C19.5417 1.61841 19.3296 1.70373 19.0886 1.70373H0.911374Z' fill='%23142D24'/%3E%3C/svg%3E");
	background-size: 20px;
	background-repeat: no-repeat;
	background-position: center;
}

.m-site_header__toggle.active {
	background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cmask id='mask0_1259_5096' style='mask-type:alpha' maskUnits='userSpaceOnUse' x='0' y='0' width='20' height='20'%3E%3Crect width='20' height='20' fill='%23142D24'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_1259_5096)'%3E%3Cpath d='M9.9906 11.2517L4.49014 16.7521C4.31943 16.9228 4.11874 17.0054 3.88805 16.9997C3.65739 16.9941 3.45317 16.9024 3.2754 16.7246C3.09761 16.5468 3.00872 16.3398 3.00872 16.1035C3.00872 15.8672 3.09761 15.6601 3.2754 15.4823L8.74832 10.0094L3.24789 4.50894C3.07716 4.33823 2.99462 4.13295 3.00027 3.89309C3.0059 3.65325 3.09761 3.44445 3.2754 3.26668C3.45317 3.08889 3.66021 3 3.89653 3C4.13284 3 4.33989 3.08889 4.51765 3.26668L9.9906 8.76711L15.4911 3.26668C15.6618 3.09596 15.8671 3.00883 16.1069 3.00531C16.3467 3.00177 16.5556 3.08889 16.7333 3.26668C16.9111 3.44445 17 3.65149 17 3.88781C17 4.12412 16.9111 4.33117 16.7333 4.50894L11.2329 10.0094L16.7333 15.5099C16.904 15.6806 16.9912 15.8813 16.9947 16.1119C16.9982 16.3426 16.9111 16.5468 16.7333 16.7246C16.5556 16.9024 16.3485 16.9913 16.1122 16.9913C15.8759 16.9913 15.6688 16.9024 15.4911 16.7246L9.9906 11.2517Z' fill='%23142D24'/%3E%3C/g%3E%3C/svg%3E%0A");
}

.m-site_header__toggle > span:first-child {
	display: none; 
}

.m-site_header__cta--navigationmenu {
	margin: 10px 20px;
}

.m-site_header__ctas {
	display: flex;
	gap: 0 15px;
}

.m-site_header__cta {
	justify-content: center;
}

.m-site_header__actions {
	display: flex;
}

.m-site_header__action {
	display: flex;
	align-items: center;
	justify-content: center;
}

.m-site_header__actionicon {
	margin-right: 5px;
}

@media (max-width: 1199px){

	.m-site_header { 
		padding-block: 15px;
	}

	.navigation-active .m-site_header {
		border-bottom: 1px solid var(--grey40);
	}

	.m-site_header__inner {
		height: 100%;
	}

	.m-site_header__navigation {
		position: absolute;
		z-index: 99;
		top: calc(100% + 1px);
		left: 0;
		right: 0; 
		height: calc( 100vh - var(--siteHeaderHeight) );
		overflow-y: auto;
		background-color: var(--white);
	}

	.m-site_header__navigation.active {
		display: flex!important;
		flex-direction: column;
	}

	.m-site_header__actions,
	.m-site_header__ctas {
		position: fixed;
		left: 0;
		width: 100%;
		padding-inline: var(--moduleLeftSpacing);
		background-color: var(--white);
		z-index: 100;
		pointer-events: none;
		opacity: 0;
	}

	.navigation-active .m-site_header__actions,
	.navigation-active .m-site_header__ctas {
		pointer-events: all;
		opacity: 1; 
	}

	.m-site_header__actions {
		bottom: calc( var(--ctasHeight) + var(--mobileControlsSpacing) );
		height: 42px;
		width: 100%;
	}

	.m-site_header__action {
		width: 50%;
		padding: 8px 18px;
		background-color: var(--grey30);
		border-top: 1px solid var(--grey40);
		border-bottom: 1px solid var(--grey40);
		line-height: var(--copyLineHeight);
	}

	.m-site_header__action:first-child {
		border-left: 1px solid var(--grey40);
		border-top-left-radius: var(--actionBorderRadius);
		border-bottom-left-radius: var(--actionBorderRadius);
	}

	.m-site_header__action:last-child {
		border-right: 1px solid var(--grey40);
		border-top-right-radius: var(--actionBorderRadius);
		border-bottom-right-radius: var(--actionBorderRadius);
	}

	.m-site_header__action + .m-site_header__action {
		border-left: 1px solid var(--grey40);
	}

	.m-site_header__ctas {
		position: fixed;
		bottom: 0;
		pointer-events: none;
		opacity: 0;
		border-top: 1px solid var(--grey40);
		padding-block: var(--mobileControlsSpacing);
	}

	.m-site_header__cta {
		width: 50%;
	}

	.m-site_header__search {
		border-bottom: 1px solid var(--grey40);
	}

	.m-site_header__searchinner {
		padding-inline: var(--moduleLeftSpacing);
		padding-block: var(--mobileControlsSpacing);
	}

}

@media (min-width: 1200px) {

	.m-site_header__row--upper {
		background-color: var(--grey30);
		border-bottom: 1px solid var(--grey40);
	}

	.m-site_header__inner--upper {
		align-items: flex-start;
		padding-block: 6px;
	}

	.m-site_header__inner--lower {
		position: relative;
		padding-block: 15px;
	}

	.m-site_header__navigation {
		display: flex!important;
		align-items: center;
		margin-right: 25px;
	}

	.m-site_header__toggle {
		display: none; 
	}

	.m-site_header__actions {
		margin-left: auto;
		min-width: max-content;
		height: 24px;
		flex-shrink: 0;
		gap: 0 20px;
	}

	.m-site_header__search {
		order: 2;
		position: relative;
		margin-left: 25px;
	}

}

@media (min-width: 1440px) {

	.m-site_header__logo {
		max-width: 160px;
	}

}
div[data-global-resource-path*="footer"] {
	clear: both;
}

.m-site_footer__inner {
	max-width: var(--containerWidth);
	margin-inline: auto;
	padding-left: var(--moduleLeftSpacing);
	padding-right: var(--moduleRightSpacing);
}

.m-site_footer__logo {
	max-width: 180px;
}

.m-site_footer__upper {
	padding-block: 50px;
}

.m-site_footer__lower {
	padding-top: 60px;
	padding-bottom: 40px;
	background-color: var(--grey20);
}

.m-site_footer__copy {
	margin-top: 30px;
}

.m-site_footer__sociallinks {
	margin-top: 30px;
}

.m-site_footer__additionallogo {
	margin-top: 25px;
	padding-top: 25px;
	border-top: 1px solid var(--grey40);
}

.m-site_footer__links {
	display: grid;
}	

.m-site_footer__linkslist {
	list-style: none;
	margin: 25px 0 0;
	padding: 0;
}

.m-site_footer__linksheading {
	list-style: none;
}

.m-site_footer__linksitem {
	margin: 0;
}

.m-site_footer__linksitem:not(:first-child) {
	margin-top: 20px;
}

.m-site_footer__linkslink {
	color: var(--text);
}

.m-site_footer__linksheading {
	font-family: var(--fontHeading);
	font-size: 1.25rem;
	font-weight: var(--fontMedium);
}

.m-site_footer__linkslink:hover,
.m-site_footer__linkslink:focus {
	text-decoration: underline;
}

.m-site_footer__help {
	display: grid;
}

.m-site_footer__existinguserheading {
	margin: 0;
}

.m-site_footer__helplinkslist {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: 25px 0;
}

.m-site_footer__helplinkslink {
	position: relative;
	display: inline-flex;
	align-items: center;
	padding-bottom: 3px;
}

.m-site_footer__helplinkslink:after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background-color: var(--grey40);
	transition: background var(--transitionSpeed);
}

.m-site_footer__helplinkslinkicon {
	padding-left: 12px;
}

.m-site_footer__additionallinks {
	display: flex;
	justify-content: center;
	margin-top: 45px;
	padding-top: 25px;
	border-top: 1px solid var(--grey40);
}

.m-site_footer__additionallinks .m-pipe_list {
    justify-content: center;
}

@media (max-width: 991px) {

	.m-site_footer__content {
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.m-site_footer__additionallogo {
		width: 100%;
		text-align: center;
	}

	.m-site_footer__links {
		margin-top: 50px;
	}

	.m-site_footer__linksgroup:not(:first-child) {
		margin-top: 30px;
	}

	.m-site_footer__linksheading {
		display: flex;
		align-items: center;
	}

	.m-site_footer__linksheadingtext {
		padding-right: 15px;
	}

	.m-site_footer__linksheadingicon {
		margin-left: auto;
		transition: transform var(--transitionSpeed);
	}

	.m-site_footer__linksgroup[open] .m-site_footer__linksheadingicon {
		transform: rotate(180deg);
	}

	.m-site_footer__help {
		text-align: center;
	}

	.m-site_footer__existinguserrow,
	.m-site_footer__existinguserlink {
		margin-top: 20px;
	}

	.m-site_footer__helplinks {
		margin-top: 30px;
		padding-top: 30px;
		border-top: 1px solid var(--grey40);
	}

	.m-site_footer__additionallinks {
		display: flex;
		justify-content: center;
	}

}

@media (min-width: 992px) {

	.m-site_footer__links {
		grid-template-columns: 1fr 1fr 1fr 1fr;
		gap: 0 20px;
		margin-top: 20px;
	}

	.m-site_footer__linksheading {
		pointer-events: none;
	}

	.m-site_footer__linksheadingicon {
		display: none;
	}

	.m-site_footer__help {
		grid-template-columns: 1fr 1fr;
	}

	.m-site_footer__existinguser {
		padding: 20px 50px 20px 0;
	}

	.m-site_footer__existinguserrow {
		display: grid;
		grid-template-columns: 300px auto;
		gap: 0 25px;
		margin-top: 15px;
	}

	.m-site_footer__helplinks {
		padding: 50px 0 50px 50px;
		border-left: 1px solid var(--grey40);
	}

	.m-site_footer__helplinkslist { 
		grid-template-columns: repeat(2, 1fr);
		gap: 25px 60px;
	}

	.m-site_footer__helplinkslink:hover,
	.m-site_footer__helplinkslink:focus {
		text-decoration: none;
	}

	.m-site_footer__helplinkslink:hover:after,
	.m-site_footer__helplinkslink:focus:after {
		background-color: var(--green90);
	}

}

@media (min-width: 1160px) {

	.m-site_footer__inner--upper {
		display: grid;
		grid-template-columns: 280px auto;
		grid-column-gap: 115px;
	}

}
.hs-module-editor-placeholder {
  padding: 32px 24px !important;
}

.hs-module-editor-placeholder {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif !important;
  border: 1px dashed #516f90;
  background-color: rgb(245, 248, 250, 0.9);
  text-align: center;
  padding: 32px 24px 12px 24px;
  margin: 2px 1px;
}

.hs-module-editor-placeholder__title {
  margin: 0;
}

/* Menu and simple menu */

.hs-menu-wrapper ul {
  list-style: none;
  margin: 0;
  padding-left: 0;
}

.hs-menu-wrapper > ul > li.hs-menu-item > a {
  font-weight: bold;
  display: block;
  margin-bottom: 10px;
}

.hs-menu-wrapper > ul > li.hs-menu-item a {
  color: var(--secondaryTextColour);
}

/* Horizontal menu */

.hs-menu-wrapper.hs-menu-flow-horizontal .hs-menu-children-wrapper {
  flex-direction: column;
}

@media (max-width: 991px) {
  /* Menu and simple menu */

  .hs-menu-wrapper > ul {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    flex-wrap: wrap;
    gap: 30px;
  }

  .hs-menu-wrapper ul.hs-menu-children-wrapper {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    grid-template-columns: max-content;
  }
}

@media (max-width: 991px) {
  .hs-menu-wrapper > ul {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 568px) {
  .hs-menu-wrapper > ul {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (min-width: 992px) {
  .hs-menu-wrapper > ul {
    column-count: 3;
    column-gap: 25px;
  }

  .hs-menu-wrapper > ul > li + li {
    margin-top: 20px;
  }

  .hs-menu-wrapper ul li.hs-item-has-children li {
    margin-bottom: 5px;
  }
}

@media (min-width: 1260px) {
  .hs-menu-wrapper > ul {
    column-count: 4;
  }
}

/* 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%;
}

.hs_cos_wrapper.align-center {
  width: 100%;
  text-align: center;
}

.hs_cos_wrapper.align-right {
  width: 100%;
  text-align: right;
}

.hs-cta-wrapper .hs-cta-node .cta_button {
  white-space: nowrap;
}
.m-rte > *:not(div):first-child {
	margin-top: 0;
}

.m-rte > *:not(div):last-child {
	margin-bottom: 0;
}

.m-rte > *:not(div):only-child {
	margin: 0;
}

.m-rte a:not(.e-button) {
	text-decoration: underline;
	font-weight: bold;
}

.m-rte a:not(.e-button):hover {
	text-decoration: none; 
}

.m-rte img {
	max-width: 100%; 
}

.m-rte ul,
.m-rte ol {
	padding: 0;
	list-style: none;
	margin: 40px 0;
}

.m-rte ul ul,
.m-rte ol ol {
	margin: 1rem 0;
}

.m-rte ol {
	counter-reset: default-counter; 
}

.m-rte ol > li {
	counter-increment: default-counter; 
}

.m-rte ul > li,
.m-rte ol > li {
	margin: 1rem 0;
	position: relative;
	padding-left: 30px;
}

.m-rte ul > li:first-child,
.m-rte ol > li:first-child {
	margin-top: 0;
}

.m-rte ul > li:before,
.m-rte ol > li:before {
	content: ''; 
	position: absolute;
	left: 0;
	top: 1px;
}

.m-rte ul > li:before {
	top: 8px;
	width: 8px;
	height: 8px;
	border-radius: 100%;
	background-color: var(--blue60);
}

.m-rte ol > li:before {
	content: counter(default-counter);
	top: 1px;
	font-weight: bold;
	color: var(--blue60);
}

.m-rte p:has(.e-button) {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 25px;
}

.m-rte p[style*="text-align: center"] {
	justify-content: center;
}

@media (min-width: 768px){

	.m-rte ul > li,
	.m-rte ol > li {
		padding-left: 45px;
	}

	.m-rte ul > li:before,
	.m-rte ol > li:before {
		left: 15px;
	}

}

/* Modules */

.m-pagination {
	display: flex;
	align-items: center;
    justify-content: center;
}

.m-pagination__arrow {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px;
	background-color: transparent;
	border: 0;
	cursor: pointer;
}

.m-pagination__arrow--prev {
	margin-right: 15px;
}

.m-pagination__arrow--next {
	margin-left: 15px;
}

.m-pagination__arrow svg {
    transition: fill var(--transitionSpeed);
}

.m-pagination__arrow:hover svg {
    fill: var(--orange60);
}

.m-pagination__links {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 5px 0;
}

.m-pagination__linksitem {
	line-height: 1;
}

.m-pagination__link {
	display: block;
	padding: 5px 10px;
	background-color: transparent;
	border: 0;
	font-size: 1.125rem;
	line-height: 1;
	transition: color var(--transitionSpeed);
}

.m-pagination__link:hover,
.m-pagination__link--active {
	color: var(--orange60);
	text-decoration: none;
}

.m-pagination__link--disabled,
.m-pagination__arrow--disabled,
.m-pagination__arrow.jplist-disabled {
	user-select: none;
	pointer-events: none;
	opacity: .25;
}

.m-pagination__link--ellipses {
    padding-inline: 0;
}
.m-social_links {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
	padding: 0;
	gap: 15px;
	color: var(--green90);
}

.m-social_links__link {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 32px;
	height: 32px;
	padding: 8px;
	border: 1px solid var(--grey40);
	border-radius: 8px;
	transition: border var(--transitionSpeed);
}

.m-social_links__link:hover,
.m-social_links__link:focus {
	border-color: var(--green90);
	color: inherit;
}

.m-social_links__link svg {	
	display: block;
	fill: currentColor;
}
.m-pipe_list {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
	padding: 0;
	gap: 4px;
}

.m-pipe_list__item {
	margin: 0;
}

.m-pipe_list__item + .m-pipe_list__item {
	position: relative;
	padding-left: 9px;
}

.m-pipe_list__item + .m-pipe_list__item:before {
	content: "/";
	left: 0;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

.m-pipe_list__link {
	font-size: 0.75rem;
}

.m-pipe_list__link,
.m-pipe_list__link:hover,
.m-pipe_list__link:focus {
	display: block;
	color: inherit;
}
.m-internal_banner {
	position: relative;
	overflow: hidden;
}

.m-internal_banner--theme-lime {
    background-color: var(--lime20);
}

.m-internal_banner--theme-orange {
    background-color: var(--orange20);
}

.m-internal_banner--theme-blue {
    background-color: var(--blue20);
}

.m-internal_banner--theme-green {
    background-color: var(--green20);
}

.m-internal_banner--theme-grey {
    background-color: var(--grey20);
}

.m-internal_banner--theme-red {
    background-color: var(--errorLighter);
}

.m-internal_banner__inner {
	position: relative;
	z-index: 2;
}

.m-internal_banner__content {
	max-width: var(--mobileContentMax);
	margin-inline: auto;
	text-align: center;
}

.m-internal_banner__heading span[style*="text-decoration: underline"] {
	display: inline-block;
	padding: 8px 15px;
	background-color: var(--lime30);
	border-radius: 10px;
	border-bottom: 4px solid var(--lime70);
	font-family: var(--fontHeading);
	text-align: center;
	text-decoration: none!important; /* Override inline RTE style used as hook */
	line-height: 1.2;
}

.m-internal_banner__summary {
	margin-top: 15px;
}

.m-internal_banner__actions {
	display: flex;
	justify-content: center;
	gap: 10px 25px;
	margin-top: 30px;
}

.m-internal_banner__ripple {
	position: absolute;
	top: 50%;
	height: calc(100% - 40px);
}

.m-internal_banner__ripple--left {
	left: 100px;
	transform: translateY(-50%) translateX(-100%);
}

.m-internal_banner__ripple--right {
	right: 100px;
	transform: translateY(-50%) translateX(100%);
}

@media (min-width: 992px) {

	.m-internal_banner__ripple {
		height: 130%;
	}

	.m-internal_banner__ripple--left {
		left: 0;
		transform: translateY(-50%) translateX(-50%);
	}

	.m-internal_banner__ripple--right {
		right: 0;
		transform: translateY(-50%) translateX(50%);
	}

}
.m-overlay {
    position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: var(--grey80);
	z-index: 10;
	opacity: 0;
	transition: opacity var(--transitionSpeed);
	pointer-events: none;
}

.m-overlay.active {
    opacity: 1;
}

/* Utility
Helpful pieces of reusable css that are used to enhance the UI in some way
*/

@keyframes spinner {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes link-slide{
  0%{
    transform:translate(0,0);
  }
  
  50%{
    transform:translate(0,50px)
  }
  
  51%{
    transform:translate(0,50px)
  }
  
  52%{
    transform:translate(0,-50px)
  }
  
  53%{
    transform:translate(0,-50px)
  }
  
  100%{
    transform:translate(0,0)
  }
}
.spinner:before {
  content: '';
  box-sizing: border-box;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 24px;
  height: 24px;
  margin-top: -10px;
  margin-left: -10px;
  border-radius: 50%;
  border: 2px solid #ccc;
  border-top-color: #000;
  animation: spinner .8s linear infinite;
}
@media (max-width: 568px) {
  .hide-on-mobile {
    display: none !important;
  }
}