/*
Theme Name: B2B_theme
Author: DevOcean
Author URI: https://devocean.gr
Version: 1.0.0
License: GNU General Public License v3 or Later
License URI: https://www.gnu.org/licenses/gpl.html
Text Domain: cluster_theme
*/
@font-face {
  font-family: "Manrope";
  src: url("assets/fonts/Manrope-Regular.eot");
  src: url("assets/fonts/Manrope-Regular.eot?#iefix") format("embedded-opentype"), url("assets/fonts/Manrope-Regular.woff") format("woff"), url("assets/fonts/Manrope-Regular.woff2") format("woff2"), url("assets/fonts/Manrope-Regular.ttf") format("truetype"), url("assets/fonts/Manrope-Regular.svg#Manrope-Regular") format("svg");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Manrope";
  src: url("assets/fonts/Manrope-Medium.eot");
  src: url("assets/fonts/Manrope-Medium.eot?#iefix") format("embedded-opentype"), url("assets/fonts/Manrope-Medium.woff") format("woff"), url("assets/fonts/Manrope-Medium.woff2") format("woff2"), url("assets/fonts/Manrope-Medium.ttf") format("truetype"), url("assets/fonts/Manrope-Medium.svg#Manrope-Medium") format("svg");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Manrope";
  src: url("assets/fonts/Manrope-SemiBold.eot");
  src: url("assets/fonts/Manrope-SemiBold.eot?#iefix") format("embedded-opentype"), url("assets/fonts/Manrope-SemiBold.woff") format("woff"), url("assets/fonts/Manrope-SemiBold.woff2") format("woff2"), url("assets/fonts/Manrope-SemiBold.ttf") format("truetype"), url("assets/fonts/Manrope-SemiBold.svg#Manrope-SemiBold") format("svg");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Manrope";
  src: url("assets/fonts/Manrope-Bold.eot");
  src: url("assets/fonts/Manrope-Bold.eot?#iefix") format("embedded-opentype"), url("assets/fonts/Manrope-Bold.woff") format("woff"), url("assets/fonts/Manrope-Bold.woff2") format("woff2"), url("assets/fonts/Manrope-Bold.ttf") format("truetype"), url("assets/fonts/Manrope-Bold.svg#Manrope-Bold") format("svg");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "AdventPro";
  src: url("assets/fonts/AdventPro-Regular.eot");
  src: url("assets/fonts/AdventPro-Regular.eot?#iefix") format("embedded-opentype"), url("assets/fonts/AdventPro-Regular.woff") format("woff"), url("assets/fonts/AdventPro-Regular.woff2") format("woff2"), url("assets/fonts/AdventPro-Regular.ttf") format("truetype"), url("assets/fonts/AdventPro-Regular.svg#AdventPro-Regular") format("svg");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "AdventPro";
  src: url("assets/fonts/AdventPro-Bold.eot");
  src: url("assets/fonts/AdventPro-Bold.eot?#iefix") format("embedded-opentype"), url("assets/fonts/AdventPro-Bold.woff") format("woff"), url("assets/fonts/AdventPro-Bold.woff2") format("woff2"), url("assets/fonts/AdventPro-Bold.ttf") format("truetype"), url("assets/fonts/AdventPro-Bold.svg#AdventPro-Bold") format("svg");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "AdventPro";
  src: url("assets/fonts/AdventPro-ExtraBold.eot");
  src: url("assets/fonts/AdventPro-ExtraBold.eot?#iefix") format("embedded-opentype"), url("assets/fonts/AdventPro-ExtraBold.woff") format("woff"), url("assets/fonts/AdventPro-ExtraBold.woff2") format("woff2"), url("assets/fonts/AdventPro-ExtraBold.ttf") format("truetype"), url("assets/fonts/AdventPro-ExtraBold.svg#AdventPro-ExtraBold") format("svg");
  font-weight: 800;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "icons";
  src: url("assets/fonts/icomoon.eot");
  src: url("assets/fonts/icomoon.eot?#iefix") format("embedded-opentype"), url("assets/fonts/icomoon.woff") format("woff"), url("assets/fonts/icomoon.ttf") format("truetype"), url("assets/fonts/icomoon.svg#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
/* Elements
--------------------------------------------- */
body {
  background: #FFFFFF;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  overflow-x: hidden;
  max-width: 1920px;
  margin-inline: auto !important;
}
body .c-container {
  max-width: calc(1370px + 2 * min(max(30px, 3.90625vw), 40px));
  padding-inline: min(max(30px, 3.90625vw), 40px);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0 auto;
  width: 100%;
  box-sizing: border-box;
}
body .c-container .c-row {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: min(max(15px, 1.171875vw), 20px);
       column-gap: min(max(15px, 1.171875vw), 20px);
}
body .c-container--extend {
  max-width: calc(1840px + 2 * min(max(30px, 3.90625vw), 40px));
}
body .content-area {
  max-width: calc(1370px + 2 * min(max(30px, 3.90625vw), 40px));
  padding-inline: min(max(30px, 3.90625vw), 40px);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0 auto;
  width: 100%;
  box-sizing: border-box;
}
body .content-area main {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  -moz-column-gap: min(max(15px, 1.171875vw), 20px);
       column-gap: min(max(15px, 1.171875vw), 20px);
}
body:not(.homepage) > article {
  max-width: calc(1520px + 2 * min(max(30px, 3.90625vw), 40px));
  padding-inline: min(max(30px, 3.90625vw), 40px);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: 0 auto;
  width: 100%;
  box-sizing: border-box;
}
body:not(.homepage) > article > .entry-content {
  width: 100%;
}

button:not(.pswp__button):not(.search-toggle):not(.slick-arrow):not(.menu-btn):not([id^=slick-slide]),
input[type=button],
input[type=reset],
input[type=submit],
.wp-block-button__link,
#login-signup a {
  border: none;
  border-radius: 8px;
  background: #47564D;
  color: #FFFFFF;
  padding: min(max(9px, 1.953125vw), 15px) min(max(15px, 5.2083333333vw), 40px);
  font-family: "AdventPro", s-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-size: min(max(11px, 1.5625vw), 16px);
  font-weight: 700;
  line-height: normal;
  text-transform: uppercase;
  text-align: center;
  cursor: pointer;
}
button:not(.pswp__button):not(.search-toggle):not(.slick-arrow):not(.menu-btn):not([id^=slick-slide]):hover,
input[type=button]:hover,
input[type=reset]:hover,
input[type=submit]:hover,
.wp-block-button__link:hover,
#login-signup a:hover {
  opacity: 0.9;
}

