/* Font loading */

@font-face {
  font-family: 'Inter';
  src: url("https://48202636.fs1.hubspotusercontent-na1.net/hubfs/48202636/raw_assets/public/qtrbk-theme-20260626/fonts/Inter/Inter-18pt-Regular.woff2") format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Inter';
  src: url("https://48202636.fs1.hubspotusercontent-na1.net/hubfs/48202636/raw_assets/public/qtrbk-theme-20260626/fonts/Inter/Inter-18pt-SemiBold.woff2") format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Inter';
  src: url("https://48202636.fs1.hubspotusercontent-na1.net/hubfs/48202636/raw_assets/public/qtrbk-theme-20260626/fonts/Inter/Inter-18pt-Bold.woff2") format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Inter';
  src: url("https://48202636.fs1.hubspotusercontent-na1.net/hubfs/48202636/raw_assets/public/qtrbk-theme-20260626/fonts/Inter/Inter-18pt-ExtraBold.woff2") format('woff2');
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Inter';
  src: url("https://48202636.fs1.hubspotusercontent-na1.net/hubfs/48202636/raw_assets/public/qtrbk-theme-20260626/fonts/Inter/Inter-18pt-Italic.woff2") format('woff2');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'RockwellCondensed';
  src: url("https://48202636.fs1.hubspotusercontent-na1.net/hubfs/48202636/raw_assets/public/qtrbk-theme-20260626/fonts/Rockwell/RockwellCondensed-Bold.woff2") format('woff2');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

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

*, *: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)
*/



/* CSS variables */

:root {
  --column-gap: 2.13%;
  --column-width-multiplier: 8.333;
}

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

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

/* 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: 1rem;
  margin: 0 0 1.4rem;
}

/* Anchors */

a {
  cursor: pointer;
}

/* Headings */

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 1.4rem;
}

/* Lists */

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

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

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 #CCC;
}

/* Image alt text */

img {
  font-size: 0.583rem;
  word-break: normal;
}
button,
.button,
.hs-button {
  cursor: pointer;
  display: inline-block;
  text-align: center;
  transition: all 0.15s linear;
  white-space: normal;
}

button:disabled,
.button:disabled,
.hs-button:disabled {
  background-color: #D0D0D0;
  border-color: #D0D0D0;
  color: #E6E6E6;
}

/* No button */

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

.hs-form-field {
  margin-bottom: 1.4rem;
}

/* Labels */

form label {
  display: block;
  font-size: 0.875rem;
  margin-bottom: 0.35rem;
}

/* Form Title */
.form-title {
  margin-bottom: 0;
}

/* Help text */

form legend {
  font-size: 0.875rem;
}

/* Inputs */

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=file],
form select,
form textarea {
  display: inline-block;
  font-size: 0.875rem;
  padding: 0.7rem;
  width: 100%;
}

form textarea {
  resize: vertical;
}

form fieldset {
  max-width: 100% !important;
}

/* Inputs - checkbox/radio */

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

form .inputs-list > li {
  display: block;
  margin: 0.7rem 0;
}

form .inputs-list input,
form .inputs-list span {
  vertical-align: middle;
}

form input[type=checkbox],
form input[type=radio] {
  cursor: pointer;
  margin-right: 0.35rem;
}

/* Inputs - date picker */

.hs-dateinput {
  position: relative;
}

.hs-dateinput:before {
  content:'\01F4C5';
  position: absolute;
  right: 10%;
  top: 50%;
  transform: translateY(-50%);
}

.fn-date-picker .pika-table thead th {
  color: #FFF;
}

.fn-date-picker td.is-selected .pika-button {
  border-radius: 0;
  box-shadow: none;
}

.fn-date-picker td .pika-button:hover,
.fn-date-picker td .pika-button:focus {
  border-radius: 0 !important;
  color: #FFF;
}

/* Inputs - file picker */

form input[type=file] {
  background-color: transparent;
  border: initial;
  padding: initial;
}

/* Headings and text */

form .hs-richtext,
form .hs-richtext p {
  font-size: 0.875rem;
  margin: 0 0 1.4rem;
}

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

/* GDPR */

.legal-consent-container .hs-form-booleancheckbox-display > span,
.legal-consent-container .hs-form-booleancheckbox-display > span p {
  margin-left: 1rem !important;
}

/* Validation */

.hs-form-required {
  color: #EF6B51;
}

.hs-input.invalid.error {
  border-color: #EF6B51;
}

.hs-error-msg {
  color: #EF6B51;
  margin-top: 0.35rem;
}

/* Submit button */

form input[type=submit],
form .hs-button {
  cursor: pointer;
  display: inline-block;
  text-align: center;
  transition: all 0.15s linear;
  white-space: normal;
}

/* Captcha */

.grecaptcha-badge {
  margin: 0 auto;
}


  /* Search button input field and suggestions */
  .body-container-wrapper .hs-search-field__button {
    padding: 15px;
  }

  .body-container-wrapper .hs-search-field__bar--button-inline .hs-search-field__button {
    margin-left: 6px;
    margin-bottom: 0;
  }

  .body-container-wrapper .hs-search-field__button svg {
    height: 15px;
    fill: #fff;
  }

  .body-container-wrapper .hs-search-field__bar > form > .hs-search-field__input {
    padding: 10px;
  }

  .body-container-wrapper .hs-search-field__suggestions li a {
    color: #494A52;
    padding: 0.35rem 0.7rem;
    text-decoration: none;
    transition: background-color 0.3s;
  }

/* Table */

table {
  border-collapse: collapse;
  margin-bottom: 1.4rem;
  overflow-wrap: break-word;
}

/* Table cells */

td,
th {
  vertical-align: top;
}

/* Table header */

thead th {
  vertical-align: bottom;
}

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

/* Header DND sections */

.header .dnd-section {
  padding: 0;
}

/* Header container */

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

.header__column {
  flex: 1;
  min-width: 0;
  order: 1;
  padding-left: 120px;
}

@media (max-width: 767px) {
  .header__column {
    padding-left: 0;
    margin-right: 1rem;
  }
}

.header__row-1,
.header__row-2 {
  align-items: center;
  display: flex;
  justify-content: center;
  width: 100%;
}

@media (max-width: 1150px) and (min-width: 767px) {
  .header__column {
    width: 100%;
  }
}

@media (max-width: 767px) {
  .header__container {
    padding: 0.5rem 0;
  }

  .header__column {
    position: relative;
  }

  .header__row-2 {
    justify-content: flex-start;
    padding: 1rem 0rem 1rem 0.5rem;
  }
}

/* Navigation skipper */

.header__skip {
  height: 1px;
  left: -1000px;
  overflow: hidden;
  position: absolute;
  text-align: left;
  top: -1000px;
  width: 1px;
}

.header__skip:hover,
.header__skip:focus,
.header__skip:active {
  height: auto;
  left: 0;
  overflow: visible;
  top: 0;
  width: auto;
}

/* Logo */

.header__logo {
  align-items: center;
  display: flex;
  flex-shrink: 0;
  height: auto;
  margin: 20px 20px 20px auto;
  max-width: 80px;
  order: 2;
  overflow: hidden;
}

@media (max-width: 767px) {
  .header__logo {
    width: auto;
  }
}

.header__logo img {
  max-width: 100%;
}

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

.header__logo--main {
  padding-top: 0;
}

/* Search bar */

.header__search {
  padding: 0 1rem;
  width: auto;
}



  .hs-search-field__form {
    position: relative;
  }

  .header__search .hs-search-field__label {
    flex-basis: auto;
  }



.header__search .hs-search-field__input {
  
  height: 45px;
  padding: 0 0.7rem;
}



  .header__search .hs-search-field__button {
    padding: 0;
    fill: #000;
    background-color: transparent;
    border: none;
    padding: 10px;
    position: absolute;
    top: 0;
    right: 0;
  }

  .header__search .hs-search-field__button svg {
    height: 25px;
  }


.header__search .hs-search-field--open .hs-search-field__input {
  border-bottom: none;
  border-radius: 6px 6px 0 0;
  max-width: 100%;
}

.header__search .hs-search-field--open .hs-search-field__suggestions {
  background-color: #FFF;
  border: 2px solid #D1D6DC;
  border-radius: 0 0 6px 6px;
  border-top-width: 1px;
  position: absolute;
  width: 100%;
  z-index: 10;
}

