@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Serif:ital,wght@0,400;0,700;1,400&display=swap");
:root {
  --color1: #2E6EB7;
  --color1light: #D9E8F9;
  --color1dark: #3a4f68;
  --color2: #0D3D3A;
  --color3: #06182D;
  --color4: #002E62;
  --color5: #49B72E;
  --body-color: var(--color3);
  --lightGray: #F8F8F8;
  --gray: #B4B4B4;
  --white: white;
  --large-fs: 34px;
  --body-fs: 18px;
  --small-fs: 16px;
  --xsmall-fs: 14px;
  --xxl-fs: 36px;
  --radius-s: 4px;
  --radius-m: 6px;
  --radius-l: 10px;
  --radius-xxl: 30px;
  --large: 50px;
  --medium: 30px;
  --small: 10px;
  --xsmall: 5px;
  --shadow1: 10px 0px 50px -30px #c7c7c7;
  --shadow2: 0px 20px 20px 0px #00000012;
  font-size: var(--body-fs);
}

body {
  font-family: "IBM Plex Sans", sans-serif;
  font-size: var(--body-fs);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  background: var(--lightGray);
  color: var(--color3);
  box-sizing: border-box;
  overflow-x: hidden;
}
body.freeze {
  overflow: hidden;
}

body, p, h1, h2, h3, h4, h5, h6, a, ul, li {
  margin: 0;
  padding: 0;
}

.holiday-notification {
  text-align: center;
  padding: 10px 0px;
  background-color: #e74d4d;
  color: white;
  font-size: 16px;
}

mark {
  background-color: rgba(46, 110, 183, 0.1294117647);
}

a {
  color: var(--color1);
}
a[rel=tag] {
  background: var(--color1light);
  color: var(--body-color);
  text-decoration: none;
  padding: 5px 10px 5px 20px;
  border-radius: 4px;
  font-weight: 700;
  font-size: var(--xsmall-fs);
  position: relative;
}
a[rel=tag]:not(:last-child) {
  margin-right: 5px;
}
a[rel=tag]::before {
  position: absolute;
  content: "";
  background: white;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  left: 5px;
  top: 12px;
}

h2.section-header {
  font-size: 28px;
  font-weight: 400;
}

.button {
  display: flex;
  width: fit-content;
  align-items: center;
  background: var(--color1);
  box-shadow: 0px 4px 0px rgba(75, 61, 104, 0.1);
  border-radius: var(--radius-l);
  color: var(--white);
  font-weight: 700;
  height: var(--large);
  padding: 0 20px;
  cursor: pointer;
  text-decoration: none;
  width: max-content;
  transition: ease-in-out all 0.2s;
  border-color: transparent;
}
.button.secondary {
  background-color: transparent;
  border: solid 2px var(--color1);
  color: var(--color1);
  box-sizing: border-box;
}
.button.secondary:hover {
  border-color: var(--color4);
  color: var(--color4);
  background: transparent;
  box-shadow: none;
}
.button:hover {
  filter: drop-shadow(0px 4px 3px rgba(36, 53, 72, 0.1607843137));
  background: #154f91;
}
.button:active {
  transform: scale(0.95);
  transition: ease-in-out transform 0.2s;
}
.button.disabled {
  filter: grayscale(1);
  opacity: 0.6;
  cursor: not-allowed;
  pointer-events: none;
}
.button.small, .fiokom .button {
  height: 36px;
  border-radius: var(--radius-m);
  font-size: var(--xsmall-fs);
  padding: 0 var(--small);
}
.button.small.arrow::before, .fiokom .button.arrow::before {
  width: 18px;
  height: 18px;
}
.button.small.cart::after, .fiokom .button.cart::after {
  width: 16px;
  height: 16px;
}
.button.grayTransparent {
  background: rgba(0, 0, 0, 0.56);
}
.button.dark-blue {
  background: var(--color4);
}
.button.arrow::before {
  content: "";
  background: url("../images/arrow-right-circle.svg");
  width: 24px;
  height: 24px;
  display: block;
  filter: invert(1);
  margin-right: 5px;
  background-size: contain;
}
.button.cart::after {
  content: "";
  background: url("../images/shopping-cart.svg");
  background-size: contain;
  width: 24px;
  height: 24px;
  filter: invert(1);
}

input, select, textarea {
  height: var(--large);
  padding: 0 var(--small);
  border: solid 2px var(--color3);
  background: white;
  border-radius: var(--radius-l);
  outline: none;
  font-size: var(--small-fs);
  box-sizing: border-box;
}
input.small, .fiokom input.button, select.small, .fiokom select.button, textarea.small, .fiokom textarea.button {
  height: 36px;
  border-radius: var(--radius-m);
}

input, textarea {
  box-shadow: inset 4px 4px 0px rgba(0, 0, 0, 0.08);
}

input[type=checkbox], input[type=radio] {
  box-shadow: none;
  height: auto;
}

input[type=submit] {
  border: transparent;
}

textarea::placeholder {
  font-size: 16px;
  font-family: "IBM Plex Sans", sans-serif;
  padding: 10px 5px;
}

#mobilemenu {
  display: flex;
  position: fixed;
  top: 0;
  left: calc(-100% - 15px);
  background: var(--color4);
  color: var(--lightGray);
  z-index: 9999;
  height: 100vh;
  overflow: hidden;
  width: 100vw;
  transition: ease-in-out all 0.5s;
}
#mobilemenu.open {
  left: 0;
}
#mobilemenu #closeMenu {
  position: absolute;
  top: 20px;
  left: 20px;
}
#mobilemenu #closeMenu::after {
  content: "Bezárás";
  font-size: 14px;
  position: absolute;
  top: 3px;
  left: 29px;
}
#mobilemenu .menu-mobile-container {
  overflow: hidden;
  overflow: auto;
  height: calc(100% - 175px);
  margin: 20px 0 0;
  width: 100%;
}
#mobilemenu .menu-mobile-container ul {
  list-style: none;
}
#mobilemenu .menu-mobile-container ul#menu-mobile li {
  font-size: 1.2rem;
  padding: 0.5rem 1rem;
}
#mobilemenu .menu-mobile-container ul#menu-mobile li a {
  color: var(--lightGray);
  text-decoration: none;
}
#mobilemenu .menu-mobile-container ul#menu-mobile li .sub-menu {
  border-left: solid 2px var(--color1dark);
}

select {
  cursor: pointer;
}

.df {
  display: flex;
}

.vbox {
  flex-direction: column;
}

.flex1 {
  flex-grow: 1;
}

.flex_wrap {
  flex-wrap: wrap;
}

.alignCenter {
  align-items: center;
}

.alignFlexStart {
  align-items: flex-start;
}

.justifyCenter {
  justify-content: center;
}

.justifySpaceBetween {
  justify-content: space-between;
}

.alignStretch {
  align-items: stretch;
}

article p {
  margin: 0 0 2rem;
  line-height: 1.5rem;
}
article:has(#react-checkout-page) > h1 {
  display: none;
}

.content-width {
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
}
.content-width.kapcsolat {
  height: 100%;
}

.skeleton, .CheckoutPage.loading .input-group,
.CheckoutPage.loading label,
.CheckoutPage.loading .summaries > div,
.CheckoutPage.loading .cartitems li,
.CheckoutPage.loading .step {
  background: rgba(130, 130, 130, 0.2);
  background: -webkit-gradient(linear, left top, right top, color-stop(8%, rgba(130, 130, 130, 0.2)), color-stop(18%, rgba(130, 130, 130, 0.3)), color-stop(33%, rgba(130, 130, 130, 0.2)));
  background: linear-gradient(to right, rgba(130, 130, 130, 0.2) 8%, rgba(130, 130, 130, 0.3) 18%, rgba(130, 130, 130, 0.2) 33%);
  background-size: 800px 100px !important;
  animation: wave-lines 2s infinite ease-out !important;
  border-radius: 8px !important;
  color: transparent !important;
  /* &::before {
      content: '';
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      background: gray;
  } */
}
.skeleton *, .CheckoutPage.loading .input-group *,
.CheckoutPage.loading label *,
.CheckoutPage.loading .summaries > div *,
.CheckoutPage.loading .cartitems li *,
.CheckoutPage.loading .step * {
  visibility: hidden !important;
  color: transparent !important;
}

@keyframes wave-lines {
  0% {
    background-position: -468px 0;
  }
  100% {
    background-position: 468px 0;
  }
}
@keyframes wave-squares {
  0% {
    background-position: -468px 0;
  }
  100% {
    background-position: 468px 0;
  }
}
.wide-content {
  width: 100vw;
}

.p50 {
  width: 50%;
}

.bg-white {
  background: var(--white);
}

.bg-blue {
  background: var(--color1);
}

.bg-dark-blue {
  background: var(--color4);
}

.product-list-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  width: 100%;
  grid-gap: 0px;
}

.dots1 {
  position: absolute;
  top: 57%;
  z-index: 0;
}