input[type=checkbox] {
  visibility: hidden;
  position: relative;
  width: 40px;
  height: 40px;
  cursor: pointer;
}
input[type=checkbox]:before {
  content: "\e911";
  font-family: "icons" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  visibility: visible;
  position: absolute;
  width: 100%;
  height: 100%;
  color: #252525;
  font-size: 40px;
  line-height: 1;
  transition-property: transform;
  transition-duration: 0.2s;
  transition-timing-function: ease-in-out;
}
input[type=checkbox]:after {
  visibility: visible;
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  background-size: contain;
}
input[type=checkbox]:checked:before {
  transform: rotate(45deg);
}

button.slick-arrow {
  width: min(max(12px, 2.6041666667vw), 25px);
  height: min(max(20px, 4.5572916667vw), 42px);
  z-index: 2;
  color: transparent !important;
}
@media only screen and (min-width: 1280px) and (max-width: 1499px) and (min-height: 500px) {
  button.slick-arrow {
    width: min(max(12px, 2.5vh), 25px);
    height: min(max(20px, 4.375vh), 42px);
  }
}
button.slick-arrow:before {
  content: "\e910";
  font-family: "icons" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #FFFFFF;
  border-radius: 50%;
  opacity: 1;
  font-size: min(max(18px, 2.34375vw), 20px);
  line-height: 0;
  top: 0;
  right: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
button.slick-arrow.slick-prev {
  transform: rotate(90deg);
}
button.slick-arrow.slick-next {
  transform: rotate(-90deg);
}
button.slick-arrow.slick-disabled {
  opacity: 0;
  pointer-events: none;
}

@media only screen and (min-width: 1280px) {
  ul.slick-dots {
    bottom: -10px;
  }
}
@media only screen and (max-width: 767px) and (orientation: portrait) {
  ul.slick-dots {
    bottom: -15px;
  }
}
ul.slick-dots li {
  margin: 0 min(max(2px, 0.390625vw), 6px);
  width: 5px;
  height: 5px;
  transition-property: all;
  transition-duration: 0.2s;
  transition-timing-function: ease-in-out;
}
ul.slick-dots li:before {
  display: none;
}
ul.slick-dots li.slick-active {
  width: 8px;
  height: 8px;
}
ul.slick-dots li.slick-active button {
  background-color: #47564D;
}
ul.slick-dots li button {
  padding: 0;
  border-radius: 50%;
  background-color: rgba(173, 191, 157, 0.46);
  width: 100%;
  height: 100%;
  transition-property: all;
  transition-duration: 0.2s;
  transition-timing-function: ease-in-out;
}
ul.slick-dots li button:before {
  display: none;
}

input[type=text],
input[type=email],
input[type=url],
input[type=password],
input[type=search],
input[type=number],
input[type=tel],
input[type=range],
input[type=date],
input[type=month],
input[type=week],
input[type=time],
input[type=datetime],
input[type=datetime-local],
input[type=color],
textarea {
  color: #252525;
  border: none;
  border-radius: 0px;
  padding: 10px 0;
  font-weight: 600;
}
input[type=text]::-moz-placeholder, input[type=email]::-moz-placeholder, input[type=url]::-moz-placeholder, input[type=password]::-moz-placeholder, input[type=search]::-moz-placeholder, input[type=number]::-moz-placeholder, input[type=tel]::-moz-placeholder, input[type=range]::-moz-placeholder, input[type=date]::-moz-placeholder, input[type=month]::-moz-placeholder, input[type=week]::-moz-placeholder, input[type=time]::-moz-placeholder, input[type=datetime]::-moz-placeholder, input[type=datetime-local]::-moz-placeholder, input[type=color]::-moz-placeholder, textarea::-moz-placeholder {
  color: rgba(37, 37, 37, 0.5);
}
input[type=text]::placeholder,
input[type=email]::placeholder,
input[type=url]::placeholder,
input[type=password]::placeholder,
input[type=search]::placeholder,
input[type=number]::placeholder,
input[type=tel]::placeholder,
input[type=range]::placeholder,
input[type=date]::placeholder,
input[type=month]::placeholder,
input[type=week]::placeholder,
input[type=time]::placeholder,
input[type=datetime]::placeholder,
input[type=datetime-local]::placeholder,
input[type=color]::placeholder,
textarea::placeholder {
  color: rgba(37, 37, 37, 0.5);
}
input[type=text]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=number]:focus,
input[type=tel]:focus,
input[type=range]:focus,
input[type=date]:focus,
input[type=month]:focus,
input[type=week]:focus,
input[type=time]:focus,
input[type=datetime]:focus,
input[type=datetime-local]:focus,
input[type=color]:focus,
textarea:focus {
  outline: none;
}

