/* Theme base styles */


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

/**
 * 1. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  text-size-adjust:100%; /* 1 */
  -webkit-text-size-adjust: 100%;
}

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

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

body {
  margin: 0;
}

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

/**
 * 1. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-size: 1em; /* 1 */
  white-space: pre-wrap; /* Overflow by default is bad. */
}

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

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


/**
 * 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: inherit; /* 1 */
  color: inherit; /* 1 */
  margin: 0; /* 2 */
  border: none;
}

input:read-write {
	-webkit-appearance:none;
}

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

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

/**
 * 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 */
}
/* ------------------------------- BASIC.CSS ------------------------------- */

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

/* Immediately jump any animation to the end point if the user has set their device to "prefers reduced motion". */
/* This could create bad, unintended consequences. Remove as needed, and write your own appropriate code for prefers-reduced-motion. */
@media (prefers-reduced-motion: reduce) {
  * {
    animation-duration: 0.001s;
    transition-duration: 0.001s;
  }
}

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

img, video, canvas, audio, iframe, embed, object, figure, figcaption  { 
  display: block; /* Switch display mode to block, since that's what we usually want for images. */
  vertical-align: middle;  /* If you override, and make an image inline, it's likely you'll want middle vertical alignment. */
}
img, video {
  max-width: 100%; /* Make images and video flexible by default. */
  height: auto; /* Ensure images and video maintain their aspect ratio when max-width comes into play. */
}
img {
  font-style:italic; /* makes alt text italic if image didn't load */
  shape-margin:0.75rem; /* If floated inline gives it a margin */
}
video[controls] {
	cursor:pointer; /* Videos can be clicked to play so should have cursor pointer */
	clip-path:fill-box; /* fixes graphical glitch on windows chromium based browsers https://stackoverflow.com/questions/20771971/video-player-shows-black-border */
}

blockquote {
	padding:0;
	margin:0;
}

ul {
	padding-left: 1.2em;
}

hr{ 
    height: 0;
    overflow: visible;
    border: 0px solid;
    border-bottom-width: var(--module-settings-divider-size,1px);
}

/* Theme 
This is the css used to change the style of the theme
*/
/* ------------------------------- VARIABLES.CSS ------------------------------- */


/*     
    'fullHD':'1920',
    'desktopLarge':'1366',
    'desktop':'1280',
    'desktopSmall':'1024',
    'tabletLarge':'960',
    'tablet':'768',
    'mobileLarge':'640',
    'mobile':'480',
    'mobileSmall':'400' 
*/

/* Set all css variables from the theme here */
:root, :root::before, :root::after {
	--rem: clamp(5px,100vw/36, 10px); /* See media query at bottom for greater than 1920px */
	--container: calc(95*var(--vw));
	/* clamp(75vw,(95vw + (1440*0.75 - 1440*0.95) * (100vw - 720px)/1440),95vw); Potential query to adjust the container gutters more dynamically */
	--container-full: 100%;
	
	--container-narrower:	clamp(60.0rem, ( 60.0rem + 100 * (100vw - 1440px) / 1120 ), 70.0rem);;
	--container-narrow:		clamp(96.0rem, ( 96.0rem + 120 * (100vw - 1440px) / 1120 ), 108.0rem);;
	--container-default:	clamp(120.0rem, ( 120.0rem + 50 * (100vw - 1440px) / 1120 ), 125.0rem);;
	--container-medium:		clamp(128.0rem, ( 128.0rem + 110 * (100vw - 1440px) / 1120 ), 139.0rem);;
	--container-wide:		clamp(136.6rem, ( 136.6rem + 74 * (100vw - 1440px) / 1120 ), 144.0rem);;
	--container-wider:		clamp(144.0rem, ( 144.0rem + 160 * (100vw - 1440px) / 1120 ), 160.0rem);;    

    --mq-full-hd: 1920;
    --mq-desktop-large: 1440;
    --mq-desktop: 1366;
    --mq-desktop-small: 1280;
    --mq-tablet-large: 1024;
    --mq-tablet: 840;
	--mq-tablet-small: 768;
    --mq-mobile-large: 640;
    --mq-mobile: 480;
    --mq-mobile-small: 400;
    
    --color-transparent:						transparent;
	--color-white:								#FFF;
	--color-black:								#000;    
    --color-primary:							#E13839;
	--color-primary2:							#E53C3A;
	--color-primary3:							#121212;
    --color-secondary:							#131313;
	--color-secondary2:							#f8f8f8;
	--color-secondary3:							#949494;
    --color-tertiary:							#d9d9d9;
    
    --padding-smaller:							5.0rem;  
	--padding-small:							7.5rem;
	--padding-medium:							10.0rem;
	--padding-large:							15.0rem;
    
/*     --font-pre-title-size:					    4.0rem; */
	--font-pre-title-size:					    max(3.2rem,min(3.2rem,3.2rem + 0 * (100vw - 360px) / (1024 - 360)) + (max(0rem,8 * (100vw - 1024px) / (1440 - 1024))));;
    --font-pre-title-weight:				    400;
    --font-pre-title-line-height:			    1.1;
    --font-pre-title-letter-spacing:			-3.0E-5em;
    
/*     --font-h1-size:								6.0rem; */
	--font-h1-size:								max(5.0rem,min(5.5rem,5.0rem + 5 * (100vw - 360px) / (1024 - 360)) + (max(0rem,5 * (100vw - 1024px) / (1440 - 1024))));;
    --font-h1-weight:							400;
    --font-h1-line-height:						1.3;
	--font-h1-letter-spacing:					-2.0E-5em;
	--font-h1-color:							#131313;
	--font-h1-color-light:						#FFFFFF;
/*     --font-h2-size:								4.0rem; */
	--font-h2-size:								max(3.0rem,min(3.5rem,3.0rem + 5 * (100vw - 360px) / (1024 - 360)) + (max(0rem,5 * (100vw - 1024px) / (1440 - 1024))));;
    --font-h2-weight:							400;
    --font-h2-line-height:						1.16;
	--font-h2-letter-spacing:					-2.0E-5em;
	--font-h2-color:							#131313;
	--font-h2-color-light:						#FFFFFF;
/*     --font-h3-size:								3.0rem; */
	--font-h3-size:								max(2.8rem,min(2.8rem,2.8rem + 0 * (100vw - 360px) / (1024 - 360)) + (max(0rem,2 * (100vw - 1024px) / (1440 - 1024))));;
    --font-h3-weight:							400;
    --font-h3-line-height:						1.3;
	--font-h3-letter-spacing:					-3.0E-5em;
	--font-h3-color:							#131313;
	--font-h3-color-light:						#FFFFFF;
/*     --font-h4-size:								2.8rem; */
	--font-h4-size:								max(2.4rem,min(2.6rem,2.4rem + 2 * (100vw - 360px) / (1024 - 360)) + (max(0rem,2 * (100vw - 1024px) / (1440 - 1024))));;
    --font-h4-weight:							400;
    --font-h4-line-height:						1.2;
	--font-h4-letter-spacing:					-2.0E-5em;
	--font-h4-color:							#131313;
	--font-h4-color-light:						#FFFFFF;
/*     --font-h5-size:								2.6rem; */
	--font-h5-size:								max(2.2rem,min(2.4rem,2.2rem + 2 * (100vw - 360px) / (1024 - 360)) + (max(0rem,2 * (100vw - 1024px) / (1440 - 1024))));;
	--font-h5-weight:						    400;
    --font-h5-line-height:						1.2;
	--font-h5-letter-spacing:					-2.0E-5em;
	--font-h5-color:							#131313;
	--font-h5-color-light:						#FFFFFF;
/*     --font-body-size:							1.7rem; */
	--font-body-size:							max(1.6rem,min(1.6rem,1.6rem + 0 * (100vw - 360px) / (1024 - 360)) + (max(0rem,1 * (100vw - 1024px) / (1440 - 1024))));;
    --font-body-weight:							400;
    --font-body-line-height:					1.5;
	--font-body-letter-spacing:					-2.0E-5em;
	--font-body-color:							#131313;
	--font-body-color-light:					#FFFFFF;
	--font-link-underline:						underline;
	--font-link-color:							#131313;
	--font-link-color-light:					#FFFFFF;
	--font-link-weight:							500;
	--font-link-hover-underline:				underline;
	--font-link-hover-color:					#131313;
	--font-link-hover-color-light:				;
    --font-strong-font-weight:					700;
    --font-footer-nav-size:						1.6rem;
    
       
    
    --module-settings-cta-border-radius:			1.75em;
    --module-settings-listing-border-radius:		0em;
    --module-settings-image-video-border-radius:	0em;
    --module-settings-forms-border-radius:			0em;
    --module-settings-form-inputs-border-radius:	0em;
    --module-settings-testimonials-border-radius:	0em;
    --module-settings-column-gap:					4.0rem;
	--module-settings-divider-color:				#131619;
	--module-settings-divider-color-light:			inherit;
	--module-settings-divider-size:					1px;

    --header-background-color:					#E13839;
    --header-padding:							2.0rem;
    --header-padding-mobile:					2.0rem;
	
	

    --header-nav-alignment:						right;
	--header-nav-link-size:						1.8rem;
	--header-nav-link-weight:					400;
	--header-nav-link-color:					#FFFFFF;
	--header-nav-link-style:					normal;
	--header-nav-link-padding-vertical:			3.0rem;
	--header-nav-link-padding-horizontal:		2.0rem;
	--header-nav-link-margin:					1.25rem;

	--header-nav-link-hover-color: 				#FFFFFF;
	--header-nav-link-hover-bg-color: 			;
	--header-nav-link-hover-underline: 			none;
	--header-nav-link-hover-border-width: 		0px;
	--header-nav-link-hover-border-color: 		#FFFFFF;
	--header-nav-link-hover-border-radius: 		0px;
	--header-nav-link-open-color:				#FFFFFF;
	
	--header-nav-inner-box-bg-color:			#121212;
	--header-nav-inner-box-border-radius:		10px;
	--header-nav-inner-box-padding:				1.0rem 2.0rem;
	--header-nav-inner-box-border-width:		0px;
	--header-nav-inner-box-border-color:		#FFFFFF;

	--header-nav-inner-link-size: 				1.6rem;
	--header-nav-inner-link-color: 				#FFFFFF;
	--header-nav-inner-link-padding-vertical: 	1.3rem;
	--header-nav-inner-link-padding-horizontal: 1.0rem;
	--header-nav-inner-link-line-height: 		1.2;

	--header-nav-inner-link-hover-color: 		#FFFFFF;
	--header-nav-inner-link-hover-bg-color: 	;
	--header-nav-inner-link-hover-border-radius:0px;

	--header-nav-inner-link-open-color: 		#FFFFFF;

    --header-mobile-nav-logo-width:				10.0rem;
    --header-mobile-nav-background-color:  		#E13839;
    --header-mobile-nav-hamburger-color:    	#FFFFFF;
    --header-mobile-nav-hamburger-width:   		30px;
    --header-mobile-nav-hamburger-height:  		20px;
    --header-mobile-nav-hamburger-thickness:	2px;
    --header-mobile-nav-hamburger-spacing:		-9.0px;

	--header-mobile-nav-link-padding:				0.8em 1em;
	--header-mobile-nav-link-color: 				#FFF;
	--header-mobile-nav-link-color-hover: 			#FFF;
	--header-mobile-nav-link-background-color: 		;
	--header-mobile-nav-link-background-color-hover:;
 	--header-mobile-nav-link-border-radius:			10px;
	
	--header-transparent-nav-link-color: 				#000000;
	--header-transparent-nav-link-hover-color: 			#E13839;
	--header-transparent-nav-link-hover-bg-color: 		;
	--header-transparent-nav-link-hover-border-color: 	#FFFFFF;
	--header-transparent-nav-link-open-color:			#E13839;
	--header-transparent-mobile-nav-hamburger-color:	#E13839;
    
    --footer-background-color:					#E13839;
    --footer-about-link-color:                  #FFFFFF;
    --footer-about-link-color-hover:            #FFFFFF;
    --footer-about-text-color:                  #FFFFFF;
    --footer-social-icon-color:                 #FFFFFF;
    --footer-social-icon-color-hover:           #FFFFFF;
    --footer-navigation-size:                   1.6rem;
    --footer-navigation-link-alignment:			;
    --footer-navigation-link-color:             #FFFFFF;
    --footer-navigation-link-color-hover:       #FFFFFF;
    --footer-navigation-sub-link-color:         #FFFFFF;
    --footer-navigation-sub-link-color-hover:   #FFFFFF;
    --footer-ribbon-menu-background-color:      #000000;
    --footer-ribbon-menu-text-color:            #FFFFFF;
    --footer-ribbon-menu-link-color:            #FFFFFF;
    --footer-ribbon-menu-link-color-hover:		#FFFFFF;

	--button-font-type:              			google;
    --button-font:			            		Inter;
	--button-size:								max(1.7rem,min(1.7rem,1.7rem + 0 * (100vw - 360px) / (1024 - 360)) + (max(0rem,1 * (100vw - 1024px) / (1440 - 1024))));;
    
	--button-weight:							500;
	--button-padding-lr:						2.5em;
	--button-padding-top:						0.9722222222222222em;
	--button-padding-bottom:					0.9722222222222222em;
	
	--button-primary-text-color:				#FFFFFF;
	--button-primary-background-color:			#E13839;
    --button-primary-border-width:			    1px;
    --button-primary-border-color:			    #E13839;
	--button-primary-hover-text-color:			#FFFFFF;  
    --button-primary-hover-background-color:	#E53C3A;
	--button-primary-hover-border-color:		#E53C3A;
    
	--button-secondary-text-color:				#FFFFFF;
	--button-secondary-background-color:		#131313;
    --button-secondary-border-width:			1px;
    --button-secondary-border-color:			#131313;
	--button-secondary-hover-text-color:		#FFFFFF;  
    --button-secondary-hover-background-color:	#121212;
	--button-secondary-hover-border-color:		#121212;
    
	--button-tertiary-text-color:				#FFFFFF;
	--button-tertiary-background-color:			rgba(255, 255, 255, 0%);
    --button-tertiary-border-width:			    1px;
    --button-tertiary-border-color:			    #FFFFFF;
	--button-tertiary-hover-text-color:			#000000;  
    --button-tertiary-hover-background-color:	#FFFFFF;
	--button-tertiary-hover-border-color:		#FFFFFF;
 
    --form-gdpr-size:							1.4rem;
	--form-gdpr-weight:							400;
	--form-gdpr-line-height:					1.2;
	--form-labels-size:							1.6rem;
    --form-labels-margin-bottom:				0.5rem;
	--form-input-size:							2.0rem;
    --form-fields-padding-top-bottom:   	 	2.0rem;
    --form-fields-padding-left-right:			0.0rem;
    --form-fields-margin-bottom:				3.0rem;
    --form-fields-column-gap:					3.0rem;
        
/*     --form-primary-background-color:				transparent; */
    --form-primary-text-color:						#131313;
    --form-primary-label-weight:					400;
    --form-primary-label-line-height:				1.2;
    --form-primary-label-color:						#131313;
    --form-primary-input-background-color:			transparent;
/*     --form-primary-drop-down-icon-color:			#131313; Set directly is data url*/
    --form-primary-input-border-size:				1px;
    --form-primary-input-border-color:				#949494;
    --form-primary-input-border-radius:				var(--module-settings-form-inputs-border-radius);
    --form-primary-input-color:						#131313;
    --form-primary-input-placeholder:				#949494;
    --form-primary-warning-message-color:			#E53C3A;
    --form-primary-success-message-color:			#131313;
    --form-primary-submit-border-size:				1px;
    --form-primary-submit-border-color:				#E13839;
    --form-primary-submit-border-color-hover:		#E53C3A;
    --form-primary-submit-button-background-color:	#E13839;
    --form-primary-submit-button-background-color-hover:	 #E53C3A;
    --form-primary-submit-button-text-color:		#FFFFFF;
    --form-primary-submit-button-text-color-hover:	#FFFFFF;
       
/*     --form-secondary-background-color:		    	transparent; */
    --form-secondary-text-color:					#FFFFFF;
    --form-secondary-label-weight:			    	400;
    --form-secondary-label-line-height:		    	1.2;
    --form-secondary-label-color:					#FFFFFF;
    --form-secondary-label-background-color:		transparent;
/*     --form-secondary-drop-down-icon-color:		#FFFFFF; Set directly is data url*/
    --form-secondary-input-border-size:		    	1px;
    --form-secondary-input-border-color:			;
    --form-secondary-input-border-radius:			var(--module-settings-form-inputs-border-radius);
    --form-secondary-input-color:					#FFFFFF;
    --form-secondary-input-placeholder:				rgb(117, 117, 117);
    --form-secondary-warning-message-color:	    	#d3604d;
    --form-secondary-success-message-color:	   		#FFFFFF;
    --form-secondary-submit-border-size:		    none;
    --form-secondary-submit-border-color:			#131313;
    --form-secondary-submit-border-color-hover:		;
    --form-secondary-submit-button-background-color:		#131313;
    --form-secondary-submit-button-background-color-hover:	#121212;
    --form-secondary-submit-button-text-color:		#FFFFFF;
    --form-secondary-submit-button-text-color-hover:#FFFFFF;
	
	--blog-post-container:						76.8rem;
    --blog-post-container-mq:					921.5999999999999;
    --blog-post-larger-container:			    76.8rem;
    --blog-post-larger-container-mq:			921.5999999999999;
    --blog-button-text-color:					#000000;
	--blog-button-background-color:			    none;
    --blog-button-border-width:			        1px;
    --blog-button-border-color:			        #000000;
	--blog-button-hover-text-color:				#FFFFFF;  
    --blog-button-hover-background-color:		#000000;
    
    
	--blog-button-hover-border-color:			#000000;
    --blog-button-light-text-color:             #FFFFFF;  
    --blog-button-light-background-color:		none;
    --blog-button-light-border-width:			1px;
    --blog-button-light-border-color:			#FFFFFF;
    --blog-button-light-hover-text-color:       #000000;  
    --blog-button-light-hover-background-color:	#FFFFFF;
    --blog-button-light-hover-border-color:		#FFFFFF;
    --blog-post-hover:							;
    
    --blog-subscription-form-gdpr-size:					1.6rem;
    --blog-subscription-form-gdpr-weight:				400;
    --blog-subscription-form-gdpr-line-height:			1.2;
    --blog-subscription-form-labels-margin-bottom:		0.5rem;
    --blog-subscription-form-fields-padding-top-bottom: 0.5rem;
    --blog-subscription-form-fields-padding-left-right:	0.5rem;
    --blog-subscription-form-fields-margin-bottom:		2.0rem;
    --blog-subscription-form-fields-column-gap:			2.0rem;

    --blog-subscription-form-background-color:			transparent;
    --blog-subscription-form-text-color:				#131313;    
    --blog-subscription-form-padding-lr:                0.0rem;
    --blog-subscription-form-padding-tb:                0.0rem;

    --blog-subscription-form-label-size:				1.6rem;
    --blog-subscription-form-label-weight:				400;
    --blog-subscription-form-line-height:				1.2;
    --blog-subscription-form-label-color:				#131313;
    --blog-subscription-form-input-background-color:	#f7f7f7;
    --blog-subscription-form-drop-down-icon-color:		#24272A;
    --blog-subscription-form-input-border-size:			none;
    --blog-subscription-form-input-border-color:		;
    --blog-subscription-form-input-border-radius:		var(--module-settings-form-inputs-border-radius);
    --blog-subscription-form-input-color:				#24272A;
    --blog-subscription-form-input-placeholder:			;
    --blog-subscription-form-warning-message-color:		;
    --blog-subscription-form-success-message-color:		;
    --blog-subscription-form-submit-border-size:		1;
    --blog-subscription-form-submit-border-color:		;
    --blog-subscription-form-submit-border-color-hover:	;
    --blog-subscription-form-submit-button-background-color:		transparent;
    --blog-subscription-form-submit-button-background-color-hover:	transparent;
    --blog-subscription-form-submit-button-text-color:		#FFFFFF;
    --blog-subscription-form-submit-button-text-color-hover:#FFFFFF;
	
	--table-header-background-color:			;
	--table-header-text-color:					;
	--table-header-padding:						0.3rem;
	--table-standard-background-color:			;
	--table-standard-text-color:				;
	--table-standard-border-color:				;
	--table-standard-padding:					0.3rem;
    --table-alternative-background-color:		;
	--table-alternative-text-color:				;
	
	--table-header-color:							transparent;
    --table-alternating-row-odd-background-color:	;
    --table-alternating-row-odd-text-color:			;
    --table-alternating-row-even-background-color:	;
    --table-alternating-row-odd-text-color:			;
    
    --font-card1-size:								max(2.2rem,min(2.4rem,2.2rem + 2 * (100vw - 360px) / (1024 - 360)) + (max(0rem,2 * (100vw - 1024px) / (1440 - 1024))));;
    --font-card2-size:								max(2.0rem,min(2.2rem,2.0rem + 2 * (100vw - 360px) / (1024 - 360)) + (max(0rem,0 * (100vw - 1024px) / (1440 - 1024))));;
}

