/* Theme base styles */
:root,
:root::before,
:root::after {
  --navHeight: 113.14px;
/* Fluid Spacing */
  --fluid-min-width: 320;
  --fluid-max-width: 1280;
  --fluid-screen: 100vw;
  --fluid-bp: calc((var(--fluid-screen) - ((var(--fluid-min-width) / 16) * 1rem)) / ((var(--fluid-max-width) / 16) - (var(--fluid-min-width) / 16)));
/* Containers */
  --containerWidth: 102.5rem;
  --dndPaddingBlock: 3.5rem;
  --dndPaddingInline: 1.5rem;
  --dndColPadding: 1.0rem;
/* Colors */
  --primaryColor: #1B06DE;
  --secondaryColor: #FF344D;
  --primaryVarColor: #E62D38;
  --secondaryVarColor: #32176C;
  --errorColor: #f00808;
  --warningColor: #FF925A;
  /* Font */
  --primaryFont: Roboto , sans-serif;
  --secondaryFont: Space Grotesk , sans-serif;
}
@media screen and (min-width: 768px) {
  :root {
    --dndPaddingBlock: 4.1875rem;
    --dndPaddingInline: 4.0rem;
    --dndColPadding: 1.0rem;
  }
}
@media screen and (min-width: 1280px) {
  :root {
    --dndPaddingBlock: 4.875rem;
    --dndPaddingInline: 6.0rem;
    --dndColPadding: 1.0rem;
  }
}
@media screen and (min-width: 1280px) {
  :root {
    --fluid-screen: calc(var(--fluid-max-width) * 1px);
  }
}
/*
  Josh's Custom CSS Reset + Andy Bell
  https://www.joshwcomeau.com/css/custom-css-reset/
  https://piccalil.li/blog/a-modern-css-reset/
*/

/* Box sizing rules */
:root {
  box-sizing: border-box;
}
*, *::before, *::after {
  box-sizing: inherit;
}
/* Remove default margin */
* {
  padding: 0;
  margin: 0;
}
html {
  font-size: 100%;
}

/* Allow percentage-based heights in the application */
html, body {
  height: 100%;
}

/* 
 * Set core body defaults 
 * Improve text rendering
 * */
 
body {
  min-height: 100vh;
  line-height: 1.5;
  text-rendering: optimizeSpeed;
  -webkit-font-smoothing: antialiased;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  text-decoration-skip-ink: auto;
}

/* Improve media defaults */
img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
  height: auto;
}

/* Inherit fonts for inputs and buttons */
input, button, textarea, select {
  font: inherit;
}

/* Avoid text overflows */
/* Scroll margin on jump links */
p, h1, h2, h3, h4, h5, h6 {
  overflow-wrap: break-word;
  scroll-margin-top: var(--navHeight);
}
a {
  scroll-margin-top: var(--navHeight);
}

/* Set core root defaults/Create a root stacking context */
#root, #__next, html {
  isolation: isolate;
}

html {
  scroll-behavior: smooth;
}

/* Remove all animations, transitions and smooth scroll for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  html:focus-within {
   scroll-behavior: auto;
  }
  
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
/*! 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;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

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

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

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

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

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

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

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

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

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

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

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

b,
strong {
  font-weight: bolder;
}

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

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

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

small {
  font-size: 80%;
}

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

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

/**
 * 1. Remove the border on images inside links in IE 10.
 * 2. More readable alt text size
 * 3. Correct word-break for alt text
 */

img {
  border-style: none; /* 1 */
  font-size: 0.583rem; /* 2 */
  word-break: normal; /* 3 */
}

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

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

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

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

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

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

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

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

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

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

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

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

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

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

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

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

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

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

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

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

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

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

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

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

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

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

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

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

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}
/* Wrappers and Sections */
.content-wrapper,
.dnd-section > .row-fluid,
.panel {
  margin-left: auto;
  margin-right: auto;
  max-width: var(--containerWidth);
}
.content-wrapper {
  padding-left: var(--dndColPadding);
  padding-right: var(--dndColPadding);
}
body {
  padding-top: var(--navHeight);
  background-color: var(--bodyBgColor);
}
/* DnD Containers */
.dnd-section {
  padding: var(--dndPaddingBlock) var(--dndPaddingInline);
}
.dnd-section .dnd-column {
  padding-left: var(--dndColPadding);
  padding-right: var(--dndColPadding);
}

/* Responsive grid */
.row-fluid {
	display: flex;
	  gap: var(--dndColPadding);
}
.row-fluid [class*='span'] {
	flex: 1;
}
.row-fluid .span12 {
	flex-basis: 100%;
}
.row-fluid .span11 {
	flex-basis: 91.66%;
}
.row-fluid .span10 {
	flex-basis: 83.33%;
}
.row-fluid .span9 {
	flex-basis: 75%;
}
.row-fluid .span8 {
	flex-basis: 66.66%;
}
.row-fluid .span7 {
	flex-basis: 58.33%;
}
.row-fluid .span6 {
	flex-basis: 50%;
}
.row-fluid .span5 {
	flex-basis: 41.66%;
}
.row-fluid .span4 {
	flex-basis: 33.33%;
}
.row-fluid .span3 {
	flex-basis: 25%;
}
.row-fluid .span2 {
	flex-basis: 16.66%;
}
.row-fluid .span1 {
	flex-basis: 8.33%;
}
@media (max-width: 767px) {
	.row-fluid {
		display: block;
	}
}

/* Visibilty classes */
.hide {
  display: none;
}
.show {
  display: block;
}
.invisible {
  visibility: hidden;
}
.hidden {
  display: none;
  visibility: hidden;
}
.visuallyhidden {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  overflow: hidden;
}

