@charset "UTF-8";
:root {
  --focus-outline-color: #185bc0e8;
  --text-highlight-bg-color: #185bc0e8;
  --text-highlight-color: #ffffff;
  --primary-color: #131313;
  --secondary-color: #e11b22;
  --tertiary-color: #2c2c2c;
  --quaternary-color: #b7b7b7;
  --gray-color: #444343;
  --light-color: #ededed;
  --light-gray: var(--light-color);
  --body-color: #ffffff;
  --dark-color: #5a5a5a;
  --white-color: #ffffff;
  --dark-white-color: #a8a8a8;
  --black-color: #000000;
  --list-price-text-color: var(--secondary-color);
  --list-price-bg: transparent;
  --default-border-color: #13131340;
  --default-border-color-light: #13131340;
  --default-border-color-dark: #ffffff40;
  --default-border-color-primary: #eeeeee40;
  --default-hr-color: #13131340;
  --default-hr-color-light: #f0f0f0;
  --default-hr-color-dark: #13131340;
  --default-hr-color-primary: #eeeeee40;
  --default-hr-color-secondary: #13131340;
  --default-hr-color-tertiary: #6d6d6d;
  --default-text-color: #636466;
  --default-text-color-light: #636466;
  --default-text-color-dark: rgba(255,255,255,0.65);
  --default-text-color-primary: var(--white-color);
  --default-text-color-secondary: var(--white-color);
  --default-text-color-tertiary: rgba(255,255,255,0.65);
  --default-bold-color: #000000;
  --default-bold-color-light: #000000;
  --default-bold-color-dark: var(--white-color);
  --default-bold-color-primary: var(--white-color);
  --default-bold-color-secondary: var(--white-color);
  --default-bold-color-tertiary: var(--white-color);
  --default-link-color: var(--primary-color);
  --default-link-underline-color: var(--secondary-color);
  --default-link-color-light: var(--primary-color);
  --default-link-underline-color-light: var(--secondary-color);
  --default-link-color-dark: var(--white-color);
  --default-link-underline-color-dark: var(--secondary-color);
  --default-link-color-primary: var(--white-color);
  --default-link-underline-color-primary: var(--secondary-color);
  --default-link-color-secondary: var(--white-color);
  --default-link-underline-color-secondary: var(--primary-color);
  --default-link-color-tertiary: var(--white-color);
  --default-link-underline-color-tertiary: var(--secondary-color);
  --default-heading-color: var(--primary-color);
  --default-heading-color-h1: var(--primary-color);
  --default-heading-color-h2: var(--primary-color);
  --default-heading-color-h3: var(--secondary-color);
  --default-heading-color-h4: var(--primary-color);
  --default-heading-color-h5: var(--primary-color);
  --default-heading-color-h6: var(--primary-color);
  --default-heading-color-dark: var(--white-color);
  --default-heading-color-h1-dark: var(--white-color);
  --default-heading-color-h2-dark: var(--white-color);
  --default-heading-color-h3-dark: var(--white-color);
  --default-heading-color-h4-dark: var(--white-color);
  --default-heading-color-h5-dark: var(--white-color);
  --default-heading-color-h6-dark: var(--white-color);
  --default-heading-color-light: var(--primary-color);
  --default-heading-color-h1-light: var(--primary-color);
  --default-heading-color-h2-light: var(--primary-color);
  --default-heading-color-h3-light: var(--secondary-color);
  --default-heading-color-h4-light: var(--primary-color);
  --default-heading-color-h5-light: var(--primary-color);
  --default-heading-color-h6-light: var(--primary-color);
  --default-text-weight: 300;
  --primary-font: "Readex Pro", sans-serif;
  --secondary-font: "Outfit", sans-serif;
  --body-min-width: 320px;
  --wrapper-width-narrow: 880px;
  --wrapper-width-post-content: 960px;
  --wrapper-width-page-content: 960px;
  --wrapper-width-event-content: 960px;
  --wrapper-width-reference-content: 960px;
  --wrapper-width-medium: 1080px;
  --wrapper-width-normal: 1440px;
  --wrapper-width-wide: 1580px;
  --wrapper-width-ultrawide: 1920px;
  --wrapper-width-xultrawide: 2560px;
  --wrapper-padding: 25px;
  --mobilenav-open-text-color: var(--white-color);
  --mobilenav-open-bg-color: var(--secondary-color);
  --mobilenav-background-color: var(--primary-color);
  --mobilenav-border-color: var(--default-border-color-dark);
  --mobilenav-plus-color: var(--secondary-color);
  --mobilenav-active-plus-color: var(--secondary-color);
  --mobilenav-link-color: var(--white-color);
  --mobilenav-active-link-color: var(--secondary-color);
  --mobilenav-close-color: var(--secondary-color);
  --mobilenav-width: 320px;
  --main-container-padding-mobile: 1.5em 0;
  --main-container-padding-desktop: 2.5em 0;
  --hero-content-overlap-mobile: 3em;
  --hero-content-overlap-desktop: 6em;
  --some-button-color: #ffffff;
  --some-button-bg-color: var(--secondary-color);
  --mk-admin-primary-color: #e40046;
  --mk-admin-primary-color-d1: #da0246;
  --mk-admin-primary-color-d2: #cb003e;
  --mk-admin-primary-color-d3: #d50041;
  --mk-admin-primary-color-d4: #bb0039;
  --mk-admin-primary-color-d5: #98002f;
  --mk-admin-primary-color-l1: #ff185f;
  --mk-admin-primary-color-l2: #f3004b;
  --mk-admin-secondary-color: #ff6b1b;
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

*, *::after, *::before {
  box-sizing: border-box;
}

img {
  max-width: 100%;
  height: auto;
}

iframe {
  max-width: 100%;
}

button.open-mobile-menu-button {
  --button-text-color: var(--mobilenav-open-text-color) !important;
  --button-bg-color: var(--mobilenav-open-bg-color) !important;
  padding: 0.7em;
  display: flex;
  align-items: center;
  flex-shrink: 0;
  margin-left: 1.5em;
}
button.open-mobile-menu-button svg path {
  fill: var(--mobilenav-open-text-color) !important;
}
button.open-mobile-menu-button span.main-text, button.open-mobile-menu-button span.open-text {
  text-transform: uppercase;
  line-height: 20px;
}
button.open-mobile-menu-button span.main-text {
  display: none;
}
button.open-mobile-menu-button span.open-text {
  display: none;
}
@media (min-width: 550px) {
  button.open-mobile-menu-button span.main-text {
    display: inline-block;
    margin-left: 0.5em;
  }
}
@media (min-width: 768px) {
  button.open-mobile-menu-button {
    padding: 0.7em 1.2em 0.7em 1.2em;
  }
  button.open-mobile-menu-button span.main-text {
    margin-left: 0.2em;
  }
  button.open-mobile-menu-button span.open-text {
    display: inline-block;
    margin-left: 0.5em;
  }
}
@media (max-width: 549px) {
  button.open-mobile-menu-button {
    border-radius: 15px;
  }
}
@media (max-width: 767.98px) {
  button.open-mobile-menu-button {
    margin-left: 1em;
  }
}
@media (max-width: 479.98px) {
  button.open-mobile-menu-button {
    margin-left: 0.5em;
  }
}

#mobilenav {
  background-color: var(--mobilenav-background-color);
  opacity: 1;
  box-shadow: -9px 0px 25px -10px transparent;
  position: fixed;
  top: 0;
  right: -100%;
  overflow: auto;
  bottom: 0;
  max-width: var(--mobilenav-width);
  width: 100%;
  z-index: 201;
  transition: all 0.3s ease;
}
#mobilenav.open {
  right: 0;
  opacity: 1;
  box-shadow: -9px 0px 25px -10px #000;
}
#mobilenav .mobilenav-header {
  background-color: var(--mobilenav-background-color);
  height: 90px;
  position: relative;
  display: flex;
  align-items: center;
  padding: 0 25px;
}
#mobilenav .mobilenav-header .site-logo {
  color: #ffffff;
  font-family: var(--secondary-font);
  font-weight: 800;
  font-size: 1.125rem;
}
#mobilenav .mobilenav-header .site-logo img {
  width: 190px;
  display: block;
}
#mobilenav .mobilenav-navigation {
  padding: 17px 0 20px 0;
  background-color: var(--mobilenav-background-color);
}
#mobilenav .mobilenav-navigation ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
#mobilenav .mobilenav-navigation ul#mobile {
  overflow: hidden;
  padding: 15px 0;
  border-top: 1px solid var(--mobilenav-border-color);
  border-bottom: 1px solid var(--mobilenav-border-color);
}
#mobilenav .mobilenav-navigation ul#mobile li {
  position: relative;
}
#mobilenav .mobilenav-navigation ul#mobile li a {
  color: var(--mobilenav-link-color);
  font-family: var(--secondary-font);
  font-weight: 600;
  display: block;
  text-decoration: none;
  padding: 5px 25px;
}
#mobilenav .mobilenav-navigation ul#mobile li[class*=current] > a {
  text-decoration: underline;
  color: var(--mobilenav-active-link-color);
}
#mobilenav .mobilenav-navigation ul#mobile li button.toggle-submenu {
  height: 35px;
  width: 35px;
  top: 0;
  right: 20px;
  --submenu-toggle-color: var(--mobilenav-plus-color);
}
#mobilenav .mobilenav-navigation ul#mobile > li[class*=current] > button.toggle-submenu {
  --submenu-toggle-color: var( --mobilenav-active-plus-color);
}
#mobilenav .mobilenav-navigation ul#mobile li.menu-item-has-children > a {
  padding-right: 60px;
}
#mobilenav .mobilenav-navigation ul#mobile li.submenu-open > ul.sub-menu {
  opacity: 1;
  pointer-events: all;
  display: block;
}
#mobilenav .mobilenav-navigation ul#mobile ul.sub-menu {
  display: none;
}
#mobilenav .mobilenav-navigation ul#mobile ul.sub-menu li:first-of-type {
  margin-top: 10px;
}
#mobilenav .mobilenav-navigation ul#mobile ul.sub-menu li:last-of-type {
  margin-bottom: 10px;
}
#mobilenav .mobilenav-navigation ul#mobile > li > a {
  padding: 10px 25px;
}
#mobilenav .mobilenav-navigation ul#mobile > li > button.toggle-submenu {
  height: 45px;
  width: 35px;
}
#mobilenav .mobilenav-navigation ul#mobile > li > a {
  font-size: 1.25rem;
}
#mobilenav .mobilenav-navigation ul#mobile > li > ul.sub-menu {
  padding-left: 10px;
}
#mobilenav .mobilenav-navigation ul#mobile > li > ul.sub-menu > li > a {
  font-size: 1.125rem;
}
#mobilenav .mobilenav-navigation ul#mobile > li > ul.sub-menu > li > a::before {
  content: "- ";
  margin-left: -0.6em;
}
#mobilenav .mobilenav-navigation ul#mobile > li > ul.sub-menu > li ul.sub-menu {
  padding-left: 15px;
}
#mobilenav .mobilenav-navigation ul#mobile > li > ul.sub-menu > li ul.sub-menu > li > a {
  font-size: 1rem;
}
#mobilenav .mobilenav-navigation ul#mobile > li > ul.sub-menu > li ul.sub-menu > li > a::before {
  content: "- ";
  margin-left: -0.6em;
}
#mobilenav .mobilenav-navigation ul#mobile > li > ul.sub-menu > li ul.sub-menu li ul.sub-menu {
  padding-left: 15px;
}
#mobilenav .mobilenav-navigation ul#mobile > li > ul.sub-menu > li ul.sub-menu li ul.sub-menu > a {
  font-size: 1rem;
}
#mobilenav .mobilenav-navigation ul#mobile > li > ul.sub-menu > li ul.sub-menu li ul.sub-menu > a::before {
  content: "- ";
  margin-left: -0.6em;
}
#mobilenav .mobilenav-navigation ul#mobile li.submenu-open > button.toggle-submenu::before {
  display: none;
}
#mobilenav .mobilenav-navigation ul#mobile li button.toggle-submenu {
  position: absolute;
  padding: 0;
  border: 0;
  background-color: transparent;
  cursor: pointer;
}
#mobilenav .mobilenav-navigation ul#mobile li button.toggle-submenu::before, #mobilenav .mobilenav-navigation ul#mobile li button.toggle-submenu::after {
  display: block;
  background-color: var(--submenu-toggle-color);
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}
#mobilenav .mobilenav-navigation ul#mobile li button.toggle-submenu::before {
  width: 2px;
  height: 18px;
}
#mobilenav .mobilenav-navigation ul#mobile li button.toggle-submenu::after {
  width: 18px;
  height: 2px;
}
#mobilenav .mobilenav-bottom {
  margin: 30px 25px;
  margin-top: 15px;
  padding-top: 0.625rem;
}
#mobilenav .mobilenav-bottom .search-form {
  margin-bottom: 2em;
}
#mobilenav .mobilenav-bottom .mobile-menu-bottom-widgets {
  margin-top: 10px;
  font-size: 1rem;
}
#mobilenav .mobilenav-bottom .login_buttons_container {
  margin-bottom: 2em;
  line-height: 1.2em;
  font-family: var(--secondary-font);
  font-size: 1rem;
}
#mobilenav .mobilenav-bottom .login_buttons_container a {
  display: block;
  color: var(--secondary-color);
}

#mobilenav-dimmer {
  position: fixed;
  opacity: 0;
  z-index: 200;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  pointer-events: none;
  transition: all 0.3s ease;
}
#mobilenav-dimmer.open {
  opacity: 1;
  pointer-events: auto;
  backdrop-filter: blur(4px);
  background: rgba(0, 0, 0, 0.5);
}

button.close-menu-button {
  background-color: transparent;
  display: block;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  border: 2px solid var(--mobilenav-close-color);
  padding: 0;
  position: relative;
  cursor: pointer;
  margin-left: auto;
}
button.close-menu-button::before, button.close-menu-button::after {
  display: block;
  background-color: var(--mobilenav-close-color);
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
button.close-menu-button::before {
  width: 2px;
  height: 55%;
}
button.close-menu-button::after {
  width: 55%;
  height: 2px;
}

/* --------------------------
 *
 * Import fonts
 *
** ----------------------- */
/* latin-ext */
@font-face {
  font-family: "Outfit";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(../font/outfit/outfit-latin-ext-100-900-normal.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Outfit";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url(../font/outfit/outfit-latin-100-900-normal.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* arabic */
@font-face {
  font-family: "Readex Pro";
  font-style: normal;
  font-weight: 160 700;
  font-display: swap;
  src: url(../font/readex-pro/readex-pro-arabic-160-700-normal.woff2) format("woff2");
  unicode-range: U+0600-06FF, U+0750-077F, U+0870-088E, U+0890-0891, U+0897-08E1, U+08E3-08FF, U+200C-200E, U+2010-2011, U+204F, U+2E41, U+FB50-FDFF, U+FE70-FE74, U+FE76-FEFC, U+102E0-102FB, U+10E60-10E7E, U+10EC2-10EC4, U+10EFC-10EFF, U+1EE00-1EE03, U+1EE05-1EE1F, U+1EE21-1EE22, U+1EE24, U+1EE27, U+1EE29-1EE32, U+1EE34-1EE37, U+1EE39, U+1EE3B, U+1EE42, U+1EE47, U+1EE49, U+1EE4B, U+1EE4D-1EE4F, U+1EE51-1EE52, U+1EE54, U+1EE57, U+1EE59, U+1EE5B, U+1EE5D, U+1EE5F, U+1EE61-1EE62, U+1EE64, U+1EE67-1EE6A, U+1EE6C-1EE72, U+1EE74-1EE77, U+1EE79-1EE7C, U+1EE7E, U+1EE80-1EE89, U+1EE8B-1EE9B, U+1EEA1-1EEA3, U+1EEA5-1EEA9, U+1EEAB-1EEBB, U+1EEF0-1EEF1;
}
/* vietnamese */
@font-face {
  font-family: "Readex Pro";
  font-style: normal;
  font-weight: 160 700;
  font-display: swap;
  src: url(../font/readex-pro/readex-pro-vietnamese-160-700-normal.woff2) format("woff2");
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: "Readex Pro";
  font-style: normal;
  font-weight: 160 700;
  font-display: swap;
  src: url(../font/readex-pro/readex-pro-latin-ext-160-700-normal.woff2) format("woff2");
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: "Readex Pro";
  font-style: normal;
  font-weight: 160 700;
  font-display: swap;
  src: url(../font/readex-pro/readex-pro-latin-160-700-normal.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
body {
  font-size: 1.125rem;
  --font-min: 1.0625rem;
  --font-max: 1.125rem;
  font-size: max(var(--font-min), min(var(--sizer, 3vw), var(--font-max)));
  font-size: clamp(var(--font-min), var(--sizer, 3vw), var(--font-max));
  font-family: var(--primary-font);
  color: var(--default-text-color);
  background-color: var(--body-color);
  min-width: var(--body-min-width);
  font-weight: var(--default-text-weight);
  line-height: 1.473686;
}

/* --------------------------
 *
 * Headings 
 *
** ----------------------- */
h1, .h1, .woocommerce-thankyou-order-received,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  font-size: max(var(--font-min), min(var(--sizer, 4.5vw), var(--font-max)));
  font-size: clamp(var(--font-min), var(--sizer, 4.5vw), var(--font-max));
  font-family: var(--secondary-font);
  color: var(--default-heading-color);
  font-weight: 700;
  line-height: 1.15;
  margin-top: 0;
  margin-bottom: 1.2rem;
}
h1 a, .h1 a, .woocommerce-thankyou-order-received a,
h2 a, .h2 a,
h3 a, .h3 a,
h4 a, .h4 a,
h5 a, .h5 a,
h6 a, .h6 a {
  color: inherit;
  font-weight: inherit;
  font-family: inherit;
  text-decoration: none;
}
p + h1, p + .h1, p + .woocommerce-thankyou-order-received,
p + h2, p + .h2,
p + h3, p + .h3,
p + h4, p + .h4,
p + h5, p + .h5,
p + h6, p + .h6 {
  margin-top: 1em;
}
ol + h1, ol + .h1, ol + .woocommerce-thankyou-order-received,
ol + h2, ol + .h2,
ol + h3, ol + .h3,
ol + h4, ol + .h4,
ol + h5, ol + .h5,
ol + h6, ol + .h6 {
  margin-top: 1em;
}
ul + h1, ul + .h1, ul + .woocommerce-thankyou-order-received,
ul + h2, ul + .h2,
ul + h3, ul + .h3,
ul + h4, ul + .h4,
ul + h5, ul + .h5,
ul + h6, ul + .h6 {
  margin-top: 1em;
}

h1, .h1, .woocommerce-thankyou-order-received {
  --font-min: 1.75rem;
  --font-max: 3.125rem;
  font-size: max(var(--font-min), min(var(--sizer, 6vw), var(--font-max)));
  font-size: clamp(var(--font-min), var(--sizer, 6vw), var(--font-max));
  font-family: var(--secondary-font);
  color: var(--default-heading-color-h1);
  line-height: 1.1;
}
h1.extra-large, .h1.extra-large, .extra-large.woocommerce-thankyou-order-received {
  --font-min: 1.875rem;
  --font-max: 4.375rem;
  line-height: 1;
}

h2, .h2 {
  --font-min: 1.5625rem;
  --font-max: 2.5rem;
  color: var(--default-heading-color-h2);
  font-weight: 500;
}

h3, .h3 {
  --font-min: 1.4375rem;
  --font-max: 2rem;
  color: var(--default-heading-color-h3);
}

h4, .h4 {
  --font-min: 1.375rem;
  --font-max: 1.75rem;
  color: var(--default-heading-color-h4);
  font-weight: 600;
}

h5, .h5 {
  --font-min: 1.3125rem;
  --font-max: 1.75rem;
  color: var(--default-heading-color-h5);
  font-weight: 500;
}

h6, .h6 {
  --font-min: 1.25rem;
  --font-max: 1.5625rem;
  color: var(--default-heading-color-h6);
  font-weight: 500;
}

a.h1, a.woocommerce-thankyou-order-received, a.h2, a.h3, a.h4, a.h5, a.h6 {
  text-decoration: none !important;
}

/* --------------------------
 *
 * HTMl tags
 *
** ----------------------- */
p {
  margin: 0 0 1em 0;
}

.dummy-link, a {
  font-weight: 600;
  color: var(--default-link-color);
  transition: opacity 0.3s;
  text-decoration: none;
}
.dummy-link[class*=fa-], a[class*=fa-] {
  font-weight: 600;
}
.dummy-link:not(.no-hover-opacity):hover, a:not(.no-hover-opacity):hover {
  opacity: 0.8;
}
.dummy-link.fa-arrow-right-long.fa--after:before, .dummy-link.fa-long-arrow-right.fa--after:before, .dummy-link.fa-long-arrow-alt-right.fa--after:before, a.fa-arrow-right-long.fa--after:before, a.fa-long-arrow-right.fa--after:before, a.fa-long-arrow-alt-right.fa--after:before {
  transition: transform 0.2s ease-out;
  transform: translateX(0px);
}
.dummy-link.fa-arrow-right-long.fa--after:hover:before, .dummy-link.fa-long-arrow-right.fa--after:hover:before, .dummy-link.fa-long-arrow-alt-right.fa--after:hover:before, a.fa-arrow-right-long.fa--after:hover:before, a.fa-long-arrow-right.fa--after:hover:before, a.fa-long-arrow-alt-right.fa--after:hover:before {
  transform: translateX(3px);
}

.pre-header-notice-bar p a:not(.button),
.header-top p a:not(.button),
.footer-columns p a:not(.button),
.content_module--inner-container p a:not(.button),
.frontpage-main-content p a:not(.button),
.component--singular-content p a:not(.button) {
  font-weight: 600;
  color: var(--default-link-color);
  text-underline-offset: 0.2em;
  text-decoration: underline;
  text-decoration-color: var(--default-link-underline-color);
}
.pre-header-notice-bar p a[class*=fa-],
.header-top p a[class*=fa-],
.footer-columns p a[class*=fa-],
.content_module--inner-container p a[class*=fa-],
.frontpage-main-content p a[class*=fa-],
.component--singular-content p a[class*=fa-] {
  text-decoration: none;
}

strong, b {
  font-weight: 700;
  color: var(--default-bold-color);
}

ul, ol {
  padding-left: 1.5em;
}

hr {
  margin: 1em 0;
  border: 0;
  border-top: 1px solid var(--default-hr-color);
  border-style: solid;
}

hr.separator--thick {
  border-top: 2px solid var(--secondary-color);
}

blockquote:not(.unstyled) {
  background-color: var(--light-color);
  color: var(--default-text-color-light);
  border-left: 9px solid var(--primary-color);
  margin: 2.5rem 0;
  padding: 2.5rem;
}
blockquote:not(.unstyled) *:first-child {
  margin-top: 0;
}
blockquote:not(.unstyled) *:last-child {
  margin-bottom: 0;
}

small,
.small-text,
p.small {
  font-size: 1rem;
  --font-min: 0.875rem;
  --font-max: 1rem;
  font-size: max(var(--font-min), min(var(--sizer, 5vw), var(--font-max)));
  font-size: clamp(var(--font-min), var(--sizer, 5vw), var(--font-max));
  font-weight: 300;
  color: var(--default-text-color);
}

/* --------------------------
 *
 * WP img alignments
 *
** ----------------------- */
figure.alignleft,
picture.alignleft img,
img.alignleft {
  float: left;
  display: block;
}

figure.alignright,
picture.alignright img,
img.alignright {
  float: right;
  display: block;
}

figure.aligncenter,
picture.aligncenter img,
img.aligncenter {
  display: block;
  margin: 0 auto;
}

figure {
  margin: 0 0 1.5em 0;
  max-width: 100%;
}

figure.wp-caption {
  max-width: 100% !important;
}

.extra-padding {
  padding: 1em 0;
}

figure.wp-caption .extra-padding {
  padding: 1em 0 0;
}

/* --------------------------
 *
 * Helper classes
 *
** ----------------------- */
.uppercase {
  text-transform: uppercase;
}

.text-overflow-ellipsis {
  overflow-x: clip;
  text-overflow: ellipsis;
}

.white-space--nowrap {
  white-space: nowrap;
}

.strong {
  font-weight: 700 !important;
  color: var(--default-bold-color);
}

.bold-link {
  font-weight: 700 !important;
}

.font--primary {
  font-family: var(--primary-font);
}

.font--secondary {
  font-family: var(--secondary-font);
}

.font-weight--100 {
  font-weight: 100;
}

.font-weight--200 {
  font-weight: 200;
}

.font-weight--300 {
  font-weight: 300;
}

.font-weight--400 {
  font-weight: 400;
}

.font-weight--500 {
  font-weight: 500;
}

.font-weight--600 {
  font-weight: 600;
}

.font-weight--700 {
  font-weight: 700;
}

.font-weight--800 {
  font-weight: 800;
}

.font-weight--900 {
  font-weight: 900;
}

.font-size--xs {
  font-size: 0.875rem;
}

.font-size--s {
  font-size: 0.9375rem;
}

.font-size--m {
  font-size: 1rem;
}

.font-size--l {
  font-size: 1.1875rem;
}

.font-size--xl {
  font-size: 1.25rem;
}

.font-size--xxl {
  font-size: 1.3125rem;
}

.color--default-text,
.color--default-text-color {
  color: var(--default-text-color) !important;
}

.color--primary,
.color--primary-color {
  color: var(--primary-color) !important;
}

.color--secondary,
.color--secondary-color {
  color: var(--secondary-color) !important;
}

.color--tertiary,
.color--tertiary-color {
  color: var(--tertiary-color) !important;
}

.color--quaternary,
.color--quaternary-color {
  color: var(--quaternary-color) !important;
}

.color--white,
.color--white-color {
  color: var(--white-color) !important;
}

.color--light,
.color--light-color {
  color: var(--light-color) !important;
}

.color--dark,
.color--dark-color {
  color: var(--dark-color) !important;
}

.color--black,
.color--black-color {
  color: var(--black-color);
}

.filter--invert {
  filter: invert(100%);
}

.opacity--90 {
  opacity: 0.9;
}

.opacity--80 {
  opacity: 0.8;
}

.opacity--70 {
  opacity: 0.7;
}

.opacity--60 {
  opacity: 0.6;
}

.opacity--50 {
  opacity: 0.5;
}

.opacity--40 {
  opacity: 0.4;
}

.opacity--30 {
  opacity: 0.3;
}

.opacity--20 {
  opacity: 0.2;
}

.opacity--10 {
  opacity: 0.1;
}

.heading-bg--primary {
  display: inline-block;
  padding: 0.2em 0.4em;
  background-color: var(--primary-color);
}

.no-margin--last-child p:last-child, .no-margin--last-child h1:last-child, .no-margin--last-child h2:last-child, .no-margin--last-child h3:last-child, .no-margin--last-child h4:last-child, .no-margin--last-child h5:last-child, .no-margin--last-child h6:last-child {
  margin-bottom: 0;
}

.no-margin--first-child p:first-child, .no-margin--first-child h1:first-child, .no-margin--first-child h2:first-child, .no-margin--first-child h3:first-child, .no-margin--first-child h4:first-child, .no-margin--first-child h5:first-child, .no-margin--first-child h6:first-child {
  margin-top: 0;
}

.ingress {
  font-weight: 300;
  color: var(--default-text-color);
  font-size: 1.1875rem;
  --font-min: 1.125rem;
  --font-max: 1.1875rem;
  font-size: max(var(--font-min), min(var(--sizer, 3vw), var(--font-max)));
  font-size: clamp(var(--font-min), var(--sizer, 3vw), var(--font-max));
}

.strong-text {
  font-weight: 700;
  color: var(--default-bold-color);
  font-size: 1.1875rem;
  --font-min: 1.125rem;
  --font-max: 1.1875rem;
  font-size: max(var(--font-min), min(var(--sizer, 3vw), var(--font-max)));
  font-size: clamp(var(--font-min), var(--sizer, 3vw), var(--font-max));
}

.notice-text {
  font-weight: 600;
  color: var(--secondary-color);
  font-family: var(--secondary-font);
  font-size: 1.1875rem;
  --font-min: 1.0625rem;
  --font-max: 1.1875rem;
  font-size: max(var(--font-min), min(var(--sizer, 3vw), var(--font-max)));
  font-size: clamp(var(--font-min), var(--sizer, 3vw), var(--font-max));
}

.remove-bottom-margin {
  margin-bottom: 0 !important;
}

.remove-top-margin {
  margin-top: 0 !important;
}

.bottom-margin-1em {
  margin-bottom: 1em !important;
}

.top-margin-1em {
  margin-top: 1em !important;
}

.enable-heading-lines h1,
.enable-heading-lines .h1,
.enable-heading-lines .woocommerce-thankyou-order-received,
h1.underlined,
.h1.underlined,
.underlined.woocommerce-thankyou-order-received {
  position: relative;
  margin-bottom: 1em;
}
@media screen and (max-width: 768px) {
  .enable-heading-lines h1,
  .enable-heading-lines .h1,
  .enable-heading-lines .woocommerce-thankyou-order-received,
  h1.underlined,
  .h1.underlined,
  .underlined.woocommerce-thankyou-order-received {
    margin-bottom: 3.5rem;
  }
}
.enable-heading-lines h1::after,
.enable-heading-lines .h1::after,
.enable-heading-lines .woocommerce-thankyou-order-received::after,
h1.underlined::after,
.h1.underlined::after,
.underlined.woocommerce-thankyou-order-received::after {
  display: block !important;
  position: absolute;
  top: 100%;
  margin-top: 0.4em;
  content: "";
  width: 233px;
  max-width: 40%;
  height: 5px;
  background-color: var(--primary-color);
  border-radius: 3px;
}
.text-center .enable-heading-lines h1::after, .enable-heading-lines h1[style*=center]::after,
.text-center .enable-heading-lines .h1::after,
.text-center .enable-heading-lines .woocommerce-thankyou-order-received::after,
.enable-heading-lines .h1[style*=center]::after,
.enable-heading-lines [style*=center].woocommerce-thankyou-order-received::after,
.text-center h1.underlined::after,
h1.underlined[style*=center]::after,
.text-center .h1.underlined::after,
.text-center .underlined.woocommerce-thankyou-order-received::after,
.h1.underlined[style*=center]::after,
.underlined[style*=center].woocommerce-thankyou-order-received::after {
  left: 50%;
  transform: translateX(-50%);
}

ol.check-list,
ul.check-list {
  list-style: none;
  padding-left: 0;
}
ol.check-list li,
ul.check-list li {
  position: relative;
  padding-top: 0px;
  padding-bottom: 0px;
  padding-left: 1.7em;
}
ol.check-list li::before,
ul.check-list li::before {
  content: "\f00c";
  position: absolute;
  left: 0.1em;
  font-family: "Font Awesome 6 Pro";
  font-weight: 900;
  font-style: normal;
  width: 1.2em;
  font-size: 1em;
  display: block;
  text-align: center;
}
ol.check-list li.crossed::before,
ul.check-list li.crossed::before {
  content: "\f00d";
  font-family: "Font Awesome 6 Pro";
  font-weight: 900;
  font-size: 1.1em;
}
ol.check-list ul,
ul.check-list ul {
  list-style: none;
  padding-left: 0;
}
ol.check-list ul li::before,
ul.check-list ul li::before {
  content: "-";
}

ol.link-list,
ul.link-list {
  list-style: none;
  padding-left: 0;
  margin: 1em 0;
}
ol.link-list li,
ul.link-list li {
  margin: 4px 0;
}
ol.link-list li a,
ul.link-list li a {
  font-weight: 600;
  color: var(--default-link-color);
  text-underline-offset: 0.15em;
  text-decoration: underline;
  text-decoration-color: var(--default-link-underline-color);
}
.background--primary-color ol.link-list li a,
.background--primary-color ul.link-list li a {
  color: var(--white-color);
}
.background--secondary-color ol.link-list li a,
.background--secondary-color ul.link-list li a {
  color: var(--white-color);
  text-decoration-color: var(--primary-color);
}

ul.arrow-bullets {
  list-style-type: none;
  margin-left: 0;
  padding-left: 0.4em;
}
ul.arrow-bullets li {
  font-weight: 500;
}
ul.arrow-bullets li:not(:last-of-type) {
  margin-bottom: 0.3em;
}
ul.arrow-bullets li::before {
  display: inline-block;
  content: "\f178";
  font-family: "Font Awesome 6 Pro";
  font-weight: 400;
  font-style: normal;
  padding-right: 0.4em;
  margin-left: 0em;
  color: var(--default-text-color);
}

ul.nobullet-list, ul.horizontal-list {
  list-style-type: none;
  padding-left: 0;
  padding-right: 0;
}

ul.horizontal-list {
  display: flex;
  gap: 1em;
  row-gap: 0.5em;
  flex-wrap: wrap;
  align-items: center;
}

ul.horizontal-list img {
  margin-bottom: -0.2em;
}

ul.center-list {
  margin-left: auto;
  margin-right: auto;
  justify-content: center;
}

.format-lists--horizontal ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.format-lists--horizontal ul li {
  margin: 0 0.2em;
  padding: 0;
  display: inline-block;
}
.format-lists--horizontal ul li:first-child {
  margin-left: 0;
}
.format-lists--horizontal ul li:last-child {
  margin-right: 0;
}

.format-lists--vertical ul {
  margin: 1em 0;
  padding: 0;
  list-style: none;
}
.format-lists--vertical ul:first-child {
  margin-top: 0;
}
.format-lists--vertical ul li {
  margin: 0.2em 0;
  padding: 0;
}
.format-lists--vertical ul li :is(a, span)[class*=fa-]:not(.icon--after) {
  padding-left: 1.5em;
}
.format-lists--vertical ul li :is(a, span)[class*=fa-]:before {
  margin-left: -1.5em;
}

/* --------------------------
 *
 * Focus/highlight
 *
** ----------------------- */
*:focus {
  outline-color: var(--focus-outline-color);
}

::selection {
  background: var(--text-highlight-bg-color);
  color: var(--text-highlight-color);
}

/* --------------------------
*
* Here we setup the fontawesome icon pack
* Made with fontawesome subsetter
*
* ask Matu for project
*
** ----------------------- */
/*!
 * Font Awesome Pro 6.6.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license (Commercial License)
 * Copyright 2024 Fonticons, Inc.
 */
.fa {
  font-family: var(--fa-style-family, "Font Awesome 6 Pro");
  font-weight: var(--fa-style, 900);
}

.fa-solid,
.fa-regular,
.fa-brands,
.fas,
.far,
.fab,
.fal,
.fat,
.fad,
.fass,
.fasr,
.fasl,
.fast,
.fasds,
.fa-light,
.fa-thin,
.fa-duotone,
.fa-sharp,
.fa-sharp-duotone,
.fa-sharp-solid,
.fa-classic,
.fa {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: var(--fa-display, inline-block);
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
}

.fas,
.far,
.fal,
.fat,
.fa-solid,
.fa-regular,
.fa-light,
.fa-thin,
.fa-classic {
  font-family: "Font Awesome 6 Pro";
}

.fab,
.fa-brands {
  font-family: "Font Awesome 6 Brands";
}

.fad,
.fa-classic.fa-duotone,
.fa-duotone {
  font-family: "Font Awesome 6 Duotone";
}

.fasds,
.fa-sharp-duotone {
  font-family: "Font Awesome 6 Sharp Duotone";
}

.fasds,
.fa-sharp-duotone {
  font-weight: 900;
}

.fass,
.fasr,
.fasl,
.fast,
.fa-sharp {
  font-family: "Font Awesome 6 Sharp";
}

.fass,
.fa-sharp {
  font-weight: 900;
}

.fa-1x {
  font-size: 1em;
}

.fa-2x {
  font-size: 2em;
}

.fa-3x {
  font-size: 3em;
}

.fa-4x {
  font-size: 4em;
}

.fa-5x {
  font-size: 5em;
}

.fa-6x {
  font-size: 6em;
}

.fa-7x {
  font-size: 7em;
}

.fa-8x {
  font-size: 8em;
}

.fa-9x {
  font-size: 9em;
}

.fa-10x {
  font-size: 10em;
}

.fa-2xs {
  font-size: 0.625em;
  line-height: 0.1em;
  vertical-align: 0.225em;
}

.fa-xs {
  font-size: 0.75em;
  line-height: 0.0833333337em;
  vertical-align: 0.125em;
}

.fa-sm {
  font-size: 0.875em;
  line-height: 0.0714285718em;
  vertical-align: 0.0535714295em;
}

.fa-lg {
  font-size: 1.25em;
  line-height: 0.05em;
  vertical-align: -0.075em;
}

.fa-xl {
  font-size: 1.5em;
  line-height: 0.0416666682em;
  vertical-align: -0.125em;
}

.fa-2xl {
  font-size: 2em;
  line-height: 0.03125em;
  vertical-align: -0.1875em;
}

.fa-fw {
  text-align: center;
  width: 1.25em;
}

.fa-ul {
  list-style-type: none;
  margin-left: var(--fa-li-margin, 2.5em);
  padding-left: 0;
}
.fa-ul > li {
  position: relative;
}

.fa-li {
  left: calc(-1 * var(--fa-li-width, 2em));
  position: absolute;
  text-align: center;
  width: var(--fa-li-width, 2em);
  line-height: inherit;
}

.fa-border {
  border-color: var(--fa-border-color, #eee);
  border-radius: var(--fa-border-radius, 0.1em);
  border-style: var(--fa-border-style, solid);
  border-width: var(--fa-border-width, 0.08em);
  padding: var(--fa-border-padding, 0.2em 0.25em 0.15em);
}

.fa-pull-left {
  float: left;
  margin-right: var(--fa-pull-margin, 0.3em);
}

.fa-pull-right {
  float: right;
  margin-left: var(--fa-pull-margin, 0.3em);
}

.fa-beat {
  animation-name: fa-beat;
  animation-delay: var(--fa-animation-delay, 0s);
  animation-direction: var(--fa-animation-direction, normal);
  animation-duration: var(--fa-animation-duration, 1s);
  animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  animation-timing-function: var(--fa-animation-timing, ease-in-out);
}

.fa-bounce {
  animation-name: fa-bounce;
  animation-delay: var(--fa-animation-delay, 0s);
  animation-direction: var(--fa-animation-direction, normal);
  animation-duration: var(--fa-animation-duration, 1s);
  animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.28, 0.84, 0.42, 1));
}

.fa-fade {
  animation-name: fa-fade;
  animation-delay: var(--fa-animation-delay, 0s);
  animation-direction: var(--fa-animation-direction, normal);
  animation-duration: var(--fa-animation-duration, 1s);
  animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}

.fa-beat-fade {
  animation-name: fa-beat-fade;
  animation-delay: var(--fa-animation-delay, 0s);
  animation-direction: var(--fa-animation-direction, normal);
  animation-duration: var(--fa-animation-duration, 1s);
  animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  animation-timing-function: var(--fa-animation-timing, cubic-bezier(0.4, 0, 0.6, 1));
}

.fa-flip {
  animation-name: fa-flip;
  animation-delay: var(--fa-animation-delay, 0s);
  animation-direction: var(--fa-animation-direction, normal);
  animation-duration: var(--fa-animation-duration, 1s);
  animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  animation-timing-function: var(--fa-animation-timing, ease-in-out);
}

.fa-shake {
  animation-name: fa-shake;
  animation-delay: var(--fa-animation-delay, 0s);
  animation-direction: var(--fa-animation-direction, normal);
  animation-duration: var(--fa-animation-duration, 1s);
  animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  animation-timing-function: var(--fa-animation-timing, linear);
}

.fa-spin {
  animation-name: fa-spin;
  animation-delay: var(--fa-animation-delay, 0s);
  animation-direction: var(--fa-animation-direction, normal);
  animation-duration: var(--fa-animation-duration, 2s);
  animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  animation-timing-function: var(--fa-animation-timing, linear);
}

.fa-spin-reverse {
  --fa-animation-direction: reverse;
}

.fa-pulse,
.fa-spin-pulse {
  animation-name: fa-spin;
  animation-direction: var(--fa-animation-direction, normal);
  animation-duration: var(--fa-animation-duration, 1s);
  animation-iteration-count: var(--fa-animation-iteration-count, infinite);
  animation-timing-function: var(--fa-animation-timing, steps(8));
}

@media (prefers-reduced-motion: reduce) {
  .fa-beat,
  .fa-bounce,
  .fa-fade,
  .fa-beat-fade,
  .fa-flip,
  .fa-pulse,
  .fa-shake,
  .fa-spin,
  .fa-spin-pulse {
    animation-delay: -1ms;
    animation-duration: 1ms;
    animation-iteration-count: 1;
    transition-delay: 0s;
    transition-duration: 0s;
  }
}
@keyframes fa-beat {
  0%, 90% {
    transform: scale(1);
  }
  45% {
    transform: scale(var(--fa-beat-scale, 1.25));
  }
}
@keyframes fa-bounce {
  0% {
    transform: scale(1, 1) translateY(0);
  }
  10% {
    transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0);
  }
  30% {
    transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em));
  }
  50% {
    transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0);
  }
  57% {
    transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em));
  }
  64% {
    transform: scale(1, 1) translateY(0);
  }
  100% {
    transform: scale(1, 1) translateY(0);
  }
}
@keyframes fa-fade {
  50% {
    opacity: var(--fa-fade-opacity, 0.4);
  }
}
@keyframes fa-beat-fade {
  0%, 100% {
    opacity: var(--fa-beat-fade-opacity, 0.4);
    transform: scale(1);
  }
  50% {
    opacity: 1;
    transform: scale(var(--fa-beat-fade-scale, 1.125));
  }
}
@keyframes fa-flip {
  50% {
    transform: rotate3d(var(--fa-flip-x, 0), var(--fa-flip-y, 1), var(--fa-flip-z, 0), var(--fa-flip-angle, -180deg));
  }
}
@keyframes fa-shake {
  0% {
    transform: rotate(-15deg);
  }
  4% {
    transform: rotate(15deg);
  }
  8%, 24% {
    transform: rotate(-18deg);
  }
  12%, 28% {
    transform: rotate(18deg);
  }
  16% {
    transform: rotate(-22deg);
  }
  20% {
    transform: rotate(22deg);
  }
  32% {
    transform: rotate(-12deg);
  }
  36% {
    transform: rotate(12deg);
  }
  40%, 100% {
    transform: rotate(0deg);
  }
}
@keyframes fa-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.fa-rotate-90 {
  transform: rotate(90deg);
}

