/* Theme base styles */

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

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

:root {
  --space-1: 8px;
  --space-2: 16px;
  --space-3: 24px;
  --space-4: 32px;
  --space-5: 40px;
  --space-6: 80px;
  --section-gap: 160px;

  --grid-columns: 12;
  --grid-gutter: 24px;
  --grid-max-width: 1416px;

  --radius: 24px;

  --line-height-heading: 1.1;
  --line-height-subheading: 1.2;
  --line-height-body: 1.4;
}

@media (max-width: 767px) {
  :root {
    --section-gap: 80px;
    --grid-columns: 4;
    --grid-gutter: 16px;
    --radius: 16px;
  }
}

:root {
  --gradient-image-overlay: linear-gradient(
    to top,
    color-mix(in srgb, var(--color-black-100) 75%, transparent) 0%,
    color-mix(in srgb, var(--color-black-100) 0%, transparent) 60%
  );
  --gradient-image-overlay-strong: linear-gradient(
    to top,
    color-mix(in srgb, var(--color-black-100) 75%, transparent) 0%,
    color-mix(in srgb, var(--color-black-100) 0%, transparent) 100%
  );
}






@font-face {
  font-family: 'Aller Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;

  src:
    url('https://25897583.fs1.hubspotusercontent-eu1.net/hubfs/25897583/raw_assets/public/sak-rework/fonts/aller-display.woff2') format('woff2'),
    url('https://25897583.fs1.hubspotusercontent-eu1.net/hubfs/25897583/raw_assets/public/sak-rework/fonts/aller-display.woff') format('woff');
}






@font-face {
  font-family: 'Cambay';
  font-style: normal;
  font-weight: 400;
  font-display: swap;

  ascent-override: 95%;
  descent-override: 45%;
  line-gap-override: 0%;

  src:
    url('https://25897583.fs1.hubspotusercontent-eu1.net/hubfs/25897583/raw_assets/public/sak-rework/fonts/cambay-regular.woff2') format('woff2'),
    url('https://25897583.fs1.hubspotusercontent-eu1.net/hubfs/25897583/raw_assets/public/sak-rework/fonts/cambay-regular.woff') format('woff');
}






@font-face {
  font-family: 'Cambay';
  font-style: italic;
  font-weight: 400;
  font-display: swap;

  ascent-override: 95%;
  descent-override: 45%;
  line-gap-override: 0%;

  src:
    url('https://25897583.fs1.hubspotusercontent-eu1.net/hubfs/25897583/raw_assets/public/sak-rework/fonts/cambay-italic.woff2') format('woff2'),
    url('https://25897583.fs1.hubspotusercontent-eu1.net/hubfs/25897583/raw_assets/public/sak-rework/fonts/cambay-italic.woff') format('woff');
}






@font-face {
  font-family: 'Cambay';
  font-style: normal;
  font-weight: 700;
  font-display: swap;

  ascent-override: 95%;
  descent-override: 45%;
  line-gap-override: 0%;

  src:
    url('https://25897583.fs1.hubspotusercontent-eu1.net/hubfs/25897583/raw_assets/public/sak-rework/fonts/cambay-bold.woff2') format('woff2'),
    url('https://25897583.fs1.hubspotusercontent-eu1.net/hubfs/25897583/raw_assets/public/sak-rework/fonts/cambay-bold.woff') format('woff');
}






@font-face {
  font-family: 'Cambay';
  font-style: italic;
  font-weight: 700;
  font-display: swap;

  ascent-override: 95%;
  descent-override: 45%;
  line-gap-override: 0%;

  src:
    url('https://25897583.fs1.hubspotusercontent-eu1.net/hubfs/25897583/raw_assets/public/sak-rework/fonts/cambay-bolditalic.woff2') format('woff2'),
    url('https://25897583.fs1.hubspotusercontent-eu1.net/hubfs/25897583/raw_assets/public/sak-rework/fonts/cambay-bolditalic.woff') format('woff');
}


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

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

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

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

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

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

body {
  margin: 0;
}

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

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

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

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

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

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

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

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

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

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

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

b,
strong {
  font-weight: bolder;
}

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

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

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

small {
  font-size: 80%;
}

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

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

legend {
  padding: 0;
}

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

progress {
  vertical-align: baseline;
}

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

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

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

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

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

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

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

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

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

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

details {
  display: block;
}

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

summary {
  display: list-item;
}

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

body {
  display: flex;
  flex-direction: column;
  min-height: 100dvh;
}

[data-global-resource-path$="partials/footer.html"],
#hs_cos_wrapper_site_footer {
  display: contents;
}

.body-wrapper {
  display: flex;
  flex: 1 0 auto;
  flex-direction: column;
}

.body-container-wrapper {
  flex: 1 0 auto;
}



/* CSS variables */

:root {
  --column-gap: 1.695%;
  --column-width-multiplier: 8.333;
  --container-page: 1728px;
}

/* Mobile layout */

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


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

/* Desktop layout */

@media (min-width: 768px) {
  .row-fluid {
    flex-wrap: nowrap;
    justify-content: space-between;
  }

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

.dnd-section .dnd-column .container-content:not(.section--bleed .container-content) {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

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

/* Section rhythm comes from .dnd-section margins in theme-overrides.css,
   driven by the vertical spacing theme setting, so stacked sections collapse
   to one gap and the last section's margin is the gap to the footer. */

.dnd-section:has(.hero) {
  margin-top: 0;
}

.dnd-section .dnd-row + .dnd-row {
  margin-top: var(--space-5);
}

.dnd-row .hs_cos_wrapper_type_rich_text > :last-child {
  margin-bottom: 0;
}

.dnd-section:has(.section--bleed) {
  padding-left: 0;
  padding-right: 0;
}

.dnd-section > .row-fluid:has(.section--bleed),
.dnd-section .row-fluid-wrapper:has(.section--bleed),
.dnd-section .widget-span:has(.section--bleed),
.dnd-section .dnd-column:has(.section--bleed) {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}
.section {
  background: var(--section-background, transparent);
}

.section--tinted,
.section--tinted :is(h1, h2, h3, h4, h5, h6, p, li, dt, dd, figcaption),
.section--tinted a:not(.button),
.section--tinted a:not(.button):hover,
.section--tinted a:not(.button):focus,
.section--tinted a:not(.button):active {
  color: var(--section-text, inherit);
}

.section--bleed > * > * > .container-content,
.section--bleed > * > .container-content,
.section--bleed > .container-content {
  max-width: calc(var(--container-content) + 2 * var(--spacing-gutter));
  padding-left: var(--spacing-gutter);
  padding-right: var(--spacing-gutter);
}

@media (max-width: 767px) {
  .section--bleed > * > * > .container-content,
  .section--bleed > * > .container-content,
  .section--bleed > .container-content {
    padding-left: var(--spacing-gutter-mobile);
    padding-right: var(--spacing-gutter-mobile);
  }
}

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

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

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

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

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

/* Paragraphs */

p {
  font-size: var(--text-body);
  line-height: var(--text-body--line-height);
  margin: 0 0 calc(var(--spacing) * 6);
}

/* Anchors */

a {
  cursor: pointer;
}

/* Headings */

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 calc(var(--spacing) * 4);
}

h1,
h2,
h3 {
  line-height: 1.1;
}

h1 {
  margin-bottom: calc(var(--spacing) * 6);
}

h4,
h5,
h6 {
  line-height: 1.2;
}

h4 {
  margin-bottom: calc(var(--spacing) * 2);
}

:is(p, ul, ol, table, figure, blockquote, pre, .table-scroll, h2) + :is(h2, h3) {
  margin-top: calc(var(--spacing) * 10);
}

:is(p, ul, ol, table, figure, blockquote, pre, .table-scroll, h3) + h4 {
  margin-top: calc(var(--spacing) * 8);
}

@media (max-width: 767px) {
  :is(p, ul, ol, table, figure, blockquote, pre, .table-scroll, h2) + :is(h2, h3) {
    margin-top: calc(var(--spacing) * 8);
  }

  :is(p, ul, ol, table, figure, blockquote, pre, .table-scroll, h3) + h4 {
    margin-top: calc(var(--spacing) * 6);
  }
}

small,
.text-small {
  font-size: var(--text-small);
  line-height: var(--text-small--line-height);
}

.lead {
  font-size: var(--text-lead);
  font-weight: 700;
  line-height: var(--text-lead--line-height);
}

.lead--hero {
  font-size: var(--text-lead-hero);
  font-weight: 700;
  line-height: var(--text-lead-hero--line-height);
}

@media (max-width: 767px) {
  .lead--hero {
    font-size: var(--text-lead);
  }
}

/* Lists */

ul,
ol {
  margin: 0 0 calc(var(--spacing) * 6);
}

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

ul:not([class]),
ol:not([class]),
.list-bullet,
.list-numbered,
.list-check,
.list-download {
  list-style: none;
  padding-left: 0;
}

ol:not([class]),
.list-numbered {
  counter-reset: list;
}

:where(ul:not([class]), ol:not([class]), .list-bullet, .list-numbered, .list-check, .list-download) > li {
  padding-left: calc(var(--spacing) * 8);
  position: relative;
}

:where(ul:not([class]), ol:not([class]), .list-bullet, .list-numbered, .list-check, .list-download) > li + li,
li > :is(ul, ol) {
  margin-top: calc(var(--spacing) * 2);
}

:where(ul:not([class]), ol:not([class]), .list-bullet, .list-numbered, .list-check, .list-download) > li::before {
  color: var(--color-violet-100);
  left: 0;
  position: absolute;
  top: 0;
}

:where(ul:not([class]), .list-bullet) > li::before {
  background-color: var(--color-violet-100);
  border-radius: 50%;
  content: '';
  height: calc(var(--spacing) * 1.5);
  left: calc(var(--spacing) * 2.25);
  top: 0.7em;
  transform: translateY(-50%);
  width: calc(var(--spacing) * 1.5);
}

:where(ol:not([class]), .list-numbered) > li::before {
  content: counter(list) '.';
  counter-increment: list;
  font-weight: 700;
  text-align: right;
  width: calc(var(--spacing) * 6);
}

:where(.list-check, .list-download) > li::before {
  background-color: var(--color-violet-100);
  content: '';
  height: calc(var(--spacing) * 6);
  top: 0.7em;
  transform: translateY(-50%);
  width: calc(var(--spacing) * 6);
}

.list-check > li::before {
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 12.1582L10 16.1582L18 8.1582' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 12.1582L10 16.1582L18 8.1582' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
}

.list-download > li::before {
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M20.249 20.5C20.663 20.5003 20.999 20.8359 20.999 21.25C20.999 21.6641 20.663 21.9997 20.249 22H3.75391C3.33969 22 3.00391 21.6642 3.00391 21.25C3.00391 20.8358 3.33969 20.5 3.75391 20.5H20.249ZM12.001 2.00195C12.4152 2.00195 12.751 2.33774 12.751 2.75195V15.3291L16.627 11.4668C16.9203 11.1745 17.3951 11.1754 17.6875 11.4688C17.9798 11.7621 17.9788 12.2369 17.6855 12.5293L12.5352 17.6631C12.4928 17.7023 12.3199 17.8321 12.001 17.8887C11.8336 17.8886 11.6804 17.832 11.5557 17.7393L6.31738 12.5293C6.02406 12.2369 6.02313 11.7621 6.31543 11.4688C6.60782 11.1755 7.08262 11.1745 7.37598 11.4668L11.251 15.3291V2.75195C11.251 2.33782 11.5869 2.00209 12.001 2.00195Z' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M20.249 20.5C20.663 20.5003 20.999 20.8359 20.999 21.25C20.999 21.6641 20.663 21.9997 20.249 22H3.75391C3.33969 22 3.00391 21.6642 3.00391 21.25C3.00391 20.8358 3.33969 20.5 3.75391 20.5H20.249ZM12.001 2.00195C12.4152 2.00195 12.751 2.33774 12.751 2.75195V15.3291L16.627 11.4668C16.9203 11.1745 17.3951 11.1754 17.6875 11.4688C17.9798 11.7621 17.9788 12.2369 17.6855 12.5293L12.5352 17.6631C12.4928 17.7023 12.3199 17.8321 12.001 17.8887C11.8336 17.8886 11.6804 17.832 11.5557 17.7393L6.31738 12.5293C6.02406 12.2369 6.02313 11.7621 6.31543 11.4688C6.60782 11.1755 7.08262 11.1745 7.37598 11.4668L11.251 15.3291V2.75195C11.251 2.33782 11.5869 2.00209 12.001 2.00195Z' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
}

.list-download a {
  color: inherit;
  text-decoration: none;
}

.list-download a:hover,
.list-download a:focus {
  color: var(--color-violet-100);
  text-decoration: underline;
}

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

/* Code blocks */

pre {
  overflow: auto;
}

code {
  vertical-align: bottom;
}

/* Blockquotes */

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

/* Horizontal rules */

hr {
  border: none;
  border-bottom: 1px solid var(--color-black-20);
}

/* Image alt text */

img {
  font-size: var(--text-small);
  word-break: normal;
}
button,
.button,
.hs-button {
  align-items: center;
  cursor: pointer;
  display: inline-flex;
  gap: calc(var(--spacing) * 2);
  justify-content: center;
  line-height: 1.4;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), border-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), box-shadow 0.3s cubic-bezier(0.3, 0, 0.3, 1), color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  white-space: normal;
}

.button .icon,
.hs-button .icon {
  flex: none;
  height: calc(var(--spacing) * 6);
  width: calc(var(--spacing) * 6);
}

.button.button--icon {
  padding-right: 22.5px;
}

.button.button--secondary {
  background-color: transparent;
  border-color: var(--color-violet-100);
  color: var(--color-violet-100);
}

.button.button--secondary:hover,
.button.button--secondary:focus {
  background-color: var(--color-black-100);
  border-color: var(--color-black-100);
  box-shadow: inset 0 0 0 1px var(--color-black-100);
  color: var(--color-white);
}

.button.button--negative {
  background-color: var(--color-white);
  border-color: var(--color-white);
  color: var(--color-violet-100);
}

.button.button--negative:hover,
.button.button--negative:focus {
  background-color: var(--color-black-100);
  color: var(--color-white);
}

button:disabled,
.button:disabled,
.button[aria-disabled="true"],
.hs-button:disabled {
  cursor: default;
  opacity: 0.35;
  pointer-events: none;
}

.button.button--round,
.button.button--round:hover,
.button.button--round:focus,
.button.button--share,
.button.button--share:hover,
.button.button--share:focus {
  border-radius: 50%;
  gap: 0;
  padding: 0;
}

.button.button--round {
  background-color: transparent;
  border: 1.5px solid var(--color-violet-100);
  color: var(--color-violet-100);
  flex: none;
  height: calc(var(--spacing) * 10);
  transition: background-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  width: calc(var(--spacing) * 10);
}

.button.button--round:hover,
.button.button--round:focus {
  background-color: var(--color-violet-100);
  border-color: var(--color-violet-100);
  color: var(--color-white);
}

.button.button--round.button--negative {
  border-color: var(--color-white);
  color: var(--color-white);
}

.button.button--round.button--negative:hover,
.button.button--round.button--negative:focus {
  background-color: var(--color-white);
  border-color: var(--color-white);
  color: var(--color-violet-100);
}

.button.button--share {
  background-color: var(--color-white);
  border: 1px solid var(--color-violet-100);
  transition: background-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), border-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  color: var(--color-violet-100);
  height: calc(var(--spacing) * 12);
  width: calc(var(--spacing) * 12);
}

.button.button--share:hover,
.button.button--share:focus {
  background-color: var(--color-violet-100);
  border-color: var(--color-violet-100);
  color: var(--color-white);
}

.link-icon {
  align-items: center;
  color: var(--color-violet-100);
  display: inline-flex;
  font-weight: 700;
  gap: calc(var(--spacing) * 2);
  text-decoration: none;
  transition: color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.link-icon:hover,
.link-icon:focus {
  color: var(--color-black-100);
}

.link-icon .icon {
  flex: none;
  height: calc(var(--spacing) * 6);
  width: calc(var(--spacing) * 6);
}

.link-text {
  color: var(--color-violet-100);
  font-weight: 700;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
  transition: color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.link-text:hover,
.link-text:focus {
  color: var(--color-black-100);
  text-decoration: none;
}

.link-icon[aria-disabled="true"],
.link-text[aria-disabled="true"] {
  opacity: 0.35;
  pointer-events: none;
}

.no-button,
.no-button:hover,
.no-button:focus,
.no-button:active {
  background: none;
  border: none;
  border-radius: 0;
  color: initial;
  font-family: inherit;
  font-size: inherit;
  font-style: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  margin-bottom: 0;
  padding: 0;
  text-align: left;
  text-decoration: none;
  transition: none;
}
/* Form layout */

form,
.hs-form {
  font-size: var(--text-body);
  line-height: var(--text-body--line-height);
}

.hs-form-field {
  margin-bottom: calc(var(--spacing) * 6);
  position: relative;
}

.hs-form-field > label,
.form-field > label {
  color: var(--color-black-100);
  display: block;
  font-size: var(--text-body);
  line-height: var(--text-body--line-height);
  margin-bottom: calc(var(--spacing) * 4);
}

form legend,
.hs-field-desc {
  color: var(--color-black-60);
  font-size: var(--text-small);
  margin: 0 0 calc(var(--spacing) * 2);
}

.form-title {
  margin-bottom: 0;
}

/* Text inputs, selects, textareas: 68px pill, label floats inside */

.hs-input,
form input[type=text],
form input[type=search],
form input[type=email],
form input[type=password],
form input[type=tel],
form input[type=number],
form input[type=url],
form input[type=date],
form select,
form textarea {
  appearance: none;
  background-color: transparent;
  border: 1px solid var(--color-black-100);
  border-radius: var(--radius-pill);
  color: var(--color-black-100);
  display: block;
  font-family: inherit;
  font-size: var(--text-body);
  font-weight: 700;
  line-height: var(--text-body--line-height);
  margin: 0;
  outline: 0;
  padding: 21px 31px 17px;
  transition: border-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), background-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), padding 0.2s ease-out;
  width: 100%;
}

form textarea {
  border-radius: var(--radius-card-lg);
  min-height: 160px;
  padding: 21px 31px 15px;
  resize: vertical;
}

form select {
  background-color: transparent;
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M2 8L12 18L22 8' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-position: right 31px center;
  background-repeat: no-repeat;
  background-size: calc(var(--spacing) * 6);
  cursor: pointer;
  padding-right: 71px;
}

form input[type=date],
form input[data-datepicker] {
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M17 0.25C17.4142 0.25 17.75 0.585786 17.75 1V3.25H20C21.5188 3.25 22.75 4.48122 22.75 6V18C22.75 19.5188 21.5188 20.75 20 20.75H4C2.48122 20.75 1.25 19.5188 1.25 18V6C1.25 4.48122 2.48122 3.25 4 3.25H6.25V1C6.25 0.585786 6.58579 0.25 7 0.25C7.41421 0.25 7.75 0.585786 7.75 1V3.25H16.25V1C16.25 0.585786 16.5858 0.25 17 0.25ZM2.75 9.75V18C2.75 18.6904 3.30964 19.25 4 19.25H20C20.6904 19.25 21.25 18.6904 21.25 18V9.75H2.75ZM4 4.75C3.30964 4.75 2.75 5.30964 2.75 6V8.25H21.25V6C21.25 5.30964 20.6904 4.75 20 4.75H4Z' fill='black'/%3E%3C/svg%3E");
  background-position: right 31px center;
  background-repeat: no-repeat;
  background-size: calc(var(--spacing) * 6);
  padding-right: 71px;
}

.hs-input::placeholder,
form input::placeholder,
form textarea::placeholder {
  color: var(--color-black-40);
  font-weight: 400;
  opacity: 1;
}

.hs-input:focus,
form input:focus,
form select:focus,
form textarea:focus {
  border-color: var(--color-black-100);
  outline: 0;
}

.hs-input:focus-visible,
form input:focus-visible,
form select:focus-visible,
form textarea:focus-visible {
  box-shadow: 0 0 0 3px var(--color-violet-20);
}

.hs-input:disabled,
form input:disabled,
form select:disabled,
form textarea:disabled {
  color: var(--color-black-80);
  cursor: default;
  opacity: 0.35;
}

.form-floating:has(> :disabled),
.hs-form-field:has(.hs-input:disabled) {
  opacity: 0.35;
}

.form-floating:has(> :disabled) > label,
.hs-form-field:has(.hs-input:disabled) > label {
  color: var(--color-black-80);
}

.form-floating > :disabled,
.hs-form-field .hs-input:disabled {
  opacity: 1;
}

/* Floating label: the label sits inside the field and moves up when the field has a value */

.form-floating,
.hs-form-field.is-floating {
  position: relative;
}

.form-floating > label,
.hs-form-field.is-floating > label {
  color: var(--color-black-100);
  font-weight: 400;
  left: 32px;
  margin: 0;
  pointer-events: none;
  position: absolute;
  overflow: hidden;
  right: 72px;
  text-overflow: ellipsis;
  top: 21px;
  transition: top 0.2s ease-out, font-size 0.2s ease-out, color 0.2s ease-out;
  white-space: nowrap;
  z-index: 1;
}

.form-floating:has(> input:not([type=date]):not([data-datepicker])) > label,
.form-floating:has(> textarea) > label {
  right: 32px;
}

.form-floating > .hs-input,
.form-floating > input,
.form-floating > select,
.form-floating > textarea,
.hs-form-field.is-floating .hs-input {
  padding-bottom: 3px;
  padding-top: 7px;
}

.form-floating > .hs-input,
.form-floating > input,
.form-floating > select,
.form-floating > textarea {
  padding-top: 21px;
  padding-bottom: 17px;
}

.form-floating > textarea {
  padding-bottom: 15px;
}

.form-floating > .hs-input::placeholder,
.form-floating > input::placeholder,
.form-floating > textarea::placeholder,
.hs-form-field.is-floating .hs-input::placeholder {
  color: transparent;
}

.form-floating:has(> input:focus) > label,
.form-floating:has(> input:not(:placeholder-shown)) > label,
.form-floating:has(> textarea:focus) > label,
.form-floating:has(> textarea:not(:placeholder-shown)) > label,
.form-floating:has(> select:focus) > label,
.form-floating:has(> .is-filled) > label,
.hs-form-field.is-floating:has(.hs-input:focus) > label,
.hs-form-field.is-floating:has(.hs-input:not(:placeholder-shown)) > label,
.hs-form-field.is-floating:has(.hs-input.is-filled) > label {
  color: var(--color-black-40);
  top: 8px;
}

.form-floating:has(> input:focus) > input,
.form-floating:has(> input:not(:placeholder-shown)) > input,
.form-floating:has(> select:focus) > select,
.form-floating:has(> .is-filled) > .is-filled,
.hs-form-field.is-floating:has(.hs-input:focus) .hs-input,
.hs-form-field.is-floating:has(.hs-input:not(:placeholder-shown)) .hs-input,
.hs-form-field.is-floating:has(.hs-input.is-filled) .hs-input {
  padding-bottom: 3px;
  padding-top: 35px;
}

.form-floating:has(> textarea:focus) > textarea,
.form-floating:has(> textarea:not(:placeholder-shown)) > textarea {
  padding-bottom: 15px;
  padding-top: 35px;
}

/* Checkbox and radio */

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

form .inputs-list > li {
  display: block;
  margin: 0 0 calc(var(--spacing) * 4);
}

form .inputs-list > li:last-child {
  margin-bottom: 0;
}

form .inputs-list label,
.form-check {
  align-items: flex-start;
  color: var(--color-black-80);
  cursor: pointer;
  display: flex;
  font-size: var(--text-body);
  gap: calc(var(--spacing) * 2);
  line-height: var(--text-body--line-height);
  margin: 0;
}

form input[type=checkbox],
form input[type=radio] {
  appearance: none;
  background-color: transparent;
  border: 1.5px solid var(--color-black-100);
  cursor: pointer;
  flex: none;
  height: calc(var(--spacing) * 6);
  margin: 2px 0 0;
  position: relative;
  transition: background-color 0.2s ease-out, border-color 0.2s ease-out;
  width: calc(var(--spacing) * 6);
}

form input[type=checkbox] {
  border-radius: var(--spacing);
}

form input[type=checkbox]:checked {
  background-color: var(--color-black-100);
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white'%3E%3Cpath d='M6 12.1582L10 16.1582L18 8.1582' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: calc(var(--spacing) * 5);
}

form input[type=radio] {
  border-radius: 50%;
}

form input[type=radio]:checked::after {
  background-color: var(--color-black-100);
  border-radius: 50%;
  content: "";
  height: 13px;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 13px;
}

form input[type=checkbox]:focus-visible,
form input[type=radio]:focus-visible {
  box-shadow: 0 0 0 3px var(--color-violet-20);
  outline: 0;
}

form input[type=checkbox]:disabled,
form input[type=radio]:disabled {
  opacity: 0.35;
}

/* Toggle */

form input[type=checkbox].toggle,
input[type=checkbox].toggle {
  background-color: var(--color-dark-grey-100);
  border: 0;
  border-radius: var(--radius-pill);
  height: 28px;
  width: 48px;
}

input[type=checkbox].toggle::after {
  background-color: var(--color-white);
  border-radius: 50%;
  content: "";
  height: calc(var(--spacing) * 6);
  left: 2px;
  position: absolute;
  top: 2px;
  transition: transform 0.2s ease-out;
  width: calc(var(--spacing) * 6);
}

input[type=checkbox].toggle:checked {
  background-color: var(--color-violet-80);
  background-image: none;
}