.header__search .hs-search-field__suggestions li {
  border-top: 1px solid #D1D6DC;
  font-size: 0.875rem;
}

.header__search .hs-search-field__suggestions li a {
  color: #494A52;
  padding: 0.35rem 0.7rem;
  text-decoration: none;
  transition: background-color 0.3s;
}

.header__search .hs-search-field__suggestions #results-for {
  display: none;
}

@media (min-width: 767px) {
  .header__search form {
    align-items: center;
    display: flex;
    flex-direction: row;
  }

  .header__search label {
    margin: 0 1rem 0 0;
  }

  .header__search .hs-search-field__input {
    width: auto;
  }
}

@media (max-width: 767px) {
  .header__search {
    border-top: 2px solid #CED4DB;
    order: 1;
    padding: 1.05rem;
  }
}

/* Language switcher */

.header__language-switcher {
  cursor: pointer;
  padding-right: 1.4rem;
}

.header__language-switcher .lang_switcher_class {
  position: static;
}

.header__language-switcher .lang_list_class {
  border: 2px solid;
  border-radius: 3px;
  box-shadow: 0 2px 9px 0 rgba(0, 0, 0, 0.2);
  display: block;
  left: calc(100% - 24px);
  opacity: 0;
  min-width: 100px;
  padding-top: 0;
  text-align: left;
  top: 100%;
  transition: opacity 0.3s;
  visibility: hidden;
}

.header__language-switcher:hover .lang_list_class,
.header__language-switcher:focus .lang_list_class {
  opacity: 1;
  transition: opacity 0.3s;
  visibility: visible;
}

.header__language-switcher .lang_list_class:before {
  left: 70%;
  top: -25px;
}

.header__language-switcher .lang_list_class:after {
  left: 70%;
  top: -22px;
}

.header__language-switcher .lang_list_class.first-active::after {
  top: -22px;
  transition: 0.3s;
}

.header__language-switcher .lang_list_class li {
  border: none;
  font-size: 18px;
  padding: 0.35rem 0.7rem;
}

.header__language-switcher .lang_list_class li:first-child {
  border-radius: 6px 6px 0 0;
  border-top: none;
}

.header__language-switcher .lang_list_class li:last-child {
  border-bottom: none;
  border-radius: 0 0 6px 6px;
}

.header__language-switcher .lang_list_class li:hover {
  transition: background-color 0.3s;
}

.header__language-switcher--label {
  display: flex;
  position: relative;
}

.header__language-switcher--label-current {
  align-items: center;
  display: flex;
  font-size: 0.75rem;
  margin-bottom: 0.175rem;
  margin-left: 0.7rem;
}

.header__language-switcher--label-current:after {
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 6px solid #494A52;
  content: "";
  display: block;
  height: 0px;
  margin-left: 0.7rem;
  margin-top: 0.175rem;
  width: 0px;
}

@media (max-width: 767px) {
  .header__language-switcher {
    border-top: 2px solid #CED4DB;
    padding-left: 1.05rem;
    padding-right: 0;
  }

  .header__language-switcher .lang_list_class {
    border: none;
    box-shadow: unset;
    display: block;
    left: 30px;
    opacity: 1;
    padding: 0 1.05rem;
    top: 0;
    visibility: visible;
  }

  .header__language-switcher .lang_list_class li {
    background-color: inherit;
    font-size: 0.917rem;
  }

  .header__language-switcher--label-current {
    display: none;
  }

  .header__language-switcher .globe_class {
    background-image: none;
  }

  .header__language-switcher .lang_list_class li:hover{
    background-color: inherit;
  }

  .header__language-switcher .lang_list_class:before,
  .header__language-switcher .lang_list_class:after {
    content: none;
  }
    /* V1 lang switcher updates to keep "in line" w/ v0 mobile styles */
    .header__language-switcher .hs-language-switcher__menu {
        display: block;
        box-shadow:none!important;
        background: transparent;
    }
    .header__language-switcher .hs-language-switcher__menu a {
        font-size: 20px!important;
    }
    .header__language-switcher .hs-language-switcher__button {
        display: none;
    }
  }

/* Navigation */

#nav-toggle {
  display: none;
}

/* Mobile toggles */