/* Responsive visibilty classes */
.visible-phone {
  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 screen and (max-width: 959px) {
  img {
    float: none !important;
  }
}
/* Body */
body {
  font-family: var(--primaryFont);
  font-size: 1.0rem;
  line-height: 1.5;
  color: #000;
}
p {
  font-size: 100%;
  margin-bottom: 1.5rem;
}

/* In-line links */
a {
  font-family: inherit;
  font-weight: 400;
  font-style: normal;
  color: #1B06DE;
  text-decoration: underline;
  cursor: pointer;
}
a:hover {
  color: #31AEE7;
}
a:focus-within {
  color: #31AEE7;
}
a[role="link"] {
  text-decoration: none;
}

/* Lists */
ul,
ol {
  margin: 1.5rem 0;
}
ul ul,
ol ul,
ul ol,
ol ol {
  margin: 0;
}
.no-list {
  list-style: none;
  margin: 0;
  padding-left: 0;
}
ul:not(.no-list) {
  list-style-type: circle;
  padding-left: 1.5rem;
}
ul:not(.no-list) li {
  padding-bottom: 1rem;
}
ul:not(.no-list) li::marker {
  font-size: 1.5em;
  color: var(--secondaryColor);
}

/* Code */
pre {
  overflow: auto;
}
code {
  vertical-align: bottom;
}

/* HR */
hr {
  border: none;
  border-bottom: 1px solid var(--secondaryColor);
}

address {
  font-style: inherit;
}

/* Headings */
h1, 
.h1 {
  --fluid-min-size: 2.25;
  --fluid-max-size: 3.25;
  font-family: 'Space Grotesk', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  
  font-size: calc(((var(--fluid-min-size) * 1rem) + (var(--fluid-max-size) - var(--fluid-min-size)) * var(--fluid-bp)));
  
  line-height: 1.3;
  text-transform: none;
  letter-spacing: 0.5px;
  margin-top: 0rem;
  margin-bottom: 1.38rem;
  color: #141414;
}
.h1--alt {
  --fluid-min-size: 2.4375;
  --fluid-max-size: 4.0625;
  font-family: 'Space Grotesk', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  
  font-size: calc(((var(--fluid-min-size) * 1rem) + (var(--fluid-max-size) - var(--fluid-min-size)) * var(--fluid-bp)));
  
  line-height: 1.3;
  text-transform: none;
  letter-spacing: 0.5px;
  margin-top: 0rem;
  margin-bottom: 1.38rem;
  color: #000000;
}
h2, 
.h2 {
  --fluid-min-size: 1.625;
  --fluid-max-size: 2.25;
  font-family: 'Space Grotesk', sans-serif; font-style: normal; font-weight: 700; text-decoration: none;
  
  font-size: calc(((var(--fluid-min-size) * 1rem) + (var(--fluid-max-size) - var(--fluid-min-size)) * var(--fluid-bp)));
  
  line-height: 1.4;
  text-transform: none;
  letter-spacing: 0;
  margin-top: 0rem;
  margin-bottom: 1.38rem;
  color: #000000;
}
.h2--alt {
  --fluid-min-size: 1.625;
  --fluid-max-size: 3.25;
  font-family: 'Space Grotesk', sans-serif; font-style: normal; font-weight: 700; text-decoration: none;
  
  font-size: calc(((var(--fluid-min-size) * 1rem) + (var(--fluid-max-size) - var(--fluid-min-size)) * var(--fluid-bp)));
  
  line-height: 1.4;
  text-transform: none;
  letter-spacing: 0;
  margin-top: 0rem;
  margin-bottom: 1.38rem;
  color: #1B06DE;
}
h3,
.h3 {
  --fluid-min-size: 1.25;
  --fluid-max-size: 1.625;
  font-family: 'Space Grotesk', sans-serif; font-style: normal; font-weight: 600; text-decoration: none;
  
  font-size: calc(((var(--fluid-min-size) * 1rem) + (var(--fluid-max-size) - var(--fluid-min-size)) * var(--fluid-bp)));
  
  line-height: 1.23;
  text-transform: none;
  letter-spacing: 0;
  margin-top: 0rem;
  margin-bottom: 1.38rem;
  color: #000000;
}
h4, 
.h4 {
  font-family: 'Space Grotesk', sans-serif; font-style: normal; font-weight: 600; text-decoration: none;
  font-size: 1.25rem;
  line-height: 1.2;
  text-transform: none;
  letter-spacing: 0;
  margin-top: 0rem;
  margin-bottom: 1.38rem;
  color: #000000;
}
h5,
.h5 {
  font-family: 'Space Grotesk', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  font-size: 1.125rem;
  line-height: 1.2;
  text-transform:none;
  letter-spacing: 0;
  margin-top: 0rem;
  margin-bottom: 1.38rem;
  color: ;
}
h6,
.h6 {
  font-family: 'Space Grotesk', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  font-size: 1.125rem;
  line-height: 1.2;
  text-transform: none;
  letter-spacing: 0;
  margin-top: 0rem;
  margin-bottom: 1.38rem;
  color: ;
}

/* Special */
.custom-scroll {
  --scrollbar-foreground: var(--secondaryColor);
  --scrollbar-background: #fafafa;
  /* Foreground, Background */
  scrollbar-color: var(--scrollbar-foreground) var(--scrollbar-background);
}
.custom-scroll::-webkit-scrollbar {
  width: 10px; /* Mostly for vertical scrollbars */
  height: 8px;
}
.custom-scroll::-webkit-scrollbar-thumb { /* Foreground */
  background: var(--scrollbar-foreground);
  border-radius: 16px;
}
.custom-scroll::-webkit-scrollbar-track { /* Background */
  background: var(--scrollbar-background);
  border-radius: 16px;
  box-shadow: 0 3px 6px rgba(206, 206, 206, 0.53);
}
button,
.button,
form input[type=submit],
form .hs-button {
  cursor: pointer;
  display: inline-block;
  text-align: center;
  transition: background 0.15s linear;
  white-space: normal;
}

/* No button */
.no-button,
.no-button:hover,
.no-button:focus,
.no-button:active {
  background: transparent;
  border: none;
}

/*************************** 
****** Primary Button ******
***************************/
button[data-variant="primary"],
a[data-variant="primary"] {
  font-family: Roboto, sans-serif; font-style: normal; font-weight: 500; text-decoration: none;
  font-size: 1.125rem;
  text-transform: none;
  letter-spacing: 0.5px;
  color: #000000;
  position: relative;
  background-color: transparent;
  border-radius: 27px;
  border: 1px solid #d90429;

  padding-top: 8px;
padding-right: 16px;
padding-bottom: 8px;
padding-left: 16px;
;
  z-index: 10;
  transition: background-color 0.3s ease-out;
  box-shadow: 0 3px 6px rgb(0 0 0 / 17%);
}
button[data-variant="primary"]::before,
a[data-variant="primary"]::before {
  content: '';
  position: absolute;
    top: 0;
    left: 0;
  height: 100%;
  width: 3rem;
  background-color: rgba(217, 4, 41, 30%);
  border-radius: 27px;
  z-index: -1;
  transition: left 0.3s ease-out;
}

button[data-variant="primary"]:hover,
a[data-variant="primary"]:hover {
  color: #fff;
  background-color: rgba(217, 4, 41, 60%);
  border: 1px solid #d90429;
;
}

button[data-variant="primary"]:hover::before,
a[data-variant="primary"]:hover::before {
  left: calc(100% - 3rem);
  background-color: rgba(217, 4, 41, 60%);
}

button[data-variant="primary"]:focus-within,
a[data-variant="primary"]:focus-within {
  color: #fff;
  
}
button[data-variant="primary"]:focus-within::before,
a[data-variant="primary"]:focus-within::before {
  left: calc(100% - 3rem);
  background-color: rgba(217, 4, 41, 60%);
}

button[data-variant="primary"]:active,
a[data-variant="primary"]:active {
  color: #fff;
  border: 1px solid #d90429;
;
}
button[data-variant="primary"]:hover::active,
a[data-variant="primary"]:hover::active {
  left: calc(100% - 3rem);
  background-color: rgba(217, 4, 41, 60%);
}

@media screen and (hover: none) {
  button[data-variant="primary"],
  a[data-variant="primary"] {
    color: #fff;
    background-color: rgba(217, 4, 41, 60%);
    border: 1px solid #d90429;
;
  }
  button[data-variant="primary"]::before,
  a[data-variant="primary"]::before {
    left: calc(100% - 3rem);
    background-color: rgba(217, 4, 41, 60%);
  }
}

/* Primary Variant */
button[data-variant="primary-alt"],
a[data-variant="primary-alt"] {
  font-family: Roboto, sans-serif; font-style: normal; font-weight: 500; text-decoration: none;
  font-size: 1.125rem;
  text-transform: none;
  letter-spacing: 0px;
  color: #fff;
  position: relative;
  background-color: transparent;
  border-radius: 27px;
  border: 1px solid #ffffff;

  padding-top: 8px;
padding-right: 16px;
padding-bottom: 8px;
padding-left: 16px;
;
  z-index: 10;
  transition: background-color 0.3s ease-out;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.36);
}
button[data-variant="primary-alt"]::before,
a[data-variant="primary-alt"]::before {
  content: '';
  position: absolute;
    top: 0;
    left: 0;
  height: 100%;
  width: 3rem;
  background-color: rgba(255, 255, 255, 30%);
  border-radius: 27px;
  z-index: -1;
  transition: left 0.3s ease-out;
}