.fa-rotate-180 {
  transform: rotate(180deg);
}

.fa-rotate-270 {
  transform: rotate(270deg);
}

.fa-flip-horizontal {
  transform: scale(-1, 1);
}

.fa-flip-vertical {
  transform: scale(1, -1);
}

.fa-flip-both,
.fa-flip-horizontal.fa-flip-vertical {
  transform: scale(-1, -1);
}

.fa-rotate-by {
  transform: rotate(var(--fa-rotate-angle, 0));
}

.fa-stack {
  display: inline-block;
  height: 2em;
  line-height: 2em;
  position: relative;
  vertical-align: middle;
  width: 2.5em;
}

.fa-stack-1x,
.fa-stack-2x {
  left: 0;
  position: absolute;
  text-align: center;
  width: 100%;
  z-index: var(--fa-stack-z-index, auto);
}

.fa-stack-1x {
  line-height: inherit;
}

.fa-stack-2x {
  font-size: 2em;
}

.fa-inverse {
  color: var(--fa-inverse, #fff);
}

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */
.fa-address-book::before {
  content: "\f2b9";
}

.fa-contact-book::before {
  content: "\f2b9";
}

.fa-address-card::before {
  content: "\f2bb";
}

.fa-contact-card::before {
  content: "\f2bb";
}

.fa-vcard::before {
  content: "\f2bb";
}

.fa-angle-down::before {
  content: "\f107";
}

.fa-angle-left::before {
  content: "\f104";
}

.fa-angle-right::before {
  content: "\f105";
}

.fa-angle-up::before {
  content: "\f106";
}

.fa-angles-down::before {
  content: "\f103";
}

.fa-angle-double-down::before {
  content: "\f103";
}

.fa-angles-left::before {
  content: "\f100";
}

.fa-angle-double-left::before {
  content: "\f100";
}

.fa-angles-right::before {
  content: "\f101";
}

.fa-angle-double-right::before {
  content: "\f101";
}

.fa-angles-up::before {
  content: "\f102";
}

.fa-angle-double-up::before {
  content: "\f102";
}

.fa-apartment::before {
  content: "\e468";
}

.fa-arrow-down::before {
  content: "\f063";
}

.fa-arrow-down-long::before {
  content: "\f175";
}

.fa-long-arrow-down::before {
  content: "\f175";
}

.fa-arrow-left::before {
  content: "\f060";
}

.fa-arrow-left-long::before {
  content: "\f177";
}

.fa-long-arrow-left::before {
  content: "\f177";
}

.fa-arrow-right::before {
  content: "\f061";
}

.fa-arrow-right-from-bracket::before {
  content: "\f08b";
}

.fa-sign-out::before {
  content: "\f08b";
}

.fa-arrow-right-long::before {
  content: "\f178";
}

.fa-long-arrow-right::before {
  content: "\f178";
}

.fa-arrow-right-to-bracket::before {
  content: "\f090";
}

.fa-sign-in::before {
  content: "\f090";
}

.fa-arrow-rotate-left::before {
  content: "\f0e2";
}

.fa-arrow-left-rotate::before {
  content: "\f0e2";
}

.fa-arrow-rotate-back::before {
  content: "\f0e2";
}

.fa-arrow-rotate-backward::before {
  content: "\f0e2";
}

.fa-undo::before {
  content: "\f0e2";
}

.fa-arrow-up::before {
  content: "\f062";
}

.fa-arrow-up-from-line::before {
  content: "\f342";
}

.fa-arrow-from-bottom::before {
  content: "\f342";
}

.fa-arrow-up-long::before {
  content: "\f176";
}

.fa-long-arrow-up::before {
  content: "\f176";
}

.fa-arrow-up-right-from-square::before {
  content: "\f08e";
}

.fa-external-link::before {
  content: "\f08e";
}

.fa-arrow-up-to-line::before {
  content: "\f341";
}

.fa-arrow-to-top::before {
  content: "\f341";
}

.fa-bag-shopping::before {
  content: "\f290";
}

.fa-shopping-bag::before {
  content: "\f290";
}

.fa-bags-shopping::before {
  content: "\f847";
}

.fa-bars::before {
  content: "\f0c9";
}

.fa-navicon::before {
  content: "\f0c9";
}

.fa-basket-shopping::before {
  content: "\f291";
}

.fa-shopping-basket::before {
  content: "\f291";
}

.fa-building::before {
  content: "\f1ad";
}

.fa-bullseye::before {
  content: "\f140";
}

.fa-calculator::before {
  content: "\f1ec";
}

.fa-calendar-check::before {
  content: "\f274";
}

.fa-calendar-days::before {
  content: "\f073";
}

.fa-calendar-alt::before {
  content: "\f073";
}

.fa-car::before {
  content: "\f1b9";
}

.fa-automobile::before {
  content: "\f1b9";
}

.fa-car-mirrors::before {
  content: "\e343";
}

.fa-car-side::before {
  content: "\f5e4";
}

.fa-car-wrench::before {
  content: "\f5e3";
}

.fa-car-mechanic::before {
  content: "\f5e3";
}

.fa-cart-plus::before {
  content: "\f217";
}

.fa-cart-shopping::before {
  content: "\f07a";
}

.fa-shopping-cart::before {
  content: "\f07a";
}

.fa-chart-column::before {
  content: "\e0e3";
}

.fa-check::before {
  content: "\f00c";
}

.fa-chevron-down::before {
  content: "\f078";
}

.fa-chevron-left::before {
  content: "\f053";
}

.fa-chevron-right::before {
  content: "\f054";
}

.fa-chevron-up::before {
  content: "\f077";
}

.fa-chevrons-down::before {
  content: "\f322";
}

.fa-chevron-double-down::before {
  content: "\f322";
}

.fa-chevrons-left::before {
  content: "\f323";
}

.fa-chevron-double-left::before {
  content: "\f323";
}

.fa-chevrons-right::before {
  content: "\f324";
}

.fa-chevron-double-right::before {
  content: "\f324";
}

.fa-chevrons-up::before {
  content: "\f325";
}

.fa-chevron-double-up::before {
  content: "\f325";
}

.fa-circle-check::before {
  content: "\f058";
}

.fa-check-circle::before {
  content: "\f058";
}

.fa-circle-chevron-down::before {
  content: "\f13a";
}

.fa-chevron-circle-down::before {
  content: "\f13a";
}

.fa-circle-chevron-left::before {
  content: "\f137";
}

.fa-chevron-circle-left::before {
  content: "\f137";
}

.fa-circle-chevron-right::before {
  content: "\f138";
}

.fa-chevron-circle-right::before {
  content: "\f138";
}

.fa-circle-chevron-up::before {
  content: "\f139";
}

.fa-chevron-circle-up::before {
  content: "\f139";
}

.fa-circle-ellipsis::before {
  content: "\e10a";
}

.fa-circle-envelope::before {
  content: "\e10c";
}

.fa-envelope-circle::before {
  content: "\e10c";
}

.fa-circle-euro::before {
  content: "\e5ce";
}

.fa-circle-exclamation::before {
  content: "\f06a";
}

.fa-exclamation-circle::before {
  content: "\f06a";
}

.fa-circle-minus::before {
  content: "\f056";
}

.fa-minus-circle::before {
  content: "\f056";
}

.fa-circle-phone::before {
  content: "\e11b";
}

.fa-phone-circle::before {
  content: "\e11b";
}

.fa-circle-plus::before {
  content: "\f055";
}

.fa-plus-circle::before {
  content: "\f055";
}

.fa-circle-user::before {
  content: "\f2bd";
}

.fa-user-circle::before {
  content: "\f2bd";
}

.fa-circle-xmark::before {
  content: "\f057";
}

.fa-times-circle::before {
  content: "\f057";
}

.fa-xmark-circle::before {
  content: "\f057";
}

.fa-clock::before {
  content: "\f017";
}

.fa-clock-four::before {
  content: "\f017";
}

.fa-clock-two::before {
  content: "\e35a";
}

.fa-cloud::before {
  content: "\f0c2";
}

.fa-cloud-check::before {
  content: "\e35c";
}

.fa-coins::before {
  content: "\f51e";
}

.fa-comment::before {
  content: "\f075";
}

.fa-comments::before {
  content: "\f086";
}

.fa-credit-card::before {
  content: "\f09d";
}

.fa-credit-card-alt::before {
  content: "\f09d";
}

.fa-credit-card-front::before {
  content: "\f38a";
}

.fa-crown::before {
  content: "\f521";
}

.fa-desktop::before {
  content: "\f390";
}

.fa-desktop-alt::before {
  content: "\f390";
}

.fa-display-code::before {
  content: "\e165";
}

.fa-desktop-code::before {
  content: "\e165";
}

.fa-down-long::before {
  content: "\f309";
}

.fa-long-arrow-alt-down::before {
  content: "\f309";
}

.fa-download::before {
  content: "\f019";
}

.fa-earth-americas::before {
  content: "\f57d";
}

.fa-earth::before {
  content: "\f57d";
}

.fa-earth-america::before {
  content: "\f57d";
}

.fa-globe-americas::before {
  content: "\f57d";
}

.fa-earth-europe::before {
  content: "\f7a2";
}

.fa-globe-europe::before {
  content: "\f7a2";
}

.fa-engine::before {
  content: "\e16e";
}

.fa-envelope::before {
  content: "\f0e0";
}

.fa-envelope-open::before {
  content: "\f2b6";
}

.fa-envelopes-bulk::before {
  content: "\f674";
}

.fa-mail-bulk::before {
  content: "\f674";
}

.fa-file::before {
  content: "\f15b";
}

.fa-file-image::before {
  content: "\f1c5";
}

.fa-file-lines::before {
  content: "\f15c";
}

.fa-file-alt::before {
  content: "\f15c";
}

.fa-file-text::before {
  content: "\f15c";
}

.fa-file-pdf::before {
  content: "\f1c1";
}

.fa-file-png::before {
  content: "\e666";
}

.fa-file-ppt::before {
  content: "\e64a";
}

.fa-file-svg::before {
  content: "\e64b";
}

.fa-file-vector::before {
  content: "\e64c";
}

.fa-file-video::before {
  content: "\f1c8";
}

.fa-file-zip::before {
  content: "\e5ee";
}

.fa-files::before {
  content: "\e178";
}

.fa-flag-swallowtail::before {
  content: "\f74c";
}

.fa-flag-alt::before {
  content: "\f74c";
}

.fa-folder::before {
  content: "\f07b";
}

.fa-folder-blank::before {
  content: "\f07b";
}

.fa-folder-open::before {
  content: "\f07c";
}

.fa-folders::before {
  content: "\f660";
}

.fa-fork-knife::before {
  content: "\f2e6";
}

.fa-utensils-alt::before {
  content: "\f2e6";
}

.fa-gas-pump::before {
  content: "\f52f";
}

.fa-gauge::before {
  content: "\f624";
}

.fa-dashboard::before {
  content: "\f624";
}

.fa-gauge-med::before {
  content: "\f624";
}

.fa-tachometer-alt-average::before {
  content: "\f624";
}

.fa-gauge-max::before {
  content: "\f626";
}

.fa-tachometer-alt-fastest::before {
  content: "\f626";
}

.fa-gear::before {
  content: "\f013";
}

.fa-cog::before {
  content: "\f013";
}

.fa-globe::before {
  content: "\f0ac";
}

.fa-grid::before {
  content: "\e195";
}

.fa-grid-3::before {
  content: "\e195";
}

.fa-grid-2::before {
  content: "\e196";
}

.fa-grid-4::before {
  content: "\e198";
}

.fa-grip::before {
  content: "\f58d";
}

.fa-grip-horizontal::before {
  content: "\f58d";
}

.fa-grip-vertical::before {
  content: "\f58e";
}

.fa-h1::before {
  content: "\f313";
}

.fa-h2::before {
  content: "\f314";
}

.fa-h3::before {
  content: "\f315";
}

.fa-h4::before {
  content: "\f86a";
}

.fa-h5::before {
  content: "\e412";
}

.fa-h6::before {
  content: "\e413";
}

.fa-hand-back-point-up::before {
  content: "\e1a2";
}

.fa-heart::before {
  content: "\f004";
}

.fa-house::before {
  content: "\f015";
}

.fa-home::before {
  content: "\f015";
}

.fa-home-alt::before {
  content: "\f015";
}

.fa-home-lg-alt::before {
  content: "\f015";
}

.fa-house-building::before {
  content: "\e1b1";
}

.fa-house-chimney::before {
  content: "\e3af";
}

.fa-home-lg::before {
  content: "\e3af";
}

.fa-id-badge::before {
  content: "\f2c1";
}

.fa-image::before {
  content: "\f03e";
}

.fa-image-landscape::before {
  content: "\e1b5";
}

.fa-landscape::before {
  content: "\e1b5";
}

.fa-image-user::before {
  content: "\e1b8";
}

.fa-inbox-full::before {
  content: "\e1ba";
}

.fa-industry::before {
  content: "\f275";
}

.fa-industry-windows::before {
  content: "\f3b3";
}

.fa-industry-alt::before {
  content: "\f3b3";
}

.fa-language::before {
  content: "\f1ab";
}

.fa-layer-group::before {
  content: "\f5fd";
}

.fa-left-long::before {
  content: "\f30a";
}

.fa-long-arrow-alt-left::before {
  content: "\f30a";
}

.fa-lightbulb::before {
  content: "\f0eb";
}

.fa-link::before {
  content: "\f0c1";
}

.fa-chain::before {
  content: "\f0c1";
}

.fa-link-simple::before {
  content: "\e1cd";
}

.fa-list::before {
  content: "\f03a";
}

.fa-list-squares::before {
  content: "\f03a";
}

.fa-list-ul::before {
  content: "\f0ca";
}

.fa-list-dots::before {
  content: "\f0ca";
}

.fa-location-arrow::before {
  content: "\f124";
}

.fa-location-check::before {
  content: "\f606";
}

.fa-map-marker-check::before {
  content: "\f606";
}

.fa-location-crosshairs::before {
  content: "\f601";
}

.fa-location::before {
  content: "\f601";
}

.fa-location-dot::before {
  content: "\f3c5";
}

.fa-map-marker-alt::before {
  content: "\f3c5";
}

.fa-location-pin::before {
  content: "\f041";
}

.fa-map-marker::before {
  content: "\f041";
}

.fa-lock::before {
  content: "\f023";
}

.fa-lock-keyhole::before {
  content: "\f30d";
}

.fa-lock-alt::before {
  content: "\f30d";
}

.fa-magnifying-glass::before {
  content: "\f002";
}

.fa-search::before {
  content: "\f002";
}

.fa-magnifying-glass-minus::before {
  content: "\f010";
}

.fa-search-minus::before {
  content: "\f010";
}

.fa-magnifying-glass-plus::before {
  content: "\f00e";
}

.fa-search-plus::before {
  content: "\f00e";
}

.fa-map::before {
  content: "\f279";
}

.fa-memo::before {
  content: "\e1d8";
}

.fa-message::before {
  content: "\f27a";
}

.fa-comment-alt::before {
  content: "\f27a";
}

.fa-message-heart::before {
  content: "\e5c9";
}

.fa-message-lines::before {
  content: "\f4a6";
}

.fa-comment-alt-lines::before {
  content: "\f4a6";
}

.fa-message-plus::before {
  content: "\f4a8";
}

.fa-comment-alt-plus::before {
  content: "\f4a8";
}

.fa-message-question::before {
  content: "\e1e3";
}

.fa-messages-question::before {
  content: "\e1e7";
}

.fa-minus::before {
  content: "\f068";
}

.fa-subtract::before {
  content: "\f068";
}

.fa-mobile-screen::before {
  content: "\f3cf";
}

.fa-mobile-android-alt::before {
  content: "\f3cf";
}

.fa-mobile-screen-button::before {
  content: "\f3cd";
}

.fa-mobile-alt::before {
  content: "\f3cd";
}

.fa-newspaper::before {
  content: "\f1ea";
}

.fa-paperclip::before {
  content: "\f0c6";
}

.fa-pen::before {
  content: "\f304";
}

.fa-pen-to-square::before {
  content: "\f044";
}

.fa-edit::before {
  content: "\f044";
}

.fa-person-simple::before {
  content: "\e220";
}

.fa-phone::before {
  content: "\f095";
}

.fa-phone-flip::before {
  content: "\f879";
}

.fa-phone-alt::before {
  content: "\f879";
}

.fa-phone-volume::before {
  content: "\f2a0";
}

.fa-volume-control-phone::before {
  content: "\f2a0";
}

.fa-plus::before {
  content: "\+";
}

.fa-add::before {
  content: "\+";
}

.fa-plus-large::before {
  content: "\e59e";
}

.fa-receipt::before {
  content: "\f543";
}

.fa-right-from-bracket::before {
  content: "\f2f5";
}

.fa-sign-out-alt::before {
  content: "\f2f5";
}

.fa-right-long::before {
  content: "\f30b";
}

.fa-long-arrow-alt-right::before {
  content: "\f30b";
}

.fa-right-to-bracket::before {
  content: "\f2f6";
}

.fa-sign-in-alt::before {
  content: "\f2f6";
}

.fa-route::before {
  content: "\f4d7";
}

.fa-rss::before {
  content: "\f09e";
}

.fa-feed::before {
  content: "\f09e";
}

.fa-sheet-plastic::before {
  content: "\e571";
}

.fa-shield-check::before {
  content: "\f2f7";
}

.fa-sparkles::before {
  content: "\f890";
}

.fa-splotch::before {
  content: "\f5bc";
}

.fa-square-arrow-up-right::before {
  content: "\f14c";
}

.fa-external-link-square::before {
  content: "\f14c";
}

.fa-square-check::before {
  content: "\f14a";
}

.fa-check-square::before {
  content: "\f14a";
}

.fa-square-chevron-down::before {
  content: "\f329";
}

.fa-chevron-square-down::before {
  content: "\f329";
}

.fa-square-chevron-left::before {
  content: "\f32a";
}

.fa-chevron-square-left::before {
  content: "\f32a";
}

.fa-square-chevron-right::before {
  content: "\f32b";
}

.fa-chevron-square-right::before {
  content: "\f32b";
}

.fa-square-chevron-up::before {
  content: "\f32c";
}

.fa-chevron-square-up::before {
  content: "\f32c";
}

.fa-square-info::before {
  content: "\f30f";
}

.fa-info-square::before {
  content: "\f30f";
}

.fa-square-phone::before {
  content: "\f098";
}

.fa-phone-square::before {
  content: "\f098";
}

.fa-square-poll-horizontal::before {
  content: "\f682";
}

.fa-poll-h::before {
  content: "\f682";
}

.fa-square-poll-vertical::before {
  content: "\f681";
}

.fa-poll::before {
  content: "\f681";
}

.fa-square-question::before {
  content: "\f2fd";
}

.fa-question-square::before {
  content: "\f2fd";
}

.fa-square-rss::before {
  content: "\f143";
}

.fa-rss-square::before {
  content: "\f143";
}

.fa-square-star::before {
  content: "\e27f";
}

.fa-square-up::before {
  content: "\f353";
}

.fa-arrow-alt-square-up::before {
  content: "\f353";
}

.fa-square-up-right::before {
  content: "\f360";
}

.fa-external-link-square-alt::before {
  content: "\f360";
}

.fa-square-xmark::before {
  content: "\f2d3";
}

.fa-times-square::before {
  content: "\f2d3";
}

.fa-xmark-square::before {
  content: "\f2d3";
}

.fa-star::before {
  content: "\f005";
}

.fa-star-half-stroke::before {
  content: "\f5c0";
}

.fa-star-half-alt::before {
  content: "\f5c0";
}

.fa-star-sharp::before {
  content: "\e28b";
}

.fa-stars::before {
  content: "\f762";
}

.fa-steering-wheel::before {
  content: "\f622";
}

.fa-street-view::before {
  content: "\f21d";
}

.fa-tag::before {
  content: "\f02b";
}

.fa-tags::before {
  content: "\f02c";
}

.fa-ticket-simple::before {
  content: "\f3ff";
}

.fa-ticket-alt::before {
  content: "\f3ff";
}

.fa-tire::before {
  content: "\f631";
}

.fa-trailer::before {
  content: "\e041";
}

.fa-triangle-exclamation::before {
  content: "\f071";
}

.fa-exclamation-triangle::before {
  content: "\f071";
}

.fa-warning::before {
  content: "\f071";
}

.fa-universal-access::before {
  content: "\f29a";
}

.fa-unlock::before {
  content: "\f09c";
}

.fa-unlock-keyhole::before {
  content: "\f13e";
}

.fa-unlock-alt::before {
  content: "\f13e";
}

.fa-up-long::before {
  content: "\f30c";
}

.fa-long-arrow-alt-up::before {
  content: "\f30c";
}

.fa-up-right-from-square::before {
  content: "\f35d";
}

.fa-external-link-alt::before {
  content: "\f35d";
}

.fa-user::before {
  content: "\f007";
}

.fa-user-gear::before {
  content: "\f4fe";
}

.fa-user-cog::before {
  content: "\f4fe";
}

.fa-user-hair::before {
  content: "\e45a";
}

.fa-user-large::before {
  content: "\f406";
}

.fa-user-alt::before {
  content: "\f406";
}

.fa-user-vneck::before {
  content: "\e461";
}

.fa-users::before {
  content: "\f0c0";
}

.fa-wave-pulse::before {
  content: "\f5f8";
}

.fa-heart-rate::before {
  content: "\f5f8";
}

.fa-waveform-lines::before {
  content: "\f8f2";
}

.fa-waveform-path::before {
  content: "\f8f2";
}

.fa-xmark::before {
  content: "\f00d";
}

.fa-close::before {
  content: "\f00d";
}

.fa-multiply::before {
  content: "\f00d";
}

.fa-remove::before {
  content: "\f00d";
}

.fa-times::before {
  content: "\f00d";
}

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

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

/*!
 * Font Awesome Pro 6.6.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license (Commercial License)
 * Copyright 2024 Fonticons, Inc.
 */
:root, :host {
  --fa-style-family-classic: "Font Awesome 6 Pro";
  --fa-font-solid: normal 900 1em/1 "Font Awesome 6 Pro";
}

@font-face {
  font-family: "Font Awesome 6 Pro";
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url("../fontawesome/webfonts/fa-solid-900.woff2") format("woff2"), url("../fontawesome/webfonts/fa-solid-900.ttf") format("truetype");
}
.fas,
.fa-solid {
  font-weight: 900;
}

/*!
 * Font Awesome Pro 6.6.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license (Commercial License)
 * Copyright 2024 Fonticons, Inc.
 */
:root, :host {
  --fa-style-family-classic: "Font Awesome 6 Pro";
  --fa-font-regular: normal 400 1em/1 "Font Awesome 6 Pro";
}

@font-face {
  font-family: "Font Awesome 6 Pro";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../fontawesome/webfonts/fa-regular-400.woff2") format("woff2"), url("../fontawesome/webfonts/fa-regular-400.ttf") format("truetype");
}
.far,
.fa-regular {
  font-weight: 400;
}

/*!
 * Font Awesome Pro 6.6.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license (Commercial License)
 * Copyright 2024 Fonticons, Inc.
 */
:root, :host {
  --fa-style-family-classic: "Font Awesome 6 Pro";
  --fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";
}

@font-face {
  font-family: "Font Awesome 6 Pro";
  font-style: normal;
  font-weight: 300;
  font-display: block;
  src: url("../fontawesome/webfonts/fa-light-300.woff2") format("woff2"), url("../fontawesome/webfonts/fa-light-300.ttf") format("truetype");
}
.fal,
.fa-light {
  font-weight: 300;
}

/*!
 * Font Awesome Pro 6.6.0 by @fontawesome - https://fontawesome.com
 * License - https://fontawesome.com/license (Commercial License)
 * Copyright 2024 Fonticons, Inc.
 */
:root, :host {
  --fa-style-family-brands: "Font Awesome 6 Brands";
  --fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";
}

@font-face {
  font-family: "Font Awesome 6 Brands";
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../fontawesome/webfonts/fa-brands-400.woff2") format("woff2"), url("../fontawesome/webfonts/fa-brands-400.ttf") format("truetype");
}
.fab,
.fa-brands {
  font-weight: 400;
}

.fa-amazon:before {
  content: "\f270";
}

.fa-android:before {
  content: "\f17b";
}

.fa-apple:before {
  content: "\f179";
}

.fa-apple-pay:before {
  content: "\f415";
}

.fa-atlassian:before {
  content: "\f77b";
}

.fa-codepen:before {
  content: "\f1cb";
}

.fa-discord:before {
  content: "\f392";
}

.fa-dropbox:before {
  content: "\f16b";
}

.fa-facebook:before {
  content: "\f09a";
}

.fa-facebook-f:before {
  content: "\f39e";
}

.fa-facebook-messenger:before {
  content: "\f39f";
}

.fa-google:before {
  content: "\f1a0";
}

.fa-google-drive:before {
  content: "\f3aa";
}

.fa-google-pay:before {
  content: "\e079";
}

.fa-google-play:before {
  content: "\f3ab";
}

.fa-instagram:before {
  content: "\f16d";
}

.fa-java:before {
  content: "\f4e4";
}

.fa-linkedin:before {
  content: "\f08c";
}

.fa-linkedin-in:before {
  content: "\f0e1";
}

.fa-linux:before {
  content: "\f17c";
}

.fa-mailchimp:before {
  content: "\f59e";
}

.fa-mastodon:before {
  content: "\f4f6";
}

.fa-meta:before {
  content: "\e49b";
}

.fa-microsoft:before {
  content: "\f3ca";
}

.fa-paypal:before {
  content: "\f1ed";
}

.fa-pinterest:before {
  content: "\f0d2";
}

.fa-pinterest-p:before {
  content: "\f231";
}

.fa-playstation:before {
  content: "\f3df";
}

.fa-react:before {
  content: "\f41b";
}

.fa-readme:before {
  content: "\f4d5";
}

.fa-skype:before {
  content: "\f17e";
}

.fa-slack:before {
  content: "\f198";
}

.fa-slack-hash:before {
  content: "\f198";
}

.fa-soundcloud:before {
  content: "\f1be";
}

.fa-spotify:before {
  content: "\f1bc";
}

.fa-square-facebook:before {
  content: "\f082";
}

.fa-facebook-square:before {
  content: "\f082";
}

.fa-square-instagram:before {
  content: "\e055";
}

.fa-instagram-square:before {
  content: "\e055";
}

.fa-square-pinterest:before {
  content: "\f0d3";
}

.fa-pinterest-square:before {
  content: "\f0d3";
}

.fa-square-reddit:before {
  content: "\f1a2";
}

.fa-reddit-square:before {
  content: "\f1a2";
}

.fa-square-steam:before {
  content: "\f1b7";
}

.fa-steam-square:before {
  content: "\f1b7";
}

.fa-square-twitter:before {
  content: "\f081";
}

.fa-twitter-square:before {
  content: "\f081";
}

.fa-square-vimeo:before {
  content: "\f194";
}

.fa-vimeo-square:before {
  content: "\f194";
}

.fa-square-whatsapp:before {
  content: "\f40c";
}

.fa-whatsapp-square:before {
  content: "\f40c";
}

.fa-square-x-twitter:before {
  content: "\e61a";
}

.fa-square-youtube:before {
  content: "\f431";
}

.fa-youtube-square:before {
  content: "\f431";
}

.fa-squarespace:before {
  content: "\f5be";
}

.fa-steam:before {
  content: "\f1b6";
}

.fa-stripe-s:before {
  content: "\f42a";
}

.fa-teamspeak:before {
  content: "\f4f9";
}

.fa-telegram:before {
  content: "\f2c6";
}

.fa-telegram-plane:before {
  content: "\f2c6";
}

.fa-tiktok:before {
  content: "\e07b";
}

.fa-twitch:before {
  content: "\f1e8";
}

.fa-twitter:before {
  content: "\f099";
}

.fa-ubuntu:before {
  content: "\f7df";
}

.fa-unity:before {
  content: "\e049";
}

.fa-ups:before {
  content: "\f7e0";
}

.fa-usb:before {
  content: "\f287";
}

.fa-vimeo:before {
  content: "\f40a";
}

.fa-vimeo-v:before {
  content: "\f27d";
}

.fa-whatsapp:before {
  content: "\f232";
}

.fa-whmcs:before {
  content: "\f40d";
}

.fa-wikipedia-w:before {
  content: "\f266";
}

.fa-windows:before {
  content: "\f17a";
}

.fa-wordpress:before {
  content: "\f19a";
}

.fa-wordpress-simple:before {
  content: "\f411";
}

.fa-x-twitter:before {
  content: "\e61b";
}

.fa-xbox:before {
  content: "\f412";
}

.fa-yelp:before {
  content: "\f1e9";
}

.fa-youtube:before {
  content: "\f167";
}

/* Fix font-family when using icon class with other elements directly, also some adjustments */
.fa, .fas, .far, .fal, .fab {
  font-family: inherit;
  line-height: inherit;
  font-weight: inherit;
}
.fa:before, .fas:before, .far:before, .fal:before, .fab:before {
  display: inline-block;
  text-align: center;
  margin: 0 0.3em;
  line-height: inherit;
  vertical-align: baseline;
}

/* set font only for pseudo */
.fa:before,
.fas:before {
  font-family: "Font Awesome 6 Pro";
  font-weight: 900;
}

.far:before {
  font-family: "Font Awesome 6 Pro";
  font-weight: 400;
}

.fal:before {
  font-family: "Font Awesome 6 Pro";
  font-weight: 300;
}

.fab:before {
  font-family: "Font Awesome 6 Brands";
  font-weight: 400;
}

/* after icons with one extra class */
*[class*=fa-].fa--after:before {
  float: right;
}

/* specific styles */
*[class*=fa-].fa--after:before {
  margin-right: 0;
}

.icon-color--default-text:before,
.icon-color--default-text-color:before {
  color: var(--default-text-color);
}

.icon-color--primary:before,
.icon-color--primary-color:before {
  color: var(--primary-color);
}

.icon-color--secondary:before,
.icon-color--secondary-color:before {
  color: var(--secondary-color);
}

.icon-color--tertiary:before,
.icon-color--tertiary-color:before {
  color: var(--tertiary-color);
}

.icon-color--quaternary:before,
.icon-color--quaternary-color:before {
  color: var(--quaternary-color);
}

.icon-color--white:before,
.icon-color--white-color:before {
  color: var(--white-color);
}

.icon-color--dark:before,
.icon-color--dark-color:before {
  color: var(--dark-color);
}

.icon-color--black:before,
.icon-color--black-color:before {
  color: var(--black-color);
}

.relative {
  position: relative;
}

.text-center {
  text-align: center;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.hide {
  display: none;
}

.cf::after {
  content: "";
  clear: both;
  display: table;
}

.float-left {
  float: left;
}

.float-right {
  float: right;
}

.margin-l-auto {
  margin-left: auto;
}

.margin-r-auto {
  margin-right: auto;
}

.height-100 {
  height: 100%;
}

.wspace-nowrap {
  white-space: nowrap;
}

.wspace-wrap {
  white-space: normal;
}

.clear-both {
  clear: both;
}

.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}

.iframe-16-9 {
  position: relative;
  overflow: hidden;
  padding-top: 56.25%;
}
.iframe-16-9 iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}
.iframe-16-9 .mce-preview-object.mce-object-iframe {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
}

.iframe-no-margin {
  position: relative;
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
}
.iframe-no-margin iframe {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
}
.iframe-no-margin .mce-preview-object.mce-object-iframe {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
}

/* --------------------------
 *
 * MEJS media js video player
 *
** ----------------------- */
.wp-video {
  width: auto !important;
  max-width: 100%;
}

.wp-video > .mejs-container {
  width: auto !important;
  max-width: 100%;
  height: auto !important;
  padding-bottom: calc(56.25% + 40px);
  position: relative;
}