select {
  border: 1px solid #252525;
}

textarea {
  width: 100%;
}

hr {
  background-color: #252525;
  border: 0;
  height: 1px;
  width: 100%;
  margin: 0;
  box-sizing: content-box;
  overflow: visible;
}

a {
  text-decoration: none;
  display: inline-block;
  font-size: min(max(16px, 2.0833333333vw), 21px);
  line-height: 1.4;
  color: #252525;
}
a:hover, a:active {
  outline: 0;
}

ul,
ol {
  margin: 1em 0;
  padding-inline-start: 1.5em;
}

ul {
  list-style: disc;
}

ol {
  list-style: decimal;
}

li > ul,
li > ol {
  margin-bottom: 0;
  margin-left: 1.5em;
}

dt {
  font-weight: 700;
}

dd {
  margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
  max-width: 100%;
}

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

figure {
  margin: min(max(20px, 3.90625vw), 30px) 0;
}
figure figcaption {
  display: flex;
  justify-content: space-between;
  color: #47564D;
  font-size: min(max(10px, 1.8229166667vw), 14px);
  line-height: 1.2;
  font-weight: 600;
  margin-top: 3px;
  width: 100%;
  font-family: "Manrope", s-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
}
figure figure {
  margin-block: 0;
}
figure img {
  display: block;
}