button[data-variant="primary-alt"]:hover,
a[data-variant="primary-alt"]:hover {
  color: #d90429;
  background-color: rgba(255, 255, 255, 90%);
  border: 1px solid #ffffff;
;
}
button[data-variant="primary-alt"]:hover::before,
a[data-variant="primary-alt"]:hover::before {
  left: calc(100% - 3rem);
  background-color: rgba(255, 255, 255, 90%);
}

button[data-variant="primary-alt"]:focus-within,
a[data-variant="primary-alt"]:focus-within {
  color: #d90429;
  
}
button[data-variant="primary-alt"]:focus-within::before,
a[data-variant="primary-alt"]:focus-within::before {
  left: calc(100% - 3rem);
  background-color: rgba(255, 255, 255, 90%);
}

button[data-variant="primary-alt"]:active,
a[data-variant="primary-alt"]:active {
  color: #d90429;
  border: 1px solid #ffffff;
;
}
button[data-variant="primary-alt"]:hover::active,
a[data-variant="primary-alt"]:hover::active {
  left: calc(100% - 3rem);
  background-color: rgba(255, 255, 255, 90%);
}

@media screen and (hover: none) {
  button[data-variant="primary-alt"],
  a[data-variant="primary-alt"] {
    color: #d90429;
    background-color: rgba(255, 255, 255, 90%);
    border: 1px solid #ffffff;
;
  }
  button[data-variant="primary-alt"]::before,
  a[data-variant="primary-alt"]::before {
    left: calc(100% - 3rem);
    background-color: rgba(255, 255, 255, 90%);
  }
}

/*************************** 
***** Secondary Button *****
***************************/
button[data-variant="secondary"],
a[data-variant="secondary"] {
  font-family: Roboto, sans-serif; font-style: normal; font-weight: 500; text-decoration: none;
  font-size: 1.125rem;
  text-transform: none;
  letter-spacing: 0px;
  color: #000;
  display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}