header {
  padding: 20px;
  z-index: 2;
}
header #openMenu {
  display: none;
}
header #closeMenu {
  display: none;
}
header a.header {
  color: inherit;
  text-decoration: auto;
  transition: ease-in-out all 0.2s;
}
header a.header:hover #header-cartbox {
  border-color: var(--color1);
}
header #header-cartbox.sticked {
  position: fixed;
  z-index: 1000;
  right: 50px;
  top: 50px;
  background-color: var(--color1);
  padding: 20px;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  color: white;
  box-shadow: 0 0 0 5px white;
  transition: ease-in-out 0.2s background-color;
}
header #header-cartbox.sticked:hover {
  background-color: var(--color4);
}
header .logo {
  z-index: 2;
}
header .logo a {
  color: var(--color1);
}
header .logo a svg {
  fill: currentColor;
}
header .headerMenu ul {
  display: flex;
  list-style: none;
  margin-right: 30px;
}
header .headerMenu ul li {
  position: relative;
}
header .headerMenu ul li:not(:last-child) {
  margin-right: 30px;
}
header .headerMenu ul li a {
  text-decoration: none;
  color: var(--body-color);
  padding: 20px 0;
  font-size: 16px;
}
header .headerMenu ul li:hover ul.sub-menu {
  display: flex;
}
header .headerMenu ul li ul.sub-menu {
  width: 350px;
  position: absolute;
  display: none;
  list-style: none;
  flex-flow: column;
  background: var(--white);
  padding: 15px 30px;
  z-index: 3;
  margin: 0;
  border-radius: var(--radius-l);
  box-shadow: var(--shadow2);
  top: 40px;
}
header .headerMenu ul li ul.sub-menu li a {
  display: inline-block;
  padding: 0;
  border-bottom: 2px solid transparent;
  transition: ease-in-out border-bottom 0.2s;
}
header .headerMenu ul li ul.sub-menu li a:hover {
  border-bottom: 2px solid var(--color1);
}
header .call-menu {
  background: var(--color1light);
  border-radius: 8px;
  font-size: 12px;
  padding: 10px;
  font-weight: 500;
  margin-left: 30px;
}
header .call-menu svg {
  margin-right: 10px;
}
header .call-menu a {
  font-size: 16px;
  text-decoration: none;
  color: inherit;
}

.functions a {
  color: inherit;
  text-decoration: none;
}
.functions .function {
  position: relative;
  font-size: var(--xsmall-fs);
}
.functions .function:not(:last-child) {
  margin-right: 15px;
}
.functions .function .quantity {
  position: absolute;
  right: -10px;
  top: -15px;
  font-size: 10px;
  background: var(--color1);
  border-radius: 50%;
  width: 20px;
  height: 20px;
  color: white;
  font-weight: 700;
}
.functions.mobile {
  width: 90%;
  margin: 70px auto 0;
  border-top: solid 1px;
  border-bottom: solid 1px;
  padding: 20px 0;
}
.functions.mobile > * {
  width: 33%;
  margin-right: 0;
}
.functions.mobile .react-livesearch-mobile.open {
  width: 100%;
}
.functions.mobile .react-livesearch-mobile.open + .function, .functions.mobile .react-livesearch-mobile.open + .function + .function {
  display: none;
}
.functions.mobile .react-livesearch-mobile .loading-icon {
  width: 40px;
  z-index: 1;
  position: absolute;
  right: 17px;
}
.functions.mobile .react-livesearch-mobile .icon {
  width: 100%;
}
.functions.mobile .react-livesearch-mobile .icon span {
  font-size: 14px;
}
.functions.mobile .react-livesearch-mobile input {
  position: absolute;
  width: calc(100% - 40px);
  z-index: 1;
  border: none;
  left: 20px;
}
.functions.mobile .react-livesearch-mobile .list {
  background: white;
  color: var(--body-color);
  font-size: 14px;
  margin: 4px 0 0;
  border-radius: 10px;
  position: absolute;
  width: calc(100% - 40px);
  height: calc(100vh - 157px);
  overflow: auto;
  z-index: 2;
  left: 20px;
}
.functions.mobile .react-livesearch-mobile .list ul {
  list-style: none;
}
.functions.mobile .react-livesearch-mobile .list ul li {
  margin: 10px 0;
  padding: 0 10px;
}
.functions.mobile .react-livesearch-mobile .list ul li a .thumb {
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 10px;
}
.functions.mobile .react-livesearch-mobile .list ul li a .thumb img {
  max-width: 100%;
  max-height: 100%;
  border-radius: 4px;
}
.functions.mobile .react-livesearch-mobile .list ul li a .name {
  width: calc(100% - 60px);
}
.functions.mobile .function:not(:last-child) {
  margin-right: 0;
}
.functions.mobile .function .quantity {
  top: -13px;
  right: 20px;
}

h1 {
  font-size: var(--xxl-fs);
  font-weight: 400;
  margin: 20px 0;
  line-height: 48px;
}

h2 {
  font-size: 18px;
  font-weight: 700;
  margin: 20px 0;
}

.partners {
  background: white;
  padding: 60px 0;
}
.partners h2 {
  font-weight: 400;
}
.partners div {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  width: 100%;
  max-width: 960px;
}
.partners img {
  width: 200px;
  margin: 0 20px;
}

.product-infos {
  padding: 40px;
  max-width: 750px;
}
.product-infos .woocommerce-breadcrumb {
  font-size: var(--small-fs);
}
.product-infos .woocommerce-breadcrumb a {
  text-decoration: none;
  color: var(--color1);
}
.product-infos .product_desc .product_video {
  width: 100%;
  height: 500px;
}
.product-infos .product_desc article p {
  margin: 24px 0;
}
.product-infos .product_desc article ul {
  padding-left: 20px;
}
.product-infos .product_desc iframe {
  width: 100%;
  height: 480px;
}
.product-infos .support-box {
  margin: 10px 0;
  border-left: solid 4px var(--color1);
  padding-left: 20px;
}
.product-infos .support-box.ep-card img {
  margin-right: 10px;
}
.product-infos .support-box div {
  margin: 4px 0;
}
.product-infos .support-box a {
  text-decoration: none;
  color: var(--color1);
}
.product-infos .support-box svg {
  width: 32px;
  height: 32px;
  margin-right: 10px;
}
.product-infos .support-box p {
  margin: 0;
}

.react-livesearch .LiveSearch {
  position: relative;
}
.react-livesearch .LiveSearch.open {
  border: solid 2px var(--color3);
  border-radius: 8px;
  padding: 0 10px;
}
.react-livesearch .LiveSearch.open span {
  height: 0;
  width: 0;
  opacity: 0;
}
.react-livesearch .LiveSearch span {
  height: auto;
  width: auto;
  opacity: 1;
  transition: height 0s, opacity 0.2s linear;
}
.react-livesearch .LiveSearch .icon {
  cursor: pointer;
  margin-right: 5px;
}
.react-livesearch .LiveSearch input {
  border: none;
  -webkit-appearance: none;
  box-shadow: none;
  padding: 0;
  background: none;
}
.react-livesearch .LiveSearch svg.loading-icon {
  width: 40px;
  position: absolute;
  right: 0;
}
.react-livesearch .list {
  position: absolute;
  background: var(--white);
  padding: 20px;
  margin-top: 10px;
  box-shadow: 0 6px 14px 1px rgba(0, 0, 0, 0.1607843137);
  border-radius: var(--radius-l);
  z-index: 2;
  height: 200px;
  overflow: auto;
  width: 370px;
}
.react-livesearch .list ul {
  list-style: none;
}
.react-livesearch .list ul li a {
  color: var(--color3);
  text-decoration: none;
}
.react-livesearch .list ul li a .thumb {
  width: 40px;
  height: 40px;
  margin-right: 10px;
}
.react-livesearch .list ul li a .thumb img {
  width: 100%;
}
.react-livesearch .list ul li a .name {
  font-size: 14px;
  color: var(--color3);
}
.react-livesearch .list ul li:hover a .name {
  color: var(--color1);
  text-decoration: underline;
}
.react-livesearch .list ul li:not(:last-child) {
  margin-bottom: 10px;
}

.stock-status-badge {
  font-size: var(--xsmall-fs);
  color: white;
  font-weight: 700;
  padding: 5px 10px;
  margin-right: 10px;
  border-radius: 4px;
  width: fit-content;
  min-width: 50px;
  height: 18px;
}
.stock-status-badge.instock {
  background: var(--color5);
}
.stock-status-badge.outofstock {
  background: #c73b3b;
}
.stock-status-badge.onbackorder {
  background: gray;
}