/* Normalize
--------------------------------------------- */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

html {
  scroll-behavior: smooth;
}

body {
  line-height: 1;
}

a {
  -webkit-text-decoration-skip: ink;
  text-decoration-skip-ink: auto;
}

a[href^=tel] {
  color: inherit;
  text-decoration: none;
}

button {
  outline: 0;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

q {
  display: inline;
  font-style: italic;
}

q:before {
  content: '"';
  font-style: normal;
}

q:after {
  content: '"';
  font-style: normal;
}

textarea,
input[type=text],
input[type=button],
input[type=submit],
input[type=reset],
input[type=search],
input[type=password] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
}

input[type=search] {
  -webkit-appearance: textfield;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

th,
td {
  padding: 2px;
}

big {
  font-size: 120%;
}

small,
sup,
sub {
  font-size: 80%;
}

sup {
  vertical-align: super;
}

sub {
  vertical-align: sub;
}

dd {
  margin-left: 20px;
}

kbd,
tt {
  font-family: courier;
  font-size: 12px;
}

ins {
  text-decoration: underline;
}

del,
strike,
s {
  text-decoration: line-through;
}

dt {
  font-weight: bold;
}

address,
cite,
var {
  font-style: italic;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

* {
  box-sizing: border-box;
  -webkit-tap-highlight-color: transparent;
}

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

.screen-reader-text:focus {
  background-color: #FFFFFF;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(37, 37, 37, 0.6);
  clip: auto !important;
  -webkit-clip-path: none;
  clip-path: none;
  color: #47564D;
  display: block;
  font-size: 14px;
  font-size: 0.875rem;
  font-weight: 700;
  height: auto;
  right: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

.skip-link {
  left: -9999rem;
  top: 2.5rem;
  z-index: 999999999;
  text-decoration: underline;
}

.skip-link:focus {
  display: block;
  left: 6px;
  top: 7px;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  line-height: normal;
  padding: 15px 23px 14px;
  z-index: 100000;
  right: auto;
}

.visually-hidden:not(:focus):not(:active),
.form-allowed-tags:not(:focus):not(:active) {
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  white-space: nowrap;
}

main, article, .content-area {
  min-height: calc(var(--vh, 1vh) * 100 - var(--hh) - var(--fh));
}

.gen-title {
  display: none;
  font-size: min(max(20px, 3.90625vw), 60px);
  color: #47564D;
  line-height: normal;
  margin: 0;
}

aside {
  display: none;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button.alt {
  background-color: #47564D;
  transition: all 0.2s ease-in-out;
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button.alt:hover {
  background-color: #ADBF9D;
}

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea,
p {
  color: #252525;
  font-family: "Manrope", s-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  font-size: min(max(10px, 1.5625vw), 14px);
  line-height: 1.5em;
  font-weight: 400;
}

p {
  margin-top: 0;
  margin-bottom: 0.5em;
}

dfn,
cite,
em,
i {
  font-style: italic;
}

blockquote {
  margin: 0 1.5em;
}

h1, .h1,
h2, .h2,
h3, .h3,
h4, .h4,
h5, .h5,
h6, .h6 {
  clear: both;
  margin-top: 0;
  margin-bottom: 0.1em;
  color: #47564D;
  font-family: "AdventPro", s-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  line-height: 1.2;
  font-weight: 800;
  text-transform: uppercase;
}

h2, .h2, h2.wp-block-heading {
  font-size: min(max(20px, 3.90625vw), 60px) !important;
  line-height: normal;
  font-weight: 800;
}

.menu {
  display: flex;
  -moz-column-gap: min(max(15px, 1.953125vw), 35px);
       column-gap: min(max(15px, 1.953125vw), 35px);
  align-items: center;
}
.menu > li {
  position: relative;
  line-height: 1;
}
.menu > li.menu-item-has-children {
  padding-right: 15px;
}
.menu > li.menu-item-has-children:after {
  content: "";
  position: absolute;
  width: 0;
  height: 0;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 8px solid #ADBF9D;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
@media only screen and (max-width: 767px) and (orientation: portrait) {
  .menu > li.menu-item-has-children:after {
    right: 5px;
    border-top-color: #47564D;
    border-top-width: 5px;
    border-left-width: 5px;
    border-right-width: 5px;
    transform: unset;
    top: 25px;
  }
}
@media only screen and (min-width: 768px) {
  .menu > li.menu-item-has-children:hover:after {
    border-top-width: 0px;
    border-bottom: 8px solid #47564D;
  }
}
@media only screen and (max-width: 767px) and (orientation: portrait) {
  .menu > li.menu-item-has-children:hover:after {
    border-top-width: 0px;
    border-bottom: 5px solid #47564D;
  }
}
.menu > li.menu-item-has-children:hover > a {
  color: #47564D;
}
.menu > li.menu-item-has-children:hover .sub-menu {
  display: flex;
}
.menu a {
  font-family: "AdventPro", s-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
  color: #47564D;
  font-size: min(max(14px, 1.8229166667vw), 16px);
  font-weight: 800;
  line-height: 1;
  text-transform: uppercase;
}
.menu a:hover {
  color: #ADBF9D;
}

.sub-menu {
  display: none;
  position: absolute;
  margin: 0;
  border-radius: 8px;
  background: #FFFFFF;
  box-shadow: 10px 10px 10px 0px rgba(37, 37, 37, 0.3);
  padding: 30px 23px;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  gap: 20px;
  margin-top: 10px;
  z-index: 1;
}
@media only screen and (max-width: 767px) and (orientation: portrait) {
  .sub-menu {
    position: relative;
    box-shadow: none;
    padding: 0;
    background: transparent;
    gap: 18px;
    margin-top: 18px;
  }
}
.sub-menu:before {
  content: "";
  position: absolute;
  top: -10px;
  left: 0;
  height: 10px;
  width: 100%;
}
.sub-menu a {
  color: #47564D;
  font-size: min(max(12px, 1.8229166667vw), 14px);
}

@media only screen and (max-width: 767px) and (orientation: portrait) {
  header .menu {
    flex-direction: column;
    align-items: flex-start;
    padding: 28px 25px;
    border-top: 1px solid rgba(37, 37, 37, 0.3);
  }
  header .menu a {
    font-family: "Manrope", s-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
    text-transform: unset;
    color: #252525;
    font-weight: 400;
  }
  header .menu > li {
    padding: 18px 15px;
    border-bottom: 1px solid rgba(37, 37, 37, 0.3);
    width: 100%;
    text-align: center;
    min-width: 125px;
  }
  header .menu > li:first-child {
    padding-top: 0;
  }
}

header, #header {
  background-color: #FFFFFF;
  padding-block: 17px;
  position: relative;
  z-index: 2;
}
@media only screen and (max-width: 1279px), (orientation: landscape) and (max-width: 767px) {
  header, #header {
    padding-top: 20px;
    padding-bottom: 44px;
  }
}
@media only screen and (max-width: 767px) and (orientation: portrait) {
  header, #header {
    padding-top: 24px;
    padding-bottom: 20px;
  }
}
header .container, #header .container {
  max-width: calc(1520px + 2 * min(max(30px, 3.90625vw), 40px));
  margin-inline: auto;
  padding-inline: min(max(30px, 3.90625vw), 40px);
  display: flex;
  align-items: center;
  position: relative;
}
@media only screen and (max-width: 1279px), (orientation: landscape) and (max-width: 767px) {
  header .container, #header .container {
    flex-wrap: wrap;
  }
}
header .container .btn-wrap, #header .container .btn-wrap {
  flex: 1;
  display: none;
}
@media only screen and (max-width: 767px) and (orientation: portrait) {
  header .container .btn-wrap, #header .container .btn-wrap {
    display: block;
  }
}
header .container .menu-btn, #header .container .menu-btn {
  background-color: transparent;
  border: 0;
  visibility: hidden;
  width: 20px;
  height: 18px;
  position: relative;
}
header .container .menu-btn:before, header .container .menu-btn:after, #header .container .menu-btn:before, #header .container .menu-btn:after {
  content: "";
  position: absolute;
  width: 100%;
  visibility: visible;
  top: 0;
  left: 0;
  transition-property: transform;
  transition-duration: 0.2s;
  transition-timing-function: ease-in-out;
  transform-origin: left;
}
header .container .menu-btn:before, #header .container .menu-btn:before {
  height: calc(50% - 1px);
  border-block: 1px solid #47564D;
}
header .container .menu-btn:after, #header .container .menu-btn:after {
  height: 100%;
  border-bottom: 1px solid #47564D;
}
header .container #logo, #header .container #logo {
  order: 2;
  margin-inline: auto;
  flex: 2;
  text-align: center;
  max-height: min(max(36px, 4.6875vw), 66px);
}
header .container #logo *, #header .container #logo * {
  max-height: inherit;
  width: auto;
}
@media only screen and (min-width: 768px) and (max-width: 1279px), (orientation: landscape) and (max-width: 767px) {
  header .container #logo, #header .container #logo {
    order: -1;
    flex: 0 0 100%;
    max-width: 100%;
  }
}
header .container nav, #header .container nav {
  order: 1;
  flex: 1;
  transition-property: transform;
  transition-duration: 0.2s;
  transition-timing-function: ease-in-out;
}
@media only screen and (max-width: 767px) and (orientation: portrait) {
  header .container nav, #header .container nav {
    position: absolute;
    top: calc(100% + 20px);
    left: 0;
    background: #FFFFFF;
    padding: 10px 40px;
    transform: translateX(-100%);
  }
}
header .container .wrapper, #header .container .wrapper {
  order: 3;
  flex: 1;
  display: flex;
  align-items: baseline;
  justify-content: flex-end;
  -moz-column-gap: min(max(20px, 1.5625vw), 30px);
       column-gap: min(max(20px, 1.5625vw), 30px);
}
@media only screen and (max-width: 1279px), (orientation: landscape) and (max-width: 767px) {
  header .container .wrapper, #header .container .wrapper {
    -moz-column-gap: min(max(11px, 1.4322916667vw), 11px);
         column-gap: min(max(11px, 1.4322916667vw), 11px);
  }
}
header .container .wrapper #header-widgets, #header .container .wrapper #header-widgets {
  display: flex;
  align-items: center;
  -moz-column-gap: min(max(20px, 1.5625vw), 30px);
       column-gap: min(max(20px, 1.5625vw), 30px);
}
@media only screen and (max-width: 1279px), (orientation: landscape) and (max-width: 767px) {
  header .container .wrapper #header-widgets, #header .container .wrapper #header-widgets {
    -moz-column-gap: min(max(11px, 1.4322916667vw), 11px);
         column-gap: min(max(11px, 1.4322916667vw), 11px);
  }
}
header .container .wrapper #header-widgets #woocommerce-cart, #header .container .wrapper #header-widgets #woocommerce-cart {
  order: -1;
}
header .container .wrapper #header-widgets #woocommerce-cart a, #header .container .wrapper #header-widgets #woocommerce-cart a {
  position: relative;
  visibility: hidden;
  width: min(max(18px, 2.34375vw), 23px);
  height: min(max(18px, 2.34375vw), 23px);
}
header .container .wrapper #header-widgets #woocommerce-cart a:before, #header .container .wrapper #header-widgets #woocommerce-cart a:before {
  content: "\e90b";
  font-family: "icons" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  visibility: visible;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  font-size: min(max(18px, 2.34375vw), 23px);
  color: #47564D;
}
header .container .wrapper #header-widgets #search-form > button, #header .container .wrapper #header-widgets #search-form > button {
  position: relative;
  visibility: hidden;
  width: 17px;
  height: 17px;
  padding: 0;
  border: 0;
  cursor: pointer;
}
header .container .wrapper #header-widgets #search-form > button:before, #header .container .wrapper #header-widgets #search-form > button:before {
  content: "\e903";
  font-family: "icons" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  visibility: visible;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  font-size: min(max(15px, 2.2135416667vw), 20px);
  color: #47564D;
}
header .container .wrapper #header-widgets #search-form form, #header .container .wrapper #header-widgets #search-form form {
  display: none;
  position: absolute;
  left: 0;
  text-align: center;
  top: calc(100% + 16px);
  width: 100%;
  background: #FFFFFF;
  padding: 15px 10px;
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
  box-shadow: 10px 10px 10px 0px #FFFFFF;
}
header .container .wrapper #header-widgets #search-form form label, #header .container .wrapper #header-widgets #search-form form label {
  padding-right: 20px;
}
header .container .wrapper #header-widgets #search-form form input[type=search], #header .container .wrapper #header-widgets #search-form form input[type=search] {
  min-width: 60%;
  padding: 0;
  border-bottom: 1px solid rgba(37, 37, 37, 0.3);
}
header .container .wrapper #header-widgets #search-form form button, #header .container .wrapper #header-widgets #search-form form button {
  padding: 5px 20px;
  font-size: 13px;
  border-radius: 6px;
}
header .container .wrapper #login-signup, #header .container .wrapper #login-signup {
  display: flex;
  align-items: center;
}
header .container .wrapper #login-signup a, #header .container .wrapper #login-signup a {
  font-size: 14px;
  min-width: 220px;
}
@media only screen and (max-width: 1279px), (orientation: landscape) and (max-width: 767px) {
  header .container .wrapper #login-signup a, #header .container .wrapper #login-signup a {
    padding: 0;
    min-width: unset;
    position: relative;
    visibility: hidden;
    width: min(max(18px, 2.34375vw), 23px);
    height: min(max(18px, 2.34375vw), 23px);
  }
  header .container .wrapper #login-signup a:before, #header .container .wrapper #login-signup a:before {
    content: "\e901";
    font-family: "icons" !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    visibility: visible;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    font-size: min(max(18px, 2.34375vw), 23px);
    color: #47564D;
  }
  header .container .wrapper #login-signup a.login-link:before, #header .container .wrapper #login-signup a.login-link:before {
    content: "\e90f";
    font-family: "icons" !important;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
}