button[data-variant="secondary"]::after,
a[data-variant="secondary"]::after {
  content: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2LjEyIiBoZWlnaHQ9IjEwLjI0IiB2aWV3Qm94PSIwIDAgNi4xMiAxMC4yNCI+DQogIDxwYXRoIGlkPSJQYXRoXzEwMDA4IiBkYXRhLW5hbWU9IlBhdGggMTAwMDgiIGQ9Ik0wLDMuNzA2LDMuNzA2LDAsNy40MTIsMy43MDYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDUuMTIgMS40MTQpIHJvdGF0ZSg5MCkiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2ZmZiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHJva2Utd2lkdGg9IjIiLz4NCjwvc3ZnPg==");
  display: flex;
    align-items: center;
    justify-content: flex-end;
  height: 1.25rem;
  width: 1.25rem;
  padding: 0 0.45rem 2px;
  background-color: #d90429;
  border-radius: 27px;
  transition: width 0.1s ease-out; 
}

button[data-variant="secondary"]:hover,
a[data-variant="secondary"]:hover {
  color: #000;;
  
}
button[data-variant="secondary"]:hover::after,
a[data-variant="secondary"]:hover::after {
  width: 3rem;
}

button[data-variant="secondary"]:focus-within,
a[data-variant="secondary"]:focus-within {
  color: #000;
}
button[data-variant="secondary"]:focus-within::after,
a[data-variant="secondary"]:focus-within::after {
  width: 3rem;
}

button[data-variant="secondary"]:active,
a[data-variant="secondary"]:active {
  color: #000;
}
button[data-variant="secondary"]:active::after,
a[data-variant="secondary"]:active::after {
  width: 3rem;
}

@media screen and (hover: none) {
  button[data-variant="secondary"],
  a[data-variant="secondary"] {
    color: #000;;
    
  }
  button[data-variant="secondary"]::after,
  a[data-variant="secondary"]::after {
    width: 3rem;
  }
}

/* Secondary Alt */
button[data-variant="secondary-alt"],
a[data-variant="secondary-alt"] {
  font-family: Roboto, sans-serif; font-style: normal; font-weight: 500; text-decoration: none;
  font-size: 1.125rem;
  text-transform: none;
  letter-spacing: 0.5px;
  color: #fff;
  display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}
button[data-variant="secondary-alt"]::after,
a[data-variant="secondary-alt"]::after {
  content: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2LjEyIiBoZWlnaHQ9IjEwLjI0IiB2aWV3Qm94PSIwIDAgNi4xMiAxMC4yNCI+DQogIDxwYXRoIGlkPSJQYXRoXzEwMDA4IiBkYXRhLW5hbWU9IlBhdGggMTAwMDgiIGQ9Ik0wLDMuNzA2LDMuNzA2LDAsNy40MTIsMy43MDYiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDUuMTIgMS40MTQpIHJvdGF0ZSg5MCkiIGZpbGw9Im5vbmUiIHN0cm9rZT0iI2ZmMzQ0ZCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIiBzdHJva2Utd2lkdGg9IjIiLz4NCjwvc3ZnPg==");
  display: flex;
    align-items: center;
    justify-content: flex-end;
  height: 1.25rem;
  width: 1.25rem;
  padding: 0 0.45rem 2px;
  background-color: #ffffff;
  border-radius: 27px;
  transition: width 0.1s ease-out; 
}

button[data-variant="secondary-alt"]:hover,
a[data-variant="secondary-alt"]:hover {
  color: #fff;;
  
}
button[data-variant="secondary-alt"]:hover::after,
a[data-variant="secondary-alt"]:hover::after {
  width: 3rem;
}

button[data-variant="secondary-alt"]:focus-within,
a[data-variant="secondary-alt"]:focus-within {
  color: #fff;
}
button[data-variant="secondary-alt"]:focus-within::after,
a[data-variant="secondary-alt"]:focus-within::after {
  width: 3rem;
}

button[data-variant="secondary-alt"]:active,
a[data-variant="secondary-alt"]:active {
  color: #fff;
}
button[data-variant="secondary-alt"]:active::after,
a[data-variant="secondary-alt"]:active::after {
  width: 3rem;
}

@media screen and (hover: none) {
  button[data-variant="secondary-alt"],
  a[data-variant="secondary-alt"] {
    color: #fff;;
    
  }
  button[data-variant="secondary-alt"]::after,
  a[data-variant="secondary-alt"]::after {
    width: 3rem;
  }
}
/* Form title */
[data-hs-cos-type="form"] .form-title {
  --fluid-min-size: 2.25;
  --fluid-max-size: 3.25;
  font-family: 'Space Grotesk', sans-serif; font-style: normal; font-weight: 700; text-decoration: none;
  
  font-size: calc(((var(--fluid-min-size) * 1rem) + (var(--fluid-max-size) - var(--fluid-min-size)) * var(--fluid-bp)));
  
  color: #1B06DE;
}

/* Form Fields */
.hs-form .hs-form-field {
  width: 100% !important;
  float: none !important;
  position: relative;
}
.hs-form fieldset {
  max-width: none !important;
  display: grid;
    grid-template-columns: 1fr;
    align-items: end;
    grid-column-gap: 1em;
}
@media screen and (min-width: 600px) {
  .hs-form fieldset.form-columns-3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .hs-form fieldset.form-columns-3 .hs-richtext {
    grid-row: 1;
    grid-column: 1 / span 3;
  }
  .hs-form fieldset.form-columns-2 {
    grid-template-columns: repeat(2, 1fr);
  }
  .hs-form fieldset.form-columns-2 .hs-richtext {
    grid-row: 1;
    grid-column: 1 / span 2;
  }
  .hs-form fieldset.form-columns-1 {
    grid-template-columns: 1fr;
  }
}
.hs-form .hs-form-booleancheckbox label {
  display: flex;
    align-items: baseline;
}
.hs-form-field {
  margin-top: 0px;
margin-bottom: 24px;

}

