@font-face {
  font-family: "Museo 300 Regular";
  src: url(../../fonts/Museo300-Regular.otf);
}

@font-face {
  font-family: "Museo 500 Regular";
  src: url(../../fonts/Museo500-Regular.otf);
}

@font-face {
  font-family: "Museo 700 Regular";
  src: url(../../fonts/Museo700-Regular.otf);
}

:root {
  --body-font: "Museo 300 Regular", serif;
  --headings-font: "Museo 500 Regular", serif;
  --link-font: "Museo 700 Regular", serif;

  --thin-font: "Museo 300 Regular", serif;
  --regular-font: "Museo 500 Regular", serif;
  --bold-font: "Museo 700 Regular", serif;
}

.small-header {
  font-family: var(--headings-font);
  color: var(--dark-purple);
}

h1 {
  margin: 0;
  margin-bottom: 1em;
  font-size: 24px;
  font-family: var(--headings-font);
  color: var(--slate);
  line-height: 28px;
}

h2 {
  margin: 0;
  margin-bottom: 1em;
  font-size: 22px;
  font-family: var(--headings-font);
  color: var(--slate);
  line-height: 26px;
}

h3 {
  margin: 0;
  margin-bottom: 1em;
  font-size: 21px;
  font-family: var(--headings-font);
  color: var(--slate);
  line-height: 25px;
}

h4,
.cm-faceted-search-filter-block-side-title {
  margin: 0;
  margin-bottom: 1em;
  font-size: 20px;
  font-family: var(--headings-font);
  color: var(--slate);
  line-height: 24px;
}

h5 {
  margin: 0;
  margin-bottom: 1em;
  font-size: 18px;
  font-family: var(--headings-font);
  color: var(--slate);
  line-height: 22px;
}

h6 {
  margin: 0;
  margin-bottom: 1em;
  font-size: 16px;
  font-family: var(--headings-font);
  color: var(--slate);
  line-height: 20px;
}

body,
input,
button,
textarea {
  font-size: 16px;
  font-family: var(--body-font);
  color: var(--slate);
}

body,
p {
  line-height: 24px;
}

p {
  margin: 0;
  margin-bottom: 1em;
}

.product-body p + a {
  display: inline-block;
  margin-bottom: 1em;
}

.glance p {
  margin-bottom: 0.5em;
}

ul,
ol {
  margin: 0;
  margin-bottom: 1em;
  padding: 0;
  padding-left: 1em;
  font-size: 16px;
  line-height: 24px;
}

ol li {
  padding-left: 1em;
}

ol li::marker {
  font-family: var(--regular-font);
  color: var(--dark-purple);
}

.text-white ol li::marker {
  color: var(--white);
}

ul li {
  padding-left: 1em;
}

ul li::marker {
  color: var(--dark-purple);
}

.tab-section .section ul li {
  margin-bottom: 0.5em;
}

.text-white ul li::marker {
  color: var(--white);
}

a,
.product-list-accordion-toggle.collapsed
  .product-list-accordion-toggle-collapsed,
.product-list-accordion-toggle:not(.collapsed)
  .product-list-accordion-toggle-expanded {
  font-family: var(--link-font);
  text-decoration: underline;
  color: var(--dark-purple);
}

a:hover,
a:focus,
.product-list-accordion-toggle.collapsed
  .product-list-accordion-toggle-collapsed:hover,
.product-list-accordion-toggle.collapsed
  .product-list-accordion-toggle-collapsed:focus,
.product-list-accordion-toggle:not(.collapsed)
  .product-list-accordion-toggle-expanded:hover,
.product-list-accordion-toggle:not(.collapsed)
  .product-list-accordion-toggle-expanded:focus {
  text-decoration: underline;
  color: var(--dark-blue);
}

.currency-select,
.currency-select span {
  font-family: var(--bold-font);
}

.arrow-link {
  display: inline-block;
  width: fit-content;
  position: relative;
  font-size: 16px;
  text-decoration: none;
  transition: all 200ms ease-in-out;
}

.arrow-link::after {
  position: absolute;
  content: url(../../images/icons/arrow-purple.svg);
  top: 0px;
  right: -25px;
  transform: scale(0.6);
  transition: all 200ms ease-in-out;
}

.arrow-link:hover,
.arrow-link:focus {
  color: var(--dark-purple);
  text-decoration: none;
}

.arrow-link:hover:after,
.arrow-link:focus:after {
  position: absolute;
  content: url(../../images/icons/arrow-purple.svg);
  right: -30px;
}

@media only screen and (min-width: 1024px) {
  .arrow-link {
    font-size: 18px;
  }

  .arrow-link::after {
    top: 0;
    right: -30px;
    transform: scale(0.8);
  }

  .arrow-link:hover:after,
  .arrow-link:focus:after {
    right: -40px;
  }
}

@media only screen and (min-width: 1024px) {
  h1 {
    font-size: 32px;
    font-family: var(--headings-font);
    line-height: 40px;
  }

  h2 {
    font-size: 28px;
    font-family: var(--headings-font);
    line-height: 36px;
  }

  h3 {
    font-size: 24px;
    font-family: var(--headings-font);
    line-height: 28px;
  }

  h4,
  .cm-faceted-search-filter-block-side-title {
    font-size: 22px;
    font-family: var(--headings-font);
    line-height: 26px;
  }

  h5 {
    font-size: 20px;
    font-family: var(--headings-font);
    line-height: 24px;
  }

  h6 {
    font-size: 18px;
    font-family: var(--headings-font);
    line-height: 22px;
  }

  body,
  input,
  button,
  textarea {
    font-size: 18px;
    font-family: var(--body-font);
  }

  body,
  p {
    line-height: 28px;
  }

  ul,
  ol {
    font-size: 18px;
    line-height: 28px;
  }
}

@media only screen and (min-width: 1920px) {
  h1 {
    font-size: 40px;
    font-family: var(--headings-font);
    line-height: 48px;
  }

  h2 {
    font-size: 36px;
    font-family: var(--headings-font);
    line-height: 44px;
  }

  h3 {
    font-size: 32px;
    font-family: var(--headings-font);
    line-height: 36px;
  }

  h4,
  .cm-faceted-search-filter-block-side-title {
    font-size: 28px;
    font-family: var(--headings-font);
    line-height: 32px;
  }

  h5 {
    font-size: 24px;
    font-family: var(--headings-font);
    line-height: 28px;
  }

  h6 {
    font-size: 22px;
    font-family: var(--headings-font);
    line-height: 26px;
  }
}