#product-react-box .ProductReactBox .parameters {
  font-size: 12px;
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 30px;
  height: 52px;
}
#product-react-box .ProductReactBox .parameters.empty {
  height: 0;
}
#product-react-box .ProductReactBox .parameters select {
  width: 185px;
}
#product-react-box .ProductReactBox .parameters div:not(:last-child) {
  margin-right: var(--small);
}
#product-react-box .ProductReactBox .variations {
  margin: 10px 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(48%, 1fr));
  grid-gap: 2%;
}
#product-react-box .ProductReactBox .variations .small-image {
  width: 50px;
  height: 50px;
  border-radius: var(--radius-m);
  margin-right: var(--small);
  background-color: var(--white);
  padding: 5px;
}
#product-react-box .ProductReactBox .variations .small-image img {
  max-width: 100%;
  max-height: 100%;
}
#product-react-box .ProductReactBox .variations .variation-item {
  padding: 10px;
  transition: ease-in-out background-color 0.2s, ease-in-out border-color 0.2s;
  border-radius: var(--radius-m);
  cursor: pointer;
  font-size: var(--xsmall-fs);
  line-height: 20px;
  border: solid 2px transparent;
}
#product-react-box .ProductReactBox .variations .variation-item h3 {
  font-size: var(--small-fs);
}
#product-react-box .ProductReactBox .variations .variation-item .price ins {
  text-decoration: none;
}
#product-react-box .ProductReactBox .variations .variation-item:hover, #product-react-box .ProductReactBox .variations .variation-item.selected {
  border-color: var(--color1);
}
#product-react-box .ProductReactBox .variations .variation-item.selected {
  background-color: var(--white);
}
#product-react-box .ProductReactBox .variations .variation-item:not(:last-child) {
  margin-bottom: 10px;
}
#product-react-box .ProductReactBox .buy-box {
  justify-content: space-between;
  padding: 30px 0;
  border-top: solid 2px rgba(0, 0, 0, 0.09);
  border-bottom: solid 2px rgba(0, 0, 0, 0.09);
  margin: 30px 0;
  position: relative;
}
#product-react-box .ProductReactBox .buy-box .sale-price {
  font-size: var(--small-fs);
  text-decoration: line-through;
  position: absolute;
  top: 15px;
}
#product-react-box .ProductReactBox .buy-box .price {
  font-size: var(--xxl-fs);
  font-weight: 700;
  align-self: flex-start;
}
#product-react-box .ProductReactBox .buy-box .price span {
  font-size: 18px;
}
#product-react-box .ProductReactBox .buy-box .infos {
  align-items: flex-end;
}
#product-react-box .ProductReactBox .buy-box .infos .delivery-info {
  margin-top: 15px;
}
#product-react-box .ProductReactBox .buy-box .infos .delivery-info p {
  font-size: var(--small-fs);
  text-align: right;
  margin-right: 10px;
  min-width: 150px;
  min-height: 42px;
}
#product-react-box .ProductReactBox .buy-box .infos .delivery-info .services img {
  margin: 0 10px;
}
#product-react-box .ProductReactBox .shop-button input {
  width: 80px;
  margin-right: var(--small);
}

.CategoryBox {
  display: flex;
  flex-direction: column;
  height: 300px;
}
.CategoryBox > a {
  height: 100%;
  text-decoration: none;
  position: relative;
}
.CategoryBox > a .imghover {
  position: absolute;
  height: 100%;
  width: 100%;
  z-index: 1;
  border-radius: var(--radius-m);
  background: rgb(46, 110, 183);
  background: linear-gradient(0deg, rgb(46, 110, 183) 0%, rgba(58, 79, 104, 0) 56%);
}
.CategoryBox > a .imghover .name {
  position: absolute;
  left: 15px;
  bottom: 15px;
  color: white;
  font-size: var(--large-fs);
}

.ProductBox {
  display: flex;
  flex-direction: column;
  border-radius: var(--radius-l);
  padding: 15px;
  box-sizing: border-box;
  transition: ease-in-out box-shadow 0.2s;
  font-family: "IBM Plex Sans", "sans-serif";
}
.ProductBox.lonely {
  width: 265px;
  height: 380px;
}
.ProductBox.lonely .imgbg {
  width: 230px;
}
.ProductBox .imgbg {
  height: 230px;
  background: var(--white);
  border-radius: var(--radius-l);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.ProductBox .imgbg svg.youtube {
  width: 32px;
  position: absolute;
  right: 10px;
  top: 10px;
}
.ProductBox .imgbg svg.youtube .st0 {
  fill: #CE1312;
}
.ProductBox .imgbg svg.youtube .st1 {
  fill: #FFFFFF;
}
.ProductBox .imgbg .sale-badge {
  top: 10px;
  left: 10px;
  position: absolute;
  background: var(--color5);
  color: var(--white);
  font-weight: 500;
  font-size: var(--xsmall-fs);
  padding: 5px;
  border-radius: 4px;
}
.ProductBox .imgbg .instock-check {
  position: absolute;
  bottom: 10px;
  left: 10px;
  background: var(--color5);
  border-radius: 4px;
  padding: 5px;
  stroke: white;
  width: 17px;
  height: 17px;
}
.ProductBox:hover {
  background: var(--white);
  box-shadow: var(--shadow1);
}
.ProductBox:hover .addToCart {
  visibility: visible;
}
.ProductBox .name {
  font-size: var(--small-fs);
  margin: var(--small) 0;
  line-height: initial;
}
.ProductBox .price {
  font-size: 22px;
  line-height: 14px;
  font-weight: 500;
}
.ProductBox .price span {
  font-size: 14px;
}
.ProductBox .sale-price {
  font-size: var(--xsmall-fs);
  text-decoration: line-through;
}
.ProductBox .addToCart {
  visibility: hidden;
}

.FilterSidebar {
  min-width: 370px;
  background: var(--white);
  padding: 20px;
  box-sizing: border-box;
  position: relative;
  z-index: 1;
  box-shadow: var(--shadow1);
}
.FilterSidebar::before {
  content: "";
  background: var(--white);
  top: -94px;
  position: absolute;
  display: block;
  width: 100%;
  height: 94px;
  left: 0;
  border-bottom: solid 2px rgba(0, 0, 0, 0.09);
  box-sizing: border-box;
}
.FilterSidebar ul {
  list-style: none;
}

.FilterSidebarItem:not(:last-child) {
  margin-bottom: 20px;
}
.FilterSidebarItem.open .catArrow svg {
  transform: rotate(225deg);
}
.FilterSidebarItem ul.childsList {
  margin-left: 20px;
  padding: 0 10px;
  border-left: 2px solid var(--gray);
  margin-top: 10px;
}
.FilterSidebarItem ul.childsList li {
  line-height: 30px;
}
.FilterSidebarItem ul.childsList li a.active {
  color: var(--color1);
}
.FilterSidebarItem .catArrow {
  width: 16px;
  height: 16px;
  cursor: pointer;
  margin: 2px 10px 0 0;
  color: var(--color1);
}
.FilterSidebarItem .catArrow svg {
  width: 100%;
  height: 100%;
  transform: rotate(180deg);
  transition: ease-in-out transform 0.2s;
}
.FilterSidebarItem a.name {
  font-size: var(--small-fs);
  color: var(--body-color);
  text-decoration: none;
}

#react-products-container {
  border-top: 2px solid rgba(0, 0, 0, 0.09);
}
#react-products-container .ProductsContainer .list-container {
  padding: 40px;
  box-sizing: border-box;
  width: 100%;
}
#react-products-container .ProductsContainer .list-container h1 {
  padding: 0 15px;
}
#react-products-container .ProductsContainer .list-container .category-description {
  width: 100%;
  max-width: 1150px;
  padding: 0 17px 40px;
}
#react-products-container .ProductsContainer .list-container .category-description:last-child {
  margin-top: 30px;
}
#react-products-container .ProductsContainer .list-container .category-description p {
  font-size: 18px;
}
#react-products-container .ProductsContainer .list-container .list.categories {
  grid-template-columns: repeat(auto-fill, minmax(400px, 1fr));
  grid-gap: 20px;
}
#react-products-container .ProductsContainer .list-container .list .category-description {
  grid-column-start: 1;
  grid-column-end: 3;
  grid-row: 1;
  background: #dae3ec;
  border-radius: var(--radius-l);
  margin: 15px;
  padding: 20px;
}

.breadcrumb {
  font-size: var(--small-fs);
  padding: 0 15px;
}
.breadcrumb .item {
  cursor: pointer;
  color: var(--color1);
  text-decoration: none;
}
.breadcrumb .item:hover {
  color: var(--color1);
}
.breadcrumb .sepLine {
  width: 20px;
  margin: 0 5px;
  color: var(--color1);
}
.breadcrumb .sepLine svg {
  width: 100%;
  margin-top: 8px;
}

#cart-notification {
  visibility: hidden;
  opacity: 0;
  background: var(--color1);
  padding: 15px 20px;
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 1000;
  color: white;
  border-radius: 6px;
  font-size: 16px;
  font-weight: 700;
  transition: ease-in-out opacity 0.2s;
}
#cart-notification.show {
  transition: ease-in-out opacity 0.2s;
  opacity: 1;
  visibility: visible;
}
#cart-notification svg {
  margin-right: 10px;
}

