/* ccl.css: Code Creation Labs website chrome (navbar, footer, legal pages), copied 1:1 from the LIVE
   https://codecreationlabs.com stylesheets (/css/site.css?v=aa26519e + /css/ccl-extras.css?v=cc418487), only the rules these components use.
   GENERATED by tools/sync-brand.py; do not hand-edit. See BRANDING.md. */
html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  font-family: sans-serif;
}
body {
  margin: 0;
}
a {
  background-color: #0000;
}
b, strong {
  font-weight: bold;
}
h1 {
  margin: .67em 0;
  font-size: 2em;
}
img {
  border: 0;
}
html {
  height: 100%;
}
body {
  color: #333;
  background-color: #fff;
  min-height: 100%;
  margin: 0;
  font-family: Arial, sans-serif;
  font-size: 14px;
  line-height: 20px;
}
img {
  vertical-align: middle;
  max-width: 100%;
  display: inline-block;
}
.w-inline-block {
  max-width: 100%;
  display: inline-block;
}
h1, h2, h3, h4, h5, h6 {
  margin-bottom: 10px;
  font-weight: bold;
}
h1 {
  margin-top: 20px;
  font-size: 38px;
  line-height: 44px;
}
h2 {
  margin-top: 20px;
  font-size: 32px;
  line-height: 36px;
}
h3 {
  margin-top: 20px;
  font-size: 24px;
  line-height: 30px;
}
p {
  margin-top: 0;
  margin-bottom: 10px;
}
ul, ol {
  margin-top: 0;
  margin-bottom: 10px;
  padding-left: 40px;
}
.w-embed:before, .w-embed:after {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}
.w-embed:after {
  clear: both;
}
.w-dropdown-list.w--open {
  display: block;
}
.w-dropdown-link.w--current {
  color: #0082f3;
}
@media screen and (max-width: 767px) {
  .w-nav-brand {
    padding-left: 10px;
  }
}
.w-nav {
  z-index: 1000;
  background: #ddd;
  position: relative;
}
.w-nav:before, .w-nav:after {
  content: " ";
  grid-area: 1 / 1 / 2 / 2;
  display: table;
}
.w-nav:after {
  clear: both;
}
.w-nav-brand {
  float: left;
  color: #333;
  text-decoration: none;
  position: relative;
}
.w-nav-link {
  vertical-align: top;
  color: #222;
  text-align: left;
  margin-left: auto;
  margin-right: auto;
  padding: 20px;
  text-decoration: none;
  display: inline-block;
  position: relative;
}
.w-nav-link.w--current {
  color: #0082f3;
}
.w-nav-menu {
  float: right;
  position: relative;
}
[data-nav-menu-open] {
  text-align: center;
  background: #c8c8c8;
  min-width: 200px;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  overflow: visible;
  display: block !important;
}
.w--nav-link-open {
  display: block;
  position: relative;
}
.w-nav-overlay {
  width: 100%;
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  overflow: hidden;
}
.w-nav-overlay [data-nav-menu-open] {
  top: 0;
}
.w-nav[data-animation="over-left"] .w-nav-overlay {
  width: auto;
}
.w-nav[data-animation="over-left"] .w-nav-overlay, .w-nav[data-animation="over-left"] [data-nav-menu-open] {
  z-index: 1;
  top: 0;
  right: auto;
}
.w-nav[data-animation="over-right"] .w-nav-overlay {
  width: auto;
}
.w-nav[data-animation="over-right"] .w-nav-overlay, .w-nav[data-animation="over-right"] [data-nav-menu-open] {
  z-index: 1;
  top: 0;
  left: auto;
}
.w-nav-button {
  float: right;
  cursor: pointer;
  -webkit-tap-highlight-color: #0000;
  tap-highlight-color: #0000;
  -webkit-user-select: none;
  user-select: none;
  padding: 18px;
  font-size: 24px;
  display: none;
  position: relative;
}
.w-nav-button:focus {
  outline: 0;
}
.w-nav-button.w--open {
  color: #fff;
  background-color: #c8c8c8;
}
.w-nav[data-collapse="all"] .w-nav-menu {
  display: none;
}
.w-nav[data-collapse="all"] .w-nav-button, .w--nav-dropdown-open, .w--nav-dropdown-toggle-open {
  display: block;
}
@media screen and (max-width: 991px) {
  .w-nav[data-collapse="medium"] .w-nav-menu {
    display: none;
  }
  .w-nav[data-collapse="medium"] .w-nav-button {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  .w-nav[data-collapse="small"] .w-nav-menu {
    display: none;
  }
  .w-nav[data-collapse="small"] .w-nav-button {
    display: block;
  }
  .w-nav-brand {
    padding-left: 10px;
  }
}
@media screen and (max-width: 479px) {
  .w-nav[data-collapse="tiny"] .w-nav-menu {
    display: none;
  }
  .w-nav[data-collapse="tiny"] .w-nav-button {
    display: block;
  }
}
.w-tab-link.w--current {
  background-color: #c8c8c8;
}
@font-face {
  font-family: Mantul;
  src: url("/static/mantul.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Dinpro;
  src: url("/static/dinpro-medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Dinpro;
  src: url("/static/dinpro.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
:root {
  --color-scheme-1--background: var(--_primitives---colors--white);
  --_typography---font-styles--body: Dinpro, Verdana, sans-serif;
  --color-scheme-1--text: var(--_primitives---colors--neutral-darkest);
  --_typography---font-styles--heading: Mantul, Arial, sans-serif;
  --_primitives---colors--white: #fff;
  --_primitives---opacity--transparent: transparent;
  --_primitives---opacity--neutral-darkest-20: #0003;
  --_primitives---colors--green: #00f5c9;
  --_ui-styles---radius--large: 999rem;
  --_primitives---colors--neutral-darkest: black;
  --_primitives---opacity--white-20: #fff3;
  --_primitives---opacity--neutral-darkest-50: #00000080;
  --_primitives---opacity--neutral-darkest-60: #0009;
  --_ui-styles---radius--small: 1rem;
  --_primitives---opacity--white-60: #fff9;
  --_ui-styles---stroke--border-width: 1px;
  --color-scheme-1--border: var(--_primitives---opacity--neutral-darkest-20);
  --color-scheme-1--foreground: var(--_primitives---colors--beige);
  --_ui-styles---radius--medium: 2rem;
  --_primitives---colors--beige: #f2f2e4;
  --color-scheme-1--accent: var(--_primitives---colors--green);
  --_primitives---colors--blue: #1a1e4f;
  --_primitives---opacity--white-10: #ffffff1a;
  --_primitives---opacity--white-15: #ffffff26;
  --_primitives---opacity--white-5: #ffffff0d;
  --_primitives---opacity--white-30: #ffffff4d;
  --_primitives---opacity--white-40: #fff6;
  --_primitives---opacity--white-50: #ffffff80;
  --_primitives---opacity--neutral-darkest-5: #0000000d;
  --_primitives---opacity--neutral-darkest-10: #0000001a;
  --_primitives---opacity--neutral-darkest-15: #00000026;
  --_primitives---opacity--neutral-darkest-30: #0000004d;
  --_primitives---opacity--neutral-darkest-40: #0006;
  --_ui-styles---stroke--divider-width: 1px;
}
.w-layout-grid {
  grid-row-gap: 16px;
  grid-column-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  display: grid;
}
body {
  background-color: var(--color-scheme-1--background);
  font-family: var(--_typography---font-styles--body);
  color: var(--color-scheme-1--text);
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
}
h1 {
  font-family: var(--_typography---font-styles--heading);
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 4.5rem;
  font-weight: 400;
  line-height: 1.2;
}
h2 {
  font-family: var(--_typography---font-styles--heading);
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 3.5rem;
  font-weight: 400;
  line-height: 1.2;
}
h3 {
  font-family: var(--_typography---font-styles--heading);
  text-transform: uppercase;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 3rem;
  font-weight: 400;
  line-height: 1.2;
}
p {
  margin-bottom: 0;
}
a {
  color: var(--color-scheme-1--text);
  text-decoration: underline;
}
ul {
  margin-top: 1rem;
  margin-bottom: 1rem;
  padding-left: 1.25rem;
}
li {
  margin-top: .25rem;
  margin-bottom: .25rem;
  padding-left: .5rem;
}
img {
  max-width: 100%;
  display: inline-block;
}
.container-large {
  width: 100%;
  max-width: 80rem;
  margin-left: auto;
  margin-right: auto;
}
.margin-tiny {
  margin: .25rem;
}
.margin-xsmall {
  margin: 1rem;
}
.margin-small {
  margin: 1.5rem;
}
.margin-medium {
  margin: 2rem;
}
.padding-small {
  padding: 1.5rem;
}
.padding-xxlarge {
  padding: 5rem;
}
.margin-top, .margin-top.margin-custom1, .margin-top.margin-huge, .margin-top.margin-small, .margin-top.margin-tiny, .margin-top.margin-custom3, .margin-top.margin-medium, .margin-top.margin-xxsmall, .margin-top.margin-xxhuge, .margin-top.margin-custom2, .margin-top.margin-xsmall, .margin-top.margin-large, .margin-top.margin-xxlarge, .margin-top.margin-xlarge, .margin-top.margin-0, .margin-top.margin-xhuge {
  margin-bottom: 0;
  margin-left: 0;
  margin-right: 0;
}
.margin-bottom, .margin-bottom.margin-xxlarge, .margin-bottom.margin-medium, .margin-bottom.margin-custom3, .margin-bottom.margin-custom1, .margin-bottom.margin-tiny, .margin-bottom.margin-small, .margin-bottom.margin-large, .margin-bottom.margin-0, .margin-bottom.margin-xlarge, .margin-bottom.margin-xhuge, .margin-bottom.margin-xxhuge, .margin-bottom.margin-huge, .margin-bottom.margin-xxsmall, .margin-bottom.margin-custom2, .margin-bottom.margin-xsmall {
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
}
.margin-left, .margin-left.margin-tiny, .margin-left.margin-xxlarge, .margin-left.margin-0, .margin-left.margin-small, .margin-left.margin-xsmall, .margin-left.margin-large, .margin-left.margin-huge, .margin-left.margin-xlarge, .margin-left.margin-custom3, .margin-left.margin-xxsmall, .margin-left.margin-custom1, .margin-left.margin-custom2, .margin-left.margin-xhuge, .margin-left.margin-xxhuge, .margin-left.margin-medium {
  margin-top: 0;
  margin-bottom: 0;
  margin-right: 0;
}
.margin-right, .margin-right.margin-huge, .margin-right.margin-xsmall, .margin-right.margin-xxhuge, .margin-right.margin-small, .margin-right.margin-medium, .margin-right.margin-xlarge, .margin-right.margin-custom3, .margin-right.margin-custom2, .margin-right.margin-xxsmall, .margin-right.margin-xhuge, .margin-right.margin-custom1, .margin-right.margin-large, .margin-right.margin-0, .margin-right.margin-xxlarge, .margin-right.margin-tiny {
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 0;
}
.margin-vertical, .margin-vertical.margin-medium, .margin-vertical.margin-xlarge, .margin-vertical.margin-xxsmall, .margin-vertical.margin-xxlarge, .margin-vertical.margin-huge, .margin-vertical.margin-0, .margin-vertical.margin-xxhuge, .margin-vertical.margin-tiny, .margin-vertical.margin-xsmall, .margin-vertical.margin-custom1, .margin-vertical.margin-small, .margin-vertical.margin-large, .margin-vertical.margin-xhuge, .margin-vertical.margin-custom2, .margin-vertical.margin-custom3 {
  margin-left: 0;
  margin-right: 0;
}
.margin-horizontal, .margin-horizontal.margin-medium, .margin-horizontal.margin-tiny, .margin-horizontal.margin-custom3, .margin-horizontal.margin-0, .margin-horizontal.margin-xxlarge, .margin-horizontal.margin-xhuge, .margin-horizontal.margin-huge, .margin-horizontal.margin-xlarge, .margin-horizontal.margin-custom1, .margin-horizontal.margin-xxsmall, .margin-horizontal.margin-xsmall, .margin-horizontal.margin-large, .margin-horizontal.margin-custom2, .margin-horizontal.margin-small, .margin-horizontal.margin-xxhuge {
  margin-top: 0;
  margin-bottom: 0;
}
.padding-top, .padding-top.padding-xhuge, .padding-top.padding-xxhuge, .padding-top.padding-0, .padding-top.padding-large, .padding-top.padding-custom2, .padding-top.padding-xlarge, .padding-top.padding-huge, .padding-top.padding-xxsmall, .padding-top.padding-custom3, .padding-top.padding-tiny, .padding-top.padding-medium, .padding-top.padding-xxlarge, .padding-top.padding-small, .padding-top.padding-xsmall, .padding-top.padding-custom1 {
  padding-bottom: 0;
  padding-left: 0;
  padding-right: 0;
}
.padding-bottom, .padding-bottom.padding-xlarge, .padding-bottom.padding-small, .padding-bottom.padding-xxhuge, .padding-bottom.padding-large, .padding-bottom.padding-xhuge, .padding-bottom.padding-custom2, .padding-bottom.padding-xxsmall, .padding-bottom.padding-xxlarge, .padding-bottom.padding-custom3, .padding-bottom.padding-custom1, .padding-bottom.padding-xsmall, .padding-bottom.padding-huge, .padding-bottom.padding-tiny, .padding-bottom.padding-medium, .padding-bottom.padding-0 {
  padding-top: 0;
  padding-left: 0;
  padding-right: 0;
}
.padding-left, .padding-left.padding-xhuge, .padding-left.padding-xlarge, .padding-left.padding-0, .padding-left.padding-small, .padding-left.padding-xsmall, .padding-left.padding-medium, .padding-left.padding-xxhuge, .padding-left.padding-huge, .padding-left.padding-custom1, .padding-left.padding-tiny, .padding-left.padding-xxsmall, .padding-left.padding-custom3, .padding-left.padding-custom2, .padding-left.padding-xxlarge, .padding-left.padding-large {
  padding-top: 0;
  padding-bottom: 0;
  padding-right: 0;
}
.padding-right, .padding-right.padding-xxhuge, .padding-right.padding-custom2, .padding-right.padding-large, .padding-right.padding-xlarge, .padding-right.padding-tiny, .padding-right.padding-custom3, .padding-right.padding-custom1, .padding-right.padding-xsmall, .padding-right.padding-xxlarge, .padding-right.padding-xxsmall, .padding-right.padding-medium, .padding-right.padding-xhuge, .padding-right.padding-huge, .padding-right.padding-0, .padding-right.padding-small {
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 0;
}
.padding-vertical, .padding-vertical.padding-0, .padding-vertical.padding-xxhuge, .padding-vertical.padding-large, .padding-vertical.padding-custom3, .padding-vertical.padding-medium, .padding-vertical.padding-tiny, .padding-vertical.padding-xxlarge, .padding-vertical.padding-custom1, .padding-vertical.padding-xsmall, .padding-vertical.padding-xhuge, .padding-vertical.padding-xlarge, .padding-vertical.padding-custom2, .padding-vertical.padding-xxsmall, .padding-vertical.padding-huge, .padding-vertical.padding-small {
  padding-left: 0;
  padding-right: 0;
}
.padding-horizontal, .padding-horizontal.padding-xxsmall, .padding-horizontal.padding-0, .padding-horizontal.padding-custom3, .padding-horizontal.padding-huge, .padding-horizontal.padding-xsmall, .padding-horizontal.padding-medium, .padding-horizontal.padding-xxlarge, .padding-horizontal.padding-large, .padding-horizontal.padding-xhuge, .padding-horizontal.padding-custom1, .padding-horizontal.padding-tiny, .padding-horizontal.padding-custom2, .padding-horizontal.padding-xxhuge, .padding-horizontal.padding-small, .padding-horizontal.padding-xlarge {
  padding-top: 0;
  padding-bottom: 0;
}
.form_checkbox-label.text-size-small {
  color: var(--color-scheme-1--text);
  font-family: Dinpro, Verdana, sans-serif;
  font-weight: 500;
}
.text-weight-semibold {
  font-weight: 600;
}
.icon-embed-xsmall {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  display: flex;
}
.text-size-small {
  font-size: .875rem;
}
.text-size-small.footer {
  transition: all .3s;
}
.text-size-small.footer:hover {
  color: var(--_primitives---colors--green);
}
.padding-global {
  padding-left: 5%;
  padding-right: 5%;
}
.rl-styleguide_nav-link.w--current {
  border-radius: var(--_ui-styles---radius--large);
  background-color: var(--color-scheme-1--background);
}
.tab-link.w--current {
  border-color: var(--_primitives---colors--green);
  border-radius: var(--_ui-styles---radius--large);
  background-color: var(--_primitives---colors--green);
  color: var(--color-scheme-1--text);
}
.category-filter-link.w--current {
  border-color: var(--color-scheme-1--text);
  border-radius: var(--_ui-styles---radius--large);
  background-color: var(--color-scheme-1--text);
  color: var(--_primitives---colors--white);
}
.navbar {
  background-color: var(--_primitives---colors--neutral-darkest);
  width: 100%;
  height: auto;
  min-height: 6rem;
  color: var(--_primitives---colors--white);
  border-bottom: 1px solid #707070;
  align-items: center;
  padding-left: 5%;
  padding-right: 5%;
  display: flex;
}
.navbar_container {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto;
  grid-template-columns: .375fr 1fr .375fr;
  grid-auto-columns: 1fr;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  display: grid;
}
.navbar_logo-link {
  padding-left: 0;
}
.navbar_logo {
  width: 100%;
  max-width: 120px;
}
.navbar_menu {
  justify-content: center;
  align-items: center;
  display: flex;
  position: static;
}
.navbar_link {
  padding: .5rem 2rem;
  transition: all .3s;
}
.navbar_link:hover {
  color: var(--_primitives---colors--green);
}
.navbar_link.w--current {
  color: var(--_primitives---colors--neutral-darkest);
}
.navbar_button-wrapper {
  grid-column-gap: 1rem;
  margin-left: 1rem;
  display: flex;
}
.navbar_menu-button {
  padding: 0;
}
.footer {
  background-color: var(--_primitives---colors--neutral-darkest);
  color: var(--_primitives---colors--white);
}
.footer_top-wrapper {
  grid-column-gap: 4vw;
  grid-row-gap: 0px;
  grid-template-rows: auto;
  grid-template-columns: 1fr .5fr;
  place-items: end stretch;
}
.footer_logo-link {
  float: none;
  padding-left: 0;
}
.footer_social-list {
  grid-column-gap: .75rem;
  grid-row-gap: 0rem;
  white-space: normal;
  grid-template-rows: auto;
  grid-template-columns: max-content;
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  place-items: start;
  display: flex;
}
.footer_social-link {
  color: var(--_primitives---colors--green);
  align-items: center;
  font-size: 14px;
  text-decoration: none;
  transition: all .3s;
  display: flex;
}
.footer_social-link:hover {
  color: var(--_primitives---colors--beige);
}
.footer_menu-wrapper {
  grid-column-gap: 2rem;
  grid-row-gap: 1rem;
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr;
  align-items: start;
}
.footer_link-list {
  flex-direction: column;
  grid-template-rows: auto;
  grid-template-columns: 100%;
  grid-auto-columns: 100%;
  place-items: flex-start start;
  display: flex;
}
.footer_link {
  padding-top: .5rem;
  padding-bottom: .5rem;
  font-size: .875rem;
  font-weight: 600;
  text-decoration: none;
  transition: all .3s;
}
.footer_link:hover {
  color: var(--_primitives---colors--green);
}
.footer_bottom-wrapper {
  justify-content: space-between;
  align-items: center;
  display: flex;
}
.footer_credit-text {
  font-size: .875rem;
}
.footer_legal-list {
  grid-column-gap: 1.5rem;
  grid-row-gap: 0rem;
  white-space: normal;
  grid-template-rows: auto;
  grid-template-columns: max-content;
  grid-auto-columns: max-content;
  grid-auto-flow: column;
  justify-content: center;
  display: flex;
}
.footer_legal-link {
  font-size: .875rem;
  text-decoration: underline;
}
.footer-2 {
  background-color: var(--_primitives---colors--blue);
}
.mantul-footer {
  font-family: Mantul, Arial, sans-serif;
  font-weight: 400;
}
@media screen and (max-width: 991px) {
  h1 {
    font-size: 3.25rem;
  }
  h2 {
    font-size: 2.75rem;
  }
  h3 {
    font-size: 2.25rem;
  }
  .padding-xxlarge {
    padding: 4.5rem;
  }
  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }
  .navbar_container {
    grid-template-columns: .25fr 1fr;
    display: flex;
  }
  .navbar_menu {
    border-bottom: 1px solid var(--color-scheme-1--border);
    background-color: var(--color-scheme-1--background);
    -webkit-text-fill-color: inherit;
    background-clip: border-box;
    justify-content: center;
    width: 100%;
    padding: 1rem 5% 2.5rem;
    display: flex;
    position: absolute;
    overflow: auto;
  }
  .navbar_menu.is-page-height-tablet {
    background-color: var(--_primitives---colors--neutral-darkest);
    height: 100dvh;
    padding-bottom: 6.5rem;
    transition: height .5s;
  }
  .navbar_link {
    text-align: center;
    padding: .75rem 0;
    font-size: 1.125rem;
  }
  .navbar_button-wrapper {
    align-items: center;
  }
  .navbar_menu-button {
    padding: 0;
  }
  .navbar_menu-button.w--open {
    background-color: var(--_primitives---opacity--transparent);
  }
  .menu-icon2 {
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 48px;
    height: 48px;
    margin-right: -.5rem;
    padding-bottom: 0;
    padding-right: 0;
    display: flex;
  }
  .menu-icon2_line-top {
    background-color: var(--_primitives---colors--white);
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
  }
  .menu-icon2_line-middle {
    background-color: var(--_primitives---colors--white);
    justify-content: center;
    align-items: center;
    width: 24px;
    height: 2px;
    margin-top: 6px;
    margin-bottom: 6px;
    padding-bottom: 0;
    padding-right: 0;
    display: flex;
  }
  .menu-icon2_line-middle-inner {
    width: 4px;
    height: 0;
    padding-bottom: 0;
    padding-right: 0;
  }
  .menu-icon2_line-bottom {
    background-color: var(--_primitives---colors--white);
    width: 24px;
    height: 2px;
    padding-bottom: 0;
    padding-right: 0;
  }
  .footer_top-wrapper {
    grid-row-gap: 4rem;
    grid-template-columns: 1fr;
  }
}
@media screen and (max-width: 767px) {
  h1 {
    font-size: 2.5rem;
  }
  h2 {
    font-size: 2.25rem;
  }
  h3 {
    font-size: 2rem;
  }
  .margin-xsmall {
    margin: .75rem;
  }
  .margin-small {
    margin: 1.25rem;
  }
  .margin-medium {
    margin: 1.5rem;
  }
  .padding-small {
    padding: 1.25rem;
  }
  .padding-xxlarge {
    padding: 3rem;
  }
  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }
  .navbar {
    min-height: 4rem;
  }
  .navbar_menu.is-page-height-tablet {
    padding-bottom: 6rem;
  }
  .footer_top-wrapper {
    grid-row-gap: 3rem;
  }
  .footer_menu-wrapper {
    grid-column-gap: 1.5rem;
  }
  .footer_bottom-wrapper {
    flex-direction: column-reverse;
    align-items: flex-start;
    padding-bottom: 1rem;
  }
  .footer_credit-text {
    margin-top: 2rem;
  }
  .footer_legal-list {
    grid-column-gap: 0rem;
    grid-row-gap: 1rem;
    flex-flow: column;
    grid-auto-flow: row;
  }
}
@media screen and (max-width: 479px) {
  h1 {
    font-size: 2.5rem;
  }
  h2 {
    font-size: 2rem;
  }
  .margin-top {
    margin-bottom: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .margin-bottom {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .padding-vertical {
    padding-left: 0;
    padding-right: 0;
  }
  .text-size-small.text-align-right.case-stury {
    font-size: .75rem;
  }
  .navbar_logo {
    max-width: 80px;
  }
  .navbar_button-wrapper {
    grid-column-gap: .5rem;
  }
  .footer_menu-wrapper {
    grid-row-gap: 2.5rem;
    grid-template-columns: 1fr;
  }
}

/* ---- webflow.js open state of the mobile menu (webflow.js itself is not used) */
.menu-icon2_line-top, .menu-icon2_line-middle, .menu-icon2_line-bottom { transition: transform .4s, opacity .4s; }
.w--open .menu-icon2_line-top { transform: translateY(8px) rotate(45deg); }
.w--open .menu-icon2_line-middle { opacity: 0; }
.w--open .menu-icon2_line-bottom { transform: translateY(-8px) rotate(-45deg); }

/* ---- inline <head> style of every .com page */
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -o-font-smoothing: antialiased;
}

/* ---- inline "style-overrides" embed of every .com page */
/* Ensure all elements inherit the color from its parent */
a,
.w-input,
.w-select,
.w-tab-link,
.w-nav-link,
.w-nav-brand,
.w-dropdown-btn,
.w-dropdown-toggle,
.w-slider-arrow-left,
.w-slider-arrow-right,
.w-dropdown-link {
  color: inherit;
  text-decoration: inherit;
  font-size: inherit;
}
/* Focus state style for keyboard navigation for the focusable elements */
*[tabindex]:focus-visible,
  input[type="file"]:focus-visible {
   outline: 0.125rem solid #4d65ff;
   outline-offset: 0.125rem;
}
/* Get rid of top margin on first element in any rich text element */
.w-richtext > :not(div):first-child, .w-richtext > div:first-child > :first-child {
  margin-top: 0 !important;
}
/* Get rid of bottom margin on last element in any rich text element */
.w-richtext>:last-child, .w-richtext ol li:last-child, .w-richtext ul li:last-child {
	margin-bottom: 0 !important;
}
/* Prevent all click and hover interaction with an element */
.pointer-events-off {
	pointer-events: none;
}
/* Enables all click and hover interaction with an element */
.pointer-events-on {
  pointer-events: auto;
}
/* Create a class of .div-square which maintains a 1:1 dimension of a div */
.div-square::after {
	content: "";
	display: block;
	padding-bottom: 100%;
}
/* Make sure containers never lose their center alignment */
.container-medium,.container-small, .container-large {
	margin-right: auto !important;
  margin-left: auto !important;
}
/* Apply "..." after 3 lines of text */
.text-style-3lines {
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
}
/* Apply "..." after 2 lines of text */
.text-style-2lines {
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}
/* Adds inline flex display */
.display-inlineflex {
  display: inline-flex;
}
/* These classes are never overwritten */
.hide {
  display: none !important;
}
/* Remove default Webflow chevron from form select */
select{
  -webkit-appearance:none;
}
@media screen and (max-width: 991px) {
    .hide, .hide-tablet {
        display: none !important;
    }
}
  @media screen and (max-width: 767px) {
    .hide-mobile-landscape{
      display: none !important;
    }
}
  @media screen and (max-width: 479px) {
    .hide-mobile{
      display: none !important;
    }
}
.margin-0 {
  margin: 0rem !important;
}
.padding-0 {
  padding: 0rem !important;
}
.spacing-clean {
padding: 0rem !important;
margin: 0rem !important;
}
.margin-top {
  margin-right: 0rem !important;
  margin-bottom: 0rem !important;
  margin-left: 0rem !important;
}
.padding-top {
  padding-right: 0rem !important;
  padding-bottom: 0rem !important;
  padding-left: 0rem !important;
}
.margin-right {
  margin-top: 0rem !important;
  margin-bottom: 0rem !important;
  margin-left: 0rem !important;
}
.padding-right {
  padding-top: 0rem !important;
  padding-bottom: 0rem !important;
  padding-left: 0rem !important;
}
.margin-bottom {
  margin-top: 0rem !important;
  margin-right: 0rem !important;
  margin-left: 0rem !important;
}
.padding-bottom {
  padding-top: 0rem !important;
  padding-right: 0rem !important;
  padding-left: 0rem !important;
}
.margin-left {
  margin-top: 0rem !important;
  margin-right: 0rem !important;
  margin-bottom: 0rem !important;
}
.padding-left {
  padding-top: 0rem !important;
  padding-right: 0rem !important;
  padding-bottom: 0rem !important;
}
.margin-horizontal {
  margin-top: 0rem !important;
  margin-bottom: 0rem !important;
}
.padding-horizontal {
  padding-top: 0rem !important;
  padding-bottom: 0rem !important;
}
.margin-vertical {
  margin-right: 0rem !important;
  margin-left: 0rem !important;
}
.padding-vertical {
  padding-right: 0rem !important;
  padding-left: 0rem !important;
}
/* Apply "..." at 100% width */
.truncate-width { 
		width: 100%; 
    white-space: nowrap; 
    overflow: hidden; 
    text-overflow: ellipsis; 
}
/* Removes native scrollbar */
.no-scrollbar {
    -ms-overflow-style: none;
    overflow: -moz-scrollbars-none; 
}
.no-scrollbar::-webkit-scrollbar {
    display: none;
}

/* ---- ccl-extras.css */
a:visited,
.navbar a:visited,
.footer a:visited,
.ccl-flag:visited,
.ccl-legal a:visited,
.ccl-app-card:visited,
.shopify-floating-badge:visited { color: inherit; }
.ccl-flag:visited { color: rgba(255,255,255,0.65); border-color: rgba(255,255,255,0.15); }
.ccl-flag-active:visited { color: #1a1e4f; border-color: #00f5c9; }
.ccl-bfs-link { align-items: center; text-decoration: none; }
.ccl-bfs { height: 26px; width: auto; display: block; transition: opacity .2s ease, transform .2s ease; }
.ccl-bfs-link:hover .ccl-bfs { opacity: 0.85; transform: translateY(-1px); }
@media (min-width: 992px) {
  .ccl-bfs-desktop { display: inline-flex !important; }
  .ccl-bfs-mobile { display: none !important; }
}
@media (max-width: 991px) {
  .ccl-bfs-desktop { display: none !important; }
  .ccl-bfs-mobile {
    display: flex !important;
    justify-content: center;
    align-items: center;
    padding: 1.25rem 0 .5rem;
    width: 100%;
  }
  .navbar_logo { max-width: 80px !important; }
}
@media (min-width: 992px) {
  .navbar .navbar_link { color: #fff !important; }
  .navbar .navbar_link.w--current { color: #fff !important; }
  .navbar .navbar_link:hover,
  .navbar .navbar_link.w--current:hover { color: #00f5c9 !important; }
}
@media (max-width: 991px) {
  .navbar_menu {
    background-color: #000 !important;
    border-bottom: 1px solid rgba(255,255,255,0.15) !important;
  }
  .navbar_menu .navbar_link,
  .navbar_menu .navbar_link.w--current,
  .navbar_menu .navbar_link:visited { color: #fff !important; }
  .navbar_menu .navbar_link:hover { color: #00f5c9 !important; }
}
.ccl-legal-page {
  background: var(--_primitives---colors--white, #fff);
  padding: clamp(48px, 7vw, 96px) 5% clamp(64px, 9vw, 112px);
}
.ccl-legal-container {
  max-width: 760px;
  margin: 0 auto;
}
.ccl-legal {
  font-family: var(--_typography---font-styles--body, "DINPro", Verdana, sans-serif);
  color: var(--_primitives---colors--neutral-darkest, #0d0d12);
  line-height: 1.7;
  font-size: 1rem;
}
.ccl-legal h1 {
  font-family: var(--_typography---font-styles--heading, "Mantul", Arial, sans-serif);
  font-size: clamp(2.2rem, 4.5vw, 3rem);
  color: var(--_primitives---colors--blue, #1a1e4f);
  margin: 0 0 .75rem;
  line-height: 1.1;
  letter-spacing: -0.01em;
}
.ccl-legal h2 {
  font-family: var(--_typography---font-styles--heading, "Mantul", Arial, sans-serif);
  font-size: 1.4rem;
  color: var(--_primitives---colors--blue, #1a1e4f);
  margin: 2.5rem 0 .75rem;
  letter-spacing: -0.005em;
}
.ccl-legal h3 {
  font-family: var(--_typography---font-styles--heading, "Mantul", Arial, sans-serif);
  font-size: 1.1rem;
  color: var(--_primitives---colors--blue, #1a1e4f);
  margin: 1.75rem 0 .5rem;
}
.ccl-legal p, .ccl-legal li { margin: 0 0 1rem; }
.ccl-legal ul { padding-left: 1.25rem; margin: 0 0 1.5rem; }
.ccl-legal li { margin-bottom: .4rem; }
.ccl-legal a {
  color: var(--_primitives---colors--blue, #1a1e4f);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.ccl-legal a:hover { color: var(--_primitives---colors--green, #00f5c9); }
.ccl-legal strong { font-weight: 700; color: var(--_primitives---colors--blue, #1a1e4f); }
.ccl-legal-scope {
  margin: 0 0 2rem;
  padding: 14px 18px;
  background: var(--_primitives---colors--beige, #f2f2e4);
  border-left: 4px solid var(--_primitives---colors--green, #00f5c9);
  border-radius: 0 8px 8px 0;
  font-size: 0.95rem;
  color: var(--_primitives---colors--neutral-darkest, #0d0d12);
}
.ccl-legal-scope strong { color: var(--_primitives---colors--blue, #1a1e4f); }
.ccl-legal .date {
  color: #6b6b78;
  font-size: .9rem;
  margin: -.25rem 0 2.5rem;
}
.ccl-legal code {
  background: var(--_primitives---colors--beige, #f2f2e4);
  padding: .15rem .4rem;
  border-radius: 4px;
  font-size: .9em;
  font-family: ui-monospace, SFMono-Regular, monospace;
}
.ccl-lang-switcher {
  display: flex;
  gap: 8px;
  justify-content: center;
  padding: 0 0 24px;
}
.ccl-flag {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 14px 6px 8px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.15);
  color: rgba(255,255,255,0.65);
  font-family: var(--_typography---font-styles--heading, "Mantul", Arial, sans-serif);
  font-size: 13px;
  letter-spacing: 0.06em;
  text-decoration: none;
  transition: border-color .2s ease, color .2s ease, background .2s ease;
}
.ccl-flag:hover {
  border-color: #00f5c9 !important;
  color: #00f5c9 !important;
  background: transparent !important;
}
.ccl-flag-active {
  background: var(--_primitives---colors--green, #00f5c9);
  color: var(--_primitives---colors--blue, #1a1e4f) !important;
  border-color: var(--_primitives---colors--green, #00f5c9);
  pointer-events: none;
}
.ccl-flag-img {
  display: inline-block;
  width: 20px;
  height: 14px;
  border-radius: 2px;
  flex-shrink: 0;
  box-shadow: 0 0 0 1px rgba(0,0,0,0.08);
}
.ccl-flag-de {
  background:
    linear-gradient(to bottom,
      #000 0 33.33%,
      #DD0000 33.33% 66.66%,
      #FFCE00 66.66% 100%);
}
.ccl-flag-us {
  background:
    linear-gradient(to right, #3C3B6E 0 40%, transparent 40%),
    repeating-linear-gradient(
      to bottom,
      #B22234 0 1px,
      #B22234 calc(100% / 13),
      #FFF calc(100% / 13),
      #FFF calc(2 * 100% / 13));
  background-color: #B22234;
}
.ccl-flag-us {
  position: relative;
  background:
    repeating-linear-gradient(
      to bottom,
      #B22234 0,
      #B22234 calc(100% / 13),
      #FFF calc(100% / 13),
      #FFF calc(2 * 100% / 13));
}
.ccl-flag-us::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 50%;
  height: 53.85%; 
  background: #3C3B6E;
}
.ccl-bfs-desktop .ccl-bfs { height: 36px; }