.wp-video > .mejs-container > .mejs-inner {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
}

.wp-video > .mejs-container > .mejs-inner > .mejs-controls {
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
}

/*
╔════════════════════════════════════════╗
║  Image styles selectable from TinyMCE  ║
╚════════════════════════════════════════╝
╭─────────────────╮
│  Border radius  │
╰─────────────────╯
*/
img.border-radius--5,
picture.border-radius--5 img {
  border-radius: 5px;
}

img.border-radius--10,
picture.border-radius--10 img {
  border-radius: 10px;
}

img.border-radius--15,
picture.border-radius--15 img {
  border-radius: 15px;
}

img.border-radius--round,
picture.border-radius--round img {
  border-radius: 50%;
}

.wrapper {
  --wrapper-width: var(--wrapper-width-normal);
  --wrapper-padding: 20px;
  margin: 0 auto;
  width: 100%;
  max-width: calc(var(--wrapper-width) + var(--wrapper-padding) * 2);
  padding: 0 var(--wrapper-padding);
}
@media (min-width: 768px) {
  .wrapper {
    --wrapper-padding: 40px;
  }
}
@media (min-width: 1600px) {
  .wrapper {
    --wrapper-padding: 80px;
  }
}
.wrapper:not(.overflowing) {
  overflow: hidden;
}
.wrapper.no-padding {
  --wrapper-padding: 0px;
}
.wrapper.narrow {
  --wrapper-width: var(--wrapper-width-narrow);
}
.wrapper.post--content {
  --wrapper-width: var(--wrapper-width-post-content);
}
.wrapper.page--content {
  --wrapper-width: var(--wrapper-width-page-content);
}
.wrapper.event--content {
  --wrapper-width: var(--wrapper-width-event-content);
}
.wrapper.reference--content {
  --wrapper-width: var(--wrapper-width-reference-content);
}
.wrapper.medium {
  --wrapper-width: var(--wrapper-width-medium);
}
.wrapper.wide {
  --wrapper-width: var(--wrapper-width-wide);
}
.wrapper.ultrawide {
  --wrapper-width: var(--wrapper-width-ultrawide);
}
.wrapper.xultrawide {
  --wrapper-width: var(--wrapper-width-xultrawide);
}
.wrapper.default {
  --wrapper-width: var(--wrapper-width-normal);
}

.button,
input[type=submit],
.mce-content-body a.button,
.nf-form-content .submit-container .nf-field-element input[type=submit],
.nf-form-content .nf-field-container input[type=button] {
  --button-bg-color: var(--secondary-color);
  --button-text-color: var(--white-color);
  --button-border-color: var(--button-bg-color);
  --button-icon-color: var(--button-text-color);
  --button-shadow-color: var(--button-border-color);
  display: inline-block;
  height: auto;
  font-weight: 600;
  font-size: 1.1875rem;
  --font-min: 0.875rem;
  --font-max: 1.1875rem;
  font-size: max(var(--font-min), min(var(--sizer, 3vw), var(--font-max)));
  font-size: clamp(var(--font-min), var(--sizer, 3vw), var(--font-max));
  line-height: 1.1;
  font-family: var(--secondary-font);
  padding: 0.8em 1.5em;
  color: var(--button-text-color) !important;
  background-color: var(--button-bg-color) !important;
  border: 2px solid var(--button-border-color) !important;
  box-shadow: 0px 0px 0px 0px var(--button-shadow-color);
  cursor: pointer;
  border-radius: 50px;
  transition: all 0.3s;
}
.button:hover,
input[type=submit]:hover,
.mce-content-body a.button:hover,
.nf-form-content .submit-container .nf-field-element input[type=submit]:hover,
.nf-form-content .nf-field-container input[type=button]:hover {
  opacity: 1 !important;
  box-shadow: 1px 1px 10px -2px var(--button-shadow-color);
}
.button:before,
input[type=submit]:before,
.mce-content-body a.button:before,
.nf-form-content .submit-container .nf-field-element input[type=submit]:before,
.nf-form-content .nf-field-container input[type=button]:before {
  color: var(--button-icon-color);
}
.button[data-mce-selected],
input[type=submit][data-mce-selected],
.mce-content-body a.button[data-mce-selected],
.nf-form-content .submit-container .nf-field-element input[type=submit][data-mce-selected],
.nf-form-content .nf-field-container input[type=button][data-mce-selected] {
  outline: 1px dashed red;
}
.button.style-preset-1,
input[type=submit].style-preset-1,
.mce-content-body a.button.style-preset-1,
.nf-form-content .submit-container .nf-field-element input[type=submit].style-preset-1,
.nf-form-content .nf-field-container input[type=button].style-preset-1 {
  --button-bg-color: var(--white-color);
  --button-text-color: var(--default-text-color-light);
  --button-border-color: var(--secondary-color);
  --button-icon-color: var(--secondary-color);
}
.button.style-preset-2,
input[type=submit].style-preset-2,
.mce-content-body a.button.style-preset-2,
.nf-form-content .submit-container .nf-field-element input[type=submit].style-preset-2,
.nf-form-content .nf-field-container input[type=button].style-preset-2 {
  --button-bg-color: var(--primary-color);
  --button-text-color: var(--white-color);
  --button-border-color: var(--primary-color);
  --button-icon-color: var(--white-color);
}
.button.style-preset-3,
input[type=submit].style-preset-3,
.mce-content-body a.button.style-preset-3,
.nf-form-content .submit-container .nf-field-element input[type=submit].style-preset-3,
.nf-form-content .nf-field-container input[type=button].style-preset-3 {
  --button-bg-color: var(--white-color);
  --button-text-color: var(--default-text-color-light);
  --button-border-color: var(--primary-color);
  --button-icon-color: var(--primary-color);
}
.button.style-preset-4,
input[type=submit].style-preset-4,
.mce-content-body a.button.style-preset-4,
.nf-form-content .submit-container .nf-field-element input[type=submit].style-preset-4,
.nf-form-content .nf-field-container input[type=button].style-preset-4 {
  --button-bg-color: transparent;
  --button-text-color: var(--default-link-color);
  --button-border-color: transparent;
  --button-icon-color: var(--default-link-color);
  padding: 0 0.5em 0 0;
}
.button.rounded,
input[type=submit].rounded,
.mce-content-body a.button.rounded,
.nf-form-content .submit-container .nf-field-element input[type=submit].rounded,
.nf-form-content .nf-field-container input[type=button].rounded {
  border-radius: 6px;
}
.button.round,
input[type=submit].round,
.mce-content-body a.button.round,
.nf-form-content .submit-container .nf-field-element input[type=submit].round,
.nf-form-content .nf-field-container input[type=button].round {
  border-radius: 50px;
}
.button.square,
input[type=submit].square,
.mce-content-body a.button.square,
.nf-form-content .submit-container .nf-field-element input[type=submit].square,
.nf-form-content .nf-field-container input[type=button].square {
  border-radius: 0px;
}
.button.large,
input[type=submit].large,
.mce-content-body a.button.large,
.nf-form-content .submit-container .nf-field-element input[type=submit].large,
.nf-form-content .nf-field-container input[type=button].large {
  font-size: 1.1875rem;
  min-width: 220px;
  max-width: 100%;
  text-align: center;
}
.button.small,
input[type=submit].small,
.mce-content-body a.button.small,
.nf-form-content .submit-container .nf-field-element input[type=submit].small,
.nf-form-content .nf-field-container input[type=button].small {
  font-size: 0.9375rem;
}
.button.background-color--primary-color,
input[type=submit].background-color--primary-color,
.mce-content-body a.button.background-color--primary-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].background-color--primary-color,
.nf-form-content .nf-field-container input[type=button].background-color--primary-color {
  --button-bg-color: var(--primary-color);
}
.button.background-color--secondary-color,
input[type=submit].background-color--secondary-color,
.mce-content-body a.button.background-color--secondary-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].background-color--secondary-color,
.nf-form-content .nf-field-container input[type=button].background-color--secondary-color {
  --button-bg-color: var(--secondary-color);
}
.button.background-color--tertiary-color,
input[type=submit].background-color--tertiary-color,
.mce-content-body a.button.background-color--tertiary-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].background-color--tertiary-color,
.nf-form-content .nf-field-container input[type=button].background-color--tertiary-color {
  --button-bg-color: var(--tertiary-color);
}
.button.background-color--quaternary-color,
input[type=submit].background-color--quaternary-color,
.mce-content-body a.button.background-color--quaternary-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].background-color--quaternary-color,
.nf-form-content .nf-field-container input[type=button].background-color--quaternary-color {
  --button-bg-color: var(--quaternary-color);
}
.button.background-color--gray-color,
input[type=submit].background-color--gray-color,
.mce-content-body a.button.background-color--gray-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].background-color--gray-color,
.nf-form-content .nf-field-container input[type=button].background-color--gray-color {
  --button-bg-color: var(--gray-color);
}
.button.background-color--dark-color,
input[type=submit].background-color--dark-color,
.mce-content-body a.button.background-color--dark-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].background-color--dark-color,
.nf-form-content .nf-field-container input[type=button].background-color--dark-color {
  --button-bg-color: var(--dark-color);
}
.button.background-color--white-color,
input[type=submit].background-color--white-color,
.mce-content-body a.button.background-color--white-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].background-color--white-color,
.nf-form-content .nf-field-container input[type=button].background-color--white-color {
  --button-bg-color: var(--white-color);
}
.button.background-color--black-color,
input[type=submit].background-color--black-color,
.mce-content-body a.button.background-color--black-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].background-color--black-color,
.nf-form-content .nf-field-container input[type=button].background-color--black-color {
  --button-bg-color: var(--black-color);
}
.button.background-color--transparent,
input[type=submit].background-color--transparent,
.mce-content-body a.button.background-color--transparent,
.nf-form-content .submit-container .nf-field-element input[type=submit].background-color--transparent,
.nf-form-content .nf-field-container input[type=button].background-color--transparent {
  --button-bg-color: transparent;
}
.button.border-color--primary-color,
input[type=submit].border-color--primary-color,
.mce-content-body a.button.border-color--primary-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].border-color--primary-color,
.nf-form-content .nf-field-container input[type=button].border-color--primary-color {
  --button-border-color: var(--primary-color);
}
.button.border-color--secondary-color,
input[type=submit].border-color--secondary-color,
.mce-content-body a.button.border-color--secondary-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].border-color--secondary-color,
.nf-form-content .nf-field-container input[type=button].border-color--secondary-color {
  --button-border-color: var(--secondary-color);
}
.button.border-color--tertiary-color,
input[type=submit].border-color--tertiary-color,
.mce-content-body a.button.border-color--tertiary-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].border-color--tertiary-color,
.nf-form-content .nf-field-container input[type=button].border-color--tertiary-color {
  --button-border-color: var(--tertiary-color);
}
.button.border-color--quaternary-color,
input[type=submit].border-color--quaternary-color,
.mce-content-body a.button.border-color--quaternary-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].border-color--quaternary-color,
.nf-form-content .nf-field-container input[type=button].border-color--quaternary-color {
  --button-border-color: var(--quaternary-color);
}
.button.border-color--gray-color,
input[type=submit].border-color--gray-color,
.mce-content-body a.button.border-color--gray-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].border-color--gray-color,
.nf-form-content .nf-field-container input[type=button].border-color--gray-color {
  --button-border-color: var(--gray-color);
}
.button.border-color--dark-color,
input[type=submit].border-color--dark-color,
.mce-content-body a.button.border-color--dark-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].border-color--dark-color,
.nf-form-content .nf-field-container input[type=button].border-color--dark-color {
  --button-border-color: var(--dark-color);
}
.button.border-color--white-color,
input[type=submit].border-color--white-color,
.mce-content-body a.button.border-color--white-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].border-color--white-color,
.nf-form-content .nf-field-container input[type=button].border-color--white-color {
  --button-border-color: var(--white-color);
}
.button.border-color--black-color,
input[type=submit].border-color--black-color,
.mce-content-body a.button.border-color--black-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].border-color--black-color,
.nf-form-content .nf-field-container input[type=button].border-color--black-color {
  --button-border-color: var(--black-color);
}
.button.border-color--transparent,
input[type=submit].border-color--transparent,
.mce-content-body a.button.border-color--transparent,
.nf-form-content .submit-container .nf-field-element input[type=submit].border-color--transparent,
.nf-form-content .nf-field-container input[type=button].border-color--transparent {
  --button-border-color: transparent;
}
.button.text-color--primary-color,
input[type=submit].text-color--primary-color,
.mce-content-body a.button.text-color--primary-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].text-color--primary-color,
.nf-form-content .nf-field-container input[type=button].text-color--primary-color {
  --button-text-color: var(--primary-color);
}
.button.text-color--secondary-color,
input[type=submit].text-color--secondary-color,
.mce-content-body a.button.text-color--secondary-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].text-color--secondary-color,
.nf-form-content .nf-field-container input[type=button].text-color--secondary-color {
  --button-text-color: var(--secondary-color);
}
.button.text-color--tertiary-color,
input[type=submit].text-color--tertiary-color,
.mce-content-body a.button.text-color--tertiary-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].text-color--tertiary-color,
.nf-form-content .nf-field-container input[type=button].text-color--tertiary-color {
  --button-text-color: var(--tertiary-color);
}
.button.text-color--quaternary-color,
input[type=submit].text-color--quaternary-color,
.mce-content-body a.button.text-color--quaternary-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].text-color--quaternary-color,
.nf-form-content .nf-field-container input[type=button].text-color--quaternary-color {
  --button-text-color: var(--quaternary-color);
}
.button.text-color--gray-color,
input[type=submit].text-color--gray-color,
.mce-content-body a.button.text-color--gray-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].text-color--gray-color,
.nf-form-content .nf-field-container input[type=button].text-color--gray-color {
  --button-text-color: var(--gray-color);
}
.button.text-color--dark-color,
input[type=submit].text-color--dark-color,
.mce-content-body a.button.text-color--dark-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].text-color--dark-color,
.nf-form-content .nf-field-container input[type=button].text-color--dark-color {
  --button-text-color: var(--dark-color);
}
.button.text-color--white-color,
input[type=submit].text-color--white-color,
.mce-content-body a.button.text-color--white-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].text-color--white-color,
.nf-form-content .nf-field-container input[type=button].text-color--white-color {
  --button-text-color: var(--white-color);
}
.button.text-color--black-color,
input[type=submit].text-color--black-color,
.mce-content-body a.button.text-color--black-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].text-color--black-color,
.nf-form-content .nf-field-container input[type=button].text-color--black-color {
  --button-text-color: var(--black-color);
}
.button.icon-color--default-text, .button.icon-color--default-text-color,
input[type=submit].icon-color--default-text,
input[type=submit].icon-color--default-text-color,
.mce-content-body a.button.icon-color--default-text,
.mce-content-body a.button.icon-color--default-text-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].icon-color--default-text,
.nf-form-content .submit-container .nf-field-element input[type=submit].icon-color--default-text-color,
.nf-form-content .nf-field-container input[type=button].icon-color--default-text,
.nf-form-content .nf-field-container input[type=button].icon-color--default-text-color {
  --button-icon-color: var(--default-text-color);
}
.button.icon-color--primary, .button.icon-color--primary-color,
input[type=submit].icon-color--primary,
input[type=submit].icon-color--primary-color,
.mce-content-body a.button.icon-color--primary,
.mce-content-body a.button.icon-color--primary-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].icon-color--primary,
.nf-form-content .submit-container .nf-field-element input[type=submit].icon-color--primary-color,
.nf-form-content .nf-field-container input[type=button].icon-color--primary,
.nf-form-content .nf-field-container input[type=button].icon-color--primary-color {
  --button-icon-color: var(--primary-color);
}
.button.icon-color--secondary, .button.icon-color--secondary-color,
input[type=submit].icon-color--secondary,
input[type=submit].icon-color--secondary-color,
.mce-content-body a.button.icon-color--secondary,
.mce-content-body a.button.icon-color--secondary-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].icon-color--secondary,
.nf-form-content .submit-container .nf-field-element input[type=submit].icon-color--secondary-color,
.nf-form-content .nf-field-container input[type=button].icon-color--secondary,
.nf-form-content .nf-field-container input[type=button].icon-color--secondary-color {
  --button-icon-color: var(--secondary-color);
}
.button.icon-color--tertiary, .button.icon-color--tertiary-color,
input[type=submit].icon-color--tertiary,
input[type=submit].icon-color--tertiary-color,
.mce-content-body a.button.icon-color--tertiary,
.mce-content-body a.button.icon-color--tertiary-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].icon-color--tertiary,
.nf-form-content .submit-container .nf-field-element input[type=submit].icon-color--tertiary-color,
.nf-form-content .nf-field-container input[type=button].icon-color--tertiary,
.nf-form-content .nf-field-container input[type=button].icon-color--tertiary-color {
  --button-icon-color: var(--tertiary-color);
}
.button.icon-color--quaternary, .button.icon-color--quaternary-color,
input[type=submit].icon-color--quaternary,
input[type=submit].icon-color--quaternary-color,
.mce-content-body a.button.icon-color--quaternary,
.mce-content-body a.button.icon-color--quaternary-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].icon-color--quaternary,
.nf-form-content .submit-container .nf-field-element input[type=submit].icon-color--quaternary-color,
.nf-form-content .nf-field-container input[type=button].icon-color--quaternary,
.nf-form-content .nf-field-container input[type=button].icon-color--quaternary-color {
  --button-icon-color: var(--quaternary-color);
}
.button.icon-color--white, .button.icon-color--white-color,
input[type=submit].icon-color--white,
input[type=submit].icon-color--white-color,
.mce-content-body a.button.icon-color--white,
.mce-content-body a.button.icon-color--white-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].icon-color--white,
.nf-form-content .submit-container .nf-field-element input[type=submit].icon-color--white-color,
.nf-form-content .nf-field-container input[type=button].icon-color--white,
.nf-form-content .nf-field-container input[type=button].icon-color--white-color {
  --button-icon-color: var(--white-color);
}
.button.icon-color--dark, .button.icon-color--dark-color,
input[type=submit].icon-color--dark,
input[type=submit].icon-color--dark-color,
.mce-content-body a.button.icon-color--dark,
.mce-content-body a.button.icon-color--dark-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].icon-color--dark,
.nf-form-content .submit-container .nf-field-element input[type=submit].icon-color--dark-color,
.nf-form-content .nf-field-container input[type=button].icon-color--dark,
.nf-form-content .nf-field-container input[type=button].icon-color--dark-color {
  --button-icon-color: var(--dark-color);
}
.button.icon-color--black, .button.icon-color--black-color,
input[type=submit].icon-color--black,
input[type=submit].icon-color--black-color,
.mce-content-body a.button.icon-color--black,
.mce-content-body a.button.icon-color--black-color,
.nf-form-content .submit-container .nf-field-element input[type=submit].icon-color--black,
.nf-form-content .submit-container .nf-field-element input[type=submit].icon-color--black-color,
.nf-form-content .nf-field-container input[type=button].icon-color--black,
.nf-form-content .nf-field-container input[type=button].icon-color--black-color {
  --button-icon-color: var(--black-color);
}
.button.is-style-some,
input[type=submit].is-style-some,
.mce-content-body a.button.is-style-some,
.nf-form-content .submit-container .nf-field-element input[type=submit].is-style-some,
.nf-form-content .nf-field-container input[type=button].is-style-some {
  background-color: var(--secondary-color) !important;
  color: var(--white-color);
  padding: 11px 9px;
  font-size: 1.25rem;
  border-radius: 20px;
  width: 46px;
  height: 46px;
  margin-right: 5px;
}
.button.is-style-some:before,
input[type=submit].is-style-some:before,
.mce-content-body a.button.is-style-some:before,
.nf-form-content .submit-container .nf-field-element input[type=submit].is-style-some:before,
.nf-form-content .nf-field-container input[type=button].is-style-some:before {
  font-size: 1.25rem !important;
}
.button.disabled, .button[disabled],
input[type=submit].disabled,
input[type=submit][disabled],
.mce-content-body a.button.disabled,
.mce-content-body a.button[disabled],
.nf-form-content .submit-container .nf-field-element input[type=submit].disabled,
.nf-form-content .submit-container .nf-field-element input[type=submit][disabled],
.nf-form-content .nf-field-container input[type=button].disabled,
.nf-form-content .nf-field-container input[type=button][disabled] {
  opacity: 0.4;
}
.button.disabled:hover, .button[disabled]:hover,
input[type=submit].disabled:hover,
input[type=submit][disabled]:hover,
.mce-content-body a.button.disabled:hover,
.mce-content-body a.button[disabled]:hover,
.nf-form-content .submit-container .nf-field-element input[type=submit].disabled:hover,
.nf-form-content .submit-container .nf-field-element input[type=submit][disabled]:hover,
.nf-form-content .nf-field-container input[type=button].disabled:hover,
.nf-form-content .nf-field-container input[type=button][disabled]:hover {
  opacity: 0.4 !important;
  cursor: not-allowed;
}

.wc-block-components-notice-banner__content a.button {
  font-size: 1.15rem;
  --button-bg-color: transparent;
  --button-text-color: var(--default-link-color);
  --button-border-color: transparent;
  --button-icon-color: var(--primary-color);
  padding: 0 0.5em 0 0;
}

.button-group {
  display: block flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--button-group-gap, 0.5rem);
}

.button-group[style*="text-align: center"] {
  justify-content: center;
}

.button-group[style*="text-align: right"] {
  justify-content: end;
}

nav.pagination, nav.woocommerce-pagination {
  text-align: center;
  font-size: 20px;
  margin: 2em 0;
}
nav.pagination ul.page-numbers, nav.woocommerce-pagination ul.page-numbers {
  list-style-type: none;
}
nav.pagination ul.page-numbers li, nav.woocommerce-pagination ul.page-numbers li {
  display: inline-block;
}
nav.pagination span.page-numbers, nav.pagination a.page-numbers, nav.woocommerce-pagination span.page-numbers, nav.woocommerce-pagination a.page-numbers {
  width: 40px;
  height: 40px;
  line-height: 40px;
  display: inline-block;
  text-decoration: none;
}
nav.pagination span.page-numbers.current, nav.pagination a.page-numbers.current, nav.woocommerce-pagination span.page-numbers.current, nav.woocommerce-pagination a.page-numbers.current {
  background-color: var(--dark-color);
  color: var(--white-color);
  font-weight: 600;
  border-radius: 50%;
}
nav.pagination .next, nav.pagination .prev, nav.woocommerce-pagination .next, nav.woocommerce-pagination .prev {
  width: auto;
  height: auto;
}
nav.pagination .next i, nav.pagination .prev i, nav.woocommerce-pagination .next i, nav.woocommerce-pagination .prev i {
  margin-top: -0.3em;
}

nav.woocommerce-pagination .next, nav.woocommerce-pagination .prev {
  vertical-align: middle;
  margin-top: -0.4em;
}

@keyframes spin {
  100% {
    transform: rotate(360deg);
  }
}
.woocommerce .blockUI.blockOverlay {
  position: relative;
}
.woocommerce .blockUI.blockOverlay::before {
  height: 1em;
  width: 1em;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -0.5em;
  margin-top: -0.5em;
  content: "";
  animation: spin 1s ease-in-out infinite;
  background: url("../img/loader.svg") center center;
  background-size: cover;
  line-height: 1;
  text-align: center;
  font-size: 2em;
  color: rgba(0, 0, 0, 0.75);
}

.woocommerce .loader::before {
  height: 1em;
  width: 1em;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-left: -0.5em;
  margin-top: -0.5em;
  content: "";
  animation: spin 1s ease-in-out infinite;
  background: url("../img/loader.svg") center center;
  background-size: cover;
  line-height: 1;
  text-align: center;
  font-size: 2em;
  color: rgba(0, 0, 0, 0.75);
}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
  padding: 1em 2em 1em 3.5em;
  margin: 0 0 2em;
  position: relative;
  background-color: var(--white-color);
  color: var(--default-text-color-light);
  border-top: 3px solid var(--secondary-color);
  list-style: none outside;
  width: auto;
  word-wrap: break-word;
  box-shadow: 1px 1px 8px #a9a9a9;
}

.woocommerce-error::after,
.woocommerce-error::before,
.woocommerce-info::after,
.woocommerce-info::before,
.woocommerce-message::after,
.woocommerce-message::before {
  content: " ";
  display: table;
}

.woocommerce-error::after,
.woocommerce-info::after,
.woocommerce-message::after {
  clear: both;
}

.woocommerce-error::before,
.woocommerce-info::before,
.woocommerce-message::before {
  font-family: WooCommerce;
  content: "\e028";
  display: inline-block;
  position: absolute;
  top: 1.1em;
  left: 1.5em;
}

.woocommerce-error .button,
.woocommerce-info .button,
.woocommerce-message .button {
  float: right;
  margin: 0;
}
@media (max-width: 479.98px) {
  .woocommerce-error .button,
  .woocommerce-info .button,
  .woocommerce-message .button {
    margin-bottom: 1em;
    display: block !important;
    width: 100%;
  }
}

.woocommerce-error li,
.woocommerce-info li,
.woocommerce-message li {
  list-style: none outside !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}

.woocommerce-info::before {
  color: var(--secondary-color);
}

.woocommerce a.remove {
  display: block;
  font-size: 1.5em;
  height: 1em;
  width: 1em;
  text-align: center;
  line-height: 1;
  border-radius: 100%;
  color: var(--default-text-color) !important;
  text-decoration: none;
  font-weight: 500;
  border: 0;
}
.woocommerce a.remove:hover {
  color: #fff !important;
  background: red;
}
.woocommerce .product-category mark {
  background: none;
}
@media (min-width: 1024px) {
  .woocommerce form.checkout.woocommerce-checkout {
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(2, 1fr);
    grid-template-areas: "customer-details order-review";
  }
}
.woocommerce form.checkout.woocommerce-checkout h3 {
  font-size: 1.5rem;
  font-weight: 600;
}
.woocommerce form.checkout.woocommerce-checkout #customer_details {
  grid-area: customer-details;
  padding: 35px;
  background-color: var(--light-color);
  border: 1px solid var(--default-border-color);
}
@media (max-width: 1023.98px) {
  .woocommerce form.checkout.woocommerce-checkout #customer_details {
    margin-bottom: 20px;
  }
}
@media (max-width: 767.98px) {
  .woocommerce form.checkout.woocommerce-checkout #customer_details {
    padding: 25px;
  }
}
.woocommerce form.checkout.woocommerce-checkout #customer_details .form-row {
  margin-top: 0;
}
.woocommerce form.checkout.woocommerce-checkout #customer_details .form-row label {
  display: block;
  font-size: 1.0625rem;
  margin-bottom: 1em;
}
.woocommerce form.checkout.woocommerce-checkout #customer_details .woocommerce-billing-fields__field-wrapper {
  margin: 0 -10px;
  display: flex;
  flex-wrap: wrap;
}
.woocommerce form.checkout.woocommerce-checkout #customer_details .woocommerce-billing-fields__field-wrapper .form-row {
  padding: 0 10px;
  width: 100%;
}
@media screen and (min-width: 580px) {
  .woocommerce form.checkout.woocommerce-checkout #customer_details .woocommerce-billing-fields__field-wrapper .form-row {
    width: 50%;
  }
}
.woocommerce form.checkout.woocommerce-checkout #customer_details .woocommerce-billing-fields__field-wrapper .form-row .woocommerce-input-wrapper {
  display: block;
}
.woocommerce form.checkout.woocommerce-checkout #customer_details .woocommerce-billing-fields__field-wrapper .form-row .woocommerce-input-wrapper input {
  width: 100%;
  max-width: 100%;
}
.woocommerce form.checkout.woocommerce-checkout #customer_details .woocommerce-billing-fields__field-wrapper .form-row-wide {
  width: 100%;
}
.woocommerce form.checkout.woocommerce-checkout #customer_details .woocommerce-additional-fields__field-wrapper .woocommerce-input-wrapper {
  display: block;
}
.woocommerce form.checkout.woocommerce-checkout #customer_details .woocommerce-additional-fields__field-wrapper .woocommerce-input-wrapper textarea {
  width: 100%;
}
.woocommerce form.checkout.woocommerce-checkout #customer_details .woocommerce-additional-fields h3 {
  display: none;
}
.woocommerce form.checkout.woocommerce-checkout .order-review-wrapper {
  grid-area: order-review;
  padding: 35px 25px 0 35px;
  background-color: var(--light-color);
  border: 1px solid var(--default-border-color);
}
@media (min-width: 768px) {
  .woocommerce form.checkout.woocommerce-checkout .order-review-wrapper {
    padding: 35px 35px 0 35px;
  }
}
.woocommerce form.checkout.woocommerce-checkout .order-review-wrapper .woocommerce-terms-and-conditions-wrapper {
  padding-top: 25px;
  padding-bottom: 15px;
}
.woocommerce form.checkout.woocommerce-checkout .order-review-wrapper .order-button-container {
  display: flex;
  padding: 60px 35px;
  justify-content: center;
  background-color: var(--light-color);
}
.woocommerce form.checkout.woocommerce-checkout .order-review-wrapper .order-button-container button {
  margin: 0;
}

/* --------------------------
 *
 * Default woocommerce table styles, but slightly modified
 *
** ----------------------- */
.woocommerce table.shop_table {
  margin: 0;
  text-align: left;
  width: 100%;
  border-collapse: separate;
}
.woocommerce table.shop_table th {
  font-weight: 700;
  padding: 9px 12px;
  line-height: 1.5em;
  color: var(--default-text-color);
  font-family: var(--primary-font);
}
.woocommerce table.shop_table.cart th {
  border-bottom: 1px solid var(--default-hr-color);
}
.woocommerce table.shop_table td.product-name {
  overflow-x: clip;
  text-overflow: ellipsis;
}
@media (min-width: 768px) {
  .woocommerce table.shop_table td.product-name {
    max-width: 170px;
  }
}
.woocommerce table.shop_table td.product-name a {
  font-size: 1.1875rem;
  color: var(--default-text-color);
  font-weight: 700;
}
@media (max-width: 767.98px) {
  .woocommerce table.shop_table td.product-name a {
    font-size: 0.9375rem;
  }
}
.woocommerce table.shop_table td {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  padding: 9px 12px;
  vertical-align: middle;
  line-height: 1.5em;
}
.woocommerce table.shop_table td small {
  font-weight: 400;
}
.woocommerce table.shop_table td del {
  font-weight: 400;
}
.woocommerce table.shop_table td.actions .button {
  margin: 10px;
  margin-left: auto;
  text-transform: capitalize;
}
.woocommerce table.shop_table tbody:first-child tr:first-child td, .woocommerce table.shop_table tbody:first-child tr:first-child th {
  border-top: 0;
}
.woocommerce table.shop_table tbody th,
.woocommerce table.shop_table tfoot td,
.woocommerce table.shop_table tfoot th {
  font-weight: 700;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}
@media (max-width: 767.98px) {
  .woocommerce table.shop_table.shop_table_responsive tr.cart_item {
    display: block;
  }
  .woocommerce table.shop_table.shop_table_responsive tr.cart_item:nth-child(even) {
    background-color: rgba(0, 0, 0, 0.02);
  }
  .woocommerce table.shop_table.shop_table_responsive tr.cart_item td:not(.product-remove)::before {
    content: attr(data-title) ": ";
    font-weight: 700;
    float: left;
  }
  .woocommerce table.shop_table.shop_table_responsive tr.cart_item td {
    text-align: right;
    display: block;
  }
  .woocommerce table.shop_table.shop_table_responsive tr.cart_item .product-thumbnail {
    display: none;
  }
  .woocommerce table.shop_table.shop_table_responsive thead {
    display: none;
  }
  .woocommerce table.shop_table.shop_table_responsive .actions > .button, .woocommerce table.shop_table.shop_table_responsive .actions .coupon {
    float: none !important;
  }
  .woocommerce table.shop_table.shop_table_responsive .actions > .button {
    margin-top: 1em !important;
  }
  .woocommerce table.shop_table.shop_table_responsive .quantity {
    display: flex;
  }
  .woocommerce table.shop_table.shop_table_responsive .quantity .custom-quantity-picker {
    margin-left: auto;
  }
}

/* --------------------------
 *
 * Cart & checkout table
 *
** ----------------------- */
.woocommerce .order-review-wrapper table.shop_table,
.woocommerce .cart-collaterals table.shop_table {
  margin: 0;
  width: 100%;
  border: 1px solid var(--default-border-color);
  border-collapse: collapse;
}
@media (min-width: 768px) {
  .woocommerce .order-review-wrapper table.shop_table,
  .woocommerce .cart-collaterals table.shop_table {
    width: auto;
  }
}
.woocommerce .order-review-wrapper th, .woocommerce .order-review-wrapper td,
.woocommerce .cart-collaterals th,
.woocommerce .cart-collaterals td {
  padding: 0.5em;
  border: 1px solid var(--default-border-color);
  vertical-align: top;
}
.woocommerce .order-review-wrapper tr.order-total,
.woocommerce .cart-collaterals tr.order-total {
  color: var(--default-text-color);
}
.woocommerce .order-review-wrapper tr.order-total th, .woocommerce .order-review-wrapper tr.order-total td, .woocommerce .order-review-wrapper tr.order-total strong,
.woocommerce .cart-collaterals tr.order-total th,
.woocommerce .cart-collaterals tr.order-total td,
.woocommerce .cart-collaterals tr.order-total strong {
  color: inherit;
}
.woocommerce .order-review-wrapper table.shop_table ul.woocommerce-shipping-methods,
.woocommerce .cart-collaterals table.shop_table ul.woocommerce-shipping-methods {
  text-align: left;
  padding: 0 0 0 1.2em;
  margin: 0;
  list-style: none;
}
.woocommerce .order-review-wrapper table.shop_table ul.woocommerce-shipping-methods li input[type=radio],
.woocommerce .cart-collaterals table.shop_table ul.woocommerce-shipping-methods li input[type=radio] {
  margin-left: -1.1em;
  margin-right: 0.35em;
}
@media (max-width: 579px) {
  .woocommerce .order-review-wrapper table.woocommerce-checkout-review-order-table th, .woocommerce .order-review-wrapper table.woocommerce-checkout-review-order-table td,
  .woocommerce .order-review-wrapper table.shop_table_responsive th,
  .woocommerce .order-review-wrapper table.shop_table_responsive td,
  .woocommerce .cart-collaterals table.woocommerce-checkout-review-order-table th,
  .woocommerce .cart-collaterals table.woocommerce-checkout-review-order-table td,
  .woocommerce .cart-collaterals table.shop_table_responsive th,
  .woocommerce .cart-collaterals table.shop_table_responsive td {
    display: block;
  }
  .woocommerce .order-review-wrapper table.woocommerce-checkout-review-order-table th,
  .woocommerce .order-review-wrapper table.shop_table_responsive th,
  .woocommerce .cart-collaterals table.woocommerce-checkout-review-order-table th,
  .woocommerce .cart-collaterals table.shop_table_responsive th {
    border-bottom: 0;
  }
  .woocommerce .order-review-wrapper table.woocommerce-checkout-review-order-table td,
  .woocommerce .order-review-wrapper table.shop_table_responsive td,
  .woocommerce .cart-collaterals table.woocommerce-checkout-review-order-table td,
  .woocommerce .cart-collaterals table.shop_table_responsive td {
    border-top: 0;
  }
}

.woocommerce .order-review-wrapper table.shop_table {
  width: 100%;
}