@media (max-width: 767px) {
  .header__navigation,
  .header__search,
  .header__language-switcher {
    display: none;
    width: 100%;
  }

  .header__navigation.open,
  .header__search.open,
  .header__language-switcher.open {
    background-color: #F8FAFC;
    display: block;
    left: 0;
    min-height: 100%;
    position: absolute;
    right: 0;
    top: 50px;
    z-index: 2;
  }

  body.nav-open .body-container-wrapper,
  body.nav-open .footer {
    filter: blur(4px);
    pointer-events: none;
    transition: filter 0.3s ease;
  }

  .header__navigation--toggle,
  .header__search--toggle,
  .header__language-switcher--toggle,
  .header__close--toggle {
    cursor: pointer;
    margin: 0 8px;
    position: relative;
  }

  .header__navigation--toggle.hide,
  .header__search--toggle.hide,
  .header__language-switcher--toggle.hide {
    display: none;
  }

  .header__navigation--toggle.open,
  .header__search--toggle.open,
  .header__language-switcher--toggle.open {
    display: block;
  }

  .header__navigation--toggle:after,
  .header__search--toggle:after,
  .header__language-switcher--toggle:after {
    display: none;
    font-size: 1.083rem;
    font-weight: 600;
    left: 33px;
    position: absolute;
    text-transform: uppercase;
    top: 50%;
    transform: translateY(-50%);
  }

  .header__navigation--toggle.open:after,
  .header__search--toggle.open:after,
  .header__language-switcher--toggle.open:after {
    display: block;
    word-break: normal;
  }

  .header__navigation--toggle {
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjI0cHgiIHZpZXdCb3g9IjAgMCAyNCAxOSIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4gICAgICAgIDx0aXRsZT5oYW1idXJnZXI8L3RpdGxlPiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4gICAgPGcgaWQ9ImhhbWJ1cmdlciIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+ICAgICAgICA8ZyBpZD0iR3JvdXAiIHN0cm9rZT0iIzQ5NEE1MiIgc3Ryb2tlLXdpZHRoPSIzIj4gICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlIiB4PSIxLjUiIHk9IjEuNSIgd2lkdGg9IjIxIiBoZWlnaHQ9IjEiIHJ4PSIwLjUiPjwvcmVjdD4gICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlLUNvcHktNCIgeD0iMS41IiB5PSI5LjUiIHdpZHRoPSIyMSIgaGVpZ2h0PSIxIiByeD0iMC41Ij48L3JlY3Q+ICAgICAgICAgICAgPHJlY3QgaWQ9IlJlY3RhbmdsZS1Db3B5LTUiIHg9IjEuNSIgeT0iMTcuNSIgd2lkdGg9IjIxIiBoZWlnaHQ9IjEiIHJ4PSIwLjUiPjwvcmVjdD4gICAgICAgIDwvZz4gICAgPC9nPjwvc3ZnPg==);
    background-size: cover;
    height: 25px;
    width: 25px;
  }

  .header__navigation--toggle:after {
    content: "Menu";
  }

  .header__language-switcher--toggle {
    background-image: url(//static.hsappstatic.net/cos-LanguageSwitcher/static-1.1/img/globe.png);
    background-size: cover;
    height: 25px;
    width: 25px;
  }

  .header__language-switcher--toggle:after {
    content: "Language";
  }

  .header__search--toggle {
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjI0cHgiIHZpZXdCb3g9IjAgMCAyNCAyNCIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4gICAgICAgIDx0aXRsZT5TZWFyY2g8L3RpdGxlPiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4gICAgPGRlZnM+ICAgICAgICA8cGF0aCBkPSJNOS4xMzg2MTUzNCwxNS44OTI1Njg1IEM1LjQxMzk1NzQyLDE1Ljg5MjU2ODUgMi4zODM4ODUyNywxMi44NjM0NDc1IDIuMzgzODg1MjcsOS4xMzkwMDM3NiBDMi4zODM4ODUyNyw1LjQxNDU2MDA1IDUuNDEzOTU3NDIsMi4zODM4ODUyNyA5LjEzODYxNTM0LDIuMzgzODg1MjcgQzEyLjg2MzI3MzMsMi4zODM4ODUyNyAxNS44OTI1Njg1LDUuNDE0NTYwMDUgMTUuODkyNTY4NSw5LjEzOTAwMzc2IEMxNS44OTI1Njg1LDEyLjg2MzQ0NzUgMTIuODYzMjczMywxNS44OTI1Njg1IDkuMTM4NjE1MzQsMTUuODkyNTY4NSBNOS4xMzg3NTI0NSwyLjQzMzYwODg3ZS0xMyBDMTQuMTc3OTk1NSwyLjQzMzYwODg3ZS0xMyAxOC4yNzY0NTM3LDQuMTAwMzI0NzEgMTguMjc2NDUzNyw5LjEzOTI3Nzk2IEMxOC4yNzY0NTM3LDExLjIyOTgyMTEgMTcuNTcxMDE2OSwxMy4xNTg0NDM0IDE2LjM4NTYzMTMsMTQuNjk5NjY5NiBMMjMuNjUwODg4MSwyMS45NjUyMjY2IEMyNC4xMTYzNzA2LDIyLjQzMDcwOTIgMjQuMTE2MzcwNiwyMy4xODU0MDU1IDIzLjY1MDg4ODEsMjMuNjUwODg4MSBDMjMuMTg1NDA1NSwyNC4xMTYzNzA2IDIyLjQzMDcwOTIsMjQuMTE2MzcwNiAyMS45NjUyMjY2LDIzLjY1MDg4ODEgTDE0LjY5OTgxMzMsMTYuMzg1NDcxMyBDMTMuMTU4NDQwNSwxNy41NzA5NTA5IDExLjIyOTU3MzgsMTguMjc2NDUzNyA5LjEzODc1MjQ1LDE4LjI3NjQ1MzcgQzQuMDk5NTA5MzgsMTguMjc2NDUzNyAtMy43MzAzNDkzNmUtMTQsMTQuMTc4MjMxMiAtMy43MzAzNDkzNmUtMTQsOS4xMzkyNzc5NiBDLTMuNzMwMzQ5MzZlLTE0LDQuMTAwMzI0NzEgNC4wOTk1MDkzOCwyLjQzMzYwODg3ZS0xMyA5LjEzODc1MjQ1LDIuNDMzNjA4ODdlLTEzIFoiIGlkPSJwYXRoLTEiPjwvcGF0aD4gICAgPC9kZWZzPiAgICA8ZyBpZD0iU2VhcmNoIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4gICAgICAgIDxtYXNrIGlkPSJtYXNrLTIiIGZpbGw9IndoaXRlIj4gICAgICAgICAgICA8dXNlIHhsaW5rOmhyZWY9IiNwYXRoLTEiPjwvdXNlPiAgICAgICAgPC9tYXNrPiAgICAgICAgPHVzZSBpZD0iSWNvbnMvQWN0aW9ucy9TZWFyY2giIGZpbGw9IiM0OTRBNTIiIHhsaW5rOmhyZWY9IiNwYXRoLTEiPjwvdXNlPiAgICA8L2c+PC9zdmc+);
    background-size: cover;
    height: 25px;
    width: 25px;
  }

  .header__search--toggle:after {
    content: "Search";
  }

  .header__close--toggle {
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjE5cHgiIHZpZXdCb3g9IjAgMCAyNCAxOSIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4gICAgICAgIDx0aXRsZT5jbG9zZTwvdGl0bGU+ICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPiAgICA8ZyBpZD0iY2xvc2UiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPiAgICAgICAgPGcgaWQ9Ikdyb3VwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyLjAwMDAwMCwgLTEuMDAwMDAwKSIgc3Ryb2tlPSIjNDk0QTUyIiBzdHJva2Utd2lkdGg9IjMiPiAgICAgICAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwLjAwMDAwMCwgMTAuNTAwMDAwKSByb3RhdGUoLTQ1LjAwMDAwMCkgdHJhbnNsYXRlKC0xMC4wMDAwMDAsIC0xMC41MDAwMDApICIgeD0iLTAuNSIgeT0iMTAuNSIgd2lkdGg9IjIxIiBoZWlnaHQ9IjEiIHJ4PSIwLjUiPjwvcmVjdD4gICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlLUNvcHktNSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTAuMDAwMDAwLCAxMC41MDAwMDApIHJvdGF0ZSg0NS4wMDAwMDApIHRyYW5zbGF0ZSgtMTAuMDAwMDAwLCAtMTAuNTAwMDAwKSAiIHg9Ii0wLjUiIHk9IjEwLjUiIHdpZHRoPSIyMSIgaGVpZ2h0PSIxIiByeD0iMC41Ij48L3JlY3Q+ICAgICAgICA8L2c+ICAgIDwvZz48L3N2Zz4=);
    background-repeat: no-repeat;
    background-size: 110%;
    display: none;
    height: 25px;
    margin-left: auto;
    margin-right: 15px;
    width: 25px;
  }

  .header__close--toggle.show {
    display: block;
  }

  /* Match the open nav background and reverse the toggle icons/text so they stay visible against it */

  body.nav-open .header__row-2 {
    background-color: #2D2D2D;
  }

  body.nav-open .header__navigation--toggle,
  body.nav-open .header__close--toggle {
    background-color: #ECECEC;
    background-image: none;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
  }

  body.nav-open .header__navigation--toggle {
    -webkit-mask-size: cover;
    mask-size: cover;
    -webkit-mask-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjI0cHgiIHZpZXdCb3g9IjAgMCAyNCAxOSIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4gICAgICAgIDx0aXRsZT5oYW1idXJnZXI8L3RpdGxlPiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4gICAgPGcgaWQ9ImhhbWJ1cmdlciIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+ICAgICAgICA8ZyBpZD0iR3JvdXAiIHN0cm9rZT0iIzQ5NEE1MiIgc3Ryb2tlLXdpZHRoPSIzIj4gICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlIiB4PSIxLjUiIHk9IjEuNSIgd2lkdGg9IjIxIiBoZWlnaHQ9IjEiIHJ4PSIwLjUiPjwvcmVjdD4gICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlLUNvcHktNCIgeD0iMS41IiB5PSI5LjUiIHdpZHRoPSIyMSIgaGVpZ2h0PSIxIiByeD0iMC41Ij48L3JlY3Q+ICAgICAgICAgICAgPHJlY3QgaWQ9IlJlY3RhbmdsZS1Db3B5LTUiIHg9IjEuNSIgeT0iMTcuNSIgd2lkdGg9IjIxIiBoZWlnaHQ9IjEiIHJ4PSIwLjUiPjwvcmVjdD4gICAgICAgIDwvZz4gICAgPC9nPjwvc3ZnPg==);
    mask-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjI0cHgiIHZpZXdCb3g9IjAgMCAyNCAxOSIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4gICAgICAgIDx0aXRsZT5oYW1idXJnZXI8L3RpdGxlPiAgICA8ZGVzYz5DcmVhdGVkIHdpdGggU2tldGNoLjwvZGVzYz4gICAgPGcgaWQ9ImhhbWJ1cmdlciIgc3Ryb2tlPSJub25lIiBzdHJva2Utd2lkdGg9IjEiIGZpbGw9Im5vbmUiIGZpbGwtcnVsZT0iZXZlbm9kZCI+ICAgICAgICA8ZyBpZD0iR3JvdXAiIHN0cm9rZT0iIzQ5NEE1MiIgc3Ryb2tlLXdpZHRoPSIzIj4gICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlIiB4PSIxLjUiIHk9IjEuNSIgd2lkdGg9IjIxIiBoZWlnaHQ9IjEiIHJ4PSIwLjUiPjwvcmVjdD4gICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlLUNvcHktNCIgeD0iMS41IiB5PSI5LjUiIHdpZHRoPSIyMSIgaGVpZ2h0PSIxIiByeD0iMC41Ij48L3JlY3Q+ICAgICAgICAgICAgPHJlY3QgaWQ9IlJlY3RhbmdsZS1Db3B5LTUiIHg9IjEuNSIgeT0iMTcuNSIgd2lkdGg9IjIxIiBoZWlnaHQ9IjEiIHJ4PSIwLjUiPjwvcmVjdD4gICAgICAgIDwvZz4gICAgPC9nPjwvc3ZnPg==);
  }

  body.nav-open .header__close--toggle {
    -webkit-mask-size: 110%;
    mask-size: 110%;
    -webkit-mask-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjE5cHgiIHZpZXdCb3g9IjAgMCAyNCAxOSIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4gICAgICAgIDx0aXRsZT5jbG9zZTwvdGl0bGU+ICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPiAgICA8ZyBpZD0iY2xvc2UiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPiAgICAgICAgPGcgaWQ9Ikdyb3VwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyLjAwMDAwMCwgLTEuMDAwMDAwKSIgc3Ryb2tlPSIjNDk0QTUyIiBzdHJva2Utd2lkdGg9IjMiPiAgICAgICAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwLjAwMDAwMCwgMTAuNTAwMDAwKSByb3RhdGUoLTQ1LjAwMDAwMCkgdHJhbnNsYXRlKC0xMC4wMDAwMDAsIC0xMC41MDAwMDApICIgeD0iLTAuNSIgeT0iMTAuNSIgd2lkdGg9IjIxIiBoZWlnaHQ9IjEiIHJ4PSIwLjUiPjwvcmVjdD4gICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlLUNvcHktNSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTAuMDAwMDAwLCAxMC41MDAwMDApIHJvdGF0ZSg0NS4wMDAwMDApIHRyYW5zbGF0ZSgtMTAuMDAwMDAwLCAtMTAuNTAwMDAwKSAiIHg9Ii0wLjUiIHk9IjEwLjUiIHdpZHRoPSIyMSIgaGVpZ2h0PSIxIiByeD0iMC41Ij48L3JlY3Q+ICAgICAgICA8L2c+ICAgIDwvZz48L3N2Zz4=);
    mask-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIHdpZHRoPSIyNHB4IiBoZWlnaHQ9IjE5cHgiIHZpZXdCb3g9IjAgMCAyNCAxOSIgdmVyc2lvbj0iMS4xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4gICAgICAgIDx0aXRsZT5jbG9zZTwvdGl0bGU+ICAgIDxkZXNjPkNyZWF0ZWQgd2l0aCBTa2V0Y2guPC9kZXNjPiAgICA8ZyBpZD0iY2xvc2UiIHN0cm9rZT0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIxIiBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPiAgICAgICAgPGcgaWQ9Ikdyb3VwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgyLjAwMDAwMCwgLTEuMDAwMDAwKSIgc3Ryb2tlPSIjNDk0QTUyIiBzdHJva2Utd2lkdGg9IjMiPiAgICAgICAgICAgIDxyZWN0IGlkPSJSZWN0YW5nbGUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEwLjAwMDAwMCwgMTAuNTAwMDAwKSByb3RhdGUoLTQ1LjAwMDAwMCkgdHJhbnNsYXRlKC0xMC4wMDAwMDAsIC0xMC41MDAwMDApICIgeD0iLTAuNSIgeT0iMTAuNSIgd2lkdGg9IjIxIiBoZWlnaHQ9IjEiIHJ4PSIwLjUiPjwvcmVjdD4gICAgICAgICAgICA8cmVjdCBpZD0iUmVjdGFuZ2xlLUNvcHktNSIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTAuMDAwMDAwLCAxMC41MDAwMDApIHJvdGF0ZSg0NS4wMDAwMDApIHRyYW5zbGF0ZSgtMTAuMDAwMDAwLCAtMTAuNTAwMDAwKSAiIHg9Ii0wLjUiIHk9IjEwLjUiIHdpZHRoPSIyMSIgaGVpZ2h0PSIxIiByeD0iMC41Ij48L3JlY3Q+ICAgICAgICA8L2c+ICAgIDwvZz48L3N2Zz4=);
  }

  body.nav-open .header__navigation--toggle:after {
    color: #ECECEC;
  }
}
/* 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%;
}
.qtrbk-colour-band {
  border-top: 6px solid #000;
  border-bottom: 6px solid #000;
}

/* Modules
Each module's styles, bundled here instead of the module's own module.css so
every page ships one theme CSS request instead of one per module type used.
See docs/module-css-bundling.md.
*/