/* Labels */
.hs-form-field label {
  font-family: 'Space Grotesk', sans-serif; font-style: normal; font-weight: 600; text-decoration: none;
  font-size: 1.125rem;
  color: #141414;
  display: block;
  margin-top: 0px;
margin-bottom: 8px;

}
/* Help text */
form legend {
  font-family: 'Space Grotesk', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  color: #000;
}
/* GDPR text */
.legal-consent-container {
  margin-bottom: 1.5rem;
}
.legal-consent-container .hs-richtext {
  font-size: 0.9375rem;
  font-family: 'Space Grotesk', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  color: #000;
}
.legal-consent-container .hs-form-booleancheckbox-display span {
  font-size: 1rem;
  font-family: 'Space Grotesk', sans-serif; font-style: normal; font-weight: normal; text-decoration: none;
  color: #1E1C24;
}

/* Form placeholder text */
::-webkit-input-placeholder {
  color: #FFFFFF;
}
::-moz-placeholder {
  color: #FFFFFF;
}
:-ms-input-placeholder {
  color: #FFFFFF;
}
::placeholder {
  color: #FFFFFF;
}

/* Inputs */
form input[type=text]:not(.site-search__input),
form input[type=email],
form input[type=password],
form input[type=tel],
form input[type=number],
form input[type=file],
form textarea {
  color: #FFFFFF;
  background: transparent;
  border: none;
  border-bottom: 1px solid #1B06DE;
  padding-top: 8px;
padding-right: 0px;
padding-bottom: 8px;
padding-left: 0px;

}
.hs-form fieldset .hs-form-field .input {
  margin: 0 !important;
}
.hs-form .hs-input:not(.hs-form-booleancheckbox > label > *, .hs-form-checkbox > label > *, .hs-form-radio > label > *) {
  width: 100% !important;
}

form select {
  color: #000;
  background: transparent;
  border: none;
  border-bottom: 1px solid #1B06DE;
  padding-top: 8px;
padding-right: 0px;
padding-bottom: 8px;
padding-left: 0px;

}
form select option {
  color: #000;
}

/* Chrome auto-fill input - transition delay means the background colour will not change for the duration of the delay */
input:-webkit-autofill,
input:-webkit-autofill:hover, 
input:-webkit-autofill:focus, 
input:-webkit-autofill:active{
    transition-delay: 3600s;
}

/* Inputs - checkbox/radio */
form .inputs-list {
  margin: 0;
  padding: 0;
  list-style: none;
}
form .inputs-list > li {
  display: block;
  margin: 0.7rem 0;
  padding: 0;
}
form .inputs-list input,
form .inputs-list span {
  vertical-align: middle;
}
form input[type=checkbox]:not([name*="LEGAL_CONSENT"]),
form input[type=radio] {
  cursor: pointer;
  margin-right: 20px;
}
.hs-form .hs-form-booleancheckbox label,
.hs-form .hs-form-booleancheckbox input {
  cursor: pointer;
}

/* Inputs - date picker */
.hs-dateinput {
  position: relative;
}
.hs-dateinput:before {
  content:'\01F4C5';
  position: absolute;
  right: 0.5em;
  top: 50%;
  transform: translateY(-50%);
}
.fn-date-picker .pika-table thead th {
  color: #FFF;
}
.fn-date-picker td.is-selected .pika-button {
  background: var(--primaryColor);
  border-radius: 0;
  box-shadow: none;
}
.fn-date-picker td .pika-button:hover,
.fn-date-picker td .pika-button:focus {
  background-color: var(--primaryColor) !important;
  border-radius: 0 !important;
  color: #FFF;
}
.hs-fieldtype-date .input .hs-dateinput:before {
  color: #FFFFFF;
}
.fn-date-picker td.is-today .pika-button {
  color: var(--primaryColor);
}

/* Inputs - file picker */
form input[type=file] {
  background-color: transparent;
  border: initial;
  padding: initial;
  padding-bottom: 0.5rem;
}

/* Inputs - message field */
.hs-fieldtype-textarea.hs-form-field {
  border-radius: 24px;
  border: 1px solid white;
  padding: 1rem;
}
form textarea {
  border: none !important;
}

/* Validation */
.hs-form-required {
  color: var(--errorColor);
}
.hs-input.invalid.error {
  border-color: var(--errorColor);
}
.hs-error-msg {
  color: ;
  background-color: rgba(240, 8, 8, 1.0);
  width: 100%;
  display: block;
  margin-top: 0.35rem;
  padding: 0.5em 1em;
  border-radius: 3px;
}
.hs-error-msg::before {
  content: '\0026A0';
  margin-right: 0.5rem;
}
.hs-form .hs-error-msgs {
  width: 100%;
}

/* Submit button */
form input[type=submit],
form .hs-button {
  font-family: 'Space Grotesk', sans-serif; font-style: normal; font-weight: 600; text-decoration: none;
  text-transform: none;
  color: #141414;
  border: 1px solid #FF344D;

  border-radius: 27px;
  padding-top: 8px;
padding-right: 16px;
padding-bottom: 8px;
padding-left: 16px;

  isolation: isolate;
  background: transparent;
}

form .hs-submit .actions {
  position: relative;
  display: inline-block;
}
form .hs-submit .actions::before {
  content: '';
  position: absolute;
    top: 0;
    left: 0;
  height: 100%;
  width: 3rem;
  background-color: rgba(255, 52, 77, 30%);
  border-radius: 27px;
  transition: left 0.3s ease-out;
}
form .hs-submit .actions:hover::before,
form .hs-submit .actions:hover::before {
  left: calc(100% - 3rem);
  background-color: rgba(255, 52, 77, 30%);
}