/* --------------------------
 *
 * Cart page
 *
** ----------------------- */
.woocommerce .cross-sells {
  background: var(--light-color);
  padding: 14px 14px 6px 14px;
  border-top: 1px solid var(--default-hr-color);
  position: relative;
}
@media (min-width: 768px) {
  .woocommerce .cross-sells {
    padding: 16px 16px 8px 16px;
  }
}
.woocommerce .cross-sells h2 {
  margin-bottom: 0.2em;
  font-size: 1.3em;
}
.woocommerce .cross-sells:after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  height: 100%;
  width: 30px;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, var(--light-color) 40%);
}
.woocommerce .cross-sells ul.products {
  max-width: none;
  overflow: auto;
}
.woocommerce .cross-sells ul.products.columns-4 {
  --columns: 4 !important;
  --gap: 14px !important;
  padding-right: 10px !important;
}
.woocommerce .cross-sells ul.products.columns-5 {
  --columns: 5 !important;
  --gap: 14px !important;
  padding-right: 10px !important;
}
.woocommerce .cross-sells li.product {
  width: 155px;
}
@media (min-width: 768px) {
  .woocommerce .cross-sells li.product {
    width: 230px;
  }
}
.woocommerce .cross-sells li.product hr,
.woocommerce .cross-sells li.product .price .woocommerce-price-suffix,
.woocommerce .cross-sells li.product .product-loop-infolink-container,
.woocommerce .cross-sells li.product .woocommerce-loop-product__categories {
  display: none;
}
.woocommerce .cross-sells li.product .product-loop-info {
  display: none;
  font-size: 1em;
}
.woocommerce .cross-sells li.product h2.woocommerce-loop-product__title {
  font-size: 0.9em;
  margin: 0.5em 0 0.7em 0;
}
.woocommerce .cross-sells li.product h2.woocommerce-loop-product__title a {
  text-decoration: none;
}
.woocommerce .cross-sells li.product .price {
  font-size: 1em;
  margin: 0;
  min-height: 42px;
  width: 100%;
  padding-right: 48px;
  padding-top: 3px;
}
.woocommerce .cross-sells li.product .price ins {
  font-size: 0.9em;
  float: left;
}
@media (min-width: 768px) {
  .woocommerce .cross-sells li.product .price ins {
    font-size: 1em;
  }
}
.woocommerce .cross-sells li.product .price del {
  font-size: 0.7em;
}
@media (min-width: 768px) {
  .woocommerce .cross-sells li.product .price del {
    font-size: 0.9em;
  }
}
.woocommerce .cross-sells li.product a.product_type_variable {
  display: none;
}
.woocommerce .cross-sells li.product a.add_to_cart_button:before {
  position: absolute;
  right: 50%;
  margin-right: -0.45em;
  text-indent: 0;
  content: "\f291";
  font-family: "Font Awesome 6 Pro";
  font-weight: 400;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  width: 1em;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  line-height: 1em;
  margin-left: 0;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  speak: never;
}
.woocommerce .cross-sells li.product a.add_to_cart_button {
  height: auto;
  min-height: 1em;
  border-radius: 5px;
  padding: 0.61em 1.2em;
  margin: 0 3px 3px 0;
  font-size: 0.9375rem;
  text-indent: -999em;
  position: absolute;
  right: var(--padding);
  bottom: var(--padding);
  --button-bg-color: var(--secondary-color);
  --button-text-color: var(--white-color);
  --button-border-color: var(--secondary-color);
  --button-after-color: var(--primary-color);
}
.woocommerce .cross-sells li.product .product-loop-item--inner-container {
  --padding: 10px;
}
@media (min-width: 1024px) {
  .woocommerce .cross-sells li.product .product-loop-item--inner-container {
    --padding: 13px;
  }
}
@media (min-width: 1280px) {
  .woocommerce .cross-sells li.product .product-loop-item--inner-container {
    --padding: 17px;
  }
}
.woocommerce .cross-sells li.product .product-loop-item--inner-container:after {
  content: "";
  display: block;
  clear: both;
}

.woocommerce #content table.cart td.actions,
.woocommerce table.cart td.actions,
.woocommerce-page #content table.cart td.actions,
.woocommerce-page table.cart td.actions {
  padding: 1em 0 1em 0;
  border-top: 1px solid var(--default-hr-color);
}
.woocommerce #content table.cart td.actions::after,
.woocommerce table.cart td.actions::after,
.woocommerce-page #content table.cart td.actions::after,
.woocommerce-page table.cart td.actions::after {
  content: "";
  clear: both;
  display: table;
}
.woocommerce #content table.cart td.actions .coupon,
.woocommerce table.cart td.actions .coupon,
.woocommerce-page #content table.cart td.actions .coupon,
.woocommerce-page table.cart td.actions .coupon {
  float: left;
  vertical-align: top;
}
.woocommerce #content table.cart td.actions .coupon label,
.woocommerce table.cart td.actions .coupon label,
.woocommerce-page #content table.cart td.actions .coupon label,
.woocommerce-page table.cart td.actions .coupon label {
  display: none;
}
.woocommerce #content table.cart td.actions .coupon input.input-text,
.woocommerce table.cart td.actions .coupon input.input-text,
.woocommerce-page #content table.cart td.actions .coupon input.input-text,
.woocommerce-page table.cart td.actions .coupon input.input-text {
  float: left;
  width: 150px;
  font-size: 0.9375rem;
  margin: 0 0.3em 0 0;
}
.woocommerce #content table.cart td.actions .coupon .button,
.woocommerce table.cart td.actions .coupon .button,
.woocommerce-page #content table.cart td.actions .coupon .button,
.woocommerce-page table.cart td.actions .coupon .button {
  float: left;
  border-radius: 5px;
  padding: 0.62em 1.2em;
  margin: 0;
  font-size: 0.9375rem;
  --button-bg-color: var(--secondary-color);
  --button-text-color: var(--white-color);
  --button-border-color: var(--secondary-color);
  --button-after-color: var(--primary-color);
}
.woocommerce #content table.cart td.actions .coupon:after,
.woocommerce table.cart td.actions .coupon:after,
.woocommerce-page #content table.cart td.actions .coupon:after,
.woocommerce-page table.cart td.actions .coupon:after {
  display: block;
  content: "";
  clear: both;
}
.woocommerce #content table.cart td.actions > .button,
.woocommerce table.cart td.actions > .button,
.woocommerce-page #content table.cart td.actions > .button,
.woocommerce-page table.cart td.actions > .button {
  text-transform: none;
  float: right;
  border-radius: 5px;
  padding: 0.62em 1.2em;
  margin: 0;
  font-size: 0.9375rem;
  --button-bg-color: var(--secondary-color);
  --button-text-color: var(--white-color);
  --button-border-color: var(--secondary-color);
  --button-after-color: var(--primary-color);
}

.woocommerce .cart-collaterals,
.woocommerce-page .cart-collaterals {
  width: 100%;
  border-top: 1px solid var(--default-hr-color);
  padding: 20px 0 0;
}
@media (min-width: 480px) {
  .woocommerce .cart-collaterals,
  .woocommerce-page .cart-collaterals {
    padding: 30px 0 0;
  }
}
@media (min-width: 768px) {
  .woocommerce .cart-collaterals,
  .woocommerce-page .cart-collaterals {
    padding: 35px 0 0;
    display: flex;
  }
}
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals {
  align-items: center;
  max-width: 100%;
  margin-left: auto;
}
@media (min-width: 768px) {
  .woocommerce .cart-collaterals .cart_totals,
  .woocommerce-page .cart-collaterals .cart_totals {
    display: flex;
  }
}
.woocommerce .cart-collaterals .cart_totals h2,
.woocommerce-page .cart-collaterals .cart_totals h2 {
  display: none;
}
.woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout,
.woocommerce-page .cart-collaterals .cart_totals .wc-proceed-to-checkout {
  margin: 1em 0 1em 0;
  width: 250px;
  max-width: 100%;
}
@media (min-width: 768px) {
  .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout,
  .woocommerce-page .cart-collaterals .cart_totals .wc-proceed-to-checkout {
    margin: 1em 0 1em 2em;
  }
}
.woocommerce .cart-collaterals a.checkout-button,
.woocommerce-page .cart-collaterals a.checkout-button {
  --button-bg-color: var(--primary-color);
  --button-text-color: var(--white-color);
  --button-border-color: var(--primary-color);
  --button-after-color: var(--white-color);
  font-size: 1.375rem;
  padding: 1.3em 1.5em 1.3em 1.5em;
  width: 100%;
  max-width: 100%;
  text-align: center;
  border-radius: 5px;
}

/* --------------------------
 *
 * Checkout page
 *
** ----------------------- */
#add_payment_method table.cart .product-thumbnail,
.woocommerce-cart table.cart .product-thumbnail,
.woocommerce-checkout table.cart .product-thumbnail {
  min-width: 32px;
}
#add_payment_method table.cart .product-thumbnail a > img,
#add_payment_method table.cart .product-thumbnail a > picture > img,
.woocommerce-cart table.cart .product-thumbnail a > img,
.woocommerce-cart table.cart .product-thumbnail a > picture > img,
.woocommerce-checkout table.cart .product-thumbnail a > img,
.woocommerce-checkout table.cart .product-thumbnail a > picture > img {
  max-height: 150px;
  object-fit: contain;
}

#add_payment_method table.cart input,
.woocommerce-cart table.cart input,
.woocommerce-checkout table.cart input {
  margin: 0;
  vertical-align: middle;
}

#add_payment_method table.cart img,
.woocommerce-cart table.cart img,
.woocommerce-checkout table.cart img {
  width: 85px;
}

.woocommerce td.product-quantity {
  min-width: 80px;
}

.woocommerce-checkout #payment ul.payment_methods {
  text-align: left;
  padding: 1em 0;
  border-bottom: 1px solid #d3ced2;
  margin: 0;
  list-style: none outside;
}
.woocommerce-checkout #payment ul.payment_methods li {
  line-height: 2;
  text-align: left;
  margin: 0;
  font-weight: 400;
}
.woocommerce-checkout #payment div.payment_box {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  padding: 1em;
  margin: 1em 0;
  font-size: 0.92em;
  border-radius: 2px;
  line-height: 1.5;
  background-color: var(--white-color);
  color: var(--default-text-color);
}
.woocommerce-checkout #payment div.payment_box::before {
  content: "";
  display: block;
  border: 1em solid var(--white-color);
  border-right-color: transparent;
  border-left-color: transparent;
  border-top-color: transparent;
  position: absolute;
  top: -0.75em;
  left: 0;
  margin: -1em 0 0 2em;
}
.woocommerce-checkout #payment div.payment_box p:last-child {
  margin-bottom: 0;
}
.woocommerce-checkout #payment div.payment_box p:first-child {
  margin-top: 0;
}
.woocommerce-checkout #kco-order-review {
  overflow: auto;
}
.woocommerce-checkout #kco-order-review select#pakettikauppa_pickup_point {
  max-width: 320px !important;
}

.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
  border: 1px solid #cccccc;
  background: white;
  padding: 35px;
  margin: 2em 0;
  text-align: left;
}

.woocommerce-form .woocommerce-login-input-container {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px;
}
.woocommerce-form .woocommerce-login-input-container p {
  padding: 0 10px;
}
.woocommerce-form .woocommerce-login-input-container p:first-of-type {
  width: 100%;
}
.woocommerce-form .woocommerce-login-input-container p.form-row {
  width: 100%;
}
@media (min-width: 768px) {
  .woocommerce-form .woocommerce-login-input-container p.form-row {
    width: 50%;
  }
}

.woocommerce .woocommerce-form-login .woocommerce-form-login__rememberme {
  display: inline-block;
  line-height: 2;
}

.woocommerce-button.button.woocommerce-form-login__submit {
  float: left;
  margin: 0;
  margin-right: 1em;
  border-radius: 5px;
  display: block;
  padding: 0.6rem 1.5em;
}

.woocommerce form .form-row label, .woocommerce-page form .form-row label {
  display: block;
}

.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea {
  width: 100%;
}

.woocommerce form .form-row::after {
  content: "";
  clear: both;
  display: table;
}

.checkout-login-title {
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--default-text-color);
  margin-left: 10px;
  margin-bottom: 0px;
}

@media (max-width: 479.98px) {
  .checkout-wrapper .woocommerce-form-login .form-row-last {
    margin-top: 0px;
  }
}
.checkout-wrapper form:first-child {
  margin-top: 0px;
}

/* --------------------------
 *
 * Order details
 *
** ----------------------- */
.woocommerce ul.order_details {
  margin: 0 0 2em;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
}

.woocommerce ul.order_details li {
  margin-right: 2em;
  text-transform: uppercase;
  font-size: 0.715em;
  line-height: 1;
  border-left: 1px dashed #d3ced2;
  padding-left: 2em;
  margin-left: 0;
  list-style-type: none;
}
.woocommerce ul.order_details li.vat_id {
  display: none;
}

.woocommerce ul.order_details li strong {
  display: block;
  font-size: 1.4em;
  text-transform: none;
  line-height: 1.5;
}

.woocommerce ul.order_details li:first-of-type {
  border: none;
  padding-left: 0px;
}

.woocommerce .woocommerce-customer-details address {
  font-style: normal;
  margin-bottom: 2em;
  border: 1px solid #bcd0d7;
  text-align: left;
  width: 100%;
  padding: 1em 35px;
  line-height: 1.5;
}

.woocommerce .woocommerce-customer-details .woocommerce-customer-details--email,
.woocommerce .woocommerce-customer-details .woocommerce-customer-details--phone {
  margin-bottom: 0;
}

/* --------------------------
 *
 * Custom quantity input
 *
** ----------------------- */
.woocommerce .quantity .qty {
  text-align: center;
}

input[type=number].custom-quantity-input {
  appearance: textfield;
  height: 40px;
  border: none;
  border-radius: 0;
  width: 2.75em;
  padding: 11px 5px;
  font-weight: 700;
  color: var(--default-text-color);
  border-left: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
  font-size: 0.8125rem;
}
input[type=number].custom-quantity-input::-webkit-inner-spin-button, input[type=number].custom-quantity-input::-webkit-outer-spin-button {
  appearance: none;
  margin: 0;
}
@media (max-width: 479.98px) {
  input[type=number].custom-quantity-input {
    font-size: 1rem;
    padding: 11px 5px;
  }
}

.custom-quantity-picker {
  width: max-content;
  border: 1px solid #cccccc;
  border-radius: 5px;
  display: flex;
  overflow: hidden;
}
.custom-quantity-picker button {
  width: 33px;
  padding: 0;
  border: 0;
  background-color: #ffffff;
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  color: var(--default-text-color);
  width: 30px;
}
.custom-quantity-picker button:hover {
  background-color: #f4f4f4;
}

/* --------------------------
 *
 * Custom radio pill variation select
 *
** ----------------------- */
.variation-selector-container fieldset {
  border: none;
  margin: 0;
  margin: 1em 0 2em 0;
  padding: 0;
}
.variation-selector-container legend {
  margin-bottom: 0.7em;
  color: var(--tertiary-color);
  font-weight: 600;
  font-family: var(--primary-font);
  font-size: 1.5rem;
}
.variation-selector-container label {
  color: var(--default-text-color);
  border: 1px solid #bec3cb;
  border-radius: 5px;
  font-weight: 700;
  font-size: 1.0625rem;
  padding: 0.5em;
  margin: 0 0.5em 0.3em 0;
  display: inline-block;
  cursor: pointer;
}
.variation-selector-container label:hover {
  border: 1px solid var(--default-text-color);
}
.variation-selector-container input[type=radio]:checked + label {
  color: #ffffff;
  background-color: var(--default-text-color);
  border-color: var(--default-text-color);
}

.woocommerce-variation .woocommerce-variation-price {
  margin-top: 20px;
}

.woocommerce ul.cart_list,
.woocommerce ul.product_list_widget {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
.woocommerce ul.cart_list li + li,
.woocommerce ul.product_list_widget li + li {
  margin-top: 14px;
}
.woocommerce ul.cart_list li,
.woocommerce ul.product_list_widget li {
  padding: 6px 0;
  padding-left: 2em;
  position: relative;
  padding-top: 0;
}
.woocommerce ul.cart_list li a:hover:not(.remove),
.woocommerce ul.product_list_widget li a:hover:not(.remove) {
  text-decoration: underline;
}
.woocommerce ul.cart_list li a,
.woocommerce ul.product_list_widget li a {
  display: block;
}
.woocommerce ul.cart_list li a.remove,
.woocommerce ul.product_list_widget li a.remove {
  position: absolute;
  top: 0;
  left: 0;
}
.woocommerce ul.cart_list li img,
.woocommerce ul.product_list_widget li img {
  float: right;
  margin-left: 4px;
  width: 32px;
  height: auto;
  max-height: 50px;
  object-fit: contain;
  box-shadow: none;
}
.woocommerce .woocommerce-MyAccount-content fieldset {
  border: 1px solid;
  border-radius: 10px;
  border-color: #cccccc;
  padding: 0.5em 1.5em;
}

.select2-selection--single {
  height: 44px !important;
}
.select2-selection--single .select2-selection__rendered {
  padding-top: 8px;
}
.select2-selection--single .select2-selection__arrow {
  top: 8px !important;
}

#customer_details abbr {
  text-decoration: none;
}
#customer_details #order_comments {
  height: 120px;
}

.variations .label {
  padding-right: 10px;
  line-height: 1;
}
.variations .value {
  padding-bottom: 5px;
}
.variations .value select {
  -webkit-appearance: none;
  -moz-appearance: none;
  background-image: url("data:image/svg+xml;utf8,<svg fill='black' height='24' viewBox='0 0 24 24' width='24' xmlns='http://www.w3.org/2000/svg'><path d='M7 10l5 5 5-5z'/><path d='M0 0h24v24H0z' fill='none'/></svg>");
  background-repeat: no-repeat;
  background-position-x: 95%;
  background-position-y: 0.7rem;
  border: 1px solid #dfdfdf;
  padding: 0.9rem;
  padding-right: 2rem;
  border-radius: 10px;
}
.variations .value select:focus {
  outline: none;
}

.order-total .includes_tax {
  display: block;
}

#ship-to-different-address {
  margin-top: 30px;
  margin-bottom: 30px;
}

.woocommerce-checkout-review-order-table .delivery-call-fee .input-checkbox {
  margin-right: 0.5em;
}

.woocommerce-order .wc-bacs-bank-details-account-name {
  display: none;
}
.woocommerce-order .wc-bacs-bank-details-heading {
  display: none;
}

.woocommerce-MyAccount-content mark {
  background-color: transparent;
  font-weight: 600;
}
.woocommerce-MyAccount-content legend {
  padding: 0px 10px;
}

.shop-top-wrapper {
  display: flex;
  flex-direction: column;
  margin-bottom: 2em;
}
@media (min-width: 1280px) {
  .shop-top-wrapper .shop-description {
    width: 70%;
  }
}
.shop-top-wrapper .shop-description-brand + .term-description {
  margin-top: 1em;
}
.shop-top-wrapper .catalog-ordering-container {
  margin: 0.5em 0;
  display: flex;
  flex-direction: column;
}
.shop-top-wrapper .catalog-ordering-container form {
  width: 100%;
}
.shop-top-wrapper .catalog-ordering-container form select {
  width: 100%;
  max-width: 400px;
  float: right;
}
@media (min-width: 1280px) {
  .shop-top-wrapper .catalog-ordering-container {
    width: 30%;
  }
}
.shop-top-wrapper .catalog-ordering-container .woocommerce-result-count {
  margin: 0.5em 0;
  order: 2;
  text-align: right;
}
@media (min-width: 1280px) {
  .shop-top-wrapper {
    flex-direction: row;
    gap: 30px;
  }
}

.product-category--bottom-description-container {
  margin: 2em 0;
}

#kco-wrapper {
  grid-column: 1/-1;
}

/* --------------------------
 *
 * Woocommerce structure
 *
** ----------------------- */
/* --------------------------
 *
 * Woocommerce single product
 *
** ----------------------- */
a.reset_variations {
  display: none !important;
}

.woocommerce.single-product div.product {
  display: grid;
  column-gap: 70px;
  min-width: 0;
  min-height: 0;
  grid-template-areas: "title" "images" "summary" "tabs" "related" "upsells";
}
.woocommerce.single-product div.product > div {
  overflow: hidden;
  min-width: 0px;
  max-width: 100%;
}
@media (max-width: 1023.98px) {
  .woocommerce.single-product div.product {
    row-gap: 20px;
  }
}
.woocommerce.single-product div.product .single-product-title-container {
  grid-area: title;
}
.woocommerce.single-product div.product .woocommerce-product-gallery {
  grid-area: images;
}
.woocommerce.single-product div.product .summary {
  grid-area: summary;
}
.woocommerce.single-product div.product .woocommerce-tabs {
  grid-area: tabs;
  margin-top: 50px;
}
.woocommerce.single-product div.product .related.products {
  grid-area: related;
}
.woocommerce.single-product div.product .upsells {
  grid-area: upsells;
}
@media (min-width: 1024px) {
  .woocommerce.single-product div.product {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto 1fr;
    grid-template-areas: "images title" "images summary" "tabs tabs" "related related" "upsells upsells";
  }
}
.woocommerce.single-product div.product .price {
  font-size: 2rem;
}
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs {
  list-style: none;
  padding: 0 0 0 1em;
  margin: 0 0 1.618em;
  overflow: hidden;
  position: relative;
  box-shadow: 0px 11px 10px -12px rgba(0, 0, 0, 0.17);
  --tab-border: var(--default-border-color);
  --active-tab: var(--primary-color);
}
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li {
  border: 1px solid var(--tab-border);
  border-bottom: 0px;
  display: inline-block;
  position: relative;
  z-index: 0;
  border-radius: 4px 4px 0 0;
  margin: 0 -2px;
  padding: 0;
}
@media (max-width: 479.98px) {
  .woocommerce.single-product div.product .woocommerce-tabs ul.tabs li {
    font-size: 0.875rem;
  }
}
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li a {
  display: inline-block;
  padding: 0.5em 1em;
  font-weight: 700;
  color: var(--default-text-color);
  text-decoration: none;
}
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li a:hover {
  text-decoration: none;
  color: var(--default-link-color);
}
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li.active {
  background-color: var(--active-tab);
  z-index: 2;
}
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs li.active a {
  color: var(--white-color);
  text-shadow: inherit;
}
.woocommerce.single-product div.product .woocommerce-tabs ul.tabs::before {
  position: absolute;
  content: " ";
  width: 100%;
  bottom: 0;
  left: 0;
  border-bottom: 1px solid var(--tab-border);
  z-index: 1;
}
.woocommerce.single-product div.product .shop_attributes th {
  vertical-align: top;
  text-align: left;
}
.woocommerce.single-product div.product .shop_attributes th:first-letter {
  text-transform: capitalize;
}
.woocommerce.single-product div.product .shop_attributes td {
  vertical-align: top;
  text-align: left;
  padding-left: 10px;
}
.woocommerce.single-product div.product .shop_attributes td p {
  margin: 0;
}
.woocommerce.single-product div.product .shop_attributes td p:first-letter {
  text-transform: capitalize;
}
.woocommerce.single-product div.product .woocommerce-variation-add-to-cart {
  margin: 1em 0;
}
.woocommerce.single-product div.product button.single_add_to_cart_button {
  line-height: 38px;
  padding: 0 15px;
  border-radius: 5px;
  --button-bg-color: var(--primary-color);
  --button-text-color: var(--white-color);
  --button-border-color: var(--primary-color);
  --button-after-color: var(--white-color);
}
@media (max-width: 374px) {
  .woocommerce.single-product div.product button.single_add_to_cart_button {
    font-size: 0.8em;
  }
}
.woocommerce.single-product div.product .quantity {
  display: block;
  float: left;
  margin-right: 7px;
  padding-top: 0px;
}
.woocommerce.single-product div.product p.stock.out-of-stock,
.woocommerce.single-product div.product p.stock.available-on-backorder {
  font-weight: 600;
  border-left: 10px solid red;
  background: var(--gray-color);
  color: var(--white-color);
  padding: 0.5em 1em;
}
.woocommerce.single-product div.product p.in-stock {
  font-weight: 600;
  border-left: 10px solid green;
  background: var(--light-color);
  color: var(--default-text-color);
  padding: 0.5em 1em;
}
.woocommerce.single-product div.product .product_meta {
  margin-top: 1.2em;
}
.woocommerce.single-product div.product .product_meta > span {
  display: block;
}
.woocommerce.single-product div.product .product_meta a {
  font-size: 0.9em;
  font-weight: 600;
  color: var(--default-link-color);
  text-underline-offset: 0.2em;
  text-decoration: underline;
  text-decoration-color: var(--default-link-underline-color);
}
.woocommerce.single-product div.product .product-brands .categories-brands a {
  font-size: 0.95em;
  opacity: 0.75;
  text-decoration: underline;
}
.woocommerce.single-product div.product .woocommerce-product-rating {
  margin-bottom: 1em;
}
.woocommerce.single-product div.product .woocommerce-grouped-product-list {
  margin-bottom: 1em;
}
.woocommerce.single-product div.product .woocommerce-grouped-product-list .woocommerce-grouped-product-list-item__label {
  padding-right: 1em;
}
.woocommerce.single-product div.product .woovr-variation-selector select.woovr-variation-select {
  width: 100%;
  cursor: pointer;
}
.woocommerce.single-product div.product .woovr-variations .woovr-variation {
  border-radius: 3px;
}

.component--upsell-related-products-display-container {
  padding: 2em 0;
}
@media (min-width: 1024px) {
  .component--upsell-related-products-display-container {
    padding: 3em 0;
  }
}
.component--upsell-related-products-display-container ul.products li.product a .price {
  font-size: 0.9375rem;
}

.related-products-heading-container {
  margin-bottom: 1em;
}
@media (min-width: 1280px) {
  .related-products-heading-container {
    margin-bottom: 1.5em;
  }
}

.related-products-heading-container h2 {
  margin: 0.5em 0;
}

.related-products-heading-container .related-products-link-container {
  margin-left: 1em;
  margin-right: 0.5em;
}

/* --------------------------
 *
 * Single product - Image gallery
 *
** ----------------------- */
.woocommerce-product-gallery .flex-viewport {
  border: 1px solid var(--default-border-color);
}

.woocommerce-product-gallery__wrapper {
  margin: 0;
}

.woocommerce-product-gallery .woocommerce-product-gallery__wrapper {
  border: 1px solid var(--default-border-color);
}

.woocommerce-product-gallery .flex-viewport .woocommerce-product-gallery__wrapper {
  border: none;
}

figure.woocommerce-product-gallery__wrapper {
  max-width: none !important;
}

.woocommerce-product-gallery__image--placeholder,
.woocommerce-product-gallery__image > a {
  display: block;
  padding-bottom: 100%;
  width: 100%;
  position: relative;
}

.woocommerce-product-gallery__image--placeholder img,
.woocommerce-product-gallery__image--placeholder > picture,
.woocommerce-product-gallery__image > a > img,
.woocommerce-product-gallery__image > a > picture,
.woocommerce-product-gallery__image > a > picture > img {
  position: absolute;
  width: 100%;
  height: 100%;
  right: 0;
  left: 0;
  top: 0;
  bottom: 0;
  object-fit: contain;
}

.flex-control-thumbs {
  margin: 1.5em 0 1em 0;
  display: grid;
  flex-wrap: wrap;
  padding-left: 0;
  gap: var(--gap, 10px);
  --columns: 4;
  --gap: 10px;
  grid-template-columns: repeat(var(--columns, 4), 1fr);
}
@media (min-width: 480px) {
  .flex-control-thumbs {
    --columns: 4;
  }
}
@media (min-width: 768px) {
  .flex-control-thumbs {
    --columns: 5;
  }
}
@media (min-width: 1024px) {
  .flex-control-thumbs {
    --columns: 6;
  }
}
@media (min-width: 1280px) {
  .flex-control-thumbs {
    --columns: 6;
    --gap: 10px;
  }
}
@media (max-width: 767.98px) {
  .flex-control-thumbs {
    max-height: 300px;
    overflow: auto;
  }
}
@media (max-width: 479.98px) {
  .flex-control-thumbs {
    max-height: 150px;
    overflow: auto;
  }
}
.flex-control-thumbs li {
  display: inline-block;
  padding-bottom: 100%;
  position: relative;
  min-width: 0;
  cursor: pointer;
}
.flex-control-thumbs li:hover > img {
  opacity: 0.8;
}
.flex-control-thumbs li img {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  object-fit: contain;
  min-width: 0;
  opacity: 0.6;
  transition: all 0.3s;
}
.flex-control-thumbs li img.flex-active {
  opacity: 1;
  box-shadow: 2px 2px 8px -2px rgba(21, 21, 21, 0.2784313725);
}

/* --------------------------
 *
 * Woocommerce global
 *
** ----------------------- */
.woocommerce .price {
  display: block;
  line-height: 1;
  font-family: var(--secondary-font);
  font-weight: 700;
  color: var(--list-price-text-color);
  background: var(--list-price-bg);
}
.woocommerce .price ins {
  float: left;
  margin-right: 0.5em;
  text-decoration: none;
}
.woocommerce .price del {
  font-size: 0.8em;
  opacity: 0.5;
  font-weight: 400;
}
.woocommerce .price .price-per-kg {
  color: var(--default-text-color);
  font-size: 0.566em;
  opacity: 1;
  font-weight: 400;
  display: block;
  margin-top: 4px;
}
.woocommerce .price .woocommerce-price-suffix {
  font-size: 0.533em;
  opacity: 0.6;
  font-weight: 400;
  white-space: nowrap;
}
.woocommerce .price .admin_only_reseller_price bdi {
  display: inline-block;
  margin-top: 5px;
}

li.product.type-product.product-type-variable span.woocommerce-Price-amount.amount:last-child,
li.product.type-product.product-type-variable span.woocommerce-Price-amount.amount:nth-child(3) {
  display: none;
}

li.product.type-product.product-type-variable span.woocommerce-Price-amount.amount:first-child:last-child {
  display: block;
}

li.product.type-product.product-type-variable span.price {
  color: #fff;
}

li.product.type-product.product-type-variable span.woocommerce-Price-amount.amount {
  color: var(--list-price-text-color);
}

html[lang=fi] li.product.type-product.product-type-variable span.woocommerce-Price-amount.amount:first-child:before {
  content: "Alk. ";
}

html[lang=sv-SE] li.product.type-product.product-type-variable span.woocommerce-Price-amount.amount:first-child:before {
  content: "Från ";
}

html[lang=en] li.product.type-product.product-type-variable span.woocommerce-Price-amount.amount:first-child:before {
  content: "From ";
}

p.demo_store,
.woocommerce-store-notice {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 99998;
  width: 100%;
  margin: 0;
  font-size: 1em;
  padding: 1em 0;
  text-align: center;
  box-shadow: 0 1px 1em rgba(0, 0, 0, 0.2);
  background-color: var(--primary-color);
  color: var(--default-text-color-primary);
  display: none;
}
p.demo_store a,
.woocommerce-store-notice a {
  text-decoration: underline;
  color: var(--default-link-color-primary);
}

#coming-soon-footer-banner {
  width: 100%;
  margin: 0;
  font-size: 1em;
  padding: 1em 0;
  text-align: center;
  box-shadow: 0 1px 1em rgba(0, 0, 0, 0.2);
  background-color: red;
  color: white;
}
#coming-soon-footer-banner a {
  text-decoration: underline;
  color: white;
}

/* --------------------------
 *
 * Woocommerce loops
 *
** ----------------------- */
.woocommerce ul.products {
  list-style-type: none;
  max-width: 100%;
  margin: 0 auto;
  padding: 0.5em 0;
  display: grid;
  grid-template-columns: repeat(var(--columns, 4), 1fr);
  gap: var(--gap, 20px);
  --gap: 14px;
  --columns: 1;
}
.woocommerce ul.products .catalog-style--default--hide {
  display: none;
}
@media (min-width: 410px) {
  .woocommerce ul.products {
    --columns: 2;
  }
  .woocommerce ul.products.columns-1 {
    --columns: 1;
  }
}
@media (min-width: 480px) {
  .woocommerce ul.products {
    --columns: 2;
  }
  .woocommerce ul.products.columns-1 {
    --columns: 1;
  }
}
@media (min-width: 768px) {
  .woocommerce ul.products {
    --columns: 3;
  }
  .woocommerce ul.products.columns-1 {
    --columns: 1;
  }
  .woocommerce ul.products.columns-2 {
    --columns: 2;
  }
}
@media (min-width: 1024px) {
  .woocommerce ul.products {
    --columns: 4;
  }
  .woocommerce ul.products.columns-1 {
    --columns: 1;
  }
  .woocommerce ul.products.columns-2 {
    --columns: 2;
  }
  .woocommerce ul.products.columns-3 {
    --columns: 3;
  }
}
@media (min-width: 1280px) {
  .woocommerce ul.products {
    --gap: 20px;
  }
  .woocommerce ul.products.columns-1 {
    --columns: 1;
  }
  .woocommerce ul.products.columns-2 {
    --columns: 2;
  }
  .woocommerce ul.products.columns-3 {
    --columns: 3;
  }
  .woocommerce ul.products.columns-4 {
    --columns: 4;
  }
  .woocommerce ul.products.columns-5 {
    --columns: 5;
  }
  .woocommerce ul.products.columns-6 {
    --columns: 6;
  }
}
.woocommerce ul.products li.woocommerce-loop-subtitle {
  grid-column: 1/span var(--columns);
}
.woocommerce ul.products li.product-category.mk-custom-category-layout {
  grid-column: 1/span var(--columns);
}