@media only screen and (min-width:1441px) {
	:root, :root::before, :root::after {
	    --container-default: clamp(125.0rem, ( 125.0rem + 465 * (100vw - 1440px) / 1120 ), 171.5rem);;
	}
}

@media only screen and (min-width:1920px) {
	:root, :root::before, :root::after {
		--rem: calc(10px + 1 * (100vw - 1920px) / 1920 );
	}
}
:root {
	--font-h1-font:				Castoro, serif;
	--font-h2-font:				Castoro, serif;
	--font-h3-font:				Castoro, serif;
	--font-h4-font:				Castoro, serif;
	--font-h5-font:				Castoro, serif;
	--font-body-font:			Inter, sans-serif;
	--font-link-font:			Inter, sans-serif;
	--font-button-font:			Inter, sans-serif;
	--font-pre-title-font:		Inter, sans-serif;
    
    --style-guide-h1-font:		'Castoro';
	--style-guide-h2-font:		'Castoro';
	--style-guide-h3-font:		'Castoro';
	--style-guide-h4-font:		'Castoro';
	--style-guide-h5-font:		'Castoro';
	--style-guide-body-font:	'Inter';
	--style-guide-link-font:	'Inter';
	--style-guide-button-font:	'';
	
	/**/
}
/* Objects
Non-cosmetic design patterns including grid and layout classes)
*/
/* ------------------------------- LAYOUT.CSS ------------------------------- */
/* Responsive grid */
.row-fluid {
	width: 100%;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}

.row-fluid [class*='span'] {
	display: block;
}

.row-fluid .span12 {
	width: 100%;
}

.row-fluid .span11 {
	width: calc(91.66666666666667% - (var(--module-settings-column-gap,0) / 2));
}

.row-fluid .span10 {
	width: calc(83.33333333333334% - (var(--module-settings-column-gap,0) / 2));
}

.row-fluid .span9 {
	width: calc(75.0% - (var(--module-settings-column-gap,0) / 2));
}

.row-fluid .span8 {
	width: calc(66.66666666666667% - (var(--module-settings-column-gap,0) / 2));
}

.row-fluid .span7 {
	width: calc(58.333333333333336% - (var(--module-settings-column-gap,0) / 2));
}

.row-fluid .span6 {
	width: calc(50.0% - (var(--module-settings-column-gap,0) / 2));
}

.row-fluid .span5 {
	width: calc(41.66666666666667% - (var(--module-settings-column-gap,0) / 2));
}

.row-fluid .span4 {
	width: calc(33.333333333333336% - (var(--module-settings-column-gap,0) / 2));
}

.row-fluid .span3 {
	width: calc(25.0% - (var(--module-settings-column-gap,0) / 2));
}

.row-fluid .span2 {
	width: calc(16.666666666666668% - (var(--module-settings-column-gap,0) / 2));
}

.row-fluid .span1 {
	width: calc(8.333333333333334% - (var(--module-settings-column-gap,0) / 2));
}

.container-fluid:before, .container-fluid:after {
	display: table;
	content: '';
}

.container-fluid:after {
	clear: both;
}

@media (max-width: 767px) {
	.row-fluid [class*='span'] {
		display: block;
		width: 100%;
	}
}

@media (min-width: 768px) and (max-width: 1139px) {
	.row-fluid {
		width: 100%;
	}
}
/* Clearfix */

.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;
}

/* 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;
	}
}
/* ------------------------------- CONTAINERS-DND.CSS ------------------------------- */
.content-wrapper {
	margin: 0 auto;
	padding: 0 1rem;
}

@media screen and (min-width: 1380px) {
	.content-wrapper {
		padding: 0;
	}
}

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

.dnd-section .dnd-column {
/* 	padding: 0 1rem; */
}

@media (max-width: 767px) {
	.dnd-section .dnd-column {
		padding: 0;
	}
}
/* ------------------------------- SPROCKET.CSS ------------------------------- */
.hs-tools-menu.hs-tools-menu {
	top: 0!important;
    right: 0!important;
}
.hs-tools-menu.hs-collapsed {
    overflow: hidden;
    border-radius: 0% 0% 0% 100% !important;
}
.hs-tools-menu.hs-tools-menu img.hs-sprocket {
	width: 32px!important;
    padding: 3px 3px 4px 4px!important;
	pointer-events: none;
}

/* Foundation
Base HMTL elements are styled in this section (<body>, <h1>, <a>, <p>, <button> etc.)
As well as setting up overall layouts and fonts
*/
/* ------------------------------- FOUNDATION/LAYOUT.CSS ------------------------------- */
html {
	height:100%;
	hanging-punctuation:first last;
	scroll-padding-top:var(--header-height, 10rem);
	--scrollbarWidth:0px;
	--100vw: calc(100vw - 5rem);
	--vw: calc(1vw - 5rem/100);
}
@media (prefers-reduced-motion:no-preference) {
	html, :has(:target) {
		scroll-behavior: smooth;
	}
}
body {
	min-height: 100%;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: auto 1fr auto;
	scroll-padding-top:var(--header-height, 10rem);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
    background-repeat: no-repeat;
}
main {
	min-width:0;
}
@media only screen and (max-width: 960px) {
	html,body {
		scroll-padding-top:var(--header-height, 4rem);
	}
}
@media only screen and (max-width: 320px) {
/* 	Super small e.g. folded samsung flex  */
	html {
		font-size: calc( 8px + (10 - 8) * (100vw - 280px) / (320 - 280) );
	}
}

.container {
	max-width: var(--container-default);
    width:var(--container);
	margin:0 auto;
    position: relative;
    z-index:1;
}

.container--narrower {max-width: var(--container-narrower);}    
.container--narrow {max-width: var(--container-narrow);}
.container--medium {max-width: var(--container-medium);}
.container--wide {max-width: var(--container-wide);}
.container--wider{max-width: var(--container-wider);}
.container--full {max-width: var(--container-full);}
.container--none {max-width: var(--container-full); width: 100%;}
.container--custom {max-width: var(--container-custom);}

.footer-container-wrapper {
	margin-top:auto;
}

/**
 * Remove Min heights.
 */

.row-fluid.row-fluid [class*="span"] {
	min-height:0;
}
/* ------------------------------- FOUNDATION/GRID.CSS ------------------------------- */

.grid-row {
	display:grid;
	--grid-column-gap:var(--module-settings-column-gap,0);
	gap: var(--grid-column-gap);
	grid-auto-columns: minmax(0,100%); /* Helps firefox */
}

@media only screen and (min-width: 961px) {
    .grid-row--1pr{grid-template-columns: repeat(1, 1fr);}
    .grid-row--2pr{grid-template-columns: repeat(2, 50fr);}
    .grid-row--3pr{grid-template-columns: repeat(3, 33.33fr);}
    .grid-row--4pr{grid-template-columns: repeat(4, 25fr);}
    .grid-row--5pr{grid-template-columns: repeat(5, 20fr);}
    .grid-row--6pr{grid-template-columns: repeat(6, 16.66fr);}
    
    .grid-row--70_30{grid-template-columns: 70fr 30fr;}
    .grid-row--60_40{grid-template-columns: 60fr 40fr;}
    .grid-row--50_50{grid-template-columns: 50fr 50fr;}
    .grid-row--40_60{grid-template-columns: 40fr 60fr;}
    .grid-row--30_70{grid-template-columns: 30fr 70fr;}
}

@media only screen and (max-width: 960px) {
    .grid-row--1pr{grid-template-columns: repeat(1, 1fr);}
    .grid-row--2pr{grid-template-columns: repeat(1, 1fr);}
    .grid-row--3pr{grid-template-columns: repeat(2, 50fr);}
    .grid-row--4pr{grid-template-columns: repeat(2, 50fr);}
    .grid-row--5pr{grid-template-columns: repeat(3, 33.33fr);}
    .grid-row--6pr{grid-template-columns: repeat(3, 33.33fr);}

    .grid-row--70_30{grid-template-columns: 65fr 35fr;}
    .grid-row--60_40{grid-template-columns: 55fr 45fr;}
    .grid-row--50_50{grid-template-columns: 50fr 50fr;}
    .grid-row--40_60{grid-template-columns: 45fr 55fr;}
    .grid-row--30_70{grid-template-columns: 35fr 65fr;}
}

@media only screen and (max-width: 768px) {
    .grid-row {
		grid-template-columns: minmax(0, 1fr);
		grid-auto-flow: row;
	}
}


.f-r--1, 
.f-r--2, 
.f-r--3, 
.f-r--4, 
.f-r--5,
.f-r--6,
.f-r--auto{
    --grid-column-gap:var(--module-settings-column-gap,0);
    gap: var(--grid-column-gap);
}
.f-r--auto > div{
    flex-basis: 320px;
    flex-grow: 1;
    flex-shrink: 1;
    max-width: 500px;
}
@media only screen and (min-width: 961px) {
	.f-r--1 > div{width: 100%;}
	.f-r--2 > div{width: calc((100% / 2) - ((var(--module-settings-column-gap) * (2 - 1)) / 2 ));}
    .f-r--3 > div{width: calc((100% / 3) - ((var(--module-settings-column-gap) * (3 - 1)) / 3 ));}
    .f-r--4 > div{width: calc((100% / 4) - ((var(--module-settings-column-gap) * (4 - 1)) / 4 ));}
	.f-r--5 > div{width: calc((100% / 5) - ((var(--module-settings-column-gap) * (5 - 1)) / 5 ));}
	.f-r--6 > div{width: calc((100% / 6) - ((var(--module-settings-column-gap) * (6 - 1)) / 6 ));}
}
@media only screen and (max-width: 960px) {
	.f-r--2 > div{width: 100%;}
	.f-r--3 > div{width: calc((100% / 2) - ((var(--module-settings-column-gap) * (2 - 1)) / 2 ));}
	.f-r--4 > div{width: calc((100% / 2) - ((var(--module-settings-column-gap) * (2 - 1)) / 2 ));}
	.f-r--5 > div{width: calc((100% / 3) - ((var(--module-settings-column-gap) * (3 - 1)) / 3 ));}
	.f-r--6 > div{width: calc((100% / 3) - ((var(--module-settings-column-gap) * (3 - 1)) / 3 ));}
}
@media only screen and (max-width: 768px) {
    .f-r--3 > div{width: 100%;}
    .f-r--4 > div{width: calc((100% / 2) - ((var(--module-settings-column-gap) * (2 - 1)) / 2 ));}
	.f-r--5 > div{width: calc((100% / 3) - ((var(--module-settings-column-gap) * (3 - 1)) / 3 ));}
	.f-r--6 > div{width: calc((100% / 3) - ((var(--module-settings-column-gap) * (3 - 1)) / 3 ));}
}
@media only screen and (max-width: 500px) {
	.f-r--4 > div, 
	.f-r--5 > div,
	.f-r--6 > div{
		width: 100%;
	}
}
/* ------------------------------- FOUNDATION/TYPOGRAPHY.CSS ------------------------------- */
html {
	font-family:var(--font-body-font);
	font-size:10px;
	font-size: var(--rem,10px);
}
body {
	font-family: var(--font-body-font);
	font-size:var(--font-body-size);
    font-weight: var(--font-body-weight);
	line-height: var(--font-body-line-height);
	letter-spacing: var(--font-body-letter-spacing);
	color: var(--font-body-color);
	--font-body-color-initial: var(--font-body-color);
	--font-h1-color-initial: var(--font-h1-color);
	--font-h2-color-initial: var(--font-h2-color);
	--font-h3-color-initial: var(--font-h3-color);
	--font-h4-color-initial: var(--font-h4-color);
	--font-h5-color-initial: var(--font-h5-color);
	--font-link-color-initial: var(--font-link-color);
	--font-link-hover-color-initial: var(--font-link-hover-color);
	--module-settings-divider-color-initial: var(--module-settings-divider-color);
}

strong{
    font-weight: var(--font-strong-font-weight);
}

h1,.text-h1{
	font-family: var(--font-h1-font);
    font-size: var(--font-h1-size);
	font-weight: var(--font-h1-weight);
	line-height: var(--font-h1-line-height);
	letter-spacing: var(--font-h1-letter-spacing);
	color: var(--font-h1-color);
	margin: calc(2.25 * var(--font-body-size)) 0 var(--font-body-size);
	text-wrap:balance;
}
h2,.text-h2{
	font-family: var(--font-h2-font);
	font-size: var(--font-h2-size);
	font-weight: var(--font-h2-weight);
	line-height: var(--font-h2-line-height);
	letter-spacing: var(--font-h2-letter-spacing);
	color: var(--font-h2-color);
	margin: calc(2.25 * var(--font-body-size)) 0 var(--font-body-size);
	text-wrap:balance;
}
h3,.text-h3{
	font-family: var(--font-h3-font);
	font-size: var(--font-h3-size);
	font-weight: var(--font-h3-weight);
	line-height: var(--font-h3-line-height);
	letter-spacing: var(--font-h3-letter-spacing);
	color: var(--font-h3-color);
	margin: calc(2.25 * var(--font-body-size)) 0 var(--font-body-size);
	text-wrap:balance;
}

h4,.text-h4{
	font-family: var(--font-h4-font);
	font-size: var(--font-h4-size);
	font-weight: var(--font-h4-weight);
    line-height: var(--font-h4-line-height);
	letter-spacing: var(--font-h4-letter-spacing);
	color: var(--font-h4-color);
	margin: calc(2.25 * var(--font-body-size)) 0 var(--font-body-size);
	text-wrap:pretty;
}

h5,.text-h5{
	font-family: var(--font-h5-font);
	font-size: var(--font-h5-size);
	font-weight: var(--font-h5-weight);
	line-height: var(--font-h5-line-height);
	letter-spacing: var(--font-h5-letter-spacing);
	color: var(--font-h5-color);
	margin: calc(2.25 * var(--font-body-size)) 0 var(--font-body-size);
	text-wrap:pretty;
}
:where(h1,.text-h1,h2,.text-h2,h3,.text-h3,h4,.text-h4,h5,.text-h5):first-child,
.pre-title + :is(h1,.text-h1,h2,.text-h2,h3,.text-h3,h4,.text-h4,h5,.text-h5) {
	margin-top: 0;
}
.pre-title {
    display: block;
	max-width:max-content;
    margin: 0;
	font-family: var(--font-pre-title-font);
    font-size: var(--font-pre-title-size);
    font-weight: var(--font-pre-title-weight);
    line-height: var(--font-pre-title-line-height);
    letter-spacing: var(--font-pre-title-letter-spacing);
    margin-bottom: var(--font-body-size);
}

.pre-title--heading-font{
   --font-pre-title-font: var(--font-h1-font);
}

@media only screen and (min-width: 1441px) {
    .pre-title {    
        font-size: 4rem;
    }
}

.t-right .pre-title{
	margin-left:auto;
}
.t-center .pre-title{
	margin-left:auto;
	margin-right:auto;
}
.pre-title--background{
    padding: 0.3em 1em; 
    margin-bottom: 1em; 
    border-radius: 1em;
}

.heading--accent{
    font-style: normal;
}
p {
	text-wrap:pretty;
	margin-block: 1.1em;
}

:link,:visited {
	font-family: var(--font-link-font);
	color: var(--font-link-color);
	text-decoration: var(--font-link-underline);
	font-weight: var(--font-link-weight);
	transition: color 0.25s ease-in-out;
	text-wrap:pretty;
}
:is(:link:visited):hover {
    color: var(--font-link-hover-color);
	text-decoration: var(--font-link-hover-underline);
}

:where(h1,.text-h1,h2,.text-h2,h3,.text-h3,h4,.text-h4,h5,.text-h5) a {
    font-weight:inherit;
}