input[type=checkbox].toggle:checked::after {
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 12.1582L10 16.1582L18 8.1582' stroke='%23853385' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: calc(var(--spacing) * 4);
  transform: translateX(20px);
}

/* File upload */

.form-upload,
.hs-fieldtype-file .input {
  align-items: center;
  border: 1px dashed var(--color-black-100);
  border-radius: var(--radius-card-lg);
  color: var(--color-black-100);
  cursor: pointer;
  display: flex;
  justify-content: center;
  min-height: 160px;
  padding: calc(var(--spacing) * 4) calc(var(--spacing) * 8);
  position: relative;
  text-align: center;
  transition: background-color 0.2s ease-out, border-color 0.2s ease-out;
}

.form-upload.is-dragover,
.hs-fieldtype-file .input.is-dragover {
  background-color: var(--color-violet-20);
}

.form-upload input[type=file],
.hs-fieldtype-file .input input[type=file] {
  cursor: pointer;
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.form-files {
  margin-top: calc(var(--spacing) * 4);
}

.form-files__title {
  font-weight: 700;
  margin: 0 0 calc(var(--spacing) * 2);
}

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

.form-files li {
  align-items: center;
  display: flex;
  gap: calc(var(--spacing) * 2);
  margin: 0 0 calc(var(--spacing) * 2);
}

.form-files li::before {
  background-color: var(--color-violet-100);
  content: "";
  height: calc(var(--spacing) * 6);
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12.1582' r='3' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12.1582' r='3' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
  width: calc(var(--spacing) * 6);
}

.form-files button {
  background-color: var(--color-black-100);
  border: 0;
  border-radius: 0;
  cursor: pointer;
  height: calc(var(--spacing) * 6);
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M12 0.25C18.4893 0.25 23.75 5.51065 23.75 12C23.75 18.4893 18.4893 23.75 12 23.75C5.51065 23.75 0.25 18.4893 0.25 12C0.25 5.51065 5.51065 0.25 12 0.25ZM12 1.75C6.33908 1.75 1.75 6.33908 1.75 12C1.75 17.6609 6.33908 22.25 12 22.25C17.6609 22.25 22.25 17.6609 22.25 12C22.25 6.33908 17.6609 1.75 12 1.75ZM15.4697 7.46973C15.7626 7.17683 16.2374 7.17683 16.5303 7.46973C16.8232 7.76262 16.8232 8.23738 16.5303 8.53027L13.0605 12L16.5303 15.4697C16.8232 15.7626 16.8232 16.2374 16.5303 16.5303C16.2374 16.8232 15.7626 16.8232 15.4697 16.5303L12 13.0605L8.53027 16.5303C8.23738 16.8232 7.76262 16.8232 7.46973 16.5303C7.17683 16.2374 7.17683 15.7626 7.46973 15.4697L10.9395 12L7.46973 8.53027C7.17683 8.23738 7.17683 7.76262 7.46973 7.46973C7.76262 7.17683 8.23738 7.17683 8.53027 7.46973L12 10.9395L15.4697 7.46973Z' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M12 0.25C18.4893 0.25 23.75 5.51065 23.75 12C23.75 18.4893 18.4893 23.75 12 23.75C5.51065 23.75 0.25 18.4893 0.25 12C0.25 5.51065 5.51065 0.25 12 0.25ZM12 1.75C6.33908 1.75 1.75 6.33908 1.75 12C1.75 17.6609 6.33908 22.25 12 22.25C17.6609 22.25 22.25 17.6609 22.25 12C22.25 6.33908 17.6609 1.75 12 1.75ZM15.4697 7.46973C15.7626 7.17683 16.2374 7.17683 16.5303 7.46973C16.8232 7.76262 16.8232 8.23738 16.5303 8.53027L13.0605 12L16.5303 15.4697C16.8232 15.7626 16.8232 16.2374 16.5303 16.5303C16.2374 16.8232 15.7626 16.8232 15.4697 16.5303L12 13.0605L8.53027 16.5303C8.23738 16.8232 7.76262 16.8232 7.46973 16.5303C7.17683 16.2374 7.17683 15.7626 7.46973 15.4697L10.9395 12L7.46973 8.53027C7.17683 8.23738 7.17683 7.76262 7.46973 7.46973C7.76262 7.17683 8.23738 7.17683 8.53027 7.46973L12 10.9395L15.4697 7.46973Z' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
  padding: 0;
  width: calc(var(--spacing) * 6);
}

/* Validation */

.hs-form-required {
  color: var(--color-warning-100);
}

.hs-form-field.is-error > label,
.hs-form-field:has(.hs-input.invalid) > label,
.hs-form-field:has(.hs-input.error) > label,
.form-field.is-error > label,
.form-floating.is-error > label,
.hs-form-field.is-error .inputs-list label,
.form-field.is-error .form-check {
  color: var(--color-warning-100);
  font-weight: 700;
}

.hs-input.invalid,
.hs-input.error,
.is-error > .hs-input,
form .is-error > input:not([type=checkbox]):not([type=radio]),
form .is-error > select,
form .is-error > textarea,
.is-error > .form-upload {
  background-color: var(--color-warning-20);
  border-color: var(--color-warning-100);
}

form .is-error input[type=checkbox],
form .is-error input[type=radio],
.is-error .form-check {
  border-color: var(--color-warning-100);
  color: var(--color-warning-100);
  font-weight: 400;
}

.form-floating.is-error:has(> input:focus) > label,
.form-floating.is-error:has(> input:not(:placeholder-shown)) > label,
.form-floating.is-error:has(> textarea:focus) > label,
.form-floating.is-error:has(> textarea:not(:placeholder-shown)) > label,
.form-floating.is-error:has(> select:focus) > label,
.form-floating.is-error:has(> .is-filled) > label,
.hs-form-field.is-floating:has(.hs-input.invalid) > label,
.hs-form-field.is-floating:has(.hs-input.error) > label {
  color: var(--color-warning-100);
}

.hs-input.invalid,
.hs-input.error,
form .is-error > input:not([type=checkbox]):not([type=radio]),
form .is-error > select,
form .is-error > textarea {
  color: var(--color-warning-100);
}

.hs-error-msgs {
  list-style: none;
  margin: calc(var(--spacing) * 4) 0 0;
  padding: 0;
}

.hs-error-msgs li {
  margin: 0;
}

.hs-error-msg,
.form-error {
  align-items: flex-start;
  color: var(--color-warning-100);
  display: flex;
  font-size: var(--text-body);
  font-weight: 400;
  gap: calc(var(--spacing) * 2);
  line-height: var(--text-body--line-height);
  margin: 0;
}

.form-error {
  margin-top: calc(var(--spacing) * 4);
}

.form-floating > .form-error,
.form-field > .form-error {
  margin-bottom: 0;
}

.hs-error-msg::before,
.form-error::before {
  background-color: currentColor;
  content: "";
  flex: none;
  height: calc(var(--spacing) * 6);
  margin-top: 2px;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M12 1.25C17.9371 1.25 22.75 6.06294 22.75 12C22.75 17.9371 17.9371 22.75 12 22.75C6.06294 22.75 1.25 17.9371 1.25 12C1.25 6.06294 6.06294 1.25 12 1.25ZM12 2.75C6.89137 2.75 2.75 6.89137 2.75 12C2.75 17.1086 6.89137 21.25 12 21.25C17.1086 21.25 21.25 17.1086 21.25 12C21.25 6.89137 17.1086 2.75 12 2.75ZM12 15.5C12.6904 15.5 13.25 16.0596 13.25 16.75C13.25 17.4404 12.6904 18 12 18C11.3096 18 10.75 17.4404 10.75 16.75C10.75 16.0596 11.3096 15.5 12 15.5ZM12 6C12.5523 6 13 6.44772 13 7V13C13 13.5523 12.5523 14 12 14C11.4477 14 11 13.5523 11 13V7C11 6.44772 11.4477 6 12 6Z' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M12 1.25C17.9371 1.25 22.75 6.06294 22.75 12C22.75 17.9371 17.9371 22.75 12 22.75C6.06294 22.75 1.25 17.9371 1.25 12C1.25 6.06294 6.06294 1.25 12 1.25ZM12 2.75C6.89137 2.75 2.75 6.89137 2.75 12C2.75 17.1086 6.89137 21.25 12 21.25C17.1086 21.25 21.25 17.1086 21.25 12C21.25 6.89137 17.1086 2.75 12 2.75ZM12 15.5C12.6904 15.5 13.25 16.0596 13.25 16.75C13.25 17.4404 12.6904 18 12 18C11.3096 18 10.75 17.4404 10.75 16.75C10.75 16.0596 11.3096 15.5 12 15.5ZM12 6C12.5523 6 13 6.44772 13 7V13C13 13.5523 12.5523 14 12 14C11.4477 14 11 13.5523 11 13V7C11 6.44772 11.4477 6 12 6Z' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
  width: calc(var(--spacing) * 6);
}

/* Date picker (vanilla-calendar-pro, styled after the Figma calendar) */

[data-vc="calendar"],
.form-calendar {
  background-color: var(--color-white);
  border: 1px solid var(--color-black-100);
  border-radius: var(--radius-card-lg);
  box-sizing: border-box;
  color: var(--color-black-100);
  font-family: inherit;
  padding: calc(var(--spacing) * 4);
  width: 336px;
}

[data-vc="calendar"] {
  display: flex;
  flex-direction: column;
  transition: opacity 0.15s ease-out;
  user-select: none;
}

[data-vc="calendar"][data-vc-input] {
  box-shadow: 0 16px 48px 0 color-mix(in srgb, var(--color-black-100) 15%, transparent);
  position: absolute;
  z-index: 90;
}

[data-vc="calendar"][data-vc-input][data-vc-position="bottom"] {
  margin-top: calc(var(--spacing) * 4);
}

[data-vc="calendar"][data-vc-input][data-vc-position="top"] {
  margin-top: calc(var(--spacing) * -4);
}

[data-vc="calendar"][data-vc-calendar-hidden] {
  opacity: 0;
  pointer-events: none;
}

[data-vc="calendar"] button {
  background: transparent;
  border: 0;
  border-radius: 0;
  color: inherit;
  font: inherit;
  padding: 0;
}

[data-vc="calendar"] button:focus-visible,
[data-vc="calendar"] input:focus-visible {
  box-shadow: 0 0 0 3px var(--color-violet-20);
  outline: 0;
}

[data-vc="header"],
.form-calendar__header {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-bottom: 12px;
  position: relative;
}

[data-vc-header="content"] {
  display: flex;
  gap: calc(var(--spacing) * 1);
  justify-content: center;
}

[data-vc="calendar"] [data-vc="month"],
[data-vc="calendar"] [data-vc="year"],
.form-calendar__title {
  cursor: default;
  font-size: var(--text-body);
  font-weight: 700;
  line-height: var(--text-body--line-height);
}

[data-vc="calendar"] [data-vc-arrow],
.form-calendar__prev,
.form-calendar__next {
  background-color: var(--color-black-100);
  cursor: pointer;
  flex: none;
  height: calc(var(--spacing) * 6);
  text-indent: -9999px;
  width: calc(var(--spacing) * 6);
}

[data-vc="calendar"] [data-vc-arrow="prev"],
.form-calendar__prev {
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M9.45392 19.7834C9.15956 20.0746 8.6847 20.0717 8.39337 19.7776L1.22736 12.5373C1.22439 12.5344 1.22148 12.5315 1.21857 12.5285L1.16779 12.4719C1.1579 12.4597 1.14945 12.4465 1.14044 12.4338C1.13585 12.4273 1.13116 12.4209 1.12677 12.4143C1.12054 12.4049 1.11593 12.3946 1.11017 12.385C1.09114 12.3532 1.07263 12.321 1.05841 12.2864C1.04876 12.2629 1.04312 12.2383 1.03595 12.2141C1.016 12.1466 1.00177 12.0762 1.00177 12.0022C1.00177 11.9571 1.00685 11.9132 1.01447 11.8703C1.02387 11.8171 1.03842 11.7647 1.05939 11.7141C1.06551 11.6994 1.07484 11.6863 1.08185 11.6721C1.11666 11.6013 1.16005 11.533 1.21857 11.4739L8.39337 4.22484C8.68469 3.93068 9.15956 3.92789 9.45392 4.21898C9.74802 4.51024 9.7507 4.98515 9.45978 5.27952L3.54865 11.2522L22.2508 11.2522C22.665 11.2522 23.0008 11.588 23.0008 12.0022C23.0008 12.4164 22.665 12.7522 22.2508 12.7522L3.5506 12.7522L9.45978 18.7229C9.75075 19.0173 9.74804 19.4922 9.45392 19.7834Z' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M9.45392 19.7834C9.15956 20.0746 8.6847 20.0717 8.39337 19.7776L1.22736 12.5373C1.22439 12.5344 1.22148 12.5315 1.21857 12.5285L1.16779 12.4719C1.1579 12.4597 1.14945 12.4465 1.14044 12.4338C1.13585 12.4273 1.13116 12.4209 1.12677 12.4143C1.12054 12.4049 1.11593 12.3946 1.11017 12.385C1.09114 12.3532 1.07263 12.321 1.05841 12.2864C1.04876 12.2629 1.04312 12.2383 1.03595 12.2141C1.016 12.1466 1.00177 12.0762 1.00177 12.0022C1.00177 11.9571 1.00685 11.9132 1.01447 11.8703C1.02387 11.8171 1.03842 11.7647 1.05939 11.7141C1.06551 11.6994 1.07484 11.6863 1.08185 11.6721C1.11666 11.6013 1.16005 11.533 1.21857 11.4739L8.39337 4.22484C8.68469 3.93068 9.15956 3.92789 9.45392 4.21898C9.74802 4.51024 9.7507 4.98515 9.45978 5.27952L3.54865 11.2522L22.2508 11.2522C22.665 11.2522 23.0008 11.588 23.0008 12.0022C23.0008 12.4164 22.665 12.7522 22.2508 12.7522L3.5506 12.7522L9.45978 18.7229C9.75075 19.0173 9.74804 19.4922 9.45392 19.7834Z' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
}

[data-vc="calendar"] [data-vc-arrow="next"],
.form-calendar__next {
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M14.3936 4.23765C14.6894 3.94796 15.1652 3.95263 15.4551 4.24839L22.5361 11.475C22.5587 11.498 22.5767 11.5242 22.5957 11.5492C22.6047 11.561 22.6148 11.572 22.623 11.5843C22.6381 11.6069 22.6497 11.631 22.6621 11.6546C22.6728 11.675 22.6846 11.6948 22.6934 11.7162C22.703 11.7397 22.7087 11.7642 22.7158 11.7884C22.7358 11.8559 22.75 11.9264 22.75 12.0003C22.75 12.0783 22.734 12.1523 22.7119 12.223C22.7058 12.2425 22.702 12.2626 22.6943 12.2816C22.6844 12.3062 22.6706 12.3287 22.6582 12.3519C22.6468 12.3732 22.6366 12.3951 22.623 12.4154C22.6109 12.4336 22.5957 12.4492 22.582 12.4662C22.5666 12.4853 22.5537 12.5068 22.5361 12.5248L15.4551 19.7503C15.1652 20.0462 14.6894 20.051 14.3936 19.7611C14.0982 19.4711 14.0931 18.9962 14.3828 18.7005L20.2139 12.7503H1.76758C1.35336 12.7503 1.01758 12.4146 1.01758 12.0003C1.01758 11.5861 1.35337 11.2503 1.76758 11.2503H20.2158L14.3828 5.29917C14.0929 5.00333 14.0977 4.52756 14.3936 4.23765Z' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M14.3936 4.23765C14.6894 3.94796 15.1652 3.95263 15.4551 4.24839L22.5361 11.475C22.5587 11.498 22.5767 11.5242 22.5957 11.5492C22.6047 11.561 22.6148 11.572 22.623 11.5843C22.6381 11.6069 22.6497 11.631 22.6621 11.6546C22.6728 11.675 22.6846 11.6948 22.6934 11.7162C22.703 11.7397 22.7087 11.7642 22.7158 11.7884C22.7358 11.8559 22.75 11.9264 22.75 12.0003C22.75 12.0783 22.734 12.1523 22.7119 12.223C22.7058 12.2425 22.702 12.2626 22.6943 12.2816C22.6844 12.3062 22.6706 12.3287 22.6582 12.3519C22.6468 12.3732 22.6366 12.3951 22.623 12.4154C22.6109 12.4336 22.5957 12.4492 22.582 12.4662C22.5666 12.4853 22.5537 12.5068 22.5361 12.5248L15.4551 19.7503C15.1652 20.0462 14.6894 20.051 14.3936 19.7611C14.0982 19.4711 14.0931 18.9962 14.3828 18.7005L20.2139 12.7503H1.76758C1.35336 12.7503 1.01758 12.4146 1.01758 12.0003C1.01758 11.5861 1.35337 11.2503 1.76758 11.2503H20.2158L14.3828 5.29917C14.0929 5.00333 14.0977 4.52756 14.3936 4.23765Z' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
}

[data-vc="week"],
[data-vc="dates"] > * {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
}

[data-vc="dates"] {
  display: flex;
  flex-direction: column;
}

[data-vc-week-day],
.form-calendar th {
  font-size: var(--text-body);
  font-weight: 700;
  padding: 0 0 calc(var(--spacing) * 2);
  text-align: center;
  text-transform: uppercase;
}

.form-calendar table {
  border-collapse: collapse;
  margin: 0;
  table-layout: fixed;
  width: 100%;
}

.form-calendar th,
.form-calendar td {
  border: 0;
  padding: 0;
  text-align: center;
}

[data-vc-date] {
  display: flex;
  justify-content: center;
}

[data-vc="calendar"] [data-vc-date-btn],
.form-calendar__day {
  background: transparent;
  border: 0;
  border-radius: 50%;
  color: var(--color-black-100);
  cursor: pointer;
  display: inline-block;
  font-size: var(--text-body);
  font-weight: 700;
  height: calc(var(--spacing) * 10);
  line-height: calc(var(--spacing) * 10);
  margin: 0;
  padding: 0;
  text-align: center;
  transition: background-color 0.2s ease-out, color 0.2s ease-out;
  width: calc(var(--spacing) * 10);
}

[data-vc="calendar"] [data-vc-date-btn]:hover,
.form-calendar__day:hover {
  background-color: var(--color-violet-20);
  color: var(--color-black-100);
}

[data-vc="calendar"] [data-vc-date-month="prev"] [data-vc-date-btn],
[data-vc="calendar"] [data-vc-date-month="next"] [data-vc-date-btn],
[data-vc="calendar"] [data-vc-date-disabled] [data-vc-date-btn],
.form-calendar__day--outside {
  color: var(--color-black-40);
  font-weight: 400;
}

[data-vc="calendar"] [data-vc-date-disabled] [data-vc-date-btn] {
  cursor: not-allowed;
}

[data-vc="calendar"] [data-vc-date-disabled] [data-vc-date-btn]:hover {
  background-color: transparent;
  color: var(--color-black-40);
}

[data-vc="calendar"] [data-vc-date-month="current"][data-vc-date-disabled] [data-vc-date-btn] {
  text-decoration: line-through;
}

[data-vc="calendar"] [data-vc-date-selected] [data-vc-date-btn],
.form-calendar__day--selected,
.form-calendar__day--selected:hover {
  background-color: var(--color-black-80);
  color: var(--color-white);
}

[data-vc="calendar"] [data-vc-date-selected="middle"] [data-vc-date-btn],
[data-vc="calendar"] [data-vc-date-hover] [data-vc-date-btn] {
  background-color: var(--color-violet-20);
  color: var(--color-black-100);
}

[data-vc="calendar"] [data-vc-date-selected="middle"],
[data-vc="calendar"] [data-vc-date-hover="middle"],
[data-vc="calendar"] [data-vc-date-selected="first"],
[data-vc="calendar"] [data-vc-date-selected="last"] {
  background: linear-gradient(var(--color-violet-20), var(--color-violet-20)) center / 100% calc(var(--spacing) * 10) no-repeat;
}

[data-vc="calendar"] [data-vc-date-selected="first"],
[data-vc="calendar"] [data-vc-date-hover="first"] {
  background-size: 50% calc(var(--spacing) * 10);
  background-position: right center;
}

[data-vc="calendar"] [data-vc-date-selected="last"],
[data-vc="calendar"] [data-vc-date-hover="last"] {
  background-size: 50% calc(var(--spacing) * 10);
  background-position: left center;
}

[data-vc="calendar"] [data-vc-date-selected="first-and-last"] {
  background: none;
}

/* Time control inside the calendar popup */

[data-vc="time"] {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 3);
}

[data-vc-time="content"] {
  align-items: center;
  display: flex;
  gap: calc(var(--spacing) * 2);
  justify-content: center;
}

[data-vc-time="content"] > :not([data-vc-time-input]):not([data-vc-time="keeping"]) {
  font-size: var(--text-body);
  font-weight: 700;
}

[data-vc-time-input] input {
  appearance: none;
  background-color: transparent;
  border: 1px solid var(--color-black-100);
  border-radius: var(--radius-pill);
  color: var(--color-black-100);
  font-family: inherit;
  font-size: var(--text-body);
  font-weight: 700;
  height: 48px;
  line-height: 1;
  margin: 0;
  padding: 0;
  text-align: center;
  width: 72px;
}

[data-vc-time="ranges"] {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 2);
}

[data-vc-time-range] input {
  accent-color: var(--color-violet-100);
  display: block;
  margin: 0;
  width: 100%;
}

.hs-dateinput {
  position: relative;
}

.hs-dateinput .hs-input {
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M17 0.25C17.4142 0.25 17.75 0.585786 17.75 1V3.25H20C21.5188 3.25 22.75 4.48122 22.75 6V18C22.75 19.5188 21.5188 20.75 20 20.75H4C2.48122 20.75 1.25 19.5188 1.25 18V6C1.25 4.48122 2.48122 3.25 4 3.25H6.25V1C6.25 0.585786 6.58579 0.25 7 0.25C7.41421 0.25 7.75 0.585786 7.75 1V3.25H16.25V1C16.25 0.585786 16.5858 0.25 17 0.25ZM2.75 9.75V18C2.75 18.6904 3.30964 19.25 4 19.25H20C20.6904 19.25 21.25 18.6904 21.25 18V9.75H2.75ZM4 4.75C3.30964 4.75 2.75 5.30964 2.75 6V8.25H21.25V6C21.25 5.30964 20.6904 4.75 20 4.75H4Z' fill='black'/%3E%3C/svg%3E");
  background-position: right 31px center;
  background-repeat: no-repeat;
  background-size: calc(var(--spacing) * 6);
  padding-right: 71px;
}

/* Time picker: masked HH:MM input with a list of times */

form input.sak-time,
input.sak-time {
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='10.25' stroke='black' stroke-width='1.5'/%3E%3Cpath d='M12 6.5V12L15.5 14.5' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-position: right 31px center;
  background-repeat: no-repeat;
  background-size: calc(var(--spacing) * 6);
  padding-right: 71px;
}

.form-negative form input.sak-time,
.form-negative input.sak-time {
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='10.25' stroke='white' stroke-width='1.5'/%3E%3Cpath d='M12 6.5V12L15.5 14.5' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.time-list {
  background-color: var(--color-white);
  border: 1px solid var(--color-black-100);
  border-radius: var(--radius-card-lg);
  box-shadow: 0 16px 48px 0 color-mix(in srgb, var(--color-black-100) 15%, transparent);
  box-sizing: border-box;
  color: var(--color-black-100);
  max-height: 336px;
  overflow-y: auto;
  padding: calc(var(--spacing) * 2) 0;
  position: absolute;
  z-index: 90;
}

.time-list__item {
  background: transparent;
  border: 0;
  border-radius: 0;
  color: var(--color-black-100);
  cursor: pointer;
  display: block;
  font-size: var(--text-body);
  font-weight: 400;
  line-height: var(--text-body--line-height);
  padding: calc(var(--spacing) * 3) 31px;
  text-align: left;
  transition: background-color 0.2s ease-out;
  width: 100%;
}

.time-list__item:hover,
.time-list__item:focus-visible {
  background-color: var(--color-violet-20);
  color: var(--color-black-100);
  outline: 0;
}

.time-list__item[aria-selected="true"] {
  background-color: var(--color-violet-20);
  font-weight: 700;
}

/* Rich text inside forms and GDPR */

form .hs-richtext,
form .hs-richtext p {
  font-size: var(--text-body);
  margin: 0 0 calc(var(--spacing) * 6);
}

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

.legal-consent-container .hs-form-booleancheckbox-display > span,
.legal-consent-container .hs-form-booleancheckbox-display > span p {
  margin: 0;
}

/* Submit button */

form input[type=submit],
form .hs-button {
  cursor: pointer;
  display: inline-flex;
  text-align: center;
  transition: background-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), border-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  white-space: normal;
}

.hs-submit {
  margin-top: calc(var(--spacing) * 10);
}

/* Negative form on SAK Violett */

.form-negative,
.form-negative form,
.form-negative .hs-form-field > label,
.form-negative .form-field > label,
.form-negative .form-floating > label,
.form-negative form .inputs-list label,
.form-negative .form-check,
.form-negative .hs-richtext,
.form-negative .form-files {
  color: var(--color-white);
}

.form-negative .hs-input,
.form-negative form input[type=text],
.form-negative form input[type=search],
.form-negative form input[type=email],
.form-negative form input[type=password],
.form-negative form input[type=tel],
.form-negative form input[type=number],
.form-negative form input[type=url],
.form-negative form input[type=date],
.form-negative form select,
.form-negative form textarea,
.form-negative form input[type=checkbox],
.form-negative form input[type=radio],
.form-negative .form-upload,
.form-negative .hs-fieldtype-file .input {
  border-color: var(--color-white);
  color: var(--color-white);
}