/* Layout */

.qtrbk-hero-animated {
  padding: 3rem 1rem 0;
  text-align: center;
}

/* Stage (screenshot + annotation) */

.qtrbk-hero-animated__stage {
  margin: 0 auto;
  max-width: 1000px;
  position: relative;
}

.qtrbk-hero-animated__step {
  display: none;
  background-color: #fff;
}

.qtrbk-hero-animated__step.is-active {
  display: block;
}

.qtrbk-hero-animated__screenshot {
  box-shadow: 0 0 60px rgba(0, 0, 0, 0.12);
  display: block;
  height: auto;
  width: 100%;
}

/* Annotation overlays: uploaded per step with a canvas matching that
   step's screenshot, so they're laid on top full-bleed rather than
   positioned/scaled by hand. Desktop and mobile are separate uploads
   (different screenshot proportions) — both render, CSS picks one. */

.qtrbk-hero-animated__annotation {
  height: 100%;
  inset: 0;
  object-fit: contain;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  width: 100%;
  z-index: 2;
}

.qtrbk-hero-animated__annotation--mobile {
  display: none;
}

/* module.js fetches each uploaded annotation SVG's own markup and swaps
   it in for the <img>, tagging it --inline once done — that's what lets
   the three paths inside draw in individually below. Until/unless that
   swap happens (still loading, or the fetch failed — e.g. no CORS on
   wherever it's hosted), it stays a plain <img> and just fades in as one
   flat graphic instead. */

.qtrbk-hero-animated__step.is-active
  .qtrbk-hero-animated__annotation:not(
    .qtrbk-hero-animated__annotation--inline
  ) {
  animation: heroFadeIn 0.5s ease 0.6s forwards;
}

.qtrbk-hero-animated__annotation--inline {
  opacity: 1;
}

@keyframes heroFadeIn {
  to {
    opacity: 1;
  }
}

/* Draw-in technique: every hand-drawn path starts fully hidden via a
   generous fixed stroke-dasharray/stroke-dashoffset, then animates the
   offset to 0 once its ancestor gains `is-active`. Used by the stepper
   tick (small, ~30-unit canvas) and, once inlined, the three paths of
   each annotation SVG (much bigger, ~1000-unit canvas) — 2000 is
   generous enough to fully hide either. */

@keyframes heroDraw {
  to {
    stroke-dashoffset: 0;
  }
}

.draw-line {
  fill: none;
  stroke: var(--qtrbk-hero-accent);
  stroke-dasharray: 2000;
  stroke-dashoffset: 2000;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 5;
}

.qtrbk-hero-animated__step.is-active .qtrbk-hero-animated__annotation-line {
  animation: heroDraw 0.8s linear 0.6s forwards;
}

.qtrbk-hero-animated__step.is-active
  .qtrbk-hero-animated__annotation-arrowhead {
  animation: heroDraw 0.3s ease-out 1.35s forwards;
}

.qtrbk-hero-animated__step.is-active .qtrbk-hero-animated__annotation-circle {
  animation: heroDraw 0.6s ease 1.7s forwards;
}

.qtrbk-hero-animated__annotation-line,
.qtrbk-hero-animated__annotation-arrowhead,
.qtrbk-hero-animated__annotation-circle {
  stroke-width: 6;
}

/* On the last step, once everything's drawn in, the whole annotation
   fades out (see module.js) so the sequence settles on just the
   fully-lit stepper. */

.qtrbk-hero-animated__annotation-line.is-annotation-hidden,
.qtrbk-hero-animated__annotation-arrowhead.is-annotation-hidden,
.qtrbk-hero-animated__annotation-circle.is-annotation-hidden {
  opacity: 0;
  transition: opacity 0.5s ease;
}

/* Stepper */

.qtrbk-hero-animated__stepper {
  --qtrbk-stepper-circle-size: 36px;
  align-items: center;
  display: grid;
  margin: 0 auto 2rem;
  max-width: 60%;
  row-gap: 0.5rem;
  width: 100%;
}

/* The theme's global `button, button:hover, button:active` rules (see
   theme-overrides.css) target every raw <button> element, including this
   one — reset all of that chrome so the only thing that changes on
   hover/focus/active is the label color. */

.qtrbk-hero-animated__stepper-item,
.qtrbk-hero-animated__stepper-item:hover,
.qtrbk-hero-animated__stepper-item:focus,
.qtrbk-hero-animated__stepper-item:active {
  background-color: transparent;
  border: none;
  border-radius: 0;
  cursor: pointer;
  display: contents;
  padding: 0;
  text-transform: none;
}