.woocommerce li.product {
  position: relative;
  min-width: 0;
  margin-bottom: 10px;
}
.woocommerce li.product span.onsale {
  box-shadow: 0 0 3px 0px rgba(0, 0, 0, 0.3);
  position: absolute;
  z-index: 1;
  top: 0.8em;
  left: 0.8em;
  display: block;
  text-align: left;
  background-color: var(--secondary-color);
  font-family: var(--primary-font);
  text-align: center;
  text-transform: uppercase;
  padding: 0.3em 0.8em;
  width: auto;
  border-radius: 5px;
  color: var(--white-color);
  font-weight: 600;
  font-size: 0.8em;
}
.woocommerce li.product .imagewrapper {
  position: relative;
  padding-bottom: 100%;
}
.woocommerce li.product .imagewrapper img, .woocommerce li.product .imagewrapper picture {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.woocommerce li.product .product-loop-info {
  font-weight: 300;
  font-size: 0.9375rem;
  color: var(--default-text-color);
}
.woocommerce li.product .product-loop-info ul {
  list-style: none;
  padding-left: 0;
}
.woocommerce li.product .product-loop-info ul li {
  position: relative;
  padding-top: 0px;
  padding-bottom: 0px;
  padding-left: 1.7em;
}
.woocommerce li.product .product-loop-info ul li::before {
  content: "-";
  position: absolute;
  left: 0.1em;
  font-family: "Font Awesome 6 Pro";
  font-weight: 900;
  font-style: normal;
  width: 1.2em;
  font-size: 1em;
  display: block;
  text-align: center;
}
.woocommerce li.product .product-loop-note {
  font-weight: 600;
  border-left: 10px solid red;
  background: var(--gray-color);
  color: var(--white-color);
  padding: 0.5em 1em;
}
.woocommerce li.product .woocommerce-loop-product__categories {
  margin: 0 0 1rem 0;
  line-height: 1em;
}
.woocommerce li.product .woocommerce-loop-product__categories span,
.woocommerce li.product .woocommerce-loop-product__categories a {
  font-size: 0.75rem;
  font-weight: 400;
  opacity: 0.7;
  line-height: 1em;
  display: inline-block;
}
.woocommerce li.product .woocommerce-loop-product__categories span::after,
.woocommerce li.product .woocommerce-loop-product__categories a::after {
  content: ",";
  margin-right: 0.3em;
}
.woocommerce li.product .woocommerce-loop-product__categories span:last-child::after,
.woocommerce li.product .woocommerce-loop-product__categories a:last-child::after {
  content: "";
}
.woocommerce li.product .woocommerce-loop-category__title {
  text-align: left;
}
.woocommerce li.product .woocommerce-loop-category__title,
.woocommerce li.product .woocommerce-loop-product__title {
  --font-min: 0.875rem;
  --font-max: 1.0625rem;
  font-family: var(--primary-font);
}
.woocommerce li.product .price .price-per-kg {
  display: none;
}
.woocommerce li.product .loop-ratings-container {
  font-size: 0.9em;
}
.woocommerce li.product .loop-ratings-container > a {
  display: inline-block;
  font-size: 0.9em;
}
.woocommerce li.product .product-loop-bottom-container {
  margin: auto 0 0.2rem 0;
}
.woocommerce li.product .product-loop-bottom-container hr {
  margin: 0 0 0.7rem;
}
.woocommerce li.product a.woocommerce-loop-product__link {
  flex-direction: column;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
.woocommerce li.product a.woocommerce-loop-product__link > * {
  width: 100%;
}
.woocommerce li.product .product-loop-infolink-container span.dummy-link {
  font-size: 1rem;
  --font-min: 0.75rem;
  --font-max: 1rem;
  font-size: max(var(--font-min), min(var(--sizer, 3vw), var(--font-max)));
  font-size: clamp(var(--font-min), var(--sizer, 3vw), var(--font-max));
}
.woocommerce li.product .imagewrapper,
.woocommerce li.product .product__categories,
.woocommerce li.product .woocommerce-loop-product__title,
.woocommerce li.product .product-loop-info,
.woocommerce li.product .price,
.woocommerce li.product .product-loop-note,
.woocommerce li.product .loop-ratings-container {
  margin: 0 0 1rem 0;
}

.product-loop-item--inner-container {
  --padding: 10px;
  height: 100%;
  transition: box-shadow 0.2s, transform 0.2s;
}
.product-loop-item--inner-container > a {
  display: block;
  min-height: 100%;
  padding: var(--padding);
}
@media (min-width: 1024px) {
  .product-loop-item--inner-container {
    --padding: 15px;
  }
}
@media (min-width: 1024px) {
  .product-loop-item--inner-container:hover {
    box-shadow: 3px 3px 9px -2px rgba(0, 0, 0, 0.3) !important;
    transform: translateY(-3px);
  }
}
@media (min-width: 1280px) {
  .product-loop-item--inner-container {
    --padding: 25px;
  }
}

.woocommerce li.mk-custom-category-layout .product-category-loop-item--inner-container {
  margin-bottom: 2.5em;
}
.woocommerce li.mk-custom-category-layout .product-category-loop-item--category-info-container {
  margin-bottom: 1em;
}
.woocommerce li.mk-custom-category-layout .product-category-loop-item--products-container {
  margin-bottom: 1em;
}
.woocommerce li.mk-custom-category-layout .woocommerce-loop-category__title {
  text-align: left;
}
.woocommerce li.mk-custom-category-layout .woocommerce-loop-category__title {
  --font-min: 1.5625rem;
  --font-max: 2.5rem;
  font-family: var(--secondary-font);
  font-weight: 500;
}

.component--upsell-related-products-display-container ul.products,
body.catalog-grid--small .apply-catalog-layout > ul.products, .catalog-style--small {
  --gap: 14px;
  --columns: 1;
}
.component--upsell-related-products-display-container ul.products .catalog-style--small--hide,
body.catalog-grid--small .apply-catalog-layout > ul.products .catalog-style--small--hide, .catalog-style--small .catalog-style--small--hide {
  display: none;
}
.component--upsell-related-products-display-container ul.products .woocommerce-loop-category__title,
body.catalog-grid--small .apply-catalog-layout > ul.products .woocommerce-loop-category__title, .catalog-style--small .woocommerce-loop-category__title {
  text-align: center;
}
.component--upsell-related-products-display-container ul.products .product-loop-item--inner-container,
body.catalog-grid--small .apply-catalog-layout > ul.products .product-loop-item--inner-container, .catalog-style--small .product-loop-item--inner-container {
  --padding: 10px;
}
@media (min-width: 1024px) {
  .component--upsell-related-products-display-container ul.products .product-loop-item--inner-container,
  body.catalog-grid--small .apply-catalog-layout > ul.products .product-loop-item--inner-container, .catalog-style--small .product-loop-item--inner-container {
    --padding: 12px;
  }
}
@media (min-width: 1280px) {
  .component--upsell-related-products-display-container ul.products .product-loop-item--inner-container,
  body.catalog-grid--small .apply-catalog-layout > ul.products .product-loop-item--inner-container, .catalog-style--small .product-loop-item--inner-container {
    --padding: 18px;
  }
}
@media (min-width: 410px) {
  .component--upsell-related-products-display-container ul.products,
  body.catalog-grid--small .apply-catalog-layout > ul.products, .catalog-style--small {
    --gap: 20px;
  }
  .component--upsell-related-products-display-container ul.products.columns-1, .component--upsell-related-products-display-container ul.products.columns-2, .component--upsell-related-products-display-container ul.products.columns-3, .component--upsell-related-products-display-container ul.products.columns-4, .component--upsell-related-products-display-container ul.products.columns-5, .component--upsell-related-products-display-container ul.products.columns-6,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-1,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-2,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-3,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-4,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-5,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-6, .catalog-style--small.columns-1, .catalog-style--small.columns-2, .catalog-style--small.columns-3, .catalog-style--small.columns-4, .catalog-style--small.columns-5, .catalog-style--small.columns-6 {
    --columns: 1;
  }
}
@media (min-width: 480px) {
  .component--upsell-related-products-display-container ul.products,
  body.catalog-grid--small .apply-catalog-layout > ul.products, .catalog-style--small {
    --gap: 20px;
  }
  .component--upsell-related-products-display-container ul.products.columns-1, .component--upsell-related-products-display-container ul.products.columns-2, .component--upsell-related-products-display-container ul.products.columns-3, .component--upsell-related-products-display-container ul.products.columns-4, .component--upsell-related-products-display-container ul.products.columns-5, .component--upsell-related-products-display-container ul.products.columns-6,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-1,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-2,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-3,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-4,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-5,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-6, .catalog-style--small.columns-1, .catalog-style--small.columns-2, .catalog-style--small.columns-3, .catalog-style--small.columns-4, .catalog-style--small.columns-5, .catalog-style--small.columns-6 {
    --columns: 2;
  }
}
@media (min-width: 768px) {
  .component--upsell-related-products-display-container ul.products,
  body.catalog-grid--small .apply-catalog-layout > ul.products, .catalog-style--small {
    --gap: 20px;
  }
  .component--upsell-related-products-display-container ul.products.columns-1, .component--upsell-related-products-display-container ul.products.columns-2, .component--upsell-related-products-display-container ul.products.columns-3, .component--upsell-related-products-display-container ul.products.columns-4, .component--upsell-related-products-display-container ul.products.columns-5, .component--upsell-related-products-display-container ul.products.columns-6,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-1,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-2,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-3,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-4,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-5,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-6, .catalog-style--small.columns-1, .catalog-style--small.columns-2, .catalog-style--small.columns-3, .catalog-style--small.columns-4, .catalog-style--small.columns-5, .catalog-style--small.columns-6 {
    --columns: 3;
  }
}
@media (min-width: 1024px) {
  .component--upsell-related-products-display-container ul.products,
  body.catalog-grid--small .apply-catalog-layout > ul.products, .catalog-style--small {
    --gap: 20px;
  }
  .component--upsell-related-products-display-container ul.products.columns-1, .component--upsell-related-products-display-container ul.products.columns-2, .component--upsell-related-products-display-container ul.products.columns-3, .component--upsell-related-products-display-container ul.products.columns-4, .component--upsell-related-products-display-container ul.products.columns-5, .component--upsell-related-products-display-container ul.products.columns-6,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-1,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-2,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-3,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-4,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-5,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-6, .catalog-style--small.columns-1, .catalog-style--small.columns-2, .catalog-style--small.columns-3, .catalog-style--small.columns-4, .catalog-style--small.columns-5, .catalog-style--small.columns-6 {
    --columns: 4;
  }
}
@media (min-width: 1280px) {
  .component--upsell-related-products-display-container ul.products,
  body.catalog-grid--small .apply-catalog-layout > ul.products, .catalog-style--small {
    --gap: 20px;
  }
  .component--upsell-related-products-display-container ul.products.columns-1, .component--upsell-related-products-display-container ul.products.columns-2, .component--upsell-related-products-display-container ul.products.columns-3, .component--upsell-related-products-display-container ul.products.columns-4, .component--upsell-related-products-display-container ul.products.columns-5, .component--upsell-related-products-display-container ul.products.columns-6,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-1,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-2,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-3,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-4,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-5,
  body.catalog-grid--small .apply-catalog-layout > ul.products.columns-6, .catalog-style--small.columns-1, .catalog-style--small.columns-2, .catalog-style--small.columns-3, .catalog-style--small.columns-4, .catalog-style--small.columns-5, .catalog-style--small.columns-6 {
    --columns: 5;
  }
}

.woocommerce.wc-scrollable {
  /* Shadow styling */
}
.woocommerce.wc-scrollable {
  --scrollable-columns-padding: 8px;
  position: relative;
  z-index: 1;
  margin: 0 calc(var(--scrollable-columns-padding) * -1);
  width: auto;
  max-width: none;
}
.woocommerce.wc-scrollable > ul.products {
  width: auto;
  max-width: none;
  scrollbar-color: var(--secondary-color) transparent;
  overflow: auto;
  cursor: grab;
}
.woocommerce.wc-scrollable {
  -webkit-touch-callout: none; /* iOS Safari */ /* Safari */ /* Konqueror HTML */ /* Old versions of Firefox */ /* Internet Explorer/Edge */
  user-select: none; /* Non-prefixed version, currently
   supported by Chrome, Edge, Opera and Firefox */
}
.woocommerce.wc-scrollable ul.products {
  display: flex;
  gap: 0;
}
.woocommerce.wc-scrollable ul.products li.product {
  width: 290px;
  max-width: 95%;
  flex: 0 0 auto;
  padding: 0 var(--scrollable-columns-padding);
}
.woocommerce.wc-scrollable ul.products li.product a > * {
  pointer-events: none;
}
.woocommerce.wc-scrollable ul.products li.product a {
  -webkit-user-drag: none;
  -moz-user-drag: none;
  user-drag: none;
}
.woocommerce.wc-scrollable ul.products li.product a .price {
  font-size: 0.9375rem;
}
.woocommerce.wc-scrollable ul.products li.product a .product-loop-info {
  font-size: 0.75rem;
}
@media (min-width: 1280px) {
  .woocommerce.wc-scrollable.columns-1 {
    --scrollable-columns-padding:20px;
  }
  .woocommerce.wc-scrollable.columns-2 {
    --scrollable-columns-padding:20px;
  }
  .woocommerce.wc-scrollable.columns-3 {
    --scrollable-columns-padding:20px;
  }
  .woocommerce.wc-scrollable.columns-4 {
    --scrollable-columns-padding:12px;
  }
  .woocommerce.wc-scrollable.columns-5 {
    --scrollable-columns-padding:10px;
  }
  .woocommerce.wc-scrollable.columns-6 {
    --scrollable-columns-padding:8px;
  }
  .woocommerce.wc-scrollable.columns-1 ul.products li.product {
    width: 340px;
  }
  .woocommerce.wc-scrollable.columns-2 ul.products li.product {
    width: 47%;
  }
  .woocommerce.wc-scrollable.columns-3 ul.products li.product {
    width: 31%;
  }
  .woocommerce.wc-scrollable.columns-4 ul.products li.product {
    width: 23%;
  }
  .woocommerce.wc-scrollable.columns-5 ul.products li.product {
    width: 18.3%;
  }
  .woocommerce.wc-scrollable.columns-6 ul.products li.product {
    width: 15.5%;
  }
}
.woocommerce.wc-scrollable .product-loop-item--inner-container {
  --padding: 20px;
}
.woocommerce.wc-scrollable {
  --left-shadow-opacity: 0;
  --right-shadow-opacity: 0;
}
.woocommerce.wc-scrollable::before, .woocommerce.wc-scrollable::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: 0;
  bottom: 0;
  width: 20px;
  pointer-events: none;
  transition: opacity 0.3s;
}
.woocommerce.wc-scrollable::before {
  left: 0;
  opacity: var(--left-shadow-opacity);
  background: radial-gradient(farthest-side at 0 50%, rgba(0, 0, 0, 0.2), rgba(255, 255, 255, 0));
}
.woocommerce.wc-scrollable::after {
  right: 0;
  opacity: var(--right-shadow-opacity);
  background: radial-gradient(farthest-side at 100% 50%, rgba(0, 0, 0, 0.2), rgba(255, 255, 255, 0));
}

/* --------------------------
 *
 * Woocommerce ratings
 *
** ----------------------- */
.woocommerce p.stars span {
  display: block;
  line-height: 1em;
}

.woocommerce p.stars a::before {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 1em;
  height: 1em;
  line-height: 1;
  font-family: WooCommerce;
  content: "\e021";
  text-indent: 0;
}

.woocommerce p.stars a {
  color: rgba(0, 0, 0, 0.4);
  position: relative;
  line-height: 1em;
  height: 1em;
  width: 1em;
  margin: 0 -3px 0 0;
  text-indent: -999em;
  display: inline-block;
  text-decoration: none;
}

.woocommerce .star-rating span::before, .woocommerce p.stars:hover a::before {
  color: var(--secondary-color);
}

.woocommerce p.stars.selected a::before {
  color: var(--secondary-color);
}

.woocommerce p.stars.selected a:not(.active)::before,
.woocommerce p.stars.selected a.active::before {
  content: "\e020";
}

.woocommerce p.stars:hover a::before {
  content: "\e020";
}

.woocommerce p.stars a:hover ~ a::before {
  content: "\e021";
}

.woocommerce p.stars.selected a.active ~ a::before {
  content: "\e021";
}

.woocommerce .star-rating span:before, .woocommerce p.stars:hover a::before {
  color: var(--secondary-color);
}

.woocommerce .woocommerce-product-rating:after {
  clear: both;
  display: block;
  content: "";
}

.woocommerce .star-rating {
  float: left;
  overflow: hidden;
  position: relative;
  height: 1em;
  line-height: 1;
  font-size: 1.2em;
  margin-right: 0.3em;
  width: 5.4em;
  font-family: star;
}

.woocommerce .woocommerce-review-link {
  float: left;
  display: block;
}

.woocommerce .star-rating:before {
  color: rgba(0, 0, 0, 0.4);
}

.woocommerce .star-rating::before {
  content: "sssss";
  color: #d3ced2;
  float: left;
  top: 0;
  left: 0;
  position: absolute;
}

.woocommerce .star-rating span::before {
  content: "SSSSS";
  top: 0;
  position: absolute;
  left: 0;
}

.woocommerce .star-rating span {
  overflow: hidden;
  float: left;
  top: 0;
  left: 0;
  position: absolute;
  padding-top: 1.5em;
}

.woocommerce div.product > div.woocommerce-tabs {
  overflow: visible;
}

#reviews ol.commentlist {
  list-style: none;
  padding: 0;
}
#reviews ol.commentlist li {
  padding: 20px 0 20px 0;
  border-bottom: 1px solid var(--default-hr-color);
}
#reviews ol.commentlist li > div {
  position: relative;
  padding-left: 60px;
}
#reviews ol.commentlist li > div:after {
  content: "";
  clear: both;
  display: block;
}
#reviews ol.commentlist li > div > img {
  position: absolute;
  left: 0;
  top: 0;
  border-radius: 50px;
}
#reviews ol.commentlist li > div > div.comment-text {
  float: left;
  padding-left: 1em;
  margin-top: 0px;
}
#reviews .comment-text p {
  margin: 0 0 0.5em 0;
}
#reviews .comment-text p.meta {
  margin: 0.5em 0;
  font-size: 0.9em;
}
#reviews .comment-text .star-rating {
  margin: 0;
  display: block;
  float: none;
}

#review_form_wrapper {
  margin: 2em 0 0 0;
}

#review_form #respond span#reply-title {
  font-size: 1.4em;
  font-weight: 600;
  font-family: var(--secondary-font);
  margin-bottom: 0.3em;
  display: block;
}
#review_form #respond .comment-form-rating {
  margin-bottom: 0.5em;
}
#review_form #respond .comment-form-rating label {
  display: inline-block;
  margin-right: 0.5em;
}
#review_form #respond .comment-form-rating p.stars {
  display: inline-block;
  margin: 0;
}
#review_form #respond .comment-form-comment label {
  display: block;
  display: none;
}
#review_form #respond .comment-form-comment textarea {
  width: 600px;
}

/* --------------------------
 *
 * My account / Dashboard
 *
** ----------------------- */
.logged-in.woocommerce-account:not(.woocommerce-lost-password) .component--singular-content .woocommerce {
  display: grid;
  grid-template-columns: 240px 1fr;
  grid-template-areas: "navigation content-area";
}
@media (max-width: 767.98px) {
  .logged-in.woocommerce-account:not(.woocommerce-lost-password) .component--singular-content .woocommerce {
    display: block;
  }
}
.logged-in.woocommerce-account:not(.woocommerce-lost-password) .component--singular-content a.edit {
  display: inline-block;
}
.logged-in.woocommerce-account:not(.woocommerce-lost-password) .component--singular-content .woocommerce-MyAccount-content header {
  margin: 1em 0 0 0;
}
.logged-in.woocommerce-account:not(.woocommerce-lost-password) .component--singular-content .woocommerce-MyAccount-content .woocommerce-Address {
  margin-bottom: 1em;
}
.logged-in.woocommerce-account:not(.woocommerce-lost-password) .component--singular-content .woocommerce-MyAccount-navigation {
  grid-area: navigation;
}
.logged-in.woocommerce-account:not(.woocommerce-lost-password) .component--singular-content .woocommerce-MyAccount-content {
  grid-area: content-area;
}
@media (min-width: 768px) {
  .logged-in.woocommerce-account:not(.woocommerce-lost-password) .component--singular-content .woocommerce-MyAccount-content {
    padding-left: 1em;
  }
}

.woocommerce-EditAccountForm p:last-child {
  margin-top: 1em;
}

.woocommerce-MyAccount-navigation {
  padding-right: 0;
  padding-bottom: 1em;
  margin-bottom: 1em;
  border-bottom: 1px solid var(--default-hr-color);
}
.woocommerce-MyAccount-navigation ul {
  display: flex;
  justify-content: space-evenly;
  flex-wrap: wrap;
  flex-direction: row;
  padding: 0;
  margin: 0;
  list-style: none;
}
.woocommerce-MyAccount-navigation ul li {
  display: block;
  margin: 1px;
}
.woocommerce-MyAccount-navigation ul li a {
  display: block;
  padding: 5px 8px;
  background: transparent;
  color: var(--default-text-color);
}
.woocommerce-MyAccount-navigation ul li.is-active a {
  background-color: var(--secondary-color);
  color: var(--default-link-color-secondary);
}
.woocommerce-MyAccount-navigation ul li > a:before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1;
  font-family: "Font Awesome 6 Pro";
  margin: 0 0.3em 0 0;
  width: 1.3em;
  text-align: center;
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--dashboard a:before {
  content: "\f015";
  font-weight: 900;
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--orders a:before {
  content: "\f290";
  font-weight: 900;
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--edit-address a:before {
  content: "\f3c5";
  font-weight: 900;
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--edit-account a:before {
  content: "\f2bb";
  font-weight: 900;
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a:before {
  content: "\f08b";
  font-weight: 900;
}
.woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--payment-methods a:before {
  content: "\f044";
  font-weight: 900;
}
@media (min-width: 768px) {
  .woocommerce-MyAccount-navigation {
    padding-bottom: 0;
    margin-bottom: 0;
    border: 0;
    border-right: 1px solid var(--default-hr-color);
  }
  .woocommerce-MyAccount-navigation ul {
    flex-direction: column;
  }
  .woocommerce-MyAccount-navigation ul li {
    display: block;
  }
}

.woocommerce-ResetPassword.lost_reset_password .form-row .password-input,
.woocommerce-ResetPassword.lost_reset_password .woocommerce-form-row.woocommerce-form-row--wide .password-input,
.woocommerce-EditAccountForm.edit-account .form-row .password-input,
.woocommerce-EditAccountForm.edit-account .woocommerce-form-row.woocommerce-form-row--wide .password-input,
.woocommerce-form.woocommerce-form-login .form-row .password-input,
.woocommerce-form.woocommerce-form-login .woocommerce-form-row.woocommerce-form-row--wide .password-input {
  position: relative;
  display: block;
}
.woocommerce-ResetPassword.lost_reset_password .form-row .password-input input,
.woocommerce-ResetPassword.lost_reset_password .woocommerce-form-row.woocommerce-form-row--wide .password-input input,
.woocommerce-EditAccountForm.edit-account .form-row .password-input input,
.woocommerce-EditAccountForm.edit-account .woocommerce-form-row.woocommerce-form-row--wide .password-input input,
.woocommerce-form.woocommerce-form-login .form-row .password-input input,
.woocommerce-form.woocommerce-form-login .woocommerce-form-row.woocommerce-form-row--wide .password-input input {
  padding-right: 40px;
}
.woocommerce-ResetPassword.lost_reset_password span.show-password-input,
.woocommerce-ResetPassword.lost_reset_password button.show-password-input,
.woocommerce-EditAccountForm.edit-account span.show-password-input,
.woocommerce-EditAccountForm.edit-account button.show-password-input,
.woocommerce-form.woocommerce-form-login span.show-password-input,
.woocommerce-form.woocommerce-form-login button.show-password-input {
  position: absolute;
  display: block;
  right: 0;
  top: 0;
  bottom: 0;
  line-height: 1;
  padding: 10px 12px 10px 10px;
  border: 0;
  background: none;
  cursor: pointer;
}
.woocommerce-ResetPassword.lost_reset_password span.show-password-input.display-password,
.woocommerce-ResetPassword.lost_reset_password button.show-password-input.display-password,
.woocommerce-EditAccountForm.edit-account span.show-password-input.display-password,
.woocommerce-EditAccountForm.edit-account button.show-password-input.display-password,
.woocommerce-form.woocommerce-form-login span.show-password-input.display-password,
.woocommerce-form.woocommerce-form-login button.show-password-input.display-password {
  opacity: 0.5;
}
.woocommerce-ResetPassword.lost_reset_password .show-password-input::after,
.woocommerce-EditAccountForm.edit-account .show-password-input::after,
.woocommerce-form.woocommerce-form-login .show-password-input::after {
  font-family: WooCommerce;
  speak: never;
  font-weight: 400;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  content: "\e010";
  text-decoration: none;
  margin-left: 0;
  vertical-align: middle;
  display: inline-block;
}

input[type=text],
input[type=email],
input[type=url],
input[type=tel],
input[type=password],
input[type=number],
input[type=search],
select,
textarea {
  padding: 10px;
  border: 1px solid var(--default-border-color);
  max-width: 100%;
  border-radius: 5px;
  transition: box-shadow 0.1s ease-out;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=tel]:focus,
input[type=password]:focus,
input[type=number]:focus,
input[type=search]:focus,
select:focus,
textarea:focus {
  box-shadow: inset var(--primary-color) 0 0 0 1px;
}

/*
Custom select styles
Styling a Select Like It's 2019 https://www.filamentgroup.com/lab/select-css.html
*/
select.stylized, select.woovr-variation-select {
  display: block;
  appearance: none;
  border-radius: 4px;
  min-width: 30%;
  padding: 13px 15px;
  padding-right: 2.5rem;
  background-color: var(--white-color);
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="50" viewBox="0 0 960 560" fill="black"><g><path d="M480,344.181L268.869,131.889c-15.756-15.859-41.3-15.859-57.054,0c-15.754,15.857-15.754,41.57,0,57.431l237.632,238.937c8.395,8.451,19.562,12.254,30.553,11.698c10.993,0.556,22.159-3.247,30.555-11.698l237.631-238.937c15.756-15.86,15.756-41.571,0-57.431s-41.299-15.859-57.051,0L480,344.181z"/></g></svg>');
  background-size: 22px;
  background-position: calc(100% - 10px) center;
  background-repeat: no-repeat;
  font-size: 1rem;
}

/* --------------------------
 *
 * Some links
 *
** ----------------------- */
.some-icons,
.some-links {
  display: flex;
  align-items: center;
}
.some-icons.text-center,
.some-links.text-center {
  justify-content: center;
}
.some-icons.add-margin,
.some-links.add-margin {
  margin: 1em 0;
}
.some-icons > *:not(:last-child),
.some-links > *:not(:last-child) {
  margin-right: 0.55em;
}
.some-icons a,
.some-links a {
  --some-icon-size: 40px;
  --some-icon-line-height: 38px;
  --some-icon-color: var(--secondary-color);
  --some-icon-background-color: transparent;
  --some-icon-border-color: var(--default-border-color);
  display: inline-block;
  text-align: center;
  border-radius: 6px;
  color: var(--some-icon-color);
  background-color: var(--some-icon-background-color);
  border: 1px solid var(--some-icon-border-color);
  width: var(--some-icon-size);
  height: var(--some-icon-size);
  line-height: var(--some-icon-line-height);
}
.some-icons a i,
.some-links a i {
  display: block;
  line-height: var(--some-icon-line-height);
  height: var(--some-icon-line-height);
}
.some-icons a i::before,
.some-links a i::before {
  display: block;
  line-height: var(--some-icon-line-height);
  height: var(--some-icon-line-height);
  margin: 0;
}
.some-icons .icon-text,
.some-links .icon-text {
  display: none;
}
.some-icons .some-icons-widget,
.some-links .some-icons-widget {
  font-size: 1em;
}
.some-icons .widget_somewidget,
.some-links .widget_somewidget {
  width: auto !important;
}

#mobilenav .some-links a, #mobilenav .some-icons a,
.background--primary-color .some-links a,
.background--primary-color .some-icons a {
  --some-icon-color: var(--white-color);
  --some-icon-background-color: transparent;
  --some-icon-border-color: var(--secondary-color);
}

.background--secondary-color .some-links a, .background--secondary-color .some-icons a {
  --some-icon-color: var(--primary-color);
  --some-icon-background-color: transparent;
  --some-icon-border-color: var(--primary-color);
}

.background--tertiary-color .some-links a, .background--tertiary-color .some-icons a {
  --some-icon-color: var(--white-color);
  --some-icon-background-color: transparent;
  --some-icon-border-color: var(--secondary-color);
}

.personnel-list .persons {
  margin: 2em 0 3em 0;
  max-width: 100%;
  justify-items: center;
}
.personnel-list .taxonomy-group .persons {
  justify-items: start;
}
.personnel-list article.person {
  padding: 1.2em;
  position: relative;
  width: 100%;
  min-width: 0;
  max-width: calc(300px + 1.2em);
}
.personnel-list article.person .person__image {
  width: 100%;
  margin-bottom: 1em;
}
.personnel-list article.person .person__image img {
  display: block;
}
.personnel-list article.person .person__title {
  margin-bottom: 1em;
}
.personnel-list article.person .person__name h3 {
  --font-min: 1.375rem;
  --sizer: 3vw;
  --font-max: 1.625rem;
  font-weight: 700;
  color: var(--default-heading-color-h4);
  line-height: 1.3em;
}
.personnel-list article.person.person-unavailable {
  padding-bottom: 4em;
}
.personnel-list article.person.person-unavailable .person__image img {
  filter: grayscale(100%);
}
.personnel-list article.person .unavailable-reason {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: var(--dark-color);
  padding: 0.5em;
  text-align: center;
  color: var(--white-color);
  font-weight: 500;
}
.personnel-list article.person .person__email, .personnel-list article.person .person__phone-number {
  word-break: break-word;
}
.personnel-list article.person .person__info {
  font-size: 1.0625rem;
}
.personnel-list article.person .post-edit-link {
  opacity: 0;
  pointer-events: none;
  z-index: 1;
  position: absolute;
  font-size: 0.8em;
  top: -0.5em;
  left: -0.5em;
  background: #c61c1c !important;
  color: #fff !important;
  font-weight: 700;
  padding: 0.4em 1em;
  border-radius: 5px;
  box-shadow: 3px 3px 7px 0px rgba(0, 0, 0, 0.5294117647);
  transition: all 0.3s;
}
.personnel-list article.person:hover .post-edit-link {
  opacity: 1;
  pointer-events: all;
}
.personnel-list .person__phone-number a,
.personnel-list .person__email a,
.personnel-list .person__linkedin a {
  display: inline-block;
}
.personnel-list .person__phone-number a::before,
.personnel-list .person__email a::before,
.personnel-list .person__link a::before,
.personnel-list .person__linkedin a::before {
  font-family: "Font Awesome 6 Pro";
  font-weight: 900;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  margin-right: 0.2em;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.personnel-list .person__phone-number a::before {
  font-weight: 900;
  content: "\f095";
}
.personnel-list .person__email a::before {
  font-weight: 900;
  content: "\f0e0";
}
.personnel-list .person__link a::before {
  font-weight: 400;
  content: "\f08e";
}
.personnel-list .person__linkedin a::before {
  font-weight: 400;
  content: "\f08c";
  font-family: "Font Awesome 6 Brands";
}

/* --------------------------
*
* Styles for partners
*
** ----------------------- */
.partners-grid.flex .partner-card {
  width: auto;
}

.partner-card {
  --hover-bg-color: var(--white-color);
  --hover-text-color: var(--default-text-color);
}
.partner-card {
  padding: 1em;
  height: 100%;
  z-index: 1;
  position: relative;
}
.partner-card > .image-container img {
  display: block;
}
.partner-card .image-container {
  min-height: 4em;
}
.partner-card .image-container > a {
  display: inline-block;
}
.partner-card .partner-card-title {
  margin: 0.4em 0;
}
.partner-card .partner-card-content {
  margin: 0.4em 0;
  line-height: 1.1;
}
.partner-card .partner-card-large-content {
  margin: 0.4em 0;
}
.partner-card .partner-card-large-content *:last-child {
  margin-bottom: 0;
}
.partner-card:focus-within {
  z-index: 2;
}
.partner-card:hover {
  z-index: 3;
}
.partner-card .content-show-hover {
  display: none;
}
.partner-card .absolute-middle {
  max-width: 100%;
  overflow-x: clip;
}
.partner-card .content-show-hover-absolute {
  padding: 1em;
  opacity: 0;
  transition: all 0.3s;
  pointer-events: none;
  position: absolute;
  left: 0%;
  top: 0%;
  right: 0%;
  min-height: 100%;
  min-height: 100%;
  color: var(--hover-text-color);
  background-color: var(--hover-bg-color);
  box-shadow: 0px 10px 20px -3px rgba(43, 43, 43, 0.5);
  border-radius: 8px;
}

.partners-shortcode-container:not(.no-hover) .partners-grid .partner-card:focus-within .content-show-hover, .partners-shortcode-container:not(.no-hover) .partners-grid .partner-card:hover .content-show-hover {
  display: block;
}
.partners-shortcode-container:not(.no-hover) .partners-grid .partner-card .content-show-hover-absolute * {
  color: var(--hover-text-color);
}
.partners-shortcode-container:not(.no-hover) .partners-grid .partner-card:focus-within .content-show-hover-absolute, .partners-shortcode-container:not(.no-hover) .partners-grid .partner-card:hover .content-show-hover-absolute {
  opacity: 1;
  pointer-events: all;
  left: -15px;
  top: -20%;
  right: -15px;
  min-height: 140%;
}
.card-type-small .partners-shortcode-container:not(.no-hover) .partners-grid .partner-card:focus-within .content-show-hover-absolute, .card-type-small .partners-shortcode-container:not(.no-hover) .partners-grid .partner-card:hover .content-show-hover-absolute {
  top: -10%;
  min-height: 120%;
}

/* --------------------------
 *
 * Events
 *
** ----------------------- */
article.type-event .entry-meta {
  font-size: 1.2em;
  font-weight: 700;
  font-family: var(--secondary-font);
  color: var(--primary-color);
}

ul.event-archive-link-list {
  padding: 0;
  margin: 1.5em 0 2.5em 0;
  list-style: none;
  text-align: center;
}
ul.event-archive-link-list li {
  display: inline-block;
}
ul.event-archive-link-list li.separator {
  margin: 0 0.2em;
}
ul.event-archive-link-list li a {
  color: var(--default-text-color);
  font-size: 1.16em;
}
ul.event-archive-link-list li.active a {
  color: var(--primary-color);
}

/* --------------------------
*
* Styles for references
*
** ----------------------- */
article .reference-category-list {
  list-style: none;
  padding: 0;
  margin: 1.5em 0;
}
article .reference-category-list li {
  display: inline-block;
  margin: 2px;
  padding: 0;
}
article .reference-category-list li a {
  display: inline-block;
  margin: 0;
  padding: 4px 8px;
  background-color: var(--light-color);
  border-radius: 4px;
  border: 1px solid var(--default-border-color);
  color: var(--default-text-color-light) !important;
  font-size: 0.875rem;
  font-weight: 400 !important;
  text-decoration: none !important;
}

article.tease .reference-category-list h2.entry-title {
  margin-bottom: 1rem;
}
article.tease .reference-category-list {
  margin: 1rem 0;
}

article .reference-article-image--container {
  position: relative;
  margin-bottom: 2em;
}
article .reference-article-image--container .reference-article-image--caption {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 10%;
  text-align: center;
}
article .reference-article-image--container .reference-article-image--caption .caption-inner {
  padding: 1em;
  margin: 0;
  background-color: var(--primary-color);
  opacity: 0.9;
  color: var(--white-color);
  display: inline-block;
}

/* --------------------------
*
* Styles for testimonials
*
** ----------------------- */
.testimonials-shortcode-container {
  --arrow-font-size: 35px;
  margin: 2em 0 6em 0;
  position: relative;
}
@media (min-width: 1024px) {
  .testimonials-shortcode-container {
    --arrow-font-size: 45px;
    margin: 2em 50px;
  }
}
@media (min-width: 1280px) {
  .testimonials-shortcode-container {
    --arrow-font-size: 64px;
    margin: 2em 100px;
  }
}
.testimonials-shortcode-container .testimonials-slider-previous {
  left: auto;
  right: 50%;
  margin-right: 20px;
  position: absolute;
}
@media (min-width: 1024px) {
  .testimonials-shortcode-container .testimonials-slider-previous {
    left: -60px;
    right: auto;
  }
}
@media (min-width: 1280px) {
  .testimonials-shortcode-container .testimonials-slider-previous {
    left: -100px;
    right: auto;
  }
}
.testimonials-shortcode-container .testimonials-slider-next {
  right: auto;
  left: 50%;
  margin-left: 20px;
  position: absolute;
}
@media (min-width: 1024px) {
  .testimonials-shortcode-container .testimonials-slider-next {
    right: -60px;
    left: auto;
  }
}
@media (min-width: 1280px) {
  .testimonials-shortcode-container .testimonials-slider-next {
    right: -100px;
    left: auto;
  }
}
.testimonials-shortcode-container .testimonials-slider-previous,
.testimonials-shortcode-container .testimonials-slider-next {
  top: auto;
  bottom: calc(var(--arrow-font-size) * -2);
  cursor: pointer;
  height: auto;
  font-size: var(--arrow-font-size);
  background: transparent;
  padding: 0;
  border: 0;
}
@media (min-width: 1024px) {
  .testimonials-shortcode-container .testimonials-slider-previous,
  .testimonials-shortcode-container .testimonials-slider-next {
    top: calc(50% - var(--arrow-font-size) / 2);
    bottom: auto;
  }
}
@media (min-width: 1280px) {
  .testimonials-shortcode-container .testimonials-slider-previous,
  .testimonials-shortcode-container .testimonials-slider-next {
    top: calc(50% - var(--arrow-font-size) / 2);
    bottom: auto;
    z-index: 2;
    cursor: pointer;
  }
}
.testimonials-shortcode-container .tiny-testimonial-slider {
  display: flex;
}
.testimonials-shortcode-container .testimonial-card {
  padding: 1.5em 1.2em;
  margin: 0 auto;
  height: 100%;
  text-align: center;
}
@media (min-width: 768px) {
  .testimonials-shortcode-container .testimonial-card {
    padding: 1.8em 1.5em;
  }
}
@media (min-width: 1024px) {
  .testimonials-shortcode-container .testimonial-card {
    padding: 2.2em 2em;
  }
}
.testimonials-shortcode-container .testimonial-logo {
  margin-top: 1em;
}
.testimonials-shortcode-container .testimonial-logo img, .testimonials-shortcode-container .testimonial-logo picture {
  max-width: 80%;
  max-height: 150px;
}
.testimonials-shortcode-container .testimonial-quotation {
  font-size: 6rem;
  padding-right: 0px;
  display: inline-block;
  margin-bottom: -0.3em;
  line-height: 0.9em;
  pointer-events: none;
}
@media (min-width: 480px) {
  .testimonials-shortcode-container .testimonial-quotation {
    font-size: 8rem;
    padding-right: 8px;
  }
}
@media (min-width: 768px) {
  .testimonials-shortcode-container .testimonial-quotation {
    font-size: 10rem;
    padding-right: 15px;
  }
}
.testimonials-shortcode-container h4.testimonial-card-title {
  text-indent: 0;
}
.testimonials-shortcode-container .testimonial-card-rating i:before {
  margin: 0;
}
.testimonials-shortcode-container .testimonial-card-rating i.far::before {
  opacity: 0.25;
}
.testimonials-shortcode-container .testimonial-card-content {
  padding: 1em 0;
}
.testimonials-shortcode-container .testimonial-card-content > *:last-child {
  margin-bottom: 0;
}
.testimonials-shortcode-container .testimonial-card-writer {
  margin-bottom: 0.5em;
  font-size: 0.85em;
  opacity: 1;
}
.testimonials-shortcode-container .tns-nav {
  pointer-events: none;
  margin: 0.5em 0 0 2em;
  padding: 0;
  width: 100%;
  display: block;
  text-align: left;
}
.testimonials-shortcode-container .tns-nav button {
  border: 0;
  pointer-events: all;
  background-color: var(--dark-color);
  padding: 0;
  margin: 2px;
  width: 0.8em;
  height: 0.8em;
  border-radius: 50px;
}
.testimonials-shortcode-container .tns-nav button.tns-nav-active {
  background-color: var(--primary-color);
}
@media (min-width: 480px) {
  .testimonials-shortcode-container .tns-nav {
    margin: 0.5em 0 0 3em;
  }
}
@media (min-width: 768px) {
  .testimonials-shortcode-container .tns-nav {
    margin: 0.5em 0 0 4.3em;
  }
}

.testimonial-quote p:not(.testimonial-writer) {
  font-style: italic;
}
.testimonial-quote .testimonial-card-rating {
  color: var(--primary-color);
  margin-bottom: 1em;
}
.testimonial-quote .testimonial-card-rating i:before {
  margin: 0;
  margin-right: 0.2em;
  font-size: 20px;
}
.testimonial-quote .testimonial-card-rating i.far::before {
  opacity: 0.25;
}
.testimonial-quote .testimonial-writer {
  font-weight: 600;
  color: var(--default-bold-color);
}

/* --------------------------
*
* Accordion styles
*
** ----------------------- */
.accordions {
  margin: 1.5em 0;
}

.accordion {
  border-top: 0px;
  border-top: 1px solid var(--default-border-color);
}
.accordion:first-of-type {
  border-top: 0px;
}
.accordion button.handle {
  width: 100%;
  text-align: left;
  cursor: pointer;
  position: relative;
  margin: 0;
  padding: 0.5em 35px 0.5em 0;
  border: none;
}
.accordion button.handle:hover {
  box-shadow: none;
}
.accordion button.handle::after {
  display: flex;
  justify-content: center;
  align-items: center;
  content: "+";
  font-family: "Font Awesome 6 Pro";
  font-weight: 900;
  font-style: normal;
  font-weight: normal;
  font-size: 21px;
  color: var(--primary-color);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 6px;
  width: 21px;
  height: 21px;
}
.accordion.open button.handle::after {
  content: "\f068";
}
.accordion button.handle .accordion-title {
  margin: 0;
  color: var(--primary-color);
}
.accordion .accordion-content {
  overflow: hidden;
  max-height: 0;
  text-align: left;
  transition: max-height 0.3s ease-in-out;
}
.accordion .accordion-content > div.accordion-content--inner {
  padding: 0.5em 0 1.5em 0;
}
.accordion .accordion-content > div.accordion-content--inner *:last-child {
  margin: 0;
}
.accordion .accordion-content > div.accordion-content--inner p:first-child {
  margin-top: 0px;
}

.text-theme-dark .accordion button.handle::after {
  color: var(--white-color);
}
.text-theme-dark .accordion button.handle .accordion-title {
  color: var(--white-color);
}

.accordion .accordion-content > div.accordion-content--inner {
  position: relative;
}
.accordion .accordion-content > div.accordion-content--inner .edit-accordion-link {
  position: absolute;
  z-index: 40;
  font-size: 0.8em;
  left: 0.5em;
  bottom: 0.5em;
  background: #c61c1c !important;
  display: inline-block;
  padding: 0.4em 1em;
  box-shadow: 3px 3px 7px 0px rgba(0, 0, 0, 0.5294117647);
  border-radius: 5px;
  font-weight: 700;
  color: #fff !important;
  opacity: 0;
  pointer-events: none;
  transition: all 0.4s;
}

.logged-in.admin-bar .accordion .accordion-content > div.accordion-content--inner:hover .edit-accordion-link {
  opacity: 1;
  pointer-events: all;
}

.iconcolumns-shortcode-container {
  margin: 1em 0;
  position: relative;
}
.iconcolumns-shortcode-container:first-child {
  margin-top: 0;
}
.iconcolumns-shortcode-container:last-child {
  margin-bottom: 0;
}
.iconcolumns-shortcode-container .column {
  align-items: center;
  margin-bottom: 1.5em;
  padding: 0;
  gap: 20px;
  border-radius: 10px;
}
@media (min-width: 1280px) {
  .iconcolumns-shortcode-container .column {
    gap: 40px;
  }
}
.iconcolumns-shortcode-container .column.add-column-content-padding {
  padding: 1.2em;
}
@media (min-width: 480px) {
  .iconcolumns-shortcode-container .column.add-column-content-padding {
    padding: 1.6em;
  }
}
@media (min-width: 1280px) {
  .iconcolumns-shortcode-container .column.add-column-content-padding {
    padding: 2.2em;
  }
}
.iconcolumns-shortcode-container .column .columns--icon {
  flex-basis: 90px;
  flex-shrink: 0;
}
.iconcolumns-shortcode-container .column .columns--content {
  flex-grow: 1;
}
.iconcolumns-shortcode-container .column:last-child {
  margin-bottom: 0;
}
.iconcolumns-shortcode-container .column .columns--content *:last-child {
  margin-bottom: 0;
}
.iconcolumns-shortcode-container.small-columns .column {
  gap: 10px;
  align-items: center;
}
.iconcolumns-shortcode-container.small-columns .column .columns--icon {
  flex-basis: 60px;
  flex-shrink: 0;
}
.iconcolumns-shortcode-container.small-columns .column .columns--icon img, .iconcolumns-shortcode-container.small-columns .column .columns--icon picture {
  display: block;
}
.iconcolumns-shortcode-container.small-columns-reversed .column {
  border-radius: 0;
  padding-top: 2.5em;
  padding-bottom: 2.5em;
  flex-direction: row-reverse;
}
.iconcolumns-shortcode-container.small-columns-reversed .column .columns--icon {
  flex-basis: 30px;
  flex-shrink: 0;
}
.iconcolumns-shortcode-container.small-columns-reversed .column .columns--icon img, .iconcolumns-shortcode-container.small-columns-reversed .column .columns--icon picture {
  display: block;
}
.iconcolumns-shortcode-container.vertical-align--top .column {
  align-items: flex-start;
}
.iconcolumns-shortcode-container.vertical-align--bottom .column {
  align-items: flex-end;
}
.iconcolumns-shortcode-container.grid .column {
  margin-bottom: 0;
}

.iconcolumns-shortcode-container .edit-iconcolumn-link {
  position: absolute;
  left: 0.5em;
  top: 0.5em;
  display: inline-block;
  opacity: 0;
  pointer-events: none;
  transition: all 0.4s;
}

.iconcolumns-shortcode-container:hover .edit-iconcolumn-link {
  opacity: 1;
  pointer-events: all;
}

/* --------------------------
 *
 * Media shorcode component
 *
** ----------------------- */
.component--media-shortcode {
  margin: 1.5em 0 2.5em;
}
.component--media-shortcode .media-shortcode-component--item {
  min-width: 0;
  border: 1px solid var(--default-border-color);
  padding: 1em;
  border-radius: 5px;
}
.component--media-shortcode .media-shortcode-component--image {
  margin-bottom: 1em;
}
.component--media-shortcode .media-shortcode-component--image img {
  width: 100%;
  height: 13vh;
  min-height: 145px;
  object-fit: contain;
  object-position: center;
}
.component--media-shortcode a.media-shortcode-component--link {
  text-decoration: none;
}

.mk-gallery {
  padding: 20px 0;
  margin: 0 -10px;
}
.mk-gallery .mk-gallery-image img {
  margin: 0;
  display: block;
  width: 100%;
}
.mk-gallery .mk-gallery-image .image-container {
  position: relative;
}
.mk-gallery .mk-gallery-image .image-caption {
  background-color: rgba(0, 0, 0, 0.65);
  color: #ffffff;
  padding: 12px 18px;
  padding-right: 30px;
  font-size: 0.9375rem;
  font-weight: 400;
  line-height: 20px;
  max-width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.mk-gallery .mk-gallery-image, .mk-gallery .grid-sizer {
  width: 100%;
  padding: 0 10px;
  margin-bottom: 20px;
}
.mk-gallery .mk-gallery-image.width--1 {
  width: 100%;
}
.mk-gallery .mk-gallery-image.width--2 {
  width: 100%;
}
.mk-gallery .mk-gallery-image.width--3 {
  width: 100%;
}
.mk-gallery .mk-gallery-image.width--4 {
  width: 100%;
}
.mk-gallery .grid-sizer {
  margin: 0;
}
@media (min-width: 768px) {
  .mk-gallery .mk-gallery-image, .mk-gallery .grid-sizer {
    width: var(--width-1);
  }
  .mk-gallery .mk-gallery-image.width--1 {
    width: var(--width-1);
  }
  .mk-gallery .mk-gallery-image.width--2 {
    width: var(--width-2);
  }
  .mk-gallery .mk-gallery-image.width--3 {
    width: var(--width-3);
  }
  .mk-gallery .mk-gallery-image.width--4 {
    width: var(--width-4);
  }
  .mk-gallery.columns-1 {
    --width-1: 100%;
    --width-2: 100%;
    --width-3: 100%;
    --width-4: 100%;
  }
  .mk-gallery.columns-2 {
    --width-1: 50%;
    --width-2: 50%;
    --width-3: 50%;
    --width-4: 50%;
  }
  .mk-gallery.columns-3 {
    --width-1: 33.3333%;
    --width-2: 33.3333%;
    --width-3: 33.3333%;
    --width-4: 66.6666%;
  }
  .mk-gallery.columns-4 {
    --width-1: 25%;
    --width-2: 25%;
    --width-3: 25%;
    --width-4: 50%;
  }
  .mk-gallery.columns-5 {
    --width-1: 20%;
    --width-2: 20%;
    --width-3: 20%;
    --width-4: 40%;
  }
  .mk-gallery.columns-6 {
    --width-1: 16.6666%;
    --width-2: 16.6666%;
    --width-3: 16.6666%;
    --width-4: 33.3333%;
  }
}

/*------------------------------------------------

    Baguettebox style overrides

    Overriding some styles to add custom
    image captions to images.

-------------------------------------------------*/
#baguetteBox-overlay .full-image figcaption {
  padding: 18px 22px;
}

#baguetteBox-overlay .full-image img {
  background: rgba(0, 0, 0, 0.2196078431);
}

/*
#baguetteBox-overlay .full-image figure {
    position: relative;
    display: block;
}

#baguetteBox-overlay {
    #baguetteBox-slider {
        display: flex;
    }
    .full-image {
        display: flex !important;
        justify-content: center;
        align-items: center;
        min-width: 100%;
        figure {
            display: block !important;
            height: auto !important;
        }
        figcaption {
            bottom: 50px !important;
            left: 0 !important;
            max-width: 90%;
            line-height: 1.2em !important;
            background-color: var(--primary-color) !important;
            font-family: var(--primary-font) !important;
            color: #ffffff !important;
            text-align: left !important;
            width: auto !important;
            font-size: 20px;
            padding: 18px 22px;
            padding-right: 35px;
            font-weight: 400;
            clip-path: polygon(
                0% 0%,
                100% 0%,
                calc(100% - 18px) 100%,
                0% 100%
            );
        }
        img {
            display: block !important;
            max-width: 100vw !important;
            max-height: 100vh !important;
        }
    }
}
*/
/* --------------------------
 *
 * Read more shortcode component
 *
** ----------------------- */
.mk-read-more > .content {
  overflow: hidden;
  display: none;
}
.mk-read-more > .content:not([aria-hidden=true]) {
  display: block;
}
.mk-read-more .mk-read-more-button {
  margin: 0.5em 0;
  padding: 0;
  border: 0;
  cursor: pointer;
  background-color: transparent;
  font-weight: 700;
  color: var(--default-text-color);
}
.mk-read-more .mk-read-more-button[aria-expanded=false] .text-show-more {
  display: inline-block;
}
.mk-read-more .mk-read-more-button[aria-expanded=false] .text-show-less {
  display: none;
}
.mk-read-more .mk-read-more-button[aria-expanded=true] .text-show-more {
  display: none;
}
.mk-read-more .mk-read-more-button[aria-expanded=true] .text-show-less {
  display: inline-block;
}

.postlist--shortcode {
  margin: 2em 0;
}
.postlist--shortcode:first-child {
  margin-top: 0;
}
.postlist--shortcode:last-child {
  margin-bottom: 0;
}
.postlist--shortcode article.postlist--tease {
  margin-bottom: 2em;
}
.postlist--shortcode time.postlist--date {
  margin-bottom: 5px;
  display: block;
  opacity: 0.9;
  font-size: 0.9em;
}
.postlist--shortcode h2.postlist--title {
  margin-bottom: 5px;
}
.postlist--shortcode a.postlist--readmore {
  display: inline-block;
}
.postlist--shortcode div.postlist--excerpt + a.postlist--readmore {
  margin-top: 10px;
}

/* --------------------------
 *
 * WPML language switcher component
 *
** ----------------------- */
.component--language-switcher ul {
  margin: 0;
  padding: 0;
  list-style: none;
}
.component--language-switcher a {
  color: var(--primary-color);
  font-family: var(--secondary-font);
}
.component--language-switcher a > span {
  vertical-align: middle;
}
.component--language-switcher.style--code-dropdown li.toggle-dropdown {
  position: relative;
  padding: 0.2em 0.3em 0.3em 0.3em;
}
.component--language-switcher.style--code-dropdown li.toggle-dropdown a {
  font-weight: 400;
}
.component--language-switcher.style--code-dropdown li.toggle-dropdown .fa-globe {
  margin-right: 0.2em;
}
.component--language-switcher.style--code-dropdown li.toggle-dropdown .fa-angle-down {
  margin-left: 0.1em;
}
.component--language-switcher.style--code-dropdown li.toggle-dropdown i[class*=fa-]:before {
  margin: 0;
  font-size: 1.1em;
  vertical-align: middle;
}
.component--language-switcher.style--code-dropdown ul.dropdown {
  border-top: 5px solid var(--primary-color);
  top: 100%;
  left: 0;
  opacity: 0;
  pointer-events: none;
  background-color: var(--white-color);
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.2);
  position: absolute;
  z-index: 3;
  font-size: 1.0625rem;
  list-style-type: none;
  min-width: 100%;
  transition: opacity 0.2s ease-in-out, transform 0.2s ease-in-out;
  transform: translateY(-5px);
}
.component--language-switcher.style--code-dropdown ul.dropdown a {
  display: block;
  color: var(--default-text-color-light);
}
.component--language-switcher.style--code-dropdown ul.dropdown li {
  display: block;
  margin: 0;
  text-align: center;
  padding: 0.5em;
}
.component--language-switcher.style--code-dropdown li.toggle-dropdown:hover > ul.dropdown, .component--language-switcher.style--code-dropdown li.toggle-dropdown:focus-within > ul.dropdown {
  pointer-events: all;
  opacity: 1;
  transform: translateY(0);
}
.component--language-switcher.style--code-list ul {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
}
.component--next-to-main-menu .component--language-switcher li.toggle-dropdown {
  padding: 1em 0.3em 1em 0.3em;
}
.component--next-to-main-menu .component--language-switcher li.toggle-dropdown ul.dropdown {
  background-color: var(--white-color);
  border-top: 5px solid var(--primary-color);
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.2);
  border-radius: 0 0 5px 5px;
}
.component--next-to-main-menu .component--language-switcher li.toggle-dropdown ul.dropdown a {
  display: block;
  color: var(--default-text-color-light);
}
.component--next-to-main-menu .component--language-switcher li.toggle-dropdown i {
  color: var(--secondary-color);
}
#mobilenav .component--language-switcher {
  padding: 15px 25px 0 20px;
  border-top: 1px solid var(--mobilenav-border-color);
}
#mobilenav .component--language-switcher a {
  color: var(--white-color);
}