.frontpage header {
  background: white;
}
.frontpage .hero {
  height: 70vh;
  min-height: 680px;
  max-height: 1200px;
}
.frontpage .hero .context {
  z-index: 2;
}
.frontpage .hero img {
  right: 0%;
  top: 120px;
  width: 55%;
  z-index: 1;
  position: absolute;
}
.frontpage .hero p {
  width: 100%;
  max-width: 480px;
  line-height: 30px;
  margin: 0 0 30px;
}
.frontpage .hero h1 {
  font-size: 56px;
  line-height: 72px;
  z-index: 1;
  width: 688px;
}
.frontpage .services {
  padding: 110px 0 40px;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
  grid-gap: 30px;
}
.frontpage .services .service {
  box-sizing: border-box;
  padding: 30px;
  border-radius: var(--radius-xxl);
  background: rgb(235, 235, 235);
  z-index: 1;
  box-shadow: var(--shadow1);
}
.frontpage .services .service .head {
  height: 60px;
}
.frontpage .services .service h2 {
  margin: 0;
}
.frontpage .services .service .hicon {
  color: var(--color1);
  margin-right: 15px;
  width: 52px;
}
.frontpage .services .service .hicon svg {
  width: 100%;
}
.frontpage .services .service p {
  margin: 20px 0 30px;
}
.frontpage .services .service:first-child {
  background: rgb(238, 241, 244);
}
.frontpage .services .service .button {
  margin-top: auto;
}

.product-gallery .product-featured {
  position: relative;
  height: calc(100vh - 96px);
  background: var(--white);
  position: relative;
  cursor: pointer;
}
.product-gallery .product-featured img {
  max-width: 100%;
  max-height: 100%;
}
.product-gallery .product-featured::before {
  content: "";
  position: absolute;
  height: 95px;
  top: -95px;
  width: 100%;
  background: white;
  z-index: -1;
}
.product-gallery .product-featured #gallery-button {
  position: absolute;
  right: 10px;
  bottom: 10px;
}
.product-gallery .product-featured .thumbnails {
  position: absolute;
  bottom: 10px;
  left: 10px;
  background: rgba(0, 0, 0, 0.2196078431);
  border-radius: 10px;
  padding: 10px;
  flex-wrap: wrap;
}
.product-gallery .product-featured .thumbnails .thumb-container {
  height: 60px;
  cursor: pointer;
}
.product-gallery .product-featured .thumbnails .thumb-container:not(:last-child) {
  margin-right: 5px;
}
.product-gallery .product-featured .thumbnails .thumb-container img {
  border-radius: 6px;
  max-width: 100%;
  max-height: 100%;
  transition: ease-in-out border-color 0.2;
  border: solid 2px transparent;
  box-sizing: border-box;
}
.product-gallery .product-featured .thumbnails .thumb-container:hover img {
  border-color: var(--color1);
}

.newsletter {
  color: var(--white);
}
.newsletter input {
  width: 300px;
}
.newsletter input[type=submit] {
  width: auto;
}
.newsletter .button {
  margin: 0 10px;
}
.newsletter p {
  font-size: 22px;
  width: 450px;
  margin-right: 30px;
  text-align: right;
}

footer .categories {
  padding: 40px;
}
footer .categories ul {
  list-style: none;
  column-count: 3;
}
footer .categories ul li {
  line-height: 30px;
}
footer .categories ul li a {
  text-decoration: none;
  color: var(--white);
  font-size: var(--small-fs);
}
footer .categories .links {
  border-top: solid 2px rgba(255, 255, 255, 0.1215686275);
  margin-top: 20px;
  padding-top: 20px;
}
footer .infos {
  color: var(--white);
  padding: 40px;
}
footer .infos .addresses {
  align-items: flex-end;
}
footer .infos .addresses > div {
  margin-bottom: 10px;
  align-items: flex-start;
}
footer .infos .addresses > div address {
  margin-left: 10px;
}
footer .infos .addresses svg {
  min-width: 18px;
  height: auto;
  margin-right: 10px;
}
footer .infos .addresses a {
  text-decoration: none;
  color: inherit;
}
footer .infos .barion {
  margin-bottom: 30px;
  display: flex;
  justify-content: end;
}
footer .infos .barion svg {
  width: 334px;
  height: 34px;
}
footer .infos svg {
  width: 24px;
  height: 24px;
  fill: currentColor;
}
footer .bottom {
  justify-content: space-between;
  color: var(--white);
  padding: 25px 40px;
}
footer .bottom p {
  font-size: 14px;
}
footer .bottom > svg {
  fill: currentColor;
}
footer .bottom a.slash-link {
  text-decoration: none;
  font-size: 10px;
  color: var(--white);
  font-weight: 700;
}
footer .bottom a.slash-link span {
  margin-right: 5px;
}

.featured-products {
  margin: 80px 0;
}

.pswp__bg {
  background: var(--white) !important;
}

.penztar .woocommerce-error {
  background: #ffdfdf;
  color: #b20a0a;
  padding: 20px;
  list-style: none;
  border-radius: 10px;
}

form.woocommerce-checkout {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  grid-gap: 80px;
  margin: 0 0 100px;
  /* tfoot {
      border: solid 2px var(--gray);
      border-left: none;
      border-right: none;

      tr.woocommerce-shipping-totals {
          display: flex;
          justify-content: space-between;
          border: solid 2px var(--gray);
          width: 100%;
          border-left: none;
          border-right: none;
          padding: 10px 0;
          margin: 10px 0;
          width: 120%;

          ul#shipping_method {
              li {
                  display: grid;
                  grid-template-columns: 18px 1fr;
                  margin-bottom: 10px;

                  input {
                      height: auto;
                      margin: 0 5px 0 0;
                  }

                  &.postapont {
                      select#postaponts-select {
                          width: 205px;
                      }
                  }

                  .button, select {
                      grid-column-start: 2;
                      margin-top: 5px;
                  }
              }
          }
      }
  } */
}
form.woocommerce-checkout .woocommerce-account-fields .create-account {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  grid-gap: 10px;
}
form.woocommerce-checkout .sepline:not(:last-child) {
  grid-column: 1/-1;
  border-bottom: solid 2px var(--gray);
}
form.woocommerce-checkout .product-name p {
  margin: 0;
}
form.woocommerce-checkout .product-total {
  font-weight: 700;
}
form.woocommerce-checkout .product-total, form.woocommerce-checkout .amount, form.woocommerce-checkout .price {
  display: block;
  text-align: right;
}
form.woocommerce-checkout .grid {
  display: grid;
  grid-template-columns: 1fr 150px;
  grid-gap: 10px;
}
form.woocommerce-checkout .products {
  font-size: 14px;
}
form.woocommerce-checkout .products .woocommerce-Price-amount.amount {
  font-weight: 700;
}
form.woocommerce-checkout .container {
  background: white;
  border-radius: 10px;
  padding: 30px;
  margin-bottom: 20px;
  box-shadow: var(--shadow2);
}
form.woocommerce-checkout .container ul#shipping_method li {
  min-height: 50px;
  margin: 0 0 10px;
  font-size: 14px;
}
form.woocommerce-checkout .container ul#shipping_method li label {
  width: 100%;
  padding: 10px;
  border: solid 2px var(--gray);
  border-radius: 4px;
  transition: ease-in-out border-color 0.2s;
}
form.woocommerce-checkout .container ul#shipping_method li label:hover {
  border-color: var(--color1);
}
form.woocommerce-checkout .container ul#shipping_method li label:focus-within {
  border-color: var(--color1);
  background: var(--color1light);
}
form.woocommerce-checkout .container ul#shipping_method li label input {
  height: auto;
  margin: 0px 5px;
}
form.woocommerce-checkout .container ul#shipping_method li label .shipping-fee {
  margin-left: auto;
  font-weight: 700;
  padding: 5px 10px;
  border-radius: 4px;
}
form.woocommerce-checkout .container ul#shipping_method li label .shipping-fee.free {
  color: white;
  background: var(--color5);
}
form.woocommerce-checkout .container ul#shipping_method li.postapont select#postaponts-select {
  width: 100%;
  font-size: 14px;
}
form.woocommerce-checkout .container ul#shipping_method li.packeta_csomagpont select#packetas-select {
  width: 100%;
  font-size: 14px;
}
form.woocommerce-checkout .container ul#shipping_method li .button, form.woocommerce-checkout .container ul#shipping_method li select {
  grid-column-start: 2;
  margin-top: 5px;
}
form.woocommerce-checkout .container ul#shipping_method li .module:not(:empty) {
  margin-top: var(--small);
}
form.woocommerce-checkout label {
  cursor: pointer;
}
form.woocommerce-checkout input#ship-to-different-address-checkbox {
  height: 15px;
}
form.woocommerce-checkout p.form-row {
  display: flex;
  flex-direction: column;
  margin: 0;
}
form.woocommerce-checkout p.form-row span.woocommerce-input-wrapper input {
  width: 100%;
}
form.woocommerce-checkout p.form-row.form-row-wide {
  grid-column: 1/-1;
}
form.woocommerce-checkout p.form-row label {
  font-size: var(--xsmall-fs);
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 5px;
}
form.woocommerce-checkout p.form-row textarea#order_comments {
  width: 100%;
  height: 240px;
  padding: 15px;
  font-family: "IBM Plex Sans", sans-serif;
}
form.woocommerce-checkout #order_review {
  margin-top: 40px;
}
form.woocommerce-checkout h3 {
  margin: 40px 0 20px;
}
form.woocommerce-checkout #order_review_heading {
  display: none;
}
form.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  grid-gap: 20px 10px;
}
form.woocommerce-checkout .woocommerce-billing-fields p.notice {
  margin-bottom: 20px;
}
form.woocommerce-checkout .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  grid-gap: 20px 10px;
}
form.woocommerce-checkout #order_review table.shop_table {
  text-align: left;
  width: 100%;
  background: var(--white);
  padding: 40px;
  margin-bottom: 10px;
  border-radius: 10px;
}
form.woocommerce-checkout #order_review table.shop_table thead::after {
  content: "";
  display: block;
  height: 10px;
}
form.woocommerce-checkout #order_review table.shop_table tfoot::before {
  content: "";
  display: block;
  height: 10px;
}
form.woocommerce-checkout #order_review table.shop_table li::marker {
  content: none;
}
form.woocommerce-checkout #payment {
  background: var(--white);
  padding: 40px;
  border-radius: 10px;
  box-shadow: var(--shadow2);
}
form.woocommerce-checkout #payment ul.wc_payment_methods {
  list-style: none;
  margin-bottom: 40px;
  border: solid 2px var(--gray);
  border-radius: 10px;
  padding: 20px;
}
form.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method {
  display: grid;
  grid-template-columns: 25px 1fr;
  align-items: center;
}
form.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method:not(:last-child) {
  margin-bottom: 20px;
}
form.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method .payment_box {
  background: rgba(46, 110, 183, 0.1411764706);
  padding: 10px;
  box-sizing: border-box;
  border-radius: 6px;
  font-size: 14px;
  margin: 5px 25px 0;
  grid-column: 1/-1;
}
form.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method input {
  box-shadow: none;
  height: 12px;
  cursor: pointer;
}
form.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method label {
  cursor: pointer;
  display: flex;
  align-items: center;
  font-size: 14px;
}
form.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method label a {
  margin-left: 10px;
}
form.woocommerce-checkout #payment ul.wc_payment_methods li.wc_payment_method::marker {
  content: none;
}
form.woocommerce-checkout #payment .form-row.place-order {
  margin: 20px 0;
}
form.woocommerce-checkout #payment .form-row.place-order .woocommerce-terms-and-conditions-wrapper p {
  margin-bottom: 20px;
}
form.woocommerce-checkout .woocommerce-additional-fields__field-wrapper label {
  font-size: var(--xsmall-fs);
  text-transform: uppercase;
  font-weight: 700;
  margin-bottom: 5px;
}
form.woocommerce-checkout button {
  border: none;
  font-size: inherit;
}
form.woocommerce-checkout .shipping_address.hide {
  display: none;
}
form.woocommerce-checkout #ep_card_checkout_field {
  margin-top: 20px;
}