.openMenu header .container .menu-btn:before, .openMenu #header .container .menu-btn:before {
  transform: rotate(45deg) translate(2px, -1px);
  border-bottom: 0;
  transition: transform 0.2s ease-in-out, border-bottom 0.2s 0.4s ease-in-out;
}
.openMenu header .container .menu-btn:after, .openMenu #header .container .menu-btn:after {
  transform: rotate(-45deg) translate(-2px);
}
@media only screen and (max-width: 767px) and (orientation: portrait) {
  .openMenu header .container nav, .openMenu #header .container nav {
    transform: translateX(0);
  }
}

.openSearch #header {
  z-index: 3;
}
.openSearch header .container .wrapper #header-widgets #search-form form, .openSearch #header .container .wrapper #header-widgets #search-form form {
  display: block;
}

footer, .footer {
  background-color: #47564D;
  color: #FFFFFF;
  margin-top: min(max(30px, 6.5104166667vw), 80px);
}
footer .footer-menu, .footer .footer-menu {
  width: 100%;
  padding-top: min(max(90px, 7.03125vw), 130px);
  padding-bottom: min(max(70px, 5.46875vw), 100px);
}
@media only screen and (max-width: 1279px), (orientation: landscape) and (max-width: 767px) {
  footer .footer-menu, .footer .footer-menu {
    padding-block: 45px;
  }
}
footer .footer-menu .menu, .footer .footer-menu .menu {
  justify-content: center;
}
@media only screen and (max-width: 1279px), (orientation: landscape) and (max-width: 767px) {
  footer .footer-menu .menu, .footer .footer-menu .menu {
    flex-direction: column;
    align-items: center;
    row-gap: 25px;
  }
}
footer .footer-menu .menu a, .footer .footer-menu .menu a {
  color: #FFFFFF;
  font-weight: 400;
  letter-spacing: 0.02em;
}
@media only screen and (max-width: 1279px), (orientation: landscape) and (max-width: 767px) {
  footer .footer-menu .menu a, .footer .footer-menu .menu a {
    font-size: 12px;
  }
}
footer .social, .footer .social {
  padding-bottom: min(max(90px, 7.03125vw), 130px);
}
@media only screen and (max-width: 1279px), (orientation: landscape) and (max-width: 767px) {
  footer .social, .footer .social {
    padding-bottom: 30px;
  }
}
footer .social-links, .footer .social-links {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}
footer .social-links a, .footer .social-links a {
  margin: 0 10px;
  visibility: hidden;
  width: 18px;
  height: 18px;
  position: relative;
}
footer .social-links a:before, .footer .social-links a:before {
  content: "\e90d";
  font-family: "icons" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  font-size: 18px;
  visibility: visible;
  color: #FFFFFF;
}
footer .social-links a.instagram:before, .footer .social-links a.instagram:before {
  content: "\e90c";
}
footer .social-links a.linkedin:before, .footer .social-links a.linkedin:before {
  content: "\e90e";
}
footer hr, .footer hr {
  background-color: #FFFFFF;
}
footer .copyright, .footer .copyright {
  padding-top: min(max(8px, 1.3020833333vw), 25px);
  padding-bottom: min(max(8px, 2.6041666667vw), 35px);
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (max-width: 1279px), (orientation: landscape) and (max-width: 767px) {
  footer .copyright, .footer .copyright {
    flex-direction: column;
    row-gap: 10px;
  }
}
footer .copyright .logo img, .footer .copyright .logo img {
  max-height: 40px;
}
@media only screen and (max-width: 1279px), (orientation: landscape) and (max-width: 767px) {
  footer .copyright .logo img, .footer .copyright .logo img {
    max-height: min(max(42px, 6.5104166667vw), 50px);
  }
}
footer .copyright a, .footer .copyright a {
  color: #FFFFFF;
}

.error404 #header {
  box-shadow: 0px 15px 26px -15px #FFFFFF;
}
.error404 article {
  justify-content: center;
}
.error404 article header {
  background-color: transparent;
  padding: 0;
  padding-top: 45px;
}
.error404 article header .entry-title {
  font-size: min(max(70px, 16.9270833333vw), 200px);
  text-align: center;
  color: #ADBF9D;
  margin-bottom: 0;
  font-weight: 700;
}
.error404 article .entry-content {
  text-align: center;
}
.error404 article .entry-content p {
  font-size: min(max(13px, 1.953125vw), 16px);
  color: #252525;
  margin-bottom: 0px;
  line-height: normal;
}
.error404 article .entry-content p:first-of-type {
  font-size: min(max(14px, 2.0833333333vw), 18px);
  font-weight: 700;
  margin-bottom: 10px;
}
.error404 article .entry-content form {
  margin-block: min(max(20px, 4.5572916667vw), 50px);
  max-width: 904px;
  margin-inline: auto;
  width: 100%;
  position: relative;
  border: 1px solid #C4C4C4;
  border-radius: 9px;
}
@media only screen and (min-width: 768px) and (max-width: 1279px), (orientation: landscape) and (max-width: 767px) {
  .error404 article .entry-content form {
    max-width: 60%;
    margin-top: 60px;
  }
}
@media only screen and (max-width: 767px) and (orientation: portrait) {
  .error404 article .entry-content form {
    max-width: 80%;
    margin-top: 40px;
  }
}
.error404 article .entry-content form:before {
  content: "\e903";
  font-family: "icons" !important;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  color: #252525;
  position: absolute;
  left: 25px;
  top: 50%;
  transform: translateY(-50%);
  padding-right: 30px;
  border-right: 1px solid #C4C4C4;
}
@media only screen and (max-width: 1279px), (orientation: landscape) and (max-width: 767px) {
  .error404 article .entry-content form:before {
    left: 5px;
    padding-right: 5px;
  }
}
.error404 article .entry-content form input {
  border-radius: 8px;
  padding-block: min(max(10px, 1.3020833333vw), 15px);
  padding-left: 100px;
  padding-right: 140px;
  width: 100%;
  color: #252525;
  font-size: min(max(12px, 1.5625vw), 14px);
}
@media only screen and (max-width: 1279px), (orientation: landscape) and (max-width: 767px) {
  .error404 article .entry-content form input {
    padding-left: 30px;
  }
}
.error404 article .entry-content form button {
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  height: calc(100% - min(max(12px, 1.953125vw), 20px));
  width: 120px;
  padding: 0 !important;
}