



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

img, video {
  max-width: 100%;
}
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

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

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

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

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

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

body {
  margin: 0;
}

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

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

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

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

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

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

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

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

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

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

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

b,
strong {
  font-weight: bolder;
}

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

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

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

small {
  font-size: 80%;
}

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

legend {
  padding: 0;
}

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

progress {
  vertical-align: baseline;
}

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

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

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

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

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

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

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

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

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

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

details {
  display: block;
}

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

summary {
  display: list-item;
}


/* sizes */




/* breakpoints */



 
 

/* colors */







/* font */





/* custom properties (for access in modules) */
:root {
  --containerwidth_wide: 1400px;
  --containerwidth: 1200px;
  --containerwidth_narrow: 800px;
  
  --font: OpenSans-Regular, sans-serif;
  --font-weight: 400;
  --font_bold: OpenSans-Bold, sans-serif;
  --font_bold-weight: 700;
  
  --gray: #ccc;
  --gray_light: #eee;
  --gray_dark: #333;
  --blue: #2191f7;
  --blue_light: #61b1fa;
  
  --drop-shadow: drop-shadow(0 5px 10px rgba(0,0,0,.3));
  --box-shadow: 0 5px 10px rgba(0,0,0,.3);
  --box-shadow_small: 0 1px 3px rgba(0,0,0,.3);
  
  /* icons */
  --arrow: url(https://145573271.fs1.hubspotusercontent-eu1.net/hubfs/145573271/raw_assets/public/frenz-theme/images/arrow.svg);
  --arrow_right: url(https://145573271.fs1.hubspotusercontent-eu1.net/hubfs/145573271/raw_assets/public/frenz-theme/images/arrow-right.svg);
  --pdf: url(https://145573271.fs1.hubspotusercontent-eu1.net/hubfs/145573271/raw_assets/public/frenz-theme/images/pdf.svg);
  --navigate: url(https://145573271.fs1.hubspotusercontent-eu1.net/hubfs/145573271/raw_assets/public/frenz-theme/images/navigate.svg);
  --check: url(https://145573271.fs1.hubspotusercontent-eu1.net/hubfs/145573271/raw_assets/public/frenz-theme/images/check.svg);
  --xmark: url(https://145573271.fs1.hubspotusercontent-eu1.net/hubfs/145573271/raw_assets/public/frenz-theme/images/xmark.svg);
  --minus: url(https://145573271.fs1.hubspotusercontent-eu1.net/hubfs/145573271/raw_assets/public/frenz-theme/images/minus.svg);
  --calendar: url(https://145573271.fs1.hubspotusercontent-eu1.net/hubfs/145573271/raw_assets/public/frenz-theme/images/calendar.svg);
  --fileupload: url(https://145573271.fs1.hubspotusercontent-eu1.net/hubfs/145573271/raw_assets/public/frenz-theme/images/fileupload.svg);
  --magnifier: url(https://145573271.fs1.hubspotusercontent-eu1.net/hubfs/145573271/raw_assets/public/frenz-theme/images/magnifying-glass.svg);
  --location: url(https://145573271.fs1.hubspotusercontent-eu1.net/hubfs/145573271/raw_assets/public/frenz-theme/images/location.svg);

  --quote: url(https://145573271.fs1.hubspotusercontent-eu1.net/hubfs/145573271/raw_assets/public/frenz-theme/images/quote.svg);
  --quote_1: url(https://145573271.fs1.hubspotusercontent-eu1.net/hubfs/145573271/raw_assets/public/frenz-theme/images/quote-1.svg);
  --quote_2: url(https://145573271.fs1.hubspotusercontent-eu1.net/hubfs/145573271/raw_assets/public/frenz-theme/images/quote-2.svg);
  --quote_3: url(https://145573271.fs1.hubspotusercontent-eu1.net/hubfs/145573271/raw_assets/public/frenz-theme/images/quote-3.svg);
}




:root,
.theme--white, 
.theme--gray {
  
  /* primary */
  --button-primary-padding-vertical: 7px;
  --button-primary-padding-horizontal: 15px;
  --button-primary-border-size: 1px;
  --button-primary-border-style: solid;
  --button-primary-border-color: transparent;
  --button-primary-border-radius: 5px;
  --button-primary-background: var(--blue);
  --button-primary-text-decoration: none;
  --button-primary-color: #fff;
  --button-primary-font: var(--font_bold);
  --button-primary-font-weight: var(--font_bold-weight);
  
  /* primary hover */
  --button-primary-border-style-hover: solid;
  --button-primary-border-color-hover: transparent;
  --button-primary-border-radius-hover: 5px;
  --button-primary-background-hover: var(--blue_light);
  --button-primary-text-decoration-hover: none;
  --button-primary-color-hover: #fff;
  
  
  /* secondary */
  --button-secondary-padding-vertical: 7px;
  --button-secondary-padding-horizontal: 15px;
  --button-secondary-border-size: 1px;
  --button-secondary-border-style: solid;
  --button-secondary-border-color: var(--blue);
  --button-secondary-border-radius: 5px;
  --button-secondary-background: transparent;
  --button-secondary-text-decoration: none;
  --button-secondary-color: var(--blue);
  --button-secondary-font: var(--font_bold);
  --button-secondary-font-weight: var(--font_bold-weight);
  
  /* secondary hover */
  --button-secondary-border-style-hover: solid;
  --button-secondary-border-color-hover: var(--blue_light);
  --button-secondary-border-radius-hover: 5px;
  --button-secondary-background-hover: transparent;
  --button-secondary-text-decoration-hover: none;
  --button-secondary-color-hover: var(--blue_light);
  
  
  /* link */
  --button-link-padding-vertical: 7px;
  --button-link-padding-horizontal: 15px;
  --button-link-border-size: 1px;
  --button-link-border-style: solid;
  --button-link-border-color: transparent;
  --button-link-border-radius: 0;
  --button-link-background: transparent;
  --button-link-text-decoration: underline;
  --button-link-color: var(--blue);
  --button-link-font: var(--font_bold);
  --button-link-font-weight: var(--font_bold-weight);
  
  /* link hover */
  --button-link-border-style-hover: solid;
  --button-link-border-color-hover: transparent;
  --button-link-border-radius-hover: 0;
  --button-link-background-hover: transparent;
  --button-link-text-decoration-hover: underline;
  --button-link-color-hover: var(--blue_light);
}


/* button base */

.hs-button,
.buttonwrap a {
  display: inline-block;
  cursor: pointer;
  transition-duration: 0.3s;
  outline: none;
  text-align: center;
  
  font-family: var(--button-font);
  font-weight: var(--button-font-weight);
  padding: var(--button-padding-vertical) var(--button-padding-horizontal);
  border: var(--button-border-size) var(--button-border-style) var(--button-border-color);
  border-radius: var(--button-border-radius);
  background-color: var(--button-background);
  text-decoration: var(--button-text-decoration);
  color: var(--button-color);
}

.hs-button:disabled {
  opacity: 0.6;
  cursor: not-allowed;
}

.hs-button:is(:hover:not(:disabled), :focus:not(:disabled)),
.buttonwrap a:is(:hover, :focus) {
  border-style: var(--button-border-style-hover);
  border-color: var(--button-border-color-hover);
  border-radius: var(--button-border-radius-hover);
  background-color: var(--button-background-hover);
  text-decoration: var(--button-text-decoration-hover);
  color: var(--button-color-hover);
}

/* primary */

.primary,
.buttonwrap-primary a {  
  --button-padding-vertical: var(--button-primary-padding-vertical);
  --button-padding-horizontal: var(--button-primary-padding-horizontal);
  --button-border-size: var(--button-primary-border-size);
  --button-border-style: var(--button-primary-border-style);
  --button-border-color: var(--button-primary-border-color);
  --button-border-radius: var(--button-primary-border-radius);
  --button-background: var(--button-primary-background);
  --button-text-decoration: var(--button-primary-text-decoration);
  --button-color: var(--button-primary-color);
  --button-font: var(--button-primary-font);
  --button-font-weight: var(--button-primary-font-weight);
}

.primary:is(:hover, :focus),
.buttonwrap-primary a:is(:hover, :focus) {
  --button-border-style-hover: var(--button-primary-border-style-hover);
  --button-border-color-hover: var(--button-primary-border-color-hover);
  --button-border-radius-hover: var(--button-primary-border-radius-hover);
  --button-background-hover: var(--button-primary-background-hover);
  --button-text-decoration-hover: var(--button-primary-text-decoration-hover);
  --button-color-hover: var(--button-primary-color-hover);
}


/* secondary */

.secondary,
.buttonwrap-secondary a {
  --button-padding-vertical: var(--button-secondary-padding-vertical);
  --button-padding-horizontal: var(--button-secondary-padding-horizontal);
  --button-border-size: var(--button-secondary-border-size);
  --button-border-style: var(--button-secondary-border-style);
  --button-border-color: var(--button-secondary-border-color);
  --button-border-radius: var(--button-secondary-border-radius);
  --button-background: var(--button-secondary-background);
  --button-text-decoration: var(--button-secondary-text-decoration);
  --button-color: var(--button-secondary-color);
  --button-font: var(--button-secondary-font);
  --button-font-weight: var(--button-secondary-font-weight);
}

.secondary:is(:hover, :focus),
.buttonwrap-secondary a:is(:hover, :focus) {
  --button-border-style-hover: var(--button-secondary-border-style-hover);
  --button-border-color-hover: var(--button-secondary-border-color-hover);
  --button-border-radius-hover: var(--button-secondary-border-radius-hover);
  --button-background-hover: var(--button-secondary-background-hover);
  --button-text-decoration-hover: var(--button-secondary-text-decoration-hover);
  --button-color-hover: var(--button-secondary-color-hover);
}


/* link */

.linkbutton,
.buttonwrap-linkbutton a {
  --button-padding-vertical: var(--button-link-padding-vertical);
  --button-padding-horizontal: var(--button-link-padding-horizontal);
  --button-border-size: var(--button-link-border-size);
  --button-border-style: var(--button-link-border-style);
  --button-border-color: var(--button-link-border-color);
  --button-border-radius: var(--button-link-border-radius);
  --button-background: var(--button-link-background);
  --button-text-decoration: var(--button-link-text-decoration);
  --button-color: var(--button-link-color);
  --button-font: var(--button-link-font);
  --button-font-weight: var(--button-secondary-font-weight);
  
  margin: calc(var(--button-padding-vertical) * -1) calc(var(--button-padding-horizontal) * -1);
}

.linkbutton:is(:hover, :focus),
.buttonwrap-linkbutton a:is(:hover, :focus) {
  --button-border-style-hover: var(--button-link-border-style-hover);
  --button-border-color-hover: var(--button-link-border-color-hover);
  --button-border-radius-hover: var(--button-link-border-radius-hover);
  --button-background-hover: var(--button-link-background-hover);
  --button-text-decoration-hover: var(--button-link-text-decoration-hover);
  --button-color-hover: var(--button-link-color-hover);
}


/*** themes ***/

.theme--black {
  /* primary */
  --button-primary-background: #fff;
  --button-primary-color: var(--blue);
  
  /* primary hover */
  --button-primary-background-hover: #fff;
  --button-primary-color-hover: var(--blue_light);
  
  
  /* secondary */
  --button-secondary-border-color: #fff;
  --button-secondary-color: #fff;
  
  
  /* link */
  --button-link-color: #fff;
  
}
:root {
  --header-background-color: var(--gray_dark);
  --header-vertical-padding: 15px;
  --header-box-shadow: var(--box-shadow_small);
  --header-logo-width: 120px;
  --header-logo-padding: 0;
  --header-logo-background-color: transparent;
  --header-logo-border-radius: 0;
}

.header { 
  position: sticky;
  top: 0;
  background-color: var(--header-background-color);
  padding: var(--header-vertical-padding) 15px;
  z-index: 99;
  transition-duration: 0.3s;
}

.header--elevated {
  box-shadow: var(--header-box-shadow);
}
  
.header--open {
  height: 100vh; /* fallback */
  height: 100dvh;
}

.header > div {
  height: 100%;
}

.header__skip {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  padding: 5px;
  border-radius: 5px;
  background-color: var(--header-background-color);
  transform: translateX(-50%);
}

.header__container {
  max-width: var(--containerwidth);
  margin-left: auto;
  margin-right: auto;
  display: flex;
  flex-direction: column;
  height: 100%;
  gap: 15px;
}

.header__controls {
  display: flex;
  align-items: center;
}

.header__logo {
  flex: 1;
  padding-right: 15px;
}

.header__logo a {
  display: inline-block;
  padding: var(--header-logo-padding);
  background-color: var(--header-logo-background-color);
  border-radius: var(--header-logo-border-radius);
}

.header__logo img {
  max-width: var(--header-logo-width);
  width: 100%;
  height: auto;
  vertical-align: middle;
}

.header__menubutton {

}

.header__navigation {
  display: none;
  flex-flow: column;
  width: 100%;
  flex: 1;
  overflow-y: hidden;
}

.header--open .header__navigation { 
  display: flex;
}

.header__nav {
  flex: 1;
  overflow-y: auto;
  overscroll-behavior: contain;
}

.header__extras {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

:is(.header__button-container, .header__langswitcher, .header__search):empty {
  display: none;
}

.header__extra:first-child {
  margin-top: 15px;
}

.header__cta {
 
}



@media (min-width: 600px) {
  
}

@media (min-width: 900px) {
  
  .header--open {
    height: auto;
  }
  
  .header__container {
    flex-flow: row;
  }
  
  .header__logo {
    flex: 0 1 auto;
  }
  
  .header__menubutton {
    display: none;
  }
  
  .header__navigation {
    display: flex;
    flex: 1;
    width: auto;
    padding: 0;
    flex-flow: column-reverse;
    align-items: flex-end;
    justify-content: center;
    overflow-y: unset;
  }
  
  .header__nav {
    flex: unset;
    overflow-y: unset;
  }
  
  .header__extras {
    flex-direction: row;
    align-items: center;
    gap: 30px;
  }
  
  .header__extra:first-child {
    margin-top: 0;
  }
  
  .header__extra {
    margin-bottom: 15px;
  }
  
  
  
}

@media (min-width: 1200px) {
  
  :root {
    --header-logo-width: 180px;
  }

  .header__navigation {
    flex-flow: row;
    justify-content: flex-end;
    align-items: center;
  }
  
  .header__extra:first-child {
    margin-left: 30px;
  }
  
  .header__extra {
    margin-bottom: 0;
  }
  
}
/*** screenreader elements ***/
.visually-hidden, 
.visually-hidden-focusable:not(:focus):not(:focus-within) {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.visually-opaque {
  opacity: 0;
}


/*** scrollbar ***/

/* width */
.scrollbar::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}

/* Track */
.scrollbar::-webkit-scrollbar-track {
  background: #f1f1f1;
}

/* Handle */
.scrollbar::-webkit-scrollbar-thumb {
  background: #888;
  border-radius: 5px;
}

/* Handle on hover */
.scrollbar::-webkit-scrollbar-thumb:hover {
  background: #555;
}

/* width */
.scrollbar--hidden::-webkit-scrollbar {
  width: 0;
  height: 0;
}

.scrollbar--hidden::-webkit-scrollbar-track,
.scrollbar--hidden::-webkit-scrollbar-thumb,
.scrollbar--hidden::-webkit-scrollbar-thumb:hover {
  background: transparent;
}


/*** focus box ***/
.focus-box {
  padding: var(--focus-box-padding, 30px);
  background-color: var(--focus-box-background, #fff);
  border-radius: var(--focus-box-border-radius, 0);
  box-shadow: var(--focus-box-boxshadow, var(--box-shadow_small));
}

.focus-box--light {
  --focus-box-background: var(--gray_light);
}

.focus-box--dark {
  --focus-box-background: var(--gray_dark);
}

.focus-box--color {
  --focus-box-background: var(--blue);
}
html, body {
  height: 100%;
  overflow-y: hidden;
}

.page-container {
  height: 100%;
  overflow-y: auto;
}

.page-container--no-scroll {
  overflow-y: hidden;
}

.page-wrapper {
	min-height: 100%;
  display: flex;
  flex-flow: column;
}

.main {
  min-height: 30px;
  flex: 1;
}

@media (min-width: 900px) {

  .page-container--no-scroll {
    overflow-y: auto;
  }

}
:root {
  --menubutton-background-color: transparent;
  --menubutton-border-width: 2px;
  --menubutton-border-radius: 3px;
  --menubutton-border-color: #fff;
  --menubutton-bar-color: #fff;
  --menubutton-bar-height: 2px;
  --menubutton-icon-width: 70%;

  --menubutton-background-color-hover: transparent;
  --menubutton-border-color-hover: var(--blue);
  --menubutton-bar-color-hover: var(--blue);
}

.menubutton {
  display: block;
	position: relative;
	width: 44px;
	height: 44px;
  border-radius: var(--menubutton-border-radius);
  border: var(--menubutton-border-width) solid var(--menubutton-border-color);
  background-color: var(--menubutton-background-color);
  cursor: pointer;
  transition-duration: 0.2s;
  touch-action: manipulation;
  overflow: hidden;
}

.menubutton:not(.menubutton--active):is(:hover, :focus) {
  background-color: var(--menubutton-background-color-hover);
  border-color: var(--menubutton-border-color-hover);
}

.menubutton:not(.menubutton--active):is(:hover, :focus) .menubutton__icon,
.menubutton:not(.menubutton--active):is(:hover, :focus) .menubutton__icon::before,
.menubutton:not(.menubutton--active):is(:hover, :focus) .menubutton__icon::after {
  background-color: var(--menubutton-bar-color-hover);
}

.menubutton__icon {
  position: absolute;
	top: 50%;
	left: 50%;
  display: block;
  width: var(--menubutton-icon-width);
  height: var(--menubutton-bar-height);
  background-color: var(--menubutton-bar-color);
	transform: translate(-50%, -50%);
  transition-duration: 0.2s;
}

.menubutton__icon::before, 
.menubutton__icon::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  height: var(--menubutton-bar-height);
  background-color: var(--menubutton-bar-color);
  transform-origin: 50% 50%;
  transition-duration: 0.2s;
}

.menubutton__icon::before {
	transform: translateY(calc(-1 * calc(6px + var(--menubutton-bar-height))));
}

.menubutton__icon::after {
	transform: translateY(calc(1 * calc(6px + var(--menubutton-bar-height))));
}

.menubutton--active .menubutton__icon {
  background-color: transparent;
	transform: translate(-50%, -50%);
}

.menubutton--active .menubutton__icon::before {
	transform: translateY(0) rotate(-35deg);
}

.menubutton--active .menubutton__icon::after {
	transform: translateY(0) rotate(35deg);
}
:root {
  --module-padding-top: 40px;
  --module-padding-right: 15px;
  --module-padding-bottom: 40px;
  --module-padding-left: 15px;
  
  --module-bgcolor: #fff;
}

.module {
  padding: var(--module-padding-top) var(--module-padding-right) var(--module-padding-bottom) var(--module-padding-left);
  background-color: var(--module-bgcolor, #fff);
}

/* padding */

.module--no-horizontal-padding {
  --module-padding-left: 0;
  --module-padding-right: 0;
}

.module--reduced-padding-top {
  --module-padding-top: 15px;
}

.module--reduced-padding-bottom {
  --module-padding-bottom: 15px;
}

.module--no-padding-top {
  --module-padding-top: 0;
}

.module--no-padding-bottom {
  --module-padding-bottom: 0;
}

/* colors */

.module--white {
  --module-bgcolor: #fff;
}

.module--light {
  --module-bgcolor: var(--gray_light);
}

.module--dark {
  --module-bgcolor: var(--gray_dark);
}

.module--color {
  --module-bgcolor: var(--blue_light);
}


/* second background */
.module--second-background {
    position: relative;
}

.module--second-background::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: var(--second-background-height, 60%);
    background-color: var(--second-background-color, #fff);
}

.module--second-background-light {
  --second-background-color: var(--gray_light);
}

.module--second-background-dark {
  --second-background-color: var(--gray_dark);
}

.module--second-background-color {
  --second-background-color: var(--blue);
}


.module--second-background .module__container {
  position: relative;
}


/* width */

.module__container {
  position: relative;
  max-width: var(--containerwidth);
  margin-left: auto;
  margin-right: auto;
}

.module__container--stretch {
  max-width: none;
}

.module__container--narrow {
  max-width: var(--containerwidth_narrow);
}

.module__container--wide {
  max-width: var(--containerwidth_wide);
}

.module__container--left {
  text-align: left;
}

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

.module__container--right {
  text-align: right;
}


/* remove padding for modules inside blogposts */
.blog-post .module {
  --module-padding-top: 15px;
  --module-padding-bottom: calc(15px + var(--text-margin-bottom));
  --module-padding-left: 0;
  --module-padding-right: 0;
  --module-bgcolor: transparent;
  --second-background-color: transparent;
}


/* enforce vertical stacking for embeds */
[data-embed-id] .row-fluid {
  display: block !important;
}
[data-embed-id] .row-fluid [class^="span"] {
  display: block !important;
  width: 100% !important;
}


@media (min-width: 1200px) {
  :root {
    --module-padding-top: 80px;
    --module-padding-right: 15px;
    --module-padding-bottom: 80px;
    --module-padding-left: 15px;
  }
  
}
:root,
.theme--white,
.theme--light {
  
  /* default values */ 
  --base-font-size: 1.6rem;
  --small-font-size: 0.8em;
  --base-line-height: 1.3;

  --text-font: var(--font);
  --text-font-weight: var(--font-weight);
  --text-font-bold: var(--font_bold);
  --text-font-bold-weight: var(--font_bold-weight);
  
  --text-color: var(--gray_dark);
  --text-margin-bottom: 3rem;
  --text-line-height: 1.5;
    
  --title-color: var(--gray_dark);
  --title-margin-bottom: 1rem;
  --title-line-height: 1.3;
  
  --title-h1-font: var(--font_bold);
  --title-h1-font-weight: var(--font_bold-weight);

  --title-h2-font: var(--font_bold);
  --title-h2-font-weight: var(--font_bold-weight);

  --title-h3-font: var(--font_bold);
  --title-h3-font-weight: var(--font_bold-weight);

  --title-h4-font: var(--font_bold);
  --title-h4-font-weight: var(--font_bold-weight);

  --title-h5-font: var(--font_bold);
  --title-h5-font-weight: var(--font_bold-weight);

  --title-h6-font: var(--font_bold);
  --title-h6-font-weight: var(--font_bold-weight);
  
  --title-h1-size: 3rem;
  --title-h2-size: 2.5rem;
  --title-h3-size: 2.2rem;
  --title-h4-size: 2.0rem;
  --title-h5-size: 1.8rem;
  --title-h6-size: 1.5rem;
  
  --link-color: var(--blue);
  --link-text-decoration: underline;
  --link-color-hover: var(--blue_light);
  --link-text-decoration-hover: underline;
  
  --quote-font: var(--font_bold);
  --quote-font-weight: var(--font_bold-weight);
  --quote-autor-font: var(--font);
  --quote-autor-font-weight: var(--font-weight);
  --quote-color: var(--gray_dark);
  --quote-background: transparent;
  --quote-padding: 15px;
  --quote-border-width: 1px;
  --quote-border-type: solid;
  --quote-border-color: var(--text-color);
  --quote-border-radius: 0;
  --quote-icon: var(--quote);
  --quote-icon-size: 40px;
  --quote-icon-color: var(--blue);
  --quote-icon-gap: 5px;

  --hr-border-color: var(--gray);
  
  --list-size: 0.5rem;
  --list-color: currentColor;
  --list-border-radius: 0;
  
  color: var(--text-color);
}

html {
  font-size: 62.5%; /* don't change this */
}

body {
  font-family: var(--text-font);
  font-weight: var(--text-font-weight);
  line-height: var(--base-line-height);
  font-size: var(--base-font-size);
  word-break: break-word;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  margin: 0 0 var(--title-margin-bottom);
  line-height: var(--title-line-height);  
  color: var(--title-color);
}

:is(h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6):last-child {
  margin-bottom: 0;
}

h1, .h1 {
  font-family: var(--title-h1-font);
  font-weight: var(--title-h1-font-weight);
  font-size: var(--title-h1-size);
}

h2, .h2 {
  font-family: var(--title-h2-font);
  font-weight: var(--title-h2-font-weight);
  font-size: var(--title-h2-size);
}

h3, .h3 {
  font-family: var(--title-h3-font);
  font-weight: var(--title-h3-font-weight);
  font-size: var(--title-h3-size);
}

h4, .h4 {
  font-family: var(--title-h4-font);
  font-weight: var(--title-h4-font-weight);
  font-size: var(--title-h4-size);
}

h5, .h5 {
  font-family: var(--title-h5-font);
  font-weight: var(--title-h5-font-weight);
  font-size: var(--title-h5-size);
}

h6, .h6 {
  font-family: var(--title-h6-font);
  font-weight: var(--title-h6-font-weight);
  font-size: var(--title-h6-size);
}

p, .p {
  margin: 0 0 var(--text-margin-bottom);
  font-family: var(--text-font);
  font-weight: var(--text-font-weight);
  font-size: var(--base-font-size);
  line-height: var(--text-line-height);
}

:is(p, .p):last-child {
  margin-bottom: 0;
}

a {
  color: var(--link-color);
  text-decoration: var(--link-text-decoration);
  text-underline-offset: 0.2em;
  cursor: pointer;
}

a:hover, 
a:focus {
  color: var(--link-color-hover);
  text-decoration: var(--link-text-decoration-hover);
  outline-color: var(--blue);
}

b, strong {
  font-family: var(--text-font-bold);
  font-weight: var(--text-font-bold-weight);
}

small {
  font-size: var(--small-font-size);
}


/* Lists */

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

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

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


:is(.hs_cos_wrapper_type_inline_rich_text, .hs-richtext) ol,
.blog-post__body > :is(div, span) > ol {
  padding-left: 1.2em;
}

:is(.hs_cos_wrapper_type_inline_rich_text, .hs-richtext) :is(ul, ol):not(:last-child),
.blog-post__body > :is(div, span) > :is(ul, ol):not(:last-child) {
  margin-bottom: 3rem;
}

:is(.hs_cos_wrapper_type_inline_rich_text, .hs-richtext) li,
.blog-post__body > :is(div, span) > :is(ul, ol) li {
  line-height: 1.5;
}

:is(.hs_cos_wrapper_type_inline_rich_text, .hs-richtext) li + li,
.blog-post__body > :is(div, span) > :is(ul, ol) li + li {
  margin-top: 2rem;
}

:is(.hs_cos_wrapper_type_inline_rich_text, .hs-richtext) ul li,
.blog-post__body > :is(div, span) > ul li {
  list-style-type: none;
  position: relative;
  padding-left: 1.5rem;
}

:is(.hs_cos_wrapper_type_inline_rich_text, .hs-richtext) ul li::before,
.blog-post__body > :is(div, span) > ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6em;
  height: var(--list-size);
  width: var(--list-size);
  background-color: var(--list-color);
  border-radius: var(--list-border-radius);
}


/* quote */

blockquote {
  margin: 0 0 var(--text-margin-bottom);
  padding: var(--quote-padding);
  border: var(--quote-border-width) var(--quote-border-type) var(--quote-border-color);
  border-radius: var(--quote-border-radius);
  background-color: var(--quote-background);
}

blockquote:last-child {
  margin-bottom: 0;
}

blockquote::before {
  content: "";
  display: block;
  width: var(--quote-icon-size);
  height: var(--quote-icon-size);  
  margin-bottom: var(--quote-icon-gap);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  background-color: var(--quote-icon-color);
  -webkit-mask: var(--quote-icon) center center / contain no-repeat;
  mask: var(--quote-icon) center center / contain no-repeat;
}

blockquote > * {
  color: var(--quote-color);
  font-family: var(--quote-font);
  font-weight: var(--quote-font-weight);
}

blockquote > *::before {
  content: "«";
  display: inline-block;
}

blockquote > *::after {
  content: "»";
  display: inline-block;
}

blockquote > *:not(:last-child) {
  margin: 0 0 1rem;
}

blockquote > *:last-child:not(:first-child) {
  color: var(--quote-color);
  font-family: var(--quote-autor-font);
  font-weight: var(--quote-autor-font-weight);
}

blockquote > *:last-child:not(:first-child)::before,
blockquote > *:last-child:not(:first-child)::after {
  display: none;
}

q::before {
  content: "«";
}

q::after {
  content: "»";
}


/* Horizontal rules */

hr {
  margin: 3rem 0;
  border: none;
  border-bottom: 1px solid var(--hr-border-color);
}


/* cta alignment within richtext */
p:empty[style="text-align: left;"] + .hs-web-interactive-inline {
  text-align: left;
}

p:empty[style="text-align: center;"] + .hs-web-interactive-inline {
  text-align: center;
}

p:empty[style="text-align: right;"] + .hs-web-interactive-inline {
  text-align: right;
}


/* themes */
[class*="theme--"] {
  color: var(--text-color);
}

.theme--light {

}

.theme--dark {
  --text-color: #fff;
  --title-color: #fff;
  --link-color: #fff;
  --link-color-hover: var(--blue);  
  --quote-color: #fff;
  --hr-border-color: #fff;
}

.theme--color {

}


@media (min-width: 600px) {
  
}

@media (min-width: 900px) {
  
}

@media (min-width: 1200px) {

}