.qtrbk-hero-animated__stepper-item:hover .qtrbk-hero-animated__stepper-label,
.qtrbk-hero-animated__stepper-item:focus .qtrbk-hero-animated__stepper-label,
.qtrbk-hero-animated__stepper-item:active .qtrbk-hero-animated__stepper-label,
.qtrbk-hero-animated__stepper-item.is-active:hover
  .qtrbk-hero-animated__stepper-label,
.qtrbk-hero-animated__stepper-item.is-active:focus
  .qtrbk-hero-animated__stepper-label,
.qtrbk-hero-animated__stepper-item.is-active:active
  .qtrbk-hero-animated__stepper-label,
.qtrbk-hero-animated__stepper-item.is-done:hover
  .qtrbk-hero-animated__stepper-label,
.qtrbk-hero-animated__stepper-item.is-done:focus
  .qtrbk-hero-animated__stepper-label,
.qtrbk-hero-animated__stepper-item.is-done:active
  .qtrbk-hero-animated__stepper-label {
  color: var(--qtrbk-hero-accent);
}

.qtrbk-hero-animated__stepper-circle {
  align-items: center;
  border: 3px solid #888;
  border-radius: 50%;
  display: flex;
  grid-row: 1;
  height: var(--qtrbk-stepper-circle-size);
  justify-content: center;
  justify-self: center;
  transition: border-color 0.3s;
  width: var(--qtrbk-stepper-circle-size);
}

.qtrbk-hero-animated__stepper-item.is-active
  .qtrbk-hero-animated__stepper-circle,
.qtrbk-hero-animated__stepper-item.is-done
  .qtrbk-hero-animated__stepper-circle {
  border-color: #fff;
}

.qtrbk-hero-animated__tick {
  flex-shrink: 0;
  height: var(--qtrbk-stepper-circle-size);
  overflow: visible;
  stroke: var(--qtrbk-hero-accent);
  stroke-width: 5;
  width: var(--qtrbk-stepper-circle-size);
}

.qtrbk-hero-animated__stepper-item.is-active .qtrbk-hero-animated__tick {
  animation: heroDraw 0.3s ease 0.3s forwards;
}

.qtrbk-hero-animated__stepper-item.is-done .qtrbk-hero-animated__tick {
  stroke-dashoffset: 0;
}

.qtrbk-hero-animated__stepper-label {
  color: #888;
  font-size: 1rem;
  font-weight: 600;
  grid-row: 2;
  justify-self: center;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  transition: color 0.3s;
  white-space: nowrap;
  text-shadow: 0 1px 3px #000;
}

.qtrbk-hero-animated__stepper-item.is-active
  .qtrbk-hero-animated__stepper-label {
  color: var(--qtrbk-hero-accent);
}

.qtrbk-hero-animated__stepper-item.is-done .qtrbk-hero-animated__stepper-label {
  color: #fff;
}

.qtrbk-hero-animated__connector {
  background-color: #888;
  grid-row: 1;
  height: 3px;
  overflow: hidden;
  position: relative;
  width: 100%;
}

.qtrbk-hero-animated__connector-fill {
  background-color: #fff;
  display: block;
  height: 100%;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 2s linear 0.6s;
  width: 100%;
}

/* Used by module.js to jump a connector straight to filled, skipping the
   sweep animation, when a stepper click skips past steps the auto-play
   never reached. */

.qtrbk-hero-animated__connector-fill--instant {
  transition: none;
}

.qtrbk-hero-animated__connector.is-pending .qtrbk-hero-animated__connector-fill,
.qtrbk-hero-animated__connector.is-done .qtrbk-hero-animated__connector-fill {
  transform: scaleX(1);
}

/* Panel */

.qtrbk-hero-animated__panel {
  background: var(--qtrbk-hero-panel-bg);
  border-top: 1px solid #f2f2f2;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  margin-top: calc(var(--qtrbk-hero-panel-overlap) * -1);
  padding: 3rem 2rem;
  position: relative;
  width: 100vw;
  z-index: 1;
}

.qtrbk-hero-animated__panel-inner {
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  max-width: 1000px;
}

/* Visual order within the panel. The AEO description sits first in the
   source (right after the page H1) for answer engines, but `order` drops
   it below the active step heading and above the CTA on screen. Stepper
   and heading keep their source order; only the description and CTA are
   reordered. */

.qtrbk-hero-animated__stepper {
  order: 0;
}

.qtrbk-hero-animated__panel-headings {
  list-style: none;
  margin: 0;
  order: 1;
  padding: 0;
}

.qtrbk-hero-animated__panel-heading-item {
  margin: 0;
}

.qtrbk-hero-animated__aeo-description {
  order: 2;
}

.qtrbk-hero-animated__cta {
  align-self: center;
  order: 3;
}

/* AEO description */

.qtrbk-hero-animated__aeo-description {
  color: #fff;
  margin: 2rem auto;
  max-width: 720px;
  text-wrap: pretty;
}

/* The rotating slides are <p>s (not <h2>s — see HST-88 / module.html), so the
   theme's generated heading typography no longer applies. Reproduce the H2 look
   explicitly here so the hero is visually unchanged: Inter 700 / 2rem, matching
   the theme's `.h2, h2` rules; line-height inherits the 1.4 body value. */
.qtrbk-hero-animated__panel-heading {
  color: #fff;
  display: none;
  font-family:
    Inter,
    system-ui,
    -apple-system,
    sans-serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
  margin: 0 auto;
  max-width: 720px;
  text-wrap: balance;
}

.qtrbk-hero-animated__panel-heading.is-active {
  display: block;
}

/* The rich text field's toolbar only exposes bold/italic/underline, but
   pasted content can still carry its own inline font-size/color/
   text-decoration-color on a <span> that the toolbar has no control for
   — invisible in the editor, visible on the live page. Force every
   heading back to a single consistent size, and force every underline
   (whether it's a real <u> or a pasted span using inline
   text-decoration) back to the accent color. */

.qtrbk-hero-animated__panel-heading * {
  font-size: inherit !important;
}

.qtrbk-hero-animated__panel-heading u {
  border-bottom: 3px solid var(--qtrbk-hero-accent);
  padding-bottom: 2px;
  text-decoration: none;
}

.qtrbk-hero-animated__panel-heading [style*="underline"] {
  text-decoration-color: var(--qtrbk-hero-accent) !important;
}

.qtrbk-hero-animated__cta {
  color: #fff;
  display: inline-block;
  text-shadow: 0 1px 3px rgb(0 0 0 / 60%);
}

@media (max-width: 767px) {
  .qtrbk-hero-animated {
    padding-top: 2rem;
  }

  .qtrbk-hero-animated__stepper {
    --qtrbk-stepper-circle-size: 28px;
    max-width: 100%;
  }

  .qtrbk-hero-animated__annotation--desktop {
    display: none;
  }

  .qtrbk-hero-animated__annotation--mobile {
    display: block;
  }

  .qtrbk-hero-animated__panel {
    margin-top: calc(var(--qtrbk-hero-panel-overlap-mobile) * -1);
  }

  /* The mobile annotation SVG's stroke-width is in the same user-unit
     canvas as desktop, but object-fit: contain shrinks that canvas down
     further on a phone-width viewport, so the stroke visually thins out
     along with everything else. Bump it up here to compensate. */

  .qtrbk-hero-animated__annotation-line,
  .qtrbk-hero-animated__annotation-arrowhead,
  .qtrbk-hero-animated__annotation-circle {
    stroke-width: 10;
  }
}
.qtrbk-faq {
  -webkit-tap-highlight-color: transparent;
  --qtrbk-faq-filter-bg: #f1f1f1;
  --qtrbk-faq-filter-text: #2d2d2d;
  --qtrbk-faq-filter-active-bg: #1f2937;
  --qtrbk-faq-filter-active-text: #ffffff;
  --qtrbk-faq-filter-radius: 6px;
  --qtrbk-faq-accent: #1f2937;
  --qtrbk-faq-divider: #e5e5e5;
}

.qtrbk-faq__heading {
  margin: 0 0 1.4rem;
}

/* Filters */

.qtrbk-faq__filters {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin: 0 0 1.4rem;
}

.qtrbk-faq__filters[hidden] {
  display: none;
}

.qtrbk-faq__filters-label {
  color: var(--qtrbk-faq-filter-text);
  flex: none;
  font-size: 0.8rem;
  font-weight: 600;
  margin-right: 0.15rem;
}