.color-light{    
    color: var(--font-body-color);
	--font-body-color: var(--font-body-color-light);
	--font-h1-color: var(--font-h1-color-light);
	--font-h2-color: var(--font-h2-color-light);
	--font-h3-color: var(--font-h3-color-light);
	--font-h4-color: var(--font-h4-color-light);
	--font-h5-color: var(--font-h5-color-light);
	--font-link-color: var(--font-link-color-light);
	--font-link-hover-color: var(--font-link-hover-color-light);
	--module-settings-divider-color: var(--module-settings-divider-color-light);
}
.color-reset {
	color: var(--font-body-color);
	--font-body-color: var(--font-body-color-initial);
	--font-h1-color: var(--font-h1-color-initial);
	--font-h2-color: var(--font-h2-color-initial);
	--font-h3-color: var(--font-h3-color-initial);
	--font-h4-color: var(--font-h4-color-initial);
	--font-h5-color: var(--font-h5-color-initial);
	--font-link-color: var(--font-link-color-initial);
	--font-link-hover-color: var(--font-linkHoverInitial);
	--module-settings-divider-color: var(--module-settings-divider-color-initial);
}

.text-light {font-weight:300;}
.text-normal {font-weight:400;}
.text-medium {font-weight:500;}
.text-semi-bold {font-weight:600;}
.text-bold {font-weight:700;}

span.iconify,iconify-icon {
	display: inline-block;
	width: 1em;
	height: 1em;
}
/* ------------------------------- FOUNDATION/SYSTEM.CSS ------------------------------- */
.system__image{
    margin-bottom: 5rem;
}

.system-400 .f-r .system__image,
.system-400 .f-r .system__text,
.system-500 .f-r .system__image,
.system-500 .f-r .system__text{
    max-width: 48%;
}

@media only screen and (max-width: 960px) {
    .system-400 .f-r .system__image,
    .system-400 .f-r .system__text,
    .system-500 .f-r .system__image,
    .system-500 .f-r .system__text{
        max-width: none;
    }
    .system-400 .f-r,
    .system-400 .f-r,
    .system-500 .f-r,
    .system-500 .f-r{
        flex-direction: column;
    }
}
/* ------------------------------- FOUNDATION/MODULES.CSS ------------------------------- */
.module{
    width: 100%;
    position: relative;
}
.module--editor{
    width: 100%;
}
.divider{
	color: var(--module-settings-divider-color);
    margin-bottom: 2.5rem;
	margin-left:0;
    width: 100%;
}

/* Components
Reusable Components (used through macros) are styled here
*/
/* ------------------------------- COMPONENTS/BUTTONS.CSS ------------------------------- */
button, input[type="submit"] {
	cursor:pointer;
	color:inherit;
}
.btn,
.hs-form input.hs-button,
.cta_button[style],
.hs-web-interactive-inline a,
.resources .filters a,
.email_subscriptions__container input[type="submit"],
input[type="file"]::file-selector-button{
	cursor:pointer;
	display: inline-flex;
    align-items: center;
	justify-content: center;
	background-color: var(--button-primary-background-color);
	color: var(--button-primary-text-color);
	font-weight: var(--button-weight);
    font-size: var(--button-size);
    font-family: var(--font-button-font);
	padding: var(--button-padding-top) var(--button-padding-lr) var(--button-padding-bottom);
	text-decoration:none;
    border-radius: var(--module-settings-cta-border-radius);
    border: var(--button-primary-border-width) solid var(--button-primary-border-color);
	transition:color 0.25s ease-in-out, background 0.25s ease-in-out, border-color 0.25s ease-in-out;
}
.btn:focus-visible,
.hs-form input.hs-button:focus-visible,
.cta_button[style]:focus-visible,
.hs-web-interactive-inline a:focus-visible,
.resources .filters a:focus-visible,
.email_subscriptions__container input[type="submit"]:focus-visible,
input[type="file"]:focus-visible::file-selector-button{
	outline: max(0.9px, 0.05em) solid currentColor;
	outline-offset: 0px;
}
.btn:hover,
.hs-form input.hs-button:hover,
.cta_button[style]:hover,
.hs-web-interactive-inline a:hover,
.resources .filters a:hover,
.email_subscriptions__container input[type="submit"]:hover{
	background-color: var(--button-primary-hover-background-color);
	color: var(--button-primary-hover-text-color);
	text-decoration:none;
    border: var(--button-primary-border-width) solid var(--button-primary-hover-border-color);
}
.btn--secondary,
.cta--secondary .cta_button[style],
.cta--secondary .hs-web-interactive-inline a,
.hs-web-interactive-inline a.cta--secondary{
	background-color: var(--button-secondary-background-color);
	color: var(--button-secondary-text-color);
    border: var(--button-secondary-border-width) solid var(--button-secondary-border-color);
}
.btn--secondary:hover,
.cta--secondary .cta_button[style]:hover,
.cta--secondary .hs-web-interactive-inline a:hover,
.hs-web-interactive-inline a.cta--secondary:hover{
	background-color: var(--button-secondary-hover-background-color);
    color: var(--button-secondary-hover-text-color);
    border: var(--button-secondary-border-width) solid var(--button-secondary-hover-border-color);
}
.btn--tertiary,
.cta--tertiary .cta_button[style],
.cta--tertiary .hs-web-interactive-inline a,
.hs-web-interactive-inline a.cta--tertiary{
	background-color: var(--button-tertiary-background-color);
	color: var(--button-tertiary-text-color);
    border: var(--button-tertiary-border-width) solid var(--button-tertiary-border-color);
}
.btn--tertiary:hover,
.cta--tertiary .cta_button[style]:hover,
.cta--tertiary .hs-web-interactive-inline a:hover,
.hs-web-interactive-inline a.cta--tertiary:hover{
	background-color: var(--button-tertiary-hover-background-color);
	color: var(--button-tertiary-hover-text-color);
    border: var(--button-tertiary-border-width) solid var(--button-tertiary-hover-border-color);
}
.btn--custom,
.cta--custom .cta_button[style],
.cta--custom .hs-web-interactive-inline a{
	background-color: var(--background-color);
	color: var(--color);
    border: var(--border);
}
.btn--custom:hover,
.cta--custom .cta_button[style]:hover,
.cta--custom .hs-web-interactive-inline a:hover{
	background-color: var(--hover-background-color);
	color: var(--hover-color);
    border: var(--hover-border);
}
.cta_button.no-style{
	padding: var(--button-padding-top) 0 var(--button-padding-bottom) !important;
    background-color: none !important;
	border-radius:0;
}
.component__ctas{
	--button-margin: 0.5rem;
	gap: calc(var(--button-margin,0)*2);
    display: flex;
	align-items:flex-start;
    flex-wrap: wrap;
}
.component__ctas--left{
    justify-content: flex-start;
}
.component__ctas--center{
    justify-content: center;
}
.component__ctas--right{
    justify-content: flex-end;
}

.btn__icon{
    display: inline-flex;
}

.btn__icon svg{
    width: 1em;
    height: 1em;
    fill: currentColor;
    font-size: 1.1em;
    margin-left: 0.5em;
    margin-right: calc(-0.2 * var(--button-padding-lr));
}

.btn__icon svg,
.btn__icon .hs_cos_wrapper_type_icon{
    display: inline-flex;
}

.hs-blog-link{
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: transform .8s ease;
}
/* ------------------------------- COMPONENTS/EMBED.CSS ------------------------------- */
/* Embed */
.component__embed iframe{
    max-width: 100%;
}
/* ------------------------------- COMPONENTS/FORMS.CSS ------------------------------- */
/* ------- NEW FORM BUILDER VARIABLES - PRIMARY ---------- */

.hsfc-Form {
	--hsf-default-background__padding: 0 !important;
	--hsf-default-background__background-color: transparent;
	--hsf-background__padding: 0 !important;
	--hsf-default-row__horizontal-spacing: var(--form-fields-column-gap) ;
	--hsf-default-row__vertical-spacing: var(--form-fields-margin-bottom) ;
	--hsf-default-module__vertical-spacing: var(--form-fields-margin-bottom) ;
	--hsf-default-navigationrow-buttons__justify-content: start ;
	--hsf-default-navigationrow-buttons-single__justify-content: start ;

	--hsf-default-button__font-family: var(--font-button-font) ;
	--hsf-default-button__font-size: var(--button-size, 1em) ;
	--hsf-default-button__color: var(--form-primary-submit-button-text-color) ;
	--hsf-default-button__background-color: var(--form-primary-submit-button-background-color) ;
	--hsf-default-button__background-image: none ;
	--hsf-default-button__border-radius: var(--module-settings-cta-border-radius) ;
	--hsf-default-button__border-width: var(--form-primary-submit-border-size) ;
	--hsf-default-button__border-style: solid;
	--hsf-default-button__border-color: var(--form-primary-submit-border-color) ;
	--hsf-default-button__padding: var(--button-padding-top) var(--button-padding-lr) var(--button-padding-bottom);

	--hsf-button--hover__color: var(--form-primary-submit-button-text-color-hover);
	--hsf-button--hover__background-color : var(--form-primary-submit-button-background-color-hover);
	--hsf-default-button--hover__background-color: var(--form-primary-submit-button-background-color-hover);
	--hsf-button--hover__border-color: var(--form-primary-submit-border-color-hover);


	--hsf-default-button__box-shadow: none ;
	--hsf-default-button__font-weight: var(--button-weight) ;
    --hsf-default-richtext__font-family: var(--font-body-font);
    --hsf-default-richtext__font-size: var(--font-body-size);
    --hsf-default-richtext__color: var(--form-primary-text-color);

    --hsf-default-heading__font-family: var(--font-body-font);
    --hsf-default-heading__color: var(--form-primary-text-color);
    --hsf-default-heading__text-shadow: none;
	--hsf-default-background__padding: 40px;
	--hsf-default-background__border-style: none;
	--hsf-default-background__border-color: rgba(255, 255, 255, 1);
	--hsf-default-background__border-radius: 0px;
	--hsf-default-background__border-width: 1px 1px 1px 1px;

	--hsf-default-progressbar-text__font-family: var(--font-body-font);
	--hsf-default-progressbar-text__font-size:  var(--font-body-size);
	--hsf-default-progressbar-text__color: var(--form-primary-text-color);
	--hsf-default-progressbar-progressLine__background-color: var(--form-primary-submit-button-background-color);
	--hsf-default-progressbar-progressLine__background-image: none;
	--hsf-default-progressbar-progressLine__border-color: rgb(149, 148, 148);
	--hsf-default-progressbar-progressLine__border-style: none;
	--hsf-default-progressbar-progressLine__border-width: 0px 0px 0px 0px;
	--hsf-default-progressbar-trackLine__background-color: rgba(217, 217, 217, 1);

	--hsf-default-erroralert__font-family: var(--font-body-font);
	--hsf-default-erroralert__font-size: var(--font-body-size);
	--hsf-default-erroralert__color: var(--form-primary-warning-message-color);
	--hsf-default-infoalert__font-family: var(--font-body-font);
	--hsf-default-infoalert__font-size: var(--font-body-size, 1em);
	--hsf-default-infoalert__color: var(--font-body-color);
	  
	--hsf-default-field-label__font-family: var(--font-body-font);
	--hsf-default-field-label__font-size: var(--form-labels-size, 1em);
	--hsf-default-field-label__color: var(--form-primary-text-color);
	--hsf-default-field-description__font-family: var(--font-body-font);
	--hsf-default-field-description__font-size: calc( var(--form-labels-size, 1em) * 0.8 );
	--hsf-default-field-description__color: var(--form-primary-text-color);

	--hsf-default-field-footer__font-family: var(--font-body-font);
	--hsf-default-field-footer__font-size: 0.8em;
	--hsf-default-field-footer__color: var(--form-primary-text-color);

	--hsf-default-field-input__font-family: var(--font-body-font);
	--hsf-default-field-input__font-size: var(--form-input-size, 1em);
	--hsf-default-field-input__color: var(--form-primary-input-color);
	--hsf-default-field-input__background-color: var(--form-primary-input-background-color);
	--hsf-default-field-input__placeholder-color: var(--form-primary-input-placeholder);
	--hsf-default-field-input__border-color: var(--form-primary-input-border-color);
	--hsf-default-field-input__border-width: var(--form-primary-input-border-size);
	--hsf-default-field-input__border-style: solid;
	--hsf-default-field-input__border-radius: var(--module-settings-form-inputs-border-radius);
	--hsf-default-field-input__padding: var(--form-fields-padding-top-bottom) var(--form-fields-padding-left-right);

	--hsf-default-field-textarea__font-family: var(--font-body-font);
	--hsf-default-field-textarea__font-size: 1em;
	--hsf-default-field-textarea__color: var(--form-primary-input-color);
	--hsf-default-field-textarea__background-color: var(--form-primary-input-background-color);
	--hsf-default-field-textarea__placeholder-color: var(--form-primary-input-placeholder);
	--hsf-default-field-textarea__border-color: var(--form-primary-input-border-color);
	--hsf-default-field-textarea__border-width: var(--form-primary-input-border-size);
	--hsf-default-field-textarea__border-style: solid;
	--hsf-default-field-textarea__border-radius: var(--module-settings-form-inputs-border-radius);
	--hsf-default-field-textarea__padding: var(--form-fields-padding-top-bottom) var(--form-fields-padding-left-right);

	--hsf-default-field-checkbox__padding: 8px;
	--hsf-default-field-checkbox__background-color: rgb(245, 248, 250);
	--hsf-default-field-checkbox__color: rgb(33, 45, 58);
	--hsf-default-field-checkbox__border-color: rgb(149, 148, 148);
	--hsf-default-field-checkbox__border-width: 1px 1px 1px 1px;
	--hsf-default-field-checkbox__border-style: solid;
	--hsf-default-field-radio__padding: 8px;
	--hsf-default-field-radio__background-color: rgb(245, 248, 250);
	--hsf-default-field-radio__color: rgb(33, 45, 58);
	--hsf-default-field-radio__border-color: rgb(149, 148, 148);
	--hsf-default-field-radio__border-width: 1px 1px 1px 1px;
	--hsf-default-field-radio__border-style: solid;
}

/* ------- NEW FORM BUILDER VARIABLES - SECONDARY ---------- */

.component__form--secondary .hsfc-Form{
	--hsf-default-button__color: var(--form-secondary-submit-button-text-color) ;
	--hsf-default-button__background-color: var(--form-secondary-submit-button-background-color) ;
	--hsf-default-button__border-width: var(--form-secondary-submit-border-size) ;
	--hsf-default-button__border-color: var(--form-secondary-submit-border-color) ;

	--hsf-button--hover__color: var(--form-secondary-submit-button-text-color-hover);
	--hsf-button--hover__background-color : var(--form-secondary-submit-button-background-color-hover)
	--hsf-default-button--hover__background-color: var(--form-secondary-submit-button-background-color-hover)
	--hsf-button--hover__border-color: var(--form-secondary-submit-border-color-hover);


    --hsf-default-richtext__color: var(--form-secondary-text-color);

    --hsf-default-heading__color: var(--form-secondary-text-color);

	--hsf-default-progressbar-text__color: var(--form-secondary-text-color);
	--hsf-default-progressbar-progressLine__background-color: var(--form-secondary-submit-button-background-color);

	--hsf-default-erroralert__color: var(--form-secondary-warning-message-color);
	  
	--hsf-default-field-label__color: var(--form-secondary-text-color);
	--hsf-default-field-description__color: var(--form-secondary-text-color);

	--hsf-default-field-footer__color: var(--form-secondary-text-color);
	--hsf-default-field-input__color: var(--form-secondary-input-color);
	--hsf-default-field-input__background-color: var(--form-secondary-input-background-color);
	--hsf-default-field-input__placeholder-color: var(--form-secondary-input-placeholder);
	--hsf-default-field-input__border-color: var(--form-secondary-input-border-color);
	--hsf-default-field-input__border-width: var(--form-secondary-input-border-size);

	--hsf-default-field-textarea__color: var(--form-secondary-input-color);
	--hsf-default-field-textarea__background-color: var(--form-secondary-input-background-color);
	--hsf-default-field-textarea__placeholder-color: var(--form-secondary-input-placeholder);
	--hsf-default-field-textarea__border-color: var(--form-secondary-input-border-color);
	--hsf-default-field-textarea__border-width: var(--form-secondary-input-border-size);
}

/* ------- NEW FORM BUILDER OVERRIDES ---------- */

.hsfc-Form .hsfc-DataPrivacyField label{
	font-size: var(--form-gdpr-size);
	--hsf-default-field-label__font-size: var(--form-gdpr-size);
}

.hsfc-Form .hsfc-CheckboxField label {
	display: flex !important;
	align-items: flex-start !important;
}

.hsfc-Form .hsfc-FieldLabel{
	--hsf-default-module__vertical-spacing: var(--form-labels-margin-bottom);
}

.hsfc-Form .hsfc-CheckboxField label > input {
    margin-top: 0.1em;
}

.hsfc-Form .hsfc-DataPrivacyField{
	--hsf-default-richtext__font-size: var(--form-gdpr-size);
    --hsf-default-field-label__font-size: var(--form-gdpr-size);
}

.hsfc-DataPrivacyField .hsfc-FieldLabel {
    font-size: var(--form-gdpr-size);
}

.hsfc-Form .hsfc-RadioInput,
.hsfc-Form .hsfc-CheckboxField{
	/* Add if not using autoprefixer */
	-webkit-appearance: none;
	appearance: none;
	/* For iOS < 15 to remove gradient background */
	background-color: transparent;
	/* Not removed via appearance */
	border: max(1px, 0.1em) solid currentColor;
}


.hsfc-Form .hsfc-CheckboxField label,
.hsfc-Form .hsfc-RadioFieldGroup__Options label{
    display: grid !important;
    grid-template-columns: 1em auto !important;
    gap: 0.5em;
    justify-content: flex-start !important;
    align-items: center !important;
}

.hsfc-Form .hsfc-CheckboxField input:is([type="checkbox"],[type="radio"]),
.hsfc-Form .hsfc-RadioFieldGroup__Options input:is([type="checkbox"],[type="radio"]){
    -webkit-appearance: none;
    appearance: none;
    background-color: transparent;
    margin: 0.05em 0 0;
    font: inherit;
    width: 1.05em;
    height: 1.05em;
    border: max(1px, 0.1em) solid currentColor;
    display: grid;
    place-content: center;
    cursor: pointer;
}
.hsfc-Form .hsfc-CheckboxField input:is([type="checkbox"],[type="radio"]){
    border-radius: max(1px, 0.1em);
}

.hsfc-DropdownOptions, .hsfc-DropdownOptions__List__ListItem {
    --hsf-default-field-input__background-color: white;
}

.hsfc-Form .hsfc-Step--layoutTemplate-right,
.hsfc-Form .hsfc-Step--layoutTemplate-left,
.hsfc-Form .hsfc-Step--layoutTemplate-top,
.hsfc-Form .hsfc-Step--layoutTemplate-bottom {
    gap: var(--module-settings-column-gap);
}