/* --------------------------
*
* FLEX Helpers
*
** ----------------------- */
.flex {
  /* flex justify-content */
  /* flex align-items */
}
.flex {
  display: flex;
  flex-wrap: wrap;
}
.flex .flex.flex-wh > div {
  width: 100%;
  min-height: 100%;
}
.flex.flex-gap-1em {
  gap: 1em;
}
.flex.flex-gap-2em {
  gap: 2em;
}
.flex.flex-gap-3em {
  gap: 3em;
}
.flex.flex-gap-10 {
  gap: 10px;
}
.flex.flex-gap-20 {
  gap: 20px;
}
.flex.flex-gap-30 {
  gap: 30px;
}
.flex.flex-gap-5p {
  gap: 5%;
}
.flex.flex-gap-10p {
  gap: 10%;
}
.flex.flex-gap-20p {
  gap: 20%;
}
.flex.flex-rows {
  flex-direction: row;
}
.flex.flex-columns {
  flex-direction: column;
}
.flex.flex-nowrap {
  flex-wrap: nowrap;
}
.flex.flex-center {
  justify-content: center;
}
.flex.flex-justify-center {
  justify-content: center;
}
.flex.flex-left {
  justify-content: left;
}
.flex.flex-justify-left {
  justify-content: left;
}
.flex.flex-justify-start {
  justify-content: flex-start;
}
.flex.flex-right {
  justify-content: right;
}
.flex.flex-justify-right {
  justify-content: right;
}
.flex.flex-justify-end {
  justify-content: flex-end;
}
.flex.flex-justify-space-around {
  justify-content: space-around;
}
.flex.flex-justify-space-between {
  justify-content: space-between;
}
.flex.flex-justify-space-evenly {
  justify-content: space-evenly;
}
.flex.flex-middle {
  align-items: center;
}
.flex.flex-align-middle {
  align-items: center;
}
.flex.flex-end {
  align-items: flex-end;
}
.flex.flex-start {
  align-items: flex-start;
}
.flex.flex-top {
  align-items: flex-start;
}
.flex.flex-align-end {
  align-items: flex-end;
}
.flex.flex-align-start {
  align-items: flex-start;
}
.flex.flex-stretch {
  align-items: stretch;
}
.flex > .flex-grow {
  flex-grow: 1;
}
.flex > .flex-nogrow {
  flex-grow: 0;
}
.flex > .flex-shrink {
  flex-shrink: 1;
}
.flex > .flex-noshrink {
  flex-shrink: 0;
}
.flex > .flex-bottom {
  align-self: flex-end;
}
.flex > .flex-self-stretch {
  align-self: stretch;
}
.flex .from-xs_order-1 {
  order: 1;
}
.flex .from-xs_order-2 {
  order: 2;
}
.flex .from-xs_order-3 {
  order: 3;
}
.flex .xs-right {
  margin-left: auto;
}
.flex .xs-left {
  margin-right: auto;
}
@media (min-width: 480px) {
  .flex .from-s_order-1 {
    order: 1;
  }
  .flex .from-s_order-2 {
    order: 2;
  }
  .flex .from-s_order-3 {
    order: 3;
  }
  .flex .s-right {
    margin-left: auto;
  }
  .flex .s-left {
    margin-right: auto;
  }
  .flex.s-flex-nowrap {
    flex-wrap: nowrap;
  }
}
@media (min-width: 768px) {
  .flex .from-m_order-1 {
    order: 1;
  }
  .flex .from-m_order-2 {
    order: 2;
  }
  .flex .from-m_order-3 {
    order: 3;
  }
  .flex .m-right {
    margin-left: auto;
  }
  .flex .m-left {
    margin-right: auto;
  }
  .flex.m-flex-nowrap {
    flex-wrap: nowrap;
  }
}
@media (min-width: 1024px) {
  .flex .from-l_order-1 {
    order: 1;
  }
  .flex .from-l_order-2 {
    order: 2;
  }
  .flex .from-l_order-3 {
    order: 3;
  }
  .flex .l-right {
    margin-left: auto;
  }
  .flex .l-left {
    margin-right: auto;
  }
  .flex.l-flex-nowrap {
    flex-wrap: nowrap;
  }
}
@media (min-width: 1280px) {
  .flex .from-xl_order-1 {
    order: 1;
  }
  .flex .from-xl_order-2 {
    order: 2;
  }
  .flex .from-xl_order-3 {
    order: 3;
  }
  .flex .xl-right {
    margin-left: auto;
  }
  .flex .xl-left {
    margin-right: auto;
  }
  .flex.xl-flex-nowrap {
    flex-wrap: nowrap;
  }
}
@media (min-width: 1360px) {
  .flex .from-mxl_order-1 {
    order: 1;
  }
  .flex .from-mxl_order-2 {
    order: 2;
  }
  .flex .from-mxl_order-3 {
    order: 3;
  }
  .flex .mxl-right {
    margin-left: auto;
  }
  .flex .mxl-left {
    margin-right: auto;
  }
  .flex.mxl-flex-nowrap {
    flex-wrap: nowrap;
  }
}
@media (min-width: 1600px) {
  .flex .from-xxl_order-1 {
    order: 1;
  }
  .flex .from-xxl_order-2 {
    order: 2;
  }
  .flex .from-xxl_order-3 {
    order: 3;
  }
  .flex .xxl-right {
    margin-left: auto;
  }
  .flex .xxl-left {
    margin-right: auto;
  }
  .flex.xxl-flex-nowrap {
    flex-wrap: nowrap;
  }
}
@media (max-width: 479.98px) {
  .flex.flex-align-middle_to-s {
    align-items: center;
  }
  .flex.flex-justify-center_to-s {
    justify-content: center;
  }
  .flex.flex-justify-end_to-s {
    justify-content: flex-end;
  }
  .flex.from-s {
    display: none !important;
  }
}
@media (max-width: 767.98px) {
  .flex.flex-align-middle_to-m {
    align-items: center;
  }
  .flex.flex-justify-center_to-m {
    justify-content: center;
  }
  .flex.flex-justify-end_to-m {
    justify-content: flex-end;
  }
  .flex.from-m {
    display: none !important;
  }
}
@media (max-width: 1023.98px) {
  .flex.flex-align-middle_to-l {
    align-items: center;
  }
  .flex.flex-justify-center_to-l {
    justify-content: center;
  }
  .flex.flex-justify-end_to-l {
    justify-content: flex-end;
  }
  .flex.from-l {
    display: none !important;
  }
}
@media (max-width: 1279.98px) {
  .flex.flex-align-middle_to-xl {
    align-items: center;
  }
  .flex.flex-justify-center_to-xl {
    justify-content: center;
  }
  .flex.flex-justify-end_to-xl {
    justify-content: flex-end;
  }
  .flex.from-xl {
    display: none !important;
  }
}
@media (max-width: 1599.98px) {
  .flex.flex-align-middle_to-xxl {
    align-items: center;
  }
  .flex.flex-justify-center_to-xxl {
    justify-content: center;
  }
  .flex.flex-justify-end_to-xxl {
    justify-content: flex-end;
  }
  .flex.from-xxl {
    display: none !important;
  }
}

.grid {
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
  list-style: none;
  display: grid;
  gap: var(--gap);
  row-gap: var(--row-gap);
  grid-template-columns: repeat(var(--columns), 1fr);
  --gap: 20px;
  --row-gap: 20px;
  --columns: 1;
}
.grid.fill-height {
  align-items: stretch;
}
.grid.fill-height > * {
  height: 100%;
}
.grid.fill-height {
  align-items: stretch;
}
.grid.fill-height > * > article {
  height: 100%;
}
.grid > div, .grid > article {
  min-width: 0; /* overflow: hidden; */
}
@media (min-width: 480px) {
  .grid.columns-1 {
    --columns: 1;
  }
}
@media (min-width: 768px) {
  .grid {
    --gap: 20px;
    --row-gap: 30px;
  }
  .grid.columns-1 {
    --columns: 1;
  }
  .grid.columns-2 {
    --columns: 2;
  }
  .grid.columns-3 {
    --columns: 2;
  }
  .grid.columns-4 {
    --columns: 2;
  }
  .grid.columns-5 {
    --columns: 2;
  }
  .grid.columns-6 {
    --columns: 2;
  }
}
@media (min-width: 1024px) {
  .grid {
    --gap: 20px;
    --row-gap: 30px;
  }
  .grid.columns-1 {
    --columns: 1;
  }
  .grid.columns-2 {
    --columns: 2;
    --gap: 40px;
    --row-gap: 40px;
  }
  .grid.columns-3 {
    --columns: 3;
    --gap: 40px;
    --row-gap: 40px;
  }
  .grid.columns-4 {
    --columns: 3;
  }
  .grid.columns-5 {
    --columns: 3;
  }
  .grid.columns-6 {
    --columns: 3;
  }
}
@media (min-width: 1280px) {
  .grid {
    --gap: 20px;
    --row-gap: 30px;
  }
  .grid.columns-1 {
    --columns: 1;
  }
  .grid.columns-2 {
    --columns: 2;
    --gap: 40px;
    --row-gap: 40px;
  }
  .grid.columns-3 {
    --columns: 3;
    --gap: 40px;
    --row-gap: 40px;
  }
  .grid.columns-4 {
    --columns: 4;
    --gap: 30px;
    --row-gap: 30px;
  }
  .grid.columns-5 {
    --columns: 5;
  }
  .grid.columns-6 {
    --columns: 6;
  }
}

.grid.gap--small {
  --gap: 14px;
  --row-gap: 20px;
  --columns: 1;
}
@media (min-width: 480px) {
  .grid.gap--small.columns-1 {
    --columns: 1;
  }
}
@media (min-width: 768px) {
  .grid.gap--small {
    --gap: 20px;
    --row-gap: 30px;
  }
  .grid.gap--small.columns-1 {
    --columns: 1;
  }
  .grid.gap--small.columns-2 {
    --columns: 2;
  }
  .grid.gap--small.columns-3 {
    --columns: 2;
  }
  .grid.gap--small.columns-4 {
    --columns: 2;
  }
  .grid.gap--small.columns-5 {
    --columns: 2;
  }
  .grid.gap--small.columns-6 {
    --columns: 2;
  }
}
@media (min-width: 1024px) {
  .grid.gap--small {
    --gap: 20px;
    --row-gap: 30px;
  }
  .grid.gap--small.columns-1 {
    --columns: 1;
  }
  .grid.gap--small.columns-2 {
    --columns: 2;
  }
  .grid.gap--small.columns-3 {
    --columns: 3;
  }
  .grid.gap--small.columns-4 {
    --columns: 3;
  }
  .grid.gap--small.columns-5 {
    --columns: 3;
  }
  .grid.gap--small.columns-6 {
    --columns: 3;
  }
}
@media (min-width: 1280px) {
  .grid.gap--small {
    --gap: 20px;
    --row-gap: 30px;
  }
  .grid.gap--small.columns-1 {
    --columns: 1;
  }
  .grid.gap--small.columns-2 {
    --columns: 2;
  }
  .grid.gap--small.columns-3 {
    --columns: 3;
  }
  .grid.gap--small.columns-4 {
    --columns: 4;
  }
  .grid.gap--small.columns-5 {
    --columns: 5;
  }
  .grid.gap--small.columns-6 {
    --columns: 6;
  }
}

.grid.gap--large {
  --gap: 20px;
  --row-gap: 20px;
  --columns: 1;
}
@media (min-width: 480px) {
  .grid.gap--large.columns-1 {
    --columns: 1;
  }
}
@media (min-width: 768px) {
  .grid.gap--large {
    --gap: 30px;
    --row-gap: 30px;
  }
  .grid.gap--large.columns-1 {
    --columns: 1;
  }
  .grid.gap--large.columns-2 {
    --columns: 2;
  }
  .grid.gap--large.columns-3 {
    --columns: 2;
  }
  .grid.gap--large.columns-4 {
    --columns: 2;
  }
  .grid.gap--large.columns-5 {
    --columns: 2;
  }
  .grid.gap--large.columns-6 {
    --columns: 2;
  }
}
@media (min-width: 1024px) {
  .grid.gap--large {
    --gap: 30px;
    --row-gap: 30px;
  }
  .grid.gap--large.columns-1 {
    --columns: 1;
  }
  .grid.gap--large.columns-2 {
    --columns: 2;
    --gap: 60px;
    --row-gap: 60px;
  }
  .grid.gap--large.columns-3 {
    --columns: 3;
    --gap: 60px;
    --row-gap: 60px;
  }
  .grid.gap--large.columns-4 {
    --columns: 3;
    --gap: 50px;
    --row-gap: 50px;
  }
  .grid.gap--large.columns-5 {
    --columns: 3;
    --gap: 40px;
    --row-gap: 40px;
  }
  .grid.gap--large.columns-6 {
    --columns: 3;
    --gap: 30px;
    --row-gap: 30px;
  }
}
@media (min-width: 1280px) {
  .grid.gap--large {
    --gap: 30px;
    --row-gap: 30px;
  }
  .grid.gap--large.columns-1 {
    --columns: 1;
  }
  .grid.gap--large.columns-2 {
    --columns: 2;
    --gap: 60px;
    --row-gap: 60px;
  }
  .grid.gap--large.columns-3 {
    --columns: 3;
    --gap: 60px;
    --row-gap: 60px;
  }
  .grid.gap--large.columns-4 {
    --columns: 4;
    --gap: 50px;
    --row-gap: 50px;
  }
  .grid.gap--large.columns-5 {
    --columns: 5;
    --gap: 40px;
    --row-gap: 40px;
  }
  .grid.gap--large.columns-6 {
    --columns: 6;
    --gap: 30px;
    --row-gap: 30px;
  }
}

.grid.gap--none {
  --gap: 0px;
  --row-gap: 0px;
  --columns: 1;
}
@media (min-width: 480px) {
  .grid.gap--none.columns-1 {
    --columns: 1;
    --gap: 0px;
    --row-gap: 0px;
  }
}
@media (min-width: 768px) {
  .grid.gap--none {
    --gap: 0px;
    --row-gap: 0px;
  }
  .grid.gap--none.columns-1 {
    --columns: 1;
    --gap: 0px;
    --row-gap: 0px;
  }
  .grid.gap--none.columns-2 {
    --columns: 2;
    --gap: 0px;
    --row-gap: 0px;
  }
  .grid.gap--none.columns-3 {
    --columns: 2;
    --gap: 0px;
    --row-gap: 0px;
  }
  .grid.gap--none.columns-4 {
    --columns: 2;
    --gap: 0px;
    --row-gap: 0px;
  }
  .grid.gap--none.columns-5 {
    --columns: 2;
    --gap: 0px;
    --row-gap: 0px;
  }
  .grid.gap--none.columns-6 {
    --columns: 2;
    --gap: 0px;
    --row-gap: 0px;
  }
}
@media (min-width: 1024px) {
  .grid.gap--none {
    --gap: 0px;
    --row-gap: 0px;
  }
  .grid.gap--none.columns-1 {
    --columns: 1;
    --gap: 0px;
    --row-gap: 0px;
  }
  .grid.gap--none.columns-2 {
    --columns: 2;
    --gap: 0px;
    --row-gap: 0px;
  }
  .grid.gap--none.columns-3 {
    --columns: 3;
    --gap: 0px;
    --row-gap: 0px;
  }
  .grid.gap--none.columns-4 {
    --columns: 4;
    --gap: 0px;
    --row-gap: 0px;
  }
  .grid.gap--none.columns-5 {
    --columns: 4;
    --gap: 0px;
    --row-gap: 0px;
  }
  .grid.gap--none.columns-6 {
    --columns: 4;
    --gap: 0px;
    --row-gap: 0px;
  }
}
@media (min-width: 1280px) {
  .grid.gap--none {
    --gap: 0px;
    --row-gap: 0px;
  }
  .grid.gap--none.columns-1 {
    --columns: 1;
    --gap: 0px;
    --row-gap: 0px;
  }
  .grid.gap--none.columns-2 {
    --columns: 2;
    --gap: 0px;
    --row-gap: 0px;
  }
  .grid.gap--none.columns-3 {
    --columns: 3;
    --gap: 0px;
    --row-gap: 0px;
  }
  .grid.gap--none.columns-4 {
    --columns: 4;
    --gap: 0px;
    --row-gap: 0px;
  }
  .grid.gap--none.columns-5 {
    --columns: 5;
    --gap: 0px;
    --row-gap: 0px;
  }
  .grid.gap--none.columns-6 {
    --columns: 6;
    --gap: 0px;
    --row-gap: 0px;
  }
}

/* --------------------------
 *
 * Block component themes
 *
** ----------------------- */
.component--block {
  --component-background: none;
  background: var(--component-background, none);
}
.component--block.background--white-color {
  --component-background: var(--white-color);
}
.component--block.background--black-color {
  --component-background: var(--black-color);
}
.component--block.background--primary-color {
  --component-background: var(--primary-color);
}
.component--block.background--secondary-color {
  --component-background: var(--secondary-color);
}
.component--block.background--tertiary-color {
  --component-background: var(--tertiary-color);
}
.component--block.background--quarternary-color, .component--block.background--quaternary-color {
  --component-background: var(--quaternary-color);
}
.component--block.background--dark-color {
  --component-background: var(--dark-color);
}
.component--block.background--gray-color {
  --component-background: var(--gray-color);
}
.component--block.background--light-color {
  --component-background: var(--light-color);
}
.component--block.background--body-color {
  --component-background: var(--body-color);
}
.component--block.border-radius--5 {
  border-radius: 5px;
}
.component--block.border-radius--10 {
  border-radius: 10px;
}
.component--block.border--solid-default {
  border: 1px solid var(--default-border-color);
}
.component--block.box-shadow--primary-bottom {
  box-shadow: 0 5px 0 0px var(--primary-color);
}
.component--block.box-shadow--dark {
  box-shadow: 3px 3px 20px -11px rgba(0, 0, 0, 0.25);
}

/* --------------------------
 *
 * text theme for DARK background
 *
** ----------------------- */
.text-theme-dark {
  color: var(--default-text-color);
  --default-text-color: var(--default-text-color-dark);
  --default-bold-color: var(--default-bold-color-dark);
  --default-link-color: var(--default-link-color-dark);
  --default-heading-color: var(--default-heading-color-dark);
  --default-heading-color-h1: var(--default-heading-color-h1-dark);
  --default-heading-color-h2: var(--default-heading-color-h2-dark);
  --default-heading-color-h3: var(--default-heading-color-h3-dark);
  --default-heading-color-h4: var(--default-heading-color-h4-dark);
  --default-heading-color-h5: var(--default-heading-color-h5-dark);
  --default-heading-color-h6: var(--default-heading-color-h6-dark);
  --default-border-color: var(--default-border-color-dark);
  --default-hr-color: var(--default-hr-color-dark);
}

/* --------------------------
 *
 * text themes for LIGHT background
 *
** ----------------------- */
.text-theme-light {
  color: var(--default-text-color);
  --default-text-color: var(--default-text-color-light);
  --default-bold-color: var(--default-bold-color-light);
  --default-link-color: var(--default-link-color-light);
  --default-heading-color: var(--default-heading-color-light);
  --default-heading-color-h1: var(--default-heading-color-h1-light);
  --default-heading-color-h2: var(--default-heading-color-h2-light);
  --default-heading-color-h3: var(--default-heading-color-h3-light);
  --default-heading-color-h4: var(--default-heading-color-h4-light);
  --default-heading-color-h5: var(--default-heading-color-h5-light);
  --default-heading-color-h6: var(--default-heading-color-h6-light);
  --default-border-color: var(--default-border-color-light);
  --default-hr-color: var(--default-hr-color-light);
}

/* --------------------------
 *
 * all WHITE text colors
 *
** ----------------------- */
.text-color-white {
  color: var(--default-text-color);
  --default-text-color: var(--white-color);
  --default-bold-color: var(--white-color);
  --default-link-color: var(--white-color);
  --default-heading-color: var(--white-color);
  --default-heading-color-h1: var(--white-color);
  --default-heading-color-h2: var(--white-color);
  --default-heading-color-h3: var(--white-color);
  --default-heading-color-h4: var(--white-color);
  --default-heading-color-h5: var(--white-color);
  --default-heading-color-h6: var(--white-color);
}

/* --------------------------
 *
 * text themes for PRIMARY color background
 * Use this to override primary colors
 *
** ----------------------- */
.text-theme-light.background--primary-color,
.text-theme-dark.background--primary-color {
  --default-text-color: var(--default-text-color-primary);
  --default-link-color: var(--default-link-color-primary);
  --default-link-underline-color: var(--default-link-underline-color-primary);
  --default-bold-color: var(--default-bold-color-primary);
  --default-hr-color: var(--default-hr-color-primary);
}

/* --------------------------
 *
 * text themes for SECONDARY color background
 * Use this to override secondary colors
 *
** ----------------------- */
.text-theme-light.background--secondary-color,
.text-theme-dark.background--secondary-color {
  --default-text-color: var(--default-text-color-secondary);
  --default-link-color: var(--default-link-color-secondary);
  --default-link-underline-color: var(--default-link-underline-color-secondary);
  --default-bold-color: var(--default-bold-color-secondary);
  --default-hr-color: var(--default-hr-color-secondary);
}

/* --------------------------
 *
 * text themes for TERTIARY color background
 * Use this to override tertiary colors
 *
** ----------------------- */
.text-theme-light.background--tertiary-color,
.text-theme-dark.background--tertiary-color {
  --default-text-color: var(--default-text-color-tertiary);
  --default-link-color: var(--default-link-color-tertiary);
  --default-link-underline-color: var(--default-link-underline-color-tertiary);
  --default-bold-color: var(--default-bold-color-tertiary);
  --default-hr-color: var(--default-hr-color-tertiary);
}

/* --------------------------
 *
 * component styles
 *
** ----------------------- */
.logged-in.admin-bar .component--content_module:hover .edit-content-module-link {
  opacity: 1;
  pointer-events: all;
}

.logged-in.admin-bar .component--content_module:hover .content_module--outer-container {
  box-shadow: 0px 0px 2px 5px rgba(164, 13, 13, 0.6196078431) inset;
}

.logged-in.admin-bar .component--content_module .content_module--outer-container {
  transition: all 0.4s;
  box-shadow: 0px 0px 0px 0 transparent inset;
}

.logged-in.admin-bar .modules-inner-content .component--content_module .content_module--outer-container {
  transition: all 0.4s;
  box-shadow: 0px 0px 0px 0 transparent;
}

.logged-in.admin-bar .modules-inner-content .component--content_module:hover .content_module--outer-container {
  box-shadow: 0px 0px 2px 5px rgba(164, 13, 13, 0.6196078431);
}