form input[type=submit]:hover,
form .hs-button:hover {
  color: #fff;
  background-color: rgba(255, 52, 77, 90%);
  border: 1px solid #FF344D;

}
form input[type=submit]:focus-within,
form .hs-button:focus-within {
  color: #fff;
  
}
form input[type=submit]:active,
form .hs-button:active {
  color: #fff;
  border: 1px solid #FF344D;

}

@media screen and (hover: none) {
  form input[type=submit],
  form .hs-button {
    color: #fff;
  }
  form .hs-submit .actions::before {
    left: calc(100% - 3rem);
  }
}

/* Submission Success */
form,
.submitted-message {
  font: var(--bodyFontSize)/1.5 var(--primaryFont);
}

/* Captcha */
.grecaptcha-badge {

}

/* White form */
.white-form .hs-form .hs-form-field label {
  color: #fff;
}
.white-form form input[type=text]:not(.site-search__input),
.white-form form input[type=email],
.white-form form input[type=password],
.white-form form input[type=tel],
.white-form form input[type=number],
.white-form form input[type=file],
.white-form form select,
.white-form form textarea {
  border-bottom: 1px solid #fff;
}
.white-form form select {
  color: #fff;
}
.white-form form input[type=submit],
.white-form form .hs-button {
  color: #fff;
  border-color: #fff;
}
.white-form form input[type=submit]:hover,
.white-form form .hs-button:hover,
.white-form form input[type=submit]:focus-within,
.white-form form .hs-button:focus-within,
.white-form form input[type=submit]:active,
.white-form form .hs-button:active {
  color: var(--secondaryColor);
  background-color: rgba(255,255,255,0.9);
  border-color: #fff;
}
.white-form form .hs-submit .actions::before {
  background-color: rgba(255,255,255,0.3);
}
.white-form form .hs-submit .actions:hover::before,
.white-form form .hs-submit .actions:focus-within::before,
.white-form form .hs-submit .actions:active::before {
  background-color: rgba(255,255,255,0.9);
}
.white-form .legal-consent-container p,
.white-form .legal-consent-container span,
.white-form .legal-consent-container .hs-richtext {
  color: #fff;
}

@media screen and (hover: none) {
  .white-form form input[type=submit],
  .white-form form .hs-button {
    color: var(--secondaryColor);
    background-color: #fff;
  }
  .white-form form .hs-submit .actions::before {
    background-color: rgba(255,255,255,0.9);
  }
}
/* Table */
table {
  
  border-collapse: collapse;
  margin-bottom: 1.4rem;
  overflow-wrap: break-word;
  background-color: #FFFFFF;
}

/* Table cells */
td,
th {
  color: ;
  vertical-align: top;
  padding: 18px;

  
  border-color: ;
}

/* Table header */
thead th {
  color: #FFFFFF;
  vertical-align: bottom;
  background-color: #1B06DE;
}

/* Table footer */
tfoot td {
  background-color: #FFFFFF;
  color: ;
}
/* Menu and simple menu */
.hs-menu-wrapper ul {
  list-style: none;
  margin: 0;
  padding-left: 0;
}

/* Horizontal menu */
.hs-menu-wrapper.hs-menu-flow-horizontal ul {
  display: flex;
    flex-wrap: wrap;
    gap: 1.5rem;
}
.hs-menu-wrapper.hs-menu-flow-horizontal li {

}

/* Vertical menu */
.hs-menu-wrapper.hs-menu-flow-vertical ul {
  display: grid;
}

/* Flyouts */
.hs-menu-wrapper.flyouts .hs-item-has-children {
  position: relative;
}
.hs-menu-wrapper.flyouts .hs-menu-children-wrapper {
  left: -9999px;
  opacity: 0;
  position: absolute;
}
.hs-menu-wrapper.flyouts .hs-menu-children-wrapper a {
  display: block;
  white-space: nowrap;
}
.hs-menu-wrapper.hs-menu-flow-horizontal.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper {
  left: 0;
  opacity: 1;
  top: 100%;
}
.hs-menu-wrapper.hs-menu-flow-vertical.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper {
  left: 100%;
  opacity: 1;
  top: 0;
}
@media (max-width: 767px) {
  .hs-menu-wrapper.flyouts .hs-menu-children-wrapper,
  .hs-menu-wrapper.hs-menu-flow-horizontal.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper,
  .hs-menu-wrapper.hs-menu-flow-vertical.flyouts .hs-item-has-children:hover > .hs-menu-children-wrapper {
    left: 0;
    opacity: 1;
    position: relative;
    top: auto;
  }
}

/* CTA, logo, and rich text images */
.hs_cos_wrapper_type_cta img,
.hs_cos_wrapper_type_logo img,
.hs_cos_wrapper_type_rich_text img {
  height: auto;
  max-width: 100%;
}

/* Splide arrows */
.splide__arrows {
  position: absolute;
    top: -3.5rem;
    right: 0;
  display: flex;
    gap: 0.25rem;
}
.splide__arrow {
  padding: 0.5rem;
  fill: var(--secondaryColor);
  background: transparent;
  border: 2px solid var(--secondaryColor);
  border-radius: 50%;
}
.splide__arrow svg {
  height: 1.5rem;
  width: 1.5rem;
}
.splide__arrow:hover,
.splide__arrow:focus {
  fill: #fff;
  background: var(--secondaryColor);
}
.splide__arrow--prev {
  transform: rotate(180deg);
}

.splide:not(.is-overflow) .splide__arrows {
  display: none;
}

.pagination__nav,
#pagination__numbers {
  display: flex;
}
.pagination__nav {
  gap: 1rem;
  justify-content: center;
}
#pagination__numbers {
  gap: 0.5rem;
  align-items: center;
}
.pagination-button,
.pagination-number {
  background: transparent;
  border: none;
  outline: none;
}
.pagination-number {
  width: 1.6em;
  height: 1.6em;
  color: var(--primaryColor);
  border-radius: 50%;
}
.pagination-number.active {
  font-size: 1.125em;
  color: #fff;
  background-color: var(--primaryColor);
}
.pagination-button span {
  color: var(--secondaryColor);
}
header.main-header {
  --navFontColor: #000;
  --navHoverColor: #000000;
  --navDDColor: #000000;
  --navDDHoverColor: #000000;
  --navDDBgColor: #FFFFFF;
}