.component__form--padding0 .hsfc-Form .hsfc-Step--layoutTemplate-right{
	padding-right: var(--module-settings-column-gap);
	padding-bottom: var(--module-settings-column-gap);
	padding-top: var(--module-settings-column-gap);
}

.component__form--padding0 .hsfc-Form .hsfc-Step--layoutTemplate-left{
	padding-left: var(--module-settings-column-gap);
	padding-bottom: var(--module-settings-column-gap);
	padding-top: var(--module-settings-column-gap);
}

.hsfc-Step:not(:first-of-type) .hsfc-NavigationRow__Buttons{ 
	--hsf-default-navigationrow-buttons__justify-content: space-between;
}

.hsfc-Form .hsfc-Step:not(:first-of-type) .hsfc-NavigationRow__Buttons .btn.btn--text_black_2:first-of-type{
	flex-direction: row-reverse;
	text-align: right;
}

.hsfc-Form .hsfc-NavigationRow__Buttons .btn.btn--text_black_2{
	width: auto;
    gap: 5rem;
    justify-content: space-between;
}

@media (max-width: 430px) {
	.hsfc-Form .hsfc-NavigationRow__Buttons .btn.btn--text_black_2{
		width: 100%;
	}
}

.hsfc-Form .hsfc-Step:not(:first-of-type) .hsfc-NavigationRow__Buttons .btn.btn--text_black_2:first-of-type:after{ 
    right: 0;
    left: 0;
    width: 1em;
    margin-left: 0;
    margin-right: 0;
    transform: rotate(180deg);
}

/* ------------------ FORM WRAPPER ------------------ */
.component__form{
    border-radius: var(--module-settings-forms-border-radius);
	background-size:cover;
	background-position:center center;
}
.component__form > *:first-child {
	margin-top:0;
}
/* @media only screen and (min-width: 961px) {
    .component__form--overflow{
        z-index: 2;
        position: absolute;
        top: 0;
    }
} */

/* ------------------ GENERAL FORM LAYOUT ------------------ */
/* Columns */
form.hs-form fieldset{
	max-width: none;
	width: 100%;
    display: flex;
	column-gap:var(--form-fields-column-gap);
}
form.hs-form .hs-form-field,
form.hs-form .hs-dependent-field,
form.hs-form > .hs-richtext,
form.hs-form > .legal-consent-container {
	width:100%;
	margin-bottom: var(--form-fields-margin-bottom);
}
form.hs-form .hs-richtext > *:first-child {
	margin-top:0;
}
@media only screen and (max-width: 640px) {
	form.hs-form fieldset {
        flex-direction: column;
	}
	form.hs-form fieldset .hs-form-field,
	form.hs-form fieldset.form-columns-2 .hs-form-field,
	form.hs-form fieldset.form-columns-3 .hs-form-field,
	form.hs-form fieldset .hs-dependent-field,
	form.hs-form fieldset.form-columns-2 .hs-dependent-field,
	form.hs-form fieldset.form-columns-3 .hs-dependent-field,
	form.hs-form fieldset > .hs-richtext,
	form.hs-form fieldset > .legal-consent-container {
		width:100%;
	}
}

/* Labels */
.component__form .hs-form label{
	display: block;
	font-size: var(--form-labels-size);
	margin-bottom: var(--form-labels-margin-bottom);
}
/* Validation */


/* Help text - legends */
form.hs-form legend {
	font-size: calc(var(--form-labels-size) * 0.8);
	font-weight: 400;
	margin: calc(var(--form-labels-margin-bottom) * -1) 0 calc(var(--form-labels-margin-bottom) * 0.5);
}

/* Fields */
form.hs-form .hs-form-field.hs-form-field .input,
form.hs-form .hs-dependent-field.hs-dependent-field .input {
	display: flex;
	width:100%;
	margin:0;
}

