@import "less/assets/swiper.min.css";
@import "less/assets/fancybox.css";
.mundial {
  font-family: "mundial", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.basic {
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
}
.caslon {
  font-family: "adobe-caslon-pro", serif;
  font-weight: 400;
  font-style: normal;
}
.noto {
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
}
.freight {
  font-family: "freight-text-pro", serif;
  font-weight: 400;
  font-style: italic;
}
.flex-col {
  display: flex;
  flex-direction: column;
}
.grid-parent {
  display: grid;
  grid-template-columns: repeat(32, 1fr);
  place-items: center;
  position: relative;
  z-index: 22;
}
@media only screen and (max-width: 1024px) {
  .grid-parent {
    grid-template-columns: repeat(12, 1fr);
  }
}
@media only screen and (max-width: 1024px) {
  .grid-parent-mobile-only {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    place-items: center;
  }
}
.fill-grid {
  grid-column: 1 / -1;
}
.mobile-body-font-size {
  font-size: calc(16rem * 1 / 4.33333);
  line-height: calc(24rem * 1 / 4.33333);
}
.ontop {
  position: relative;
  z-index: 9;
}
.sidetext {
  font-family: "mundial", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(24rem * 1 / 21.33333333 * var(--text-multiplier));
  writing-mode: vertical-lr;
  text-orientation: sideways;
  justify-self: flex-end;
  align-self: flex-start;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
@media only screen and (max-width: 1024px) {
  .sidetext {
    font-size: calc(24rem * 1 / 8);
  }
}
@media only screen and (max-width: 1024px) {
  .sidetext {
    font-size: calc(16rem * 1 / 4.33333);
  }
}
.purple-button {
  min-width: calc(164rem * 1 / 21.33333333 * var(--text-multiplier));
  height: calc(80rem * 1 / 21.33333333 * var(--text-multiplier));
  padding: 0 0.7rem;
  border: 0.025rem solid #806087;
  display: flex;
  place-items: center;
  cursor: pointer;
  transition: all 0.25s ease-out;
}
@media only screen and (max-width: 1024px) {
  .purple-button {
    width: calc(100rem * 1 / 4.33333);
    height: calc(48rem * 1 / 4.33333);
  }
}
.purple-button > span {
  font-family: "mundial", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(18rem * 1 / 21.33333333 * var(--text-multiplier));
  text-transform: uppercase;
  width: 100%;
  text-align: center;
  color: #461950;
}
@media only screen and (max-width: 1024px) {
  .purple-button > span {
    font-size: calc(12rem * 1 / 4.33333);
  }
}
.purple-button.active,
.purple-button:hover {
  background-color: #461950;
}
.purple-button.active > span,
.purple-button:hover > span {
  color: white;
}
.grow-on-hover {
  transition: all 2.25s ease-out;
}
.grow-on-hover:hover {
  transform: scale(1.55);
}
.grow-on-hover-med {
  transition: all 2.25s ease-out;
}
.grow-on-hover-med:hover {
  transform: scale(1.25);
}
.grow-on-hover-small {
  transition: all 2.25s ease-out;
}
.grow-on-hover-small:hover {
  transform: scale(1.1);
}
.transition {
  transition: all 0.25s ease-out;
}
.opacity-hover:hover {
  opacity: 0.8;
  transition: all 0.25s ease-out;
}
.opacity-dim {
  transition: all 0.25s ease-out;
}
.opacity-dim:hover {
  opacity: 0.8;
}
.grid-100 {
  display: grid;
  grid-template-rows: min-content;
  width: 100%;
  place-items: center;
}
.posts-all {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 30rem;
  background: #ffffff;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.80155812) 35%, #ffffff 70%, #ffffff 100%);
  align-items: center;
  z-index: 21;
}
@media only screen and (max-width: 1024px) {
  .posts-all {
    height: 300px;
  }
}
.posts-all > h4 {
  position: absolute;
  left: 50%;
  text-align: center;
  bottom: 6rem;
  transform: translateX(-50%);
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #484848;
  font-size: calc(24rem * 1 / 21.33333333 * var(--text-multiplier));
  width: 100%;
  cursor: pointer;
}
@media only screen and (max-width: 1024px) {
  .posts-all > h4 {
    bottom: 60px;
    font-size: 14px;
  }
}
.posts-loading {
  position: absolute;
  left: 50%;
  bottom: 0rem;
  transform: translateX(-50%);
}
.posts-loading > .circle {
  animation: fade-spin 1.2s ease-in-out infinite;
  animation-delay: 0s;
}
.posts-loading > .circle > div {
  position: absolute;
  top: 4px;
  left: 4px;
  width: 8px;
  aspect-ratio: 1;
  border-radius: 50%;
  background-color: #a4a4a485;
  transform: translate(0px, 40px);
}
.posts-loading > .circle:nth-child(1) {
  animation-delay: 0.06s;
}
.posts-loading > .circle:nth-child(2) {
  animation-delay: 0.12s;
}
.posts-loading > .circle:nth-child(3) {
  animation-delay: 0.18s;
}
.posts-loading > .circle:nth-child(4) {
  animation-delay: 0.24s;
}
.posts-loading > .circle:nth-child(5) {
  animation-delay: 0.3s;
}
.posts-loading > .circle:nth-child(6) {
  animation-delay: 0.36s;
}
.posts-loading > .circle:nth-child(7) {
  animation-delay: 0.42s;
}
.posts-empty {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  display: grid;
  grid-template-columns: repeat(32, 1fr);
  place-items: center;
  position: relative;
  z-index: 22;
}
@media only screen and (max-width: 1024px) {
  .posts-empty {
    grid-template-columns: repeat(12, 1fr);
  }
}
.posts-empty > h1 {
  grid-column: 2 / 16;
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #5A2F61;
  cursor: pointer;
  font-size: calc(28rem * 1 / 21.33333333 * var(--text-multiplier));
  width: fit-content;
  justify-self: flex-start;
}
@media only screen and (max-width: 1024px) {
  .posts-empty > h1 {
    font-size: 20px;
  }
}
.fancybox-data {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  width: 60%;
  max-height: 90vh;
  min-width: 320px;
  padding: 3rem 2.4rem;
}
@media only screen and (max-width: 1024px) {
  .fancybox-data {
    width: 100%;
    padding: 8rem 4.8rem;
    min-width: 100%;
  }
}
.fancybox-data-title {
  font-family: "adobe-caslon-pro", serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(38rem * 1 / 21.33333333 * var(--text-multiplier));
  width: 100%;
  font-weight: 600;
  margin-bottom: 1.4rem;
}
@media only screen and (max-width: 1024px) {
  .fancybox-data-title {
    font-size: calc(27rem * 1 / 4.33333);
    line-height: 1;
    margin-bottom: 2.8rem;
  }
}
.fancybox-data-content {
  display: flex;
  flex-direction: column;
  gap: 2rem 1rem;
  width: 100%;
}
.fancybox-data-content.row {
  flex-flow: row wrap;
}
.fancybox-data-content.text {
  gap: 1rem;
}
@media only screen and (max-width: 1024px) {
  .fancybox-data-content {
    gap: 2rem;
  }
}
.fancybox-data-content p,
.fancybox-data-content li,
.fancybox-data-content a {
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(18rem * 1 / 21.33333333 * var(--text-multiplier));
  line-height: calc(30rem * 1 / 21.33333333 * var(--text-multiplier));
  max-width: 100%;
  color: #484848;
}
@media only screen and (max-width: 1024px) {
  .fancybox-data-content p,
  .fancybox-data-content li,
  .fancybox-data-content a {
    font-size: calc(16rem * 1 / 4.33333);
    line-height: calc(25rem * 1 / 4.33333 * var(--text-multiplier));
  }
}
.fancybox-data-content li {
  margin-left: 1rem;
  list-style-type: disc;
}
@media only screen and (max-width: 1024px) {
  .fancybox-data-content li {
    margin-left: 3.6rem;
  }
}
.fancybox-data-content ol {
  margin-left: 1.75rem;
}
.fancybox-data-content ol > li {
  list-style-type: lower-alpha;
}
.fancybox-data-content strong {
  font-weight: 600;
}
.fancybox-data-content a {
  transition: all 0.25s ease-out;
  color: #381440;
  font-weight: 500;
}
.fancybox-data-content a:hover {
  text-decoration: underline;
}
.fancybox-data-content a:hover {
  color: #381440;
  text-decoration: underline;
}
.fancybox-data-content img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
.ellipsis-text {
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 5;
  /* Set the number of lines to show before applying ellipsis */
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.block-zindex {
  position: relative;
  z-index: 22;
}
.wysiwyg > p {
  margin-bottom: 1rem;
}
.wysiwyg > p:last-of-type {
  margin-bottom: 0;
}
@media only screen and (max-width: 1024px) {
  .wysiwyg > p {
    margin-bottom: 2rem;
  }
  .wysiwyg > p:last-of-type {
    margin-bottom: 0;
  }
}
@keyframes fade-spin {
  25% {
    transform: rotate(0deg);
  }
  50% {
    opacity: 1;
  }
  75% {
    opacity: 1;
  }
  100% {
    transform: rotate(360deg);
  }
}
:root {
  font-size: 1.11111111vw;
  --text-multiplier: 1;
  --base-url-img: "/wp-content/themes/harpergrey/images/";
  --grid-gap: 0rem;
  --grid-gutter: 0rem;
}
a {
  color: #5A2F61;
  font-weight: 500;
}
a:hover {
  text-decoration: underline;
}
body {
  color: #231F20;
  position: relative;
}
body .container {
  background-color: white;
  margin: auto;
  position: relative;
  z-index: 1;
}
body .grid {
  background-color: transparent;
  opacity: 0.2;
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  display: grid;
  grid-template-columns: repeat(32, 1fr);
  grid-template-rows: auto;
  margin: auto;
  z-index: 999;
}
@media only screen and (max-width: 1024px) {
  body .grid {
    grid-template-columns: repeat(12, 1fr);
  }
}
body .grid__item {
  background-color: rgba(0, 255, 255, 0.25);
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #231F20;
  font-size: 1.2rem;
  border-right: 0.0125rem solid #231F20;
}
body .grid__item:last-of-type {
  border-right: none;
}
@media only screen and (max-width: 1024px) {
  body .grid__item:nth-child(n+13) {
    display: none;
  }
}
body em,
body i {
  font-style: italic !important;
}
body strong,
body b {
  font-weight: bold !important;
}
body form::after,
body search::after {
  opacity: 0;
  content: "";
  position: absolute;
  top: 50%;
  right: 2rem;
  transform: translateY(-50%);
  z-index: 999;
  width: 1.15rem;
  height: 1.15rem;
  background-image: url(/wp-content/themes/harpergrey/images/icons/loading-spinner.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
@media only screen and (max-width: 1024px) {
  body form::after,
  body search::after {
    width: calc(24rem * 1 / 4.33333);
    height: calc(24rem * 1 / 4.33333);
    right: 4.5rem;
  }
}
body form.loading:after,
body search.loading:after {
  opacity: 1;
  animation: rotate-in-place 2s linear infinite;
}
@media only screen and (max-width: 1024px) {
  html #wpadminbar {
    display: none !important;
  }
}
#container.dark,
main.dark {
  filter: brightness(0.25);
}
#container.filter,
main.filter {
  filter: brightness(0.75);
}
#container {
  position: relative;
}
#container.shifted {
  padding-top: calc(120rem * 1 / 21.33333333 * var(--text-multiplier));
}
@keyframes rotate-in-place {
  0% {
    transform: translateY(-50%) rotate(0deg);
  }
  100% {
    transform: translateY(-50%) rotate(360deg);
  }
}
html {
  box-sizing: border-box;
}
*,
*:before,
*:after {
  box-sizing: inherit;
  margin: 0;
  padding: 0;
}
img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  outline: none;
}
a:link,
a:visited {
  text-decoration: none;
}
a:link:hover,
a:visited:hover {
  text-decoration: underline;
}
ol,
ul {
  list-style: none;
}
#unibox-suggest-box {
  display: none !important;
}
.search__results {
  grid-column: 1 / 10;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  max-height: 12rem;
  overflow-x: hidden;
  overflow-y: auto;
}
@media only screen and (max-width: 1024px) {
  .search__results {
    max-height: 20rem;
  }
}
.search__result {
  padding: calc(8rem * 1 / 21.33333333 * var(--text-multiplier));
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  background-color: #f3f3f3;
  border-bottom: 1px solid gray;
  min-height: 2rem;
}
.search__result:hover {
  background-color: #d5d5d5;
}
@media only screen and (max-width: 1024px) {
  .search__result {
    min-height: 7rem;
  }
}
.search__image {
  width: calc(50rem * 1 / 21.33333333 * var(--text-multiplier));
  height: calc(50rem * 1 / 21.33333333 * var(--text-multiplier));
  border-radius: 10rem;
}
.search__image.hidden {
  visibility: hidden;
  display: none;
}
@media only screen and (max-width: 1024px) {
  .search__image {
    padding: 1rem;
    width: calc(48rem * 1 / 4.33333);
    height: calc(48rem * 1 / 4.33333);
  }
}
.search__text {
  margin-left: calc(20rem * 1 / 21.33333333 * var(--text-multiplier));
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(18rem * 1 / 21.33333333 * var(--text-multiplier));
  color: #5A2F61;
}
@media only screen and (max-width: 1024px) {
  .search__text {
    font-size: calc(18rem * 1 / 4.33333 * var(--text-multiplier));
  }
}
.search__text-title {
  margin-left: calc(2rem * 1 / 21.33333333 * var(--text-multiplier));
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(14rem * 1 / 21.33333333 * var(--text-multiplier));
  color: #484848;
}
@media only screen and (max-width: 1024px) {
  .search__text-title {
    font-size: calc(14rem * 1 / 4.33333 * var(--text-multiplier));
  }
}
.skipTranslate {
  display: none !important;
}
.goog-te-banner-frame.skiptranslate {
  display: none !important;
}
body > .skiptranslate {
  display: none;
}
body {
  top: 0px !important;
}
.goog-logo-link {
  display: none !important;
}
.VIpgJd-ZVi9od-aZ2wEe-wOHMyf {
  display: none !important;
}
.goog-te-combo {
  padding: 10px;
}
.header {
  display: grid;
  grid-template-columns: repeat(32, 1fr);
  place-items: center;
  z-index: 22;
  position: relative;
  background-color: white;
  z-index: 50;
  overflow-x: clip;
  overflow-y: visible;
  height: calc(120rem * 1 / 21.33333333);
}
@media only screen and (max-width: 1024px) {
  .header {
    grid-template-columns: repeat(12, 1fr);
  }
}
@media only screen and (max-width: 1024px) {
  .header {
    height: auto;
  }
}
.header.white-text {
  background-color: transparent;
}
.header.white-text .menu-item > a:hover {
  text-decoration: none;
}
.header.fixed {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 999;
  background-color: white !important;
  height: calc(90rem * 1 / 21.33333333);
}
@media only screen and (max-width: 1024px) {
  .header.fixed {
    height: calc(54rem * 1 / 4.33333);
  }
}
.header.fixed .menu-item > a {
  color: #231F20 !important;
}
.header.fixed .menu-item > a:hover {
  text-decoration: none;
}
.header.fixed .header__search img {
  filter: invert(0);
}
.header.fixed .header__mobile-menu .menu-item > a {
  color: white !important;
}
@media screen and (min-width: 1000px) {
  .header.fixed .header__logo {
    transform: scale(0.7);
    grid-column: 2 / 7;
    margin-top: 0.5rem;
  }
}
.header.fixed .header__top {
  height: 0px;
  margin-top: -100px;
  display: none;
}
.header.fixed .header__nav {
  transition: transform 0.3s ease-in-out;
  height: calc(70rem * 1 / 21.33333333);
}
@media only screen and (max-width: 1024px) {
  .header.fixed .header__nav {
    height: calc(42rem * 1 / 4.33333);
  }
}
.header__top {
  grid-column: 1 / -1;
  height: calc(40rem * 1 / 21.33333333);
  width: 100%;
  display: grid;
  grid-template-columns: repeat(32, 1fr);
  place-items: center;
  z-index: 22;
  position: relative;
  z-index: 9;
  transition: transform 0.3s ease-in-out;
  z-index: 11;
}
@media only screen and (max-width: 1024px) {
  .header__top {
    grid-template-columns: repeat(12, 1fr);
  }
}
@media only screen and (max-width: 1024px) {
  .header__top {
    height: calc(40rem * 1 / 8);
  }
}
@media only screen and (max-width: 1024px) {
  .header__top {
    height: calc(24rem * 1 / 4.33333);
  }
}
.header__top-menu {
  height: 100%;
  background-color: #5A2F61;
  width: 100%;
  grid-column: 25 / 33;
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  align-items: center;
}
@media only screen and (max-width: 1024px) {
  .header__top-menu {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    place-items: center;
  }
}
@media only screen and (max-width: 1024px) {
  .header__top-menu {
    grid-column: 1 / -1;
  }
}
.header__languages {
  display: flex;
  gap: calc(6rem * 1 / 21.33333333);
  align-items: center;
  grid-column: 3 / 4;
  height: fit-content;
  cursor: pointer;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .header__languages {
    grid-column: 7 / 9;
    gap: calc(6rem * 1 / 8);
  }
}
.header__languages-icon {
  width: calc(14rem * 1 / 21.33333333);
}
@media only screen and (max-width: 1024px) {
  .header__languages-icon {
    width: calc(14rem * 1 / 8);
  }
}
@media only screen and (max-width: 1024px) {
  .header__languages-icon {
    width: calc(10rem * 1 / 4.33333);
  }
}
.header__languages-selector {
  position: absolute;
  z-index: 333;
  width: 100px;
  height: 100px;
  background-color: #5a2f61;
  top: 0;
  left: 0;
  display: none;
}
.header__languages-selector.active {
  display: block;
}
.header__languages-dropdown {
  width: calc(7rem * 1 / 21.33333333);
}
.header__languages-dropdown img {
  transform: translateY(-0.2rem);
}
@media only screen and (max-width: 1024px) {
  .header__languages-dropdown {
    width: calc(7rem * 1 / 8);
  }
  .header__languages-dropdown img {
    transform: translateY(0rem);
  }
}
@media only screen and (max-width: 1024px) {
  .header__languages-dropdown {
    width: calc(5rem * 1 / 4.33333);
  }
  .header__languages-dropdown img {
    transform: translateY(0.25rem);
  }
}
.header__languages-language {
  font-size: calc(12rem * 1 / 21.33333333);
  font-family: "mundial", sans-serif;
  font-weight: 400;
  font-style: normal;
  color: white;
  text-transform: uppercase;
  cursor: pointer;
}
@media only screen and (max-width: 1024px) {
  .header__languages-language {
    font-size: calc(12rem * 1 / 8);
  }
}
@media only screen and (max-width: 1024px) {
  .header__languages-language {
    font-size: calc(10.5rem * 1 / 4.33333);
  }
}
.header__client-center {
  grid-column: 5 / 7;
  display: flex;
  gap: calc(6rem * 1 / 21.33333333);
  align-items: center;
  cursor: pointer;
}
@media only screen and (max-width: 1024px) {
  .header__client-center {
    grid-column: 9 / 12;
    gap: calc(6rem * 1 / 8);
  }
}
.header__client-center-icon {
  width: calc(14rem * 1 / 21.33333333);
}
@media only screen and (max-width: 1024px) {
  .header__client-center-icon {
    width: calc(14rem * 1 / 8);
  }
}
@media only screen and (max-width: 1024px) {
  .header__client-center-icon {
    width: calc(10rem * 1 / 4.33333);
  }
}
.header__client-center-text {
  font-size: calc(12rem * 1 / 21.33333333);
  color: white;
  font-family: "mundial", sans-serif;
  font-weight: 400;
  font-style: normal;
  text-transform: uppercase;
}
@media only screen and (max-width: 1024px) {
  .header__client-center-text {
    font-size: calc(12rem * 1 / 8);
  }
}
@media only screen and (max-width: 1024px) {
  .header__client-center-text {
    font-size: calc(10.5rem * 1 / 4.33333);
  }
}
.header__nav {
  height: calc(80rem * 1 / 21.33333333);
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(32, 1fr);
  place-items: center;
  z-index: 22;
  width: 100%;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .header__nav {
    grid-template-columns: repeat(12, 1fr);
  }
}
@media only screen and (max-width: 1024px) {
  .header__nav {
    height: calc(85rem * 1 / 8);
  }
}
@media only screen and (max-width: 1024px) {
  .header__nav {
    height: calc(66rem * 1 / 4.33333);
  }
}
.header__nav-menu {
  display: flex;
  align-items: center;
  grid-column: 17 / 30;
  width: 100%;
  transition: all 0.25s ease-out;
}
@media only screen and (max-width: 1024px) {
  .header__nav-menu {
    display: none;
  }
}
.header__nav-menu.shifted {
  transform: translateX(calc(-60rem * 1 / 21.33333333));
}
.header__nav-menu > .menu-main-menu-container > .menu {
  display: flex;
  gap: 1.25rem;
}
.header__nav-menu > .menu-main-menu-container > .menu > .menu-item > a {
  position: relative;
  color: #231F20;
  font-family: "mundial", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(18rem * 1 / 21.33333333);
}
.header__nav-menu > .menu-main-menu-container > .menu > .menu-item > a:hover {
  text-decoration: none;
}
.header__nav-menu > .menu-main-menu-container > .menu > .menu-item > a::after {
  content: "";
  position: absolute;
  bottom: -1rem;
  left: 0;
  width: 100%;
  height: calc(4rem * 1 / 21.33333333);
  background-color: #461950;
  transform: scaleX(0);
  transition: transform 0.3s ease-in-out;
}
.header__nav-menu > .menu-main-menu-container > .menu > .menu-item:hover > a::after,
.header__nav-menu > .menu-main-menu-container > .menu > .menu-item.active > a::after {
  transform: scaleX(1);
}
.header__logo {
  grid-column: 3 / 8;
  width: 100%;
  max-height: calc(80rem*1/21.33);
}
.header__logo.hidden {
  opacity: 0;
  pointer-events: none;
}
@media only screen and (max-width: 1024px) {
  .header__logo {
    grid-column: 2 / 7;
    width: calc(247rem * 1 / 8);
  }
}
@media only screen and (max-width: 1024px) {
  .header__logo {
    justify-content: flex-start;
    width: 100%;
  }
}
.header__search {
  justify-self: center;
  width: calc(20rem * 1 / 21.33333333);
  grid-column: 31 / 32;
  cursor: pointer;
}
@media only screen and (max-width: 1024px) {
  .header__search {
    display: none;
  }
}
.header__search-bar {
  position: absolute;
  left: 0;
  top: 50%;
  grid-column: 30 / 33;
  display: flex;
  gap: 0.6rem;
  transition: all 0.25s ease-out;
  transform: translateX(100vw) translateY(-50%);
}
.header__search-bar.active {
  transform: translateX(0) translateY(-50%);
}
.header__search-bar::after {
  right: 3.2rem;
}
.header__search-field {
  outline: none;
  border: none;
  height: 1.4rem;
  padding: 0.5rem 0;
  color: #231F20;
  font-family: "mundial", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(18rem * 1 / 21.33333333);
  width: 75%;
  position: relative;
  border-bottom: 0.025rem solid #5A2F61;
}
.header__search-field::placeholder {
  font-family: "mundial", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(18rem * 1 / 21.33333333);
  color: #231F20;
  opacity: 0.75;
}
.header__search-submit {
  width: calc(16rem * 1 / 21.33333333);
  aspect-ratio: 1 / 1;
  height: calc(32rem * 1 / 21.33333333);
  border: none;
  outline: none;
  background: none;
  background-color: transparent;
  position: absolute;
  bottom: -0.1rem;
  right: 2.2rem;
  cursor: pointer;
}
.header__search-submit:active {
  border: none;
  outline: none;
}
.header__search-x {
  font-family: "mundial", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(24rem * 1 / 21.33333333);
  cursor: pointer;
}
.header__search-results {
  left: -50%;
  width: 150%;
}
.header__mobile-hamburger {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .header__mobile-hamburger {
    cursor: pointer;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: calc(6rem * 1 / 8);
    aspect-ratio: 1 / 1;
    background-color: #461950;
    width: 100%;
    grid-column: 11 / 12;
    position: relative;
  }
  .header__mobile-hamburger > div {
    height: calc(2rem * 1 / 8);
    width: calc(18rem * 1 / 8);
    background-color: white;
    transition: all 0.25s ease-out;
  }
  .header__mobile-hamburger.active {
    position: relative;
    z-index: 9;
  }
  .header__mobile-hamburger.active > div:nth-child(1) {
    transform: rotate(45deg) translateX(1rem) translateY(0.5rem);
    width: calc(32rem * 1 / 8);
  }
  .header__mobile-hamburger.active > div:nth-child(2) {
    transform: rotate(-45deg) translateX(0.5rem) translateY(0rem);
    width: calc(32rem * 1 / 8);
  }
  .header__mobile-hamburger.active > div:nth-child(3) {
    transform: translateY(0.5rem);
    opacity: 0;
  }
}
@media only screen and (max-width: 1024px) {
  .header__mobile-hamburger {
    gap: calc(4rem * 1 / 4.33333);
  }
  .header__mobile-hamburger > div {
    height: calc(2rem * 1 / 4.33333);
    width: calc(12rem * 1 / 4.33333);
  }
}
.header__mobile-menu {
  display: none;
  position: fixed;
  left: 0;
  top: calc(24rem * 1 / 4.33333);
  width: 100%;
  height: calc(100vh - (24rem * 0.23076941));
  grid-column: 1 / -1;
  transition: all 0.25s ease-out;
  background-color: #461950;
  opacity: 0;
  transform: translateY(-100vh);
  padding-top: 30%;
}
@media only screen and (max-width: 1024px) {
  .header__mobile-menu {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    top: 0;
    height: 100%;
  }
}
.header__mobile-menu-logo {
  grid-column: 2 / 8;
  display: flex;
  justify-content: center;
  align-items: center;
  height: calc(40rem * 1 / 4.33333);
  width: 100%;
  position: relative;
  z-index: 9;
  transition: all 0.25s ease-out 0.1s;
  opacity: 0;
  transform: translateY(-18vh);
}
.header__mobile-menu-logo > img {
  filter: brightness(0) saturate(100%) invert(99%) sepia(100%) saturate(0%) hue-rotate(76deg) brightness(105%) contrast(100%);
}
.header__mobile-menu-content {
  grid-column: 2 / 10;
  height: fit-content;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.header__mobile-menu-content .menu {
  display: flex;
  flex-direction: column;
  gap: calc(30rem * 1 / 4.33333);
  align-items: flex-start;
  transform: translateX(-40vw);
  transition: all 0.25s ease-out 0.1s;
  opacity: 0.4;
}
.header__mobile-menu-content .menu > li {
  width: 100%;
  align-self: flex-start;
  text-align: left;
}
.header__mobile-menu-content .menu > li > a {
  font-family: "mundial", sans-serif;
  font-style: normal;
  font-size: calc(20rem * 1 / 4.33333);
  color: white !important;
  padding: 1rem 0;
  display: block;
  text-align: left;
  width: 100%;
  font-weight: 400;
}
.header__mobile-menu-content .menu > li > a:hover {
  text-decoration: underline;
}
.header__mobile-menu.open {
  opacity: 1;
  transform: translateY(0);
}
.header__mobile-menu.open .header__mobile-menu-logo {
  transform: translateY(0);
  opacity: 0.8;
}
@media screen and (max-height: 700px) {
  .header__mobile-menu.open .header__mobile-menu-logo {
    display: none;
  }
}
.header__mobile-menu.open .menu {
  transform: translateX(0);
  opacity: 0.95;
}
@media print {
  .header {
    display: none;
  }
}
#languageModalContainer {
  padding: 3rem;
  font-family: "adobe-caslon-pro", serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(25rem * 1 / 21.33333333);
  color: #231F20;
  width: 90%;
  max-width: 700px;
}
@media only screen and (max-width: 1024px) {
  #languageModalContainer {
    font-size: 20px;
    padding: 20px;
  }
}
#languageModalContainer p {
  font-size: 14px;
  padding-top: 10px;
  font-weight: 200;
  line-height: 20px;
  font-family: "mundial", sans-serif;
  font-weight: 400;
  font-style: normal;
  padding-bottom: 10px;
}
#google_translate_element img {
  width: auto !important;
  height: auto !important;
}
.grid-100 {
  display: grid;
  grid-template-rows: min-content;
  width: 100%;
  place-items: center;
}
.footer {
  display: grid;
  grid-template-columns: repeat(32, 1fr);
  place-items: center;
  z-index: 22;
  width: 100%;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .footer {
    grid-template-columns: repeat(12, 1fr);
  }
}
.footer__main {
  grid-column: 3 / 33;
  background-color: #F1F2F2;
  display: grid;
  grid-template-rows: min-content;
  width: 100%;
  place-items: center;
  height: calc(500rem * 1 / 21.33333333 * var(--text-multiplier));
  padding: calc(100rem * 1 / 21.33333333) 0;
  grid-template-columns: repeat(30, 1fr);
}
@media only screen and (max-width: 1024px) {
  .footer__main {
    grid-column: 3 / 13;
    grid-template-columns: repeat(10, 1fr);
    height: calc(500rem * 1 / 8);
    padding: calc(70rem * 1 / 8) 0;
    width: 100%;
  }
}
@media only screen and (max-width: 1024px) {
  .footer__main {
    grid-column: 1 / 13;
    grid-template-columns: repeat(12, 1fr);
    padding: calc(50rem * 1 / 4.33333) 0 calc(40rem * 1 / 4.33333);
    height: auto;
  }
}
.footer__main-column {
  grid-column: 3 / 8;
  display: grid;
  grid-template-rows: min-content;
  width: 100%;
  place-items: center;
  grid-template-columns: repeat(5, 1fr);
}
@media only screen and (max-width: 1024px) {
  .footer__main-column {
    grid-column: 2 / 7;
  }
}
@media only screen and (max-width: 1024px) {
  .footer__main-column {
    grid-column: 2 / 10;
    grid-template-columns: repeat(7, 1fr);
  }
}
.footer__main-logo,
.footer__main-address,
.footer__main-phone,
.footer__main-fax,
.footer__main-email {
  grid-column: 1 / -1;
  width: 100%;
  font-family: "mundial", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(18rem * 1 / 21.33333333 * var(--text-multiplier));
  line-height: calc(30rem * 1 / 21.33333333 * var(--text-multiplier));
  color: #484848 !important;
}
@media only screen and (max-width: 1024px) {
  .footer__main-logo,
  .footer__main-address,
  .footer__main-phone,
  .footer__main-fax,
  .footer__main-email {
    font-size: calc(20rem * 1 / 8);
    line-height: calc(30rem * 1 / 8);
  }
}
@media only screen and (max-width: 1024px) {
  .footer__main-logo,
  .footer__main-address,
  .footer__main-phone,
  .footer__main-fax,
  .footer__main-email {
    font-size: calc(16rem * 1 / 4.33333);
    line-height: calc(24rem * 1 / 4.33333);
    line-height: calc(26rem * 1 / 4.33333);
  }
}
.footer__main-logo {
  display: flex;
}
@media only screen and (max-width: 1024px) {
  .footer__main-logo {
    grid-column: 1 / 6;
  }
}
.footer__main-address {
  margin: 1rem 0 1.25rem;
}
@media only screen and (max-width: 1024px) {
  .footer__main-address {
    margin: 3rem 0 4rem;
  }
}
.footer__main-socials {
  align-self: flex-end;
  grid-column: 9 / 12;
  display: grid;
  grid-template-rows: min-content;
  width: 100%;
  place-items: center;
  grid-template-columns: repeat(3, 1fr);
}
@media only screen and (max-width: 1024px) {
  .footer__main-socials {
    grid-column: 2 / 6;
    margin-top: 7rem;
  }
}
@media only screen and (max-width: 1024px) {
  .footer__main-socials {
    margin-top: calc(40rem * 1 / 4.33333);
  }
}
.footer__main-social {
  align-self: flex-end;
  justify-self: flex-start;
  transition: all 0.25s ease-out;
}
.footer__main-social:hover {
  opacity: 0.8;
}
.footer__main-social.x {
  width: calc(30rem * 1 / 21.33333333 * var(--text-multiplier));
  aspect-ratio: 3000 / 2647;
  grid-column: 1 / 2;
}
@media only screen and (max-width: 1024px) {
  .footer__main-social.x {
    width: calc(30rem * 1 / 8);
  }
}
@media only screen and (max-width: 1024px) {
  .footer__main-social.x {
    width: calc(19.5rem * 1 / 4.33333);
  }
}
.footer__main-social.fb {
  width: calc(16.8rem * 1 / 21.33333333 * var(--text-multiplier));
  aspect-ratio: 168 / 316;
  grid-column: 2 / 3;
  justify-self: center;
}
@media only screen and (max-width: 1024px) {
  .footer__main-social.fb {
    width: calc(16.8rem * 1 / 8);
    margin-left: 0.5rem;
  }
}
@media only screen and (max-width: 1024px) {
  .footer__main-social.fb {
    width: calc(10.9rem * 1 / 4.33333);
    margin-left: 0;
    justify-self: center;
  }
}
.footer__main-social.ln {
  width: calc(27.77rem * 1 / 21.33333333 * var(--text-multiplier));
  aspect-ratio: 2777 / 2769;
  grid-column: 3 / 4;
  justify-self: flex-end;
}
@media only screen and (max-width: 1024px) {
  .footer__main-social.ln {
    width: calc(27.77rem * 1 / 8);
  }
}
@media only screen and (max-width: 1024px) {
  .footer__main-social.ln {
    width: calc(18rem * 1 / 4.33333);
    justify-self: flex-end;
  }
}
.footer__main-social img {
  object-position: bottom center;
}
.footer__main-menu {
  grid-column: 13 / 17;
  width: 100%;
  align-self: flex-start;
}
@media only screen and (max-width: 1024px) {
  .footer__main-menu {
    display: none;
  }
}
.footer__main-menu .menu-footer-main-container .menu {
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
}
.footer__main-menu .menu-footer-main-container .menu li a {
  color: #484848;
  font-family: "mundial", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(18rem * 1 / 21.33333333 * var(--text-multiplier));
  font-weight: 600;
  position: relative;
}
.footer__main-menu .menu-footer-main-container .menu li a::after {
  content: "";
  position: absolute;
  bottom: -0.25rem;
  left: 0;
  width: 100%;
  height: calc(4rem * 1 / 21.33333333 * var(--text-multiplier));
  background-color: #461950;
  transform: scaleX(0);
  transition: transform 0.3s ease-in-out;
}
.footer__main-menu .menu-footer-main-container .menu li a:hover::after {
  transform: scaleX(1);
}
.footer__main-search {
  grid-column: 19 / 29;
  display: grid;
  grid-template-rows: min-content;
  width: 100%;
  place-items: center;
  grid-template-columns: repeat(10, 1fr);
  align-self: flex-start;
}
@media only screen and (max-width: 1024px) {
  .footer__main-search {
    display: none;
  }
}
.footer__main-search > h2 {
  width: 100%;
  grid-column: 1 / 11;
  font-family: "adobe-caslon-pro", serif;
  font-weight: 400;
  font-style: normal;
  color: #74467F;
  font-size: calc(38rem * 1 / 21.33333333 * var(--text-multiplier));
  line-height: calc(43.2rem * 1 / 21.33333333 * var(--text-multiplier));
}
.footer__main-search-form {
  grid-column: 1 / 11;
  width: 100%;
  border-bottom: 0.075rem solid #5A2F61;
  display: grid;
  grid-template-columns: repeat(10, 1fr);
  margin-top: 2.8rem;
  position: relative;
}
.footer__main-search-input {
  width: 100%;
  height: 2.25rem;
  border: none;
  outline: none;
  background: none;
  font-size: calc(18rem * 1 / 21.33333333 * var(--text-multiplier));
  color: #484848;
  padding: 0.6rem 0;
  grid-column: 1 / 9;
  font-weight: 500;
}
.mundial .footer__main-search-input::placeholder {
  color: #5A2F61;
}
.footer__main-search-button {
  grid-column: 10 / 11;
  align-self: center;
  justify-self: flex-end;
  outline: none;
  background: none;
  border: none;
  cursor: pointer;
  width: calc(20rem * 1 / 21.33333333 * var(--text-multiplier));
  height: calc(20rem * 1 / 21.33333333 * var(--text-multiplier));
  transition: all 0.25s ease-out;
}
.footer__main-search-button:active {
  transform: scale(0.9);
}
.footer__bottom {
  grid-column: 3 / 33;
  background-color: #5A2F61;
  color: white;
  height: calc(40rem * 1 / 21.33333333 * var(--text-multiplier));
  display: grid;
  grid-template-rows: min-content;
  width: 100%;
  place-items: center;
  grid-template-columns: repeat(31, 1fr);
  grid-template-rows: 1fr;
}
@media only screen and (max-width: 1024px) {
  .footer__bottom {
    grid-column: 1 / -1;
    height: calc(40rem * 1 / 8);
    grid-template-columns: repeat(12, 1fr);
  }
}
@media only screen and (max-width: 1024px) {
  .footer__bottom {
    height: calc(60rem * 1 / 4.33333);
  }
}
.footer__bottom-menu {
  grid-column: 3 / 23;
  justify-self: flex-start;
  align-self: center;
}
@media only screen and (max-width: 1024px) {
  .footer__bottom-menu {
    grid-column: 1 / 9;
  }
}
.footer__bottom-menu .menu-footer-sub-container {
  width: 100%;
}
.footer__bottom-menu .menu-footer-sub-container .menu {
  width: 100%;
  display: flex;
}
.footer__bottom-menu .menu-footer-sub-container .menu li {
  padding-right: 0.66rem;
  margin-right: 0.66rem;
  border-right: 0.1rem solid white;
  position: relative;
}
.footer__bottom-menu .menu-footer-sub-container .menu li:first-of-type {
  padding-left: 1.25rem;
  margin-left: 1.25rem;
  border-left: none;
}
.footer__bottom-menu .menu-footer-sub-container .menu li:last-of-type {
  padding-right: 0;
  margin-right: 0;
  border-right: none;
}
@media only screen and (max-width: 1024px) {
  .footer__bottom-menu .menu-footer-sub-container .menu li {
    padding-right: 1rem;
    margin-right: 1rem;
    border-right: 0.2rem solid white;
  }
}
.footer__bottom-menu .menu-footer-sub-container .menu li a {
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
  display: block;
  color: white;
  font-size: calc(16rem * 1 / 21.33333333 * var(--text-multiplier));
  transition: all 0.25s ease-out;
}
.footer__bottom-menu .menu-footer-sub-container .menu li a:hover {
  opacity: 0.95;
}
@media only screen and (max-width: 1024px) {
  .footer__bottom-menu .menu-footer-sub-container .menu li a {
    font-size: calc(16rem * 1 / 8);
  }
}
@media only screen and (max-width: 1024px) {
  .footer__bottom-menu .menu-footer-sub-container .menu li a {
    font-size: calc(11rem * 1 / 4.33333);
  }
}
.footer__bottom-credits {
  grid-column: 27 / 32;
  align-self: center;
  height: fit-content;
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(16rem * 1 / 21.33333333 * var(--text-multiplier));
}
@media only screen and (max-width: 1024px) {
  .footer__bottom-credits {
    grid-column: 9 / 13;
    font-size: calc(16rem * 1 / 8);
    justify-self: flex-end;
    width: 100%;
    text-align: right;
    margin-right: 2.5rem;
  }
}
@media only screen and (max-width: 1024px) {
  .footer__bottom-credits {
    font-size: calc(9rem * 1 / 4.33333);
  }
}
.footer__search-results {
  top: 105%;
}
@media print {
  .footer {
    display: none;
  }
}
.subscribeModalContainer {
  width: 90%;
  max-width: 1400px !important;
  padding: 0px !important;
  margin-top: 3rem;
}
.container-padding {
  padding: 0 5.5%;
}
.image-container > img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.image-cover > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.align-self-left {
  align-self: flex-start;
}
.align-self-center {
  align-self: center;
}
.align-self-right {
  align-self: flex-end;
}
.w-100 {
  width: 100%;
}
.w-100-important {
  width: 100% !important;
}
.w-90 {
  width: 90%;
}
.w-90-important {
  width: 90% !important;
}
.w-80 {
  width: 80%;
}
.w-80-important {
  width: 80% !important;
}
.w-70 {
  width: 70%;
}
.w-70-important {
  width: 70% !important;
}
.w-60 {
  width: 60%;
}
.w-60-important {
  width: 60% !important;
}
.w-50 {
  width: 50%;
}
.w-50-important {
  width: 50% !important;
}
.w-40 {
  width: 40%;
}
.w-40-important {
  width: 40% !important;
}
.w-30 {
  width: 30%;
}
.w-30-important {
  width: 30% !important;
}
.w-20 {
  width: 20%;
}
.w-20-important {
  width: 20% !important;
}
.w-10 {
  width: 10%;
}
.w-10-important {
  width: 10% !important;
}
.w-5 {
  width: 5%;
}
.w-5-important {
  width: 5% !important;
}
.w-1 {
  width: 1%;
}
.w-1-important {
  width: 1% !important;
}
.w-0 {
  width: 0%;
}
.w-0-important {
  width: 0% !important;
}
.mb-0 {
  margin-bottom: 0 !important;
}
@media only screen and (max-width: 1024px) {
  .mb-0 {
    margin-bottom: 0px !important;
  }
}
.mb-1 {
  margin-bottom: 1rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-1 {
    margin-bottom: 10px !important;
  }
}
.mb-2 {
  margin-bottom: 2rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-2 {
    margin-bottom: 20px !important;
  }
}
.mb-3 {
  margin-bottom: 3rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-3 {
    margin-bottom: 30px !important;
  }
}
.mb-4 {
  margin-bottom: 4rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-4 {
    margin-bottom: 40px !important;
  }
}
.mb-5 {
  margin-bottom: 5rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-5 {
    margin-bottom: 50px !important;
  }
}
.mb-6 {
  margin-bottom: 6rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-6 {
    margin-bottom: 60px !important;
  }
}
.mb-7 {
  margin-bottom: 7rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-7 {
    margin-bottom: 70px !important;
  }
}
.mb-8 {
  margin-bottom: 8rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-8 {
    margin-bottom: 80px !important;
  }
}
.mb-9 {
  margin-bottom: 9rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-9 {
    margin-bottom: 90px !important;
  }
}
.mb-10 {
  margin-bottom: 10rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-10 {
    margin-bottom: 100px !important;
  }
}
.mb-11 {
  margin-bottom: 11rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-11 {
    margin-bottom: 110px !important;
  }
}
.mb-12 {
  margin-bottom: 12rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-12 {
    margin-bottom: 120px !important;
  }
}
.mb-13 {
  margin-bottom: 13rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-13 {
    margin-bottom: 130px !important;
  }
}
.mb-14 {
  margin-bottom: 14rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-14 {
    margin-bottom: 140px !important;
  }
}
.mb-15 {
  margin-bottom: 15rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-15 {
    margin-bottom: 150px !important;
  }
}
.mb-16 {
  margin-bottom: 16rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-16 {
    margin-bottom: 160px !important;
  }
}
.mb-17 {
  margin-bottom: 17rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-17 {
    margin-bottom: 170px !important;
  }
}
.mb-18 {
  margin-bottom: 18rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-18 {
    margin-bottom: 180px !important;
  }
}
.mb-19 {
  margin-bottom: 19rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-19 {
    margin-bottom: 190px !important;
  }
}
.mb-20 {
  margin-bottom: 20rem !important;
}
@media only screen and (max-width: 1024px) {
  .mb-20 {
    margin-bottom: 200px !important;
  }
}
.mt-0 {
  margin-top: 0 !important;
}
@media only screen and (max-width: 1024px) {
  .mt-0 {
    margin-top: 0px !important;
  }
}
.mt-1 {
  margin-top: 1rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-1 {
    margin-top: 10px !important;
  }
}
.mt-2 {
  margin-top: 2rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-2 {
    margin-top: 20px !important;
  }
}
.mt-3 {
  margin-top: 3rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-3 {
    margin-top: 30px !important;
  }
}
.mt-4 {
  margin-top: 4rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-4 {
    margin-top: 40px !important;
  }
}
.mt-5 {
  margin-top: 5rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-5 {
    margin-top: 50px !important;
  }
}
.mt-6 {
  margin-top: 6rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-6 {
    margin-top: 60px !important;
  }
}
.mt-7 {
  margin-top: 7rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-7 {
    margin-top: 70px !important;
  }
}
.mt-8 {
  margin-top: 8rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-8 {
    margin-top: 80px !important;
  }
}
.mt-9 {
  margin-top: 9rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-9 {
    margin-top: 90px !important;
  }
}
.mt-10 {
  margin-top: 10rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-10 {
    margin-top: 100px !important;
  }
}
.mt-11 {
  margin-top: 11rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-11 {
    margin-top: 110px !important;
  }
}
.mt-12 {
  margin-top: 12rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-12 {
    margin-top: 120px !important;
  }
}
.mt-13 {
  margin-top: 13rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-13 {
    margin-top: 130px !important;
  }
}
.mt-14 {
  margin-top: 14rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-14 {
    margin-top: 140px !important;
  }
}
.mt-15 {
  margin-top: 15rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-15 {
    margin-top: 150px !important;
  }
}
.mt-16 {
  margin-top: 16rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-16 {
    margin-top: 160px !important;
  }
}
.mt-17 {
  margin-top: 17rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-17 {
    margin-top: 170px !important;
  }
}
.mt-18 {
  margin-top: 18rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-18 {
    margin-top: 180px !important;
  }
}
.mt-19 {
  margin-top: 19rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-19 {
    margin-top: 190px !important;
  }
}
.mt-20 {
  margin-top: 20rem !important;
}
@media only screen and (max-width: 1024px) {
  .mt-20 {
    margin-top: 200px !important;
  }
}
.ml-0 {
  margin-left: 0 !important;
}
@media only screen and (max-width: 1024px) {
  .ml-0 {
    margin-left: 0px !important;
  }
}
.ml-1 {
  margin-left: 1rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-1 {
    margin-left: 10px !important;
  }
}
.ml-2 {
  margin-left: 2rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-2 {
    margin-left: 20px !important;
  }
}
.ml-3 {
  margin-left: 3rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-3 {
    margin-left: 30px !important;
  }
}
.ml-4 {
  margin-left: 4rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-4 {
    margin-left: 40px !important;
  }
}
.ml-5 {
  margin-left: 5rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-5 {
    margin-left: 50px !important;
  }
}
.ml-6 {
  margin-left: 6rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-6 {
    margin-left: 60px !important;
  }
}
.ml-7 {
  margin-left: 7rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-7 {
    margin-left: 70px !important;
  }
}
.ml-8 {
  margin-left: 8rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-8 {
    margin-left: 80px !important;
  }
}
.ml-9 {
  margin-left: 9rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-9 {
    margin-left: 90px !important;
  }
}
.ml-10 {
  margin-left: 10rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-10 {
    margin-left: 100px !important;
  }
}
.ml-11 {
  margin-left: 11rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-11 {
    margin-left: 110px !important;
  }
}
.ml-12 {
  margin-left: 12rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-12 {
    margin-left: 120px !important;
  }
}
.ml-13 {
  margin-left: 13rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-13 {
    margin-left: 130px !important;
  }
}
.ml-14 {
  margin-left: 14rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-14 {
    margin-left: 140px !important;
  }
}
.ml-15 {
  margin-left: 15rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-15 {
    margin-left: 150px !important;
  }
}
.ml-16 {
  margin-left: 16rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-16 {
    margin-left: 160px !important;
  }
}
.ml-17 {
  margin-left: 17rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-17 {
    margin-left: 170px !important;
  }
}
.ml-18 {
  margin-left: 18rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-18 {
    margin-left: 180px !important;
  }
}
.ml-19 {
  margin-left: 19rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-19 {
    margin-left: 190px !important;
  }
}
.ml-20 {
  margin-left: 20rem !important;
}
@media only screen and (max-width: 1024px) {
  .ml-20 {
    margin-left: 200px !important;
  }
}
.mr-0 {
  margin-right: 0 !important;
}
@media only screen and (max-width: 1024px) {
  .mr-0 {
    margin-right: 0px !important;
  }
}
.mr-1 {
  margin-right: 1rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-1 {
    margin-right: 10px !important;
  }
}
.mr-2 {
  margin-right: 2rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-2 {
    margin-right: 20px !important;
  }
}
.mr-3 {
  margin-right: 3rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-3 {
    margin-right: 30px !important;
  }
}
.mr-4 {
  margin-right: 4rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-4 {
    margin-right: 40px !important;
  }
}
.mr-5 {
  margin-right: 5rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-5 {
    margin-right: 50px !important;
  }
}
.mr-6 {
  margin-right: 6rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-6 {
    margin-right: 60px !important;
  }
}
.mr-7 {
  margin-right: 7rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-7 {
    margin-right: 70px !important;
  }
}
.mr-8 {
  margin-right: 8rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-8 {
    margin-right: 80px !important;
  }
}
.mr-9 {
  margin-right: 9rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-9 {
    margin-right: 90px !important;
  }
}
.mr-10 {
  margin-right: 10rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-10 {
    margin-right: 100px !important;
  }
}
.mr-11 {
  margin-right: 11rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-11 {
    margin-right: 110px !important;
  }
}
.mr-12 {
  margin-right: 12rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-12 {
    margin-right: 120px !important;
  }
}
.mr-13 {
  margin-right: 13rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-13 {
    margin-right: 130px !important;
  }
}
.mr-14 {
  margin-right: 14rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-14 {
    margin-right: 140px !important;
  }
}
.mr-15 {
  margin-right: 15rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-15 {
    margin-right: 150px !important;
  }
}
.mr-16 {
  margin-right: 16rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-16 {
    margin-right: 160px !important;
  }
}
.mr-17 {
  margin-right: 17rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-17 {
    margin-right: 170px !important;
  }
}
.mr-18 {
  margin-right: 18rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-18 {
    margin-right: 180px !important;
  }
}
.mr-19 {
  margin-right: 19rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-19 {
    margin-right: 190px !important;
  }
}
.mr-20 {
  margin-right: 20rem !important;
}
@media only screen and (max-width: 1024px) {
  .mr-20 {
    margin-right: 200px !important;
  }
}
.pb-0 {
  padding-bottom: 0 !important;
}
@media only screen and (max-width: 1024px) {
  .pb-0 {
    padding-bottom: 0px !important;
  }
}
.pb-1 {
  padding-bottom: 1rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-1 {
    padding-bottom: 10px !important;
  }
}
.pb-2 {
  padding-bottom: 2rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-2 {
    padding-bottom: 20px !important;
  }
}
.pb-3 {
  padding-bottom: 3rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-3 {
    padding-bottom: 30px !important;
  }
}
.pb-4 {
  padding-bottom: 4rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-4 {
    padding-bottom: 40px !important;
  }
}
.pb-5 {
  padding-bottom: 5rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-5 {
    padding-bottom: 50px !important;
  }
}
.pb-6 {
  padding-bottom: 6rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-6 {
    padding-bottom: 60px !important;
  }
}
.pb-7 {
  padding-bottom: 7rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-7 {
    padding-bottom: 70px !important;
  }
}
.pb-8 {
  padding-bottom: 8rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-8 {
    padding-bottom: 80px !important;
  }
}
.pb-9 {
  padding-bottom: 9rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-9 {
    padding-bottom: 90px !important;
  }
}
.pb-10 {
  padding-bottom: 10rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-10 {
    padding-bottom: 100px !important;
  }
}
.pb-11 {
  padding-bottom: 11rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-11 {
    padding-bottom: 110px !important;
  }
}
.pb-12 {
  padding-bottom: 12rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-12 {
    padding-bottom: 120px !important;
  }
}
.pb-13 {
  padding-bottom: 13rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-13 {
    padding-bottom: 130px !important;
  }
}
.pb-14 {
  padding-bottom: 14rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-14 {
    padding-bottom: 140px !important;
  }
}
.pb-15 {
  padding-bottom: 15rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-15 {
    padding-bottom: 150px !important;
  }
}
.pb-16 {
  padding-bottom: 16rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-16 {
    padding-bottom: 160px !important;
  }
}
.pb-17 {
  padding-bottom: 17rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-17 {
    padding-bottom: 170px !important;
  }
}
.pb-18 {
  padding-bottom: 18rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-18 {
    padding-bottom: 180px !important;
  }
}
.pb-19 {
  padding-bottom: 19rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-19 {
    padding-bottom: 190px !important;
  }
}
.pb-20 {
  padding-bottom: 20rem !important;
}
@media only screen and (max-width: 1024px) {
  .pb-20 {
    padding-bottom: 200px !important;
  }
}
.pt-0 {
  padding-top: 0 !important;
}
@media only screen and (max-width: 1024px) {
  .pt-0 {
    padding-top: 0px !important;
  }
}
.pt-1 {
  padding-top: 1rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-1 {
    padding-top: 10px !important;
  }
}
.pt-2 {
  padding-top: 2rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-2 {
    padding-top: 20px !important;
  }
}
.pt-3 {
  padding-top: 3rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-3 {
    padding-top: 30px !important;
  }
}
.pt-4 {
  padding-top: 4rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-4 {
    padding-top: 40px !important;
  }
}
.pt-5 {
  padding-top: 5rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-5 {
    padding-top: 50px !important;
  }
}
.pt-6 {
  padding-top: 6rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-6 {
    padding-top: 60px !important;
  }
}
.pt-7 {
  padding-top: 7rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-7 {
    padding-top: 70px !important;
  }
}
.pt-8 {
  padding-top: 8rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-8 {
    padding-top: 80px !important;
  }
}
.pt-9 {
  padding-top: 9rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-9 {
    padding-top: 90px !important;
  }
}
.pt-10 {
  padding-top: 10rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-10 {
    padding-top: 100px !important;
  }
}
.pt-11 {
  padding-top: 11rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-11 {
    padding-top: 110px !important;
  }
}
.pt-12 {
  padding-top: 12rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-12 {
    padding-top: 120px !important;
  }
}
.pt-13 {
  padding-top: 13rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-13 {
    padding-top: 130px !important;
  }
}
.pt-14 {
  padding-top: 14rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-14 {
    padding-top: 140px !important;
  }
}
.pt-15 {
  padding-top: 15rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-15 {
    padding-top: 150px !important;
  }
}
.pt-16 {
  padding-top: 16rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-16 {
    padding-top: 160px !important;
  }
}
.pt-17 {
  padding-top: 17rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-17 {
    padding-top: 170px !important;
  }
}
.pt-18 {
  padding-top: 18rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-18 {
    padding-top: 180px !important;
  }
}
.pt-19 {
  padding-top: 19rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-19 {
    padding-top: 190px !important;
  }
}
.pt-20 {
  padding-top: 20rem !important;
}
@media only screen and (max-width: 1024px) {
  .pt-20 {
    padding-top: 200px !important;
  }
}
.pl-0 {
  padding-left: 0 !important;
}
@media only screen and (max-width: 1024px) {
  .pl-0 {
    padding-left: 0px !important;
  }
}
.pl-1 {
  padding-left: 1rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-1 {
    padding-left: 10px !important;
  }
}
.pl-2 {
  padding-left: 2rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-2 {
    padding-left: 20px !important;
  }
}
.pl-3 {
  padding-left: 3rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-3 {
    padding-left: 30px !important;
  }
}
.pl-4 {
  padding-left: 4rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-4 {
    padding-left: 40px !important;
  }
}
.pl-5 {
  padding-left: 5rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-5 {
    padding-left: 50px !important;
  }
}
.pl-6 {
  padding-left: 6rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-6 {
    padding-left: 60px !important;
  }
}
.pl-7 {
  padding-left: 7rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-7 {
    padding-left: 70px !important;
  }
}
.pl-8 {
  padding-left: 8rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-8 {
    padding-left: 80px !important;
  }
}
.pl-9 {
  padding-left: 9rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-9 {
    padding-left: 90px !important;
  }
}
.pl-10 {
  padding-left: 10rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-10 {
    padding-left: 100px !important;
  }
}
.pl-11 {
  padding-left: 11rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-11 {
    padding-left: 110px !important;
  }
}
.pl-12 {
  padding-left: 12rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-12 {
    padding-left: 120px !important;
  }
}
.pl-13 {
  padding-left: 13rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-13 {
    padding-left: 130px !important;
  }
}
.pl-14 {
  padding-left: 14rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-14 {
    padding-left: 140px !important;
  }
}
.pl-15 {
  padding-left: 15rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-15 {
    padding-left: 150px !important;
  }
}
.pl-16 {
  padding-left: 16rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-16 {
    padding-left: 160px !important;
  }
}
.pl-17 {
  padding-left: 17rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-17 {
    padding-left: 170px !important;
  }
}
.pl-18 {
  padding-left: 18rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-18 {
    padding-left: 180px !important;
  }
}
.pl-19 {
  padding-left: 19rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-19 {
    padding-left: 190px !important;
  }
}
.pl-20 {
  padding-left: 20rem !important;
}
@media only screen and (max-width: 1024px) {
  .pl-20 {
    padding-left: 200px !important;
  }
}
.pr-0 {
  padding-right: 0 !important;
}
@media only screen and (max-width: 1024px) {
  .pr-0 {
    padding-right: 0px !important;
  }
}
.pr-1 {
  padding-right: 1rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-1 {
    padding-right: 10px !important;
  }
}
.pr-2 {
  padding-right: 2rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-2 {
    padding-right: 20px !important;
  }
}
.pr-3 {
  padding-right: 3rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-3 {
    padding-right: 30px !important;
  }
}
.pr-4 {
  padding-right: 4rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-4 {
    padding-right: 40px !important;
  }
}
.pr-5 {
  padding-right: 5rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-5 {
    padding-right: 50px !important;
  }
}
.pr-6 {
  padding-right: 6rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-6 {
    padding-right: 60px !important;
  }
}
.pr-7 {
  padding-right: 7rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-7 {
    padding-right: 70px !important;
  }
}
.pr-8 {
  padding-right: 8rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-8 {
    padding-right: 80px !important;
  }
}
.pr-9 {
  padding-right: 9rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-9 {
    padding-right: 90px !important;
  }
}
.pr-10 {
  padding-right: 10rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-10 {
    padding-right: 100px !important;
  }
}
.pr-11 {
  padding-right: 11rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-11 {
    padding-right: 110px !important;
  }
}
.pr-12 {
  padding-right: 12rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-12 {
    padding-right: 120px !important;
  }
}
.pr-13 {
  padding-right: 13rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-13 {
    padding-right: 130px !important;
  }
}
.pr-14 {
  padding-right: 14rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-14 {
    padding-right: 140px !important;
  }
}
.pr-15 {
  padding-right: 15rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-15 {
    padding-right: 150px !important;
  }
}
.pr-16 {
  padding-right: 16rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-16 {
    padding-right: 160px !important;
  }
}
.pr-17 {
  padding-right: 17rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-17 {
    padding-right: 170px !important;
  }
}
.pr-18 {
  padding-right: 18rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-18 {
    padding-right: 180px !important;
  }
}
.pr-19 {
  padding-right: 19rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-19 {
    padding-right: 190px !important;
  }
}
.pr-20 {
  padding-right: 20rem !important;
}
@media only screen and (max-width: 1024px) {
  .pr-20 {
    padding-right: 200px !important;
  }
}
.ls-0 {
  letter-spacing: 0 !important;
}
@media only screen and (max-width: 1024px) {
  .ls-0 {
    letter-spacing: 0px !important;
  }
}
.ls-1 {
  letter-spacing: 0.1rem !important;
}
@media only screen and (max-width: 1024px) {
  .ls-1 {
    letter-spacing: 1px !important;
  }
}
.ls-2 {
  letter-spacing: 0.2rem !important;
}
@media only screen and (max-width: 1024px) {
  .ls-2 {
    letter-spacing: 2px !important;
  }
}
.ls-3 {
  letter-spacing: 0.3rem !important;
}
@media only screen and (max-width: 1024px) {
  .ls-3 {
    letter-spacing: 2px !important;
  }
}
.ls-4 {
  letter-spacing: 0.4rem !important;
}
@media only screen and (max-width: 1024px) {
  .ls-4 {
    letter-spacing: 2px !important;
  }
}
.ls-5 {
  letter-spacing: 0.5rem !important;
}
@media only screen and (max-width: 1024px) {
  .ls-5 {
    letter-spacing: 5px !important;
  }
}
.ls-6 {
  letter-spacing: 0.6rem !important;
}
@media only screen and (max-width: 1024px) {
  .ls-6 {
    letter-spacing: 6px !important;
  }
}
.ls-7 {
  letter-spacing: 0.7rem !important;
}
@media only screen and (max-width: 1024px) {
  .ls-7 {
    letter-spacing: 7px !important;
  }
}
.ls-8 {
  letter-spacing: 0.8rem !important;
}
@media only screen and (max-width: 1024px) {
  .ls-8 {
    letter-spacing: 8px !important;
  }
}
.ls-9 {
  letter-spacing: 0.9rem !important;
}
@media only screen and (max-width: 1024px) {
  .ls-9 {
    letter-spacing: 9px !important;
  }
}
.ls-10 {
  letter-spacing: 1rem !important;
}
@media only screen and (max-width: 1024px) {
  .ls-10 {
    letter-spacing: 10px !important;
  }
}
.lh-1 {
  line-height: 1 !important;
}
.lh-11 {
  line-height: 1.1 !important;
}
.lh-12 {
  line-height: 1.2 !important;
}
.lh-13 {
  line-height: 1.3 !important;
}
.lh-14 {
  line-height: 1.4 !important;
}
.lh-15 {
  line-height: 1.5 !important;
}
.lh-16 {
  line-height: 1.6 !important;
}
.lh-17 {
  line-height: 1.7 !important;
}
.lh-18 {
  line-height: 1.8 !important;
}
.lh-19 {
  line-height: 1.9 !important;
}
.lh-20 {
  line-height: 2 !important;
}
.fs-70 {
  font-size: 3.4375rem;
}
.fs-52 {
  font-size: 2.4375rem;
}
.fs-48 {
  font-size: 2.25rem;
}
.fs-46 {
  font-size: 2.1875rem;
}
.fs-44 {
  font-size: 2.0625rem;
}
.fs-42 {
  font-size: 1.9375rem;
}
.fs-36 {
  font-size: 1.6875rem;
}
.fs-32 {
  font-size: 1.5rem;
}
.fs-28 {
  font-size: 1.3125rem;
}
.fs-26 {
  font-size: 1.1875rem;
}
.fs-24 {
  font-size: 1.125rem;
}
.fs-20 {
  font-size: 0.9375rem;
}
.fs-18 {
  font-size: 0.85rem;
}
.fs-16 {
  font-size: 0.8rem;
}
.fs-14 {
  font-size: 0.7rem;
}
.fs-13 {
  font-size: 0.675rem;
}
.fs-12 {
  font-size: 0.65rem;
}
.post {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(32, 1fr);
  position: relative;
}
.post img {
  max-width: 100%;
}
.post__topbar {
  height: calc(120rem * 1 / 21.33333333 * var(--text-multiplier));
  grid-column: 1 / -1;
  display: flex;
  background-color: #F1F2F2;
  align-items: center;
  gap: 0 1rem;
}
@media only screen and (max-width: 1024px) {
  .post__topbar {
    height: 50px;
  }
}
.post__body {
  grid-column: 1 / -1;
  display: grid;
  grid-column: 1 / 33;
  grid-template-columns: repeat(32, 1fr);
}
@media only screen and (max-width: 1024px) {
  .post__body {
    grid-template-columns: repeat(12, 1fr);
  }
}
.post__tags,
.post__cats {
  padding-left: calc(120rem * 1 / 21.33333333 * var(--text-multiplier));
  height: 100%;
  width: fit-content;
  display: flex;
  align-items: center;
}
@media only screen and (max-width: 1024px) {
  .post__tags,
  .post__cats {
    padding-left: calc(155rem * 1 / 21.33333333 * var(--text-multiplier));
  }
}
.post__tag,
.post__cat {
  padding: 0 1rem;
  border-right: 0.1rem solid #5A2F61;
  text-decoration: none !important;
  cursor: pointer;
  transition: all 0.25s ease-out;
}
.post__tag:first-of-type,
.post__cat:first-of-type {
  padding-left: 0;
}
.post__tag > span,
.post__cat > span {
  font-family: "mundial", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(22rem * 1 / 21.33333333 * var(--text-multiplier));
  width: 100%;
  color: #5A2F61;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .post__tag > span,
  .post__cat > span {
    font-size: calc(16rem * 1 / 4.33333);
    line-height: calc(24rem * 1 / 4.33333);
  }
}
.post__tag > span::after,
.post__cat > span::after {
  content: "";
  position: absolute;
  bottom: -0.25rem;
  left: 0;
  width: 100%;
  height: calc(4rem * 1 / 21.33333333 * var(--text-multiplier));
  background-color: #5A2F61;
  transform: scaleX(0);
  transition: transform 0.3s ease-in-out;
}
.post__tag > span:hover::after,
.post__cat > span:hover::after,
.post__tag > span.active::after,
.post__cat > span.active::after {
  transform: scaleX(1);
}
.post__tag:hover > span::after,
.post__cat:hover > span::after {
  transform: scale(1);
}
.post__publications {
  text-decoration: none !important;
  font-family: "mundial", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(22rem * 1 / 21.33333333 * var(--text-multiplier));
  color: #5A2F61;
  position: relative;
}
.post__publications::after {
  content: "";
  position: absolute;
  bottom: -0.4rem;
  left: 0;
  width: 100%;
  height: calc(4rem * 1 / 21.33333333 * var(--text-multiplier));
  background-color: #5A2F61;
  transform: scaleX(0);
  transition: transform 0.3s ease-in-out;
}
.post__publications:hover::after,
.post__publications.active::after {
  transform: scaleX(1);
}
@media only screen and (max-width: 1024px) {
  .post__publications {
    font-size: calc(16rem * 1 / 4.33333);
    line-height: calc(24rem * 1 / 4.33333);
  }
}
.post__publications:first-child {
  padding-left: calc(120rem * 1 / 21.33333333 * var(--text-multiplier));
}
.post__left {
  grid-column: 3 / 19;
  width: 100%;
  margin-bottom: 3rem;
  display: flex;
  flex-direction: column;
  position: relative;
}
@media only screen and (max-width: 1024px) {
  .post__left {
    padding-top: 50px;
    grid-column: 2/12;
  }
}
.post__left h4 {
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(18rem * 1 / 21.33333333 * var(--text-multiplier));
  line-height: calc(28rem * 1 / 21.33333333 * var(--text-multiplier));
  font-weight: bold;
}
.post__left h5 {
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(18rem * 1 / 21.33333333 * var(--text-multiplier));
  line-height: calc(28rem * 1 / 21.33333333 * var(--text-multiplier));
}
.post__left p,
.post__left pre,
.post__left ol,
.post__left ul {
  grid-column: 3 / 18;
  width: 100%;
  margin-bottom: 1rem;
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(18rem * 1 / 21.33333333 * var(--text-multiplier));
  line-height: calc(30rem * 1 / 21.33333333 * var(--text-multiplier));
  color: #484848;
}
.post__left p:last-child,
.post__left pre:last-child,
.post__left ol:last-child,
.post__left ul:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 1024px) {
  .post__left p,
  .post__left pre,
  .post__left ol,
  .post__left ul {
    font-size: calc(16rem * 1 / 4.33333);
    margin-bottom: 2.5rem;
    line-height: calc(30rem * 1 / 4.33333 * var(--text-multiplier));
  }
}
.post__left p > strong,
.post__left pre > strong,
.post__left ol > strong,
.post__left ul > strong {
  font-weight: bold;
}
.post__left li {
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(18rem * 1 / 21.33333333 * var(--text-multiplier));
  line-height: calc(30rem * 1 / 21.33333333 * var(--text-multiplier));
  color: #484848;
  padding-left: 0.5rem;
}
.post__left li > strong {
  font-weight: bold;
}
@media only screen and (max-width: 1024px) {
  .post__left li {
    font-size: calc(16rem * 1 / 4.33333);
    line-height: calc(30rem * 1 / 4.33333 * var(--text-multiplier));
  }
}
.post__left ol {
  margin-left: 1.75rem;
}
.post__left ol > li {
  list-style-type: decimal;
}
.post__left ul {
  margin-left: 1.75rem;
}
.post__left ul > li {
  list-style-type: disc;
}
.post__left .wp-block-code:last-of-type {
  margin-bottom: 1rem;
}
.post__left .wp-block-code > code {
  margin-left: 3rem;
}
.post__left .wp-block-pullquote {
  margin: 0;
  padding: 0;
  padding-left: 1.5rem;
  margin-bottom: 1rem;
  text-align: left;
}
.post__left .wp-block-pullquote.has-text-align-center {
  text-align: center;
}
.post__left .wp-block-pullquote.has-text-align-right {
  text-align: right;
}
@media only screen and (max-width: 1024px) {
  .post__left .wp-block-pullquote {
    padding-left: 3rem;
    margin-bottom: 2.5rem;
  }
}
.post__header {
  grid-column: 3 / 19;
  width: 100%;
  padding-top: 3rem;
  margin-bottom: 3rem;
  display: flex;
  flex-direction: column;
}
@media only screen and (max-width: 1024px) {
  .post__header {
    margin-bottom: 5rem;
  }
}
.post__header-title {
  font-family: "adobe-caslon-pro", serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(46rem * 1 / 21.33333333 * var(--text-multiplier));
  line-height: calc(55rem * 1 / 21.33333333 * var(--text-multiplier));
  margin-bottom: 1.2rem;
  font-weight: 600;
  width: 94%;
  margin-bottom: 1rem;
}
@media only screen and (max-width: 1024px) {
  .post__header-title {
    font-size: calc(27rem * 1 / 4.33333);
    line-height: calc(27rem * 1 / 4.33333);
  }
}
.post__header-date,
.post__header-author {
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(18rem * 1 / 21.33333333 * var(--text-multiplier));
  line-height: calc(30rem * 1 / 21.33333333 * var(--text-multiplier));
  color: #484848;
}
.post__header-date > a,
.post__header-author > a {
  color: #484848;
  text-decoration: none;
  transition: all 0.25s ease-out;
  position: relative;
}
.post__header-date > a::after,
.post__header-author > a::after {
  content: '';
  display: block;
  position: absolute;
  width: 100%;
  height: 0.1rem;
  background-color: #5A2F61;
  bottom: -0.15rem;
  left: 0;
  transform: scale(0);
  transition: all 0.25s ease-out;
}
.post__header-date > a:hover::after,
.post__header-author > a:hover::after {
  transform: scale(1);
}
.post__header-image {
  width: 100%;
  margin-top: 2.6rem;
}
.post__header-image img {
  object-fit: cover;
}
.post__extras {
  width: 100%;
  grid-column: 1 / 33;
  display: grid;
  grid-template-columns: repeat(32, 1fr);
}
@media screen and (min-width: 1000px) {
  .post__extras.nodisclaimer {
    margin-top: 100px;
  }
}
.post__menu {
  position: sticky;
  display: grid;
  grid-column: 21 / 33;
  grid-template-columns: repeat(12, 1fr);
  gap: 2rem 0;
  aspect-ratio: 1 / 1;
  top: 0;
  padding: 4.375rem 0;
  background-color: white;
  z-index: 10;
}
@media only screen and (max-width: 1024px) {
  .post__menu {
    display: grid;
    padding-top: 50px;
    position: relative;
    grid-column: 2 / 12;
  }
}
.post__menu.fixed {
  position: fixed;
}
.post__menu-authors {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
}
.post__menu-authors-sidetext {
  grid-column: 1 / 2;
  font-family: "mundial", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(24rem * 1 / 21.33333333 * var(--text-multiplier));
  writing-mode: vertical-lr;
  text-orientation: sideways;
  justify-self: flex-end;
  align-self: flex-start;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}