.form-negative form select {
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M2 8L12 18L22 8' stroke='white' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.form-negative form input[type=date],
.form-negative form input[data-datepicker],
.form-negative .hs-dateinput .hs-input {
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M17 0.25C17.4142 0.25 17.75 0.585786 17.75 1V3.25H20C21.5188 3.25 22.75 4.48122 22.75 6V18C22.75 19.5188 21.5188 20.75 20 20.75H4C2.48122 20.75 1.25 19.5188 1.25 18V6C1.25 4.48122 2.48122 3.25 4 3.25H6.25V1C6.25 0.585786 6.58579 0.25 7 0.25C7.41421 0.25 7.75 0.585786 7.75 1V3.25H16.25V1C16.25 0.585786 16.5858 0.25 17 0.25ZM2.75 9.75V18C2.75 18.6904 3.30964 19.25 4 19.25H20C20.6904 19.25 21.25 18.6904 21.25 18V9.75H2.75ZM4 4.75C3.30964 4.75 2.75 5.30964 2.75 6V8.25H21.25V6C21.25 5.30964 20.6904 4.75 20 4.75H4Z' fill='black'/%3E%3C/svg%3E");
}

.form-negative .hs-input::placeholder,
.form-negative form input::placeholder,
.form-negative form textarea::placeholder,
.form-negative .form-floating:has(> input:focus) > label,
.form-negative .form-floating:has(> input:not(:placeholder-shown)) > label,
.form-negative .form-floating:has(> textarea:focus) > label,
.form-negative .form-floating:has(> textarea:not(:placeholder-shown)) > label,
.form-negative .form-floating:has(> select:focus) > label,
.form-negative .form-floating:has(> .is-filled) > label,
.form-negative .hs-form-field.is-floating:has(.hs-input:focus) > label,
.form-negative .hs-form-field.is-floating:has(.hs-input:not(:placeholder-shown)) > label,
.form-negative .hs-form-field.is-floating:has(.hs-input.is-filled) > label {
  color: var(--color-violet-40);
}

.form-negative form input[type=checkbox]:checked {
  background-color: var(--color-white);
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 12.1582L10 16.1582L18 8.1582' stroke='%23660066' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.form-negative form input[type=radio]:checked::after {
  background-color: var(--color-white);
}

.form-negative form input[type=submit],
.form-negative form .hs-button,
.form-negative .button:not(.button--secondary) {
  background-color: var(--color-white);
  border-color: var(--color-white);
  color: var(--color-violet-100);
}

.form-negative form input[type=submit]:hover,
.form-negative form input[type=submit]:focus,
.form-negative form .hs-button:hover,
.form-negative form .hs-button:focus {
  background-color: var(--color-black-100);
  border-color: var(--color-black-100);
  color: var(--color-white);
}

.form-negative a {
  color: var(--color-white);
}

.form-negative a:hover,
.form-negative a:focus {
  color: var(--color-yellow-100);
}

.form-negative .hs-input:focus-visible,
.form-negative form input:focus-visible,
.form-negative form select:focus-visible,
.form-negative form textarea:focus-visible,
.form-negative form input[type=checkbox]:focus-visible,
.form-negative form input[type=radio]:focus-visible {
  box-shadow: 0 0 0 3px var(--color-violet-60);
}

/* Validation on SAK Violett: red only inside the pink field, light warning tint on the violet ground */

.form-negative .form-error,
.form-negative .hs-error-msg,
.form-negative .hs-form-required,
.form-negative form .is-error input[type=checkbox],
.form-negative form .is-error input[type=radio],
.form-negative .is-error .form-check,
.form-negative .hs-form-field.is-error .inputs-list label {
  border-color: var(--color-warning-20);
  color: var(--color-warning-20);
}

.form-negative .hs-form-field.is-error > label,
.form-negative .form-field.is-error > label {
  color: var(--color-warning-20);
}

.form-negative .form-floating.is-error > label,
.form-negative .hs-form-field.is-floating:has(.hs-input.invalid) > label,
.form-negative .hs-form-field.is-floating:has(.hs-input.error) > label,
.form-negative .hs-input.invalid,
.form-negative .hs-input.error,
.form-negative form .is-error > input,
.form-negative form .is-error > select,
.form-negative form .is-error > textarea {
  color: var(--color-warning-100);
}

.form-negative form .is-error > select {
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M2 8L12 18L22 8' stroke='%23d32f2f' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
}

.form-negative form .is-error > input:not([type=checkbox]):not([type=radio]),
.form-negative form .is-error > select,
.form-negative form .is-error > textarea,
.form-negative .is-error > .form-upload,
.form-negative .hs-input.invalid,
.form-negative .hs-input.error {
  background-color: var(--color-warning-20);
  border-color: var(--color-warning-100);
}

.form-negative .form-floating.is-error:has(> input:focus) > label,
.form-negative .form-floating.is-error:has(> input:not(:placeholder-shown)) > label,
.form-negative .form-floating.is-error:has(> textarea:focus) > label,
.form-negative .form-floating.is-error:has(> textarea:not(:placeholder-shown)) > label,
.form-negative .form-floating.is-error:has(> select:focus) > label,
.form-negative .form-floating.is-error:has(> .is-filled) > label,
.form-negative .hs-form-field.is-floating:has(.hs-input.invalid) > label,
.form-negative .hs-form-field.is-floating:has(.hs-input.error) > label {
  color: var(--color-warning-100);
}

.form-negative .is-error > .form-upload {
  color: var(--color-warning-100);
}

/* Form section: icon column and form column on SAK Violett */

.form-section {
  background-color: var(--color-violet-100);
  color: var(--color-white);
  padding: calc(var(--spacing) * 30) 0;
}

.form-section__title {
  color: var(--color-yellow-100);
  margin: 0 0 calc(var(--spacing) * 4);
}

.form-section__intro {
  margin: 0 0 calc(var(--spacing) * 10);
}

.form-block {
  padding: calc(var(--spacing) * 10) 0;
}

/* HubSpot forms (hsfc renderer): theme the embed through its custom properties */

.hs-form-html {
  --hsf-global__font-family: var(--font-body);
  --hsf-global__font-size: var(--text-body);
  --hsf-global__color: var(--color-black-100);
  --hsf-global__error-color: var(--color-warning-100);
  --hsf-background__padding: 0;
  --hsf-heading__font-family: var(--font-heading);
  --hsf-heading__color: var(--color-black-100);
  --hsf-field-label__color: var(--color-black-100);
  --hsf-field-label-requiredindicator__color: var(--color-warning-100);
  --hsf-field-description__color: var(--color-black-60);
  --hsf-field-description__font-size: var(--text-small);
  --hsf-field-footer__color: var(--color-black-60);
  --hsf-field-footer__font-size: var(--text-small);
  --hsf-field-input__background-color: transparent;
  --hsf-field-input__border-color: var(--color-black-100);
  --hsf-field-input__border-radius: var(--radius-pill);
  --hsf-field-input__border-style: solid;
  --hsf-field-input__border-width: 1px;
  --hsf-field-input__color: var(--color-black-100);
  --hsf-field-input__padding: 21px 31px 17px;
  --hsf-field-input__placeholder-color: var(--color-black-40);
  --hsf-field-dropdown-options__border-radius: var(--radius-card-lg);
  --hsf-field-textarea__border-radius: var(--radius-card-lg);
  --hsf-field-textarea__padding: 21px 31px 15px;
  --hsf-field-checkbox__background-color: transparent;
  --hsf-field-checkbox__border-color: var(--color-black-100);
  --hsf-field-checkbox__border-width: 1.5px;
  --hsf-field-checkbox__color: var(--color-black-100);
  --hsf-field-checkbox__padding: 10.5px;
  --hsf-field-radio__background-color: transparent;
  --hsf-field-radio__border-color: var(--color-black-100);
  --hsf-field-radio__border-width: 1.5px;
  --hsf-field-radio__color: var(--color-black-100);
  --hsf-field-radio__padding: 10.5px;
  --hsf-button__background-color: var(--color-violet-100);
  --hsf-button__border-color: var(--color-violet-100);
  --hsf-button__border-radius: var(--radius-pill);
  --hsf-button__border-style: solid;
  --hsf-button__border-width: 1.5px;
  --hsf-button__color: var(--color-white);
  --hsf-button__font-weight: 700;
  --hsf-button__padding: 16.5px 30.5px 12.5px;
  --hsf-button--hover__background-color: var(--color-black-100);
  --hsf-button--hover__border-color: var(--color-black-100);
  --hsf-button--hover__color: var(--color-white);
  --hsf-button--focus__background-color: var(--color-black-100);
  --hsf-button--focus__border-color: var(--color-black-100);
  --hsf-button--focus__color: var(--color-white);
  --hsf-row__horizontal-spacing: var(--spacing-gutter);
  --hsf-row__vertical-spacing: calc(var(--spacing) * 6);
  --hsf-module__vertical-spacing: calc(var(--spacing) * 4);
  --hsf-navigationrow-buttons-single__justify-content: flex-start;
  --hsf-progressbar-progressLine__background-color: var(--color-violet-100);
  --hsf-progressbar-trackLine__background-color: var(--color-black-20);
}

.hs-form-html:not(:has(form)),
.hs-form-frame:not(:has(form)) {
  min-height: 60vh;
}

.form-negative .hs-form-html {
  --hsf-global__color: var(--color-white);
  --hsf-heading__color: var(--color-white);
  --hsf-field-label__color: var(--color-white);
  --hsf-field-description__color: var(--color-violet-20);
  --hsf-field-footer__color: var(--color-violet-20);
  --hsf-field-input__border-color: var(--color-white);
  --hsf-field-input__color: var(--color-white);
  --hsf-field-input__placeholder-color: var(--color-violet-40);
  --hsf-field-checkbox__border-color: var(--color-white);
  --hsf-field-checkbox__color: var(--color-white);
  --hsf-field-radio__border-color: var(--color-white);
  --hsf-field-radio__color: var(--color-white);
  --hsf-button__background-color: var(--color-white);
  --hsf-button__border-color: var(--color-white);
  --hsf-button__color: var(--color-violet-100);
  --hsf-progressbar-trackLine__background-color: var(--color-violet-80);
  --hsf-progressbar-progressLine__background-color: var(--color-yellow-100);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-TextInput,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-TextareaInput {
  font-weight: 700;
  line-height: var(--text-body--line-height);
  outline: 0;
  transition: border-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), background-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), box-shadow 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-TextareaInput {
  min-height: 160px;
  resize: vertical;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-TextInput:focus,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-TextareaInput:focus {
  box-shadow: none;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-TextInput:focus-visible,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-TextareaInput:focus-visible,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-CheckboxInput:focus-visible,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-RadioInput:focus-visible {
  box-shadow: 0 0 0 3px var(--color-violet-20);
  outline: 0;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-TextInput::placeholder,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-TextareaInput::placeholder {
  font-weight: 400;
  opacity: 1;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-FieldLabel,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-RichText,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-RichText p,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-ErrorAlert,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-InfoAlert {
  line-height: var(--text-body--line-height);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-RichText p {
  margin: 0 0 calc(var(--spacing) * 4);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-RichText p:last-child {
  margin-bottom: 0;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-Button {
  cursor: pointer;
  line-height: 1.4;
  transition: background-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), border-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-Button[disabled] {
  cursor: default;
  opacity: 0.35;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-Button[aria-busy="true"],
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-Button--loading {
  color: transparent !important;
  cursor: progress;
  pointer-events: none;
  position: relative;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-Button[aria-busy="true"]::after,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-Button--loading::after {
  animation: sak-spin 0.75s linear infinite;
  background-color: var(--hsf-button__color);
  content: "";
  height: 1em;
  left: calc(50% - 0.5em);
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='9.5' stroke='black' stroke-width='2' opacity='.25'/%3E%3Cpath d='M21.5 12A9.5 9.5 0 0 0 12 2.5' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='12' r='9.5' stroke='black' stroke-width='2' opacity='.25'/%3E%3Cpath d='M21.5 12A9.5 9.5 0 0 0 12 2.5' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") center / contain no-repeat;
  position: absolute;
  top: calc(50% - 0.5em);
  width: 1em;
}

@keyframes sak-spin {
  to {
    transform: rotate(360deg);
  }
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-NavigationRow {
  margin-top: calc(var(--spacing) * 10);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-ErrorAlert {
  align-items: flex-start;
  display: flex;
  gap: calc(var(--spacing) * 2);
  margin-top: calc(var(--spacing) * 2);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-ErrorAlert::before {
  background-color: currentColor;
  content: "";
  flex: none;
  height: calc(var(--spacing) * 6);
  margin-top: 2px;
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M12 1.25C17.9371 1.25 22.75 6.06294 22.75 12C22.75 17.9371 17.9371 22.75 12 22.75C6.06294 22.75 1.25 17.9371 1.25 12C1.25 6.06294 6.06294 1.25 12 1.25ZM12 2.75C6.89137 2.75 2.75 6.89137 2.75 12C2.75 17.1086 6.89137 21.25 12 21.25C17.1086 21.25 21.25 17.1086 21.25 12C21.25 6.89137 17.1086 2.75 12 2.75ZM12 15.5C12.6904 15.5 13.25 16.0596 13.25 16.75C13.25 17.4404 12.6904 18 12 18C11.3096 18 10.75 17.4404 10.75 16.75C10.75 16.0596 11.3096 15.5 12 15.5ZM12 6C12.5523 6 13 6.44772 13 7V13C13 13.5523 12.5523 14 12 14C11.4477 14 11 13.5523 11 13V7C11 6.44772 11.4477 6 12 6Z' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M12 1.25C17.9371 1.25 22.75 6.06294 22.75 12C22.75 17.9371 17.9371 22.75 12 22.75C6.06294 22.75 1.25 17.9371 1.25 12C1.25 6.06294 6.06294 1.25 12 1.25ZM12 2.75C6.89137 2.75 2.75 6.89137 2.75 12C2.75 17.1086 6.89137 21.25 12 21.25C17.1086 21.25 21.25 17.1086 21.25 12C21.25 6.89137 17.1086 2.75 12 2.75ZM12 15.5C12.6904 15.5 13.25 16.0596 13.25 16.75C13.25 17.4404 12.6904 18 12 18C11.3096 18 10.75 17.4404 10.75 16.75C10.75 16.0596 11.3096 15.5 12 15.5ZM12 6C12.5523 6 13 6.44772 13 7V13C13 13.5523 12.5523 14 12 14C11.4477 14 11 13.5523 11 13V7C11 6.44772 11.4477 6 12 6Z' fill='black'/%3E%3C/svg%3E") center / contain no-repeat;
  width: calc(var(--spacing) * 6);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-TextInput[aria-invalid="true"],
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-TextareaInput[aria-invalid="true"] {
  background-color: var(--color-warning-20);
  border-color: var(--color-warning-100);
  color: var(--color-warning-100);
}

.form-negative .hs-form-html [data-hsfc-id="Renderer"] .hsfc-ErrorAlert {
  color: var(--color-yellow-100);
}

.form-negative .hs-form-html [data-hsfc-id="Renderer"] .hsfc-TextInput[aria-invalid="true"],
.form-negative .hs-form-html [data-hsfc-id="Renderer"] .hsfc-TextareaInput[aria-invalid="true"] {
  background-color: transparent;
  border-color: var(--color-yellow-100);
  color: var(--color-white);
}

.form-negative .hs-form-html [data-hsfc-id="Renderer"] .hsfc-Button:not([disabled]):hover,
.form-negative .hs-form-html [data-hsfc-id="Renderer"] .hsfc-Button:not([disabled]):focus {
  background-color: var(--color-black-100);
  border-color: var(--color-black-100);
  color: var(--color-white);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-Heading {
  font-size: var(--text-h4);
  line-height: var(--text-h4--line-height);
  margin: calc(var(--spacing) * 4) 0 0;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-Row:first-child .hsfc-Heading {
  margin-top: 0;
}

.hs-form-html [data-hsfc-id="Renderer"] [class$="Field"],
.hs-form-html [data-hsfc-id="Renderer"] [class$="FieldGroup"] {
  display: flex;
  flex-direction: column;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-FieldDescription {
  line-height: var(--text-small--line-height);
  margin: calc(var(--spacing) * 2) 0 0;
  order: 10;
}

.hs-form-html [data-hsfc-id="Renderer"] [class$="Field"] > :not(.hsfc-FieldLabel):not(.hsfc-FieldDescription),
.hs-form-html [data-hsfc-id="Renderer"] [class$="FieldGroup"] > :not(.hsfc-FieldLabel):not(.hsfc-FieldDescription) {
  margin-bottom: 0;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-ErrorAlert,
.hs-form-html [data-hsfc-id="Renderer"] .sak-date-error {
  order: 11;
}

.hs-form-html [data-hsfc-id="Renderer"] .sak-date-error {
  margin-top: calc(var(--spacing) * 2);
}

.sak-date-error[hidden] {
  display: none;
}

.form-negative .sak-date-error {
  color: var(--color-yellow-100);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-CheckboxInput,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-RadioInput {
  cursor: pointer;
  flex: none;
  transition: background-color 0.2s ease-out, border-color 0.2s ease-out;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-CheckboxInput {
  border-radius: var(--spacing);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-CheckboxInput:checked {
  background-color: var(--color-black-100);
  border-color: var(--color-black-100);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-CheckboxInput:checked::after {
  background-color: var(--color-white);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-RadioInput:checked {
  background-color: transparent;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-RadioInput:checked::after {
  background-color: var(--color-black-100);
  border-radius: 50%;
  inset: 4px;
  -webkit-mask: none;
  mask: none;
  transform: none;
}

.form-negative .hs-form-html [data-hsfc-id="Renderer"] .hsfc-CheckboxInput:checked {
  background-color: var(--color-white);
  border-color: var(--color-white);
}

.form-negative .hs-form-html [data-hsfc-id="Renderer"] .hsfc-CheckboxInput:checked::after {
  background-color: var(--color-violet-100);
}

.form-negative .hs-form-html [data-hsfc-id="Renderer"] .hsfc-RadioInput:checked::after {
  background-color: var(--color-white);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-CheckboxField label,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-CheckboxFieldGroup__Options label,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-RadioFieldGroup__Options label {
  align-items: flex-start;
  cursor: pointer;
  justify-content: flex-start;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-CheckboxField label > input,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-CheckboxFieldGroup__Options label > input,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-RadioFieldGroup__Options label > input {
  margin-top: 2px;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-CheckboxFieldGroup__Options > *:not(:last-child),
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-RadioFieldGroup__Options > *:not(:last-child) {
  margin-bottom: calc(var(--spacing) * 3);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-DropdownInput__Caret {
  padding: 0 31px 0 20px;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-DropdownInput__Caret > span,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-PhoneInput__FlagAndCaret__Caret {
  background-color: currentColor;
  border: 0;
  color: var(--color-black-100);
  height: calc(var(--spacing) * 6);
  -webkit-mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M2 8L12 18L22 8' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M2 8L12 18L22 8' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
  width: calc(var(--spacing) * 6);
}

.form-negative .hs-form-html [data-hsfc-id="Renderer"] .hsfc-DropdownInput__Caret > span,
.form-negative .hs-form-html [data-hsfc-id="Renderer"] .hsfc-PhoneInput__FlagAndCaret__Caret {
  color: var(--color-white);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-TextInput--button {
  cursor: pointer;
  padding-right: 71px;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-DropdownOptions {
  background-color: var(--color-white);
  border: 1px solid var(--color-black-100);
  border-radius: var(--radius-card-lg);
  box-shadow: 0 16px 48px 0 color-mix(in srgb, var(--color-black-100) 15%, transparent);
  color: var(--color-black-100);
  margin-top: calc(var(--spacing) * 2);
  max-height: 336px;
  padding: calc(var(--spacing) * 2) 0;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-DropdownOptions__List__ListItem {
  background-color: transparent;
  color: var(--color-black-100);
  font-weight: 400;
  padding: calc(var(--spacing) * 3) 31px;
  transition: background-color 0.2s ease-out;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-DropdownOptions__List__ListItem:hover,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-DropdownOptions__List__ListItem:focus-visible {
  background-color: var(--color-violet-20);
  filter: none;
  outline: 0;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-DropdownOptions__List__ListItem--selected {
  background-color: var(--color-violet-20);
  filter: none;
  font-weight: 700;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-DropdownOptions__Search {
  padding: calc(var(--spacing) * 2) calc(var(--spacing) * 4);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-DropdownOptions__Search .hsfc-TextInput {
  border-color: var(--color-black-100);
  color: var(--color-black-100);
  padding: 13px 23px 9px;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-PhoneInput {
  border-radius: var(--radius-pill);
  position: relative;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-PhoneInput:has(.hsfc-TextInput:focus-visible) {
  box-shadow: 0 0 0 3px var(--color-violet-20);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-PhoneInput > .hsfc-TextInput:focus-visible {
  box-shadow: none;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-PhoneInput:has(.hsfc-TextInput[aria-invalid="true"]) .hsfc-PhoneInput__FlagAndCaret {
  border-color: var(--color-warning-100);
}

.form-negative .hs-form-html [data-hsfc-id="Renderer"] .hsfc-PhoneInput:has(.hsfc-TextInput[aria-invalid="true"]) .hsfc-PhoneInput__FlagAndCaret {
  border-color: var(--color-yellow-100);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-PhoneInput__FlagAndCaret {
  align-self: stretch;
  border-radius: var(--radius-pill) 0 0 var(--radius-pill);
  box-sizing: border-box;
  column-gap: 8px;
  flex: none;
  padding: 0 20px 0 24px;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-PhoneInput__FlagAndCaret > * {
  display: block;
  flex: none;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-PhoneInput__FlagAndCaret__Caret {
  height: calc(var(--spacing) * 6);
  width: calc(var(--spacing) * 6);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-PhoneInput__FlagAndCaret__Flag {
  align-items: center;
  box-sizing: border-box;
  display: flex;
  font-size: 28px;
  height: calc(var(--spacing) * 8);
  justify-content: center;
  line-height: 1;
  padding-top: 4px;
  width: calc(var(--spacing) * 8);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-PhoneInput__FlagAndCaret__Flag[data-sak-flag] {
  display: none;
}

.hs-form-html [data-hsfc-id="Renderer"] .sak-flag {
  border-radius: 2px;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.08);
  display: block;
  flex: none;
  height: calc(var(--spacing) * 6);
  object-fit: cover;
  width: calc(var(--spacing) * 8);
}

.hs-form-html [data-hsfc-id="Renderer"] .sak-flag--square {
  width: calc(var(--spacing) * 6);
}

.hs-form-html [data-hsfc-id="Renderer"] .sak-flag[hidden] {
  display: none;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-PhoneInput:not(.hsfc-PhoneInput--rtl) > .hsfc-TextInput {
  padding-left: 20px;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-FileInput {
  cursor: pointer;
  display: block;
  font-family: inherit;
  width: 100%;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-FileField {
  position: relative;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-FileInput[data-sak-upload] {
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  opacity: 0;
  overflow: hidden;
  padding: 0;
  pointer-events: none;
  position: absolute;
  width: 1px;
}

.hs-form-html [data-hsfc-id="Renderer"] .sak-upload {
  font-size: var(--text-body);
  line-height: var(--text-body--line-height);
  max-width: 337px;
}

.hs-form-html [data-hsfc-id="Renderer"] .sak-upload:focus-visible {
  box-shadow: 0 0 0 3px var(--color-violet-20);
  outline: 0;
}

.hs-form-html [data-hsfc-id="Renderer"] .sak-upload.is-error {
  background-color: var(--color-warning-20);
  border-color: var(--color-warning-100);
  color: var(--color-warning-100);
}

.hs-form-html [data-hsfc-id="Renderer"] .form-files {
  font-size: var(--text-body);
  line-height: var(--text-body--line-height);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-InfoAlert {
  color: var(--color-black-60);
  font-size: var(--text-small);
  margin-top: calc(var(--spacing) * 2);
}

.form-negative .hs-form-html [data-hsfc-id="Renderer"] .hsfc-InfoAlert {
  color: var(--color-violet-20);
}

.form-negative .form-files li::before,
.form-negative .form-files button {
  background-color: var(--color-white);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-FileInput::file-selector-button {
  background-color: transparent;
  border: 1.5px solid var(--color-violet-100);
  border-radius: var(--radius-pill);
  color: var(--color-violet-100);
  cursor: pointer;
  font-family: inherit;
  font-size: var(--text-body);
  font-weight: 700;
  line-height: 1.4;
  margin: 0 calc(var(--spacing) * 4) 0 0;
  padding: 12.5px 30.5px 8.5px;
  transition: background-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), border-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-FileInput:hover::file-selector-button,
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-FileInput:focus-visible::file-selector-button {
  background-color: var(--color-black-100);
  border-color: var(--color-black-100);
  color: var(--color-white);
}

.form-negative .hs-form-html [data-hsfc-id="Renderer"] .hsfc-FileInput::file-selector-button {
  border-color: var(--color-white);
  color: var(--color-white);
}

.form-negative .hs-form-html [data-hsfc-id="Renderer"] .hsfc-FileInput:hover::file-selector-button,
.form-negative .hs-form-html [data-hsfc-id="Renderer"] .hsfc-FileInput:focus-visible::file-selector-button {
  background-color: var(--color-white);
  border-color: var(--color-white);
  color: var(--color-violet-100);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-DateInput--placeholder {
  color: var(--color-black-40);
}

.form-negative .hs-form-html [data-hsfc-id="Renderer"] .hsfc-DateInput--placeholder {
  color: var(--color-violet-40);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-DateField {
  position: relative;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-DateField[data-sak-range-end] {
  display: none;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-DateInput[data-sak-date],
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-PhoneInput > input[data-sak-tel] {
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  opacity: 0;
  overflow: hidden;
  padding: 0;
  pointer-events: none;
  position: absolute;
  width: 1px;
}

.hs-form-html [data-hsfc-id="Renderer"] .sak-date {
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M17 0.25C17.4142 0.25 17.75 0.585786 17.75 1V3.25H20C21.5188 3.25 22.75 4.48122 22.75 6V18C22.75 19.5188 21.5188 20.75 20 20.75H4C2.48122 20.75 1.25 19.5188 1.25 18V6C1.25 4.48122 2.48122 3.25 4 3.25H6.25V1C6.25 0.585786 6.58579 0.25 7 0.25C7.41421 0.25 7.75 0.585786 7.75 1V3.25H16.25V1C16.25 0.585786 16.5858 0.25 17 0.25ZM2.75 9.75V18C2.75 18.6904 3.30964 19.25 4 19.25H20C20.6904 19.25 21.25 18.6904 21.25 18V9.75H2.75ZM4 4.75C3.30964 4.75 2.75 5.30964 2.75 6V8.25H21.25V6C21.25 5.30964 20.6904 4.75 20 4.75H4Z' fill='black'/%3E%3C/svg%3E");
  background-position: right 31px center;
  background-repeat: no-repeat;
  background-size: calc(var(--spacing) * 6);
  cursor: pointer;
  padding-right: 71px;
}

.form-negative .hs-form-html [data-hsfc-id="Renderer"] .sak-date {
  background-image: url("data:image/svg+xml;utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M17 0.25C17.4142 0.25 17.75 0.585786 17.75 1V3.25H20C21.5188 3.25 22.75 4.48122 22.75 6V18C22.75 19.5188 21.5188 20.75 20 20.75H4C2.48122 20.75 1.25 19.5188 1.25 18V6C1.25 4.48122 2.48122 3.25 4 3.25H6.25V1C6.25 0.585786 6.58579 0.25 7 0.25C7.41421 0.25 7.75 0.585786 7.75 1V3.25H16.25V1C16.25 0.585786 16.5858 0.25 17 0.25ZM2.75 9.75V18C2.75 18.6904 3.30964 19.25 4 19.25H20C20.6904 19.25 21.25 18.6904 21.25 18V9.75H2.75ZM4 4.75C3.30964 4.75 2.75 5.30964 2.75 6V8.25H21.25V6C21.25 5.30964 20.6904 4.75 20 4.75H4Z' fill='white'/%3E%3C/svg%3E");
}

.hs-form-html [data-hsfc-id="Renderer"] .sak-time {
  padding-right: 71px;
}

.hs-form-html [data-hsfc-id="Renderer"] .sak-date--native,
.hs-form-html [data-hsfc-id="Renderer"] .sak-time--native {
  appearance: none;
  min-height: 60px;
}

.hs-form-html [data-hsfc-id="Renderer"] .sak-date--native::-webkit-date-and-time-value,
.hs-form-html [data-hsfc-id="Renderer"] .sak-time--native::-webkit-date-and-time-value {
  min-height: 1.4em;
  text-align: left;
}

.hs-form-html [data-hsfc-id="Renderer"] .sak-date--native::-webkit-calendar-picker-indicator,
.hs-form-html [data-hsfc-id="Renderer"] .sak-time--native::-webkit-calendar-picker-indicator {
  cursor: pointer;
  height: 100%;
  inset: 0;
  opacity: 0;
  position: absolute;
  width: 100%;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-DropdownInput:has(.sak-native-select),
.hs-form-html [data-hsfc-id="Renderer"] .hsfc-PhoneInput__FlagAndCaret:has(.sak-country) {
  position: relative;
}

.hs-form-html [data-hsfc-id="Renderer"] .sak-native-select,
.hs-form-html [data-hsfc-id="Renderer"] .sak-country {
  appearance: none;
  border: 0;
  cursor: pointer;
  font-size: 16px;
  height: 100%;
  inset: 0;
  margin: 0;
  opacity: 0;
  position: absolute;
  width: 100%;
  z-index: 2;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-ReCaptchaV2 {
  margin-top: calc(var(--spacing) * 2);
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-ReCaptchaV2:not(:has(.grecaptcha-badge, .hsfc-ReCaptchaV3__Badge)) {
  display: none;
}

.hs-form-html [data-hsfc-id="Renderer"] .hsfc-DataPrivacyField > *:not(:last-child) {
  margin-bottom: calc(var(--spacing) * 4);
}

@media (max-width: 767px) {
  .hs-form-html [data-hsfc-id="Renderer"] .hsfc-Row {
    grid-template-columns: minmax(0, 1fr);
  }

  .hs-form-html [data-hsfc-id="Renderer"] .hsfc-Heading {
    font-size: var(--text-h4-mobile);
  }
}

.form-section__icon {
  display: block;
  height: 336px;
  width: 336px;
}

/* Captcha */

.grecaptcha-badge {
  margin: 0 auto;
}



.form-section .hs_cos_wrapper.form-title:empty {
  display: none;
}

form input[type='search'],
.site-search__input[type='search'] {
  outline-offset: 2px;
}
table {
  border-collapse: collapse;
  margin-bottom: 1.4rem;
  overflow-wrap: break-word;
}

td,
th {
  vertical-align: middle;
}

thead th {
  vertical-align: middle;
}

.table-scroll {
  overflow-x: auto;
  width: 100%;
}

.table-scroll table {
  min-width: 640px;
}

.table-icon {
  color: var(--color-violet-100);
  height: calc(var(--spacing) * 6);
  vertical-align: middle;
  width: calc(var(--spacing) * 6);
}

.table-service {
  align-items: center;
  display: inline-flex;
  gap: calc(var(--spacing) * 4);
}

.table-service img {
  height: calc(var(--spacing) * 14);
  width: calc(var(--spacing) * 14);
}

@media (max-width: 767px) {
  table:not([class]) {
    display: block;
    overflow-x: auto;
  }
}

.table-caption {
  caption-side: top;
  color: var(--color-black-60);
  font-size: var(--text-small);
  line-height: var(--line-height-body);
  margin-bottom: var(--space-2);
  text-align: left;
}

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

.skip-link {
  background-color: var(--color-violet-100);
  border-radius: var(--radius-pill);
  clip: rect(0 0 0 0);
  color: var(--color-white);
  font-weight: 700;
  height: 1px;
  left: calc(var(--spacing) * 4);
  overflow: hidden;
  padding: calc(var(--spacing) * 3) calc(var(--spacing) * 6);
  position: fixed;
  top: calc(var(--spacing) * 4);
  white-space: nowrap;
  width: 1px;
  z-index: 100;
}

.skip-link:focus {
  clip: auto;
  color: var(--color-white);
  height: auto;
  outline: 2px solid var(--color-yellow-100);
  outline-offset: 2px;
  overflow: visible;
  width: auto;
}

.sr-only {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

[data-global-resource-path$="partials/header.html"],
[data-global-resource-path$="partials/header-no-navigation.html"],
#hs_cos_wrapper_site_header,
#hs_cos_wrapper_site_header_plain {
  display: contents;
}

.site-header {
  --header-shadow: 0 0 30px rgba(0, 0, 0, 0.05);
  --header-meta: 45px;
  --header-pad: calc(var(--spacing) * 4);
  --header-logo: 61px;
  --header-logo-compact: 48px;
  --header-inset: calc(var(--spacing) * 10);
  --header-height: calc(var(--header-meta) + var(--header-logo) + var(--header-pad) * 2);
  --header-height-compact: calc(var(--header-logo-compact) + var(--header-pad) * 2);
  background-color: var(--color-white);
  position: sticky;
  top: 0;
  transition: margin-bottom 0.3s cubic-bezier(0.3, 0, 0.3, 1), transform 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  z-index: 60;
}

.site-header--static {
  position: relative;
  z-index: 1;
}

.emergency-banner {
  background-color: var(--color-warning-100);
  color: var(--color-dark-grey-20);
}

.emergency-banner__inner {
  align-items: center;
  display: flex;
  gap: calc(var(--spacing) * 6);
  min-height: 120px;
  padding: calc(var(--spacing) * 4) calc(var(--spacing) * 10);
}

.emergency-banner__icon {
  flex: none;
  height: calc(var(--spacing) * 12);
  width: calc(var(--spacing) * 12);
}

.emergency-banner__text {
  flex: 1;
  font-size: var(--text-body);
  font-weight: 700;
  margin: 0;
}

.emergency-banner__text a {
  color: inherit;
  text-decoration: underline;
}

.emergency-banner__close,
.emergency-banner__close:hover,
.emergency-banner__close:focus {
  align-items: center;
  background: none;
  border: 1px solid var(--color-white);
  border-radius: var(--radius-pill);
  color: var(--color-white);
  cursor: pointer;
  display: inline-flex;
  flex: none;
  height: calc(var(--spacing) * 12);
  justify-content: center;
  margin: 0;
  padding: 0;
  transition: background-color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  width: calc(var(--spacing) * 12);
}

.emergency-banner__close:hover,
.emergency-banner__close:focus-visible {
  background-color: color-mix(in srgb, var(--color-white) 15%, transparent);
}

.emergency-banner__close .icon {
  height: calc(var(--spacing) * 6);
  width: calc(var(--spacing) * 6);
}

.site-header__meta {
  background-color: var(--color-violet-100);
  height: var(--header-meta);
  overflow: hidden;
  transition: height 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.site-header__meta-list {
  display: flex;
  height: 45px;
  justify-content: flex-end;
  list-style: none;
  margin: 0 auto;
  max-width: var(--container-page);
  padding: 0 var(--header-inset) 0 0;
}

.site-header__meta-item {
  position: relative;
}

.site-header__meta-item a {
  color: var(--color-white);
  display: block;
  font-size: var(--text-body);
  font-weight: 400;
  line-height: 1.4;
  padding: 12px calc(var(--spacing) * 4) 5px;
  text-decoration: none;
  transition: color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.site-header__meta-item a:hover,
.site-header__meta-item a:focus-visible {
  color: var(--color-yellow-100);
}

.site-header__meta-item a:focus-visible {
  border-radius: var(--radius-focus);
  outline: 2px solid var(--color-yellow-100);
  outline-offset: -4px;
}

.site-header__meta-item.is-active a {
  background-color: var(--color-white);
  color: var(--color-violet-100);
}

.site-header__meta-item.is-active a:focus-visible {
  outline-color: var(--color-violet-100);
}

.site-header__meta-item.is-active::before,
.site-header__meta-item.is-active::after {
  background: radial-gradient(circle at 0 0, transparent 16px, var(--color-white) 16.5px);
  bottom: 0;
  content: '';
  height: calc(var(--spacing) * 4);
  position: absolute;
  width: calc(var(--spacing) * 4);
}

.site-header__meta-item.is-active::before {
  background: radial-gradient(circle at 0 0, transparent 16px, var(--color-white) 16.5px);
  left: calc(var(--spacing) * -4);
}

.site-header__meta-item.is-active::after {
  background: radial-gradient(circle at 100% 0, transparent 16px, var(--color-white) 16.5px);
  right: calc(var(--spacing) * -4);
}

.site-header__bar {
  align-items: flex-end;
  display: flex;
  gap: clamp(calc(var(--spacing) * 6), 4.6vw, calc(var(--spacing) * 20));
  margin-inline: auto;
  max-width: var(--container-page);
  min-height: 0;
  padding: var(--header-pad) var(--header-inset);
  transition: min-height 0.3s cubic-bezier(0.3, 0, 0.3, 1), padding 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.site-header__logo {
  align-self: flex-start;
  color: var(--color-violet-100);
  display: block;
  flex: none;
}

.site-header__logo:focus-visible {
  border-radius: var(--radius-focus);
  outline: 2px solid var(--color-violet-100);
  outline-offset: 4px;
}

.site-header__logo-svg {
  display: block;
  height: var(--header-logo);
  transition: height 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  width: auto;
}

.site-header__nav {
  align-self: flex-end;
  flex: 1;
}

.site-header__nav-list {
  display: flex;
  gap: clamp(calc(var(--spacing) * 4), 1.85vw, calc(var(--spacing) * 8));
  list-style: none;
  margin: 0;
  padding: 0;
}

.site-header__nav-link,
.site-header__nav-link:hover,
.site-header__nav-link:focus {
  background: none;
  border: 0;
  border-bottom: 2px solid transparent;
  border-radius: 0;
  color: var(--color-black-100);
  cursor: pointer;
  display: block;
  font-family: var(--font-body);
  font-size: var(--text-body);
  font-weight: 700;
  line-height: 1.4;
  margin: 0;
  padding: 6px 0 8px;
  text-decoration: none;
  transition: color 0.3s cubic-bezier(0.3, 0, 0.3, 1), border-color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.site-header__nav-link:hover,
.site-header__nav-link:focus-visible,
.site-header__nav-link[aria-expanded='true'],
.site-header__nav-item.is-active .site-header__nav-link {
  border-bottom-color: var(--color-violet-100);
  color: var(--color-violet-100);
}

.site-header__nav-link:focus-visible {
  border-radius: var(--radius-focus);
  outline: 2px solid var(--color-violet-100);
  outline-offset: 4px;
}

.site-header__service,
.mobile-bar__service {
  display: flex;
  flex: none;
  gap: var(--spacing);
}

.site-header__service-button,
.site-header__service-button:hover,
.site-header__service-button:focus,
.mobile-bar__menu,
.mobile-bar__menu:hover,
.mobile-bar__menu:focus {
  align-items: center;
  background-color: transparent;
  border: 0;
  border-radius: var(--radius-pill);
  box-shadow: inset 0 0 0 2px transparent;
  color: var(--color-black-100);
  cursor: pointer;
  display: inline-flex;
  height: calc(var(--spacing) * 12);
  justify-content: center;
  margin: 0;
  padding: 0;
  position: relative;
  transition: background-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), box-shadow 0.3s cubic-bezier(0.3, 0, 0.3, 1), color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  width: calc(var(--spacing) * 12);
}

.site-header__service-button:hover,
.site-header__service-button:focus-visible {
  background-color: var(--color-violet-20);
  box-shadow: inset 0 0 0 2px var(--color-violet-100);
  color: var(--color-violet-100);
}

.site-header__service-button:focus-visible,
.mobile-bar__menu:focus-visible {
  outline: 2px solid var(--color-violet-100);
  outline-offset: 2px;
}

.site-header__service-button[aria-expanded='true'],
.site-header__service-button[aria-expanded='true']:hover,
.mobile-bar__menu[aria-expanded='true'],
.mobile-bar__menu[aria-expanded='true']:hover {
  background-color: var(--color-violet-100);
  box-shadow: inset 0 0 0 2px var(--color-violet-100);
  color: var(--color-white);
}

.site-header__service-icon {
  display: inline-flex;
}

.site-header__service-icon .icon {
  display: block;
  height: calc(var(--spacing) * 6);
  width: calc(var(--spacing) * 6);
}

.site-header__service-icon--close,
[aria-expanded='true'] > .site-header__service-icon--default {
  display: none;
}

[aria-expanded='true'] > .site-header__service-icon--close {
  display: inline-flex;
}

.site-header__panels {
  position: relative;
}

.mega,
.site-header__flyout--search {
  background-color: var(--color-white);
  border-radius: 0 0 var(--radius-card-lg) var(--radius-card-lg);
  box-shadow: var(--header-shadow);
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 5;
}

.site-header__nav .mega {
  top: 100%;
}

.mega__inner {
  display: grid;
  gap: calc(var(--spacing) * 6);
  grid-template-columns: repeat(12, minmax(0, 1fr));
  margin: 0 auto;
  max-width: var(--container-content);
  padding: 120px var(--spacing-gutter);
}

.mega__teaser {
  grid-column: 1 / span 4;
}

.mega__title {
  color: var(--color-violet-100);
  font-family: var(--font-heading);
  font-size: var(--text-h3);
  font-weight: 400;
  line-height: 1.1;
  margin: 0 0 calc(var(--spacing) * 4);
}

.mega__text {
  margin: 0 0 calc(var(--spacing) * 10);
}

.mega__list {
  align-self: start;
  grid-column: span 3;
  list-style: none;
  margin: 57px 0 0;
  padding: 0;
}

.mega__list--2 {
  grid-column: 6 / span 3;
  position: relative;
}

.mega__list--3 {
  left: calc((100% + var(--spacing) * 6) * 4 / 3);
  margin: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.mega__item + .mega__item {
  margin-top: calc(var(--spacing) * 4);
}

.mega__link {
  align-items: center;
  border-bottom: 1px solid var(--color-black-20);
  color: var(--color-black-100);
  display: flex;
  font-weight: 700;
  gap: calc(var(--spacing) * 2);
  justify-content: space-between;
  padding: 0 calc(var(--spacing) * 2) calc(var(--spacing) * 4) 0;
  text-decoration: none;
  transition: color 0.3s cubic-bezier(0.3, 0, 0.3, 1), border-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), padding 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.mega__link .icon {
  flex: none;
  height: calc(var(--spacing) * 6);
  width: calc(var(--spacing) * 6);
}

.mega__link:hover,
.mega__link:focus-visible,
.mega__item.is-active > .mega__link,
.mega__item.is-open > .mega__link {
  border-bottom-color: var(--color-violet-100);
  color: var(--color-violet-100);
  padding-left: calc(var(--spacing) * 2);
  padding-right: 0;
}

.mega__link:focus-visible {
  outline: none;
}

.mega__link:focus-visible > span {
  border-radius: var(--radius-focus);
  outline: 2px solid var(--color-violet-100);
  outline-offset: 4px;
}

.site-search {
  margin: 0 auto;
  max-width: calc(var(--container-content) + 2 * var(--spacing-gutter));
  padding: 120px var(--spacing-gutter);
}

.site-header__flyout--search.has-suggestions .site-search {
  padding-bottom: calc(var(--spacing) * 20);
}

.site-search__field {
  align-items: center;
  border: 1px solid var(--color-black-100);
  border-radius: var(--radius-pill);
  display: flex;
  gap: calc(var(--spacing) * 4);
  padding: 0 calc(var(--spacing) * 8);
}

.site-search__field:focus-within {
  outline: 2px solid var(--color-violet-100);
  outline-offset: 2px;
}

.site-search__icon {
  flex: none;
  height: calc(var(--spacing) * 6);
  width: calc(var(--spacing) * 6);
}

.site-search__input[type='search'],
.site-search__input[type='search']:focus {
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: var(--color-black-100);
  flex: 1;
  font-size: var(--text-body);
  height: 66px;
  line-height: 1.4;
  margin: 0;
  min-width: 0;
  outline: none;
  padding: 20px 0 16px;
  width: auto;
}

.site-search__input::placeholder {
  color: var(--color-black-100);
  opacity: 0.35;
}

.site-search__input::-webkit-search-cancel-button {
  display: none;
}

.site-search__clear,
.site-search__clear:hover,
.site-search__clear:focus {
  align-items: center;
  background: none;
  border: 0;
  border-radius: var(--radius-pill);
  color: var(--color-black-100);
  cursor: pointer;
  display: inline-flex;
  flex: none;
  height: calc(var(--spacing) * 6);
  justify-content: center;
  margin: 0;
  padding: 0;
  width: calc(var(--spacing) * 6);
}

.site-search__clear[hidden] {
  display: none;
}

.site-search__clear .icon {
  height: calc(var(--spacing) * 6);
  width: calc(var(--spacing) * 6);
}

.site-search__list {
  list-style: none;
  margin: calc(var(--spacing) * 10) 0 0;
  padding: 0 0 0 72px;
}

.site-search__list li + li {
  margin-top: calc(var(--spacing) * 4);
}

.site-search__option {
  border-radius: var(--spacing);
  color: var(--color-black-100);
  cursor: pointer;
  display: block;
  text-decoration: none;
}

.site-search__option mark {
  background: none;
  color: var(--color-violet-100);
  font-weight: 700;
}

.site-search__option:hover,
.site-search__option[aria-selected='true'] {
  color: var(--color-violet-100);
  outline: 2px solid var(--color-violet-100);
  outline-offset: 4px;
}

.site-header__flyout--card {
  background-color: var(--color-white);
  border-radius: var(--radius-card-lg);
  box-shadow: var(--header-shadow);
  padding: calc(var(--spacing) * 7) calc(var(--spacing) * 10) calc(var(--spacing) * 10);
  position: absolute;
  right: max(
    calc(var(--spacing) * 10),
    calc((100% - var(--container-page)) / 2 + var(--spacing) * 10)
  );
  top: calc(var(--spacing) * 6);
  width: 360px;
  z-index: 5;
}

.site-header__flyout-title {
  color: var(--color-violet-100);
  font-family: var(--font-heading);
  font-size: var(--text-h3);
  font-weight: 400;
  line-height: 1.1;
  margin: 0 0 calc(var(--spacing) * 6);
}

.site-header__flyout-text {
  margin: 0 0 calc(var(--spacing) * 6);
}

.site-header__flyout-more {
  display: inline-block;
  margin-top: calc(var(--spacing) * 10);
}

.site-header__flyout--card .button + .site-header__flyout-more {
  display: block;
  margin-top: calc(var(--spacing) * 10);
}

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

.flyout-list li + li {
  margin-top: calc(var(--spacing) * 4);
}

.flyout-list--tight li + li {
  margin-top: calc(var(--spacing) * 2);
}

.flyout-list__link {
  align-items: center;
  border-bottom: 1px solid var(--color-black-20);
  color: var(--color-violet-100);
  display: flex;
  font-weight: 700;
  gap: calc(var(--spacing) * 6);
  padding-bottom: calc(var(--spacing) * 4);
  text-decoration: none;
  transition: color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.flyout-list--tight .flyout-list__link {
  padding-bottom: calc(var(--spacing) * 2);
}

.flyout-list li:last-child .flyout-list__link {
  border-bottom-color: transparent;
}

.flyout-list__link:hover,
.flyout-list__link:focus-visible {
  color: var(--color-black-100);
}

.flyout-list__logo {
  border-radius: var(--radius-tile);
  flex: none;
  height: calc(var(--spacing) * 14);
  width: calc(var(--spacing) * 14);
}

.mobile-bar,
.mobile-menu {
  display: none;
}

.site-header--compact .site-header__meta {
  height: 0;
}

.site-header--compact .site-header__meta:focus-within {
  height: var(--header-meta);
}

.site-header--compact .site-header__bar {
  padding-bottom: var(--header-pad);
  padding-top: var(--header-pad);
}

.site-header--compact .site-header__logo-svg {
  height: var(--header-logo-compact);
}

.site-header--compact .site-header__bar {
  align-items: center;
  min-height: 0;
}

.site-header--compact .site-header__logo {
  align-self: center;
}

.site-header--compact {
  box-shadow: var(--header-shadow);
}

.site-header--plain {
  position: static;
}

@media (min-width: 1100px) {
  .site-header--compact {
    margin-bottom: calc(var(--header-height) - var(--header-height-compact));
  }

  .site-header--hidden {
    box-shadow: none;
    transform: translateY(-100%);
  }

  .site-header:not(.site-header--compact) .site-header__panels {
    margin-top: 0;
  }
}

@media (max-width: 1099px) {
  .site-header {
    position: relative;
    top: auto;
  }

  .site-header__meta,
  .site-header__nav,
  .site-header__service,
  .mega {
    display: none;
  }

  .site-header__bar {
    padding: calc(var(--spacing) * 4) calc(var(--spacing) * 4);
  }

  .site-header__logo-svg,
  .site-header--compact .site-header__logo-svg {
    height: 40px;
  }

  .emergency-banner__inner {
    gap: calc(var(--spacing) * 4);
    min-height: 105px;
    padding: calc(var(--spacing) * 6) calc(var(--spacing) * 5);
  }

  .emergency-banner__text {
    font-size: var(--text-small);
    line-height: var(--text-small--line-height);
  }

  :root {
    --mobile-bar-height: calc(var(--spacing) * 16 + max(calc(var(--spacing) * 6), env(safe-area-inset-bottom)));
  }

  .mobile-bar {
    align-items: center;
    background-color: var(--color-white);
    border-radius: var(--radius-card-lg) var(--radius-card-lg) 0 0;
    bottom: 0;
    box-shadow: var(--header-shadow);
    display: flex;
    justify-content: space-between;
    left: 0;
    padding: calc(var(--spacing) * 4) calc(var(--spacing) * 4) calc(var(--spacing) * 6);
    padding-bottom: max(calc(var(--spacing) * 6), env(safe-area-inset-bottom));
    position: fixed;
    right: 0;
    z-index: 70;
  }

  .site-header--static .mobile-bar {
    position: relative;
  }

  body:has([data-service-panel='search']:not([hidden])) .mobile-bar {
    border-radius: 0;
    box-shadow: none;
  }

  .mobile-bar__menu,
  .mobile-bar__menu:hover,
  .mobile-bar__menu:focus {
    background-color: var(--color-black-100);
    color: var(--color-white);
  }

  body:has(.mobile-bar:not(.site-header--static .mobile-bar)) {
    padding-bottom: var(--mobile-bar-height);
  }

  .site-header__panels {
    position: static;
  }

  .site-header__flyout--search,
  .site-header__flyout--card {
    border-radius: var(--radius-card) var(--radius-card) 0 0;
    bottom: var(--mobile-bar-height);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.22), 0 0 30px rgba(0, 0, 0, 0.08);
    left: 0;
    position: fixed;
    right: 0;
    top: auto;
    width: auto;
    z-index: 65;
  }

  .site-header__flyout--card {
    border-radius: var(--radius-card-lg);
    margin: 0 calc(var(--spacing) * 4) calc(var(--spacing) * 2);
    max-height: calc(100dvh - var(--mobile-bar-height) - calc(var(--spacing) * 6));
    opacity: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: calc(var(--spacing) * 10) calc(var(--spacing) * 6) calc(var(--spacing) * 10);
    transform: translateY(calc(var(--spacing) * 6)) scale(0.9);
    transform-origin: 50% 100%;
    transition: opacity 0.3s cubic-bezier(0.3, 0, 0.3, 1), transform 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  }

  .site-header__flyout--card.is-open,
  .site-header--static .site-header__flyout--card {
    opacity: 1;
    transform: none;
  }

  .site-header--static .site-header__flyout--card {
    max-height: none;
    transition: none;
  }

  .site-header__flyout--card:has(.flyout-list) {
    padding: calc(var(--spacing) * 7) calc(var(--spacing) * 6) calc(var(--spacing) * 5);
  }

  body.has-service-panel {
    overflow: hidden;
  }

  .site-search {
    padding: calc(var(--spacing) * 10) calc(var(--spacing) * 4);
  }

  .site-search__field {
    gap: calc(var(--spacing) * 4);
    padding: 0 calc(var(--spacing) * 6);
  }

  .site-search__input[type='search'],
  .site-search__input[type='search']:focus {
    height: 58px;
    padding: 16px 0 12px;
  }

  .site-search__list {
    margin-top: calc(var(--spacing) * 8);
    padding-left: calc(var(--spacing) * 16);
  }

  .site-header__flyout--search.has-suggestions,
  .has-keyboard .site-header__flyout--search {
    border-radius: 0;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    top: 72px;
  }

  .has-keyboard .site-header__flyout--search[hidden] {
    display: none;
  }

  .has-keyboard .site-header__flyout--search {
    bottom: auto;
    height: var(--vv-height, 100dvh);
    top: 0;
    transform: translateY(var(--vv-offset, 0px));
    z-index: 75;
  }

  .site-header__flyout--search.has-suggestions .site-search,
  .has-keyboard .site-header__flyout--search .site-search {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 0;
    padding-bottom: 0;
    width: 100%;
  }

  .has-keyboard .site-header__flyout--search .site-search {
    padding-top: calc(var(--spacing) * 4);
  }

  .site-header__flyout--search.has-suggestions .site-search__list,
  .has-keyboard .site-header__flyout--search .site-search__list {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding-bottom: calc(var(--spacing) * 10);
    padding-right: calc(var(--spacing) * 2);
    padding-top: calc(var(--spacing) * 2);
    scroll-padding-block: calc(var(--spacing) * 2);
  }

  .site-header--static .site-header__flyout--search,
  .site-header--static .site-header__flyout--card {
    bottom: auto;
    position: relative;
  }

  .site-header__flyout-title {
    font-size: var(--text-h3-mobile);
  }

  .mobile-menu {
    background-color: var(--color-white);
    bottom: var(--mobile-bar-height);
    display: flex;
    flex-direction: column;
    left: 0;
    opacity: 0;
    position: fixed;
    right: 0;
    top: 0;
    transform: translateY(calc(var(--spacing) * 3));
    transition: opacity 0.3s cubic-bezier(0.3, 0, 0.3, 1), transform 0.3s cubic-bezier(0.3, 0, 0.3, 1);
    z-index: 66;
  }

  .mobile-menu.is-open,
  .site-header--static .mobile-menu {
    opacity: 1;
    transform: none;
  }

  .site-header--static .mobile-menu {
    bottom: auto;
    min-height: 640px;
    position: relative;
    transition: none;
  }

  .mobile-menu[hidden] {
    display: none;
  }

  .mobile-menu__scroll {
    flex: 1;
    overflow-y: auto;
    padding: calc(var(--spacing) * 6) calc(var(--spacing) * 4) calc(var(--spacing) * 6);
  }

  .mobile-menu .mobile-menu__logo {
    color: var(--color-violet-100);
    display: block;
    margin-bottom: calc(var(--spacing) * 12);
    width: fit-content;
  }

  .mobile-menu__logo-svg {
    display: block;
    height: 40px;
    width: auto;
  }

  .mobile-menu__view[hidden] {
    display: none;
  }

  .mobile-menu__view.is-entering {
    animation: mobile-menu-forward 0.3s cubic-bezier(0.3, 0, 0.3, 1) both;
  }

  .mobile-menu__view.is-entering-back {
    animation: mobile-menu-back 0.3s cubic-bezier(0.3, 0, 0.3, 1) both;
  }

  .mobile-menu__group {
    font-weight: 700;
    margin: 0 0 calc(var(--spacing) * 4);
  }

  .mobile-menu__level1,
  .mobile-menu__level2,
  .mobile-menu__level3 {
    list-style: none;
    margin: 0;
    padding: 0;
  }

  .mobile-menu__level1 > li + li,
  .mobile-menu__level2 > li + li {
    margin-top: calc(var(--spacing) * 4);
  }

  .mobile-menu .mobile-menu__level1-link,
  .mobile-menu .mobile-menu__level2-link,
  .mobile-menu .mobile-menu__back,
  .mobile-menu .mobile-menu__meta-button {
    align-items: center;
    background: none;
    border: 0;
    border-radius: 0;
    color: var(--color-black-100);
    cursor: pointer;
    display: flex;
    font-family: inherit;
    justify-content: space-between;
    margin: 0;
    padding: 0;
    text-align: left;
    text-decoration: none;
    width: 100%;
  }

  .mobile-menu .mobile-menu__level1-link {
    border-bottom: 1px solid var(--color-black-20);
    font-family: var(--font-heading);
    font-size: var(--text-h1-mobile);
    line-height: 1.1;
    padding-bottom: calc(var(--spacing) * 4);
  }

  .mobile-menu__level1-link .icon,
  .mobile-menu__level2-link .icon,
  .mobile-menu__back .icon,
  .mobile-menu__meta-button .icon {
    flex: none;
    height: calc(var(--spacing) * 6);
    width: calc(var(--spacing) * 6);
  }

  .mobile-menu .mobile-menu__back {
    font-weight: 700;
    justify-content: flex-start;
    gap: var(--spacing);
    margin-bottom: calc(var(--spacing) * 4);
    width: auto;
  }

  .mobile-menu__title {
    font-size: var(--text-h1-mobile);
    line-height: 1.1;
    margin: 0 0 calc(var(--spacing) * 6);
  }

  .mobile-menu__title a,
  .mobile-menu__title a:hover,
  .mobile-menu__title a:focus,
  .mobile-menu__title a:active {
    color: var(--color-violet-100);
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    text-decoration: none;
  }

  .mobile-menu__level2-item {
    border-bottom: 1px solid var(--color-black-20);
    padding-bottom: calc(var(--spacing) * 4);
    transition: border-color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  }

  .mobile-menu__level2-item.is-active,
  .mobile-menu__level2-item:has([aria-expanded='true']) {
    border-bottom-color: var(--color-violet-100);
  }

  .mobile-menu .mobile-menu__level2-link {
    font-size: var(--text-h4-mobile);
    font-weight: 700;
    line-height: 1.2;
    transition: color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  }

  .mobile-menu__level2-link .icon,
  .mobile-menu__meta-button .icon {
    transition: transform 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  }

  .mobile-menu .mobile-menu__level2-link[aria-expanded='true'],
  .mobile-menu .mobile-menu__level2-item.is-active > .mobile-menu__level2-link {
    color: var(--color-violet-100);
  }

  .mobile-menu__level2-link[aria-expanded='true'] .icon {
    transform: rotate(180deg);
  }

  .mobile-menu__panel {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.3s cubic-bezier(0.3, 0, 0.3, 1), visibility 0s linear 0.3s;
    visibility: hidden;
  }

  .mobile-menu__panel.is-open {
    grid-template-rows: 1fr;
    transition: grid-template-rows 0.3s cubic-bezier(0.3, 0, 0.3, 1);
    visibility: visible;
  }

  .mobile-menu__level3 {
    min-height: 0;
    overflow: hidden;
  }

  .mobile-menu__level3 > li:first-child {
    padding-top: calc(var(--spacing) * 4);
  }

  .mobile-menu__level3 li + li {
    margin-top: calc(var(--spacing) * 3);
  }

  .mobile-menu .mobile-menu__level3-link {
    color: var(--color-black-100);
    display: block;
    font-size: var(--text-lead);
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
  }

  .mobile-menu .mobile-menu__level3-link.is-active,
  .mobile-menu .mobile-menu__level3-link:hover,
  .mobile-menu .mobile-menu__level3-link:focus-visible {
    color: var(--color-violet-100);
  }

  .mobile-menu__meta {
    padding: calc(var(--spacing) * 4);
    position: relative;
  }

  .mobile-menu .mobile-menu__meta-button {
    background-color: var(--color-violet-100);
    border-radius: var(--radius-pill);
    color: var(--color-white);
    font-size: var(--text-lead);
    font-weight: 700;
    line-height: 1.4;
    padding: 18px calc(var(--spacing) * 8) 13px;
  }

  .mobile-menu__meta-button[aria-expanded='true'] .icon {
    transform: rotate(180deg);
  }

  .mobile-menu__dropdown {
    background-color: var(--color-violet-100);
    border-radius: var(--radius-card-lg);
    bottom: calc(100% + 0px);
    box-shadow: var(--header-shadow);
    left: calc(var(--spacing) * 4);
    opacity: 0;
    padding: calc(var(--spacing) * 8);
    position: absolute;
    right: calc(var(--spacing) * 4);
    transform: translateY(calc(var(--spacing) * 3));
    transition: opacity 0.3s cubic-bezier(0.3, 0, 0.3, 1), transform 0.3s cubic-bezier(0.3, 0, 0.3, 1), visibility 0s linear 0.3s;
    visibility: hidden;
  }

  .mobile-menu__dropdown.is-open {
    opacity: 1;
    transform: none;
    transition: opacity 0.3s cubic-bezier(0.3, 0, 0.3, 1), transform 0.3s cubic-bezier(0.3, 0, 0.3, 1);
    visibility: visible;
  }

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

  .mobile-menu__dropdown li + li {
    margin-top: calc(var(--spacing) * 4);
  }

  .mobile-menu .mobile-menu__dropdown a {
    color: var(--color-white);
    display: inline-block;
    font-size: var(--text-h4-mobile);
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
  }

  .mobile-menu .mobile-menu__dropdown a.is-active {
    border-bottom: 1px solid var(--color-white);
  }

  .mobile-menu__dropdown a:focus-visible {
    border-radius: var(--radius-focus);
    outline: 2px solid var(--color-yellow-100);
    outline-offset: 4px;
  }
}

@media (min-width: 1100px) {
  .site-header__flyout-more:focus-visible,
  .flyout-list__link:focus-visible {
    border-radius: var(--radius-focus);
    outline: 2px solid var(--color-violet-100);
    outline-offset: 2px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .site-header *,
  .site-header {
    transition: none;
  }
}

@keyframes mobile-menu-forward {
  from {
    opacity: 0;
    transform: translateX(calc(var(--spacing) * 6));
  }
}

@keyframes mobile-menu-back {
  from {
    opacity: 0;
    transform: translateX(calc(var(--spacing) * -6));
  }
}

@media (prefers-reduced-motion: reduce) {
  .mobile-menu,
  .mobile-menu__dropdown,
  .mobile-menu__panel,
  .mobile-menu__level2-item,
  .mobile-menu__level2-link,
  .mobile-menu__level2-link .icon,
  .mobile-menu__meta-button .icon {
    transition-duration: 0.01ms;
  }

  .mobile-menu__view.is-entering,
  .mobile-menu__view.is-entering-back {
    animation-duration: 0.01ms;
  }
}

.site-header__meta-item.site-header__meta-item--language a {
  font-size: var(--text-small);
  padding-left: calc(var(--spacing) * 2);
  padding-right: calc(var(--spacing) * 2);
}

@media (prefers-reduced-motion: reduce) {
  .site-header__flyout--card {
    transition: none;
  }
}
.site-footer {
  background-color: var(--color-violet-100);
  color: var(--color-white);
  overflow: hidden;
  position: relative;
}

.site-footer__line {
  height: auto;
  left: 50%;
  max-width: none;
  pointer-events: none;
  position: absolute;
  transform: translateX(-50%);
  width: 1728px;
}

.site-footer__line--a {
  top: 120px;
}

.site-footer__line--b {
  top: 449px;
}

.container-content.site-footer__inner {
  max-width: calc(var(--container-content) + 2 * var(--spacing-gutter));
}

.site-footer__inner {
  padding-bottom: calc(var(--spacing) * 10);
  padding-top: 320px;
  position: relative;
}

.site-footer__brand {
  margin-bottom: calc(var(--spacing) * 20);
}

.site-footer__logo {
  color: var(--color-yellow-100);
  display: block;
  height: 116px;
  width: auto;
}

.site-footer__claim {
  color: var(--color-yellow-100);
  font-family: var(--font-heading);
  font-size: var(--text-h3);
  line-height: 1.1;
  margin: calc(var(--spacing) * 9) 0 0;
}

.site-footer__grid {
  display: grid;
  gap: calc(var(--spacing) * 6);
  grid-template-columns: repeat(12, minmax(0, 1fr));
}

.site-footer__contact {
  font-style: normal;
  grid-column: 1 / span 4;
}

.site-footer__text {
  margin-top: calc(var(--spacing) * 6);
  max-width: 46ch;
}

.site-footer__text > :first-child {
  margin-top: 0;
}

.site-footer__text > :last-child {
  margin-bottom: 0;
}

.site-footer__heading {
  font-size: var(--text-small);
  font-weight: 700;
  letter-spacing: 0.02em;
  margin: 0 0 calc(var(--spacing) * 4);
  text-transform: uppercase;
}

.site-footer__actions {
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--spacing) * 4);
}

.footer-newsletter__intro {
  margin: 0 0 calc(var(--spacing) * 4);
}

.site-footer__note {
  margin: 0;
}

.site-footer__company {
  font-size: var(--text-h4);
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 calc(var(--spacing) * 6);
}

.site-footer__address {
  font-size: var(--text-lead);
  font-weight: 700;
  line-height: 1.4;
  margin: 0 0 calc(var(--spacing) * 8);
}

.site-footer__address a {
  color: inherit;
  text-decoration: none;
}

.site-footer__address a:focus,
.site-footer__address a:active {
  color: inherit;
}

.site-footer__address a:hover,
.site-footer__address a:focus-visible {
  color: var(--color-yellow-100);
}

.site-footer__links {
  grid-column: 7 / span 6;
}

.footer-links {
  list-style: none;
  margin: 0;
  padding: 0;
}

.footer-links li + li {
  margin-top: calc(var(--spacing) * 4);
}

.footer-links__link {
  align-items: center;
  border-bottom: 1px solid var(--color-violet-80);
  color: var(--color-white);
  display: flex;
  font-size: var(--text-lead);
  font-weight: 700;
  gap: calc(var(--spacing) * 2);
  justify-content: space-between;
  line-height: 1.4;
  padding: 0 calc(var(--spacing) * 2) calc(var(--spacing) * 4) 0;
  text-decoration: none;
  transition: color 0.3s cubic-bezier(0.3, 0, 0.3, 1), padding 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.footer-links__link:focus,
.footer-links__link:active {
  color: var(--color-white);
}

.footer-links__link .icon {
  flex: none;
  height: calc(var(--spacing) * 6);
  width: calc(var(--spacing) * 6);
}

.footer-links__link:hover,
.footer-links__link:focus-visible {
  color: var(--color-yellow-100);
  padding-left: calc(var(--spacing) * 2);
  padding-right: 0;
}

.footer-newsletter {
  margin-top: calc(var(--spacing) * 4);
  position: relative;
}

.footer-newsletter__label {
  display: block;
  font-size: var(--text-lead);
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: calc(var(--spacing) * 2);
}

.footer-newsletter__row {
  align-items: center;
  border-bottom: 1px solid var(--color-violet-80);
  display: flex;
  gap: calc(var(--spacing) * 4);
  padding: 0 calc(var(--spacing) * 2) calc(var(--spacing) * 4) 0;
}

.footer-newsletter__input[type='email'],
.footer-newsletter__input[type='email']:focus {
  background: none;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: var(--color-white);
  flex: 1;
  font-size: var(--text-body);
  height: auto;
  line-height: 1.4;
  margin: 0;
  min-width: 0;
  outline: none;
  padding: 0;
}

.footer-newsletter__input::placeholder {
  color: var(--color-violet-60);
  opacity: 1;
}

.footer-newsletter__row:focus-within {
  border-bottom-color: var(--color-yellow-100);
}

.footer-newsletter__submit,
.footer-newsletter__submit:hover,
.footer-newsletter__submit:focus {
  align-items: center;
  background: none;
  border: 0;
  border-radius: var(--radius-pill);
  color: var(--color-white);
  cursor: pointer;
  display: inline-flex;
  flex: none;
  height: calc(var(--spacing) * 6);
  justify-content: center;
  margin: 0;
  padding: 0;
  position: absolute;
  right: calc(var(--spacing) * 2);
  top: 0;
  width: calc(var(--spacing) * 6);
}

.footer-newsletter__submit:hover,
.footer-newsletter__submit:focus-visible {
  color: var(--color-yellow-100);
}

.footer-newsletter__submit .icon {
  height: calc(var(--spacing) * 6);
  width: calc(var(--spacing) * 6);
}

.footer-newsletter__field.is-error .footer-newsletter__row {
  border-bottom-color: var(--color-yellow-100);
}

.footer-newsletter .is-error > .footer-newsletter__input[type='email'] {
  background: none;
  border: 0;
}

.footer-newsletter .form-error {
  color: var(--color-yellow-100);
  font-size: var(--text-small);
  line-height: var(--text-small--line-height);
  margin-top: calc(var(--spacing) * 3);
}

.footer-newsletter .form-error::before {
  height: calc(var(--spacing) * 5);
  width: calc(var(--spacing) * 5);
}

.site-footer__bottom {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin-top: 120px;
}

.site-footer__legal {
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--spacing) * 6);
  list-style: none;
  margin: 0;
  padding: 0;
}

.site-footer__legal a {
  color: var(--color-white);
  font-weight: 400;
  text-decoration: none;
}

.site-footer__legal a:focus,
.site-footer__legal a:active {
  color: var(--color-white);
}

.site-footer__legal a:hover,
.site-footer__legal a:focus-visible {
  color: var(--color-yellow-100);
}

.site-footer__social {
  display: flex;
  gap: calc(var(--spacing) * 4);
  list-style: none;
  margin: 0;
  padding: 0;
}

.site-footer__social-link,
.site-footer__social-link:hover,
.site-footer__social-link:focus,
.site-footer__social-link:active {
  align-items: center;
  border: 1.5px solid var(--color-white);
  border-radius: var(--radius-pill);
  color: inherit;
  display: inline-flex;
  height: 38px;
  justify-content: center;
  transition: background-color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  width: 38px;
}

.site-footer__social-link .icon {
  height: calc(var(--spacing) * 4);
  width: auto;
}

.site-footer__social-link:hover,
.site-footer__social-link:focus-visible {
  background-color: var(--color-violet-80);
}

.site-footer a:focus-visible {
  border-radius: var(--radius-focus);
  outline: 2px solid var(--color-yellow-100);
  outline-offset: 2px;
}

@media (max-width: 767px) {
  .site-footer__line--a {
    top: 120px;
    width: 1120px;
  }

  .site-footer__line--b {
    top: 378px;
    width: 1120px;
  }

  .site-footer__inner {
    padding-top: 260px;
  }

  .site-footer__brand {
    margin-bottom: calc(var(--spacing) * 20);
  }

  .site-footer__logo {
    height: 85px;
  }

  .site-footer__claim {
    font-size: var(--text-h4-mobile);
    margin-top: calc(var(--spacing) * 6);
  }

  .site-footer__grid {
    display: block;
  }

  .site-footer__company {
    font-size: var(--text-h4-mobile);
  }

  .site-footer__contact .button {
    display: none;
  }

  .site-footer__links {
    margin-top: calc(var(--spacing) * 20);
  }

  .site-footer__actions {
    flex-direction: column;
  }

  .site-footer__bottom {
    align-items: flex-start;
    flex-direction: column;
    gap: calc(var(--spacing) * 10);
    margin-top: calc(var(--spacing) * 20);
  }
}

.footer-newsletter__note {
  color: inherit;
  font-size: var(--text-small);
  line-height: var(--text-small--line-height);
  margin-top: calc(var(--spacing) * 2);
}

.footer-newsletter__consent {
  color: var(--color-violet-20);
  font-size: var(--text-small);
  line-height: var(--text-small--line-height);
  margin: calc(var(--spacing) * 4) 0 0;
  max-width: 60ch;
}

.footer-newsletter__consent a,
.footer-newsletter__consent a:focus,
.footer-newsletter__consent a:active {
  color: var(--color-white);
}

.footer-newsletter__check {
  margin-top: calc(var(--spacing) * 3);
}

.footer-newsletter .form-check.footer-newsletter__check-label {
  color: var(--color-white);
  font-size: var(--text-small);
  line-height: var(--text-small--line-height);
}

.footer-newsletter__check input[type='checkbox'] {
  border-color: var(--color-white);
}

.footer-newsletter__check input[type='checkbox']:checked {
  background-color: var(--color-yellow-100);
  border-color: var(--color-yellow-100);
}

.footer-newsletter__check .form-error {
  color: var(--color-yellow-100);
}
.breadcrumb__list {
  display: flex;
  flex-wrap: wrap;
  font-size: var(--text-small);
  gap: var(--spacing);
  line-height: var(--text-small--line-height);
  list-style: none;
  margin: 0;
  padding: 0;
}

.breadcrumb__item + .breadcrumb__item::before {
  content: '/';
  margin-right: var(--spacing);
}

.breadcrumb a {
  color: var(--color-black-100);
  font-weight: 400;
  text-decoration: none;
}

.breadcrumb a:hover,
.breadcrumb a:focus-visible {
  color: var(--color-violet-100);
  text-decoration: underline;
}

.hero {
  margin-bottom: calc(var(--spacing) * 20);
}

.hero__stage {
  overflow: hidden;
  position: relative;
}

.hero--level1 {
  overflow: hidden;
}

.hero--level1 .hero__frame {
  margin-inline: auto;
  max-width: calc(var(--container-page) - var(--spacing) * 20);
  position: relative;
  width: calc(100% - var(--spacing) * 20);
}

.hero--level1 .hero__stage {
  position: relative;
  width: 100%;
  z-index: 1;
}

.hero--level1 .hero__line--yellow {
  z-index: 2;
}

.hero--level1 .hero__line--violet {
  z-index: 4;
}

.hero__cutouts {
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  position: absolute;
  z-index: 3;
}

.hero__cutout-track {
  display: flex;
  height: 100%;
  will-change: transform;
}

.hero__cutout-cell {
  flex: none;
  height: 100%;
  width: 100%;
}

.hero__cutout {
  border-radius: var(--radius-card-lg);
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.hero__slides {
  display: flex;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.hero__slides::-webkit-scrollbar {
  display: none;
}

.hero__slide {
  flex: none;
  scroll-snap-align: start;
  width: 100%;
}

.hero__image {
  aspect-ratio: 1648 / 888;
  border-radius: var(--radius-card-lg);
  display: block;
  height: auto;
  object-fit: cover;
  width: 100%;
}

.hero__line {
  left: 50%;
  pointer-events: none;
  position: absolute;
  transform: translateX(-50%);
  width: 1787px;
}

.hero__line svg {
  display: block;
  height: auto;
  width: 100%;
}

.hero--level1 .hero__line--yellow {
  top: 38.4%;
}

.hero--level1 .hero__line--violet {
  top: 70.2%;
}

.hero__content {
  bottom: calc(var(--spacing) * 10);
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  text-align: center;
}

.hero--level1 .hero__content {
  z-index: 5;
}

.hero__title {
  color: var(--color-white);
  font-family: var(--font-heading);
  font-size: var(--text-h1);
  font-weight: 400;
  line-height: 1.1;
  margin: 0 auto calc(var(--spacing) * 10);
  max-width: 936px;
}

.hero__buttons {
  display: flex;
  gap: calc(var(--spacing) * 6);
  justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0;
}

.hero__buttons a,
.hero__buttons button {
  pointer-events: auto;
}

.hero__indicator {
  display: none;
}

.hero__intro {
  margin-top: calc(var(--spacing) * 20);
}

.hero__intro-title {
  font-size: var(--text-h1);
  margin-bottom: calc(var(--spacing) * 6);
  max-width: 1176px;
}

.hero__intro .lead {
  margin: 0;
  max-width: 1176px;
}

.hero__intro-text > p {
  margin: 0;
}

.hero__intro-text > * + * {
  margin-top: calc(var(--spacing) * 4);
}

.hero__title-text[hidden] {
  display: none;
}

.hero--level2 .hero__stage {
  overflow: visible;
}

.hero--level2 {
  margin-block: calc(var(--spacing) * 10) calc(var(--spacing) * 20);
  margin-inline: auto;
  max-width: var(--container-page);
  overflow: hidden;
}

.hero__grid {
  display: grid;
  gap: calc(var(--spacing) * 6);
  grid-template-columns: repeat(12, minmax(0, 1fr));
  position: relative;
}

.hero__portrait-frame {
  grid-column: 7 / span 6;
  position: relative;
}

.hero__portrait-cutout {
  border-radius: var(--radius-card-lg);
  display: block;
  height: 100%;
  inset: 0;
  object-fit: cover;
  position: absolute;
  width: 100%;
  z-index: 3;
}

.hero__copy {
  grid-column: 1 / span 5;
  padding-top: calc(var(--spacing) * 15);
}

.hero--level2 .hero__copy {
  position: relative;
  z-index: 5;
}

.hero__copy .breadcrumb {
  margin-bottom: calc(var(--spacing) * 10);
}

.hero__heading {
  margin-bottom: calc(var(--spacing) * 6);
}

.hero__copy .lead {
  margin: 0;
}

.hero__copy--wide {
  max-width: 1176px;
  padding-top: 0;
}

.hero--level3 .breadcrumb {
  margin-bottom: calc(var(--spacing) * 10);
}

.hero--level3 {
  margin-block: calc(var(--spacing) * 25) calc(var(--spacing) * 20);
}

.hero__portrait {
  aspect-ratio: 696 / 928;
  border-radius: var(--radius-card-lg);
  display: block;
  height: auto;
  object-fit: cover;
  position: relative;
  width: 100%;
  z-index: 1;
}

.hero--level2 .hero__line--yellow {
  top: 216px;
  z-index: 2;
}

.hero--level2 .hero__line--violet {
  top: 454px;
  z-index: 4;
}

@media (max-width: 767px) {
  .hero {
    margin-bottom: calc(var(--spacing) * 10);
  }

  .hero--level1 .hero__frame {
    margin: 0;
    max-width: none;
    width: auto;
  }

  .hero__image {
    aspect-ratio: 400 / 640;
    border-radius: var(--radius-card);
    max-height: 640px;
  }

  .hero--level1 .hero__line--yellow {
    top: 40%;
  }

  .hero--level1 .hero__line--violet {
    top: 70.5%;
  }

  .hero__line {
    width: 100%;
  }

  .hero__content {
    bottom: calc(var(--spacing) * 14);
    padding: 0 calc(var(--spacing) * 4);
  }

  .hero__title {
    font-size: var(--text-h1-mobile);
    margin-bottom: calc(var(--spacing) * 10);
  }

  .hero__buttons {
    display: none;
  }

  .hero__indicator {
    align-items: center;
    display: flex;
    justify-content: center;
  }

  .hero__dot {
    pointer-events: auto;
  }

  .hero__dot,
  .hero__dot:hover,
  .hero__dot:focus {
    background-color: color-mix(in srgb, var(--color-white) 50%, transparent);
    border: 0;
    border-radius: 0;
    cursor: pointer;
    height: 2px;
    margin: 0;
    padding: 0;
    width: 44px;
  }

  .hero__dot.is-active {
    background-color: var(--color-white);
    height: 4px;
  }

  .hero__dot:focus-visible {
    outline: 2px solid var(--color-white);
    outline-offset: 4px;
  }

  .hero__intro {
    margin-top: calc(var(--spacing) * 10);
  }

  .hero__intro-title {
    font-size: var(--text-h1-mobile);
  }

  .hero__grid {
    display: flex;
    flex-direction: column-reverse;
    padding: 0;
  }

  .hero__copy {
    padding: 0;
  }

  .hero--level2 .hero__portrait-frame {
    margin-inline: calc(var(--spacing-gutter-mobile) * -1);
  }

  .hero__copy .breadcrumb {
    margin-bottom: calc(var(--spacing) * 10);
  }

  .hero__portrait {
    aspect-ratio: 1 / 1;
    border-radius: var(--radius-card);
    max-height: 400px;
    width: 100%;
  }

  .hero--level2 .hero__line--yellow {
    top: 162px;
  }

  .hero--level2 .hero__line--violet {
    top: 282px;
  }

  .hero--level3 .breadcrumb {
    margin-bottom: calc(var(--spacing) * 10);
  }

  .breadcrumb__list:has(.breadcrumb__item:nth-child(3)) .breadcrumb__item:not(:nth-last-child(-n + 2)) {
    display: none;
  }

  .breadcrumb__list:has(.breadcrumb__item:nth-child(3))::before {
    content: '… /';
    margin-right: var(--spacing);
  }

  .breadcrumb__list:has(.breadcrumb__item:nth-child(3)) .breadcrumb__item:nth-last-child(2)::before {
    content: none;
  }

  .hero__copy--wide {
    padding: 0;
  }

  .hero--level2,
  .hero--level3 {
    margin-block: calc(var(--spacing) * 4) 0;
  }
}
.inpage__list {
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
}

.inpage__item + .inpage__item {
  margin-top: calc(var(--spacing) * 6);
}

.inpage__link,
.inpage__link:hover,
.inpage__link:focus {
  align-items: center;
  background: none;
  border: 0;
  border-bottom: 1px solid var(--color-black-20);
  border-radius: 0;
  color: var(--color-black-100);
  cursor: pointer;
  display: flex;
  font-family: var(--font-body);
  font-size: var(--text-h4);
  font-weight: 700;
  gap: calc(var(--spacing) * 4);
  justify-content: space-between;
  line-height: 1.2;
  margin: 0;
  padding: 0 calc(var(--spacing) * 4) calc(var(--spacing) * 6) 0;
  text-align: left;
  transition: color 0.3s cubic-bezier(0.3, 0, 0.3, 1), border-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), padding 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  width: 100%;
}

.inpage__arrow {
  flex: none;
  height: calc(var(--spacing) * 8);
  transition: transform 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  width: calc(var(--spacing) * 8);
}

.inpage__link:hover,
.inpage__link:focus-visible,
.inpage__link[aria-expanded='true'] {
  border-bottom-color: var(--color-violet-100);
  color: var(--color-violet-100);
  padding-left: calc(var(--spacing) * 4);
  padding-right: 0;
}

.inpage__link:focus-visible {
  outline: none;
}

.inpage__link:focus-visible > span {
  border-radius: var(--radius-focus);
  outline: 2px solid var(--color-violet-100);
  outline-offset: 4px;
}

.inpage__panel {
  padding-top: var(--spacing);
}

.inpage__panel[hidden] {
  display: none;
}

.inpage__text {
  font-size: var(--text-lead);
  font-weight: 700;
  line-height: 1.4;
  margin: 0 0 calc(var(--spacing) * 10);
}

@media (min-width: 768px) {
  .inpage__link,
  .inpage__link:hover,
  .inpage__link:focus,
  .inpage__link[aria-expanded='true'] {
    width: calc(50% - var(--spacing) * 3);
  }

  .inpage__panel {
    position: absolute;
    right: 0;
    top: 0;
    width: calc(41.6667% - var(--spacing) * 3.5);
  }
}

@media (max-width: 767px) {
  .inpage__list {
    display: block;
  }

  .inpage__item {
    border-bottom: 1px solid var(--color-black-20);
    padding-bottom: calc(var(--spacing) * 4);
  }

  .inpage__item + .inpage__item {
    margin-top: calc(var(--spacing) * 4);
  }

  .inpage__item.is-active {
    border-bottom-color: var(--color-violet-100);
    padding-bottom: calc(var(--spacing) * 6);
  }

  .inpage__link,
  .inpage__link:hover,
  .inpage__link:focus,
  .inpage__link[aria-expanded='true'] {
    border-bottom: 0;
    font-size: var(--text-h4-mobile);
    padding: 0;
  }

  .inpage__arrow {
    height: calc(var(--spacing) * 6);
    width: calc(var(--spacing) * 6);
  }

  .inpage__link[aria-expanded='true'] .inpage__arrow {
    transform: rotate(90deg);
  }

  .inpage__panel {
    padding-top: calc(var(--spacing) * 5);
  }

  .inpage__text {
    margin-bottom: calc(var(--spacing) * 6);
  }
}
.anchor-nav {
  background-color: var(--color-white);
  box-shadow: 0 0 30px rgba(0, 0, 0, 0.05);
  padding-inline: var(--spacing-gutter);
  position: sticky;
  top: var(--anchor-offset, 0px);
  transition: top 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  z-index: 50;
}

.anchor-nav--static {
  position: relative;
  z-index: 1;
}

.anchor-nav__inner {
  align-items: center;
  display: flex;
  gap: calc(var(--spacing) * 10);
  justify-content: space-between;
  margin-inline: auto;
  max-width: calc(var(--container-content) + 2 * var(--spacing-gutter));
  min-height: 92px;
  padding: calc(var(--spacing) * 4) var(--spacing-gutter);
}

.anchor-nav__list {
  display: flex;
  gap: calc(var(--spacing) * 4);
  list-style: none;
  margin: calc(var(--spacing) * -2);
  min-width: 0;
  overflow-x: auto;
  padding: calc(var(--spacing) * 2);
  scrollbar-width: none;
}

.anchor-nav__list::-webkit-scrollbar {
  display: none;
}

.anchor-nav__link {
  border-bottom: 1px solid transparent;
  color: var(--color-black-100);
  display: block;
  font-size: var(--text-small);
  font-weight: 700;
  line-height: var(--text-small--line-height);
  padding: 6px 0 8px;
  text-decoration: none;
  transition: color 0.3s cubic-bezier(0.3, 0, 0.3, 1), border-color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  white-space: nowrap;
}

.anchor-nav__link:hover,
.anchor-nav__link:focus-visible,
.anchor-nav__link.is-active {
  border-bottom-color: var(--color-violet-100);
  color: var(--color-violet-100);
}

.anchor-nav__link:focus-visible {
  border-radius: var(--radius-focus);
  outline: 2px solid var(--color-violet-100);
  outline-offset: 4px;
}

.anchor-nav__cta {
  flex: none;
  white-space: nowrap;
}

@media (max-width: 767px) {
  .anchor-nav {
    padding-inline: 0;
  }

  .anchor-nav__inner {
    gap: calc(var(--spacing) * 10);
    justify-content: flex-start;
    max-width: none;
    min-height: 80px;
    overflow-x: auto;
    padding: calc(var(--spacing) * 3) calc(var(--spacing) * 4);
    scrollbar-width: none;
  }

  .anchor-nav__inner::-webkit-scrollbar {
    display: none;
  }

  .anchor-nav__list {
    flex: none;
    margin: 0;
    overflow: visible;
    padding: 0;
  }

  .anchor-nav__cta {
    padding: 14.5px 22.5px 10.5px;
  }
}

.dnd-section:has(.anchor-nav:not(.anchor-nav--static)) {
  padding-left: 0;
  padding-right: 0;
  position: sticky;
  top: var(--anchor-offset, 0px);
  transition: top 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  z-index: 50;
}

.dnd-section:has(.anchor-nav:not(.anchor-nav--static)) > .row-fluid,
.dnd-section:has(.anchor-nav:not(.anchor-nav--static)) .dnd-column {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

.dnd-section .anchor-nav {
  position: relative;
  top: auto;
}

[id] {
  scroll-margin-top: var(--anchor-scroll, 0px);
}
.container-content.search-results {
  max-width: calc(var(--container-content) + 2 * var(--spacing-gutter));
  padding-top: calc(var(--spacing) * 20);
}

.search-results__title {
  margin: calc(var(--spacing) * 10) 0 calc(var(--spacing) * 10);
}

.search-results .site-search {
  padding: 0;
}

.search-results .site-search__field {
  margin-bottom: calc(var(--spacing) * 10);
}

.search-filters {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 6);
  margin-bottom: calc(var(--spacing) * 20);
}

.search-filters__group {
  align-items: center;
  border: 0;
  display: flex;
  margin: 0;
  min-width: 0;
  padding: 0;
}

.search-filters__legend {
  flex: none;
  float: left;
  font-weight: 700;
  margin-right: calc(var(--spacing) * 6);
  padding: 0;
}

.search-filters__list {
  display: flex;
  flex: 1 1 auto;
  gap: calc(var(--spacing) * 4);
  min-width: 0;
  overflow-x: auto;
  overscroll-behavior-x: contain;
  padding: 2px;
  scrollbar-width: none;
}

.search-filters__list::-webkit-scrollbar {
  display: none;
}

.search-filters__list .filter-pill {
  flex: none;
  white-space: nowrap;
}

.search-results__heading {
  font-size: var(--text-h2);
  margin-bottom: calc(var(--spacing) * 10);
}

.search-results__heading--small {
  font-size: var(--text-h3);
}

.search-results__section + .search-results__section {
  margin-top: calc(var(--spacing) * 20);
}

.search-results__list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.search-results__pagination {
  margin-top: calc(var(--spacing) * 20);
}

.search-results__pagination[hidden] {
  display: none;
}

.pagination > .button:disabled {
  opacity: 0.35;
  pointer-events: none;
}

.search-result + .search-result {
  margin-top: calc(var(--spacing) * 6);
}

.search-result__link {
  border-bottom: 1px solid var(--color-black-20);
  color: var(--color-black-100);
  display: block;
  padding-bottom: calc(var(--spacing) * 6);
  text-decoration: none;
  transition: color 0.3s cubic-bezier(0.3, 0, 0.3, 1), border-color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.search-result__title {
  display: block;
  font-size: var(--text-h4);
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: calc(var(--spacing) * 4);
  max-width: 1176px;
}

.search-result__text {
  display: block;
  max-width: 1176px;
}

.search-result__text mark {
  background: none;
  color: var(--color-violet-100);
  font-weight: 700;
}

.search-result__link:hover,
.search-result__link:focus-visible,
.search-result.qa-hover .search-result__link {
  border-bottom-color: var(--color-violet-100);
  color: var(--color-violet-100);
}

.search-result__link:focus-visible {
  border-radius: var(--radius-focus);
  outline: 2px solid var(--color-violet-100);
  outline-offset: 4px;
}

@media (max-width: 767px) {
  .search-results {
    padding-top: calc(var(--spacing) * 10);
  }

  .search-filters__group {
    align-items: flex-start;
    flex-direction: column;
    gap: calc(var(--spacing) * 3);
  }

  .search-filters__list {
    margin-inline: calc(var(--spacing-gutter-mobile) * -1);
    padding-inline: var(--spacing-gutter-mobile);
    width: calc(100% + var(--spacing-gutter-mobile) * 2);
  }

  .search-results__heading {
    font-size: var(--text-h2-mobile);
  }

  .search-results__heading--small {
    font-size: var(--text-h3-mobile);
  }

  .search-result__title {
    font-size: var(--text-h4-mobile);
  }
}
.icon-box__title {
  margin-bottom: calc(var(--spacing) * 10);
}

.icon-box__grid {
  display: grid;
  gap: calc(var(--spacing) * 6);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

.icon-box__item {
  display: flex;
  flex-direction: column;
  order: var(--o-d, 0);
}

.icon-box__card {
  align-items: center;
  background-color: var(--color-white);
  border-radius: var(--radius-card-lg);
  box-shadow: 0 0 30px color-mix(in srgb, var(--color-black-100) 7%, transparent);
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: calc(var(--spacing) * 6);
  padding: calc(var(--spacing) * 6) calc(var(--spacing) * 6) calc(var(--spacing) * 10);
  text-align: center;
  transition: box-shadow 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.icon-box__item.is-open .icon-box__card {
  box-shadow: none;
}

.icon-box__icon {
  color: var(--color-black-100);
  display: block;
  height: 120px;
  width: 120px;
}

.icon-box__label {
  font-size: var(--text-h4);
  font-weight: 700;
  line-height: 1.2;
  margin: 0;
}

.icon-box__toggle,
.icon-box__toggle:hover,
.icon-box__toggle:focus {
  align-self: center;
  margin-top: calc(var(--spacing) * -5);
  position: relative;
  z-index: 1;
}

.icon-box__toggle .icon {
  transition: transform 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.icon-box__toggle[aria-expanded='true'] .icon {
  transform: rotate(45deg);
}

.icon-box__panel {
  grid-column: 1 / -1;
  order: var(--o-d-panel, 1);
  padding: calc(var(--spacing) * 20) 0;
}

.icon-box__panel[hidden] {
  display: none;
}

.icon-box__panel-inner {
  margin: 0 auto;
  max-width: 936px;
}

.icon-box__panel-text {
  font-size: var(--text-h4);
  font-weight: 700;
  line-height: 1.2;
  margin: 0 0 calc(var(--spacing) * 6);
}

.icon-box__panel ul {
  margin: 0;
}

@media (max-width: 767px) {
  .icon-box__title {
    margin-bottom: calc(var(--spacing) * 4);
  }

  .icon-box__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .icon-box__item {
    order: var(--o-m, 0);
  }

  .icon-box__icon {
    height: 96px;
    width: 96px;
  }

  .icon-box__label,
  .icon-box__panel-text {
    font-size: var(--text-h4-mobile);
  }

  .icon-box__card {
    padding-bottom: calc(var(--spacing) * 10);
  }

  .icon-box__panel {
    order: var(--o-m-panel, 1);
    padding: calc(var(--spacing) * 6) 0;
  }
}
.benefits {
  background-color: var(--color-violet-100);
  color: var(--color-yellow-100);
  overflow: hidden;
  padding-block: 120px;
  position: relative;
}

.benefits__line {
  height: auto;
  left: 50%;
  max-width: none;
  pointer-events: none;
  position: absolute;
  transform: translateX(-50%);
  width: 1728px;
}

.benefits__line--a {
  top: 120px;
}

.benefits__line--b {
  top: 449px;
}

.benefits__inner {
  position: relative;
}

.benefits__title {
  color: var(--color-yellow-100);
  margin-bottom: calc(var(--spacing) * 20);
  text-transform: lowercase;
}

.benefits__list {
  display: grid;
  gap: calc(var(--spacing) * 16) calc(var(--spacing) * 6);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

.benefits__item {
  border-radius: var(--radius-card-lg);
  padding: 0 calc(var(--spacing) * 10);
}

@media (min-width: 1100px) {
  .benefits__list:has(.benefits__item:nth-child(4):last-child) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .benefits__list:has(.benefits__item:nth-child(4):last-child) .benefits__text {
    max-width: 520px;
  }
}

.benefits__icon {
  background-color: currentcolor;
  color: var(--color-yellow-100);
  display: block;
  height: 160px;
  margin-bottom: calc(var(--spacing) * 2);
  -webkit-mask: var(--benefit-icon) center / contain no-repeat;
  mask: var(--benefit-icon) center / contain no-repeat;
  width: 160px;
}

.benefits__text {
  font-size: var(--text-lead-hero);
  font-weight: 700;
  line-height: 1.4;
  margin: 0;
}

.benefits__indicator {
  display: none;
}

@media (min-width: 768px) and (max-width: 1099px) {
  .benefits__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .benefits__item:last-child {
    grid-column: 1 / -1;
  }

  .benefits__text {
    font-size: var(--text-lead);
  }
}

@media (max-width: 767px) {
  .benefits {
    padding-block: calc(var(--spacing) * 20);
  }

  .benefits__line--a {
    top: 90px;
    width: 1120px;
  }

  .benefits__line--b {
    top: 348px;
    width: 1120px;
  }

  .benefits__title {
    font-size: var(--text-h3-mobile);
    margin-bottom: calc(var(--spacing) * 6);
  }

  .benefits__viewport {
    margin-inline: calc(var(--spacing-gutter-mobile) * -1);
    overflow: hidden;
    padding-inline: var(--spacing-gutter-mobile);
  }

  .benefits__viewport:focus-visible {
    border-radius: var(--radius-focus);
    outline: 2px solid var(--color-yellow-100);
    outline-offset: 4px;
  }

  .benefits__list {
    display: flex;
  }

  .benefits__item {
    flex: none;
    padding: 0;
    width: 100%;
  }

  .benefits__icon {
    -webkit-mask-position: -33px center;
    -webkit-mask-size: 160px 160px;
    mask-position: -33px center;
    mask-size: 160px 160px;
    width: 94px;
  }

  .benefits__text {
    font-size: var(--text-lead);
  }

  .benefits__indicator {
    background-color: var(--color-yellow-20);
    display: block;
    height: 2px;
    margin: calc(var(--spacing) * 10) auto 0;
    position: relative;
    width: 176px;
  }

  .benefits__indicator span {
    background-color: var(--color-yellow-100);
    display: block;
    height: 4px;
    left: 0;
    position: absolute;
    top: -1px;
    transition: transform 0.3s cubic-bezier(0.3, 0, 0.3, 1);
    width: 44px;
  }
}
.logo-wall {
  display: flex;
  flex-direction: column;
}

.logo-wall__row {
  display: grid;
  gap: calc(var(--spacing) * 6);
  grid-template-columns: repeat(4, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

.logo-wall__row + .logo-wall__row {
  border-top: 1px solid var(--color-dark-grey-60);
  margin-top: calc(var(--spacing) * 6);
  padding-top: calc(var(--spacing) * 6);
}

.logo-wall__item {
  align-items: center;
  display: flex;
  justify-content: center;
  min-height: 120px;
  position: relative;
}

.logo-wall__item:not(:last-child)::after {
  background-color: var(--color-dark-grey-60);
  content: '';
  height: 100%;
  position: absolute;
  right: calc(var(--spacing) * -3);
  top: 0;
  width: 1px;
}

.logo-wall__logo {
  display: block;
  max-height: 108px;
  max-width: 100%;
  object-fit: contain;
  width: auto;
}

a.logo-wall__link {
  align-items: center;
  display: flex;
  justify-content: center;
  transition: opacity 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  width: 100%;
}

a.logo-wall__link:hover,
a.logo-wall__link:focus-visible {
  opacity: 0.6;
}

@media (max-width: 767px) {
  .logo-wall__row {
    gap: calc(var(--spacing) * 6) calc(var(--spacing) * 4);
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .logo-wall__item {
    min-height: 80px;
  }

  .logo-wall__item:not(:last-child)::after {
    right: calc(var(--spacing) * -2);
  }

  .logo-wall__item:nth-child(2n)::after {
    display: none;
  }

  .logo-wall__item:nth-child(n + 3)::before {
    background-color: var(--color-dark-grey-60);
    content: '';
    height: 1px;
    left: 0;
    position: absolute;
    right: calc(var(--spacing) * -4);
    top: calc(var(--spacing) * -3);
  }

  .logo-wall__item:nth-child(2n)::before {
    right: 0;
  }

  .logo-wall__logo {
    max-height: 76px;
    max-width: 140px;
  }
}
.listicle {
  list-style: none;
  margin: 0;
  max-width: 1176px;
  padding: 0;
}

.listicle__item {
  display: grid;
  gap: 140px;
  grid-template-columns: 336px minmax(0, 700px);
}

.listicle__item + .listicle__item {
  margin-top: calc(var(--spacing) * 20);
}

.listicle__number {
  color: var(--color-violet-100);
  font-size: var(--text-listicle);
  line-height: 1.1;
  margin: 0;
  text-align: right;
  white-space: nowrap;
}

.listicle__number--long {
  font-size: var(--text-listicle-long);
  line-height: 132px;
}

.listicle__number--xlong {
  font-size: var(--text-listicle-xlong);
  line-height: 132px;
}

.listicle__body {
  padding-top: calc(var(--spacing) * 2);
}

.listicle__heading {
  font-size: var(--text-h3);
  margin-bottom: calc(var(--spacing) * 4);
}

.listicle__text {
  margin: 0;
}

@media (max-width: 767px) {
  .listicle__item {
    display: block;
  }

  .listicle__item + .listicle__item {
    margin-top: calc(var(--spacing) * 10);
  }

  .listicle__number {
    font-size: var(--text-listicle-mobile);
    text-align: left;
  }

  .listicle__number--long {
    font-size: var(--text-listicle-long-mobile);
    line-height: 1.1;
  }

  .listicle__number--xlong {
    font-size: var(--text-listicle-xlong-mobile);
    line-height: 1.1;
  }

  .listicle__body {
    padding-top: 0;
  }

  .listicle__heading {
    font-size: var(--text-h3-mobile);
  }
}
.figure {
  margin: 0;
}

.figure__image {
  border-radius: var(--radius-card-lg);
  display: block;
  height: auto;
  object-fit: cover;
  width: 100%;
}

.figure__caption {
  font-size: var(--text-small);
  line-height: var(--text-small--line-height);
  margin-top: calc(var(--spacing) * 4);
}

.figure--wide .figure__image {
  aspect-ratio: 16 / 9;
}

.figure--ratio-43 .figure__image {
  aspect-ratio: 4 / 3;
}

.figure__grid {
  display: grid;
  gap: calc(var(--spacing) * 6);
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.figure__grid .figure__image {
  aspect-ratio: 3 / 4;
  height: 100%;
}

.figure__collage {
  display: grid;
  gap: calc(var(--spacing) * 6);
  grid-template-columns: 936fr 456fr;
  grid-template-rows: repeat(2, minmax(0, 1fr));
}

.figure__collage .figure__image {
  height: 100%;
}

.figure__collage .figure__image:first-child {
  aspect-ratio: 936 / 702;
  grid-row: span 2;
}

@media (max-width: 767px) {
  .figure__image {
    border-radius: var(--radius-card);
  }

  .figure__grid,
  .figure__collage {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 4);
  }

  .figure__grid .figure__image,
  .figure__collage .figure__image,
  .figure__collage .figure__image:first-child {
    aspect-ratio: 4 / 3;
    height: auto;
  }
}
.image-text {
  display: grid;
  gap: calc(var(--spacing) * 6);
  grid-template-columns: repeat(12, minmax(0, 1fr));
}

.image-text__media {
  grid-column: 1 / span 5;
}

.image-text--wide .image-text__media {
  grid-column: 1 / span 7;
}

.image-text__image {
  aspect-ratio: 3 / 4;
  border-radius: var(--radius-card-lg);
  display: block;
  height: auto;
  object-fit: cover;
  width: 100%;
}

.image-text--wide .image-text__image {
  aspect-ratio: 4 / 3;
}

.image-text__body {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 10);
  grid-column: 7 / -1;
  padding-top: calc(var(--spacing) * 20);
}

.image-text--wide .image-text__body {
  grid-column: 9 / -1;
}

.image-text--reverse .image-text__media {
  grid-column: 8 / -1;
  grid-row: 1;
}

.image-text--reverse.image-text--wide .image-text__media {
  grid-column: 6 / -1;
}

.image-text--reverse .image-text__body {
  grid-column: 1 / span 6;
  grid-row: 1;
}

.image-text--reverse.image-text--wide .image-text__body {
  grid-column: 1 / span 4;
}

.image-text__text > * {
  margin: 0;
}

.image-text__heading {
  margin-bottom: calc(var(--spacing) * 4);
}

.image-text__actions {
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--spacing) * 4);
}

@media (max-width: 767px) {
  .image-text,
  .image-text--wide,
  .image-text--reverse {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 6);
  }

  .image-text__image,
  .image-text--wide .image-text__image {
    aspect-ratio: 3 / 4;
  }

  .image-text--wide .image-text__image {
    aspect-ratio: 4 / 3;
  }

  .image-text__body {
    gap: calc(var(--spacing) * 10);
    padding-top: 0;
  }
}
.its {
  position: relative;
}

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

.its__viewport:focus-visible {
  border-radius: var(--radius-focus);
  outline: 2px solid var(--color-violet-100);
  outline-offset: 4px;
}

.its__figure {
  border-radius: var(--radius-card-lg);
  overflow: hidden;
  position: relative;
}

.its__image {
  display: block;
  height: 100%;
  inset: 0;
  object-fit: cover;
  position: absolute;
  width: 100%;
}

.its__body {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 10);
}

.its__text > * {
  margin: 0;
}

.its__heading {
  margin-bottom: calc(var(--spacing) * 4);
}

.its__actions {
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--spacing) * 4);
}

@media (min-width: 768px) {
  .its {
    column-gap: calc(var(--spacing) * 6);
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }

  .its__viewport {
    grid-column: 1 / -1;
    grid-row: 1;
  }

  .its__track {
    display: grid;
  }

  .its__slide {
    column-gap: calc(var(--spacing) * 6);
    display: grid;
    grid-area: 1 / 1;
    grid-template-columns: repeat(12, minmax(0, 1fr));
  }

  .its__slide:not([data-its-state='active']) {
    pointer-events: none;
  }

  .its__figure {
    aspect-ratio: 3 / 4;
    grid-column: 1 / span 5;
  }

  .its--wide .its__figure {
    aspect-ratio: 4 / 3;
    grid-column: 1 / span 7;
  }

  .its__image {
    transition:
      transform 0.6s cubic-bezier(0.3, 0, 0.3, 1),
      opacity 0.45s cubic-bezier(0.3, 0, 0.3, 1);
  }

  .its__slide[data-its-state='before'] .its__image {
    opacity: 0;
    transform: translateY(-14%);
  }

  .its__slide[data-its-state='after'] .its__image {
    opacity: 0;
    transform: translateY(14%);
  }

  .its__body {
    grid-column: 7 / -1;
    opacity: 0;
    padding-top: calc(var(--spacing) * 40);
    transition: opacity 0.4s cubic-bezier(0.3, 0, 0.3, 1);
  }

  .its--wide .its__body {
    grid-column: 9 / -1;
  }

  .its__slide[data-its-state='active'] .its__body {
    opacity: 1;
    transition-delay: 0.15s;
  }

  .its .its__controls {
    align-self: start;
    grid-column: 7 / -1;
    grid-row: 1;
    margin-top: calc(var(--spacing) * 20);
    z-index: 1;
  }

  .its--wide .its__controls {
    grid-column: 9 / -1;
  }
}

@media (max-width: 767px) {
  .its__viewport {
    margin-inline: calc(var(--spacing-gutter-mobile) * -1);
    overflow: hidden;
    padding-inline: var(--spacing-gutter-mobile);
  }

  .its__track {
    display: flex;
    gap: calc(var(--spacing) * 4);
  }

  .its__slide {
    display: flex;
    flex: none;
    flex-direction: column;
    gap: calc(var(--spacing) * 6);
    min-width: 0;
    width: calc(100% - var(--spacing) * 12);
  }

  .its__figure {
    aspect-ratio: 3 / 4;
    border-radius: var(--radius-card);
  }

  .its--wide .its__figure {
    aspect-ratio: 4 / 3;
  }
}

@media (prefers-reduced-motion: reduce) {
  .its__image,
  .its__body {
    transition-duration: 0.01ms;
  }
}
.slider {
  position: relative;
}

.slider__track {
  display: flex;
  gap: calc(var(--spacing) * 6);
  list-style: none;
  margin: 0;
  overflow-x: auto;
  padding: 0;
  scroll-snap-type: x mandatory;
  scrollbar-width: none;
}

.slider__track::-webkit-scrollbar {
  display: none;
}

.slider__track:focus-visible {
  border-radius: var(--radius-focus);
  outline: 2px solid var(--color-violet-100);
  outline-offset: 4px;
}

.slider__slide {
  flex: none;
  scroll-snap-align: start;
}

.slider__controls {
  align-items: center;
  display: flex;
  gap: calc(var(--spacing) * 4);
  margin-top: calc(var(--spacing) * 10);
}

.slider__progress {
  background-color: var(--color-violet-20);
  flex: 0 1 336px;
  height: 1px;
  margin-left: calc(var(--spacing) * 10);
  min-width: 0;
  position: relative;
}

.slider__thumb {
  background-color: var(--color-violet-100);
  height: 2px;
  left: 0;
  position: absolute;
  top: -1px;
  transition: transform 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  width: 84px;
}

.image-slider {
  --strip-ratio: 0.589;
  --strip-ratio-active: 0.623;
  --strip-gap: calc(var(--spacing) * 6);
}

.image-slider__viewport {
  margin-inline: calc(var(--spacing-gutter) * -1);
  overflow: hidden;
  padding-inline: var(--spacing-gutter);
}

.image-slider__viewport:focus-visible {
  border-radius: var(--radius-focus);
  outline: 2px solid var(--color-violet-100);
  outline-offset: 4px;
}

.image-slider__track {
  align-items: center;
  display: flex;
  gap: var(--strip-gap);
  height: 100%;
  list-style: none;
  margin: 0;
  padding: 0;
}

.image-slider__slide {
  flex: none;
  min-width: 0;
}

.image-slider__image {
  aspect-ratio: 4 / 3;
  border-radius: var(--radius-card-lg);
  display: block;
  object-fit: cover;
  transform: scale(var(--strip-scale, 0.945));
  transition: transform 0.5s cubic-bezier(0.3, 0, 0.3, 1);
}

.image-slider__slide.is-active .image-slider__image {
  transform: none;
}

.image-slider__caption {
  font-size: var(--text-small);
  line-height: var(--text-small--line-height);
  margin: calc(var(--spacing) * 4) 0 0;
}

@media (max-width: 767px) {
  .slider__track {
    gap: calc(var(--spacing) * 4);
    margin-inline: calc(var(--spacing-gutter-mobile) * -1);
    padding-inline: var(--spacing-gutter-mobile);
  }

  .image-slider {
    --strip-ratio: 0.63;
    --strip-ratio-active: 0.717;
    --strip-gap: calc(var(--spacing) * 4);
  }

  .image-slider__viewport {
    margin-inline: calc(var(--spacing-gutter-mobile) * -1);
    padding-inline: var(--spacing-gutter-mobile);
  }

  .image-slider__image {
    border-radius: var(--radius-card);
  }

  .slider__controls {
    justify-content: center;
    margin-top: calc(var(--spacing) * 6);
  }

  .slider__controls .button--round {
    display: none;
  }

  .slider__progress {
    height: 2px;
    margin-left: 0;
    width: 176px;
  }

  .slider__thumb {
    height: 4px;
    width: 44px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .image-slider__image {
    transition-duration: 0.01ms;
  }
}
.disclosure__title,
.download-list__title {
  margin-bottom: calc(var(--spacing) * 10);
}

.disclosure,
.download-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.disclosure__item,
.download-list__item {
  border-bottom: 1px solid var(--color-black-20);
  padding-bottom: calc(var(--spacing) * 6);
  transition: border-color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.disclosure__item + .disclosure__item,
.download-list__item:not([hidden]) ~ .download-list__item:not([hidden]) {
  margin-top: calc(var(--spacing) * 6);
}

.download-list__item[hidden] {
  display: none;
}

.downloads .download-list__filters {
  margin-bottom: calc(var(--spacing) * 8);
}

.job-list__meta {
  text-transform: none;
}

.job-list__empty {
  margin: 0;
}

.disclosure__item.is-open,
.download-list__item:hover,
.download-list__item:focus-within {
  border-bottom-color: var(--color-violet-100);
}

.disclosure__trigger,
.disclosure__trigger:hover,
.disclosure__trigger:focus {
  align-items: center;
  background: none;
  border: 0;
  border-radius: 0;
  color: var(--color-black-100);
  cursor: pointer;
  display: flex;
  font-family: var(--font-body);
  font-size: var(--text-lead);
  font-weight: 700;
  gap: calc(var(--spacing) * 10);
  justify-content: space-between;
  line-height: 1.4;
  margin: 0;
  padding: 0;
  text-align: left;
  transition: color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  width: 100%;
}

.disclosure__trigger:hover,
.disclosure__trigger:focus-visible,
.disclosure__item.is-open .disclosure__trigger {
  color: var(--color-violet-100);
}

.disclosure__trigger:focus-visible {
  border-radius: var(--radius-focus);
  outline: 2px solid var(--color-violet-100);
  outline-offset: 4px;
}

.disclosure__marker,
.download-list__marker {
  align-items: center;
  border: 1.5px solid var(--color-violet-100);
  border-radius: var(--radius-pill);
  color: var(--color-violet-100);
  display: inline-flex;
  flex: none;
  height: calc(var(--spacing) * 10);
  justify-content: center;
  transition:
    background-color 0.3s cubic-bezier(0.3, 0, 0.3, 1),
    color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  width: calc(var(--spacing) * 10);
}

.disclosure__marker .icon,
.download-list__marker .icon {
  height: calc(var(--spacing) * 6);
  transition: transform 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  width: calc(var(--spacing) * 6);
}

.disclosure__trigger:hover .disclosure__marker,
.disclosure__trigger:focus-visible .disclosure__marker,
.disclosure__item.is-open .disclosure__marker,
.download-list__link:hover .download-list__marker,
.download-list__link:focus-visible .download-list__marker {
  background-color: var(--color-violet-100);
  color: var(--color-white);
}

.disclosure__item.is-open .disclosure__marker .icon {
  transform: rotate(45deg);
}

.disclosure__panel {
  padding-top: calc(var(--spacing) * 6);
}

.disclosure__panel[hidden] {
  display: none;
}

.disclosure__panel > :last-child {
  margin-bottom: 0;
}

.download-list__link {
  align-items: center;
  color: var(--color-black-100);
  display: flex;
  gap: calc(var(--spacing) * 6);
  text-decoration: none;
  transition: color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.download-list__link:hover,
.download-list__link:focus-visible {
  color: var(--color-violet-100);
}

.download-list__link:focus-visible {
  border-radius: var(--radius-focus);
  outline: 2px solid var(--color-violet-100);
  outline-offset: 4px;
}

.download-list__label {
  flex: 1;
  font-size: var(--text-lead);
  font-weight: 700;
  line-height: 1.4;
}

.download-list__meta {
  color: var(--color-black-60);
  flex: none;
  font-size: var(--text-small);
  line-height: var(--text-small--line-height);
  text-transform: uppercase;
}

.disclosure__more,
.download-list__more {
  margin-top: calc(var(--spacing) * 10);
}

@media (max-width: 767px) {
  .disclosure__title,
  .download-list__title {
    margin-bottom: calc(var(--spacing) * 6);
  }

  .disclosure__item,
  .download-list__item {
    padding-bottom: calc(var(--spacing) * 4);
  }

  .disclosure__item + .disclosure__item,
  .download-list__item:not([hidden]) ~ .download-list__item:not([hidden]) {
    margin-top: calc(var(--spacing) * 4);
  }

  .downloads .download-list__filters {
    margin-bottom: calc(var(--spacing) * 6);
  }

  .disclosure__trigger,
  .download-list__link {
    gap: calc(var(--spacing) * 4);
  }

  .download-list__link {
    align-items: flex-start;
    column-gap: calc(var(--spacing) * 4);
    flex-wrap: wrap;
    row-gap: calc(var(--spacing) * 2);
  }

  .download-list__label {
    flex: 1 1 auto;
    min-width: 0;
    order: 1;
  }

  .download-list__marker {
    order: 2;
  }

  .download-list__meta {
    flex: 1 0 100%;
    order: 3;
  }

  .disclosure__panel {
    padding-top: calc(var(--spacing) * 4);
  }
}
.teaser-grid {
  display: grid;
  gap: calc(var(--spacing) * 6);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

.teaser-section__title {
  margin-bottom: calc(var(--spacing) * 10);
}

.teaser-section__more {
  margin-top: calc(var(--spacing) * 10);
}

.slider__controls.teaser-slider__controls {
  display: none;
}

.blog-teaser {
  aspect-ratio: 456 / 608;
  border-radius: var(--radius-card-lg);
  display: flex;
  flex-direction: column;
  isolation: isolate;
  justify-content: flex-end;
  overflow: hidden;
  padding: calc(var(--spacing) * 10);
  position: relative;
}

.blog-teaser__image {
  height: 100%;
  inset: 0;
  object-fit: cover;
  position: absolute;
  transition: transform 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  width: 100%;
  z-index: -2;
}

.blog-teaser::before,
.blog-teaser::after {
  content: '';
  inset: 0;
  position: absolute;
  transition: opacity 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  z-index: -1;
}

.blog-teaser::before {
  background: var(--gradient-image-overlay);
}

.blog-teaser::after {
  background: var(--gradient-image-overlay-strong);
  opacity: 0;
}

.blog-teaser__category {
  color: var(--color-white);
  font-size: var(--text-small);
  line-height: var(--text-small--line-height);
  margin: 0 0 calc(var(--spacing) * 2);
}

.blog-teaser__title,
.blog-teaser__category + .blog-teaser__title {
  color: var(--color-white);
  font-family: var(--font-heading);
  font-size: var(--text-h3-mobile);
  font-weight: 400;
  line-height: 1.1;
  margin: 0;
}

.blog-teaser__link::after {
  content: '';
  inset: 0;
  position: absolute;
  z-index: 1;
}

.blog-teaser__link,
.blog-teaser__link:hover,
.blog-teaser__link:focus,
.blog-teaser__link:active {
  color: inherit;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  text-decoration: none;
}

.blog-teaser__marker {
  margin-top: calc(var(--spacing) * 4);
}

.blog-teaser .button.button--round.button--negative.blog-teaser__marker:hover {
  background-color: transparent;
  border-color: var(--color-white);
  color: var(--color-white);
}

.blog-teaser__body {
  transition: transform 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

@media (min-width: 768px) and (hover: hover) {
  .blog-teaser__body {
    transform: translateY(calc(var(--spacing) * 10));
  }

  .blog-teaser__marker {
    opacity: 0;
    transition: opacity 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  }

  .blog-teaser:hover .blog-teaser__body,
  .blog-teaser:focus-within .blog-teaser__body {
    transform: none;
  }

  .blog-teaser:hover .blog-teaser__marker,
  .blog-teaser:focus-within .blog-teaser__marker {
    opacity: 1;
  }
}

.blog-teaser:hover .blog-teaser__image,
.blog-teaser:focus-within .blog-teaser__image {
  transform: scale(1.05);
}

.blog-teaser:hover::before,
.blog-teaser:focus-within::before {
  opacity: 0;
}

.blog-teaser:hover::after,
.blog-teaser:focus-within::after {
  opacity: 1;
}

.blog-teaser:focus-within {
  outline: 2px solid var(--color-violet-100);
  outline-offset: 4px;
}

.contact-teaser {
  display: grid;
  gap: calc(var(--spacing) * 6);
  grid-template-columns: repeat(12, minmax(0, 1fr));
}

.contact-teaser__image {
  aspect-ratio: 3 / 4;
  border-radius: var(--radius-card-lg);
  grid-column: 1 / span 4;
  height: auto;
  object-fit: cover;
  width: 100%;
}

.contact-teaser__body {
  grid-column: 6 / -1;
  padding-top: calc(var(--spacing) * 20);
}

.contact-teaser__name {
  font-size: var(--text-lead);
  font-weight: 700;
  line-height: 1.4;
  margin: calc(var(--spacing) * 4) 0 0;
}

.contact-teaser__role {
  margin: 0;
}

.contact-teaser__actions {
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--spacing) * 4);
  margin-top: calc(var(--spacing) * 10);
}

.contact-banner {
  background-color: var(--color-yellow-100);
  overflow: hidden;
  padding-block: 120px;
  position: relative;
}

.contact-banner__line {
  left: 50%;
  max-width: none;
  opacity: 0.45;
  pointer-events: none;
  position: absolute;
  transform: translateX(-50%);
  width: 1728px;
}

.contact-banner__line path {
  stroke: var(--color-white);
}

.contact-banner__line--a {
  top: -20px;
}

.contact-banner__line--b {
  top: 309px;
}

.contact-banner__inner {
  align-items: center;
  display: grid;
  gap: calc(var(--spacing) * 6);
  grid-template-columns: repeat(12, minmax(0, 1fr));
  position: relative;
}

.contact-banner__icon {
  color: var(--color-violet-100);
  grid-column: 1 / span 3;
  height: auto;
  max-height: 170px;
  max-width: 170px;
  width: 100%;
}

.contact-banner__body {
  grid-column: 5 / -1;
}

@media (min-width: 768px) {
  .contact-banner__icon {
    align-self: start;
    justify-self: center;
    margin-top: -35px;
  }
}

.contact-banner__text {
  font-size: var(--text-lead);
  font-weight: 700;
  line-height: 1.4;
  margin: calc(var(--spacing) * 4) 0 calc(var(--spacing) * 10);
}

.link-teaser {
  position: relative;
}

.link-teaser__image {
  aspect-ratio: 1416 / 796;
  border-radius: var(--radius-card-lg);
  display: block;
  height: auto;
  object-fit: cover;
  width: 100%;
}

.link-teaser__card {
  background-color: var(--color-yellow-100);
  border-radius: var(--radius-card-lg);
  bottom: calc(var(--spacing) * 10);
  left: calc(var(--spacing) * 10);
  padding: calc(var(--spacing) * 10);
  position: absolute;
  width: 456px;
}

.link-teaser__title {
  font-size: var(--text-h3);
  margin-bottom: calc(var(--spacing) * 4);
}

.link-teaser__text {
  font-weight: 700;
  margin: 0 0 calc(var(--spacing) * 10);
}

.teaser-grid > li {
  display: flex;
}

.teaser-grid > li > * {
  width: 100%;
}

.offer-teaser {
  background-color: var(--color-violet-100);
  border-radius: var(--radius-card-lg);
  color: var(--color-white);
  display: flex;
  flex-direction: column;
  padding: calc(var(--spacing) * 10);
}

.offer-teaser--muted {
  background-color: var(--color-black-80);
  color: var(--color-black-40);
}

.offer-teaser__name {
  color: var(--color-yellow-100);
  font-family: var(--font-heading);
  font-size: var(--text-h3);
  font-weight: 400;
  line-height: 1.1;
  margin: 0 0 calc(var(--spacing) * 10);
  min-height: 2.2em;
}

.offer-teaser--muted .offer-teaser__name {
  color: var(--color-black-40);
}

.offer-teaser__hint {
  font-family: var(--font-body);
  font-size: var(--text-small);
  font-weight: 700;
}

.offer-teaser__price-block {
  border-bottom: 1px solid var(--color-violet-80);
  padding-bottom: calc(var(--spacing) * 4);
}

.offer-teaser__price {
  font-family: var(--font-heading);
  font-size: var(--text-h2);
  font-weight: 400;
  line-height: 1.1;
  margin: 0 0 calc(var(--spacing) * 2);
}

.offer-teaser__unit {
  font-weight: 700;
  margin: 0;
}

.offer-teaser__features {
  border-bottom: 1px solid var(--color-violet-80);
  list-style: none;
  margin: calc(var(--spacing) * 4) 0 0;
  min-height: calc(var(--spacing) * 24 + var(--spacing) * 4 + 1px);
  padding: 0 0 calc(var(--spacing) * 4);
}

.offer-teaser__features li {
  align-items: center;
  display: flex;
  gap: calc(var(--spacing) * 4);
}

.offer-teaser__features li + li {
  margin-top: calc(var(--spacing) * 4);
}

.offer-teaser__icon {
  color: inherit;
  flex: none;
  height: calc(var(--spacing) * 10);
  width: calc(var(--spacing) * 10);
}

.offer-teaser--muted .offer-teaser__price-block,
.offer-teaser--muted .offer-teaser__features {
  border-bottom-color: var(--color-black-60);
}

.offer-teaser__more {
  color: inherit;
  display: inline-block;
  margin-top: calc(var(--spacing) * 10);
  text-decoration: underline;
  text-underline-offset: 4px;
}


.offer-teaser__more:hover,
.offer-teaser__more:focus-visible {
  color: inherit;
  text-decoration: none;
}

.offer-teaser__cta {
  margin-top: auto;
  padding-top: calc(var(--spacing) * 10);
}

.offer-teaser__cta .button {
  width: auto;
}

@media (min-width: 768px) and (max-width: 1099px) {
  .teaser-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .teaser-grid--offers > li:last-child:nth-child(odd) {
    grid-column: 1 / -1;
  }

  .offer-teaser__name,
  .link-teaser__title {
    font-size: var(--text-h3-mobile);
  }
}

@media (max-width: 767px) {
  .teaser-grid {
    display: flex;
    margin-inline: calc(var(--spacing-gutter-mobile) * -1);
    overflow-x: auto;
    padding-inline: var(--spacing-gutter-mobile);
    scroll-snap-type: x mandatory;
    scrollbar-width: none;
  }

  .teaser-grid::-webkit-scrollbar {
    display: none;
  }

  .teaser-grid > li {
    flex: none;
    scroll-snap-align: start;
    width: 88%;
  }

  .teaser-slider__viewport {
    margin-inline: calc(var(--spacing-gutter-mobile) * -1);
    overflow: hidden;
    padding-inline: var(--spacing-gutter-mobile);
  }

  .teaser-slider__viewport:focus-visible {
    border-radius: var(--radius-focus);
    outline: 2px solid var(--color-violet-100);
    outline-offset: 4px;
  }

  .teaser-slider .teaser-grid {
    margin-inline: 0;
    overflow-x: visible;
    padding-inline: 0;
    scroll-snap-type: none;
  }

  .slider__controls.teaser-slider__controls {
    display: flex;
  }

  .contact-teaser {
    display: flex;
    flex-direction: column;
  }

  .contact-teaser__body {
    padding-top: 0;
  }

  .contact-banner {
    padding-block: calc(var(--spacing) * 20);
  }

  .contact-banner__inner {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
  }

  .contact-banner__icon {
    width: 160px;
  }

  .link-teaser__image {
    aspect-ratio: 3 / 4;
  }

  .link-teaser__card {
    border-radius: var(--radius-card);
    inset: auto;
    margin: calc(var(--spacing) * -40) calc(var(--spacing) * 4) 0;
    padding: calc(var(--spacing) * 6);
    position: relative;
    width: auto;
    z-index: 1;
  }

  .offer-teaser__name,
  .link-teaser__title {
    font-size: var(--text-h3-mobile);
  }

  .link-teaser .link-teaser__card .button {
    max-width: 100%;
    white-space: normal;
  }

  .offer-teaser__price {
    font-size: var(--text-h2-mobile);
  }
}

@media (prefers-reduced-motion: reduce) {
  .blog-teaser::before,
  .blog-teaser::after,
  .blog-teaser__body,
  .blog-teaser__image,
  .blog-teaser__marker {
    transition-duration: 0.01ms;
  }
}
.filter-pill {
  background-color: var(--color-white);
  border: 1px solid var(--color-dark-grey-40);
  border-radius: var(--radius-pill);
  color: var(--color-black-100);
  cursor: pointer;
  display: inline-flex;
  font-size: var(--text-small);
  font-weight: 700;
  line-height: var(--text-small--line-height);
  padding: 12px calc(var(--spacing) * 4) 8px;
  position: relative;
  transition:
    background-color 0.3s cubic-bezier(0.3, 0, 0.3, 1),
    border-color 0.3s cubic-bezier(0.3, 0, 0.3, 1),
    color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.filter-pill input[type='radio'],
.filter-pill input[type='checkbox'] {
  appearance: none;
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.filter-pill:hover,
.filter-pill:has(input:focus-visible) {
  border-color: var(--color-black-100);
}

.filter-pill:has(input:focus-visible) {
  outline: 2px solid var(--color-violet-100);
  outline-offset: 2px;
}

.filter-pill.is-active,
.filter-pill:has(input:checked) {
  background-color: var(--color-black-100);
  border-color: var(--color-black-100);
  color: var(--color-white);
}

.filter-group {
  align-items: center;
  border: 0;
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--spacing) * 4);
  margin: 0;
  min-width: 0;
  padding: 0;
}

.filter-group__legend {
  float: left;
  font-weight: 700;
  margin-right: calc(var(--spacing) * 2);
  padding: 0;
}

.share {
  align-items: center;
  display: inline-flex;
  gap: calc(var(--spacing) * 4);
}

.share__label {
  font-size: var(--text-small);
  font-weight: 700;
  line-height: var(--text-small--line-height);
  transition: opacity 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.share.is-open .share__label {
  display: none;
}

.share__actions {
  display: flex;
  gap: calc(var(--spacing) * 4);
}

.share__actions[hidden] {
  display: none;
}
/* Menu and simple menu */

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

/* Horizontal menu */

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

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

/* Vertical menu */

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

/* Flyouts */

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

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

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

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

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

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

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

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

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

.hs_cos_wrapper_type_cta img,
.hs_cos_wrapper_type_logo img,
.hs_cos_wrapper_type_rich_text img {
  height: auto;
  max-width: 100%;
}
.quote {
  margin: 0 auto;
  max-width: var(--container-page);
  overflow: hidden;
  position: relative;
}

.quote--plain {
  padding-top: 20px;
}

.quote__line {
  height: auto;
  left: calc(50% - 898px);
  max-width: none;
  pointer-events: none;
  position: absolute;
  top: calc(50% - 144px);
  width: 1956px;
}

.quote--plain .quote__line {
  left: calc(50% - 900px);
  top: 0;
  width: 1827px;
}

.quote__inner {
  align-items: center;
  display: grid;
  gap: calc(var(--spacing) * 6);
  grid-template-columns: repeat(12, minmax(0, 1fr));
  position: relative;
}

.quote__image {
  aspect-ratio: 3 / 4;
  border-radius: var(--radius-card-lg);
  grid-column: 1 / span 3;
  height: auto;
  max-height: var(--quote-image-max, 448px);
  object-fit: cover;
  width: 100%;
}

.quote__body {
  border: 0;
  grid-column: 5 / span 6;
  margin: 0;
  padding: 0;
  text-align: center;
}

.quote--plain .quote__body {
  grid-column: 3 / span 8;
}

.quote__text {
  color: var(--color-violet-100);
  font-family: var(--font-heading);
  font-size: var(--text-h2);
  font-weight: 400;
  line-height: var(--text-h2--line-height);
  margin: 0 0 calc(var(--spacing) * 6);
  quotes: '«' '»';
}

.quote--plain .quote__text {
  font-size: var(--text-h1);
}

.quote__text::before {
  content: open-quote;
}

.quote__text::after {
  content: close-quote;
}

.quote__author {
  font-weight: 700;
  margin: 0;
}

@media (min-width: 1100px) {
  .quote:not(.quote--plain) {
    align-content: center;
    display: grid;
    min-height: 400px;
  }
}

@media (max-width: 1099px) {
  .quote--plain {
    padding-top: 0;
  }

  .quote:not(.quote--plain) {
    min-height: calc(258px + max(114px, 20.44vw + 37.4px));
  }

  .quote--plain {
    min-height: calc(53px + max(128px, 15.62vw + 6px));
  }

  .quote__line {
    left: calc(50% + 32.5px - max(279px, 50vw + 91.5px));
    top: calc(234px - max(114px, 20.44vw + 37.4px));
    width: max(558px, 100vw + 183px);
  }

  .quote--plain .quote__line {
    left: calc(50% - max(411px, 50vw + 20px));
    top: 23px;
    width: max(822px, 100vw + 40px);
  }

  .quote__inner {
    gap: calc(var(--spacing) * 6);
    grid-template-columns: minmax(0, 1fr);
  }

  .quote__image {
    border-radius: var(--radius-card);
    grid-column: 1;
    justify-self: center;
    width: 208px;
  }

  .quote__body,
  .quote--plain .quote__body {
    grid-column: 1;
  }

  .quote__text {
    font-size: var(--text-h2-mobile);
    hyphens: auto;
    margin-bottom: calc(var(--spacing) * 4);
  }

  .quote--plain .quote__text {
    font-size: var(--text-h1-mobile);
  }
}

@media (min-width: 768px) and (max-width: 1099px) {
  .quote .decor-line.decor-line--desktop {
    display: none;
  }

  .quote .decor-line.decor-line--mobile {
    display: block;
  }
}
.pagination {
  align-items: center;
  display: flex;
  gap: calc(var(--spacing) * 4);
  justify-content: center;
}

.pagination > .button {
  flex: none;
}

.pagination__list {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--spacing) * 2);
  justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0;
}

.pagination__link,
.pagination__ellipsis {
  align-items: center;
  background-color: transparent;
  border: 1.5px solid var(--color-violet-100);
  border-radius: var(--radius-pill);
  color: var(--color-violet-100);
  display: inline-flex;
  font-size: var(--text-body);
  height: calc(var(--spacing) * 10);
  justify-content: center;
  line-height: var(--text-body--line-height);
  min-width: calc(var(--spacing) * 10);
  padding: 0 calc(var(--spacing) * 2);
  text-decoration: none;
}

.pagination__link {
  cursor: pointer;
  font-family: var(--font-body);
  font-weight: 400;
  text-transform: none;
  transition: background-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), border-color 0.3s cubic-bezier(0.3, 0, 0.3, 1), color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.pagination__link:hover,
.pagination__link:focus-visible,
.pagination__link[aria-current="page"] {
  background-color: var(--color-violet-100);
  color: var(--color-white);
}

.pagination--negative .pagination__link,
.pagination--negative .pagination__ellipsis {
  border-color: var(--color-white);
  color: var(--color-white);
}

.pagination--negative .pagination__link:hover,
.pagination--negative .pagination__link:focus-visible,
.pagination--negative .pagination__link[aria-current="page"] {
  background-color: var(--color-white);
  color: var(--color-violet-100);
}

@media (max-width: 767px) {
  .pagination {
    gap: calc(var(--spacing) * 2);
  }

  .pagination > .button.button--round {
    height: calc(var(--spacing) * 8);
    width: calc(var(--spacing) * 8);
  }

  .pagination > .button.button--round .icon {
    height: calc(var(--spacing) * 5);
    width: calc(var(--spacing) * 5);
  }

  .pagination__list {
    flex-wrap: nowrap;
    gap: var(--spacing);
    max-width: 100%;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .pagination__list::-webkit-scrollbar {
    display: none;
  }

  .pagination__link,
  .pagination__ellipsis {
    font-size: var(--text-small);
    height: calc(var(--spacing) * 8);
    line-height: var(--text-small--line-height);
    min-width: calc(var(--spacing) * 8);
    padding: 0 var(--spacing);
  }
}
.tooltip {
  display: inline-flex;
  position: relative;
  vertical-align: middle;
}

.tooltip .tooltip__trigger,
.tooltip .tooltip__trigger:hover,
.tooltip .tooltip__trigger:focus,
.tooltip .tooltip__trigger:active {
  align-items: center;
  background: none;
  border: 0;
  border-radius: var(--radius-pill);
  box-shadow: none;
  color: var(--color-black-100);
  cursor: pointer;
  display: inline-flex;
  font-size: 0;
  height: calc(var(--spacing) * 6);
  justify-content: center;
  line-height: 1;
  margin: 0;
  min-height: 0;
  min-width: 0;
  padding: 0;
  text-decoration: none;
  transform: none;
  transition: color 0.3s ease;
  width: calc(var(--spacing) * 6);
}

.tooltip .tooltip__trigger svg {
  display: block;
  height: calc(var(--spacing) * 6);
  width: calc(var(--spacing) * 6);
}

.tooltip .tooltip__trigger:hover,
.tooltip .tooltip__trigger:focus-visible,
.tooltip.is-open .tooltip__trigger {
  color: var(--color-violet-100);
}

.tooltip .tooltip__trigger:focus-visible {
  border-radius: var(--radius-focus);
  outline: 2px solid var(--color-violet-100);
  outline-offset: 2px;
}

.tooltip__content {
  background-color: var(--color-black-100);
  border-radius: var(--radius-tooltip);
  color: var(--color-white);
  font-family: var(--font-body);
  font-size: var(--text-small);
  font-weight: 400;
  left: 0;
  line-height: var(--text-small--line-height);
  max-width: 228px;
  opacity: 0;
  padding: calc(var(--spacing) * 4) calc(var(--spacing) * 4) calc(var(--spacing) * 3);
  pointer-events: none;
  position: absolute;
  text-align: left;
  text-transform: none;
  top: 0;
  transform: translate(var(--tooltip-dx, 0), var(--tooltip-dy, calc(var(--spacing) * 1)));
  transition:
    opacity 0.3s ease,
    transform 0.3s ease,
    visibility 0s linear 0.3s;
  visibility: hidden;
  width: max-content;
  z-index: 30;
}

.tooltip[data-tooltip-side='bottom'] .tooltip__content {
  --tooltip-dy: calc(var(--spacing) * -1);
}

.tooltip[data-tooltip-side='left'] .tooltip__content {
  --tooltip-dx: calc(var(--spacing) * 1);
  --tooltip-dy: 0;
}

.tooltip[data-tooltip-side='right'] .tooltip__content {
  --tooltip-dx: calc(var(--spacing) * -1);
  --tooltip-dy: 0;
}

.tooltip__arrow {
  background-color: inherit;
  height: calc(var(--spacing) * 3);
  pointer-events: none;
  position: absolute;
  transform: rotate(45deg);
  width: calc(var(--spacing) * 3);
}

.tooltip[data-tooltip-side='top'] .tooltip__arrow {
  bottom: calc(var(--spacing) * -3);
}

.tooltip[data-tooltip-side='bottom'] .tooltip__arrow {
  top: calc(var(--spacing) * -3);
}

.tooltip[data-tooltip-side='left'] .tooltip__arrow {
  right: calc(var(--spacing) * -3);
}

.tooltip[data-tooltip-side='right'] .tooltip__arrow {
  left: calc(var(--spacing) * -3);
}

.tooltip.is-open .tooltip__content {
  opacity: 1;
  transform: translate(0, 0);
  transition-delay: 0s;
  visibility: visible;
}

.tooltip.tooltip--negative .tooltip__trigger,
.tooltip.tooltip--negative .tooltip__trigger:hover,
.tooltip.tooltip--negative .tooltip__trigger:focus,
.tooltip.tooltip--negative .tooltip__trigger:active {
  color: var(--color-white);
}

.tooltip.tooltip--negative .tooltip__trigger:hover,
.tooltip.tooltip--negative .tooltip__trigger:focus-visible,
.tooltip.tooltip--negative.is-open .tooltip__trigger {
  color: var(--color-yellow-100);
}

.tooltip.tooltip--negative .tooltip__content {
  background-color: var(--color-white);
  color: var(--color-black-100);
}

@media (prefers-reduced-motion: reduce) {
  .tooltip__trigger,
  .tooltip__content {
    transition: none;
  }
}
.module-notice {
  display: none;
}

.hs-inline-edit .module-notice {
  display: block;
}

.module-notice__box {
  background-color: var(--color-violet-20);
  border: 1px dashed var(--color-violet-60);
  border-radius: var(--radius);
  color: var(--color-violet-100);
  font-family: var(--font-body);
  padding: var(--space-4);
  text-align: center;
}

.module-notice__title {
  font-size: var(--text-body);
  font-weight: 700;
  line-height: var(--line-height-body);
  margin: 0;
}

.module-notice__text {
  font-size: var(--text-small);
  line-height: var(--line-height-body);
  margin: var(--space-1) 0 0;
}

.module-notice__hint {
  font-size: var(--text-small);
  line-height: var(--line-height-body);
  margin: var(--space-1) 0 0;
  opacity: 0.7;
}
.decor-line path {
  stroke-dasharray: 1;
}

.decor-line--ltr {
  mask-image: var(--decor-fade-ltr, none);
}

.decor-line--rtl {
  mask-image: var(--decor-fade-rtl, none);
}

.decor-line.decor-line--mobile {
  display: none;
}

.js .decor-line--ltr path {
  stroke-dashoffset: 1;
}

.js .decor-line--rtl path {
  stroke-dashoffset: -1;
}

.js .decor-line.is-drawn path {
  stroke-dashoffset: 0;
  transition: stroke-dashoffset 2.2s cubic-bezier(0.25, 0.1, 0.25, 1);
}

.js .decor-line--rtl.is-drawn path {
  transition-delay: 0.25s;
}

@media (max-width: 767px) {
  .decor-line.decor-line--desktop {
    display: none;
  }

  .decor-line.decor-line--mobile {
    display: block;
  }

  .benefits__line,
  .site-footer__line,
  .contact-banner__line {
    --decor-stroke-factor: 0.6;
  }
}

@media (prefers-reduced-motion: reduce) {
  .js .decor-line path,
  .js .decor-line.is-drawn path {
    stroke-dashoffset: 0;
    transition: none;
  }
}
.outages__title {
  margin-bottom: calc(var(--spacing) * 10);
}

.outages__list {
  display: grid;
  gap: calc(var(--spacing) * 6);
  list-style: none;
  margin: 0;
  padding: 0;
}

.outage {
  --outage-tone: var(--color-info-100);
  --outage-tint: var(--color-info-40);

  border: 1px solid var(--color-black-20);
  border-left: 8px solid var(--outage-tone);
  border-radius: var(--radius-card);
  padding: calc(var(--spacing) * 8);
}

.outage--active {
  --outage-tone: var(--color-warning-100);
  --outage-tint: var(--color-warning-20);
}

.outage--resolved {
  --outage-tone: var(--color-confirmation-100);
  --outage-tint: var(--color-confirmation-20);
}

.outage__head {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--spacing) * 3);
  margin-bottom: calc(var(--spacing) * 4);
}

.outage__status {
  background-color: var(--outage-tint);
  border-radius: var(--radius-pill);
  color: var(--outage-tone);
  font-size: var(--text-small);
  font-weight: 700;
  line-height: var(--text-small--line-height);
  padding: calc(var(--spacing) * 1.5) calc(var(--spacing) * 4) var(--spacing);
}

.outage__type {
  color: var(--color-black-80);
  font-size: var(--text-small);
}

.outage__title {
  font-size: var(--text-h4);
  margin: 0 0 calc(var(--spacing) * 4);
}

.outage__meta {
  display: grid;
  gap: calc(var(--spacing) * 3) calc(var(--spacing) * 8);
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  margin: 0 0 calc(var(--spacing) * 4);
}

.outage__meta dt {
  color: var(--color-black-80);
  font-size: var(--text-small);
  line-height: var(--text-small--line-height);
}

.outage__meta dd {
  font-weight: 700;
  margin: 0;
}

.outage__text > :last-child {
  margin-bottom: 0;
}

.outages__empty {
  color: var(--color-black-80);
}

@media (max-width: 767px) {
  .outages__title {
    margin-bottom: calc(var(--spacing) * 6);
  }

  .outage {
    padding: calc(var(--spacing) * 6) calc(var(--spacing) * 5);
  }

  .outage__title {
    font-size: var(--text-h4-mobile);
  }
}
.data-table td,
.data-table th {
  padding-right: calc(var(--spacing) * 10);
}

.data-table thead th {
  border-bottom-color: var(--color-black-100);
  font-size: var(--text-small);
  font-weight: 700;
  letter-spacing: 0.02em;
  line-height: var(--text-small--line-height);
  padding-top: 0;
  text-transform: uppercase;
}

.data-table tbody td {
  font-weight: 400;
}

.data-table tbody th {
  font-weight: 700;
}

.data-table__image {
  display: block;
  height: auto;
  max-width: 160px;
}
#hs-eu-cookie-confirmation {
  background-color: var(--color-white) !important;
  border-radius: var(--radius-card-lg) !important;
  bottom: calc(var(--spacing) * 6) !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.22), 0 0 30px rgba(0, 0, 0, 0.08) !important;
  font-family: var(--font-body) !important;
  left: calc(var(--spacing) * 6) !important;
  max-width: 560px;
  padding: 0 !important;
  right: auto !important;
  top: auto !important;
  width: calc(100% - var(--spacing) * 12) !important;
}

#hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner {
  background-color: transparent !important;
  color: var(--color-black-100) !important;
  max-width: none !important;
  padding: calc(var(--spacing) * 8) calc(var(--spacing) * 8) calc(var(--spacing) * 6) !important;
}

#hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner p,
#hs-eu-cookie-confirmation #hs-eu-policy-wording p {
  color: var(--color-black-100) !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-small) !important;
  line-height: var(--text-small--line-height) !important;
}

#hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner a {
  color: var(--color-violet-100) !important;
}

#hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-buttons-area {
  margin-top: calc(var(--spacing) * 4) !important;
}

#hs-eu-cookie-confirmation #hs-eu-confirmation-button,
#hs-eu-cookie-confirmation #hs-eu-decline-button,
#hs-eu-cookie-confirmation #hs-eu-cookie-settings-button {
  border-radius: var(--radius-pill) !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-small) !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  margin: 0 calc(var(--spacing) * 2) calc(var(--spacing) * 2) 0 !important;
  padding: calc(var(--spacing) * 3.5) calc(var(--spacing) * 6) calc(var(--spacing) * 2.5) !important;
}

#hs-eu-cookie-confirmation #hs-eu-confirmation-button {
  background-color: var(--color-violet-100) !important;
  border: 1px solid var(--color-violet-100) !important;
  color: var(--color-white) !important;
}

#hs-eu-cookie-confirmation #hs-eu-decline-button,
#hs-eu-cookie-confirmation #hs-eu-cookie-settings-button {
  background-color: var(--color-white) !important;
  border: 1px solid var(--color-black-100) !important;
  color: var(--color-black-100) !important;
}

@media (max-width: 767px) {
  #hs-eu-cookie-confirmation {
    bottom: calc(var(--mobile-bar-height) + var(--spacing) * 4) !important;
    left: calc(var(--spacing) * 4) !important;
    width: calc(100% - var(--spacing) * 8) !important;
  }

  #hs-eu-cookie-confirmation #hs-eu-cookie-confirmation-inner {
    padding: calc(var(--spacing) * 6) calc(var(--spacing) * 5) calc(var(--spacing) * 4) !important;
  }
}
.video {
  margin: 0 auto;
  max-width: 936px;
}

.video--wide {
  max-width: none;
}

.video__frame {
  aspect-ratio: 16 / 9;
  background-color: var(--color-black-100);
  border-radius: var(--radius-card-lg);
  overflow: hidden;
  position: relative;
}

.video__poster,
.video__frame iframe {
  display: block;
  height: 100%;
  inset: 0;
  object-fit: cover;
  position: absolute;
  width: 100%;
}

.video__frame iframe {
  border: 0;
}

.video__poster--empty {
  background-color: var(--color-violet-100);
}

.video__play {
  align-items: center;
  background-color: var(--color-violet-100);
  border: 0;
  border-radius: var(--radius-pill);
  color: var(--color-white);
  cursor: pointer;
  display: flex;
  height: 96px;
  justify-content: center;
  left: 50%;
  padding: 0;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: transform 0.3s cubic-bezier(0.3, 0, 0.3, 1), background-color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
  width: 96px;
}

.video__play svg {
  height: 48px;
  width: 48px;
}

.video__play:hover,
.video__play:focus-visible {
  background-color: var(--color-black-100);
  transform: translate(-50%, -50%) scale(1.06);
}

.video__play:focus-visible {
  outline: 3px solid var(--color-yellow-100);
  outline-offset: 3px;
}

.video__consent {
  align-items: center;
  background-color: var(--color-black-100);
  color: var(--color-white);
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 4);
  inset: 0;
  justify-content: center;
  padding: calc(var(--spacing) * 6);
  position: absolute;
  text-align: center;
}

.video__consent[hidden] {
  display: none;
}

.video__consent p {
  margin: 0;
  max-width: 48ch;
}

.video__caption {
  color: var(--color-black-80);
  font-size: var(--text-small);
  line-height: var(--text-small--line-height);
  margin-top: calc(var(--spacing) * 3);
}

.video.is-playing .video__play,
.video.is-playing .video__poster {
  display: none;
}

@media (max-width: 767px) {
  .video__frame {
    border-radius: var(--radius-card);
  }

  .video__play {
    height: 64px;
    width: 64px;
  }

  .video__play svg {
    height: 32px;
    width: 32px;
  }
}
.embed {
  margin: 0 auto;
  max-width: 936px;
}

.embed--wide {
  max-width: none;
}

.embed__frame {
  aspect-ratio: 16 / 9;
  background-color: var(--color-violet-20);
  border-radius: var(--radius-card-lg);
  overflow: hidden;
  position: relative;
}

.embed--4-3 .embed__frame {
  aspect-ratio: 4 / 3;
}

.embed--3-2 .embed__frame {
  aspect-ratio: 3 / 2;
}

.embed--1-1 .embed__frame {
  aspect-ratio: 1;
}

.embed--fixed .embed__frame {
  aspect-ratio: auto;
  height: var(--embed-height, 480px);
}

.embed__frame iframe {
  border: 0;
  display: block;
  height: 100%;
  inset: 0;
  position: absolute;
  width: 100%;
}

.embed__gate {
  align-items: center;
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 4);
  inset: 0;
  justify-content: center;
  padding: calc(var(--spacing) * 6);
  position: absolute;
  text-align: center;
}

.embed__gate p {
  margin: 0;
  max-width: 48ch;
}

.embed__gate [hidden] {
  display: none;
}

.embed.is-loaded .embed__gate {
  display: none;
}

.embed__caption {
  color: var(--color-black-80);
  font-size: var(--text-small);
  line-height: var(--text-small--line-height);
  margin-top: calc(var(--spacing) * 3);
}

@media (max-width: 767px) {
  .embed__frame {
    border-radius: var(--radius-card);
  }
}
.hero__eyebrow {
  color: var(--color-black-80);
  font-size: var(--text-lead);
  font-weight: 700;
  line-height: 1.4;
  margin: 0 0 calc(var(--spacing) * 2);
}

.hero__tags {
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--spacing) * 2);
  list-style: none;
  margin: calc(var(--spacing) * 6) 0 0;
  padding: 0;
}

.hero__tags .filter-pill {
  text-decoration: none;
}

.blog-listing__filters {
  margin-bottom: calc(var(--spacing) * 10);
}

.blog-listing__filters .filter-pill {
  text-decoration: none;
}

.blog-listing__empty {
  margin: 0;
}

.blog-post__meta {
  align-items: center;
  display: flex;
  gap: calc(var(--spacing) * 6);
  justify-content: space-between;
  margin-bottom: calc(var(--spacing) * 6);
}

.blog-post__author {
  align-items: center;
  display: flex;
  gap: calc(var(--spacing) * 4);
  min-width: 0;
}

.blog-post__avatar {
  border-radius: var(--radius-pill);
  flex: none;
  height: calc(var(--spacing) * 12);
  object-fit: cover;
  width: calc(var(--spacing) * 12);
}

.blog-post__author-text {
  display: flex;
  flex-direction: column;
  font-size: var(--text-small);
  line-height: var(--text-small--line-height);
  margin: 0;
}

.blog-post__author-name {
  font-weight: 700;
}

.blog-post__body {
  margin-top: calc(var(--spacing) * 10);
}

.blog-post__body > :last-child {
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .blog-post__meta {
    align-items: flex-start;
    flex-direction: column;
    gap: calc(var(--spacing) * 4);
  }
}

@media (max-width: 767px) {
  .teaser-grid--list {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    margin-inline: 0;
    overflow: visible;
    padding-inline: 0;
    scroll-snap-type: none;
  }

  .teaser-grid--list > li {
    width: auto;
  }

  .blog-listing__filters,
  .blog-post__meta {
    margin-top: calc(var(--spacing) * 8);
  }
}
.locations {
  margin-bottom: calc(var(--spacing) * 20);
}

.locations__list {
  display: grid;
  gap: calc(var(--spacing) * 6);
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

.locations__card {
  border: 1px solid var(--color-black-20);
  border-radius: var(--radius-card);
  color: var(--color-black-100);
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing) * 2);
  height: 100%;
  padding: calc(var(--spacing) * 8);
  text-decoration: none;
  transition: border-color 0.3s cubic-bezier(0.3, 0, 0.3, 1);
}

.locations__card:hover,
.locations__card:focus-visible {
  border-color: var(--color-violet-100);
}

.locations__region {
  color: var(--color-black-80);
  font-size: var(--text-small);
  margin: 0;
}

.locations__title {
  color: var(--color-violet-100);
  font-size: var(--text-h4);
  margin: 0;
}

.locations__address,
.locations__hours {
  margin: 0;
}

.locations__more {
  color: var(--color-violet-100);
  font-weight: 700;
  margin-top: auto;
  padding-top: calc(var(--spacing) * 4);
}

.location {
  margin-bottom: calc(var(--spacing) * 20);
}

.location__grid {
  display: grid;
  gap: calc(var(--spacing) * 10);
  grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
}

.location__meta {
  display: grid;
  gap: calc(var(--spacing) * 4);
  margin: 0 0 calc(var(--spacing) * 8);
}

.location__meta dt {
  color: var(--color-black-80);
  font-size: var(--text-small);
}

.location__meta dd {
  font-weight: 700;
  margin: 0;
}

.location__map {
  margin-top: calc(var(--spacing) * 10);
}

.location__map-link {
  margin: calc(var(--spacing) * 3) 0 0;
}

.location__back {
  margin: calc(var(--spacing) * 10) 0 0;
}

@media (max-width: 767px) {
  .location__grid {
    grid-template-columns: minmax(0, 1fr);
  }

  .locations__card {
    padding: calc(var(--spacing) * 6) calc(var(--spacing) * 5);
  }
}

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

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

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

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