.page-article {
  background: white;
  padding: 60px 100px;
  border-radius: 10px;
  box-sizing: border-box;
  min-height: calc(100vh - 100px);
  margin: 30px 0 100px;
  line-height: 28px;
  box-shadow: var(--shadow2);
}
.page-article h2 {
  font-size: 1.5rem;
  font-weight: 700;
  margin: 40px 0 10px;
}
.page-article .featured-products {
  margin: 20px 0;
}

.single-bg {
  background-color: white;
}
.single-bg .single-post {
  width: 100%;
  max-width: 720px;
  margin: 0 auto;
  padding: 4rem 1rem;
  font-size: 1rem;
  line-height: 1.7rem;
  font-family: "IBM Plex Serif", serif;
  box-sizing: border-box;
}
.single-bg .single-post .featured-products {
  margin: 0 0 80px;
  border-bottom: solid 2px var(--gray);
  padding-bottom: 20px;
  position: relative;
}
.single-bg .single-post .featured-products::after {
  content: "Kapcsolódó termékek a webáruházunkból";
  position: absolute;
  bottom: -34px;
  font-size: 14px;
  color: gray;
}
.single-bg .single-post .featured-products .ProductList .list {
  grid-gap: 10px;
}
.single-bg .single-post .featured-products .ProductList .list .ProductBox {
  border: dashed 2px var(--gray);
  border-radius: 10px;
  padding: 10px;
}
.single-bg .single-post .meta {
  margin: 0rem 0px 2rem;
}
.single-bg .single-post p {
  margin: 0 0 2rem;
}
.single-bg .single-post ul {
  margin: 0 0 2rem;
  padding-left: 2rem;
}
.single-bg .single-post ul li::marker {
  color: var(--color1);
}
.single-bg .single-post ul li:not(:last-child) {
  margin-bottom: 1rem;
}
.single-bg .single-post h1 {
  margin: 1rem 0;
  font-size: 2.5rem;
}
.single-bg .single-post h2 {
  font-size: 1.6rem;
  margin: 4rem 0 1rem;
}
.single-bg .single-post h3 {
  font-size: 1.3rem;
  margin: 3rem 0 1rem;
}
.single-bg .single-post img {
  max-width: calc(100vw - 2rem) !important;
  height: auto;
}
.single-bg .single-post .wp-caption .wp-caption-text {
  font-size: 0.8rem;
  font-style: italic;
}

.content-width.kosar {
  width: 100%;
  max-width: 800px;
  min-height: calc(100vh - 563px);
}
@media screen and (max-width: 600px) {
  .content-width.kosar {
    text-align: center;
  }
}
.content-width.kosar #react-cart-page {
  width: 100%;
}
.content-width.kosar #react-cart-page .CartPage {
  background: var(--white);
  padding: 40px;
  border-radius: var(--radius-l);
  box-sizing: border-box;
}
@media screen and (max-width: 600px) {
  .content-width.kosar #react-cart-page .CartPage {
    padding: 20px;
    margin: 10px;
  }
  .content-width.kosar #react-cart-page .CartPage a.button {
    margin: 0px 10px 80px;
    width: calc(100% - 60px);
    text-align: center;
    justify-content: center;
  }
  .content-width.kosar #react-cart-page .CartPage li {
    font-size: 14px;
  }
  .content-width.kosar #react-cart-page .CartPage li .price {
    margin-left: auto;
  }
}
.content-width.kosar #react-cart-page .CartPage ul {
  margin-bottom: 40px;
}
.content-width.kosar #react-cart-page .CartPage ul li {
  padding: 10px 0;
  border-bottom: solid 2px var(--gray);
}
.content-width.kosar #react-cart-page .CartPage ul li a.name {
  flex-grow: 1;
  text-decoration: none;
  color: inherit;
}
.content-width.kosar #react-cart-page .CartPage ul li input {
  width: 60px;
  margin: 0 10px;
}
.content-width.kosar #react-cart-page .CartPage ul li .delete-item {
  cursor: pointer;
}
.content-width.kosar #react-cart-page .CartPage ul li .price {
  width: 100px;
  text-align: end;
  margin: 0px 10px;
}
@media screen and (max-width: 600px) {
  .content-width.kosar #react-cart-page .CartPage ul li {
    row-gap: 20px;
  }
  .content-width.kosar #react-cart-page .CartPage ul li input {
    margin-left: auto;
  }
}
.content-width.kosar #react-cart-page .CartPage .total {
  text-align: end;
}
.content-width.kosar a.button {
  align-self: flex-end;
  margin: 20px 0 100px;
}

#react-parcel-selector {
  position: fixed;
  width: 100vw;
  left: 0;
  height: 100vh;
  top: 0;
  background: rgba(0, 0, 0, 0.3882352941);
  visibility: hidden;
}
#react-parcel-selector.open {
  visibility: visible;
}

.ParcelSelector {
  position: fixed;
  width: calc(100vw - 60px);
  height: calc(100vh - 60px);
  left: 30px;
  top: 30px;
  z-index: 10;
  box-shadow: var(--shadow2);
}
.ParcelSelector .close-btn {
  position: absolute;
  right: 20px;
  top: 20px;
  background: white;
  z-index: 999;
  width: 46px;
  height: 46px;
  cursor: pointer;
  border-radius: 50%;
  box-shadow: var(--shadow2);
}
.ParcelSelector .close-btn:before, .ParcelSelector .close-btn:after {
  width: 24px;
  height: 4px;
  background: var(--color3);
  content: "";
  transform: rotate(135deg);
  position: absolute;
  top: 21px;
  left: 12px;
}
.ParcelSelector .close-btn:before {
  transform: rotate(45deg);
}
.ParcelSelector .parcel-list {
  width: 30%;
  background: var(--white);
}
.ParcelSelector .parcel-list input {
  margin: 15px;
}
.ParcelSelector .parcel-list .parcels {
  overflow: auto;
  height: calc(100% - 46px);
}
.ParcelSelector .parcel-list .parcels ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.ParcelSelector .parcel-list .parcels ul li {
  cursor: pointer;
  border-bottom: solid 2px var(--gray);
  padding: 10px;
}
.ParcelSelector .parcel-list .parcels ul li:hover {
  background: var(--color1);
  color: white;
}
.ParcelSelector #mapid {
  width: 70%;
  height: 100%;
}
.ParcelSelector .leaflet-popup .leaflet-popup-content {
  width: 350px;
  margin: 0;
  padding: 20px;
  box-sizing: border-box;
}
.ParcelSelector .leaflet-popup .leaflet-popup-content h3 {
  margin: 0;
  font-size: 16px;
}
.ParcelSelector .leaflet-popup .leaflet-popup-content p {
  margin: 10px 0;
}
.ParcelSelector .leaflet-popup .leaflet-popup-content .button {
  margin: 15px 0 0;
}
.ParcelSelector .leaflet-popup table.packetery-hours {
  border: solid 1px gray;
  border-collapse: collapse;
}
.ParcelSelector .leaflet-popup table.packetery-hours td, .ParcelSelector .leaflet-popup table.packetery-hours th {
  border: solid 1px gray;
  padding: 5px;
}