@media only screen and (max-width: 1024px) {
  .post__menu-authors-sidetext {
    font-size: calc(24rem * 1 / 8);
  }
}
@media only screen and (max-width: 1024px) {
  .post__menu-authors-sidetext {
    font-size: calc(16rem * 1 / 4.33333);
  }
}
.post__menu-authors-list {
  grid-column: 2 / 13;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1.6rem 0;
}
@media only screen and (max-width: 1024px) {
  .post__menu-authors-list {
    grid-column: 1/13;
  }
}
.post__menu-categories,
.post__menu-tags {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(12, 1fr);
}
.post__menu-categories-sidetext,
.post__menu-tags-sidetext {
  grid-column: 1 / 2;
  font-family: "mundial", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(24rem * 1 / 21.33333333 * var(--text-multiplier));
  writing-mode: vertical-lr;
  text-orientation: sideways;
  justify-self: flex-end;
  align-self: flex-start;
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
  margin-top: 10px;
}
@media only screen and (max-width: 1024px) {
  .post__menu-categories-sidetext,
  .post__menu-tags-sidetext {
    font-size: calc(24rem * 1 / 8);
  }
}
@media only screen and (max-width: 1024px) {
  .post__menu-categories-sidetext,
  .post__menu-tags-sidetext {
    font-size: calc(16rem * 1 / 4.33333);
  }
}
.post__menu-categories-list,
.post__menu-tags-list {
  grid-column: 3 / 13;
  width: 100%;
  display: flex;
  flex-direction: column;
}
.post__menu-categories-item,
.post__menu-tags-item {
  list-style-type: disc;
}
@media only screen and (max-width: 1024px) {
  .post__menu-categories-item,
  .post__menu-tags-item {
    list-style: none;
  }
}
.post__menu-categories-item::first-letter,
.post__menu-tags-item::first-letter {
  text-transform: uppercase;
}
.post__menu-categories-item > a,
.post__menu-tags-item > a {
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(18rem * 1 / 21.33333333 * var(--text-multiplier));
  line-height: calc(30rem * 1 / 21.33333333 * var(--text-multiplier));
  color: #484848;
}
.post__menu-categories-item > a:hover,
.post__menu-tags-item > a:hover {
  text-decoration: underline;
}
@media only screen and (max-width: 1024px) {
  .post__menu-categories-item > a,
  .post__menu-tags-item > a {
    font-size: calc(16rem * 1 / 4.33333 * var(--text-multiplier));
    line-height: calc(30rem * 1 / 4.33333 * var(--text-multiplier));
  }
}
.basic-text-page {
  max-width: 1000px;
  margin: auto;
  margin-top: calc(90rem * 1 / 21.33333333);
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(18rem * 1 / 21.33333333);
  line-height: calc(28rem * 1 / 21.33333333);
}
.basic-text-page h1 {
  font-family: "adobe-caslon-pro", serif;
  font-weight: 400;
  font-style: normal;
  color: #461950;
  font-size: calc(38rem * 1 / 21.33333333);
  line-height: calc(56rem * 1 / 21.33333333);
  margin-bottom: calc(30rem * 1 / 21.33333333);
}
@media only screen and (max-width: 1024px) {
  .basic-text-page h1 {
    font-size: calc(26rem * 1 / 4.33333);
    line-height: calc(36rem * 1 / 4.33333);
  }
}
.basic-text-page p {
  margin-bottom: calc(20rem * 1 / 21.33333333);
}
@media only screen and (max-width: 1024px) {
  .basic-text-page p {
    font-size: calc(16rem * 1 / 4.33333);
    line-height: calc(26rem * 1 / 4.33333);
    margin-bottom: calc(20rem * 1 / 4.33333);
  }
}
.basicbutton {
  grid-column: 10 / span 6;
  padding-top: calc(13.8125rem * 1 / 21.33333333);
  padding-bottom: calc(13.8125rem * 1 / 21.33333333);
  margin-top: calc(9.8125rem * 1 / 4.33333);
  max-width: 500px;
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
  color: white;
  background-color: #461950;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: calc(18rem * 1 / 21.33333333);
  text-decoration: none !important;
}
@media only screen and (max-width: 1024px) {
  .basicbutton {
    max-width: 5000px;
    grid-column: 2/11;
    font-size: calc(14rem * 1 / 4.33333);
    padding-top: calc(9.8125rem * 1 / 4.33333);
    padding-bottom: calc(9.8125rem * 1 / 4.33333);
    margin-bottom: calc(14.8125rem * 1 / 4.33333);
  }
  .basicbutton img {
    width: calc(9.8125rem * 1 / 4.33333) !important;
    height: calc(9.8125rem * 1 / 4.33333) !important;
  }
}
.basicbutton:hover {
  background-color: #381440;
}
.basicbutton img {
  margin-left: 1rem;
  width: 0.8125rem;
  height: 0.8125rem;
  aspect-ratio: 1 / 1;
  display: grid;
  place-items: center;
  background-color: #461950;
  transition: all 0.25s ease-out;
}
.basicbutton:hover img {
  transform: translateX(0.5rem);
}
.tags {
  grid-column: 1 / -1;
  place-items: center;
  z-index: 22;
  width: 100%;
  position: relative;
  display: grid;
  grid-template-columns: repeat(32, 1fr);
  grid-auto-rows: minmax(auto, auto);
}
@media only screen and (max-width: 1024px) {
  .tags {
    grid-template-columns: repeat(12, 1fr);
  }
}
.tags h2,
.tags h3 {
  font-size: calc(36rem * 1 / 21.33333333 * var(--text-multiplier));
  font-family: "adobe-caslon-pro", serif;
  font-weight: 400;
  font-style: normal;
  font-weight: 600;
  color: #461950;
  margin-bottom: 1rem;
  text-align: center;
  margin-top: 5rem;
  grid-column: 1 / -1;
}
.tags h2 em,
.tags h3 em {
  font-style: italic;
}
@media only screen and (max-width: 1024px) {
  .tags h2,
  .tags h3 {
    font-size: calc(25rem * 1 / 4.33333);
    margin-top: 10rem;
    text-align: left;
    grid-column: 1 / -1;
  }
}
.tags h3 {
  font-size: calc(18rem * 1 / 21.33333333 * var(--text-multiplier));
  font-weight: 400;
  margin-top: 0rem;
  margin-bottom: 2rem;
}
.tags h3 a {
  text-decoration: underline;
}
@media only screen and (max-width: 1024px) {
  .tags h3 {
    font-size: calc(16rem * 1 / 4.33333);
    margin-top: 0;
    text-align: left;
    grid-column: 1 / -1;
    margin-bottom: 10rem;
  }
}
.tags__container {
  display: grid;
  grid-template-columns: repeat(32, 1fr);
  place-items: center;
  position: relative;
  z-index: 22;
  grid-column: 4 / span 30;
}
@media only screen and (max-width: 1024px) {
  .tags__container {
    grid-template-columns: repeat(12, 1fr);
  }
}
@media only screen and (max-width: 1024px) {
  .tags__container {
    grid-column: 2 / span 10;
  }
}
.tags .news__post {
  width: auto !important;
  grid-column: span 10;
  margin-bottom: 5rem;
}
@media only screen and (max-width: 1024px) {
  .tags .news__post {
    grid-column: span 12;
  }
}
@media only screen and (max-width: 1024px) {
  .tags .news__post-image {
    grid-column: span 12;
  }
}
.so__post {
  display: grid;
  grid-template-columns: repeat(32, 1fr);
  place-items: center;
  z-index: 22;
  position: relative;
  margin-top: 2rem;
  margin-bottom: 6rem;
}
@media only screen and (max-width: 1024px) {
  .so__post {
    grid-template-columns: repeat(12, 1fr);
  }
}
.so__post-title {
  grid-column: 3 / 30;
  font-family: "adobe-caslon-pro", serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(38rem * 1 / 21.33333333 * var(--text-multiplier));
  line-height: calc(56rem * 1 / 21.33333333 * var(--text-multiplier));
  font-weight: 600;
  width: 100%;
  align-self: flex-start;
  text-align: left;
  margin-bottom: 1rem;
}
.so__post-title span {
  color: #5A2F61;
}
.so__post-body {
  grid-column: 3 / 30;
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.so__post-body p,
.so__post-body li {
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(18rem * 1 / 21.33333333 * var(--text-multiplier));
  line-height: calc(30rem * 1 / 21.33333333 * var(--text-multiplier));
  max-width: 100%;
  color: #484848;
}
.so__post-body li {
  margin-left: 1rem;
  list-style-type: disc;
}
.so__post-body strong {
  font-weight: 600;
}
.so__post-body img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
#payment {
  grid-column: 1 / -1;
  grid-template-columns: repeat(32, 1fr);
  place-items: center;
  z-index: 22;
  position: relative;
  font-family: 'Instrument Sans', sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: calc(16rem*1/21.33333333*var(--text-multiplier));
  line-height: calc(26rem*1/21.33333333*var(--text-multiplier));
  width: 80%;
  max-width: 1000px;
  margin: 5rem auto;
  /*.required { display:none; }*/
}
@media only screen and (max-width: 1024px) {
  #payment {
    font-size: calc(18rem*1/8);
    line-height: calc(25rem*1/8);
  }
}
@media only screen and (max-width: 1024px) {
  #payment {
    width: 70%;
    grid-column: 1 / -1;
  }
}
#payment .error {
  color: darkred;
  /*.required {
            display: inline-block;
        }*/
}
#payment h2 {
  width: 100%;
  grid-column: 1 / 11;
  font-family: "adobe-caslon-pro", serif;
  font-weight: 400;
  font-style: normal;
  color: #000;
  font-size: calc(30rem*1/21.33333333*var(--text-multiplier));
  line-height: calc(35.2rem*1/21.33333333*var(--text-multiplier));
  border-bottom: 1px solid lightgrey;
  padding-bottom: 1rem;
}
@media only screen and (max-width: 1024px) {
  #payment h2 {
    font-size: calc(30rem*1/8);
    line-height: calc(35.2rem*1/8);
    margin-top: 30px;
  }
}
#payment fieldset {
  min-width: 480px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  column-gap: 80px;
  row-gap: 15px;
  margin: 1rem 0 4.5rem;
  padding: 0;
}
@media only screen and (max-width: 1024px) {
  #payment fieldset {
    padding: calc(20rem*1/8);
  }
}
@media only screen and (max-width: 1024px) {
  #payment fieldset {
    flex-direction: column;
    min-width: 0;
    margin: 0;
    padding: 0;
  }
}
#payment fieldset .field__row {
  flex: 1 1 calc(33% - 80px);
}
#payment fieldset .field__row label {
  display: block;
  margin: 10px 0 5px;
}
#payment fieldset .field__row input,
#payment fieldset .field__row select,
#payment fieldset .field__row textarea {
  border: 1px solid #969696;
  padding: 4px 5px;
  font-family: 'Instrument Sans', sans-serif;
  font-size: calc(16rem*1/21.33333333*var(--text-multiplier));
  border-radius: 25px;
  padding: 10px;
  width: 100%;
}
@media only screen and (max-width: 1024px) {
  #payment fieldset .field__row input,
  #payment fieldset .field__row select,
  #payment fieldset .field__row textarea {
    font-size: calc(16rem*1/8);
  }
}
@media only screen and (max-width: 1024px) {
  #payment fieldset .field__row input,
  #payment fieldset .field__row select,
  #payment fieldset .field__row textarea {
    font-size: 16px !important;
  }
}
#payment fieldset .field__row input,
#payment fieldset .field__row textarea {
  width: 100%;
}
#payment fieldset .field__row textarea {
  height: 150px;
}
#payment fieldset .field__row__flex {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-direction: row;
}
#payment fieldset .field__row__flex__item {
  flex: 1 1 auto;
  gap: 5px;
}
#payment fieldset .field__row__full-width {
  flex: 1 0 100%;
}
#payment .field__row__submit {
  display: flex;
  gap: 20px;
  justify-content: center;
}
#payment .cvv_details {
  font-size: calc(14rem*1/21.33333333*var(--text-multiplier));
  line-height: calc(20rem*1/21.33333333*var(--text-multiplier));
  cursor: pointer;
}
@media only screen and (max-width: 1024px) {
  #payment .cvv_details {
    font-size: calc(10rem*1/8);
    line-height: calc(15rem*1/8);
  }
}
#payment button.paymentBtn {
  border: 0.025rem solid #806087;
  padding: 10px 15px;
  background-color: transparent;
  color: #806087;
  font-family: 'Instrument Sans', sans-serif;
  font-size: calc(16rem*1/21.33333333*var(--text-multiplier));
  cursor: pointer;
}
@media only screen and (max-width: 1024px) {
  #payment button.paymentBtn {
    font-size: calc(16rem*1/8);
  }
}
#payment button.paymentBtn:hover,
#payment button.paymentBtn:focus {
  background-color: #461950;
  color: white;
}
#payment dialog.cvv_detail_popup {
  width: calc(100% / 2);
  max-height: 490px;
  height: 100%;
  min-height: 200px;
  /*        justify-self: center;
        align-self: center;*/
  padding: 2rem;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#payment dialog.cvv_detail_popup h1 {
  font-family: 'mundial', sans-serif;
  font-weight: bold;
}
#payment dialog.cvv_detail_popup p {
  margin: 0.7rem 0;
}
#payment dialog.cvv_detail_popup .cvv_images {
  display: flex;
  flex-direction: row;
  gap: 1rem;
}
@media only screen and (max-width: 1024px) {
  #payment dialog.cvv_detail_popup .cvv_images {
    flex-direction: column;
  }
}
#payment dialog.cvv_detail_popup .cvv_images .cvv_image {
  flex: 1 1 50%;
  text-align: center;
}
#payment dialog.cvv_detail_popup .cvv_images .cvv_image img {
  max-width: 250px;
  width: 100%;
  height: auto;
}
#payment dialog.cvv_detail_popup .cvv_images .cvv_image p {
  font-family: 'Instrument Sans', sans-serif;
  font-size: calc(14rem*1/21.33333333*var(--text-multiplier));
  line-height: 1.2rem;
}
@media only screen and (max-width: 1024px) {
  #payment dialog.cvv_detail_popup .cvv_images .cvv_image p {
    font-size: calc(14rem*1/8);
    line-height: calc(18rem*1/8);
  }
}
#payment dialog.recaptcha_message {
  /*       justify-self: center;
        align-self: center;*/
  padding: 1rem;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
#payment dialog.recaptcha_message p {
  margin: 0.7rem 0;
}
#payment .error_list,
#payment .error_payment_list {
  color: darkred;
}
#payment .error_list li,
#payment .error_payment_list li {
  list-style: none;
  margin-left: 15px;
}
#payment .flex__row {
  display: flex;
  flex-direction: row;
  column-gap: 80px;
}
#payment .flex__row select {
  width: auto !important;
}
#payment .flex__row div {
  flex: 1 1 calc(50% - 40px);
}
@media only screen and (max-width: 1024px) {
  #payment .flex__row {
    flex-direction: column;
  }
}
.loader-spinner {
  display: none;
  width: 153px;
  height: 40px;
  background-color: #f1f2f2;
  border: 1px solid #5a2f61;
}
.loader-spinner-active {
  display: inline-flex;
  justify-content: center;
  align-items: center;
}
.loader-spinner .loader {
  width: 28px;
  height: 28px;
  border: 5px solid #ffffff;
  border-bottom-color: #5a2f61;
  border-radius: 50%;
  display: inline-block;
  box-sizing: border-box;
  animation: rotation 1s linear infinite;
}
@keyframes rotation {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