.component--content_module {
  position: relative;
}
.component--content_module .wrapper-ignored {
  width: 100%;
}
.component--content_module .no-wrapper {
  width: 100%;
  padding: 0;
}
.component--content_module .edit-content-module-link {
  position: absolute;
  z-index: 40;
  font-size: 0.8em;
  left: 0.5em;
  top: 0.5em;
  background: #c61c1c !important;
  display: inline-block;
  padding: 0.4em 1em;
  box-shadow: 3px 3px 7px 0px rgba(0, 0, 0, 0.5294117647);
  border-radius: 5px;
  font-weight: 700;
  color: #fff !important;
  opacity: 0;
  pointer-events: none;
  transition: all 0.4s;
}
.component--content_module.background-style-cover .content_module--outer-container {
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.component--content_module.background-style-auto-center .content_module--outer-container {
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: auto;
  background-position: center center;
}
.component--content_module.background-style-top-center .content_module--outer-container {
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: auto;
  background-position: center top;
}
.component--content_module.background-style-bottom-center .content_module--outer-container {
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: auto;
  background-position: center bottom;
}
.component--content_module.background-style-top-left .content_module--outer-container {
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: auto;
  background-position: left top;
}
.component--content_module.background-style-middle-left .content_module--outer-container {
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: auto;
  background-position: left center;
}
.component--content_module.background-style-bottom-left .content_module--outer-container {
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: auto;
  background-position: left bottom;
}
.component--content_module.background-style-top-right .content_module--outer-container {
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: auto;
  background-position: right top;
}
.component--content_module.background-style-middle-right .content_module--outer-container {
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: auto;
  background-position: right center;
}
.component--content_module.background-style-bottom-right .content_module--outer-container {
  background-color: transparent;
  background-repeat: no-repeat;
  background-size: auto;
  background-position: right bottom;
}
.component--content_module.background-style-repeat .content_module--outer-container {
  background-color: transparent;
  background-repeat: repeat;
  background-size: auto;
}
.component--content_module.module-size-mini .content_module--outer-container {
  --module-min-height: 0px;
  --module-outer-padding: 2em;
  --module-part-gap: 1em;
}
.component--content_module.module-size-small .content_module--outer-container {
  --module-min-height: 250px;
  --module-outer-padding: 2em;
  --module-part-gap: 1em;
}
@media (min-width: 768px) {
  .component--content_module.module-size-small .content_module--outer-container {
    --module-min-height: 250px;
    --module-outer-padding: 2em;
  }
}
@media (min-width: 1024px) {
  .component--content_module.module-size-small .content_module--outer-container {
    --module-min-height: 250px;
    --module-outer-padding: 2em;
  }
}
@media (min-width: 1280px) {
  .component--content_module.module-size-small .content_module--outer-container {
    --module-min-height: 250px;
    --module-outer-padding: 2em;
  }
}
@media (min-width: 1600px) {
  .component--content_module.module-size-small .content_module--outer-container {
    --module-min-height: 250px;
    --module-outer-padding: 2em;
  }
}
.component--content_module.module-size-medium .content_module--outer-container {
  --module-min-height: 250px;
  --module-outer-padding: 2em;
  --module-part-gap: 2em;
}
@media (min-width: 768px) {
  .component--content_module.module-size-medium .content_module--outer-container {
    --module-min-height: 250px;
    --module-outer-padding: 2em;
  }
}
@media (min-width: 1024px) {
  .component--content_module.module-size-medium .content_module--outer-container {
    --module-min-height: 250px;
    --module-outer-padding: 3em;
  }
}
@media (min-width: 1280px) {
  .component--content_module.module-size-medium .content_module--outer-container {
    --module-min-height: 400px;
    --module-outer-padding: 3em;
  }
}
@media (min-width: 1600px) {
  .component--content_module.module-size-medium .content_module--outer-container {
    --module-min-height: 400px;
    --module-outer-padding: 3em;
  }
}
.component--content_module.module-size-large .content_module--outer-container {
  --module-min-height: 250px;
  --module-outer-padding: 2em;
  --module-part-gap: 2em;
}
@media (min-width: 768px) {
  .component--content_module.module-size-large .content_module--outer-container {
    --module-min-height: 250px;
    --module-outer-padding: 2em;
  }
}
@media (min-width: 1024px) {
  .component--content_module.module-size-large .content_module--outer-container {
    --module-min-height: 250px;
    --module-outer-padding: 3em;
  }
}
@media (min-width: 1280px) {
  .component--content_module.module-size-large .content_module--outer-container {
    --module-min-height: 500px;
    --module-outer-padding: 4em;
  }
}
@media (min-width: 1600px) {
  .component--content_module.module-size-large .content_module--outer-container {
    --module-min-height: 600px;
    --module-outer-padding: 5em;
  }
}
.component--content_module.module-size-xlarge .content_module--outer-container {
  --module-min-height: 250px;
  --module-outer-padding: 3em;
  --module-part-gap: 3em;
}
@media (min-width: 768px) {
  .component--content_module.module-size-xlarge .content_module--outer-container {
    --module-min-height: 250px;
    --module-outer-padding: 2em;
  }
}
@media (min-width: 1024px) {
  .component--content_module.module-size-xlarge .content_module--outer-container {
    --module-min-height: 250px;
    --module-outer-padding: 3em;
  }
}
@media (min-width: 1280px) {
  .component--content_module.module-size-xlarge .content_module--outer-container {
    --module-min-height: 700px;
    --module-outer-padding: 5em;
  }
}
@media (min-width: 1600px) {
  .component--content_module.module-size-xlarge .content_module--outer-container {
    --module-min-height: 800px;
    --module-outer-padding: 6em;
  }
}
.component--content_module.module-size-xxlarge .content_module--outer-container {
  --module-min-height: 300px;
  --module-outer-padding: 4em;
  --module-part-gap: 4em;
}
@media (min-width: 768px) {
  .component--content_module.module-size-xxlarge .content_module--outer-container {
    --module-min-height: 300px;
    --module-outer-padding: 4em;
  }
}
@media (min-width: 1024px) {
  .component--content_module.module-size-xxlarge .content_module--outer-container {
    --module-min-height: 300px;
    --module-outer-padding: 4em;
  }
}
@media (min-width: 1280px) {
  .component--content_module.module-size-xxlarge .content_module--outer-container {
    --module-min-height: 800px;
    --module-outer-padding: 6em;
  }
}
@media (min-width: 1600px) {
  .component--content_module.module-size-xxlarge .content_module--outer-container {
    --module-min-height: 900px;
    --module-outer-padding: 7em;
  }
}
.component--content_module.module-size-no-padding .content_module--outer-container {
  --module-min-height: 0px;
  --module-outer-padding: 0px;
  --module-part-gap: 1em;
}
.component--content_module .content_module--outer-container {
  min-height: var(--module-min-height);
  padding: var(--module-outer-padding) 0;
}
.component--content_module .content_module--part {
  margin-bottom: var(--module-part-gap);
}
.component--content_module .content_module--part:last-child {
  margin-bottom: 0;
}
.component--content_module.module-no-top-padding .content_module--outer-container, .component--content_module.remove-top-padding .content_module--outer-container {
  padding-top: 0;
}
.component--content_module.module-no-bottom-padding .content_module--outer-container, .component--content_module.remove-bottom-padding .content_module--outer-container {
  padding-bottom: 0;
}
@media (min-width: 768px) {
  .component--content_module.flipped .content_module--main-content {
    margin-right: 0;
    margin-left: auto;
    order: 2;
  }
  .component--content_module.flipped .content_module--main-image {
    margin-right: auto;
    margin-left: 0;
  }
}

.content_module--main-content-and-image {
  --spacing: 40px;
}
.content_module--main-content-and-image .content_module--main-content {
  max-width: 100%;
  margin: 1.5em auto 1.5em auto;
}
.content_module--main-content-and-image .content_module--main-content .main-content-inner > *:last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .content_module--main-content-and-image .content_module--main-content {
    margin-right: auto;
    margin-left: 0;
  }
}
.content_module--main-content-and-image .content_module--main-content.add-main-content-padding {
  padding: 2em;
}
@media (min-width: 768px) {
  .content_module--main-content-and-image .content_module--main-content.add-main-content-padding {
    padding: 3em;
  }
}
.content_module--main-content-and-image .content_module--main-image {
  max-width: 100%;
}
.content_module--main-content-and-image .content_module--main-image img {
  display: block;
}
@media (min-width: 768px) {
  .content_module--main-content-and-image .content_module--main-image {
    margin-left: auto;
  }
}
.content_module--main-content-and-image .content_module--main-content,
.content_module--main-content-and-image .content_module--main-image {
  max-width: 100%;
}
@media (min-width: 768px) {
  .content_module--main-content-and-image .content_module--main-content,
  .content_module--main-content-and-image .content_module--main-image {
    max-width: calc(50% - var(--spacing) / 2);
  }
}

.textbox-no-gap .content_module--text-columns-grid.grid {
  --gap: 0px;
  --row-gap: 0px;
}
.content_module--text-columns-grid .content_module--text-column.flex .text-column-inner--wrap {
  width: 100%;
}
.content_module--text-columns-grid .content_module--text-column.flex .text-column-inner {
  width: 100%;
}
.content_module--text-columns-grid .content_module--text-column .text-column-inner--image {
  text-align: center;
  overflow: hidden;
  padding-bottom: 1em;
}
.content_module--text-columns-grid .content_module--text-column.add-text-column-content-padding .text-column-inner--image {
  padding: 0;
}
.content_module--text-columns-grid .content_module--text-column.add-text-column-content-padding .text-column-inner--image img {
  width: 100%;
}
.content_module--text-columns-grid .content_module--text-column.add-text-column-content-padding .text-column-inner {
  padding: 1.5em;
}
@media (min-width: 768px) {
  .content_module--text-columns-grid .content_module--text-column.add-text-column-content-padding .text-column-inner {
    padding: 2em;
  }
}
.content_module--text-columns-grid .content_module--text-column.column-full-width {
  grid-column: 1/span var(--columns);
}
.content_module--text-columns-grid .content_module--text-column.column-full-width.column-narrow-wrapper .text-column-inner {
  max-width: var(--wrapper-width-narrow);
  margin: 0 auto;
}

.component--content_module.flex-columns .content_module--text-columns-grid.grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.component--content_module.flex-columns .content_module--text-columns-grid.grid .content_module--text-column {
  width: 350px;
  max-width: 100%;
}
.component--content_module.flex-columns .content_module--text-columns-grid.grid .content_module--text-column.column-full-width {
  width: 100%;
}

.content_module--adjacent-columns {
  max-width: 100%;
  padding: 0;
  --gap: 20px;
  --padding: 32px;
}
@media (min-width: 768px) {
  .content_module--adjacent-columns {
    --gap: 30px;
    --padding: 32px;
  }
  .content_module--adjacent-columns.adjacent-alternate {
    --gap: 40px;
  }
}
@media (min-width: 1280px) {
  .content_module--adjacent-columns {
    --gap: 50px;
    --padding: 64px;
  }
  .content_module--adjacent-columns.adjacent-alternate {
    --gap: 64px;
  }
}
@media (min-width: 1600px) {
  .no-wrapper > .content_module--inner-container > .content_module--adjacent-columns {
    --gap: 64px;
    --padding: 80px;
  }
  .wrapper.ultrawide > .content_module--inner-container > .content_module--adjacent-columns {
    --gap: 64px;
    --padding: 80px;
  }
}
.content_module--adjacent-columns.adjacent-50-50 .row {
  --column-1: 1fr;
  --column-2: 1fr;
}
.content_module--adjacent-columns.adjacent-25-75 .row {
  --column-1: .25fr;
  --column-2: .75fr;
}
.content_module--adjacent-columns.adjacent-33-66 .row {
  --column-1: .33333fr;
  --column-2: .66666fr;
}
.content_module--adjacent-columns.adjacent-66-33 .row {
  --column-1: .66666fr;
  --column-2: .33333fr;
}
.content_module--adjacent-columns.adjacent-75-25 .row {
  --column-1: .75fr;
  --column-2: .25fr;
}
.content_module--adjacent-columns .row.flex-start {
  align-items: flex-start;
}
.content_module--adjacent-columns .row.flex-middle {
  align-items: center;
}
.content_module--adjacent-columns .row.flex-end {
  align-items: flex-end;
}
.content_module--adjacent-columns .row {
  gap: 0px;
  padding: 0;
  margin: 0;
}
.content_module--adjacent-columns .row .content_module--text-column {
  padding: 0;
  margin: var(--gap) 0;
  width: 100%;
}
.content_module--adjacent-columns .row.add-text-column-content-padding .content_module--text-column {
  margin: 0;
}
.content_module--adjacent-columns .row.add-text-column-content-padding .content_module--text-column {
  padding: var(--padding);
}
.content_module--adjacent-columns .row.add-text-column-content-padding .content_module--text-column .text-column-inner > p:only-child > picture > img {
  display: block;
}
.content_module--adjacent-columns .row.add-text-column-content-padding .content_module--text-column .text-column-inner > p:only-child > picture,
.content_module--adjacent-columns .row.add-text-column-content-padding .content_module--text-column .text-column-inner > p:only-child > img {
  display: block;
  margin: calc(var(--padding) * -1);
  width: auto;
  max-width: calc(100% + var(--padding) * 2);
}
.content_module--adjacent-columns .row.add-text-column-content-padding .content_module--text-column .text-column-inner > picture:only-child,
.content_module--adjacent-columns .row.add-text-column-content-padding .content_module--text-column .text-column-inner > img:only-child {
  display: block;
  margin: calc(var(--padding) * -1);
  width: auto;
  max-width: calc(100% + var(--padding) * 2);
}
.content_module--adjacent-columns .row.add-text-column-content-padding .content_module--text-column .text-column-inner > div:only-child > picture,
.content_module--adjacent-columns .row.add-text-column-content-padding .content_module--text-column .text-column-inner > div:only-child > img {
  display: block;
  margin: calc(var(--padding) * -1);
  width: auto;
  max-width: calc(100% + var(--padding) * 2);
}
@media (min-width: 1024px) {
  .content_module--adjacent-columns .row {
    gap: var(--gap);
    padding: 0;
    margin: calc(var(--gap)) 0;
  }
  .content_module--adjacent-columns .row .content_module--text-column {
    padding: 0;
    margin: 0;
  }
  .content_module--adjacent-columns.mode--tight .row {
    gap: 0px;
    margin: 0;
  }
  .content_module--adjacent-columns.mode--tight .row .content_module--text-column {
    padding: var(--padding);
  }
  .content_module--adjacent-columns.mode--tight .row .content_module--text-column .text-column-inner > p:only-child > picture > img {
    display: block;
  }
  .content_module--adjacent-columns.mode--tight .row .content_module--text-column .text-column-inner > p:only-child > picture, .content_module--adjacent-columns.mode--tight .row .content_module--text-column .text-column-inner > p:only-child > img {
    display: block;
    margin: calc(var(--padding) * -1);
    width: auto;
    max-width: calc(100% + var(--padding) * 2);
  }
  .content_module--adjacent-columns.mode--tight .row .content_module--text-column .text-column-inner > picture:only-child, .content_module--adjacent-columns.mode--tight .row .content_module--text-column .text-column-inner > img:only-child {
    display: block;
    margin: calc(var(--padding) * -1);
    width: auto;
    max-width: calc(100% + var(--padding) * 2);
  }
  .content_module--adjacent-columns.mode--tight .row .content_module--text-column .text-column-inner > div:only-child > picture, .content_module--adjacent-columns.mode--tight .row .content_module--text-column .text-column-inner > div:only-child > img {
    display: block;
    margin: calc(var(--padding) * -1);
    width: auto;
    max-width: calc(100% + var(--padding) * 2);
  }
}
.content_module--adjacent-columns .row .content_module--text-column .text-column-inner > *:last-child {
  margin-bottom: 0;
}
.content_module--adjacent-columns .row .content_module--text-column .text-column-inner > p:only-child > picture,
.content_module--adjacent-columns .row .content_module--text-column .text-column-inner > p:only-child > img {
  display: block;
}
.content_module--adjacent-columns .row .content_module--text-column .text-column-inner > picture:only-child,
.content_module--adjacent-columns .row .content_module--text-column .text-column-inner > img:only-child {
  display: block;
}
.content_module--adjacent-columns .row .content_module--text-column .text-column-inner > div:only-child > picture,
.content_module--adjacent-columns .row .content_module--text-column .text-column-inner > div:only-child > img {
  display: block;
}
.content_module--adjacent-columns .row {
  display: flex;
  flex-direction: column;
  width: auto;
}
@media (min-width: 1024px) {
  .content_module--adjacent-columns .row {
    display: grid;
    flex-direction: row;
    grid-template-columns: var(--column-1) var(--column-2);
  }
}
.content_module--adjacent-columns.adjacent-alternate .row:nth-child(even) .content_module--text-column:first-child {
  order: 2;
}
.content_module--adjacent-columns.adjacent-alternate .row:nth-child(even) .content_module--text-column:last-child {
  order: 1;
}
@media (min-width: 1024px) {
  .content_module--adjacent-columns.adjacent-alternate .row:nth-child(even) {
    grid-template-columns: var(--column-2) var(--column-1);
  }
  .content_module--adjacent-columns.adjacent-alternate .row:nth-child(even) .content_module--text-column:first-child, .content_module--adjacent-columns.adjacent-alternate .row:nth-child(even) .content_module--text-column:last-child {
    order: initial;
  }
}

.linkbox-no-gap .content_module--columns-grid.grid {
  --gap: 0px;
  --row-gap: 0px;
}
.content_module--columns-grid .content_module--column {
  padding-bottom: 100%;
  position: relative;
  overflow: hidden;
  transition: opacity 0.4s;
}
.content_module--columns-grid .content_module--column a:hover {
  opacity: 1;
}
.content_module--columns-grid .content_module--column:before {
  content: "";
  pointer-events: none;
  position: absolute;
  z-index: 3;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(4deg, rgba(0, 0, 0, 0.85) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%);
}
.content_module--columns-grid .content_module--image {
  position: absolute;
  z-index: inherit;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}
.content_module--columns-grid .content_module--image a .fa-arrow-right-long:before,
.content_module--columns-grid .content_module--image a .fa-long-arrow-alt-right:before {
  transition: transform 0.2s ease-out;
  transform: translateX(0px);
}
.content_module--columns-grid .content_module--image a:hover .fa-arrow-right-long:before,
.content_module--columns-grid .content_module--image a:hover .fa-long-arrow-alt-right:before {
  transform: translateX(3px);
}
.content_module--columns-grid .content_module--image img {
  position: absolute;
  z-index: 1;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.content_module--columns-grid .content_module--image-text {
  position: absolute;
  z-index: 4;
  bottom: 0;
  left: 0;
  padding: 1em;
}
.content_module--columns-grid .content_module--image-text .heading {
  --font-min: 1em;
}
@media (min-width: 410px) {
  .content_module--columns-grid .content_module--image-text {
    padding: 0.6em;
  }
}
@media (min-width: 480px) {
  .content_module--columns-grid .content_module--image-text {
    padding: 1em;
  }
}
@media (min-width: 560px) {
  .content_module--columns-grid .content_module--image-text {
    padding: 1.5em;
  }
}
@media (min-width: 768px) {
  .content_module--columns-grid .content_module--image-text {
    padding: 1em;
  }
}
@media (min-width: 1024px) {
  .content_module--columns-grid .content_module--image-text {
    padding: 1.5em;
  }
}
.content_module--columns-grid .content_module--column:hover {
  opacity: 0.8;
}
.linkbox-no-hover .content_module--columns-grid .content_module--column:hover {
  opacity: 1;
}
.content_module--columns-grid.grouped-3 .content_module--column:first-child {
  padding-bottom: calc(76% + var(--row-gap));
}
@media (min-width: 1024px) {
  .content_module--columns-grid.grouped-3 .content_module--column:first-child .content_module--content {
    max-width: 55%;
  }
}

.component--content_module.flex-columns .content_module--columns-grid.grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.component--content_module.flex-columns .content_module--columns-grid.grid .content_module--column {
  width: 350px;
  max-width: 100%;
}

.content_module--news-feed-top-content + .content_module--news-feed-grid {
  margin-top: 1.5em;
}

.content_module--news-feed-grid + .content_module--news-feed-bottom-content {
  margin-top: 1.5em;
}

/* --------------------------
 *
 * Small modules
 *
** ----------------------- */
.small_module--shortcode {
  position: relative;
}
.small_module--shortcode .edit-small-module-link {
  position: absolute;
  z-index: 40;
  font-size: 0.8em;
  left: 0.5em;
  bottom: 0.5em;
  background: #c61c1c !important;
  display: inline-block;
  padding: 0.4em 1em;
  box-shadow: 3px 3px 7px 0px rgba(0, 0, 0, 0.5294117647);
  border-radius: 5px;
  font-weight: 700;
  color: #fff !important;
  opacity: 0;
  pointer-events: none;
  transition: all 0.4s;
}

.small_module--shortcode.remove-list-bullets ul {
  list-style: none;
  padding: 0;
}

.logged-in.admin-bar .small_module--shortcode:hover .edit-small-module-link {
  opacity: 1;
  pointer-events: all;
}

.logged-in.admin-bar .small_module--shortcode:hover {
  box-shadow: 0px 0px 2px 3px rgba(164, 13, 13, 0.6196078431) inset;
  padding-bottom: 30px;
}

.logged-in.admin-bar .small_module--shortcode {
  transition: all 0.4s;
  box-shadow: 0px 0px 0px 0 transparent inset;
}

.logged-in.admin-bar .modules-inner-content .small_module--shortcode {
  transition: all 0.4s;
  box-shadow: 0px 0px 0px 0 transparent;
}

.logged-in.admin-bar .modules-inner-content .small_module--shortcode:hover {
  box-shadow: 0px 0px 2px 3px rgba(164, 13, 13, 0.6196078431);
}

/* --------------------------
*
* Comments | Ratings
*
*
** ----------------------- */
#comments {
  --comment-nesting-border: 2px dotted #c5c5c5;
  --comment-body-color: var(--body-color);
  --comment-respond-bg-color: var(--body-color);
  --comment-respond-border-color: var(--primary-color);
  --comment-respond-border-width: 2px;
  --comment-respond-arrow-color: var(--comment-respond-border-color);
  --comment-respond-arrow-height: 15px;
  --comment-respond-arrow-width: 20px;
  --comment-await-moderation-bg: #FFDC00;
  --comment-await-moderation-color: hsla(52, 100%, 20%, 1.0);
}

#comments .comment-list {
  margin-bottom: 2em;
  overflow: hidden;
}

#comments .comment {
  padding-left: 1em;
  margin-left: 1em;
  margin-top: 1em;
}

#comments .comment .says {
  display: none;
}

#comments .comment.depth-1 {
  margin-left: 0;
  margin-top: 2em;
  padding-left: 0;
}

#comments .comment.depth-1:first-of-type {
  margin-top: 0;
}

#comments .comment.parent {
  position: relative;
}

#comments .comment.parent::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 2em;
  border-left: var(--comment-nesting-border);
  z-index: -2;
  height: 100%;
}

#comments .comment.parent.depth-1::before {
  left: 1em;
}

#comments .comment-body {
  background-color: var(--comment-body-color);
  padding: 1em;
  border-radius: 0.5em;
  border: 2px solid var(--primary-color);
}

#comments .comment-meta,
#comments .comment-author {
  display: flex;
  align-items: center;
}

#comments .comment-meta {
  margin-bottom: 1em;
  flex-wrap: wrap;
}

#comments .comment-awaiting-moderation {
  width: 100%;
  background-color: var(--comment-await-moderation-bg);
  padding: 10px;
  color: var(--comment-await-moderation-color);
  margin-top: 1em;
  font-size: 0.9em;
}

#comments .avatar,
#comments .fn,
#comments .comment-metadata {
  margin-right: 0.5em;
}

#comments .avatar {
  border-radius: 50%;
}

#comments .comment-metadata a:not(.comment-edit-link) {
  color: inherit;
  text-decoration: none;
}

#comments .comment-list .comment-respond {
  background-color: var(--comment-respond-bg-color);
  border-radius: 10px;
  border: var(--comment-respond-border-width) solid var(--comment-respond-border-color);
  padding: 1em;
  margin-top: 1em;
  position: relative;
}
#comments .comment-list .comment-respond::before {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 6px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 calc(var(--comment-respond-arrow-width) / 2) var(--comment-respond-arrow-height) calc(var(--comment-respond-arrow-width) / 2);
  border-color: transparent transparent var(--comment-respond-arrow-color) transparent;
}
#comments .comment-list .comment-reply-title {
  display: flex;
}
#comments .comment-list .comment-reply-title small {
  margin-left: auto;
}
#comments .comment-list .comment-reply-title small a {
  text-decoration: none;
}

#comments .comment-list .comment-reply-link,
#comments .comment-edit-link,
#cancel-comment-reply-link {
  text-decoration: none;
  text-transform: uppercase;
  font-size: 1rem;
  font-weight: 600;
}
#comments .comment-list .comment-reply-link::before,
#comments .comment-edit-link::before,
#cancel-comment-reply-link::before {
  font-family: "Font Awesome 6 Pro";
  font-weight: 400;
  font-style: normal;
  display: inline-block;
  text-decoration: inherit;
  margin-right: 0.4em;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

#comments .comment-edit-link {
  margin-left: 0.5em;
}

#comments .comment-edit-link::before {
  content: "\f044";
}

#comments .comment-list .comment-reply-link::before {
  content: "\f27a";
}

#cancel-comment-reply-link::before {
  content: "\f00d";
}

#respond label {
  display: block;
}

#respond span.required {
  color: #ff0000;
}

#respond textarea,
#respond input[type=text],
#respond input[type=url],
#respond input[type=email] {
  width: 480px;
}

#respond .comment-form-cookies-consent label {
  display: inline;
}

/* Admin Bar */
#wpadminbar {
  color: #fff;
  background: #040f16;
}

#wpadminbar .ab-item,
#wpadminbar a.ab-item,
#wpadminbar > #wp-toolbar span.ab-label,
#wpadminbar > #wp-toolbar span.noticon {
  color: #fff;
}

#wpadminbar .ab-icon,
#wpadminbar .ab-icon:before,
#wpadminbar .ab-item:before,
#wpadminbar .ab-item:after {
  color: #f1f2f3;
}

#wpadminbar:not(.mobile) .ab-top-menu > li:hover > .ab-item,
#wpadminbar:not(.mobile) .ab-top-menu > li > .ab-item:focus,
#wpadminbar.nojq .quicklinks .ab-top-menu > li > .ab-item:focus,
#wpadminbar.nojs .ab-top-menu > li.menupop:hover > .ab-item,
#wpadminbar .ab-top-menu > li.menupop.hover > .ab-item {
  color: var(--mk-admin-primary-color-l1);
  background: black;
  opacity: 1;
}

#wpadminbar:not(.mobile) > #wp-toolbar a:focus span.ab-label,
#wpadminbar:not(.mobile) > #wp-toolbar li:hover span.ab-label,
#wpadminbar > #wp-toolbar li.hover span.ab-label {
  color: var(--mk-admin-primary-color-l1) !important;
}

#wpadminbar:not(.mobile) > #wp-toolbar li:hover span.ab-label,
#wpadminbar:not(.mobile) > #wp-toolbar li.hover span.ab-label,
#wpadminbar:not(.mobile) > #wp-toolbar a:focus span.ab-label {
  color: var(--mk-admin-primary-color-l1);
}

#wpadminbar:not(.mobile) li:hover .ab-icon:before,
#wpadminbar:not(.mobile) li:hover .ab-item:before,
#wpadminbar:not(.mobile) li:hover .ab-item:after,
#wpadminbar:not(.mobile) li:hover #adminbarsearch:before {
  color: var(--mk-admin-primary-color-l1);
}

/* Admin Bar: submenu */
#wpadminbar .menupop .ab-sub-wrapper {
  background: black;
}

#wpadminbar .quicklinks .menupop ul.ab-sub-secondary,
#wpadminbar .quicklinks .menupop ul.ab-sub-secondary .ab-submenu {
  background: #0c2332;
}

#wpadminbar .ab-submenu .ab-item,
#wpadminbar .quicklinks .menupop ul li a,
#wpadminbar .quicklinks .menupop.hover ul li a,
#wpadminbar.nojs .quicklinks .menupop:hover ul li a {
  color: #b4b7b9;
}

#wpadminbar .quicklinks li .blavatar,
#wpadminbar .menupop .menupop > .ab-item:before {
  color: #f1f2f3;
}

#wpadminbar .quicklinks .menupop ul li a:hover,
#wpadminbar .quicklinks .menupop ul li a:focus,
#wpadminbar .quicklinks .menupop ul li a:hover strong,
#wpadminbar .quicklinks .menupop ul li a:focus strong,
#wpadminbar .quicklinks .ab-sub-wrapper .menupop.hover > a,
#wpadminbar .quicklinks .menupop.hover ul li a:hover,
#wpadminbar .quicklinks .menupop.hover ul li a:focus,
#wpadminbar.nojs .quicklinks .menupop:hover ul li a:hover,
#wpadminbar.nojs .quicklinks .menupop:hover ul li a:focus,
#wpadminbar li:hover .ab-icon:before,
#wpadminbar li:hover .ab-item:before,
#wpadminbar li a:focus .ab-icon:before,
#wpadminbar li .ab-item:focus:before,
#wpadminbar li .ab-item:focus .ab-icon:before,
#wpadminbar li.hover .ab-icon:before,
#wpadminbar li.hover .ab-item:before,
#wpadminbar li:hover #adminbarsearch:before,
#wpadminbar li #adminbarsearch.adminbar-focused:before {
  color: var(--mk-admin-primary-color-d1);
  opacity: 1;
}

#wpadminbar .quicklinks .menupop.hover ul li a:hover,
#wpadminbar .quicklinks .menupop.hover ul li a:focus {
  color: #fff;
  background: var(--mk-admin-primary-color-d1);
  opacity: 1;
}

#wpadminbar li#wp-admin-bar-env-production > * {
  background-color: red !important;
  color: white !important;
}

#wpadminbar .quicklinks li a:hover .blavatar,
#wpadminbar .quicklinks li a:focus .blavatar,
#wpadminbar .quicklinks .ab-sub-wrapper .menupop.hover > a .blavatar,
#wpadminbar .menupop .menupop > .ab-item:hover:before,
#wpadminbar.mobile .quicklinks .ab-icon:before,
#wpadminbar.mobile .quicklinks .ab-item:before {
  color: var(--mk-admin-primary-color-d1);
  opacity: 1;
}

#wpadminbar.mobile .quicklinks .hover .ab-icon:before,
#wpadminbar.mobile .quicklinks .hover .ab-item:before {
  color: #f1f2f3;
}

/* Admin Bar: search */
#wpadminbar #adminbarsearch:before {
  color: #f1f2f3;
}

#wpadminbar > #wp-toolbar > #wp-admin-bar-top-secondary > #wp-admin-bar-search #adminbarsearch input.adminbar-input:focus {
  color: #fff;
  background: #092434;
}

/* Admin Bar: recovery mode */
#wpadminbar #wp-admin-bar-recovery-mode {
  color: #fff;
  background-color: var(--mk-admin-secondary-color);
}

#wpadminbar #wp-admin-bar-recovery-mode .ab-item,
#wpadminbar #wp-admin-bar-recovery-mode a.ab-item {
  color: #fff;
}

#wpadminbar .ab-top-menu > #wp-admin-bar-recovery-mode.hover > .ab-item,
#wpadminbar.nojq .quicklinks .ab-top-menu > #wp-admin-bar-recovery-mode > .ab-item:focus,
#wpadminbar:not(.mobile) .ab-top-menu > #wp-admin-bar-recovery-mode:hover > .ab-item,
#wpadminbar:not(.mobile) .ab-top-menu > #wp-admin-bar-recovery-mode > .ab-item:focus {
  color: #fff;
  background-color: #e66018;
}

/* Admin Bar: my account */
#wpadminbar .quicklinks li#wp-admin-bar-my-account.with-avatar > a img {
  border-color: #092434;
  background-color: #092434;
}

#wpadminbar #wp-admin-bar-user-info .display-name {
  color: #fff;
}

#wpadminbar #wp-admin-bar-user-info a:hover .display-name {
  color: var(--mk-admin-primary-color-d1);
}

#wpadminbar #wp-admin-bar-user-info .username {
  color: #b4b7b9;
}

/* --------------------------
*
* Pre Header Notice bar
*
** ----------------------- */
.pre-header-notice-bar {
  font-size: 1rem;
  padding: 1em 0;
}
.pre-header-notice-bar *:first-child {
  margin-top: 0;
}
.pre-header-notice-bar *:last-child {
  margin-bottom: 0;
}
@media (max-width: 767.98px) {
  .pre-header-notice-bar {
    font-size: 0.9375rem;
  }
}

/* --------------------------
*
* Header
*
** ----------------------- */
header#masthead {
  position: relative;
}
header#masthead hr {
  margin: 0;
}
header#masthead .header-top {
  padding: 1em 0;
  font-size: 1rem;
}
@media (max-width: 1279.98px) {
  header#masthead .header-top .header-text-area {
    display: none;
  }
}
@media (max-width: 767.98px) {
  header#masthead hr.header-top-separator {
    display: none;
  }
}
header#masthead .header-top .widget a[class*=fa-] {
  color: var(--default-text-color);
  font-weight: 400;
}
header#masthead .header-middle {
  padding: 15px 0;
}
@media (min-width: 1024px) {
  header#masthead .header-middle {
    padding: 30px 0;
  }
}
@media (max-width: 479.98px) {
  header#masthead .header-middle > .wrapper {
    --wrapper-padding: 15px;
  }
}
header#masthead .component--header-logo .custom-logo-container a, header#masthead .component--header-logo .custom-logo-container a img,
header#masthead .component--header-logo a.site-logo,
header#masthead .component--header-logo a.site-logo img {
  display: block;
}
header#masthead .component--header-logo .custom-logo-container a,
header#masthead .component--header-logo a.site-logo {
  margin: 1em 0;
  padding-right: 0.5em;
}
@media (max-width: 1279.98px) {
  header#masthead .component--header-logo .custom-logo-container a img,
  header#masthead .component--header-logo a.site-logo img {
    width: 300px !important;
  }
}
@media (max-width: 1023.98px) {
  header#masthead .component--header-logo .custom-logo-container a img,
  header#masthead .component--header-logo a.site-logo img {
    width: 250px !important;
  }
}
@media (max-width: 767.98px) {
  header#masthead .component--header-logo .custom-logo-container a img,
  header#masthead .component--header-logo a.site-logo img {
    width: 220px !important;
  }
}
@media (max-width: 479.98px) {
  header#masthead .component--header-logo .custom-logo-container a img,
  header#masthead .component--header-logo a.site-logo img {
    width: 200px !important;
  }
}
header#masthead .component--header-text .widget a[class*=fa-] {
  color: var(--default-text-color);
  font-weight: inherit;
}
header#masthead .header-items-container .header-item-container {
  padding: 0 1.5em;
  border-right: 1px solid var(--default-border-color);
}
@media (max-width: 767.98px) {
  header#masthead .header-items-container .header-item-container {
    padding-left: 1em;
  }
}
@media (max-width: 479.98px) {
  header#masthead .header-items-container .header-item-container {
    padding-left: 0.5em;
  }
}
header#masthead .header-items-container .header-item-container:first-child:last-child {
  border-right: none;
}
header#masthead .header-items-container .header-item-container.mobilenav-button-container {
  border: 0;
  padding-right: 0;
}
header#masthead .header-items-container .header-slogan {
  text-align: right;
  max-width: 300px;
  font-size: 0.9em;
}
header#masthead .header-items-container .header-slogan strong {
  color: var(--secondary-color);
}
@media (max-width: 1279.98px) {
  header#masthead .header-items-container .checkout-button-container {
    display: none;
  }
}
header#masthead .header-items-container .checkout-button-container .button {
  margin-top: 0;
  background-color: transparent;
}
header#masthead .header-items-container .header-item-container.icon-button {
  padding: 0 7px;
  border-right: 1px solid var(--default-border-color);
}
@media (min-width: 1024px) {
  header#masthead .header-items-container .header-item-container.icon-button {
    padding: 0 13px;
  }
}
header#masthead .header-items-container .header-item-container.icon-button:first-child {
  border-left: 1px solid var(--default-border-color);
}
header#masthead .header-items-container .header-item-container.icon-button > button {
  background: transparent;
  border: 0;
  padding: 0;
  margin: 0;
  font-weight: 400;
  text-align: center;
  cursor: pointer;
}
header#masthead .header-items-container .header-item-container.icon-button > button i:first-child {
  font-size: 1.5em;
  line-height: 1em;
  display: block;
  margin-bottom: 0px;
}
@media (max-width: 767.98px) {
  header#masthead .header-items-container .header-item-container.icon-button > button i:first-child {
    font-size: 1.2em;
  }
}
@media (max-width: 479.98px) {
  header#masthead .header-items-container .header-item-container.icon-button > button i:first-child {
    font-size: 1em;
  }
  header#masthead .header-items-container .header-item-container.icon-button > button i:first-child::before {
    margin: 0 0.2em;
  }
}
header#masthead .header-items-container .header-item-container.icon-button > button i {
  color: var(--secondary-color);
}
header#masthead .header-items-container .header-item-container.icon-button > button .button-text {
  font-size: 15px;
  display: inline-block;
  vertical-align: bottom;
  line-height: 1em;
  color: var(--primary-color);
}
header#masthead .header-items-container .header-item-container.icon-button > button .button-text-container {
  line-height: 1em;
  padding-left: 3px;
  font-size: 1em;
  vertical-align: middle;
  font-family: var(--primary-font);
  white-space: nowrap;
}
header#masthead .header-items-container .header-item-container.icon-button > button .button-text-container > i:last-child {
  font-size: 0.8em;
  vertical-align: bottom;
  line-height: 1em;
  color: var(--primary-color);
}
header#masthead .header-items-container .header-item-container.icon-button > button .button-text-container > i:last-child:before {
  margin: 0 0 0 -1px;
}
header#masthead .header-items-container .header-item-container.icon-button .button-text-container {
  display: none;
}
@media (min-width: 1024px) {
  header#masthead .header-items-container .header-item-container.icon-button .button-text-container {
    display: block;
  }
}
header#masthead .header-items-container .search-form-container .container {
  position: fixed;
  transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
  z-index: 10;
  bottom: 100%;
  left: 0;
  width: 100%;
  background-color: var(--white-color);
  padding: 15px 60px 15px 15px;
}
header#masthead .header-items-container .search-form-container .container .search-form,
header#masthead .header-items-container .search-form-container .container .woocommerce-product-search {
  width: 780px;
  max-width: 95%;
  margin: 0 auto;
}
header#masthead .header-items-container .search-form-container .container .search-form:before,
header#masthead .header-items-container .search-form-container .container .woocommerce-product-search:before {
  border: 1px solid var(--default-border-color-light);
}
header#masthead .header-items-container .search-form-container .container .search-title {
  color: var(--secondary-color);
  font-family: var(--secondary-font);
  font-size: 1.375rem;
  margin-bottom: 1rem;
  text-align: center;
}
header#masthead .header-items-container .search-form-container .container #close-search-button {
  width: 48px;
  height: 48px;
  position: absolute;
  right: 7px;
  top: 14px;
}
header#masthead .header-items-container .search-form-container .search-field {
  background-color: var(--light-color);
}
header#masthead .header-items-container .search-form-container #rlvlive_1 > div.relevanssi-live-search-results-showing {
  left: 0 !important;
  top: 100% !important;
}
header#masthead .header-items-container .search-form-container #rlvlive_1 .relevanssi-live-search-result-status {
  background: var(--secondary-color);
  color: var(--white-color);
  font-weight: 700;
}
header#masthead .header-items-container .search-form-container #rlvlive_1 .relevanssi-live-search-result-status p {
  padding: 0.5em 1em;
}
header#masthead .header-items-container .search-form-container .relevanssi-live-search-result p {
  padding: 0.4em 1em;
}
header#masthead .header-items-container .search-form-container div.relevanssi-live-search-results {
  box-shadow: 1px 1px 8px rgba(0, 0, 0, 0.2666666667);
}
header#masthead .component--language-switcher + .some-links {
  margin-left: 1em;
  margin-bottom: 3px;
}
header#masthead .header-desktop {
  display: none;
}
header#masthead .header-mobile {
  display: block;
}
header#masthead .header-desktop-flex {
  display: none;
}
header#masthead .header-mobile-flex {
  display: flex;
}
@media (min-width: 1280px) {
  header#masthead .header-desktop {
    display: block;
  }
  header#masthead .header-mobile {
    display: none;
  }
  header#masthead .header-desktop-flex {
    display: flex;
  }
  header#masthead .header-mobile-flex {
    display: none;
  }
}