.woocommerce-order {
  width: 100%;
  max-width: 800px;
  background: white;
  padding: 60px;
  border-radius: 10px;
  box-sizing: border-box;
  margin: 0 0 100px;
}
@container (max-width: 600px) {
  .woocommerce-order {
    padding: 20px;
  }
}
.woocommerce-order table {
  width: 100%;
}
.woocommerce-order table tr {
  border-bottom: solid 1px #d6d6d6;
  display: block;
  font-size: 16px;
  padding: 5px 0;
}
.woocommerce-order table tr td:first-child {
  width: 100%;
  text-align: left;
}
.woocommerce-order ul {
  list-style: none;
  margin: 30px 0 30px;
}
.woocommerce-order ul li {
  margin: 5px 0px;
}

.menu-wrapper {
  background: white;
  z-index: 1000;
  position: absolute;
  top: 85px;
  left: 20px;
  width: calc(100vw - 40px);
  max-height: 700px;
  overflow: auto;
  border-radius: 20px;
  box-shadow: 0px 10px 1000px 200px rgba(0, 0, 0, 0.4509803922);
  visibility: hidden;
  opacity: 0;
  transition: visibility 0.2s, opacity 0.2s;
}
.menu-wrapper.open {
  visibility: visible;
  opacity: 1;
}
.menu-wrapper:before {
  content: "";
  width: 40px;
  height: 40px;
  background: var(--lightGray);
  position: fixed;
  right: 912px;
  top: 75px;
  transform: rotate(45deg);
  border-radius: 4px;
}
.menu-wrapper .backroundshadow {
  width: 100vw;
  height: 100vh;
  background: rgba(0, 0, 0, 0.2784313725);
  position: fixed;
  left: 0;
  top: 0;
}
.menu-wrapper .cats {
  margin-top: 20px;
}
.menu-wrapper .cats .cat {
  padding: 10px;
}
.menu-wrapper .cats .cat:hover, .menu-wrapper .cats .cat.active {
  background: var(--lightGray);
}
.menu-wrapper .cats .cat a.name {
  font-size: 16px;
  text-decoration: none;
  color: inherit;
}
.menu-wrapper .cats .cat svg {
  width: 16px;
  height: 16px;
  margin-right: 10px;
  stroke: var(--color1);
  transform: rotate(180deg);
}
.menu-wrapper .categories {
  background: var(--lightGray);
  width: 100%;
  padding: 20px;
}
.menu-wrapper .categories .subcatlist {
  grid-template-columns: repeat(auto-fill, minmax(400px, 1fr));
  grid-gap: 20px;
  display: none;
  opacity: 0;
  transition: opacity 0.2s;
}
.menu-wrapper .categories .subcatlist.open {
  display: grid;
  opacity: 1;
}

.fiokom .woocommerce {
  display: flex;
  flex-wrap: wrap;
}
.fiokom .woocommerce .woocommerce-privacy-policy-text {
  margin: 30px 0;
}
.fiokom .woocommerce fieldset {
  background: var(--color1light);
  border-radius: 10px;
  border: none;
  margin: 50px 0 30px;
  padding: 30px;
  box-sizing: border-box;
}
.fiokom .woocommerce fieldset legend {
  top: -20px;
  left: -16px;
  position: relative;
}
.fiokom .woocommerce .woocommerce-notices-wrapper > div {
  border-radius: 10px;
  background: var(--lightGray);
  padding: 10px;
  margin: 20px 0;
}
.fiokom .woocommerce #customer_login {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
  grid-column-gap: 100px;
  grid-row-gap: 40px;
}
.fiokom .woocommerce .form-row {
  display: flex;
  flex-direction: column;
  margin-bottom: 10px;
}
.fiokom .woocommerce .woocommerce-form-register {
  background: var(--color1light);
  padding: 20px;
  border-radius: 10px;
}
.fiokom .woocommerce .woocommerce-MyAccount-navigation {
  width: 250px;
  margin-right: 20px;
  margin-bottom: 20px;
}
.fiokom .woocommerce .woocommerce-MyAccount-navigation ul {
  list-style: none;
}
.fiokom .woocommerce .woocommerce-MyAccount-navigation ul li:hover a, .fiokom .woocommerce .woocommerce-MyAccount-navigation ul li.is-active a {
  color: var(--color1);
}
.fiokom .woocommerce .woocommerce-MyAccount-navigation ul li a {
  text-decoration: none;
  color: inherit;
  font-size: var(--small-fs);
}
.fiokom .woocommerce .woocommerce-MyAccount-content {
  flex-grow: 1;
  width: min-content;
  overflow-x: auto;
}
.fiokom .woocommerce .woocommerce-MyAccount-content > p {
  margin: 0px 0 20px;
}
.fiokom .woocommerce .woocommerce-MyAccount-content table {
  table-layout: auto;
  width: 100%;
  text-align: left;
  font-size: 14px;
  border-collapse: collapse;
  margin-bottom: 20px;
  border: 1px solid #ddd;
  overflow-x: auto;
}
.fiokom .woocommerce .woocommerce-MyAccount-content table th {
  font-weight: 700;
}
.fiokom .woocommerce .woocommerce-MyAccount-content table th, .fiokom .woocommerce .woocommerce-MyAccount-content table td {
  padding: 15px;
  text-align: left;
  border-bottom: 1px solid #ddd;
  min-width: 100px;
  line-height: initial;
}
.fiokom .woocommerce .woocommerce-MyAccount-content table tr:nth-child(even) {
  background-color: #f2f2f2;
}
.fiokom .woocommerce .woocommerce-MyAccount-content table td {
  vertical-align: center;
}

.blog-page .lead {
  padding: 20px 20px 40px;
  border-bottom: solid 10px var(--color1light);
}
.blog-page ul.grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(500px, 1fr));
  grid-gap: 40px;
  padding: 20px;
  list-style: none;
}
.blog-page ul.grid li {
  font-family: "IBM Plex Serif", serif;
}
.blog-page ul.grid li .featured-image {
  height: 400px;
  width: 100%;
  background-size: cover;
}
.blog-page ul.grid li .meta {
  margin: 20px 0;
  font-size: 16px;
  justify-content: space-between;
}
.blog-page ul.grid li h2 {
  font-size: 24px;
}
.blog-page ul.grid li h2 a {
  text-decoration: none;
  color: var(--body-color);
  transition: ease-in-out color 0.2s;
}
.blog-page ul.grid li h2 a:hover {
  color: var(--color1);
}