.qtrbk-faq__filter {
  -webkit-appearance: none;
  -webkit-tap-highlight-color: transparent;
  appearance: none;
  background-color: var(--qtrbk-faq-filter-bg);
  border: none;
  border-radius: var(--qtrbk-faq-filter-radius);
  color: var(--qtrbk-faq-filter-text);
  font-size: 0.8rem;
  font-weight: 400;
  line-height: 1.2;
  padding: 0.3rem 0.65rem;
  transition: background-color 0.2s ease;
}

.qtrbk-faq__filter[aria-pressed="true"] {
  background-color: var(--qtrbk-faq-filter-active-bg);
  color: var(--qtrbk-faq-filter-active-text);
}

/* Hover preview — a filter that's on turns red on hover (a cue that
   clicking will turn it off), one that's off turns green (clicking turns it
   on). Holds for as long as the cursor stays over it, easing back to the
   normal solid color only on mouse-out. Scoped to devices with real hover
   (mouse/trackpad) — touchscreens keep `:hover` active after a tap until a
   different element is tapped, which made this look permanently stuck. */

@media (hover: hover) and (pointer: fine) {
  .qtrbk-faq__filter[aria-pressed="true"]:hover {
    background-color: #dc2626;
  }

  .qtrbk-faq__filter[aria-pressed="false"]:hover {
    background-color: #16a34a;
  }
}

/* Same red/green flash, but on `:active` instead of `:hover` — this is what
   actually fires on a touchscreen tap (`:hover` doesn't reliably apply there
   at all). Left unscoped by the hover/pointer media query since `:active`
   is momentary everywhere and clears itself the instant the finger lifts. */

.qtrbk-faq__filter[aria-pressed="true"]:active {
  background-color: #dc2626;
}

.qtrbk-faq__filter[aria-pressed="false"]:active {
  background-color: #16a34a;
}

.qtrbk-faq__filters-reset {
  -webkit-appearance: none;
  -webkit-tap-highlight-color: transparent;
  appearance: none;
  background: none;
  border: 1px solid var(--qtrbk-faq-divider);
  border-radius: var(--qtrbk-faq-filter-radius);
  color: var(--qtrbk-faq-filter-text);
  flex: none;
  font-size: 0.8rem;
  font-weight: 400;
  line-height: 1.2;
  padding: 0.3rem 0.65rem;
  transition: background-color 0.2s ease;
}

/* All filters on → red, clicking turns everything off. Anything less than
   all on (including all off) → green, clicking turns everything on. */

@media (hover: hover) and (pointer: fine) {
  .qtrbk-faq__filters-reset[data-all-active="true"]:hover {
    background-color: #dc2626;
  }

  .qtrbk-faq__filters-reset[data-all-active="false"]:hover {
    background-color: #16a34a;
  }
}

.qtrbk-faq__filters-reset[data-all-active="true"]:active {
  background-color: #dc2626;
}

.qtrbk-faq__filters-reset[data-all-active="false"]:active {
  background-color: #16a34a;
}

.qtrbk-faq__filter,
.qtrbk-faq__filters-reset,
.qtrbk-faq__question {
  outline: none;
}

.qtrbk-faq__filter:focus-visible,
.qtrbk-faq__filters-reset:focus-visible,
.qtrbk-faq__question:focus-visible {
  outline: 2px solid var(--qtrbk-faq-accent);
  outline-offset: 2px;
}

/* List */

.qtrbk-faq__list {
  border-top: 1px solid var(--qtrbk-faq-divider);
}

.qtrbk-faq__item {
  border-bottom: 1px solid var(--qtrbk-faq-divider);
}

.qtrbk-faq__item[hidden] {
  display: none;
}

.qtrbk-faq__question-wrap {
  -webkit-tap-highlight-color: transparent;
  font-size: 1rem;
  margin: 0;
  padding-left: 0.5rem;
  transition: background-color 0.15s linear;
}

.qtrbk-faq__item.is-open .qtrbk-faq__question-wrap {
  background-color: #f2f2f2;
}

@media (hover: hover) and (pointer: fine) {
  .qtrbk-faq__question-wrap:hover {
    background-color: #f2f2f2;
  }
}

.qtrbk-faq__question {
  -webkit-appearance: none;
  -webkit-tap-highlight-color: transparent;
  appearance: none;
  align-items: center;
  background: none;
  border: none;
  box-shadow: none;
  display: flex;
  gap: 0.75rem;
  padding: 1rem 0;
  text-align: left;
  width: 100%;
}

.qtrbk-faq__question:hover,
.qtrbk-faq__question:active,
.qtrbk-faq__question:focus {
  background: none;
  box-shadow: none;
}

.qtrbk-faq__question-text {
  font-weight: 600;
}

.qtrbk-faq__empty-message {
  border-bottom: 1px solid var(--qtrbk-faq-divider);
}

.qtrbk-faq__empty-message .qtrbk-faq__question-wrap {
  display: block;
  padding: 1rem 0;
}

/* Plus/minus icon */

.qtrbk-faq__icon {
  flex: none;
  height: 1rem;
  position: relative;
  width: 1rem;
}

.qtrbk-faq__icon::before,
.qtrbk-faq__icon::after {
  background-color: var(--qtrbk-faq-accent);
  border-radius: 1px;
  content: "";
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  transition: background-color 0.15s linear;
}

@media (hover: hover) and (pointer: fine) {
  .qtrbk-faq__question-wrap:hover .qtrbk-faq__icon::before,
  .qtrbk-faq__question-wrap:hover .qtrbk-faq__icon::after {
    background-color: #f97316;
  }
}

.qtrbk-faq__icon::before {
  height: 3px;
  width: 100%;
}

.qtrbk-faq__icon::after {
  height: 100%;
  transition:
    background-color 0.15s linear,
    transform 0.2s ease,
    opacity 0.2s ease;
  width: 3px;
}

.qtrbk-faq__item.is-open .qtrbk-faq__icon::after {
  opacity: 0;
  transform: translate(-50%, -50%) scaleY(0);
}

/* Answer — collapses via a 0fr/1fr grid row so no JS height measurement is needed */

.qtrbk-faq__answer {
  -webkit-tap-highlight-color: transparent;
  cursor: pointer;
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.25s ease;
}

.qtrbk-faq__answer.is-open {
  background-color: #f2f2f2;
  grid-template-rows: 1fr;
}

.qtrbk-faq__answer-content {
  min-height: 0;
  overflow: hidden;
  padding-left: 2.125rem;
}

.qtrbk-faq__answer-content > :first-child {
  margin-top: 0;
}

.qtrbk-faq__answer-content > :last-child {
  margin-bottom: 1rem;
}
.qtrbk-h1--uppercase {
  text-transform: uppercase;
}
/* Menu */

.qtrbk-menu--desktop {
  display: block;
}

.qtrbk-menu--mobile {
  display: none;
}

@media (max-width: 767px) {
  .qtrbk-menu--desktop {
    display: none;
  }

  .qtrbk-menu--mobile {
    display: block;
  }
}

/* Menu items */

.qtrbk-menu__item {
  position: relative;
}

.qtrbk-menu__link {
  font-size: 1rem;
  line-height: 1.5rem;
  position: relative;
  text-decoration: none;
  color: #2d2d2d;
}

.qtrbk-menu__link:hover,
.qtrbk-menu__link:focus,
.qtrbk-menu__link:active {
  text-decoration: none;
}
.qtrbk-menu__link--active-link,
.qtrbk-menu__link--active-branch {
  font-weight: bold;
}

@media (min-width: 768px) and (max-width: 1150px) {
  .qtrbk-menu__link {
    font-size: 0.833rem;
  }
}

@media (max-width: 767px) {
  .qtrbk-menu__item {
    display: block;
    width: 100%;
  }

  .qtrbk-menu__link {
    display: block;
    font-size: 1.083rem;
  }
  .qtrbk-menu__link--active-link,
  .qtrbk-menu__link--active-branch {
    color: #ff4800;
  }
}

/* Menu items - top level */

.qtrbk-menu__item--depth-1 {
  display: inline-block;
  padding: 0.7rem 0.875rem;
  text-transform: uppercase;
}

.qtrbk-menu__item--depth-1 > .qtrbk-menu__link--active-link:after,
.qtrbk-menu__item--depth-1 > .qtrbk-menu__link:hover:after,
.qtrbk-menu__item--depth-1 > .qtrbk-menu__link:focus:after {
  bottom: -3px;
  content: "";
  height: 2px;
  left: 0;
  position: absolute;
  width: 100%;
}