/* Header container */
.main-header {
  position: fixed;
    top: 0;
    left: 0;
    right: 0;
  display: flex;
    justify-content: space-between;
    align-items: flex-end;
  background-color: rgba(255, 255, 255, 75%);
  padding: 1.5rem;
  z-index: 1000;
  backdrop-filter: blur(11px);
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.03);
}
.main-header__wrapper {
  width: 100%;
  margin: 0 auto;
  padding: 0 6rem;
  display: flex;
    align-items: center;
    column-gap: 2rem;
}
.header__navigation {
  margin-left: auto;
  display: flex;
    flex-direction: column;
    justify-content: space-between;
    column-gap: 2rem;
}
.header__logo {
  position: relative;
}
.header__tagline {
  font-size: 0.9375rem;
  font-family: var(--secondaryFont);
  font-weight: 700;
  width: max-content;
  position: absolute;
    top: 50%;
    left: calc(100% + 1.5rem);
  transition: all 0.3s ease-out;
}
.header__tagline:not(.header__tagline--hidden) {
  transform: translateY(-50%);
}
.header__tagline--hidden {
  transform: translateY(-100%);
  opacity: 0;
}

/* Main menu list */
.menu__list {
  display: none;
    align-items: center;
}
.menu__item {
  position: relative;
}
.menu__toggle[aria-expanded="true"] ~ .menu__list {
  display: grid;
}
.menu__toggle[aria-expanded="true"] #open {
  opacity: 0;
}
.menu__toggle[aria-expanded="false"] #close {
  opacity: 0;
}

/* Links */
.menu__link,
.menu__submenu-link {
  font-family: var(--primaryFont);
  font-size: 1rem;
  font-weight: normal;
  font-style: normal;
  text-decoration: none;
  background: none;
  border: none;
}
.menu__link {
  color: var(--navFontColor);
  text-decoration: none;
  position: relative;
}
.menu__list > .menu__item > .menu__link::before,
.menu__submenu-link::before {
  content: '';
  height: 2rem;
  width: 2rem;
  position: absolute;
    left: 0;
    top: 50%;
  transform: translateY(-50%);
  background-color: rgba(217, 4, 41, 30%);
  border-radius: 50%;
  opacity: 0;
  transition: all 0.3s ease-out; 
  pointer-events: none;
}
.menu__link-toggle-label {
  position: relative;
}
.menu__list > .menu__item > .menu__link:hover::before,
.menu__submenu-link:hover::before {
  left: calc(100% - 2rem);
  opacity: 1;
}
.menu__link:hover,
.menu__link:focus {
  color: var(--navHoverColor);
}
.menu__submenu-link {
  color: var(--navDDColor);
  position: relative;
}
.menu__submenu-link:hover {
  color: var(--navDDHoverColor);
}
.menu__link-toggle {
  text-align: left;
  width: 100%;
  display: flex;
    align-items: center;
    justify-content: space-between;
}
/* Contact CTA */
.menu__contact-cta .button {
  font-family: var(--primaryFont);
  font-size: 1rem;
  font-weight: normal;
  font-style: normal;
  text-decoration: none;
}
/* Submenus */
.menu__submenu {
  width: 125%;
  padding: 1rem;
  position: absolute;
    top: calc(100% + 2rem);
    left: -12.5%;
  display: grid;
    gap: 1rem;
  visibility: hidden;
  opacity: 0;
  background-color: var(--navDDBgColor);
  overflow: hidden;
  transform-origin: top;
  transition: transform 150ms ease;
  border-radius: 0 0 9px 9px;
  z-index: 100;
}

/* Navigation skipper */
.header__skip {
  height: 1px;
  left: -1000px;
  overflow: hidden;
  position: absolute;
  text-align: left;
  top: -1000px;
  width: 1px;
}
.header__skip:hover,
.header__skip:focus,
.header__skip:active {
  height: auto;
  left: 0;
  overflow: visible;
  top: 0;
  width: auto;
}

/* Header logo */
.header__logo .logo-company-name {
  font-size: 1.167rem;
  margin-top: 0.7rem;
}

/* Open/Close NoJS */
.clicky-menu.no-js .menu__item:hover > .menu__submenu {
  visibility: visible;
  opacity: 1;
}
.clicky-menu.no-js .menu__item:focus-within > .menu__submenu {
  visibility: visible;
  opacity: 1;
}
/* Open/close JS */
.clicky-menu .menu__submenu[aria-hidden="false"] {
  visibility: visible;
  opacity: 1; 
}

/* Mobile */
@media screen and (max-width: 359px) {
  .header__tagline {
    display: none;
  }
}
@media screen and (max-width: 1279px) {
  .menu__list {
    width: 100%;
    padding: 1.5rem;
    position: absolute;
      top: 100%;
      left: 0;
      right: 0;
    gap: 2rem;
    background-color: #fff;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.03);
  }
  .menu__list > .menu__item {
    position: relative;
  }
  .menu__list > .menu__item::after {
    content: '';
    width: 100%;
    height: 1px;
    position: absolute;
      top: 2rem;
      left: 0;
    background-color: var(--primaryColor);
  }
  .menu__submenu {
    padding: 2rem 1rem 0;
  }
  .menu__submenu > .menu__item:not(:last-child) {
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--primaryColor);
  }
  .clicky-menu .menu__submenu[aria-hidden="false"] {
    position: static;
  }
}