header#masthead.header-template-3 nav#header-navigation > ul > li[class*=current]:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 4px;
  border-radius: 2px 2px 0 0;
  background-color: var(--secondary-color);
}

header#masthead.header-template-4 nav#header-navigation > ul > li[class*=current]:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 4px;
  border-radius: 4px 4px 0 0;
  background-color: var(--secondary-color);
}

header#masthead.header-template-6 nav#header-navigation > ul > li {
  padding: 0.5em 0 0.5em 0;
}
header#masthead.header-template-6 nav#header-navigation > ul > li[class*=current]:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 3px;
  border-radius: 2px;
  background-color: var(--secondary-color);
}

header#masthead.header-template-7 .header-middle-right {
  gap: 15px;
}
header#masthead.header-template-7 nav#header-navigation > ul > li {
  padding: 0.5em 0 0.5em 0;
}
header#masthead.header-template-7 nav#header-navigation > ul > li[class*=current]:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 3px;
  border-radius: 2px;
  background-color: var(--secondary-color);
}

/* --------------------------
 *
 * Navigation
 *
** ----------------------- */
button.menu-close-button {
  background-color: transparent;
  display: block;
  width: 32px;
  height: 32px;
  border: 0;
  padding: 0;
  position: relative;
  cursor: pointer;
}
button.menu-close-button::before, button.menu-close-button::after {
  display: block;
  background-color: var(--default-text-color);
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
}
button.menu-close-button::before {
  width: 2px;
  height: 50%;
}
button.menu-close-button::after {
  width: 50%;
  height: 2px;
}

nav#header-navigation > ul {
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
}
nav#header-navigation > ul > li {
  padding: 1.1em 0 1.1em 0;
  border-top: 0;
}
nav#header-navigation > ul > li:not(:last-child) {
  margin-right: 1.6em;
}
nav#header-navigation > ul > li a {
  font-weight: 500;
  font-size: 1.25rem;
  --font-min: 1.0625rem;
  --font-max: 1.25rem;
  font-size: max(var(--font-min), min(var(--sizer, 5vw), var(--font-max)));
  font-size: clamp(var(--font-min), var(--sizer, 5vw), var(--font-max));
  font-family: var(--secondary-font);
}
nav#header-navigation > ul > li > a {
  color: var(--primary-color);
  transition: color 0.3s;
}
nav#header-navigation > ul > li > a:hover {
  opacity: 1;
  color: var(--default-link-color);
}
nav#header-navigation > ul > li.menu-item-has-children > a::after {
  content: "\f107";
  display: inline-block;
  font-family: "Font Awesome 6 Pro";
  font-weight: 400;
  font-style: normal;
  margin-left: 5px;
  font-size: 16px;
  transition: all 0.3s;
  transform: translateY(0px);
  color: var(--secondary-color);
}
nav#header-navigation > ul > li.menu-item-has-children:hover > a::after, nav#header-navigation > ul > li.menu-item-has-children:focus-within > a::after {
  transform: translateY(2px) !important;
}
nav#header-navigation li[class*=current] > a {
  color: var(--default-link-color);
}
nav#header-navigation li {
  display: block;
  position: relative;
}
nav#header-navigation ul {
  list-style-type: none;
}
nav#header-navigation > ul > li > ul.sub-menu {
  border-top: 5px solid var(--primary-color);
  background-color: var(--white-color);
  left: -25px;
  top: 100%;
  margin-top: 0;
  transform: translateY(-5px);
}
nav#header-navigation ul.sub-menu {
  top: 0;
  left: calc(100% - 14px);
  transition: opacity 0.2s ease-in-out, transform 0.2s ease-in-out;
  opacity: 0;
  transform: translateX(-5px);
  pointer-events: none;
  background-color: var(--white-color);
  border-top: 5px solid var(--dark-color);
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.2);
  border-radius: 0 0 5px 5px;
  position: absolute;
  z-index: 3;
  margin: 0;
  font-size: 1.0625rem;
  margin-top: -20px;
  list-style-type: none;
  padding: 20px 0;
  min-width: 120%;
}
nav#header-navigation ul.sub-menu a {
  color: var(--default-text-color-light);
  white-space: nowrap;
  font-weight: 400;
  font-size: 1.125rem;
  --font-min: 1rem;
  --font-max: 1.125rem;
}
nav#header-navigation ul.sub-menu li {
  padding: 5px 25px;
  padding-right: 50px;
}
nav#header-navigation ul.sub-menu li.menu-item-has-children > a::after {
  content: "\f105";
  display: inline-block;
  font-family: "Font Awesome 6 Pro";
  font-weight: 400;
  font-style: normal;
  font-weight: normal;
  position: absolute;
  right: 25px;
  bottom: 50%;
  transform: translateY(50%);
  transition: all 0.3s;
  color: inherit;
}
nav#header-navigation ul.sub-menu li.menu-item-has-children:hover > a::after, nav#header-navigation ul.sub-menu li.menu-item-has-children:focus-within > a::after {
  transform: translateY(50%) translateX(-5px) !important;
}
nav#header-navigation ul.sub-menu li[class*=current] > a {
  color: var(--default-link-color-light);
}
nav#header-navigation ul.sub-menu ul.sub-menu {
  min-width: 60%;
}
nav#header-navigation li:hover > ul.sub-menu, nav#header-navigation li:focus-within > ul.sub-menu {
  pointer-events: all;
  opacity: 1;
  transform: translateY(0);
}

/* --------------------------
 *
 * Footer
 *
** ----------------------- */
footer#mastfoot {
  padding: 4em 0;
}
footer#mastfoot hr.footer--separator {
  margin: 2em 0;
}
footer#mastfoot hr.footer--separator.invisible {
  margin: 1em 0;
  visibility: hidden;
}
footer#mastfoot .textwidget p:first-child {
  margin-top: 0;
}
footer#mastfoot .textwidget p:last-child {
  margin-bottom: 0;
}
footer#mastfoot.background--primary-color .format-lists--vertical ul li a[class*=fa-],
footer#mastfoot.background--primary-color .format-lists--horizontal ul li a[class*=fa-] {
  color: var(--default-text-color);
  font-weight: inherit;
}
footer#mastfoot.background--primary-color .format-lists--vertical ul li a[class*=fa-]:before,
footer#mastfoot.background--primary-color .format-lists--horizontal ul li a[class*=fa-]:before {
  color: var(--secondary-color);
}
footer#mastfoot .footer--middle.flex {
  gap: 30px;
}
footer#mastfoot .footer--middle-left a:not(.button) {
  font-weight: 400;
}
footer#mastfoot .footer--cta-container + .footer--logos-container {
  margin-top: 1em;
}
footer#mastfoot .footer-columns {
  max-width: 300px;
}
@media (min-width: 1024px) {
  footer#mastfoot .footer--cta-container,
  footer#mastfoot .footer--logos-container {
    text-align: right;
  }
}
footer#mastfoot .footer--copyright-container {
  /*font-size: rem(17px);
  --font-min: 0.9375rem;
  --font-max: 1.0625rem;*/
  font-size: max(var(--font-min), min(var(--sizer, 5vw), var(--font-max)));
  font-size: clamp(var(--font-min), var(--sizer, 5vw), var(--font-max));
}
footer#mastfoot .footer--copyright-container .footer--privacy-policy {
  width: 100%;
}
footer#mastfoot .footer--copyright-container .footer--privacy-policy a:not(.button) {
  color: inherit;
  font-weight: inherit;
}
@media (min-width: 1024px) {
  footer#mastfoot .footer--copyright-container .footer--privacy-policy {
    width: auto;
  }
}
footer#mastfoot .footer--copyright-container .footer--privacy-policy .textwidget > ul {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
footer#mastfoot .footer--copyright-container .footer--privacy-policy .textwidget > ul > li {
  width: 100%;
  margin: 0.1em 0;
}
footer#mastfoot .footer--copyright-container .footer--privacy-policy .textwidget > ul > li a {
  color: var(--default-text-color);
}
footer#mastfoot .footer--copyright-container .footer--privacy-policy .textwidget > ul > li::before {
  display: block;
  margin: 0 0.5em;
}
@media (min-width: 1024px) {
  footer#mastfoot .footer--copyright-container .footer--privacy-policy .textwidget > ul {
    display: flex;
    flex-wrap: nowrap;
  }
  footer#mastfoot .footer--copyright-container .footer--privacy-policy .textwidget > ul > li {
    width: auto;
    margin: 0;
  }
  footer#mastfoot .footer--copyright-container .footer--privacy-policy .textwidget > ul > li::before {
    content: "|";
    display: inline-block;
    margin: 0 0.5em;
  }
}
footer#mastfoot .footer--copyright-container .footer--copyright {
  width: 100%;
  margin-bottom: 1em;
}
@media (min-width: 1024px) {
  footer#mastfoot .footer--copyright-container .footer--copyright {
    width: auto;
    margin-bottom: 0;
  }
}
footer#mastfoot .footer--copyright-container .footer--copyright p {
  margin: 0px;
}
footer#mastfoot .footer--copyright-container .footer--copyright a:not(.button) {
  color: inherit;
  font-weight: inherit;
}
footer#mastfoot .footer--mk-logo {
  margin-top: 0.25em;
}
footer#mastfoot .footer--mk-logo > a.mk-logo--link {
  position: relative;
}
footer#mastfoot .footer--mk-logo > a.mk-logo--link img {
  opacity: 0.8;
  transition: all 0.2s;
}
footer#mastfoot .footer--mk-logo > a.mk-logo--link .screen-reader-text {
  width: 1px;
  height: 1px;
  visibility: hidden;
  display: inline-block;
}
footer#mastfoot .footer--mk-logo > a.mk-logo--link .mk-logo--hover {
  opacity: 0;
  transition: all 0.2s;
  pointer-events: none;
  position: absolute;
  z-index: 3;
  bottom: 100%;
  right: -4%;
  left: -4%;
  border-radius: 3px;
  width: 108%;
  text-align: center;
  padding: 4px 3px;
  margin-bottom: 2px;
  font-size: 12px;
  background-color: #fff;
  color: #000;
  box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.7);
  transform: translateY(8px);
}
footer#mastfoot .footer--mk-logo > a.mk-logo--link .mk-logo--hover svg.arrow {
  position: absolute;
  z-index: 2;
  top: 100%;
  left: 15%;
  fill: #fff;
  margin-top: -1px;
}
footer#mastfoot .footer--mk-logo > a.mk-logo--link:hover {
  opacity: 1;
}
footer#mastfoot .footer--mk-logo > a.mk-logo--link:hover > .mk-logo--hover {
  opacity: 1;
  transform: translateY(0px);
}
footer#mastfoot .footer--mk-logo > a.mk-logo--link:hover > img {
  filter: drop-shadow(0 0 5px #fff);
  opacity: 1;
}
footer#mastfoot a.button.anchor-back-to-top {
  margin-left: 1em;
  padding: 0.57em 0.47em;
}

footer#mastfoot.footer-template-1 .footer--contact {
  max-width: 290px;
}
footer#mastfoot.footer-template-1 .footer--contact-widgetarea + .footer--some-links {
  margin-top: 1em;
}
footer#mastfoot.footer-template-1 .footer--logo img, footer#mastfoot.footer-template-1 .footer--logo picture {
  width: 298px;
  height: auto;
}

footer#mastfoot.footer-template-3 .footer--cta-container,
footer#mastfoot.footer-template-3 .footer--logos-container {
  text-align: center;
}

/* --------------------------
 *
 * Hero Component
 *
** ----------------------- */
.component--hero-block {
  position: relative;
  background-color: var(--light-color);
}
.component--hero-block .component-background-image {
  min-height: 200px;
  position: relative;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  object-fit: cover;
  width: 100%;
}
@media (min-width: 768px) {
  .component--hero-block .component-background-image {
    min-height: 230px;
  }
}
@media (min-width: 1024px) {
  .component--hero-block .component-background-image {
    min-height: 270px;
  }
}
@media (min-width: 1280px) {
  .component--hero-block .component-background-image {
    min-height: 300px;
  }
}
.component--hero-block .component-background-image.image-filter:after {
  content: "";
  position: absolute;
  z-index: 1;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  opacity: 0.98;
  background: linear-gradient(30deg, var(--primary-color) 0%, var(--primary-color) 5%, rgba(0, 0, 0, 0) 100%);
}
.component--hero-block.is-default .component-background-image.image-filter:after {
  background: var(--primary-color);
  opacity: 0.6;
}
.component--hero-block .hide-image-filter .component-background-image.image-filter:after {
  display: none !important;
}
.component--hero-block .component-background-video {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.component--hero-block .component-background-video video {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.component--hero-block .carousel-items {
  display: none;
}
.component--hero-block.show-only-carousel .carousel-items:first-child {
  display: inline-block;
  width: 100%;
}
.component--hero-block .carousel-items.tns-slide-active {
  position: relative;
  z-index: 2;
}
.component--hero-block .content {
  z-index: 2;
  position: relative;
  width: 100%;
  height: auto;
  padding: 0;
}
.component--hero-block .content__inner {
  max-width: 100%;
  margin: 2em 0 2em 0;
}
@media (min-width: 768px) {
  .component--hero-block .content__inner.hero-has-content {
    max-width: 100%;
  }
}
@media (max-width: 1023.98px) {
  .component--hero-block .has-content-image .wrapper .hero-content-image {
    margin-top: 35px;
  }
  .component--hero-block .has-content-image .wrapper .hero-content-image img, .component--hero-block .has-content-image .wrapper .hero-content-image picture img {
    max-height: 400px;
    width: auto;
    margin: 0 auto;
  }
}
@media (max-width: 767.98px) {
  .component--hero-block .has-content-image .wrapper .hero-content-image {
    margin-top: 35px;
  }
  .component--hero-block .has-content-image .wrapper .hero-content-image img, .component--hero-block .has-content-image .wrapper .hero-content-image picture img {
    max-height: 585px;
  }
}
@media (min-width: 768px) {
  .component--hero-block .has-content-image .wrapper .content__inner {
    max-width: 100%;
  }
}
@media (min-width: 1024px) {
  .component--hero-block .has-content-image .wrapper {
    --wrapper-width: 100%;
    padding-right: 0;
  }
  .component--hero-block .has-content-image .wrapper .content__inner {
    max-width: unset;
    display: grid;
    grid-template-columns: 0.8fr 1.2fr;
    grid-template-rows: 1fr;
    grid-auto-rows: 1fr;
    gap: 0px 30px;
    grid-auto-flow: row;
  }
  .component--hero-block .has-content-image .wrapper .content__inner .hero-content {
    grid-area: 1/1/2/2;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  .component--hero-block .has-content-image .wrapper .content__inner .hero-content-image {
    grid-area: 1/2/2/3;
  }
  .component--hero-block .has-content-image .wrapper .content__inner .hero-content-image img, .component--hero-block .has-content-image .wrapper .content__inner .hero-content-image picture img {
    width: auto;
    max-height: 580px;
  }
}
@media (min-width: 1360px) {
  .component--hero-block .has-content-image .wrapper {
    --wrapper-padding: 0;
    padding-right: var(--wrapper-padding);
  }
  .component--hero-block .has-content-image .wrapper .content__inner {
    grid-template-columns: 1fr 520px 720px 1fr;
    gap: 0px 60px;
  }
  .component--hero-block .has-content-image .wrapper .content__inner .hero-content {
    grid-area: 1/2/2/3;
  }
  .component--hero-block .has-content-image .wrapper .content__inner .hero-content-image {
    grid-area: 1/3/2/5;
  }
}
@media (min-width: 1600px) {
  .component--hero-block .has-content-image .wrapper {
    --wrapper-padding: 0;
    padding-right: var(--wrapper-padding);
  }
  .component--hero-block .has-content-image .wrapper .content__inner {
    grid-template-columns: 1fr 620px 720px 1fr;
    gap: 0px 60px;
  }
  .component--hero-block .has-content-image .wrapper .content__inner .hero-content {
    grid-area: 1/2/2/3;
  }
  .component--hero-block .has-content-image .wrapper .content__inner .hero-content-image {
    grid-area: 1/3/2/5;
  }
}
.component--hero-block.is-medium .component-background-image {
  min-height: 280px;
}
@media (min-width: 768px) {
  .component--hero-block.is-medium .component-background-image {
    min-height: 350px;
  }
}
@media (min-width: 1024px) {
  .component--hero-block.is-medium .component-background-image {
    min-height: 410px;
  }
}
@media (min-width: 1280px) {
  .component--hero-block.is-medium .component-background-image {
    min-height: 500px;
  }
}
.component--hero-block.is-large .component-background-image {
  min-height: 350px;
}
@media (min-width: 768px) {
  .component--hero-block.is-large .component-background-image {
    min-height: 400px;
  }
}
@media (min-width: 1024px) {
  .component--hero-block.is-large .component-background-image {
    min-height: 550px;
  }
}
@media (min-width: 1280px) {
  .component--hero-block.is-large .component-background-image {
    min-height: 800px;
  }
}
.component--hero-block .content__inner {
  max-width: 100%;
}
@media (min-width: 768px) {
  .component--hero-block .content__inner.hero-has-content {
    max-width: 65%;
  }
}
@media (min-width: 1024px) {
  .component--hero-block .content__inner.hero-has-content {
    max-width: 50%;
  }
}
.component--hero-block.content-center .content__inner {
  max-width: 100%;
  margin: 2em auto;
  text-align: center;
}
@media (min-width: 768px) {
  .component--hero-block.content-center .content__inner.hero-has-content {
    max-width: 65%;
  }
}
@media (min-width: 1024px) {
  .component--hero-block.content-center .content__inner.hero-has-content {
    max-width: 50%;
  }
}
.component--hero-block.content-bottom .flex.flex-middle {
  align-items: flex-end;
}
.component--hero-block.content-bottom .content__inner {
  padding-bottom: 5%;
}
@media (max-width: 479.98px) {
  .component--hero-block .component--hero-block--inner .wrapper {
    --wrapper-padding: 15px;
  }
}
.component--hero-block .tns-nav {
  position: absolute;
  z-index: 5;
  pointer-events: none;
  bottom: 0;
  margin: 1em auto;
  padding: 0;
  width: 100%;
  display: block;
  text-align: center;
}
@media (min-width: 1280px) {
  .component--hero-block .tns-nav {
    bottom: 1em;
  }
}
.component--hero-block .tns-nav button {
  border: 0;
  pointer-events: all;
  box-shadow: 0 0 0px 0px var(--white-color);
  background-color: var(--white-color);
  padding: 0;
  margin: 5px;
  width: 2.5em;
  height: 0.7em;
  border-radius: 5px;
}
.component--hero-block .tns-nav button.tns-nav-active {
  background-color: var(--secondary-color);
  box-shadow: 0 0 5px -1px var(--secondary-color);
}
.component--hero-block.is-overlapping .tns-nav {
  top: 0;
}
.component--hero-block.is-overlapping .component-background-image {
  padding-bottom: var(--hero-content-overlap-mobile);
}
@media (min-width: 1280px) {
  .component--hero-block.is-overlapping .component-background-image {
    padding-bottom: var(--hero-content-overlap-desktop);
  }
}
.component--hero-block .edit-slide-link {
  position: absolute;
  font-size: 0.8em;
  left: 0.5em;
  top: 0.5em;
  background: #c61c1c !important;
  display: inline-block;
  padding: 0.4em 1em;
  box-shadow: 3px 3px 7px 0px rgba(0, 0, 0, 0.5294117647);
  border-radius: 5px;
  font-weight: 700;
  color: #fff !important;
  opacity: 0;
  pointer-events: none;
  transition: all 0.4s;
}

.logged-in.admin-bar .carousel-items.hero-block-component--item:hover .edit-slide-link {
  opacity: 1;
  pointer-events: all;
}

/* --------------------------
*
* Main structure
*
** ----------------------- */
#page {
  position: relative;
  overflow: hidden;
}

main#primary {
  padding: 0;
}

.main-container-area-padding {
  padding: var(--main-container-padding-mobile);
}
@media (min-width: 1024px) {
  .main-container-area-padding {
    padding: var(--main-container-padding-desktop);
  }
}

/* --------------------------
 *
 * Frontpage
 *
** ----------------------- */
.frontpage-main-content {
  padding: var(--main-container-padding-mobile);
}
@media (min-width: 1024px) {
  .frontpage-main-content {
    padding: var(--main-container-padding-desktop);
  }
}

/* --------------------------
 *
 * Single post/page content
 *
** ----------------------- */
.main-content-container {
  margin-bottom: 1.5em;
}
@media (min-width: 1024px) {
  .main-content-container {
    margin-bottom: 2.5em;
  }
}

.component--singular-content {
  padding: 20px 0;
  min-height: 16rem;
}
@media (min-width: 480px) {
  .component--singular-content {
    padding: 30px 0;
  }
}
@media (min-width: 768px) {
  .component--singular-content {
    padding: 40px 0;
  }
}
@media (min-width: 1024px) {
  .component--singular-content {
    padding: 50px 0;
  }
}
@media (min-width: 1280px) {
  .component--singular-content {
    padding: 55px 0;
  }
}
.component--singular-content.overlap {
  position: relative;
  z-index: 2;
  margin-top: calc(var(--hero-content-overlap-mobile) * -1);
}
@media (min-width: 1280px) {
  .component--singular-content.overlap {
    margin-top: calc(var(--hero-content-overlap-desktop) * -1);
  }
}

.posts-grid {
  margin: 1.5em 0;
}

.entry-meta {
  margin-bottom: 1em;
}
.entry-meta a {
  font-weight: inherit;
  color: inherit;
}
.entry-meta > span:not(:first-child)::before {
  display: inline-block;
  content: "|";
  margin: 0 4px 0 8px;
}

div.post-thumbnail, a.post-thumbnail {
  display: block;
  margin-bottom: 1em;
}
div.post-thumbnail img, div.post-thumbnail picture, a.post-thumbnail img, a.post-thumbnail picture {
  display: block;
}

a.back-to-blog-listing {
  margin-top: 2rem;
}

/* --------------------------
 *
 * Search form and modal
 *
** ----------------------- */
form.search-form, form.woocommerce-product-search {
  position: relative;
  z-index: 1;
  box-shadow: 0 0 0 var(--primary-color);
  transition: transform 0.2s;
  background-color: var(--light-color);
  height: 47px;
  width: 305px;
  max-width: 100%;
}
form.search-form input.search-field, form.woocommerce-product-search input.search-field {
  appearance: none;
  padding: 10px 20px;
  width: 100%;
  height: 100%;
  font-size: 1rem;
  font-weight: 500;
  color: var(--gray-color);
  border-radius: 5px;
  padding-right: 48px;
}
form.search-form input.search-field:focus, form.woocommerce-product-search input.search-field:focus {
  box-shadow: inset 0px 0px 0px 3px var(--primary-color);
}
form.search-form input.search-field::placeholder, form.woocommerce-product-search input.search-field::placeholder {
  color: var(--gray-color);
}
form.search-form button.search-submit, form.woocommerce-product-search button.search-submit {
  position: absolute;
  right: 0px;
  top: 0;
  height: 100%;
  padding: 0;
  width: 54px;
  border: none;
  background-color: transparent;
  color: var(--default-text-color);
  border-radius: 4em;
  font-size: 22px;
  cursor: pointer;
}
form.search-form button.search-submit:hover, form.woocommerce-product-search button.search-submit:hover {
  opacity: 0.8;
}

body.search-modal-open .search-form-container .container {
  transform: translateY(100%);
  box-shadow: 0 0 8px 8px rgba(0, 0, 0, 0.3);
}

body:not(.search-modal-open) .search-form-container .container {
  pointer-events: none;
  visibility: hidden;
}

/* --------------------------
 *
 * Search page
 *
** ----------------------- */
.search-result {
  margin-bottom: 2em;
}

/* --------------------------
 *
 * Teases
 *
** ----------------------- */
.logged-in.admin-bar article.tease:hover .edit-post-link {
  opacity: 1;
  pointer-events: all;
  z-index: 20;
}

article.tease .edit-post-link {
  position: absolute;
  font-size: 0.8em;
  left: 0.5em;
  top: 0.5em;
  background: #c61c1c !important;
  display: inline-block;
  padding: 0.4em 1em;
  box-shadow: 3px 3px 7px 0px rgba(0, 0, 0, 0.5294117647);
  border-radius: 5px;
  font-weight: 700;
  color: #fff !important;
  opacity: 0;
  pointer-events: none;
  transition: all 0.4s;
}

article.tease {
  position: relative;
}

.tease div.post-thumbnail, .tease a.post-thumbnail {
  display: block;
  margin-bottom: 1em;
  position: relative;
  padding-bottom: 66.666%;
}
.tease div.post-thumbnail > img, .tease div.post-thumbnail > picture > img, .tease a.post-thumbnail > img, .tease a.post-thumbnail > picture > img {
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 0;
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
}

/* --------------------------
 *
 * Woocommerce additions
 *
** ----------------------- */
.woocommerce-order #klarna-checkout-container {
  margin-bottom: 30px;
}

#cart-dropdown-button .cart-amount-container {
  position: relative;
}
#cart-dropdown-button .cart-amount {
  position: absolute;
  right: 0.2em;
  top: 0.2em;
  font-size: 14px;
  font-family: var(--primary-font);
  font-weight: 700;
  --size: 19px;
  display: inline-block;
  width: var(--size);
  height: var(--size);
  line-height: var(--size);
  text-align: center;
  background: var(--primary-color);
  border-radius: 50%;
  color: var(--white-color);
  box-shadow: 0 0 10px 2px var(--white-color);
}

.cart-dropdown, .account-dropdown {
  visibility: visible;
  z-index: 5;
  transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;
  transform: translateY(0) translateX(50%);
  opacity: 1;
  position: absolute;
  right: 50%;
  width: 358px;
  padding: 25px 28px;
  top: 100%;
  margin-top: 20px;
  --dropdown-bg: var(--light-color);
  background-color: var(--dropdown-bg);
  border-radius: 5px;
  border: 1px solid var(--default-border-color);
  filter: drop-shadow(0 0 5px rgba(0, 0, 0, 0.2));
  max-width: 90vw;
}
.cart-dropdown svg.arrow, .account-dropdown svg.arrow {
  position: absolute;
  bottom: 100%;
  right: 50%;
  transform: translateX(50%);
  fill: var(--dropdown-bg);
}
@media (max-width: 479.98px) {
  .cart-dropdown, .account-dropdown {
    margin-top: -10px;
  }
  .cart-dropdown svg.arrow, .account-dropdown svg.arrow {
    display: none;
  }
}
.cart-dropdown .menu-title, .account-dropdown .menu-title {
  font-family: var(--secondary-font);
  font-size: 1.25rem;
  border-bottom: 1px solid var(--default-hr-color);
  padding-bottom: 16px;
  margin-bottom: 15px;
  font-weight: 700;
}
.cart-dropdown .text, .account-dropdown .text {
  font-size: 0.9375rem;
  font-family: var(--secondary-font);
}
.cart-dropdown #my-account-close, .cart-dropdown .menu-close-button, .account-dropdown #my-account-close, .account-dropdown .menu-close-button {
  position: absolute;
  right: 25px;
  top: 20px;
}

body:not(.my-account-open) .account-dropdown {
  opacity: 0;
  transform: translateY(-5px) translateX(50%);
  pointer-events: none;
  visibility: hidden;
}

.account-dropdown p {
  margin-top: 0;
}
.account-dropdown input[type=text],
.account-dropdown input[type=password] {
  width: 100%;
}
.account-dropdown #wp-submit {
  font-family: var(--secondary-font);
  font-weight: 600 !important;
  margin-top: 0;
}
.account-dropdown .login-username, .account-dropdown .login-password {
  position: relative;
}
.account-dropdown .login-username i, .account-dropdown .login-password i {
  position: absolute;
  top: 7px;
  left: 13px;
}
.account-dropdown .login-username input, .account-dropdown .login-password input {
  padding-left: 45px;
  font-size: 0.875rem;
  color: var(--default-text-color);
}
.account-dropdown ul.arrow-bullets {
  margin-bottom: 0;
}
.account-dropdown ul.arrow-bullets a {
  color: var(--default-text-color);
  font-weight: 600;
  font-size: 1rem;
}
.account-dropdown ul.arrow-bullets li:before {
  font-weight: bold;
}
.account-dropdown ul.arrow-bullets li:before {
  transition: transform 0.2s ease-out;
  transform: translateX(0px);
}
.account-dropdown ul.arrow-bullets li:hover:before {
  transform: translateX(3px);
}

body:not(.cart-dropdown-open) .cart-dropdown {
  opacity: 0;
  pointer-events: none;
  transform: translateY(-5px) translateX(50%);
  visibility: hidden;
}

@media (min-width: 480px) {
  .my-account-button-container {
    position: relative;
  }
  .cart-button-container {
    position: relative;
  }
}
.cart-dropdown .woocommerce-mini-cart__buttons .button {
  font-size: 0.85em;
}
.cart-dropdown .woocommerce-mini-cart__buttons .button:first-child {
  margin-right: 5px;
}
@media (max-width: 479.98px) {
  .cart-dropdown .woocommerce-mini-cart__buttons .button {
    font-size: 0.7em;
  }
}

/* --------------------------
 *
 * Breadcrumbs
 *
** ----------------------- */
.component--block.component--breadcrumbs-display {
  padding: 1.5em 0;
  border-top: 1px solid var(--default-hr-color);
  border-bottom: 1px solid var(--default-hr-color);
}

nav.woocommerce-breadcrumb,
nav#breadcrumbs {
  padding: 0;
  margin: 0;
  max-height: 2.4em;
  line-height: 1.2em;
  overflow: hidden;
  display: block;
  -webkit-line-clamp: 2;
  display: box;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  white-space: normal;
}
nav.woocommerce-breadcrumb a,
nav#breadcrumbs a {
  color: var(--default-text-color);
}
nav.woocommerce-breadcrumb i,
nav#breadcrumbs i {
  font-size: 0.8em;
}

nav.woocommerce-breadcrumb i[class*=fa-]:before {
  margin: 0 0.5em;
}

nav#breadcrumbs i[class*=fa-]:before {
  margin: 0 0.1em;
}

.component--block.component--breadcrumbs-display.sidescrolling {
  padding: 0;
}
.component--block.component--breadcrumbs-display.sidescrolling .wrapper {
  padding: 0;
}
.component--block.component--breadcrumbs-display.sidescrolling nav.woocommerce-breadcrumb,
.component--block.component--breadcrumbs-display.sidescrolling nav#breadcrumbs {
  max-height: none;
  padding: 1.5em var(--wrapper-padding);
  white-space: nowrap;
  overflow: auto;
  width: 100%;
}
.component--block.component--breadcrumbs-display.sidescrolling nav.woocommerce-breadcrumb,
.component--block.component--breadcrumbs-display.sidescrolling nav#breadcrumbs {
  --background-color: var(--component-background, rgba(255, 255, 255, 1));
  --shadow-color: rgba(0,0,0, 0.2);
  --shadow-size: 0.75em;
  --transparent: rgba(255, 255, 255, 0);
  background: linear-gradient(to right, var(--background-color), var(--background-color), var(--transparent) calc(var(--shadow-size) * 2)), radial-gradient(farthest-side at 0 50%, var(--shadow-color), var(--transparent)), linear-gradient(to left, var(--background-color), var(--background-color), var(--transparent) calc(var(--shadow-size) * 2)), radial-gradient(farthest-side at 100% 50%, var(--shadow-color), var(--transparent)) 100%;
  background-color: var(--background-color);
  background-repeat: no-repeat;
  background-attachment: local, scroll, local, scroll;
  background-size: 100% 100%, var(--shadow-size) 100%, 100% 100%, var(--shadow-size) 100%;
}

/* --------------------------
 *
 * Common
 *
** ----------------------- */
a.skip-link {
  position: absolute;
  left: -9999px;
  text-decoration: underline;
  font-weight: 600;
  border: 5px solid var(--secondary-color);
  background-color: #ffffff;
  height: auto;
  padding: 0.4em;
  color: var(--primary-color);
  position: absolute;
  top: 0;
  width: auto;
  z-index: 1000;
  font-size: 1.5625rem;
}
a.skip-link:active, a.skip-link:focus {
  left: 0;
}

a.admin--edit-post-link {
  font-size: 0.8em;
  background: #c61c1c !important;
  display: inline-block;
  padding: 0.4em 1em;
  box-shadow: 3px 3px 7px 0px rgba(0, 0, 0, 0.5294117647);
  border-radius: 5px;
  font-weight: 700;
  color: #fff !important;
}

/* --------------------------
 *
 * Wordpress / logged in / admin
 *
** ----------------------- */
body.logged-in.admin-bar #mobilenav,
body.logged-in.admin-bar .search-form-container .container, body.logged-in.admin-bar.fixed-header header#masthead {
  border-top: 32px solid var(--body-color);
}
@media screen and (max-width: 782px) {
  body.logged-in.admin-bar #mobilenav,
  body.logged-in.admin-bar .search-form-container .container, body.logged-in.admin-bar.fixed-header header#masthead {
    border-top: 46px solid var(--body-color);
  }
}

/* --------------------------
 *
 * Photoswipe
 *
** ----------------------- */
div.pswp {
  opacity: 0;
  transition: opacity 0.3s;
}

.pswp__bg {
  background: rgba(0, 0, 0, 0.8509803922);
}

/* --------------------------
 *
 * Ninja-forms
 *
** ----------------------- */
.nf-form-cont .nf-form-content {
  margin: 0;
  padding: 5px 0;
}

.nf-error-msg.nf-error-required-error {
  position: absolute;
  top: 100%;
  background: rgba(201, 0, 0, 0.9019607843);
  padding: 5px 9px;
  font-size: 15px;
  line-height: 1;
  color: #ffffff !important;
  font-weight: 700;
  border-radius: 5px;
  margin-left: 7px;
}

/* --------------------------
 *
 * youtube shortcode
 *
** ----------------------- */
.shortcode--youtube {
  margin: 1em 0 2em 0;
}

/* --------------------------
 *
 * additional stuff
 *
** ----------------------- */
.otgs-development-site-front-end {
  display: none;
}

@media (min-width: 1024px) {
  .grid-2-1-1 .content_module--text-columns-grid.columns-3 {
    --gap:85px;
    grid-template-columns: 2fr 1fr 1fr !important;
  }
}/*# sourceMappingURL=style.css.map */