@media screen and (max-width: 1000px) {
  .penztar {
    padding: 0;
    box-sizing: border-box;
  }
  .penztar .woocommerce-checkout {
    display: flex;
    flex-direction: column;
  }
  .blog-page ul.grid {
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
  }
  .sale-price {
    display: none;
  }
  .page-article {
    padding: 10px 20px;
    margin: 0;
  }
  .dots1 {
    top: 30%;
  }
  .dots1 svg {
    width: 20vw;
  }
  .df {
    flex-wrap: wrap;
  }
  .hideOnMobile {
    display: none;
  }
  header {
    /* .menu-wrapper {
        position: fixed;
        z-index: 99;
        left: -100%;
        top: 0;
        width: 90vw;
        height: 100%;
        background: var(--color1);
        transition: cubic-bezier(0, 0, 0.2, 1) all 0.5s;

        &.open {
            left: 0;
            filter: drop-shadow(23px 0px 17px rgba(10,10,10,0.6));
            transition: cubic-bezier(0, 0, 0.2, 1) all 0.5s;
        }

        #closeMenu {
            display: flex;
            margin: 1rem 1rem 0;

            svg {
                width: 32px;
                height: 32px;
                stroke: white;
            }
        }

        .headerMenu {
            ul#menu-header {
                flex-direction: column;
                margin-right: 0;
                flex-grow: 1;
                margin-top: 30px;

                li {
                    margin-right: 0;
                    padding: 0 20px;
                    margin: 10px 0;

                    a {
                        color: var(--white);
                        font-size: 1.4rem;
                        line-height: 1.5rem;
                    }
                }
            }
        }
    } */
  }
  header .logo {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
  header #openMenu {
    display: block;
    z-index: 9;
  }
  header #mobilemenu #closeMenu {
    display: flex;
    margin: 1rem 1rem 0;
  }
  header #mobilemenu #closeMenu::after {
    content: "Bezárás";
    font-size: 14px;
    position: absolute;
    top: 3px;
    left: 29px;
  }
  header #mobilemenu #closeMenu svg {
    width: 32px;
    height: 32px;
    stroke: white;
  }
  header .react-livesearch .LiveSearch {
    height: 40px;
  }
  header .react-livesearch .LiveSearch .icon {
    margin: 0 8px;
  }
  header a.header {
    z-index: 9;
  }
  header a.header #header-cartbox {
    width: 22px;
    height: 40px;
  }
  header #header-cartbox.sticked {
    padding: 5px;
    font-size: 0;
    align-items: center;
    justify-content: center;
    transform: scale(0.8);
    top: 5px;
    right: 5px;
  }
  header #header-cartbox.sticked span {
    display: none;
  }
  .frontpage .hero {
    min-height: auto;
    padding: 0 20px 20px;
    height: 100%;
    align-items: flex-start;
    flex-direction: column-reverse;
  }
  .frontpage .hero img {
    width: calc(100% + 40px);
    position: relative;
    top: auto;
    left: -20px;
  }
  .frontpage .hero .context h1 {
    width: auto;
    font-size: 2rem;
    line-height: 2.5rem;
  }
  .frontpage .services {
    padding: 1rem;
    box-sizing: border-box;
    grid-gap: 0;
  }
  .frontpage .services .service {
    width: 100%;
    padding: 1.5rem;
  }
  .frontpage .services .service:not(:last-child) {
    margin-bottom: 1rem;
  }
  .frontpage .services .service .hicon {
    margin-right: 10px;
    width: 35px;
  }
  .frontpage .services .service h2 {
    margin: 0 auto;
    width: calc(100% - 50px);
  }
  .frontpage .services .service h2 br {
    display: none;
  }
  .frontpage .services .service p {
    margin: 5px 0 10px;
  }
  .frontpage .partners {
    padding: 1rem;
  }
  .frontpage .partners img {
    width: 8rem;
    height: auto;
  }
  .product-list-grid {
    grid-template-columns: repeat(auto-fill, minmax(50%, 1fr));
  }
  .ProductBox {
    background: var(--white);
    box-shadow: var(--shadow1);
    padding: 10px;
    margin: 5px;
  }
  .ProductBox .imgbg {
    height: auto;
  }
  .ProductBox .imgbg img {
    width: 100%;
  }
  .ProductBox .button.addToCart {
    visibility: visible;
    margin-top: 5px;
  }
  .ProductBox .name {
    font-size: 0.8rem;
    line-height: 1rem;
  }
  .ProductBox .price {
    font-size: 0.8rem;
    line-height: 1rem;
  }
  .ProductBox .price > span {
    font-size: 0.8rem;
    line-height: 1rem;
  }
  .featured-products {
    margin: 10px 0;
  }
  footer .newsletter {
    height: auto;
    padding: 30px 20px;
  }
  footer .newsletter .button {
    margin: 0;
    margin-top: 10px;
  }
  footer .newsletter p {
    width: auto;
    text-align: center;
    margin: 0;
    margin-bottom: 20px;
  }
  footer .newsletter #react-newsletter-signup .NewsletterSignup > * {
    width: 100%;
  }
  footer .categories {
    padding: 1.5rem;
  }
  footer .categories ul {
    columns: auto;
  }
  footer .infos {
    padding: 1.5rem;
    width: 100%;
    box-sizing: border-box;
  }
  footer .infos .barion {
    width: auto;
  }
  footer .infos .barion img {
    width: 100%;
  }
  footer .infos .addresses {
    align-items: flex-start;
  }
  footer .infos .addresses > div {
    margin-bottom: 1.5rem;
    flex-wrap: nowrap;
    max-width: 280px;
  }
  footer .infos .eutamogataslink img {
    transform: translate(0);
    width: 100%;
    max-width: 250px;
  }
  footer .bottom {
    padding: 1.5rem;
  }
  footer .bottom > svg {
    margin-bottom: 10px;
  }
  footer .bottom a.slash-link {
    margin: 100px auto 0;
  }
  footer .bottom > p {
    font-size: 12px;
  }
  #react-products-container .ProductsContainer .list-container {
    padding: 1rem;
  }
  #react-products-container .ProductsContainer .list-container .breadcrumb {
    padding: 0;
  }
  #react-products-container .ProductsContainer .list-container .breadcrumb .item {
    font-size: 0.8rem;
  }
  #react-products-container .ProductsContainer .list-container .breadcrumb .sepLine {
    width: 16px;
    height: 16px;
  }
  #react-products-container .ProductsContainer .list-container .breadcrumb .sepLine svg {
    width: 16px;
    height: 16px;
  }
  #react-products-container .ProductsContainer .list-container h1.title {
    padding: 1rem 0px;
    margin: 0;
    font-size: 2rem;
    line-height: 2rem;
  }
  .p50 {
    width: 100%;
  }
  .product-infos {
    padding: 1rem;
  }
  .product-infos h1 {
    font-size: 1.5rem;
    line-height: 2rem;
  }
  .product-infos #product-react-box .ProductReactBox .buy-box {
    margin: 10px 0;
    padding: 10px 0;
  }
  .product-infos #product-react-box .ProductReactBox .buy-box .price {
    font-size: 1.5rem;
    margin: 0 0 10px;
  }
  .product-infos #product-react-box .ProductReactBox .buy-box .infos {
    align-items: flex-start;
  }
  .product-infos #product-react-box .ProductReactBox .buy-box .infos .delivery-info {
    margin: 0;
  }
  .product-gallery .product-featured {
    height: 350px;
    height: 40vh;
  }
  .single-post .featured-products.swipeable .ProductList .product-list-grid {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
  }
  .single-post .featured-products.swipeable .ProductList .product-list-grid .ProductBox {
    max-width: 200px;
  }
  .single-post .featured-products.swipeable .ProductList .product-list-grid .ProductBox img {
    width: 150px;
  }
  .swipeable .ProductList .product-list-grid {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
  }
}
#place_order.disabled {
  pointer-events: none;
  background-color: var(--gray);
}