/* Desktop */
@media screen and (min-width: 1280px) {
  .main-header {
    padding: 1.5rem 4rem;
  }
  .menu__list > .menu__item {
    padding: 0 1.5rem;
  }
  .clicky-menu .menu__submenu[aria-hidden="false"] {
    visibility: visible;
    opacity: 1; 
  }
  .menu__submenu {
    box-shadow: 0 3px 6px rgba(0,0,0,0.16);
    backdrop-filter: blur(33px);
  }
  .menu__link-caret {
    display: none;
  }
  .menu__list {
    display: flex;
      justify-content: flex-end;
  }
  .menu__toggle {
    display: none;
  }
}
@media screen and (min-width: 1680px) {
  .menu__list > .menu__item {
    padding: 0 2.75rem;
  }
}
/* Styles */
.footer {
  padding: 2.5rem var(--dndPaddingInline);
  display: grid;
    gap: 3rem;
  background-color: #ffffff;
}

.footer ul[role="menu"] a {
  color: inherit;
  text-decoration: none;
  position: relative;
}
.footer a:hover {
  
}
.footer ul[role="menu"] a::before {
  content: '';
  height: 2rem;
  width: 2rem;
  position: absolute;
    left: 0;
    top: 50%;
  transform: translateY(-50%);
  background-color: rgba(217, 4, 41, 30%);
  border-radius: 50%;
  opacity: 0;
  transition: all 0.3s ease-out; 
  pointer-events: none;
}
.footer ul[role="menu"] a:hover::before {
  left: calc(100% - 2rem);
  opacity: 1;
}

.footer__row.sm\:flex {
  justify-content: space-between;
  gap: 4rem;
}
.footer__row-copyright {
  align-items: flex-end;
}
.footer__contact {
  max-width: 46rem;
  column-gap: 2.5rem;
  row-gap: 1rem;
}
.footer__menus {
  max-width: 48rem;
}
.footer ul[role="menu"] {
  display: grid;
    row-gap: 0;
}
.footer__contact-block {
  display: flex;
    justify-content: start;
    align-items: baseline;
    gap: 1rem;
}
.footer__contact-block img {
  flex-shrink: 0;
}
.footer__contact-block h3 {
  margin-bottom: 0.5rem;
}
.footer__terms a {
  color: inherit;
  text-decoration: none;
}
/* .footer__terms a:hover {
  color: inherit;
  text-decoration: none;
} */

@media screen and (max-width: 767px) {
  .footer__contact {
    margin-bottom: 3rem;
  }
}
@media screen and (min-width: 768px) {
  .footer ul[role="menu"] {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 1024px) {
  .footer ul[role="menu"] {
    grid-template-columns: repeat(3, 1fr);
  }
}
/* Layouts */
.flex {
  display: flex;
}
.grid {
  display: grid;
}
.grid--stacked > * {
  grid-column: 1;
  grid-row: 1;
}

/* Grid/Flex Ordering */
[data-order~="-1"] {
  order: -1;
}
[data-order~="0"] {
  order: 0;
}
[data-order~="1"] {
  order: 1;
}

.flex-wrap {
  display: flex;
    flex-wrap: wrap;
}
.flex--items-center {
  align-items: center;
}
.flex--items-end {
  align-items: end;
}
.gap--all-15 {
  gap: 1.5rem;
}

@media screen and (min-width: 768px) {
  .sm\:flex {
    display: flex;
  }
  .sm\:grid {
    display: grid;
  }
  [class^="sm:grid"] {
    display: grid;
  }
  [data-columns~="sm:2"] {
    grid-template-columns: repeat(2, 1fr);
  }
  [data-order~="sm:-1"] {
    order: -1;
  }
  [data-order~="sm:0"] {
    order: 0;
  }
  [data-order~="sm:1"] {
    order: 1;
  }
}
@media screen and (min-width: 960px) {
  .md\:flex {
    display: flex;
  }
  .md\:grid {
    display: grid;
  }
  [class^="md:grid"] {
    display: grid;
  }
  [data-columns~="md:2"] {
    grid-template-columns: repeat(2, 1fr);
  }
  [data-order~="md:-1"] {
    order: -1;
  }
  [data-order~="md:0"] {
    order: 0;
  }
  [data-order~="md:1"] {
    order: 1;
  }
}
@media screen and (min-width: 1280px) {
  .lrg\:flex {
    display: flex;
  }
  .lrg\:grid {
    display: grid;
  }
  [class^="lrg:grid"] {
    display: grid;
  }
  [data-columns~="lrg:2"] {
    grid-template-columns: repeat(2, 1fr);
  }
  [data-order~="lrg:-1"] {
    order: -1;
  }
  [data-order~="lrg:0"] {
    order: 0;
  }
  [data-order~="lrg:1"] {
    order: 1;
  }
}

.full-width {
  width: 100%;
}

.push-right {
  margin-left: auto;
}
/* Margins */
.m-0 {
  margin: 0;
}
.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

/* Padding */
.p-0 {
  padding: 0;
}

/* Text */
.ta-center {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .sm\:ta-center {
    text-align: center;
  }
}
.tc-primary {
  color: var(--primaryColor);
}
.tc-primary-var {
  color: var(--primaryVarColor);
}
.tc-secondary {
  color: var(--secondaryColor);
}
.tc-secondary-var {
  color: var(--secondaryVarColor);
}
.tc-white {
  color: #fff;
}
.ff-primary {
  font-family: var(--primaryFont);
}
.ff-secondary {
  font-family: var(--secondaryFont);
}
.fw-bold {
  font-weight: 700;
}

.box-shadow {
  box-shadow: 0 10px 6px rgba(213, 213, 213, 0.23);
  isolation: isolate;
}
.drop-shadow {
  filter: drop-shadow(0 10px 6px rgba(180,180,180,.16));
}