@media (max-width: 767px) {
  .qtrbk-menu__item--depth-1 {
    border-top: 2px solid #ced4db;
    padding: 0;
  }

  .qtrbk-menu__item--depth-1 > .qtrbk-menu__link {
    padding: 1rem;
  }

  .qtrbk-menu__item--depth-1 > .qtrbk-menu__link--active-link:after,
  .qtrbk-menu__item--depth-1 > .qtrbk-menu__link:hover:after,
  .qtrbk-menu__item--depth-1 > .qtrbk-menu__link:focus:after {
    content: none;
  }
}

/* Menu items - submenus */

.qtrbk-menu__submenu {
  border-radius: 3px;
  display: none;
  left: 0;
  position: absolute;
  text-align: left;
  text-transform: none;
  top: 100%;
  width: 270px;
  z-index: 99;
}

.qtrbk-menu__item--open > .qtrbk-menu__submenu {
  display: block;
}

.qtrbk-menu__submenu--level-2 {
  transform: translateX(-50%);
}

/* Keeps the first menu item's drop down menu aligned to the left of the top level menu item */

.qtrbk-menu__item--depth-1:first-child .qtrbk-menu__submenu--level-2 {
  transform: unset;
}

.qtrbk-menu__submenu .qtrbk-menu__item {
  border-bottom: 1px solid #d1d6dc;
  padding: 0;
  width: 100%;
}

.qtrbk-menu__submenu .qtrbk-menu__link {
  display: block;
  padding: 0.7rem 1.05rem;
  transition: background-color 0.3s;
  width: 100%;
}

.qtrbk-menu__submenu--level-3 {
  left: 100%;
  top: 0;
}

/* Flyouts for the last two top level menu items go left to keep page responsive */

.qtrbk-menu__item--depth-1:nth-last-child(-n + 2)
  .qtrbk-menu__submenu--level-3 {
  left: auto;
  right: 100%;
  top: 0;
}

/* Accounts for child toggle */

.qtrbk-menu__submenu .qtrbk-menu__item--has-submenu > .qtrbk-menu__link {
  padding-right: 3rem;
}

/* Creates the triangle at the top of the submenu drop down */

@media (min-width: 768px) {
  .qtrbk-menu__submenu--level-2 > .qtrbk-menu__item:first-child:before {
    border-radius: 6px;
    content: "";
    display: block;
    height: 30px;
    left: 125px;
    margin-left: 1rem;
    overflow: hidden;
    position: absolute;
    top: -12px;
    transform: rotate(45deg);
    transition: background-color 0.3s;
    width: 30px;
    z-index: 2;
  }

  /* Keeps triangle to the left for the first menu item's drop down menu */

  .qtrbk-menu__item--depth-1:first-child
    > .qtrbk-menu__submenu--level-2
    > .qtrbk-menu__item:first-child:before {
    left: 0;
  }

  .qtrbk-menu__submenu--level-2
    > .qtrbk-menu__item:first-child
    > .qtrbk-menu__link {
    position: relative;
    z-index: 2;
  }
}

@media (max-width: 767px) {
  .qtrbk-menu__submenu {
    border: none;
    border-radius: 0;
    box-shadow: none;
    position: static;
    transform: unset;
    width: 100%;
  }

  .qtrbk-menu__submenu .qtrbk-menu__item {
    background-color: #fff;
    border-bottom: none;
    border-top: 2px solid #ebeff3;
    padding: 0;
  }

  .qtrbk-menu__submenu .qtrbk-menu__link {
    display: block;
    padding: 0.7rem 2rem;
    transition: none;
    width: 100%;
  }

  .qtrbk-menu__submenu .qtrbk-menu__item .qtrbk-menu__link:hover,
  .qtrbk-menu__submenu .qtrbk-menu__item .qtrbk-menu__link:focus {
    background-color: inherit;
    transition: none;
  }

  .qtrbk-menu__item--has-submenu > .qtrbk-menu__link {
    width: 70%;
  }

  .qtrbk-menu__submenu--level-3 .qtrbk-menu__item .qtrbk-menu__link {
    padding: 0.7rem 3rem;
  }
}

/* Menu icons */

@media (min-width: 768px) {
  .qtrbk-menu__submenu .qtrbk-menu__child-toggle {
    margin-left: auto;
    padding: 0 1.05rem;
  }

  .qtrbk-menu__child-toggle {
    position: absolute;
    right: 5px;
    top: 30px;
    z-index: 2;
  }

  .qtrbk-menu__item--depth-1 > .qtrbk-menu__child-toggle {
    position: static;
    right: 0;
    top: 0;
    vertical-align: middle;
  }

  .qtrbk-menu__child-toggle-icon {
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top-style: solid;
    border-top-width: 7px;
    display: block;
    height: 0;
    margin-left: 1px;
    width: 0;
  }
}

@media (max-width: 767px) {
  .qtrbk-menu__child-toggle {
    background-position: center right 30px;
    background-repeat: no-repeat;
    background-size: 20px;
    border: none;
    cursor: pointer;
    height: 55px;
    padding: 15px 0;
    position: absolute;
    right: 0;
    top: 0;
    width: 30%;
  }

  .qtrbk-menu__child-toggle-icon {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkiIGhlaWdodD0iMTkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGcgc3Ryb2tlPSIjOTc5ODlGIiBzdHJva2Utd2lkdGg9IjIuNCIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj48cmVjdCB4PSIxLjIiIHk9IjkuNiIgd2lkdGg9IjE2LjgiIGhlaWdodD0iMSIgcng9Ii41Ii8+PHJlY3QgdHJhbnNmb3JtPSJyb3RhdGUoOTAgOS42IDkuNikiIHg9IjEuMiIgeT0iOS42IiB3aWR0aD0iMTYuOCIgaGVpZ2h0PSIxIiByeD0iLjUiLz48L2c+PC9zdmc+);
    background-repeat: no-repeat;
    display: block;
    height: 20px;
    margin-left: auto;
    margin-right: 1.05rem;
    transition: transform 0.4s;
    width: 20px;
  }

  .qtrbk-menu__item--open
    > .qtrbk-menu__child-toggle
    .qtrbk-menu__child-toggle-icon {
    transform: rotate(45deg);
    transition: transform 0.4s;
  }
}

/* Match footer menu (qtrbk-simple-menu.module) colors */