.CheckoutPage {
  padding: 30px;
  margin: 0 auto 50px;
  width: 100%;
  max-width: 800px;
  box-sizing: border-box;
  position: relative;
  /* &:has(*:invalid) {
      .stepbuttons {
          .button {
              @extend .disabled;
          }
      }
  } */
  /* input.validate:invalid {
      border-color: red;;
  } */
}
.CheckoutPage.validationerror input:invalid {
  border-color: red;
}
.CheckoutPage.validationerror input:invalid[required] + label:after {
  background-color: red;
}
@media screen and (max-width: 600px) {
  .CheckoutPage {
    padding: 15px;
  }
  .CheckoutPage .input-group.checkbox {
    flex-wrap: nowrap;
    align-items: baseline;
  }
}
.CheckoutPage.loading .input-group,
.CheckoutPage.loading label,
.CheckoutPage.loading .summaries > div,
.CheckoutPage.loading .cartitems li,
.CheckoutPage.loading .step {
  border: none !important;
}
.CheckoutPage .secure-badge {
  background-color: var(--color5);
  color: white;
  font-weight: bold;
  width: 114px;
  width: fit-content;
  padding: 5px 10px;
  line-height: 13px;
  border-radius: 4px;
  text-transform: uppercase;
  font-size: 10px;
  letter-spacing: 0.8px;
  flex-wrap: wrap;
}
.CheckoutPage .formbox h4 {
  line-height: 18px;
}
.CheckoutPage .header {
  margin-bottom: 20px;
}
.CheckoutPage .header h1 {
  margin: 0;
  padding: 0;
  line-height: 30px;
}
.CheckoutPage .header {
  margin: 30px 0;
}
.CheckoutPage .header h2 {
  margin: 0;
}
.CheckoutPage .header p {
  margin: 0;
}
.CheckoutPage #checkoutform {
  margin: 0 0 30px;
}
.CheckoutPage .payment-method {
  flex-wrap: nowrap;
}
.CheckoutPage .payment-method h4 {
  flex-grow: 1;
}
.CheckoutPage .radio {
  display: flex;
  align-items: center;
  position: relative;
  text-align: left;
  cursor: pointer;
  margin: 0;
}
.CheckoutPage .radio > input {
  position: absolute;
  z-index: -1;
  opacity: 0;
}
.CheckoutPage .radio > input:checked ~ span {
  background-color: var(--color1);
}
.CheckoutPage .radio > input:checked ~ span::after {
  background-color: white;
}
.CheckoutPage .radio > span {
  background-color: #EBEDF3;
  border: 1px solid transparent;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.CheckoutPage .radio > span::after {
  content: "";
  width: 6px;
  height: 6px;
  background: transparent;
  border-radius: 50%;
}
.CheckoutPage .hide {
  display: none;
}
.CheckoutPage .df:not(.input-group, .shipping-method) {
  gap: 10px;
}
.CheckoutPage .customernote {
  margin: 40px 0;
}
.CheckoutPage .additional-infos {
  font-size: 14px;
}
.CheckoutPage .desc {
  font-size: 14px;
  color: var(--color1dark);
}
.CheckoutPage #postapontvalasztoapi {
  max-width: calc(100vw - 123px);
}
.CheckoutPage .shippingmethods {
  /* display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  grid-auto-rows: 1fr; */
  gap: 20px;
}
.CheckoutPage .shippingmethods .shipping-method {
  gap: 10px;
  align-items: flex-start;
  flex-wrap: nowrap;
}
.CheckoutPage .shippingmethods .shipping-method h4 {
  flex-grow: 1;
  line-height: 1rem;
}
.CheckoutPage .shippingmethods .shipping-method .price {
  font-size: 16px;
}
.CheckoutPage .shippingmethods .shipping-fields {
  gap: 10px;
  row-gap: 10px;
  flex-wrap: wrap;
  margin-top: 20px;
}
.CheckoutPage .shippingmethods .shipping-fields .input-group {
  width: 100%;
}
@media screen and (min-width: 600px) {
  .CheckoutPage .shippingmethods .shipping-fields .input-group:nth-child(1) {
    width: 25%;
  }
  .CheckoutPage .shippingmethods .shipping-fields .input-group:nth-child(2) {
    width: 40%;
  }
  .CheckoutPage .shippingmethods .shipping-fields .input-group:nth-child(3) {
    width: 31%;
  }
  .CheckoutPage .shippingmethods .shipping-fields .input-group:nth-child(4) {
    width: 68%;
  }
  .CheckoutPage .shippingmethods .shipping-fields .input-group:nth-child(5) {
    width: 30%;
  }
  .CheckoutPage .shippingmethods .shipping-fields .input-group:nth-child(6) {
    width: 32%;
  }
  .CheckoutPage .shippingmethods .shipping-fields .input-group:nth-child(7) {
    width: 32%;
  }
  .CheckoutPage .shippingmethods .shipping-fields .input-group:nth-child(8) {
    width: 32%;
  }
}
.CheckoutPage input[required] + label {
  display: flex;
  align-items: center;
}
@media screen and (max-width: 600px) {
  .CheckoutPage input[required] + label {
    display: block;
  }
}
.CheckoutPage input[required] + label:after {
  content: "kötelező";
  font-size: 10px;
  text-transform: uppercase;
  background-color: #535252;
  color: white;
  padding: 3px 5px;
  border-radius: 4px;
  font-weight: 700;
  letter-spacing: 1px;
  margin: 0 0 0 4px;
}
.CheckoutPage .input-group:not(.checkbox) {
  flex-flow: column-reverse;
}
.CheckoutPage .labelbox {
  border: solid 2px transparent;
}
.CheckoutPage .labelbox.radiobutton {
  cursor: pointer;
  padding: 15px;
  background-color: var(--white);
  border-radius: 4px;
  box-shadow: 0px 2px 10px rgba(0, 0, 0, 0.144);
}
.CheckoutPage .labelbox.selected {
  border-color: var(--color5);
}
.CheckoutPage .labelbox p {
  margin: 10px 0;
}
.CheckoutPage .labelbox p:empty {
  margin: 0;
}
.CheckoutPage .steps {
  position: relative;
  width: 100%;
  flex-wrap: nowrap;
  overflow: auto;
}
.CheckoutPage .steps::after {
  content: "";
  width: 100%;
  height: 2px;
  background: rgb(46, 110, 183);
  display: block;
  position: absolute;
  top: 50%;
}
.CheckoutPage .steps .step {
  border: solid 2px transparent;
  z-index: 1;
  background-color: white;
  border-radius: 20px;
  padding: 10px 15px;
  font-size: 14px;
  font-weight: 700;
  box-shadow: 0 0 0 10px #f8f8f8;
  /* &:hover {
      border-color: var(--color1);
  } */
}
.CheckoutPage .steps .step.active {
  border-color: var(--color1);
}
.CheckoutPage .billing-fields {
  margin-top: 40px;
}
.CheckoutPage .billing-fields .billing-fields-list {
  flex-wrap: wrap;
}
.CheckoutPage .billing-fields .billing-fields-list > div {
  width: 100%;
}
@media screen and (min-width: 600px) {
  .CheckoutPage .billing-fields .billing-fields-list > div {
    width: 49%;
  }
  .CheckoutPage .billing-fields .billing-fields-list > div:nth-child(2) {
    width: 49%;
  }
  .CheckoutPage .billing-fields .billing-fields-list > div:nth-child(3) {
    width: 15%;
  }
  .CheckoutPage .billing-fields .billing-fields-list > div:nth-child(4) {
    width: 33%;
  }
}
.CheckoutPage .step1 .formbox {
  flex-wrap: wrap;
  gap: 2%;
  row-gap: 20px;
}
.CheckoutPage .step1 .formbox > .input-group {
  width: 100%;
}
@media screen and (min-width: 600px) {
  .CheckoutPage .step1 .formbox > .input-group:nth-child(1) {
    width: 32%;
  }
  .CheckoutPage .step1 .formbox > .input-group:nth-child(2) {
    width: 32%;
  }
  .CheckoutPage .step1 .formbox > .input-group:nth-child(3) {
    width: 32%;
  }
  .CheckoutPage .step1 .formbox > .input-group:nth-child(4) {
    width: 49%;
  }
  .CheckoutPage .step1 .formbox > .input-group:nth-child(5) {
    width: 49%;
  }
  .CheckoutPage .step1 .formbox > .input-group:nth-child(6) {
    width: 25%;
  }
  .CheckoutPage .step1 .formbox > .input-group:nth-child(7) {
    width: 31%;
  }
  .CheckoutPage .step1 .formbox > .input-group:nth-child(8) {
    width: 40%;
  }
  .CheckoutPage .step1 .formbox > .input-group:nth-child(9) {
    width: 65%;
  }
  .CheckoutPage .step1 .formbox > .input-group:nth-child(10) {
    width: 33%;
  }
  .CheckoutPage .step1 .formbox > .input-group:nth-child(11) {
    width: 49%;
  }
  .CheckoutPage .step1 .formbox > .input-group:nth-child(12) {
    width: 49%;
  }
}
.CheckoutPage .input-group textarea {
  padding: 10px 15px;
  font-family: inherit;
  min-height: 100px;
}
.CheckoutPage .step4 h3:not(:first-child) {
  margin-top: 20px;
}
.CheckoutPage .step4 .button {
  margin-top: 20px;
  margin-left: auto;
}
.CheckoutPage .buttons {
  padding: 30px 0;
  margin: 10px 0;
  border-top: solid 2px #dfdfdf;
  justify-content: flex-end;
}
@media screen and (max-width: 600px) {
  .CheckoutPage .buttons {
    justify-content: space-between;
  }
}
.CheckoutPage .cartitems {
  background: white;
  padding: 20px;
  border-radius: 10px;
}
.CheckoutPage .cartitems ul {
  list-style: none;
}
.CheckoutPage .cartitems ul li {
  font-size: 14px;
}
.CheckoutPage .cartitems ul li:not(:last-child) {
  border-bottom: 2px solid var(--gray);
  padding-bottom: 10px;
  margin-bottom: 10px;
}
.CheckoutPage .summaries {
  display: grid;
  gap: 20px;
}
@media screen and (min-width: 600px) {
  .CheckoutPage .summaries {
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  }
}
.CheckoutPage .summaries div {
  padding: 20px;
  background: white;
  border-radius: 6px;
}
.CheckoutPage .summaries small {
  font-size: 14px;
}
.CheckoutPage .attention-box {
  border: solid 2px lightgray;
  border-radius: 10px;
  padding: 20px;
  margin: 30px 0;
  flex-wrap: nowrap;
}
.CheckoutPage .attention-box p {
  font-size: 14px;
  line-height: 18px;
  margin: 0;
}
.CheckoutPage .attention-box h3 {
  font-size: 18px;
}
.CheckoutPage .attention-box h3:not(:first-child) {
  margin-top: 10px;
}
.CheckoutPage .attention-box .icon svg {
  width: 64px;
  height: auto;
}
.CheckoutPage .toast-message {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  background: white;
  top: 40px;
  padding: 40px;
  border-radius: 10px;
  width: calc(100% - 20px);
  height: calc(100% - 20px);
  max-height: 500px;
  z-index: 2;
  filter: drop-shadow(0 0 350px black);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 30px;
  box-sizing: border-box;
}
.CheckoutPage .toast-message p {
  text-align: center;
  font-size: 1.2rem;
  line-height: 1.7rem;
}
.CheckoutPage .toast-message .closebutton {
  position: absolute;
  right: 20px;
  top: 20px;
  cursor: pointer;
}

.penztar-v2 article {
  background: none;
  padding: initial;
  border-radius: initial;
  box-sizing: initial;
  min-height: initial;
  margin: initial;
  line-height: initial;
  box-shadow: none;
}

/*# sourceMappingURL=style.css.map */