/* Input */
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input:is([type=text],[type=email],[type=password],[type=tel],[type=number],[type=file]) {
	width:100%;
	font-size:var(--form-input-size);
	line-height:inherit;
	padding-block: calc(var(--form-fields-padding-top-bottom)*1.2) calc(var(--form-fields-padding-top-bottom)*0.8);
    padding-inline:var(--form-fields-padding-left-right);
	border-radius: var(--module-settings-form-inputs-border-radius);
	outline:none;
	box-shadow: none;
	-webkit-appearance: none;
    appearance: none;
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input:-moz-placeholder{ /* Firefox 18- */
	opacity:1;
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) input:is([type=text],[type=email],[type=password],[type=tel],[type=number]):focus-visible {
	outline: max(0.5px, 0.05em) solid currentColor;
/* outline-offset: max(1px, 0.05em); */
}

/* Text area */
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input textarea{
	min-width:100%;
	width:100%;
	font-size:var(--form-input-size);
	line-height:inherit;
	padding: var(--form-fields-padding-top-bottom) var(--form-fields-padding-left-right);
	border-radius:var(--module-settings-form-inputs-border-radius);
	outline:none;
	box-shadow: none;
	min-height: 8rem;
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input textarea:-moz-placeholder{ /* Firefox 18- */
	opacity:1;
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input textarea:focus-visible {
	outline: max(0.9px, 0.05em) solid currentColor;
}

/* Select https://www.filamentgroup.com/lab/select-css.html */
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input select{
	display: block;
	max-width: 100%;
	width:100%;
	font-size:var(--form-input-size);
	line-height:inherit;
	height: auto;
	border-radius: var(--module-settings-form-inputs-border-radius);
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	box-shadow: none;
	outline: none;
	cursor:pointer;
	
	background-color:transparent;
	background-repeat: no-repeat, repeat;
	background-position: right var(--form-fields-padding-left-right) top 50%, 0 0;
	background-size: 0.8em auto, 100%;
	background-clip: padding-box;
	padding: var(--form-fields-padding-top-bottom) calc(var(--form-fields-padding-left-right) * 2 + 0.8em) var(--form-fields-padding-top-bottom) var(--form-fields-padding-left-right);
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input select::-ms-expand{
	display: none;
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input select:hover{}
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input select:focus{}
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input select:focus-visible {
	outline: max(0.9px, 0.05em) solid currentColor;
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input select option {
/* 	color: #131313; */
	font-weight:normal;
}

/* Checkbox/Radio */
form.hs-form .inputs-list {
	margin: 0;
	padding: 0;
	list-style: none;
	width:100%;
}
form.hs-form .inputs-list > li {
	margin: 0.4em 0 0.7em;
}
form.hs-form .inputs-list:not(.hs-error-msgs) label {
	font-size: var(--form-labels-size);
	margin-bottom: 0;
	display: grid;
	grid-template-columns: 1em auto;
	gap: 0.5em;
	cursor: pointer;
}
form.hs-form .inputs-list input,
form.hs-form .inputs-list span {
	vertical-align: middle;
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) input:is([type="checkbox"],[type="radio"]) {
	/* Add if not using autoprefixer */
	-webkit-appearance: none;
	appearance: none;
	/* For iOS < 15 to remove gradient background */
	background-color: transparent;
	/* Not removed via appearance */
	margin: 0.05em 0 0;
	font: inherit;
	width: 1.05em;
	height: 1.05em;
	border: max(1px, 0.1em) solid currentColor;
	border-radius: max(1px, 0.1em);
	transform: translateY(-0.075em);
	display: grid;
	place-content: center;
	cursor:pointer;
}

form.hs-form :is(.hs-form-field,.hs-dependent-field) input[type=radio] {
	border-radius:50%;	
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) input:is([type="checkbox"],[type="radio"])::before{
	content: "";
	width: 0.65em;
	height: 0.65em;
	transform: scale(0);
	transition: 120ms transform ease-in-out;
	box-shadow: inset 1em 1em currentColor;
	/* Windows High Contrast Mode */
/* 	background-color: CanvasText; */
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) input[type="checkbox"]::before {
	transform-origin: bottom left;
	clip-path: polygon(14% 44%, 0 65%, 50% 100%, 100% 16%, 80% 0%, 43% 62%);
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) input[type="radio"]::before {
	border-radius: inherit;
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) input:is([type="checkbox"],[type="radio"]):checked::before{
	transform: scale(1) translate(-0.1px,0.1px);
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) input:is([type="checkbox"],[type="radio"]):focus-visible {
	outline: max(0.9px, 0.05em) solid currentColor;
/* outline-offset: max(0.5px, 0.05em); */
	outline-offset: 0;
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) input[type="checkbox"]:disabled {
	color: #959495;
	cursor: not-allowed;
}

/* Datepicker */
form.hs-form .hs-dateinput {
	position: relative;
	width:100%;
}
form.hs-form .hs-dateinput::before {
	content:'';
	position: absolute;
	right: var(--form-fields-padding-left-right);
	background-repeat: no-repeat;
	background-size: contain;
	font-size:var(--form-input-size);
	height: 1.1em;
	width: 1.1em;
	top: 50%;
	transform: translateY(-50%);
	cursor:pointer;
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input .hs-dateinput input{
	padding-right: calc(var(--form-fields-padding-left-right) * 2 + 1em);
}

/* File picker */
form.hs-form .hs_upload_a_file label {
	cursor: pointer;
}
form.hs-form :is(.hs-form-field.hs-form-field,.hs-dependent-field.hs-dependent-field) .input input[type="file"]{
	background: transparent;
	border: 0;
	padding-left: 0;
	padding-right: 0;
	border-radius: 0;
	cursor: pointer;
}
form.hs-form :is(.hs-form-field.hs-form-field,.hs-dependent-field.hs-dependent-field) .input input[type="file"]::-webkit-file-upload-button{
	width: auto;
	min-width: 8em;
	text-align: center;
	-webkit-appearance: none;
	appearance: none;
	cursor:pointer;
	margin: 0 0.5em 0 1px;
}
form.hs-form :is(.hs-form-field.hs-form-field,.hs-dependent-field.hs-dependent-field) .input input[type="file"]::file-selector-button{
	width: auto;
	min-width: 8em;
	text-align: center;
	-webkit-appearance: none;
	appearance: none;
	cursor:pointer;
	margin: 0 0.5em 0 1px;
}
form.hs-form :is(.hs-form-field.hs-form-field,.hs-dependent-field.hs-dependent-field) .input input[type="file"]:focus-visible::-webkit-file-upload-button{
	outline: max(0.9px, 0.05em) solid currentColor;
}
form.hs-form :is(.hs-form-field.hs-form-field,.hs-dependent-field.hs-dependent-field) .input input[type="file"]:focus-visible::file-selector-button{
	outline: max(0.9px, 0.05em) solid currentColor;
}

/* Phone With Country DropDown */
form.hs-form .hs-input.hs-fieldtype-intl-phone {
    width: 100%!important;
}
form.hs-form .hs-input.hs-fieldtype-intl-phone select {
	width: 18rem!important;
}
form.hs-form .hs-input.hs-fieldtype-intl-phone input[type="tel"] {
    width: calc(100% - 18rem - var(--form-fields-column-gap))!important;
}
@media only screen and (max-width: 400px) {
	form.hs-form .hs-input.hs-fieldtype-intl-phone select {
		width: 100% !important;
		margin-bottom: var(--form-fields-margin-bottom);
	}
	form.hs-form .hs-input.hs-fieldtype-intl-phone input[type="tel"] {
		width: 100%!important;
	}
}

/* GDPR */
form.hs-form fieldset > .legal-consent-container,
form.hs-form > .legal-consent-container,
form.hs-form > .legal-consent-container .hs-form-booleancheckbox-display p,
form.hs-form > .legal-consent-container .hs-form-booleancheckbox-display span{
	font-size: var(--form-gdpr-size);
    font-weight: var(--form-gdpr-weight);
	line-height: var(--form-gdpr-line-height);
	margin-top: calc(var(--form-fields-margin-bottom) * 0.2 * -1);
	margin-bottom:0.8em;
    color: var(--form-primary-label-color);
}

.component__form--secondary form.hs-form fieldset > .legal-consent-container,
.component__form--secondary form.hs-form > .legal-consent-container,
.component__form--secondary form.hs-form > .legal-consent-container .hs-form-booleancheckbox-display p,
.component__form--secondary form.hs-form > .legal-consent-container .hs-form-booleancheckbox-display span{
    color: var(--form-secondary-label-color);
}

form.hs-form .legal-consent-container .hs-richtext > p {
	margin: 0 0 0.4em;
}
form.hs-form .legal-consent-container .hs-richtext > a,
form.hs-form .legal-consent-container .hs-richtext > p > a{
	color: inherit;
    font-weight: 600;
}
form.hs-form .legal-consent-container .hs-richtext > a:hover,
form.hs-form .legal-consent-container .hs-richtext > p > a:hover{
    text-decoration: underline;
}
form.hs-form .legal-consent-container :is(.hs-form-field,.hs-dependent-field){
	margin:0;
}
form.hs-form .legal-consent-container .hs-fieldtype-booleancheckbox{
    margin:0.3em 0;
}
form.hs-form .legal-consent-container label.hs-form-booleancheckbox-display{
	font-size:inherit;
}
form.hs-form .legal-consent-container .hs-form-booleancheckbox-display > span {
	margin: 0;
    font-weight: 600;
}

/* Captcha */
.grecaptcha-badge {
	margin: 0;
	box-shadow: gray 0px 0px 1px !important;
}

/* Submit button */

.component__form button{
    width: 300px;
    justify-content: space-between;
}

form.hs-form input.hs-button{
	width: auto;
	min-width: 8em;
	text-align: center;
	margin: var(--form-fields-margin-bottom) 0 0;
}


/* ------------------- Primary Styling ------------------- */
.component__form--primary {
    color: var(--form-primary-text-color);
}

/* Label */
form.hs-form label{
	color: var(--form-primary-label-color);
	font-weight: var(--form-primary-label-weight);
	line-height: var(--form-primary-label-line-height);
}

/* Input */
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input:is([type=text],[type=email],[type=password],[type=tel],[type=number],[type=file]) {
	border: var(--form-primary-input-border-size) solid var(--form-primary-input-border-color);
	background: var(--form-primary-input-background-color);
	color: var(--form-primary-input-color);
}

.component__form form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input:is([type=text],[type=email],[type=password],[type=tel],[type=number],[type=file]) {
    border-top: 0;
    border-left: 0;
    border-right: 0;
    border-bottom: var(--form-primary-input-border-size) solid var(--form-primary-input-border-color);
}

.component__form:has(.hs-form-field:where(.hs-fieldtype-text,.hs-fieldtype-phonenumber):is(:focus-within,:has(:where(input):not(:placeholder-shown)))) {
    border-top: 0;
    border-left: 0;
    border-right: 0;
    border-color: var(--form-primary-input-color);
}

.component__form form.hs-form :is(.hs-form-field,.hs-dependent-field) input:is([type=text],[type=email],[type=password],[type=tel],[type=number]):focus-visible {
    outline: none !important;
}

.component__form .hs-form-field:where(.hs-fieldtype-text,.hs-fieldtype-phonenumber):is(:focus-within,:has(:where(input):not(:placeholder-shown))) > label{
    translate: 0 calc(var(--form-fields-padding-top-bottom) * -1.8)
}

.component__form{
    padding-top: 1rem;
}


form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input::-webkit-input-placeholder{ /* Chrome/Opera/Safari */
	color: var(--form-primary-input-placeholder);
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input::-moz-placeholder{ /* Firefox 19+ */
	color: var(--form-primary-input-placeholder);
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input:-ms-input-placeholder{ /* IE 10+ */
	color: var(--form-primary-input-placeholder);
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input:-moz-placeholder{ /* Firefox 18- */
	color: var(--form-primary-input-placeholder);
}
/* Text area */
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input textarea{
	border:var(--form-primary-input-border-size) solid var(--form-primary-input-border-color);
	background: var(--form-primary-input-background-color);
	color: var(--form-primary-input-color);
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input textarea::-webkit-input-placeholder{ /* Chrome/Opera/Safari */
	color: var(--form-primary-input-placeholder);
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input textarea::-moz-placeholder{ /* Firefox 19+ */
	color: var(--form-primary-input-placeholder);
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input textarea:-ms-input-placeholder{ /* IE 10+ */
	color: var(--form-primary-input-placeholder);
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input textarea:-moz-placeholder{ /* Firefox 18- */
	color: var(--form-primary-input-placeholder);
}

/* Select https://www.filamentgroup.com/lab/select-css.html */
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input select{
	border: var(--form-primary-input-border-size) solid var(--form-primary-input-border-color);
	color: var(--form-primary-input-color);
	
	background-image: 
	url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20448%20512%22%3E%3Cpath%20fill%3D%22%23131313%22%20d%3D%22M207.029%20381.476L12.686%20187.132c-9.373-9.373-9.373-24.569%200-33.941l22.667-22.667c9.357-9.357%2024.522-9.375%2033.901-.04L224%20284.505l154.745-154.021c9.379-9.335%2024.544-9.317%2033.901.04l22.667%2022.667c9.373%209.373%209.373%2024.569%200%2033.941L240.971%20381.476c-9.373%209.372-24.569%209.372-33.942%200z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E')
, linear-gradient(to bottom, var(--form-primary-input-background-color) 0%,var(--form-primary-input-background-color) 100%);
}

/* Checkbox/Radio */
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input:is([type=checkbox],[type=radio]) {
	color: var(--form-primary-input-color);
}

.component__form form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input:is([type=checkbox],[type=radio]) {
    color: inherit;
    border-radius: 50%;
}

/* Datepicker */
form.hs-form .hs-dateinput::before {
	
	background-image: 
	url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221em%22%20height%3D%221em%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%23131313%22%20d%3D%22M19%2019H5V8h14m-3-7v2H8V1H6v2H5c-1.11%200-2%20.89-2%202v14a2%202%200%200%200%202%202h14a2%202%200%200%200%202-2V5a2%202%200%200%200-2-2h-1V1%22%2F%3E%3C%2Fsvg%3E')
;
}

/* File picker */
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input[type=file]{
    color: var(--form-primary-label-color);
}
form.hs-form :is(.hs-form-field.hs-form-field,.hs-dependent-field.hs-dependent-field) .input input[type="file"]::-webkit-file-upload-button{
	background: var(--form-primary-submit-button-background-color);
    color: var(--form-primary-submit-button-text-color);
	border: var(--form-primary-submit-border-size) solid var(--form-primary-submit-border-color);
}
form.hs-form :is(.hs-form-field.hs-form-field,.hs-dependent-field.hs-dependent-field) .input input[type="file"]::file-selector-button{
	background: var(--form-primary-submit-button-background-color);
    color: var(--form-primary-submit-button-text-color);
	border: var(--form-primary-submit-border-size) solid var(--form-primary-submit-border-color);
}
form.hs-form :is(.hs-form-field.hs-form-field,.hs-dependent-field.hs-dependent-field) .input input[type="file"]::-webkit-file-upload-button:hover{
	background: var(--form-primary-submit-button-background-color-hover);
	color: var(--form-primary-submit-button-text-color-hover);
	border: var(--form-primary-submit-border-size) solid var(--form-primary-submit-border-color-hover);
}
form.hs-form :is(.hs-form-field.hs-form-field,.hs-dependent-field.hs-dependent-field) .input input[type="file"]::file-selector-button:hover{
	background: var(--form-primary-submit-button-background-color-hover);
	color: var(--form-primary-submit-button-text-color-hover);
	border: var(--form-primary-submit-border-size) solid var(--form-primary-submit-border-color-hover);
}

/* Messages */
.hs_cos_wrapper_type_form .submitted-message{
	color: var(--form-primary-success-message-color);
}
form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input.invalid.error{
    border-bottom: 1px solid var(--form-primary-warning-message-color);
}
form.hs-form label.hs-error-msg,
form.hs-form .hs-error-msgs.inputs-list {
    color: var(--form-primary-warning-message-color);
}

/* Submit button */
form.hs-form input.hs-button{
	background: var(--form-primary-submit-button-background-color);
    color: var(--form-primary-submit-button-text-color);
	border: var(--form-primary-submit-border-size) solid var(--form-primary-submit-border-color);
}
form.hs-form input.hs-button:hover{
	background: var(--form-primary-submit-button-background-color-hover);
	color: var(--form-primary-submit-button-text-color-hover);
	border: var(--form-primary-submit-border-size) solid var(--form-primary-submit-border-color-hover);
}


/* ------------------ Secondary Styling ------------------ */
.component__form--secondary {
    color: var(--form-secondary-text-color);
}

/* Label */
.component__form--secondary form.hs-form label,
.component__form--secondary form.hs-form fieldset > .legal-consent-container,
.component__form--secondary form.hs-form .legal-consent-container{
    color: var(--form-secondary-label-color);
}
.component__form-secondary form.hs-form label{
	font-weight: var(--form-secondary-label-weight);
	line-height: var(--form-secondary-label-line-height);
}

/* Input */
.component__form--secondary form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input:is([type=text],[type=email],[type=password],[type=tel],[type=number],[type=file]) {
	border: var(--form-secondary-input-border-size) solid var(--form-secondary-input-border-color);
	background: var(--form-secondary-label-background-color);
	color: var(--form-secondary-input-color);
}
.component__form--secondary form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input::-webkit-input-placeholder{ /* Chrome/Opera/Safari */
	color: var(--form-secondary-input-placeholder);
}
.component__form--secondary form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input::-moz-placeholder{ /* Firefox 19+ */
	color: var(--form-secondary-input-placeholder);
}
.component__form--secondary form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input:-ms-input-placeholder{ /* IE 10+ */
	color: var(--form-secondary-input-placeholder);
}
.component__form--secondary form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input:-moz-placeholder{ /* Firefox 18- */
	color: var(--form-secondary-input-placeholder);
}
/* Text area */
.component__form--secondary form.hs-form :is(.hs-form-field,.hs-dependent-field) .input textarea{
	border:var(--form-secondary-input-border-size) solid var(--form-secondary-input-border-color);
	background: var(--form-secondary-label-background-color);
	color: var(--form-secondary-input-color);
}
.component__form--secondary form.hs-form :is(.hs-form-field,.hs-dependent-field) .input textarea::-webkit-input-placeholder{ /* Chrome/Opera/Safari */
	color: var(--form-secondary-input-placeholder);
}
.component__form--secondary form.hs-form :is(.hs-form-field,.hs-dependent-field) .input textarea::-moz-placeholder{ /* Firefox 19+ */
	color: var(--form-secondary-input-placeholder);
}
.component__form--secondary form.hs-form :is(.hs-form-field,.hs-dependent-field) .input textarea:-ms-input-placeholder{ /* IE 10+ */
	color: var(--form-secondary-input-placeholder);
}
.component__form--secondary form.hs-form :is(.hs-form-field,.hs-dependent-field) .input textarea:-moz-placeholder{ /* Firefox 18- */
	color: var(--form-secondary-input-placeholder);
}

/* Select https://www.filamentgroup.com/lab/select-css.html */
.component__form--secondary form.hs-form :is(.hs-form-field,.hs-dependent-field) .input select{
	border: var(--form-secondary-input-border-size) solid var(--form-secondary-input-border-color);
	color: var(--form-secondary-input-color);
	
	background-image: 
	url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20448%20512%22%3E%3Cpath%20fill%3D%22%23FFFFFF%22%20d%3D%22M207.029%20381.476L12.686%20187.132c-9.373-9.373-9.373-24.569%200-33.941l22.667-22.667c9.357-9.357%2024.522-9.375%2033.901-.04L224%20284.505l154.745-154.021c9.379-9.335%2024.544-9.317%2033.901.04l22.667%2022.667c9.373%209.373%209.373%2024.569%200%2033.941L240.971%20381.476c-9.373%209.372-24.569%209.372-33.942%200z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E')
, linear-gradient(to bottom, var(--form-secondary-label-background-color) 0%,var(--form-secondary-label-background-color) 100%);
}

/* Checkbox/Radio */
.component__form--secondary form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input:is([type=checkbox],[type=radio]) {
	color: var(--form-secondary-input-color);
}

/* Datepicker */
.component__form--secondary form.hs-form .hs-dateinput::before {
	
	background-image: 
	url('data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221em%22%20height%3D%221em%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20fill%3D%22%23FFFFFF%22%20d%3D%22M19%2019H5V8h14m-3-7v2H8V1H6v2H5c-1.11%200-2%20.89-2%202v14a2%202%200%200%200%202%202h14a2%202%200%200%200%202-2V5a2%202%200%200%200-2-2h-1V1%22%2F%3E%3C%2Fsvg%3E')
;
}

/* File picker */
.component__form--secondary form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input[type=file]{
    color: var(--form-secondary-label-color);
}

/* Messages */
.component__form--secondary .hs_cos_wrapper_type_form .submitted-message{
	color: var(--form-secondary-success-message-color);
}
.component__form--secondary form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input.invalid.error{
    border: 1px solid var(--form-secondary-warning-message-color);
}
.component__form--secondary form.hs-form label.hs-error-msg,
.component__form--secondary form.hs-form .hs-error-msgs.inputs-list {
    color: var(--form-secondary-warning-message-color);
}

/* Submit button */
.component__form--secondary form.hs-form input.hs-button{
	background: var(--form-secondary-submit-button-background-color);
    color: var(--form-secondary-submit-button-text-color);
	border: var(--form-secondary-submit-border-size) solid var(--form-secondary-submit-border-color);
}
.component__form--secondary form.hs-form input.hs-button:hover{
	background: var(--form-secondary-submit-button-background-color-hover);
	color: var(--form-secondary-submit-button-text-color-hover);
	border: var(--form-secondary-submit-border-size) solid var(--form-secondary-submit-border-color-hover);
}




/* Email Preference Forms */

.email_subscriptions__container{
    padding: 4rem;
}

.email_subscriptions__container input[type=text],
.email_subscriptions__container input[type=email],
.email_subscriptions__container input[type=password],
.email_subscriptions__container input[type=tel],
.email_subscriptions__container input[type=number],
.email_subscriptions__container input[type=file] {
	width:100% !important;
	font-size:inherit !important;
	line-height:inherit !important;
	padding: var(--form-fields-padding-top-bottom) var(--form-fields-padding-left-right) !important;
	border: var(--form-primary-input-border-size) solid var(--form-primary-input-border-color) !important;
	border-radius: var(--module-settings-form-inputs-border-radius) !important;
	background: var(--form-primary-input-background-color) !important;
	color: var(--form-primary-input-color) !important;
	outline:none !important;
	box-shadow: none !important;
	-webkit-appearance: none !important;
    appearance: none !important;
}
.email_subscriptions__container form.hs-form .hs-form-field .input input::-webkit-input-placeholder,
.email_subscriptions__container form.hs-form .hs-dependent-field .input input::-webkit-input-placeholder{ /* Chrome/Opera/Safari */
	color: var(--form-primary-input-placeholder) !important;
}
.email_subscriptions__container form.hs-form .hs-form-field .input input::-moz-placeholder,
.email_subscriptions__container form.hs-form .hs-dependent-field .input input::-moz-placeholder{ /* Firefox 19+ */
	color: var(--form-primary-input-placeholder) !important;
}
.email_subscriptions__container form.hs-form .hs-form-field .input input:-ms-input-placeholder,
.email_subscriptions__container form.hs-form .hs-dependent-field .input input:-ms-input-placeholder{ /* IE 10+ */
	color: var(--form-primary-input-placeholder) !important;
}
.email_subscriptions__container form.hs-form .hs-form-field .input input:-moz-placeholder,
.email_subscriptions__container form.hs-form .hs-dependent-field .input input:-moz-placeholder{ /* Firefox 18- */
	color: var(--form-primary-input-placeholder) !important;
	opacity:1 !important;
}

.hs_cos_wrapper_type_email_subscriptions #email-prefs-form .page-header h2,
.email_subscriptions__container .page-header h2,
.email_subscriptions__container .page-header h3,
.email_subscriptions__container form h2,
.email_subscriptions__container form h3{
    font-size: 2rem;
    font-style: italic;
}

.email_subscriptions__container .hs-input{
    margin-bottom: var(--form-fields-margin-bottom);
}

.email-prefs{
    margin: 3rem 0;
}

.email-prefs .header{
    padding: 0;
    background: none;
    font-weight: 500;
}

.email-prefs .item:not(:first-of-type){
    margin: 1rem 0;
    padding: 2rem 0 0 0;
    border-top: 1px solid var(--module-settings-divider-color);
}

.email-prefs .subscribe-options{
    padding-top: 4rem;
    border-top: 1px solid var(--module-settings-divider-color);
}

.password-page__container{
    padding: 4rem;
}

.password-page__container input[type=text],
.password-page__container input[type=email],
.password-page__container input[type=password],
.password-page__container input[type=tel],
.password-page__container input[type=number],
.password-page__container input[type=file] {
	width:100% !important;
	font-size:inherit !important;
	line-height:inherit !important;
	padding: var(--form-fields-padding-top-bottom) var(--form-fields-padding-left-right) !important;
	border: var(--form-primary-input-border-size) solid var(--form-primary-input-border-color) !important;
	border-radius: var(--module-settings-form-inputs-border-radius) !important;
	background: var(--form-primary-input-background-color) !important;
	color: var(--form-primary-input-color) !important;
	outline:none !important;
	box-shadow: none !important;
	-webkit-appearance: none !important;
    appearance: none !important;
    height: auto !important;
}

.password-page__container .hs-button{
    margin: 2rem 0;
}

@media only screen and (max-width: 640px) {
    .hs_cos_wrapper_type_email_subscriptions #email-prefs-form .page-header h1,
    .email_subscriptions__container .page-header h1{
        font-size: var(--font-h4-size);
    }
    
    .hs_cos_wrapper_type_email_subscriptions #email-prefs-form,
    .email_subscriptions__container{
        padding: 3rem;
    }
    
    .password-page__container h1{
        font-size: var(--font-h4-size);
    }
    
    .password-page__container{
        padding: 3rem;
    }
}
/* ------------------------------- COMPONENTS/ICONS.CSS ------------------------------- */
/* Icons */
.component__icons{
	--icon-gap:2rem;
    display: flex;
    gap: var(--icon-gap);
}
.component__icons--row {
	flex-direction: row;
    flex-wrap: wrap;
}
.component__icons--column{
	flex-direction:column;
    align-items: flex-start;
	justify-content:flex-start;
}
.component__icon{
    display: flex;
	flex-direction: column;
	align-items:center;
    row-gap: 1rem;
}
.component__icons--column .component__icon {
	align-items:flex-start;
}
.component__icon__img{
    margin:auto; 
}
.component__icon__text{
	margin:0;
}

@media only screen and (max-width: 768px) {
	.component__icon {
        align-items: flex-start;
    }
}
/* ------------------------------- COMPONENTS/INTRO.CSS ------------------------------- */
.component__intro{
    z-index: 1;
    position: relative;
    width:100%;
}
/* ------------------------------- COMPONENTS/LOGO.CSS ------------------------------- */
/* Logo */
.component__logo {
    display: flex;
    align-items: center;
	margin:0;
	position:relative;
    max-width: 160px;
    width: 100%;
}
.component__logo__img {
	width: 100%;
}
/* ------------------------------- COMPONENTS/TABLES.CSS ------------------------------- */
table {
  border-collapse: collapse;
  width: 100%;
}
th, td {
	background:var(--table-standard-background-color);
	color:var(--table-standard-text-color);
	border:1px solid var(--table-standard-border-color);
	padding:var(--table-standard-padding);
	text-align:left;
}
th {
	background:var(--table-header-background-color);
	color:var(--table-header-text-color);
	padding:var(--table-header-padding);
}
tr.even td {
	background:var(--table-alternative-background-color,#f9f9f9);
	color:var(--table-alternative-text-color);
}
tr.sticky {
    top: 0;
    position: sticky;
}
/* ------------------------------- COMPONENTS/TESTIMONIALS.CSS ------------------------------- */
/* Testimonial */
.component__testimonial{
    display: flex;
	align-items:center;
	border-radius: var(--module-settings-testimonials-border-radius);
	gap:2rem;
	font-size: 1.6rem;
}
.component__testimonial:not(.bg-color--transparent) {
	padding: 3.5rem;
}
.component__testimonial--column{
    flex-direction: column;
	--image-size:5.5rem;
	--image-margin:0 2rem 0 0;
	--source-width:100%;
	--source-direction:row;
	--source-alignment:center;
	--quote-width:100%;
}
.component__testimonial--row{
    flex-direction: row-reverse;
	--image-size:8rem;
	--image-margin:0 0 1.1em;
	--source-width:30%;
	--source-direction:column;
	--source-alignment:flex-start;
	--quote-width:70%;
}
.component__testimonial__source{
    display: flex;
	flex-direction:var(--source-direction);
    align-items: var(--source-alignment);
	width: var(--source-width);
}
.component__testimonial__quote{
    width: var(--quote-width);
}
.component__testimonial__quote p:first-child{
	margin-top:0;	
}
.component__testimonial__image{
	object-fit:cover;
	border-radius: 50%;
	width:var(--image-size);
	height:var(--image-size);
    min-width:var(--image-size);    
    max-width:var(--image-size);
    min-height:var(--image-size);    
    max-height:var(--image-size);
	margin:var(--image-margin,0);
}
.component__testimonial__role {
	text-wrap: balance;
}
.component__testimonial__role p{
    margin: 0;
	color: var(--font-body-color);
	opacity: 0.48;
}
.component__testimonial__role p:first-of-type{
    font-weight: 500;
    opacity: 0.73;
}

@media only screen and (max-width: 640px ) {
    .component__testimonial--row{
        flex-direction: column;
		--image-size:5.5rem;
		--image-margin:0 2rem 0 0;
		--source-width:100%;
		--source-direction:row;
		--source-alignment:center;
		--quote-width:100%;
    }
}
/* ------------------------------- COMPONENTS/TEXT.CSS ------------------------------- */
/* Text */
.component__text p:last-child{
    margin-bottom: 0;
}
.h--fit {
	max-width:max-content;
}
.t-right .h--fit{
	margin-left: auto;
}
.t-center .h--fit{
	margin-left: auto;
	margin-right:auto;
}
/* ------------------------------- COMPONENTS/VIDEO.CSS ------------------------------- */
/* Video */
.component__video {
	max-width:100%;
}
.component__video--fill-height {
	height:100%;
}
.component__video--fill-height .component__video__custom-video {
	height:100%;
	object-fit:cover;
}

.component__video--hubspot .hs-video-container {
	margin:0!important;
}
.component__video--hubspot .hs-video-wrapper {
	aspect-ratio:var(--aspect-ratio,16/9);
	padding:0!important;
	height:auto!important;
	
	left: 50%;
	translate: -50%;
}
.component__video--hubspot.component__video--fill-height *{
	height:100%!important;
	overflow:hidden;
}
.component__video iframe {
	clip-path:fill-box; /* fixes graphical glitch on windows chromium based browsers https://stackoverflow.com/questions/20771971/video-player-shows-black-border */
}
/* ------------------------------- COMPONENTS/SPACER.CSS ------------------------------- */
/* Spacer */
.content__element.content__element--spacer:not(:last-of-type),
.content__element.content__element:has(+ .content__element--spacer){
	margin-bottom:0;
}
.component__spacer {
	height:var(--height);
}
@media only screen and (max-width: 768px) {
	.component__spacer {
		height:var(--height-mob);
	}
}

/* ------------------------------- FOUNDATION/MODIFYERS.CSS ------------------------------- */
.color--primary {color: var(--color-primary);}
.color--primary2 {color: var(--color-primary2);}
.color--primary3 {color: var(--color-primary3);}
.color--secondary {color: var(--color-secondary);}
.color--secondary2 {color: var(--color-secondary2);}
.color--secondary3 {color: var(--color-secondary3);}
.color--tertiary {color: var(--color-tertiary);}
.color--white {color: var(--color-white);}
.color--black {color: var(--color-black);}

.border-color--primary {border-color: var(--color-primary) !important;}
.border-color--primary2 {border-color: var(--color-primary2) !important;}
.border-color--primary3 {border-color: var(--color-primary3) !important;}
.border-color--secondary {border-color: var(--color-secondary) !important;}
.border-color--secondary2 {border-color: var(--color-secondary2) !important;}
.border-color--secondary3 {border-color: var(--color-secondary3) !important;}
.border-color--tertiary {border-color: var(--color-tertiary) !important;}
.border-color--white {border-color: var(--color-white) !important;}
.border-color--black {border-color: var(--color-black) !important;}

.bg-color--transparent {background-color: var(--color-transparent);}
.bg-color--primary {background-color: var(--color-primary);}
.bg-color--primary2 {background-color: var(--color-primary2);}
.bg-color--primary3 {background-color: var(--color-primary3);}
.bg-color--secondary {background-color: var(--color-secondary);}
.bg-color--secondary2 {background-color: var(--color-secondary2);}
.bg-color--secondary3 {background-color: var(--color-secondary3);}
.bg-color--tertiary {background-color: var(--color-tertiary);}
.bg-color--white {background-color: var(--color-white);}
.bg-color--black {background-color: var(--color-black);}
.bg-color--image {
	background-size:cover;
	background-position:50% 50%;
	background-repeat:no-repeat;
}
.bg-video {
	position:absolute;
	inset:0;
}
.bg-video video {
	width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.overlay:before{
    content: '';
    position: absolute;
    background-color: #000;
    opacity: 0.7;
    width: 100%;    
    height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.bg-overlay {
	--over-back-image:;
	--over-back-image-set-x:;
	--over-back-image-set-w:;
	--over-back-size:;
	--over-back-pos:;
    content: '';
    position: absolute;
	inset:0;
	/* Do not add a z-index use position relative on following elements */
	background-image: var(--over-back-image);
	background-size: var(--over-back-size, cover);
	background-position: var(--over-back-pos, 50% 50%);
	background-repeat: no-repeat;
}
@supports (background-image:image-set('foo.png' 1x)) {
	.bg-overlay { background-image: var(--over-back-image-set-x);}
}
@supports (background-image:image-set('foo.png' 1w)) {
	.bg-overlay { background-image: var(--over-back-image-set-w);}
}

.bg-overlay--primary {background-color: var(--color-primary);}
.bg-overlay--primary2 {background-color: var(--color-primary2);}
.bg-overlay--primary3 {background-color: var(--color-primary3);}
.bg-overlay--secondary {background-color: var(--color-secondary);}
.bg-overlay--secondary2 {background-color: var(--color-secondary2);}
.bg-overlay--secondary3 {background-color: var(--color-secondary3);}
.bg-overlay--tertiary {background-color: var(--color-tertiary);}
.bg-overlay--white {background-color: var(--color-white);}
.bg-overlay--black {background-color: var(--color-black);}

body > .bg-overlay{
	z-index: auto;
	height: var(--body-height);
}

.bg-image-macro {
	--back-image:;
	--back-image-set-x:;
	--back-image-set-w:;
	--back-size:;
	--back-pos:;
	--back-aspect-ratio:;
	background-image: var(--back-image);
	background-size:var(--back-size);
	background-position:var(--back-pos);
}
@supports (background-image:image-set('foo.png' 1x)) {
	.bg-image-macro { background-image: var(--back-image-set-x);}
}
@supports (background-image:image-set('foo.png' 1w)) {
	.bg-image-macro { background-image: var(--back-image-set-w);}
}
@media only screen and (max-width: 960px) {
	.bg-image-macro {
		--mob-back-image: var(--back-image);
        --mob-back-image-set-x: var(--back-image-set-x);
        --mob-back-image-set-w: var(--back-image-set-w);
		--mob-back-size: var(--back-size);
		--mob-back-pos: var(--back-pos);
		--mob-back-aspect-ratio:var(--back-aspect-ratio);
		background-image: var(--mob-back-image);
		background-size: var(--mob-back-size);
		background-position: var(--mob-back-pos);
	}
	@supports (background-image:image-set('foo.png' 1x)) {
		.bg-image-macro { background-image: var(--mob-back-image-set-x);}
	}
	@supports (background-image:image-set('foo.png' 1w)) {
		.bg-image-macro { background-image: var(--mob-back-image-set-w);}
	}
}

.f{display: flex;}
.f-r{flex-direction: row;}
.f-c{flex-direction: column;}
.f-w{flex-wrap: wrap}

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

.v-align-top {align-items:flex-start; align-items: start;}
.v-align-center, .v-align-middle {align-items: center;}
.v-align-bottom {align-items:flex-end; align-items: end;}
.v-align-justify,.v-align-stretch {align-items: stretch;}

.h-align-left {justify-content:flex-start; justify-items:start;}
.h-align-center {justify-content:center; justify-items:center;}
.h-align-right {justify-content:flex-end; justify-items:end;}
.h-align-justify,.h-align-stretch {justify-content:space-between; justify-items:stretch;}

.v-align-self-left {align-self:flex-start;}
.v-align-self-center {align-self:center;}
.v-align-self-right {align-self:flex-end;}
.v-align-self-justify,.v-align-self-stretch {align-self:stretch;}

.mt-0 {margin-top:0;}
.mt-25 {margin-top: 2.5rem;}
.mt-50 {margin-top:5rem;}
.mt-75 {margin-top:7.5rem;}
.mt-100 {margin-top:10rem;}
.mt-150 {margin-top:15rem;}

.mb-0 {margin-bottom:0;}
.mb-25 {margin-bottom: 2.5rem;}
.mb-50 {margin-bottom:5rem;}
.mb-75 {margin-bottom:7.5rem;}
.mb-100 {margin-bottom:10rem;}
.mb-150 {margin-bottom:15rem;}

.pd-smaller {padding: var(--padding-smaller) 0;}
.pd-small {padding: var(--padding-small) 0;}
.pd-medium {padding: var(--padding-medium) 0;}
.pd-large {padding: var(--padding-large) 0;}
.pd-none {padding:0;}

.pd-custom, .pd-all-custom {
	padding-top: var(--pad-top,0);
	padding-bottom: var(--pad-bottom,0);
	padding-left: var(--pad-left,0);
	padding-right: var(--pad-right,0);
}

.pd-all-smaller {padding: var(--padding-smaller);}
.pd-all-small {padding: var(--padding-small);}
.pd-all-medium {padding: var(--padding-medium);}
.pd-all-large {padding: var(--padding-large);}
.pd-all-none {padding:0;}

.header-block--goes-transparent + .main .module--1.pd-smaller, .header-block--goes-transparent + .main .module--1 .pd-smaller {padding-top: calc(var(--padding-smaller) + var(--header-height,8.5rem));}
.header-block--goes-transparent + .main .module--1.pd-small, .header-block--goes-transparent + .main .module--1 .pd-small {padding-top: calc(var(--padding-small) + var(--header-height,8.5rem));}
.header-block--goes-transparent + .main .module--1.pd-medium, .header-block--goes-transparent + .main .module--1 .pd-medium {padding-top: calc(var(--padding-medium) + var(--header-height,8.5rem));}
.header-block--goes-transparent + .main .module--1.pd-large, .header-block--goes-transparent + .main .module--1 .pd-large {padding-top: calc(var(--padding-large) + var(--header-height,8.5rem));}
.header-block--goes-transparent + .main .module--1.pd-none, .header-block--goes-transparent + .main .module--1 .pd-none {padding-top: var(--header-height,8.5rem);}

.header-block--goes-transparent + .main .module--1.pd-none, .header-block--goes-transparent + .main .module--1 .pd-0 {padding-top: var(--header-height,8.5rem);}

@media only screen and (max-width: 768px) {
	.mt-25 {margin-top: 2rem;}
	.mt-50 {margin-top:3rem;}
	.mt-75 {margin-top:4.5rem;}
	.mt-100 {margin-top:6rem;}
	.mt-150 {margin-top:10rem;}
	
	.mb-25 {margin-bottom:2rem;}
	.mb-50 {margin-bottom:3rem;}
	.mb-75 {margin-bottom:4.5rem;}
	.mb-100 {margin-bottom:6rem;}
	.mb-150 {margin-bottom:10rem;}
	    
	.pd-smaller {padding:calc(var(--padding-smaller) * 0.9) 0;}
	.pd-small {padding:calc(var(--padding-small) * 0.9) 0;}
	.pd-medium {padding:calc(var(--padding-medium) * 0.9) 0;}
	.pd-large {padding:calc(var(--padding-large) * 0.9) 0;}
	.pd-none {padding:0;}
	
	.pd-custom, .pd-all-custom {
		padding-top: var(--mob-pad-top,var(--pad-top,0));
		padding-bottom: var(--mob-pad-bottom,var(--pad-bottom,0));
		padding-left: var(--mob-pad-left,var(--pad-left,0));
		padding-right: var(--mob-pad-right,var(--pad-right,0));
	}
	
	.pd-mob-smaller {padding:calc(var(--padding-smaller) * 0.9) 0;}
	.pd-mob-small {padding:calc(var(--padding-small) * 0.9) 0;}
	.pd-mob-medium {padding:calc(var(--padding-medium) * 0.9) 0;}
	.pd-mob-large {padding:calc(var(--padding-large) * 0.9) 0;}
	.pd-mob-none,.pd-mob-0 {padding:0;}
	
	.pd-all-smaller {padding:calc(var(--padding-smaller) * 0.9);}
	.pd-all-small {padding:calc(var(--padding-small) * 0.9);}
	.pd-all-medium {padding:calc(var(--padding-medium) * 0.9);}
	.pd-all-large {padding:calc(var(--padding-large) * 0.9);}
	.pd-all-none {padding:0;}

	.pd-all-mob-smaller {padding:calc(var(--padding-smaller) * 0.9);}
	.pd-all-mob-small {padding:calc(var(--padding-small) * 0.9);}
	.pd-all-mob-medium {padding:calc(var(--padding-medium) * 0.9);}
	.pd-all-mob-large {padding:calc(var(--padding-large) * 0.9);}
	.pd-all-mob-none,.pd-all-mob-0 {padding:0;}
	
	.header-block--goes-transparent + .main .module--1.pd-smaller, .header-block--goes-transparent + .main .module--1 .pd-smaller {padding-top: calc(var(--padding-smaller) * 0.9 + var(--header-height,8.5rem));}
	.header-block--goes-transparent + .main .module--1.pd-small, .header-block--goes-transparent + .main .module--1 .pd-small {padding-top: calc(var(--padding-small) * 0.9 + var(--header-height,8.5rem));}
	.header-block--goes-transparent + .main .module--1.pd-medium, .header-block--goes-transparent + .main .module--1 .pd-medium {padding-top: calc(var(--padding-medium) * 0.9 + var(--header-height,8.5rem));}
	.header-block--goes-transparent + .main .module--1.pd-large, .header-block--goes-transparent + .main .module--1 .pd-large {padding-top: calc(var(--padding-large) * 0.9 + var(--header-height,8.5rem));}
	.header-block--goes-transparent + .main .module--1.pd-none, .header-block--goes-transparent + .main .module--1 .pd-none {padding-top: var(--header-height,8.5rem);}
	
	.header-block--goes-transparent + .main .module--1.pd-mob-smaller, .header-block--goes-transparent + .main .module--1 .pd-mob-smaller {padding-top: calc(var(--padding-smaller) * 0.9 + var(--header-height,8.5rem));}
	.header-block--goes-transparent + .main .module--1.pd-mob-small, .header-block--goes-transparent + .main .module--1 .pd-mob-small {padding-top: calc(var(--padding-small) * 0.9 + var(--header-height,8.5rem));}
	.header-block--goes-transparent + .main .module--1.pd-mob-medium, .header-block--goes-transparent + .main .module--1 .pd-mob-medium {padding-top: calc(var(--padding-medium) * 0.9 + var(--header-height,8.5rem));}
	.header-block--goes-transparent + .main .module--1.pd-mob-large, .header-block--goes-transparent + .main .module--1 .pd-mob-large {padding-top: calc(var(--padding-large) * 0.9 + var(--header-height,8.5rem));}
	.header-block--goes-transparent + .main .module--1.pd-mob-none, .header-block--goes-transparent + .main .module--1 .pd-mob-none {padding-top: var(--header-height,8.5rem);}
}

/* Border Radius Settings */
.testimonial-cr{border-radius: var(--module-settings-testimonials-border-radius);}
.item-cr{border-radius: var(--module-settings-listing-border-radius); overflow: hidden;}
.image-cr{border-radius: var(--module-settings-image-video-border-radius); overflow: hidden;}
.video-cr{border-radius: var(--module-settings-image-video-border-radius); overflow: hidden;}

.position-relative {
	position:relative;
}
.set-relative {
	position:relative;
}
.set-relative .container {
	position:relative;
	z-index: 1;
}

.no-display, .visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    white-space: nowrap;
}

.image--fit{
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.video--fit > video{
    height: 100%;
    object-fit: cover;
    object-position: center;
}

@media only screen and (max-width: 768px) {      
    .image--fit, .video--fit{
      width: 100%;
    }
}
/* ------------------------------- FOUNDATION/COLUMNS.CSS ------------------------------- */

.col1--full-height,
.col2--full-height {
	min-height: calc(100vh - var(--header-height,72px));
	display:flex;
}
.header-block--goes-transparent + .main :is(.module--1.col1--full-height,.module--1.col2--full-height) {
	min-height: 100vh;
}

.col1 .grid-row {
	grid-template-columns: 100%;
	gap:0; /* Gap replaced by padding to element area */
}
.col2 .grid-row {
	grid-template-columns:calc(var(--column-1-width)*var(--vw)) calc(var(--column-2-width)*var(--vw));
	gap:0; /* Gap replaced by padding to element area */
}
:is(.col1,.col2) .grid-row--2Xgap {
	--grid-column-gap: calc(var(--module-settings-column-gap) * 2);
}

/* Columns */
.grid-column{
	--container-width: var(--container-default);
	display: flex;
	flex-direction:column;
	align-items:center;
	width: 100%;
	position:relative;
}
.grid-column--narrower {--container-width: var(--container-narrower);}    
.grid-column--narrow {--container-width: var(--container-narrow);}
.grid-column--medium {--container-width: var(--container-medium);}
.grid-column--wide {--container-width: var(--container-wide);}
.grid-column--wider{--container-width: var(--container-wider);}
.grid-column--full {--container-width: var(--container-full);}

.grid-column--1 {
	padding-left:max( (var(--100vw) - var(--container-width))/2, (var(--100vw) - var(--container))/2 );
	padding-right:max((var(--100vw) - var(--container-width))/2, (var(--100vw) - var(--container))/2 );
}
.grid-column--2:where(:first-of-type) {
	padding-right:calc(var(--grid-column-gap)/2);
	padding-left:max( (var(--100vw) - var(--container-width))/2, (var(--100vw) - var(--container))/2 );
}
.grid-column--2:where(:last-of-type) {
	padding-left:calc(var(--grid-column-gap)/2);
	padding-right:max((var(--100vw) - var(--container-width))/2, (var(--100vw) - var(--container))/2 );
}
.grid-column--fill-column-gap:where(:first-of-type) {
	padding-left:calc(var(--grid-column-gap));
}
.grid-column--fill-column-gap:where(:last-of-type) {
	padding-right:calc(var(--grid-column-gap));
}
.grid-column--fill-none:where(:first-of-type) {
	padding-left:0;
}
.grid-column--fill-none:where(:last-of-type) {
	padding-right:0;
}
.grid-column--fill-container:where(:first-of-type) {
	padding-left:calc( (var(--100vw) - var(--container))/2 );
}
.grid-column--fill-container:where(:last-of-type) {
	padding-right:calc( (var(--100vw) - var(--container))/2 );
}

.grid-column--left-circle:before{
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml,%3Csvg width='141' height='282' viewBox='0 0 141 282' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cy='141' r='140.5' stroke='%23E5E5E5'/%3E%3C/svg%3E%0A");    
    width: 282px;
    height: 282px;
    position: absolute;
    left: calc(0px - calc(var(--body-border-size) * 2));
}

.grid-column--right-circle:after{
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml,%3Csvg width='141' height='282' viewBox='0 0 141 282' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cy='141' r='140.5' stroke='%23E5E5E5'/%3E%3C/svg%3E%0A");    
    width: 282px;
    height: 282px;
    position: absolute;
    right: calc(0px - calc(var(--body-border-size)));
    transform: rotate(180deg);
}

.grid-column__elements:has(.content__element--image-right-circle){
    position: relative;
    overflow: visible;
    z-index: auto;
}

.grid-column__elements:has(.content__element--image-right-circle):before{
    content: '';
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url("data:image/svg+xml,%3Csvg width='1308' height='1416' viewBox='0 0 1308 1416' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='708' cy='708' r='707.5' stroke='%23DBDBDB' stroke-opacity='0.3'/%3E%3Ccircle cx='708' cy='708' r='391.5' stroke='%23DBDBDB'/%3E%3Ccircle cx='708' cy='708' r='391.5' stroke='%23DBDBDB'/%3E%3Ccircle cx='708' cy='708' r='504.5' stroke='%23DBDBDB' stroke-opacity='0.5'/%3E%3C/svg%3E%0A");    width: 282px;
    width: 65vw;
    height: 65vw;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    position: absolute;
}

@media only screen and (max-width: 1440px) {


    .grid-column--left-circle:before,
    .grid-column--right-circle:after{
        height: 140px;
        width: 140px;
    }
}

@media only screen and (max-width: 1160px) {
    .grid-column--left-circle:before{
        display: none;
    }
}


@media only screen and (max-width: 960px) {
    .grid-column__elements:has(.content__element--image-right-circle):before{
        width: 70vw;
        height: 70vw;
    }   
}

@media only screen and (max-width: 640px) {
    .grid-column__elements:has(.content__element--image-right-circle):before{
        width: 100vw;
        height: 100vw;
    }    
}


    
/* .color-light .grid-column--left-circle .grid-column__elements:before{
    background-image: url("data:image/svg+xml,%3Csvg width='141' height='282' viewBox='0 0 141 282' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cy='141' r='140.5' stroke='%23FFFFFF'/%3E%3C/svg%3E%0A");
}
 */
/* .grid-column:where(:last-of-type).grid-column--right-circle:after{
    content: '';
    
} */


/* Elements area */
.grid-column__elements {
	display:flex;
	flex-direction:column;
    max-width:var(--100vw);
	max-width:var(--content-max-width,'none');
	justify-content:var(--element-position);
	height:100%;
	width:100%;
	position:relative;
	z-index:1;
	border-radius:var(--cr-top-left) var(--cr-top-right) var(--cr-bottom-right) var(--cr-bottom-left);
	overflow:hidden;
}

/* Elements */
.content__element {
	position:relative;
	max-width:100%;
}
.content__element:not(:last-of-type){
    margin-bottom: 3rem;
}

@media only screen and (max-width: 960px) {
	.col2 .grid-row {
		grid-template-columns: 100%;
		gap:var(--grid-column-gap);/* Add vertical gap */
	}

	.grid-column {
		padding-left:max( (var(--100vw) - var(--container-width))/2, (var(--100vw) - var(--container))/2 );
		padding-right:max( (var(--100vw) - var(--container-width))/2, (var(--100vw) - var(--container))/2 );
	}
	.grid-column--fill-none {
		padding-left:0;
		padding-right:0;
	}

    .grid-row:not(.grid-row--mob-reverse):has(.grid-column--2) .grid-column:first-of-type,
	.grid-row--mob-reverse:has(.grid-column--2) .grid-column:last-of-type {
		padding-bottom:0;
	}
	.grid-row:not(.grid-row--mob-reverse):has(.grid-column--2) .grid-column:last-of-type,
	.grid-row--mob-reverse:has(.grid-column--2) .grid-column:first-of-type {
		padding-top:0;
		order:1;
	}
    
	.grid-column__elements {
		border-radius:var(--cr-mob-top-left) var(--cr-mob-top-right) var(--cr-mob-bottom-right) var(--cr-mob-bottom-left);
	}
}

/* Editor Hints */
.hs-inline-edit .grid-row--show-hints ::before {
	position: absolute;
	z-index: 2;
	width: 100%;
	inset: 0;
	border: 2px solid;
	text-align: center;
	font-weight:bold;
	text-shadow:1px 1px 2px #000;
}
.hs-inline-edit .grid-row--show-hints .grid-column::before {
	content: "Column";
	color: yellowgreen;
}
.hs-inline-edit .grid-row--show-hints .grid-column__elements::before {
	content: "Element Area";
	color: aqua;
}
.hs-inline-edit .grid-row--show-hints .content__element::before {
	content: var(--element-type);
	color: aquamarine;
}

/* Theme Overrides
These are styles that may override the default library styles
*/



body:has(.content__element--image-right-circle){
    overflow-x: hidden;
}

.header__nav__link__chevron{
    display: flex;
}

.header-block--sticky .header__nav__link{
    transition: .25s padding ease-in-out;
}

.header-block--minimise .header__nav__link{
    --header-nav-link-padding-vertical: 1rem;
}

.header-block{
    transition: .25s padding ease-in-out;
    left: 0;
}

.header-block:not(.header-block--minimise):not(:has(.header__nav.active)){
    padding-top: var(--body-border-size);
}

.header-block:not(.header-block--minimise):not(.header-block--transparent):not(:has(.header__nav.active)){
    padding-top: 0;
}

.heading--accent {
    font-style: italic;
}

.text--italic {
    font-style: italic;
}

.footer{
    --form-gdpr-size: 1.4rem;    
}

.footer-block{
    width: calc(100% + calc(var(--body-border-size) * 2));
    margin-left: calc(var(--body-border-size) * -1);
}

.footer__about h2{
    font-family: var(--font-body-font);
}

.footer form.hs-form label{
    font-size: 1.6rem;    
    letter-spacing: -0.02em;
}

.footer__about-contact{
    align-items: flex-end;
    padding: 9rem 0 7rem !important;
}

.footer__social,
.footer__logo,
.footer__nav__menu{
    margin: 0 !important;   
}

/* FORMS */
.hs-form-field {
	position: relative;
}

.hs-form-field:where(.hs-fieldtype-text,.hs-fieldtype-phonenumber) > label ,
div:where(.hsfc-TextField, .hsfc-EmailField, .hsfc-PhoneField, .hsfc-DropdownField) > label{
	position: absolute;
	top: 1rem;
	left: 0;
	transition: translate 0.25s ease-in-out, scale 0.25s ease-in-out;
	transform-origin: bottom left;
}

.footer .hs-form-field:where(.hs-fieldtype-text,.hs-fieldtype-phonenumber,.hs-fieldtype-textarea) > label {
    font-size: 1.6rem;
}

div:where(.hsfc-TextField, .hsfc-EmailField, .hsfc-PhoneField, .hsfc-DropdownField){
    position: relative;
}

.hs-form-field:where(.hs-fieldtype-text,.hs-fieldtype-phonenumber,.hs-fieldtype-select):is(:focus-within,:has(:is(:where(input):not(:placeholder-shown),select:not(.is-placeholder)))) > label, 
div:where(.hsfc-TextField, .hsfc-EmailField, .hsfc-PhoneField, .hsfc-DropdownField):is(:focus-within,:has(:is(:where(input):not(:placeholder-shown),select:not(.is-placeholder)))) > label{
    translate: 0 -100%;
	scale: 0.9;
}

.component__form form .input input:is([type=text],[type=email],[type=password],[type=tel],[type=number],[type=file]) {
    border-top: 0;
    border-left: 0;
    border-right: 0;
    border-bottom: var(--form-primary-input-border-size) solid var(--form-primary-input-border-color);
}

.component__form .hsfc-Form input:is([type=text],[type=email],[type=password],[type=tel],[type=number],[type=file]),
.component__form .hsfc-Form input:is([type=text],[type=email],[type=password],[type=tel],[type=number],[type=file]):hover {
    border-top: 0;
    border-left: 0;
    border-right: 0;
    box-shadow: none;
}

.hs-form-field:where(.hs-fieldtype-select) select.is-placeholder {
    font-size: 0 !important;
}

.component__form .hs-form-field:where(.hs-fieldtype-text,.hs-fieldtype-phonenumber):is(:focus-within,:has(:where(input):not(:placeholder-shown))) > label {   
    color: var(--form-primary-text-color);
}

.component__form .hs-form-field:where(.hs-fieldtype-text,.hs-fieldtype-phonenumber) > label {
	position: absolute;
	top: 50%;
	left: 0;
	transition: translate 0.25s ease-in-out, scale 0.25s ease-in-out;
    transform: translateY(-50%);
	transform-origin: bottom left;
    font-size: 1.6rem;
    color: #949494;
}

.footer__ribbon .hs-menu-wrapper.hs-menu-flow-horizontal ul{
    margin: 0 !important;
    padding-left: 1.4rem;
}

.footer__ribbon .hs-menu-wrapper.hs-menu-flow-horizontal li {
    margin: 0 1.4rem !important;
}

.footer__ribbon .hs-menu-wrapper.hs-menu-flow-horizontal li:before {
    height: 2ch !important;
    left: -1.45rem !important;
}

.footer__ribbon {
    padding: 2.5rem 0 !important;
}

.footer__menu--right .footer__nav__menu .footer__nav__li {
    width: auto;
}

.footer__ribbon *{
    font-size: 1.6rem;
    text-underline-offset: 4px;
}

.footer form.hs-form :is(.hs-form-field,.hs-dependent-field) input:is([type=text],[type=email],[type=password],[type=tel],[type=number]):focus-visible {
    outline: none !important;
}

.footer form{
    position: relative;
}

.footer:not(.footer--cp) .footer__about{
    padding-right: 6rem;
}

.footer form.hs-form .btn--submit{
    position: absolute;
    top: 0;
    right: -6rem;
    padding: 0;
    margin: 0;
    font-size: 0;
}

.footer form.hs-form .btn--submit:after{
    content: '';
    width: 3.5rem;
    height: 3.5rem;
    position: relative;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: bottom;
    background-image: url("data:image/svg+xml,%3Csvg width='36' height='35' viewBox='0 0 36 35' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='14.5547' y='16.0098' width='17.4658' height='2.91096' fill='white'/%3E%3Crect y='16.0098' width='11.6439' height='2.91096' fill='white'/%3E%3Crect x='18.0684' width='24.7432' height='2.91096' transform='rotate(45 18.0684 0)' fill='white'/%3E%3Crect x='35.5645' y='17.4961' width='24.7432' height='2.91096' transform='rotate(135 35.5645 17.4961)' fill='white'/%3E%3C/svg%3E%0A");
}

.footer .hs_cos_wrapper_type_form{
    display: block;
    margin-bottom: 6rem;
}

.footer .legal-consent-container{
    letter-spacing: -0.02em;
    color: white !important
}

/* form.hs-form .hs-form-field:is(.hs-fieldtype-text,.hs-fieldtype-phonenumber,.hs-fieldtype-textarea) .input :is(input:is([type=text],[type=email],[type=password],[type=tel],[type=number]),textarea) {
	border-top: 0;
	border-left: 0;
	border-right: 0;
} */

/* .footer form.hs-form :is(.hs-form-field,.hs-dependent-field) input:is([type=checkbox],[type=radio]):checked:before{
    color: var(--color-white);
}
 */
.footer form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input:is([type=text],[type=email],[type=password],[type=tel],[type=number],[type=file]){
    padding: 1rem 1rem 1rem 0;
    border-top: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-bottom: 1px solid var(--color-white);
    --form-input-size: 1.4rem;
}    

.footer form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input:is([type=checkbox],[type=radio]),
.footer form.hs-form :is(.hs-form-field,.hs-dependent-field) .input input:is([type=text],[type=email],[type=password],[type=tel],[type=number],[type=file]){
    --form-primary-input-color: var(--color-white);
}

.footer form.hs-form label{
    --form-primary-label-color: var(--color-white);
    --form-primary-warning-message-color: #FFF;
}

.footer form.hs-form .hs-error-msg,
.footer .hs-error-msgs .hs-main-font-element{
    font-weight: 600;    
}

body{
    position: relative;
    --body-border-size: 2.5rem;
    padding: var(--body-border-size) var(--body-border-size) 0;
}

body.body--no-border{
    --body-border-size: 0rem;
}

body.hs-blog-post::before,
body.hs-blog-listing::before{
    display: none !important;
}

.body--no-footer-form footer .footer__about h2,
.body--no-footer-form footer .hs_cos_wrapper_type_form{
    display: none !important;
}    

body.body--no-footer-form.body--no-nav .footer__about-contact{
    padding: 2rem 0 !important;
    align-items: center;
}

body.body--no-footer-form.body--no-nav  .footer__about{
    margin: 0 !important;
    padding: 0;
    width: 100%;
    text-align: center;
}


.body--no-nav .footer__menu{
    display: none;
}

@media only screen and (min-width: 769px) {
    body:not(.body--no-right-circle):before{
        --size: 955px;
        background-repeat: no-repeat;
        background-size: cover;
        background-position: left;
        content: "";
        height: var(--size);
        mix-blend-mode: overlay;
        opacity: .25;
        pointer-events: none;
        position: absolute;
        right: 0;
        top: 50vh;
        top: calc(var(--module-initial-height,400px) - 70px);
        width: calc(var(--size) / 2);
        z-index: 2;
        background-image: url("data:image/svg+xml,%3Csvg width='171' height='171' viewBox='0 0 171 171' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M85.5 128.25C109.11 128.25 128.25 109.11 128.25 85.5C128.25 61.8898 109.11 42.75 85.5 42.75C61.8898 42.75 42.75 61.8898 42.75 85.5C42.75 109.11 61.8898 128.25 85.5 128.25ZM85.5 171C132.72 171 171 132.72 171 85.5C171 38.2797 132.72 0 85.5 0C38.2797 0 0 38.2797 0 85.5C0 132.72 38.2797 171 85.5 171Z' fill='%23FFFFFF'/%3E%3C/svg%3E%0A");
    }
}

body.body--left-circle:before{
    --size: 46vw;    
    background-position: 0;
    background-repeat: no-repeat;
    background-size: cover;
    content: "";
    height: var(--size);
    pointer-events: none;
    position: absolute;
    left: 0;
    right: auto;
    top: 0;
    opacity: 1;
    z-index: 1;
    mix-blend-mode: normal;
    width: calc(var(--size));
    background-image: url("data:image/svg+xml,%3Csvg width='682' height='680' viewBox='0 0 682 680' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M0 339C188.329 339 341 186.329 341 -2C341 -190.329 188.329 -343 0 -343C-188.329 -343 -341 -190.329 -341 -2C-341 186.329 -188.329 339 0 339ZM0 680C376.658 680 682 374.658 682 -2C682 -378.658 376.658 -684 0 -684C-376.658 -684 -682 -378.658 -682 -2C-682 374.658 -376.658 680 0 680Z' fill='%23F9F9F9'/%3E%3C/svg%3E%0A");
}

@media only screen and (max-width: 768px) {
    body{
        --body-border-size: 1.5rem;
    }
    body.body--no-border{
        --body-border-size: 0rem;
    }
}

@media only screen and (max-width: 500px) {
    body{
        --body-border-size: 1rem;
    }
    body.body--no-border{
        --body-border-size: 0rem;
    }
}

@media only screen and (min-width: 1441px) {
    body:not(.body--no-right-circle):before{
        --size: 1500px;
    }
    
    body.body--left-circle:before{
        --size: 40vw;    
    }
}

.component__ctas {
    gap: calc(var(--button-margin, 0)* 2) 4rem;
}


/* Blog Button Overrides */

.btn--listing,.cta--listing .cta_button[style],.cta--listing .hs-web-interactive-inline a,.hs-web-interactive-inline a.cta--listing,
.btn.btn--filter, .btn.btn--listing, .blog-post-listing__pagination__link{
    --button-size: 1.6rem;
    letter-spacing: var(--font-body-letter-spacing);
    padding: 1rem 2.3rem;
    --button-padding-lr: 1.125em;
	--button-padding-top: 0.5em;
	--button-padding-bottom: 0.5em;
    line-height: 1;
}

/* Custom Inline CTAs styling */

.btn--text_black,.cta--text_black .cta_button[style],.cta--text_black .hs-web-interactive-inline a,.hs-web-interactive-inline a.cta--text_black,
.btn--text_black_2,.cta--text_black_2 .cta_button[style],.cta--text_black_2 .hs-web-interactive-inline a,.hs-web-interactive-inline a.cta--text_black_2,
.btn--text_red,.cta--text_red .cta_button[style],.cta--text_red .hs-web-interactive-inline a,.hs-web-interactive-inline a.cta--text_red,
.btn--text_red2,.cta--text_red2 .cta_button[style],.cta--text_red2 .hs-web-interactive-inline a,.hs-web-interactive-inline a.cta--text_red2{
    border-radius: 0;
    background-color: transparent;
    border: none;
    position: relative;
    font-weight: 600;
    text-wrap: balance;
    --button-primary-text-color: var(--color-secondary);
    --button-primary-hover-text-color: var(--color-secondary);
    --button-padding-top: 1.1em;
    --button-padding-bottom: 1.1em;
    --button-padding-lr: 0;
    --button-primary-hover-background-color: transparent;
    --button-primary-border-width: 0;
}




@media only screen and (min-width: 1441px) {
    
    .btn--text_black,.cta--text_black .cta_button[style],.cta--text_black .hs-web-interactive-inline a,.hs-web-interactive-inline a.cta--text_black,
    .btn--text_black_2,.cta--text_black_2 .cta_button[style],.cta--text_black_2 .hs-web-interactive-inline a,.hs-web-interactive-inline a.cta--text_black_2,
    .btn--text_red,.cta--text_red .cta_button[style],.cta--text_red .hs-web-interactive-inline a,.hs-web-interactive-inline a.cta--text_red,
    .btn--text_red2,.cta--text_red2 .cta_button[style],.cta--text_red2 .hs-web-interactive-inline a,.hs-web-interactive-inline a.cta--text_red2{
        font-size: 1.8rem;
    }
}


.color-light .btn--text_black,.color-light .cta--text_black .cta_button[style],.color-light .cta--text_black .hs-web-interactive-inline a,.color-light .hs-web-interactive-inline a.cta--text_black,
.color-light .btn--text_black_2,.color-light .cta--text_black_2 .cta_button[style],.color-light .cta--text_black_2 .hs-web-interactive-inline a,.color-light .hs-web-interactive-inline a.cta--text_black_2,
.color-light .btn--text_red,.color-light .cta--text_red .cta_button[style],.color-light .cta--text_red .hs-web-interactive-inline a,.color-light .hs-web-interactive-inline a.cta--text_red,
.color-light .btn--text_red2,.color-light .cta--text_red2 .cta_button[style],.color-light .cta--text_red2 .hs-web-interactive-inline a,.color-light .hs-web-interactive-inline a.cta--text_red2{
    --button-primary-text-color: var(--color-white);
    --button-primary-hover-text-color: var(--color-white);
    background: none;
    border: 0;
    position: relative;
    padding-left: 0;
}

.btn--text_black:before,.cta--text_black .cta_button[style]:before,.cta--text_black .hs-web-interactive-inline a:before,.hs-web-interactive-inline a.cta--text_black:before,
.btn--text_black_2:before,.cta--text_black_2 .cta_button[style]:before,.cta--text_black_2 .hs-web-interactive-inline a:before,.hs-web-interactive-inline a.cta--text_black_2:before,
.btn--text_red:before,.cta--text_red .cta_button[style]:before,.cta--text_red .hs-web-interactive-inline a:before,.hs-web-interactive-inline a.cta--text_red:before,
.btn--text_red2:before,.cta--text_red2 .cta_button[style]:before,.cta--text_red2 .hs-web-interactive-inline a:before,.hs-web-interactive-inline a.cta--text_red2:before {
    content: '';
    height: 1px;
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    background-color: var(--color-secondary);
    transition: .25s all ease-out;
}

.btn--text_black:before,.cta--text_black .cta_button[style]:before,.cta--text_black .hs-web-interactive-inline a:before,.hs-web-interactive-inline a.cta--text_black:before{
    transform: scaleX(0);
    transform-origin: bottom left;
}

.btn--text_red:before,.cta--text_red .cta_button[style]:before,.cta--text_red .hs-web-interactive-inline a:before,.hs-web-interactive-inline a.cta--text_red:before,
.btn--text_red2:before,.cta--text_red2 .cta_button[style]:before,.cta--text_red2 .hs-web-interactive-inline a:before,.hs-web-interactive-inline a.cta--text_red2:before {
    background-color: var(--color-primary2);
}

.btn--text_black_2:hover:before,.cta--text_black_2 .cta_button[style]:hover:before,.cta--text_black_2 .hs-web-interactive-inline a:hover:before,.hs-web-interactive-inline a.cta--text_black_2:hover:before,
.btn--text_red:hover:before,.cta--text_red .cta_button[style]:hover:before,.cta--text_red .hs-web-interactive-inline a:hover:before,.hs-web-interactive-inline a.cta--text_red:hover:before,
.btn--text_red2:hover:before,.cta--text_red2 .cta_button[style]:hover:before,.cta--text_red2 .hs-web-interactive-inline a:hover:before,.hs-web-interactive-inline a.cta--text_red2:hover:before {
    bottom: 10px;
}

.btn--text_black:hover:before,.cta--text_black .cta_button[style]:hover:before,.cta--text_black .hs-web-interactive-inline a:hover:before,.hs-web-interactive-inline a.cta--text_black:hover:before{
  transform: scaleX(1);
}


.btn--text_black:after,.cta--text_black .cta_button[style]:after,.cta--text_black .hs-web-interactive-inline a:after,.hs-web-interactive-inline a.cta--text_black:after,
.btn--text_black_2:after,.cta--text_black_2 .cta_button[style]:after,.cta--text_black_2 .hs-web-interactive-inline a:after,.hs-web-interactive-inline a.cta--text_black_2:after,
.btn--text_red:after,.cta--text_red .cta_button[style]:after,.cta--text_red .hs-web-interactive-inline a:after,.hs-web-interactive-inline a.cta--text_red:after,
.btn--text_red2:after,.cta--text_red2 .cta_button[style]:after,.cta--text_red2 .hs-web-interactive-inline a:after,.hs-web-interactive-inline a.cta--text_red2:after {
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    height: 1em;
    position: relative;
    right: 0;
    width: 1em;
    margin-left: 1.7em;
    background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 8H15' stroke='%23131313' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M8 1L15 8L8 15' stroke='%23131313' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}

.btn--text_red2:after,.cta--text_red2 .cta_button[style]:after,.cta--text_red2 .hs-web-interactive-inline a:after,.hs-web-interactive-inline a.cta--text_red2:after {
    background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 8H15' stroke='%23E53C3A' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M8 1L15 8L8 15' stroke='%23E53C3A' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}

.color-light .btn--text_black:before,.color-light .cta--text_black .cta_button[style]:before,.color-light .cta--text_black .hs-web-interactive-inline a:before,.color-light .hs-web-interactive-inline a.cta--text_black:before,
.color-light .btn--text_black_2:before,.color-light .cta--text_black_2 .cta_button[style]:before,.color-light .cta--text_black_2 .hs-web-interactive-inline a:before,.color-light .hs-web-interactive-inline a.cta--text_black_2:before,
.color-light .btn--text_red:before,.color-light .cta--text_red .cta_button[style]:before,.color-light .cta--text_red .hs-web-interactive-inline a:before,.color-light .hs-web-interactive-inline a.cta--text_red:before,
.color-light .btn--text_red2:before,.color-light .cta--text_red2 .cta_button[style]:before,.color-light .cta--text_red2 .hs-web-interactive-inline a:before,.color-light .hs-web-interactive-inline a.cta--text_red2:before{
    background-color: var(--color-white);
}

.color-light .btn--text_black:after,.color-light .cta--text_black .cta_button[style]:after,.color-light .cta--text_black .hs-web-interactive-inline a:after,.color-light .hs-web-interactive-inline a.cta--text_black:after,
.color-light .btn--text_black_2:after,.color-light .cta--text_black_2 .cta_button[style]:after,.color-light .cta--text_black_2 .hs-web-interactive-inline a:after,.color-light .hs-web-interactive-inline a.cta--text_black_2:after,
.color-light .btn--text_red:after,.color-light .cta--text_red .cta_button[style]:after,.color-light .cta--text_red .hs-web-interactive-inline a:after,.color-light .hs-web-interactive-inline a.cta--text_red:after,
.color-light .btn--text_red2:after,.color-light .cta--text_red2 .cta_button[style]:after,.color-light .cta--text_red2 .hs-web-interactive-inline a:after,.color-light .hs-web-interactive-inline a.cta--text_red2:after{
    background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 8H15' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M8 1L15 8L8 15' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
}

/* Column alignment when max width is set */


.col1 .grid-row.h-align-left:has(.grid-column.has-max-width) .grid-column__elements{
    margin-right: auto;
}

.col1 .grid-row.h-align-right:has(.grid-column.has-max-width) .grid-column__elements{
    margin-left: auto;
}

.col1 .grid-row.h-align-center:has(.grid-column.has-max-width) .grid-column__elements .component__ctas{
    justify-content: center;
}

.col1 .grid-row.h-align-left:has(.grid-column.has-max-width) .grid-column__elements .component__ctas{
    justify-content: flex-start;
}

.col1 .grid-row.h-align-right:has(.grid-column.has-max-width) .grid-column__elements .component__ctas{
    justify-content: flex-end;
}



.col2 .grid-row.h-align-left:has(.grid-column.has-max-width) .grid-column__elements{
    margin-right: auto;
}

.col2 .grid-row.h-align-right:has(.grid-column.has-max-width) .grid-column__elements{
    margin-left: auto;
}

.col2 .grid-row.h-align-center:has(.grid-column.has-max-width) .grid-column__elements .component__ctas{
    justify-content: center;
}

.col2 .grid-row.h-align-left:has(.grid-column.has-max-width) .grid-column__elements .component__ctas{
    justify-content: flex-start;
}

.col2 .grid-row.h-align-right:has(.grid-column.has-max-width) .grid-column__elements .component__ctas{
    justify-content: flex-end;
}

.customer-logos__container:has(.customer-logos__items--carousel){
    overflow: hidden;
}

.customer-logos .slick-track{
    align-items: center;
}

.customer-logos .slick-slide {
    margin: 0 50px;
}

.customer-logos .slick-list {
    margin: 0 -50px;
}

.customer-logos img{
    mix-blend-mode: multiply; 
    opacity: 0.8;
}

/* Component for Chinese Characters */

.component__chinese p {
    font-size: 1.8rem;
    margin: 0 0 1.5rem 0;
    letter-spacing: 5px;
/*     color: var(--color-primary); */
    font-weight: 400;
}

@media only screen and (max-width: 768px) {

    .image-text-items__container.grid-row--4pr:not(:has(.image-text-item__text)),
    .image-text-items__container.grid-row--3pr:not(:has(.image-text-item__text)){
        grid-template-columns: repeat(2, 50fr) !important;
    }
    
    .image-text-items__container.grid-row--4pr:not(:has(.image-text-item__text)) .image-text-items__item__img-container,
    .image-text-items__container.grid-row--3pr:not(:has(.image-text-item__text)) .image-text-items__item__img-container{    
        align-items: center !important;
    }

}
    
@media only screen and (max-width: 960px) {

    body:has(.header-block--transparent):has(.header-block--goes-transparent):has(.header-block-override-navigation--standard) .header__hamburger:not(.active){
        --header-transparent-mobile-nav-hamburger-color: var(--color-white);
    }
    
    img[data-image-max-width-mobile] {
        max-width: var(--image-max-width-mobile);
        width: 100%; */
    }
  
    .content__element--image:has(img[data-image-max-width-mobile]) {
        width: 100%;   
    }
    
    .content__element--image:has(img[data-image-alignment-mobile="left"]) {
        display: flex;
        justify-content: flex-start;
    }
    
    .content__element--image:has(img[data-image-alignment-mobile="center"]) {
        display: flex;
        justify-content: center;
    }
    
    .content__element--image:has(img[data-image-alignment-mobile="right"]) {
        display: flex;
        justify-content: flex-end;
    }
   
}


/* Insights Header */

.header--insights{
    --header-nav-link-size: 1.6rem;
}

body:has(.header--insights){
    --module-settings-cta-border-radius: 0;
    --button-size: 1.6rem;
}

body:has(.header--insights) :where(h1,.text-h1,h2,.text-h2,h3,.text-h3,h4,.text-h4,h5,.text-h5){
    text-wrap: pretty;
}

@media only screen and (min-width: 1501px) {
    body:has(.header--insights){
        --font-h1-size: 6.0rem !important;
        --font-h2-size: 4.0rem !important;
        --font-h3-size: 3.0rem !important;
        --font-h4-size: 2.8rem !important;
        --font-h5-size: 2.2rem !important;
        --font-body-size: 1.6rem !important;
    }
}

@media only screen and (max-width: 1500px) {
    body:has(.header--insights) .blog-inner-hero h1{
        --font-h1-size: max(3.5rem,min(5.5rem,3.5rem + 20 * (100vw - 360px) / (1024 - 360)) + (max(0rem,5 * (100vw - 1024px) / (1440 - 1024))));;
        font-size: var(--font-h1-size)
    }

    body:has(.header--insights){
        --font-body-size: 1.6rem !important;
    }

}

.header--insights .header__nav__li--link-to-main-site a{
    text-decoration: underline !important;
}

.btn--white,
.cta--white .cta_button[style],
.cta--white .hs-web-interactive-inline a,
.hs-web-interactive-inline a.cta--white{
	background-color: var(--color-white);
	color: var(--font-body-color);
    border: 1px solid var(--color-white);
}

.btn--white:hover,
.cta--white .cta_button[style]:hover,
.cta--white .hs-web-interactive-inline a:hover,
.hs-web-interactive-inline a.cta--white:hover{
	background-color: var(--color-white);
	color: var(--font-body-color);
    border: 1px solid var(--color-white);
}

/* Insights post */

@media only screen and (min-width: 1441px) {
    .blog-post-layout--insights{
        grid-template-columns: 450px minmax(0, 950px) !important;
    }
}

.blog-post-layout--insights{
    display: grid;
    gap: 0;
    grid-template-columns: 350px minmax(0, 850px);
    align-items: start;
}

.blog-post-layout--insights .blog-post-layout__side{
    display: flex;
    flex-direction: column;
    padding-top: 6rem;
    padding-right: 7.5rem;
    padding-bottom: 5.5rem;
    height: calc(100vh );
    position: sticky; 
    top: 0;
}

.blog-post-layout--insights .blog-inner__post__body{
    display: grid;
    grid-template-columns: 100%;
    align-items: start;
    text-align: left;
    padding-top: 6rem;
    padding-bottom: 20rem;
    padding-inline: 6rem;
    border-left: 1px solid #7D7D7D;
    height: 100%;
    --font-body-line-height: 1.75;
}

.blog-post-layout--insights .blog-inner__post__body p{
    max-width: none;
}

.blog-post-layout--insights .blog-inner__post__body .hs_cos_wrapper_type_rich_text{
    display: flex; 
    flex-direction: column; 
    gap: 5rem;
}

.blog-post-layout__side em{
    font-size: 1.8rem;
    letter-spacing: var(--font-body-letter-spacing);
    text-align: left;
    color: #12121280;
}

.blog-post-layout__side--sticky__jump,
.blog-post-layout__next p{
    margin: 0;
    font-family: var(--font-body-font);
    font-weight: 500;
    letter-spacing: var(--font-body-letter-spacing);
}

.blog-post-layout__side--sticky__jump{
    font-size: 1.6rem;
    padding-bottom: 2.5rem;
    border-bottom: 1px solid #DFDFDF;
}

.blog-post-layout__next p{
    color: #888888;
    font-size: 1.6rem;
    letter-spacing: var(--font-body-letter-spacing);
}

.blog-post-layout__side--sticky__chapters{
    padding-top: 2.5rem;
}

.blog-post-layout__side em,
.blog-post-layout__next__link{
    font-family: var(--font-h1-font);
}

.blog-post-layout__next{
    position: relative;
    background-color: var(--color-secondary2);
    border-radius: 1rem; 
    border: 1px solid #ECECEC;
    padding: 2.5rem 3rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.blog-post-layout__next__link{
    text-decoration: none;
    font-size: 2rem;
    font-style: italic;
    font-weight: 400;
    letter-spacing: var(--font-body-letter-spacing);
    text-align: left;
    display: flex;
    justify-content: space-between;
}

.blog-post-layout__next__link::after{
    content: "";
    inset: 0;
    left: 0;
    position: absolute;
    width: 100%;
    z-index: 1;
}

.blog-post-layout__next{
    margin-top: auto;
}

.blog-post-layout--insights .blog-inner-image img{
    width: 100% !important;
}

.chapter-container{
    display: flex; 
    flex-direction: column; 
    gap: 3rem;
}

.blog-post-layout--insights .blog-inner-image img,
.blog-image-grid__wrapper:not(.grid-row) img{
    border-radius: 15px;
}

.blog-post-layout--insights .blog-inner__post__body p strong a {
    font-weight: 700;
}

.blog-post-layout--locked{
    border-radius: 15px;
    padding: 5rem;
    position: relative;
}

.blog-post-layout--locked__image{
    max-width: 155px;
}

.blog-post-layout--locked__buttons{
    display: flex;
    align-items: center;
    gap: 4.5rem;
}

.blog-post-layout--locked::before{
    content: '';
    position: absolute;
    top: 50%;
    right: 5rem;
    width: 225px;
    height: 280px;
    transform: translateY(-50%);
    background-image: url("data:image/svg+xml,%3Csvg width='225' height='282' viewBox='0 0 225 282' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M112.5 0C73.7297 0 42.1875 31.6263 42.1875 70.5V112.8H28.125C20.6658 112.8 13.5121 115.771 8.23762 121.06C2.96316 126.348 0 133.521 0 141V253.8C0 261.279 2.96316 268.452 8.23762 273.74C13.5121 279.029 20.6658 282 28.125 282H196.875C204.334 282 211.488 279.029 216.762 273.74C222.037 268.452 225 261.279 225 253.8V141C225 133.521 222.037 126.348 216.762 121.06C211.488 115.771 204.334 112.8 196.875 112.8H182.812V70.5C182.812 31.6263 151.27 0 112.5 0ZM70.3125 70.5C70.3125 47.1786 89.2406 28.2 112.5 28.2C135.759 28.2 154.688 47.1786 154.688 70.5V112.8H70.3125V70.5ZM126.562 221.694V253.8H98.4375V221.694C93.521 218.871 89.5733 214.621 87.1148 209.503C84.6563 204.385 83.8024 198.64 84.6659 193.026C85.5293 187.412 88.0695 182.191 91.9514 178.054C95.8333 173.916 100.875 171.055 106.411 169.849C110.523 168.934 114.788 168.958 118.89 169.917C122.992 170.877 126.827 172.748 130.111 175.393C133.396 178.037 136.045 181.388 137.865 185.197C139.685 189.006 140.628 193.176 140.625 197.4C140.617 202.331 139.313 207.174 136.844 211.439C134.375 215.704 130.829 219.241 126.562 221.694Z' fill='url(%23paint0_linear_1479_334)'/%3E%3Cdefs%3E%3ClinearGradient id='paint0_linear_1479_334' x1='592.5' y1='-272.5' x2='78' y2='290.5' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='white' stop-opacity='0.7'/%3E%3Cstop offset='1' stop-color='white' stop-opacity='0'/%3E%3C/linearGradient%3E%3C/defs%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
}

.blog-post-layout--locked .btn{
    --font-body-color: var(--color-primary2);
}

body:has(.blog-post-layout--locked) .blog-post-layout--insights .blog-post-layout__side--sticky{
    pointer-events: none;
}

/* @media only screen and (max-width: 960px) {
    .blog-post-layout--insights{
        grid-template-columns: 285px auto;
    }

    .blog-post-layout--insights .blog-inner__post__body {
        display: flex;
        align-items: initial;
        height: auto;
    }
} */

@media only screen and (max-width: 960px) {
    .blog-post-layout--insights .blog-inner__post__body {
        padding-inline: 3rem;
    }
}

@media only screen and (min-width: 961px) {  

    .blog-post-layout__side--sticky__chapter-button{
        display: none;
    }
}
@media only screen and (max-width: 960px) {  

    body:has(.blog-post-layout--locked) .blog-post-layout--insights .blog-post-layout__side{
        pointer-events: none;
    }

    .blog-post-layout__side--sticky__chapter-button{
        position: relative;
        background-color: var(--color-secondary2);
        border-radius: 1rem;
        border: 1px solid #ECECEC;
        padding: 0.75rem 1rem;
        display: flex;
        justify-content: space-between;
        gap: 1rem;
        width: 100%;
        margin: 5px 0;
        font-size: 1.6rem;
    }

    .blog-post-layout__side--sticky__chapter-button svg{
        transform: rotate(90deg);
        transition: 0.2s all ease-in-out;
    }

    .blog-post-layout__side--sticky__chapter-button.active svg{
        transform: rotate(270deg);
    }

    .blog-post-layout--insights .blog-post-layout__side{
        padding-right: 0;
        top: 0;
        width: 100%;
        left: 0;
        height: auto;
        z-index: 2;
        background-color: white;
        padding-top: 2rem;
        padding-bottom: 2rem;
    }

    .blog-post-layout--insights{
        width: 100% !important;
    }

    .blog-post-layout--insights .blog-inner__post__body {
        padding-inline: 2rem;
        max-width: var(--container-default);
        width: var(--container);
        margin: 0 auto;
        padding-top: 3rem;
    }

    .blog-post-layout__next {
        padding: 1.1rem;
        flex-direction: row;
        justify-content: space-between;
    }

    .blog-post-layout__next__link{
        gap: 1rem;
        align-items: center;
        font-size: 1.7rem;
    }
    
    .blog-post-layout--insights .blog-post-layout__side{
        padding-right: 2rem;
        padding-left: 2rem;
    }

    .blog-post-layout__side--sticky__chapters{
        display: grid !important;
        grid-template-rows: 1fr minmax(0, 1fr);
        padding-top: 0;
        padding-bottom: 1rem;
        opacity: 0;
        height: 0;
        padding-top: 0;
        margin: 0;
        visibility: hidden;
        transition: 0.2s all ease-in-out;
    }

    .blog-post-layout__side--sticky__chapters.active{
        opacity: 1;
        height: 100%;
        visibility: visible;
        padding-top: 1rem;
    }

    .blog-post-layout__side--sticky__chapters li {
        min-width: 80%;
    }

    .blog-post-layout--insights .blog-inner__post__body {
        display: flex;
        align-items: initial;
        flex-direction: column;
        padding-top: 0;
        margin-top: 3rem;
    }

    .blog-post-layout__side--sticky__jump{
        display: none;
    }
}

@media only screen and (max-width: 640px) {  
    .blog-post-layout--locked__buttons{
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }
}



.insights-fw-text,
.full-width-video,
.insights-image-slider,
.blog-image-grid
{
	padding-inline: 4.5rem;
}

@media only screen and (max-width: 640px) {
    .insights-fw-text,
    .full-width-video,
    .insights-image-slider,
    .blog-image-grid
    {
        padding-inline: 2rem;
    }
}

.cards__filter[data-filter="currency"] select{
    border-radius: 1rem;
    border: 1px solid #ECECEC;
    padding: 0.75rem 2rem;
    appearance: none;
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    width: 150px;
    margin: 5px 0;
    background-clip: padding-box;
    background-color: transparent;
    background-repeat: no-repeat, repeat;
    background-position: right;
    background-clip: padding-box;
    background-color: white;
    font-size: 1.6rem;
    background-position: right 2rem top 50%, 0 0;
    background-repeat: no-repeat, repeat;
    background-size: .7em auto, 100%;
    background-image: url(data:image/svg+xml;charset=US-ASCII,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20448%20512%22%3E%3Cpath%20fill%3D%22%23575756%22%20d%3D%22M207.029%20381.476L12.686%20187.132c-9.373-9.373-9.373-24.569%200-33.941l22.667-22.667c9.357-9.357%2024.522-9.375%2033.901-.04L224%20284.505l154.745-154.021c9.379-9.335%2024.544-9.317%2033.901.04l22.667%2022.667c9.373%209.373%209.373%2024.569%200%2033.941L240.971%20381.476c-9.373%209.372-24.569%209.372-33.942%200z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E), linear-gradient(to bottom, var(--form-secondary-label-background-color) 0, var(--form-secondary-label-background-color) 100%);
}