@media (max-width: 767px) {
  .qtrbk-menu__item--depth-1 {
    border-top-color: #555;
  }

  .qtrbk-menu__link {
    color: #ececec;
  }

  .qtrbk-menu__link--active-link,
  .qtrbk-menu__link--active-branch {
    color: #ff4800;
  }

  .qtrbk-menu__child-toggle-icon {
    border-top-color: #ececec;
  }

  .qtrbk-menu__link:hover,
  .qtrbk-menu__link:focus,
  .qtrbk-menu__link:active {
    background-color: #555;
    border-bottom: none;
    color: #ececec;
  }

  .qtrbk-menu__link--active-link:hover,
  .qtrbk-menu__link--active-link:focus,
  .qtrbk-menu__link--active-link:active,
  .qtrbk-menu__link--active-branch:hover,
  .qtrbk-menu__link--active-branch:focus,
  .qtrbk-menu__link--active-branch:active {
    color: #ff4800;
  }

  .qtrbk-menu__submenu .qtrbk-menu__item {
    background-color: #2d2d2d;
    border-top-color: #555;
  }
}
.qtrbk-one-third-two-third {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.qtrbk-one-third-two-third__column {
  min-width: 0;
}

.qtrbk-one-third-two-third__image {
  display: block;
  height: auto;
  max-width: 100%;
}

@media screen and (min-width: 768px) {
  .qtrbk-one-third-two-third {
    flex-direction: row;
  }

  .qtrbk-one-third-two-third--flipped {
    flex-direction: row-reverse;
  }
}
.qtrbk-play-card {
  padding: 2rem;
  max-width: 562px;
  margin: 0 auto 2rem;
  clip-path: polygon(
    1.5rem 0,
    calc(100% - 1.5rem) 0,
    100% 1.5rem,
    100% calc(100% - 1.5rem),
    calc(100% - 1.5rem) 100%,
    1.5rem 100%,
    0 calc(100% - 1.5rem),
    0 1.5rem
  );
}

.qtrbk-play-card-icon {
  float: left;
  margin-left: 0;
  margin-right: 1rem;
  width: auto;
  height: 4rem;
  max-width: 100%;
}

.qtrbk-play-card-eyebrow {
  text-transform: uppercase;
  font-size: 1rem;
  font-weight: normal;
  padding: 0;
  margin: 0 0 1rem;
  line-height: 1rem;
}

.qtrbk-play-card-eyebrow-text {
  color: #666;
}

.qtrbk-play-card-title {
  float: left;
  clear: none;
  margin: 0 0 1rem;
  line-height: 2rem;
  font-size: 2.5rem;
  font-weight: 800;
}

.qtrbk-play-card-body {
  clear: both;
}

.qtrbk-play-card-problem-headline {
  font-weight: bold;
  font-size: 1.25rem;
}

.qtrbk-play-card-solution-headline {
  font-size: 1.25rem;
  color: #cc3300;
}
.qtrbk-player {
  background-color: #2d2d2d;
  margin-bottom: 0;
  overflow: hidden;
  position: relative;
}

.qtrbk-player__photo {
  height: auto;
  max-width: 50%;
  position: absolute;
  right: 0;
  top: 2rem;
  width: 240px;
  z-index: 2;
}

.qtrbk-player__content {
  color: #ffffff;
  position: relative;
  width: 100%;
  z-index: 1;
}

.qtrbk-player__name {
  color: #ff4800;
  font-family: "RockwellCondensed", serif;
  font-size: min(3rem, 60px);
  font-style: normal;
  font-weight: bold;
  letter-spacing: 0.02rem;
  margin-bottom: 0;
  padding: 0;
  text-align: left;
  text-transform: uppercase;
}

.qtrbk-player__details {
  align-items: stretch;
  display: flex;
  gap: 0.75rem;
  padding: 0.5rem 0 1rem;
}

.qtrbk-player__logo {
  flex-shrink: 0;
  height: auto;
  object-fit: contain;
  width: 3rem;
}

.qtrbk-player__text {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.qtrbk-player__role {
  color: #ffffff;
  font-weight: bold;
  margin: 0;
  padding: 0;
  text-align: left;
}

.qtrbk-player__location {
  color: #ffffff;
  font-weight: normal;
  margin: 0;
  padding: 0;
  text-align: left;
}

.qtrbk-player__stats {
  margin: 0;
  padding: 0;
}

.qtrbk-player__stat {
  background-color: #555;
  font-size: 0.75rem;
  margin: 2px 0 0 0;
  padding: 0.5rem 0 0.5rem 0.5rem;
}

.qtrbk-player__stat-label {
  display: inline-block;
  width: 5.5rem;
}
.qtrbk-pricing-card {
  text-align: center;
}
.qtrbk-pricing-card--pricing {
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.15);
  padding: 2.1rem;
}

@media screen and (max-width: 1200px) {
  .qtrbk-pricing-card--pricing {
    padding: 2.1rem 0.7rem;
  }
}

@media screen and (max-width: 787px) {
  .qtrbk-pricing-card--pricing {
    margin-bottom: 1.4rem;
  }
}

.qtrbk-pricing-card__subtitle,
.qtrbk-pricing-card__body li {
  font-size: 0.9rem;
}

.qtrbk-pricing-card__body ul,
.qtrbk-pricing-card__body li {
  padding: 0;
}

.qtrbk-pricing-card__body li {
  list-style: none;
  margin: 0;
  padding: 0.35rem 0;
  text-align: left;
}

.qtrbk-pricing-card__body svg {
  display: inline-block;
  margin-right: 0.7rem;
  max-width: 20px;
}

/* Overlay */

.qtrbk-pricing-card__overlay-background {
  position: fixed;

  /* One less than the overlay z-index value */
  z-index: 999999;
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  background: rgba(0, 0, 0, 0.2);
  inset: 0;
  opacity: 0;
  transition: opacity 500ms ease 0s, visibility 500ms ease 0s;
  visibility: hidden;
}

.qtrbk-pricing-card__overlay-background.open {
  opacity: 1;
  visibility: visible;
}

/* Overlay */

html.qtrbk-pricing-card__payments--overlay-open {
  position: relative;
  overflow: hidden;
  height: 100%;
}

.qtrbk-pricing-card__overlay {
  position: fixed;

  /* Well below the maximum value, but high enough to cover most cases */
  z-index: 1000000;
  top: 100%;
  right: 0;
  bottom: 0;
  left: 0;
  height: calc(100% - 50px);
  width: 100vw;
  background-color: #fff;
  transform: translateY(0);
  transition: transform 500ms ease 0s, visibility 500ms ease 0s;
  visibility: hidden;
}

.qtrbk-pricing-card__overlay.open {
  transform: translateY(-100%);
  transition: transform 500ms ease 0s, visibility 500ms ease 0s;
  visibility: visible;
}

button.qtrbk-pricing-card__overlay-close--top {
  position: absolute;
  top: -40px;
  right: 16px;
  display: flex;
  height: 30px;
  width: 30px;
  padding: 5px;
  border: none;
  border-radius: 50%;
  align-items: center;
  background: #fff;
  outline-color: #33475b;
}

button.qtrbk-pricing-card__overlay-close--top svg {
  fill: #7c98b6;
}

button.qtrbk-pricing-card__overlay-close--top:hover svg,
button.qtrbk-pricing-card__overlay-close--top:focus svg {
  fill: #33475b;
}

@media screen and (min-width: 768px) {
  button.qtrbk-pricing-card__overlay-close--top {
    top: 16px;
    right: 16px;
    background: transparent;
  }
}

button.qtrbk-pricing-card__overlay-close--bottom {
  position: absolute;
  top: initial;
  right: 16px;
  bottom: 16px;
  padding: 5px;
  border: none;
  background: none;
  color: #33475b;
  font-size: 14px;
  font-weight: normal;
  opacity: 0;
  outline-color: #33475b;
}

button.qtrbk-pricing-card__overlay-close--bottom:focus {
  opacity: 1;
}

.qtrbk-pricing-card__overlay .payments-iframe-container {
  height: 100%;
  width: 100%;
}

.qtrbk-pricing-card__overlay .payments-iframe-container iframe {
  height: 100% !important; /* stylelint-disable-line declaration-no-important */
}
.qtrbk-screenshot-one-third-two-third__rich-text {
  margin-bottom: 2rem;
}

.qtrbk-screenshot-one-third-two-third {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}

.qtrbk-screenshot-one-third-two-third__column {
  min-width: 0;
}

.qtrbk-screenshot-one-third-two-third__column--screenshot {
  align-items: flex-end;
  display: flex;
  justify-content: center;
  overflow: hidden;
}

.qtrbk-screenshot-one-third-two-third__image {
  display: block;
  height: auto;
  max-width: 100%;
  box-shadow: 0.5rem 0.5rem 2rem 0 rgba(0, 0, 0, 0.3);
  border-top: solid 1px rgba(255, 255, 255, 0.7);
  border-left: solid 1px rgba(255, 255, 255, 0.3);
}

@media screen and (min-width: 768px) {
  .qtrbk-screenshot-one-third-two-third {
    flex-direction: row-reverse;
  }

  .qtrbk-screenshot-one-third-two-third--flipped {
    flex-direction: row;
  }
}
.qtrbk-simple-menu h2 {
  color: #ececec;
  margin-bottom: 1rem;
  font-weight: bold;
  display: block;
  font-size: 0.9rem;
}
.qtrbk-simple-menu ul {
  width: 100%;
  margin-bottom: 0;
}
.qtrbk-simple-menu li {
  border-top: solid 2px #555;
}
.qtrbk-simple-menu li:last-child {
  border-bottom: solid 2px #555;
}
.qtrbk-simple-menu li a {
  color: #ececec;
  padding: 0.5rem 0;
  text-decoration: none;
  display: block;
  font-size: 0.9rem;
}
.qtrbk-simple-menu li a:hover {
  background-color: #555;
}
.social-links {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.social-links__icon {
  border-radius: 50%;
  display: inline-flex;
  height: 1.75rem;
  margin: 0 0.35rem;
  position: relative;
  width: 1.75rem;
}

.social-links__icon svg {
  fill: #FFF;
  height: 0.625rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: auto;
}

.social-links__icon:hover svg,
.social-links__icon:focus svg,
.social-links__icon:active svg {
  fill: #FFF;
}

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