@charset "utf-8";
/*
Theme Name: MyPatch
Template:   twentythirteen
Version: 1.0.0
Text Domain: mypatch
*/

/*@import url("orig_style.css");*/

@font-face {
  font-family: "ploni";
  src: url("assets/fonts/ploni/ploni-regular-aaa.eot");
  src: url("assets/fonts/ploni/ploni-regular-aaa.woff2") format("woff2"),
    url("assets/fonts/ploni/ploni-regular-aaa.woff") format("woff");
  font-display: auto;
  font-style: normal;
  font-weight: 400;
  font-stretch: normal;
}

@font-face {
  font-family: "ploni-300";
  src: url("assets/fonts/ploni/PloniLight.otf") format("opentype");
  font-display: auto;
  font-style: normal;
  font-weight: 300;
  font-stretch: normal;
}

@font-face {
  font-family: "ploni-200";
  src: url("assets/fonts/ploni/PloniULight.otf") format("opentype");
  font-display: auto;
  font-style: normal;
  font-weight: 200;
  font-stretch: normal;
}

@font-face {
  font-family: "ploni-500";
  src: url("assets/fonts/ploni/PloniMedium.otf") format("opentype");
  font-display: auto;
  font-style: normal;
  font-weight: 500;
  font-stretch: normal;
}

@font-face {
  font-family: "ploni-700";
  src: url("assets/fonts/ploni/PloniBold.otf") format("opentype");
  font-display: auto;
  font-style: normal;
  font-weight: 700;
  font-stretch: normal;
}

@font-face {
  font-family: "ploni-800";
  src: url("assets/fonts/ploni/PloniDBold.otf") format("opentype");
  font-display: auto;
  font-style: normal;
  font-weight: 800;
  font-stretch: normal;
}

@font-face {
  font-family: "ploni-900";
  src: url("assets/fonts/ploni/PloniUBold.otf") format("opentype");
  font-display: auto;
  font-style: normal;
  font-weight: 900;
  font-stretch: normal;
}

@font-face {
  font-family: "ploni-950";
  src: url("assets/fonts/ploni/PloniBlack.otf") format("opentype");
  font-display: auto;
  font-style: normal;
  font-weight: 950;
  font-stretch: normal;
}

:root {
  --white: #ffffff;
  --black: #000;

  --gray-blue: #bbddf2;
  --gray-f: #f9f9f9;

  --light-pink: #fef0f0;
  --light-pink-2: #eebfaf;
  --cyan: #d2fcf8;
  --light-blue: #b4def4;
  --green: #d2ebcf;
  --light-red: #ffa6a8;
  --orange: #ffddbc;
  --cream: #fffeee;
  --brown: #e9c19d;
  --gray: #f2f2f2;
  --gray-3: #333333;

  --color-1: #b9d6e8;
  --color-2: #ecdcd5;
  --color-3: #e9c19d;

  --wrapper-margin: 10vw;

  --admin-bar-height: 0px;
  --site-header-height: 115px;

  --footer-height: 88px;
}

@media (max-width: 782px) {
  :root {
    --site-header-height: 73px;
  }
}

@media (min-width: 1280px) {
  :root {
    --wrapper-margin: calc((100vw - 1080px) / 2);
  }
}

body.rtl .pojo-skip-link:focus {
  right: auto;
  left: 50px;
}

body,
.ploni,
.ploni * {
  font-family: "ploni", sans-serif;
  font-optical-sizing: auto;
}

html {
  font-size: 18px;
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--site-header-height) + var(--admin-bar-height));
}

body {
  background: white;
  font-size: 1rem;
  line-height: 1.3;
  color: var(--color-text);
  min-height: 100vh;
  margin: 0;
  display: flex;
  flex-direction: column;
  margin-top: var(--site-header-height);
  scroll-padding-top: calc(var(--site-header-height) + var(--admin-bar-height));
  margin-bottom: 0 !important;
  overflow-x: hidden;
}

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

/* Ultra Light */
.light-text {
  font-weight: 300;
}

/* Light */
.regular-text {
  font-weight: 400;
}

/* Regular */
.medium-text {
  font-weight: 500;
}

/* Medium */
.bold-text {
  font-weight: 700;
}

/* Bold */
.extra-bold-text {
  font-weight: 800;
}

/* Extra Bold */
.ultra-bold-text {
  font-weight: 900;
}

/* Ultra Bold */
.black-text {
  font-weight: 950;
}

/* Black */

.site {
  background: none;
  border: none;
  position: relative;
  max-width: none;
  margin: 0;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.site-main {
  width: 100%;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}


.content-area {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.site-content {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  padding-bottom: 2rem;
}

.woocommerce-page .site-content {
  width: 78%;
  max-width: 1398px;
  margin: 0 auto;
}

body.woocommerce-page .site-content .unwrap .wrapper,
.wrapper {
  width: 78%;
  max-width: 1365px;
  margin: 0 auto;
}

.wrapper .unwrap {
  width: 100vw;
  max-width: none;
  margin-right: calc(-1 * var(--wrapper-margin));
  margin-left: calc(-1 * var(--wrapper-margin));
}

body.woocommerce-page .site-content .wrapper,
body.woocommerce-page:not(.sidebar) .alignwide {
  max-width: none;
  width: auto;
  margin: 0;
}

@media (min-width: 783px) {
  .woocommerce-page .site-content .unwrap {
    width: 100vw;
    max-width: none;
    position: relative;
    right: 50%;
    transform: translateX(50%);
  }
}

article {
  width: 100%;
  margin: 0;
  position: relative;
}

article:after {
  content: "";
  display: table;
  clear: both;
}

.color,
.menu-toggle {}

.underline {
  text-decoration: underline;
}

.pointer {
  cursor: pointer;
}

body .elementor-widget-heading .elementor-heading-title,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "ploni", sans-serif;
  color: inherit;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.1;
}

#navbar,
.footer-menu,
.slides-container,
input[type="submit"],
a.button,
.button {
  font-family: inherit;
}

h1.center,
h2.center,
h3.center {
  text-align: center;
}

h1 {
  font-size: 35px;
  margin: 0.7em 0;
}

h2 {
  font-size: 35px;
  font-weight: 700;
  margin: 0.7em 0;
}

h2.big {
  font-size: min(68px, 13vw);
}

.related.product h2,
h3 {
  font-size: 25px;
  font-weight: 700;
  margin: 0.7em 0;
}

h4 {
  font-size: 1rem;
  font-weight: 700;
  margin: 0 0 1rem;
}

h5 {
  font-size: 24px;
  font-weight: 700;
  margin: 0 0 0.2em;
}

h6 {
  font-size: 1rem;
  margin: 0.2em 0;
  font-weight: 600;
}

h1.page-title {
  margin: 2rem 0 3.5rem;
}

h2.size-28,
h3.size-28,
.size-28 {
  font-size: 28px;
}

.size-20 {
  font-size: 20px;
}

.size-16 {
  font-size: 16px;
}

.size-15 {
  font-size: 15px;
}

.size-14 {
  font-size: 14px;
}

a.button.dark,
.button.dark,
.dark,
.gray-3 {
  color: var(--gray-3);
}

p {
  margin: 0 0 1em;
}

@media (max-width: 782px) {

  h1,
  h2 {
    font-size: 20px;
  }

  h3 {
    font-size: 20px;
  }

  h4 {
    font-size: 1rem;
  }

  h5 {
    font-size: 0.9rem;
  }

  .size-20 {
    font-size: 17px;
  }

  .size-16 {
    font-size: 15px;
  }

  .mobile-size-16 {
    font-size: 16px;
  }

  h1.page-title {
    margin: 1rem 0 1rem;
  }
}

.no-margin-top,
.no-margin-top>*:first-child {
  margin-top: 0;
}

.no-margin-bottom,
.no-margin-bottom>*:last-child {
  margin-bottom: 0;
}

.clearfix,
.clear-fix {
  clear: both;
}

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

.left {
  float: left;
}

.right {
  float: right;
}

img {
  max-width: 100%;
}

* {
  box-sizing: border-box;
}

.content-area {
  overflow-x: visible !important;
}

@media (max-width: 782px) {
  html {
    overflow-x: hidden;
  }

  .entry-content,
  .user-content {
    word-break: break-word;
  }
}

/* easing: */

.easing-slow {
  -webkit-transition: all 20s ease-out;
  -moz-transition: all 20s ease-out;
  -o-transition: all 20s ease-out;
  transition: all 20s ease-out;
}

.site-header .search-form,
.wc-block-grid__product-add-to-cart,
#section-form .wpcf7 input,
#section-form .wpcf7 select,
#section-form .wpcf7 textarea,
.tab-name,
.nav-menu a,
.easing,
.easing-200ms {
  -webkit-transition: all 0.2s ease-out;
  -moz-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

a.button,
.button,
.easing-fast {
  -webkit-transition: all 0.15s ease-out;
  -moz-transition: all 0.15s ease-out;
  -o-transition: all 0.15s ease-out;
  transition: all 0.15s ease-out;
}

#navbar,
.easing-300ms {
  -webkit-transition: all 0.3s ease-out;
  -moz-transition: all 0.3s ease-out;
  -o-transition: all 0.3s ease-out;
  transition: all 0.3s ease-out;
}

.mobile-navigation,
.easing-500ms {
  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.easing-1s {
  -webkit-transition: all 1s ease-out;
  -moz-transition: all 1s ease-out;
  -o-transition: all 1s ease-out;
  transition: all 1s ease-out;
}

/* general things: */

button {
  background: none;
  font: inherit;
  border: none;
  cursor: pointer;
}

.center {
  text-align: center;
}

.justify {
  text-align: justify;
}

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

.lighter {
  font-weight: lighter;
}

.normal {
  font-weight: normal;
}

.bold {
  font-weight: bold;
}

.bigger {
  font-size: 1.3rem;
}

.italic {
  font-style: italic;
}

.uppercase {
  text-transform: uppercase;
}

.small {
  font-size: 12px;
}

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

.capitalize {
  text-transform: capitalize;
}

.red {
  color: var(--color-red);
}

.no-underline,
.no-underline:hover,
.no-underline a,
.no-underline a:hover {
  text-decoration: none !important;
}

.flex {
  display: flex;
  align-items: center;
}

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

.arrow-left,
a.arrow {
  display: flex;
  align-items: center;
  gap: 1.2em;
  font-weight: bold;
}

.arrow-left:after,
a.arrow:after {
  content: "";
  height: 17px;
  aspect-ratio: 96/17;
  background: url(assets/img/big-arrow.svg) center/contain no-repeat;
  display: block;
}

.site-content .wpcf7 {
  max-width: 600px;
  margin: 0 auto;
}

.site-content .wpcf7 textarea {
  height: 100px;
  resize: vertical;
}

.custom-add-to-cart-msg {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 9999;
  display: flex;
  gap: 14px;
  align-items: center;
  max-width: 420px;
  background: var(--toast-bg, #111);
  color: var(--toast-fg, #fff);
  padding: 14px 16px;
  border-radius: 12px;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.25);
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.25s ease, transform 0.25s ease;
  font-size: 14px;
}

.custom-add-to-cart-msg.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.catm__icon {
  font-size: 20px;
  line-height: 1;
}

.catm__body {
  flex: 1;
}

.catm__title {
  font-weight: 700;
  margin-bottom: 2px;
}

.catm__text {
  opacity: 0.9;
}

.catm__hint {
  margin-top: 6px;
  font-size: 12px;
  opacity: 0.8;
}

.catm__actions {
  display: flex;
  gap: 8px;
  align-items: center;
}

.catm__btn-view {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 12px;
  border-radius: 10px;
  background: var(--toast-accent, #3b82f6);
  color: #fff;
  text-decoration: none;
  font-weight: 600;
}

.catm__btn-view:hover {
  filter: brightness(1.05);
}

.catm__close {
  appearance: none;
  background: transparent;
  border: 0;
  color: inherit;
  font-size: 18px;
  line-height: 1;
  cursor: pointer;
  opacity: 0.8;
}

.catm__close:hover {
  opacity: 1;
}

.woocommerce-notices-wrapper>.woocommerce-message:has([data-wc-toast]) {
  padding: 0;
  margin: 0;
  border: 0;
  background: transparent;
}

.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
  border-top-color: #000000;
}

.woocommerce-error::before,
.woocommerce-info::before,
.woocommerce-message::before {
  color: #000000;
}

.woocommerce-message {
  border: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

a.catm__btn-view.button.button-white {
  font-size: 12px;
}

a {
  color: inherit;
}

.woocommerce-message::before {
  content: "" !important;
}

/*a:visited, a:hover, a, .widget a, .widget a:hover { color:inherit; }*/

a:hover {
  text-decoration: none;
}

/* dashicons: */

.dashicons {
  width: auto;
  height: auto;
  font-size: inherit;
  line-height: inherit;
  text-decoration: inherit;
}

/* forms: */

button,
input,
select,
textarea {
  font-family: inherit;
}

form {
  position: relative;
}

body.rtl input:is([type="email"],
  [type="tel"],
  [type="number"],
  [type="url"],
  [type="password"]):not(:placeholder-shown) {
  direction: ltr;
  text-align: right;
}

.content-area input[type="submit"],
input[type="submit"],
.site-main .wpcf7 input[type="submit"],
.entry-content,
.entry-summary {
  max-width: none;
  margin: 0;
}

#content,
.entry-content {
  font-weight: inherit;
  line-height: 1.5;
}

input,
select,
textarea {
  font-size: inherit;
  padding: 0.3em 0.6em 0.1em;
}

.on-off-button * {
  display: none;
}

/*input::-webkit-datetime-edit { color:#0005; }*/

::-webkit-input-placeholder {
  color: #0005;
  font-style: inherit;
  font-weight: inherit;
}

:-moz-placeholder {
  color: #0005;
  opacity: 1;
  font-style: inherit;
  font-weight: inherit;
}

::-moz-placeholder {
  color: #0005;
  opacity: 1;
  font-style: inherit;
  font-weight: inherit;
}

:-ms-input-placeholder {
  color: #0005;
  font-style: inherit;
  font-weight: inherit;
}

label,
.label {
  position: relative;
  cursor: default;
}

/* site-header: */

.menu-header {
  padding: 40px 0;
}

@media (min-width: 783px) {
  .menu-header>.wrapper {
    max-width: none;
    width: 85%;
    position: relative;
  }
}

.header-free-delivery-notice {
  background: #f7d8b9;
  color: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.4em 1rem 0.2em;
  text-align: center;
  font-size: 22px;
  font-weight: 700;
}

.site-header {
  width: 100%;
  position: fixed;
  top: var(--admin-bar-height);
  z-index: 100;
  background: var(--white);
}

@media (max-width: 782px) {
  .menu-header {
    padding: 19px 0;
    position: relative;
  }

  .site-header {
    z-index: 10000;
  }

  .header-free-delivery-notice {
    font-size: 16px;
  }
}

.header-inner {
  display: grid;
  grid-template-columns: 130px auto 130px;
  gap: 20px;
}

body.home .site-header-inner {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0 4%;
  width: 77%;
  max-width: 1100px;
  margin: 0 auto;
}

body #moove_gdpr_cookie_info_bar {
  z-index: 9;
}

.home-link {
  display: block;
  margin: 0;
  position: relative;
  z-index: 1;
  width: fit-content;
}

.home-link img {
  height: auto;
  display: block;
}

.site-title,
.site-description {
  display: none !important;
}

@media (max-width: 782px) {
  .header-inner {
    grid-template-columns: 1fr auto 1fr;
  }

  .navbar-container {
    grid-row: 1;
  }

  .home-link {
    margin: 0 auto;
  }
}

.header-left {
  display: flex;
  gap: 25px;
  justify-content: flex-end;
  align-items: center;
  align-self: center;
}

.header-left>* {
  flex-shrink: 0;
  position: relative;
}

.header-left img {
  display: block;
  height: 1.6rem;
}

.header-left img.icon-search {
  height: 1.5rem;
  cursor: pointer;
}

.site-header .search-form {
  position: relative;
  flex-grow: 1;
}

.site-header .search-form .search-field {
  width: 100%;
  display: block;
  padding: 0.2em 1em;
  padding-inline-end: 2.5rem;
  height: 2.5rem;
  outline: none;
  border: 1px solid var(--gray);
}

.site-header .search-form .search-submit {
  position: absolute;
  left: 0;
  top: 0;
  cursor: pointer;
  border: none;
  padding: 0;
  width: 2.5rem;
  height: 100%;

  background: url(assets/img/icon-search.svg) center / 1.5rem no-repeat;
  color: transparent;
  font-size: 0;
}

.site-header .search-form .search-field:focus {
  border: 1px solid black;
  outline: 1px solid black;
}

.site-header .search-form .search-field::-webkit-search-decoration,
.site-header .search-form .search-field::-webkit-search-cancel-button {
  appearance: none;
}

span.cart-count {
  position: absolute;
  top: 15%;
  left: -30%;
  background: var(--light-pink-2);
  width: 1.4em;
  height: 1.4em;
  border-radius: 50%;

  display: flex;
  align-items: center;
  justify-content: center;
  color: black;
  font-size: 10px;
  padding-top: 0.3em;
}

/*.site-header .search-form { overflow: hidden; display: flex; gap:4px; align-items: center; width:calc(8rem + 4px + 28px); }

.site-header .search-form:not(:focus, :focus-within) { width: 28px; }

.site-header .search-form .search-field { width: 8rem; }

.site-header .search-form:not(:focus, :focus-within) .search-field { cursor: pointer; border:none; padding:0; margin:0; width:28px; height:28px; background:url(assets/img/icon-search.svg) center/auto 98% no-repeat; padding-inline-start:28px; }

.site-header .search-form .search-submit { cursor: pointer; border:none; padding:0; margin:0; width:28px; height:28px;

	background:url(assets/img/icon-search.svg) center/auto 98% no-repeat; color:transparent; font-size: 0; }*/

body:not(.show-search) .search-form-container {
  display: none;
}

.search-form-container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: white;
  z-index: 100;
  display: flex;
  align-items: center;
}

.search-form-container .wrapper {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.search-form-container .close-search {
  background: url(assets/img/popup-x.svg) center/contain no-repeat;
  width: 1.5rem;
  height: 1.5rem;
  cursor: pointer;
}

body.logged-in .mobile-menu-top .for-non-logged-in {
  display: none;
}

body:not(.logged-in) .mobile-menu-top .for-logged-in {
  display: none;
}

/* main menu: */

.navbar-container {
  align-self: stretch;
}

#navbar {
  margin: 0;
  display: flex;
  justify-content: center;
  height: 100%;
}

#navbar .nav-menu>li {
  font-size: 19px;
  /*21px*/
}

.nav-menu-container {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 255px;
  background: #363d4c;
  z-index: 10000;
  padding: 30px 30px;
  text-align: center;
}

.nav-menu {
  display: flex;
  margin: 0;
  padding: 0;
  flex-wrap: wrap;
  gap: 0.5rem 35px;
  list-style: none;
  z-index: 5;
  justify-content: center;
}

.safari .nav-menu {
  text-align: center;
}

.nav-menu>li {}

.nav-menu>li>a,
.nav-menu>li>button {
  text-decoration: none;
  display: block;
  padding: 0;
  display: flex;
  align-items: center;
}

@media (min-width: 783px) {
  .nav-menu>li {
    position: relative;
    display: flex;
  }

  .nav-menu>li>a,
  .nav-menu>li>button {
    height: 100%;
  }
}

/*.nav-menu li.current-menu-ancestor > a,

.nav-menu li.current-menu-parent > a,

.nav-menu li.current-menu-item > a { font-weight: 600; color: #000000dd; position:relative; height:100%; }*/

@media (max-width: 782px) {
  #navbar .nav-menu>li {
    font-size: 1rem;
  }

  .mobile-menu-top {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid;

    padding-bottom: 0.6rem;
    margin-bottom: 1.1rem;
  }

  .mobile-menu-top img {
    width: 0.8rem;
    height: 0.8rem;
    margin-inline-end: 0.2rem;
    vertical-align: middle;
  }

  .mobile-menu-bottom {
    border-top: 1px solid;
    padding-top: 1rem;
  }
}

.nav-menu>li:hover>a,
.nav-menu>li:focus>a,
.nav-menu>li:focus-within>a {
  color: var(--color-red);
}

.nav-menu li.menu-item-has-children>a:after {
  content: "";
  width: 1em;
  height: 1em;
  background: url(assets/img/arrow-right.svg) 56% 50% / contain no-repeat;
  display: inline-block;
  transform: rotate(90deg);
  vertical-align: middle;
}

.nav-menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: none;
  position: absolute;
  z-index: 1;
  width: max-content;
}

.nav-menu ul a {
  text-decoration: none !important;
  display: block;
  padding: 0.4em 0.7rem;
}

.nav-menu>li>.sub-menu>li {}

.nav-menu .sub-menu li {
  background: none;
}

.nav-menu-left ul {
  left: 0;
}

.nav-menu li:hover>.sub-menu,
.nav-menu li:focus>.sub-menu,
.nav-menu li:focus-within>.sub-menu {
  display: block;
}

/* wpcf7: */

.wpcf7-list-item {
  margin: 0;
}

.wpcf7 input[type="url"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"] {
  direction: inherit;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="url"],
.wpcf7 textarea {
  border: 1px solid var(--color-green);
  background: white;
  display: block;
  width: 100%;
  padding: 0.65em 0.8em 0.45em;
  line-height: 1.2;
}

span.wpcf7-list-item {
  display: grid;
}

.wpcf7 form .wpcf7-response-output {
  margin: 0;
  padding: 0;
  border: none;
  color: var(--color-red);
}

span.wpcf7-spinner {
  position: absolute;
  margin: 0;
}

span.wpcf7-not-valid-tip {
  margin: 0.2rem 0;
}

/* popup: */

.popmake {
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%);
}

/* fieldsets and legends: */

legend {
  padding: 0;
}

fieldset {
  margin: 0;
  padding: 0;
  border: none;
}

/* home: */

.ltr {
  direction: ltr;
}

.hero-wrapper {
  max-width: 1920px;
  margin: 0 auto;
}

.hero-cols-full-width {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.hero-col-title,
.hero-col-badge {
  max-width: 50%;
  width: 100%;
  min-height: 333px;
  position: relative;
}

.hero-badge-image {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

section.section-hero.section-hero-shop .hero-badge-image {
    position: relative;
}
section.section-hero.section-hero-shop .hero-wrapper .hero-badge-image {
    position: absolute;
}

.hero-badge-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

@media screen and (max-width: 782px) {
  .hero-col-badge {
    display: none;
  }

  .hero-col-title {
    max-width: 100%;
  }
}

.hero-col-title {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.hero-col-title.full-width {
  max-width: 100%;
}

h2.hero-title {
  font-family: "ploni-700";
  font-size: 68px;
  line-height: 106%;
  text-align: center;
  color: #fff;
  margin: 0 0 40px;
  max-width: 360px;
}

section.section-hero-shop h2.hero-title {
    font-size: 38px;
}

.hero-button {
  border-radius: 9px;
  width: 232px;
  height: 53px;
  background: #fff;
  font-weight: 400;
  font-size: 18px;
  text-align: center;
  color: #000;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  border: none;
  outline: none;
}

body.home .hero-col-1 h2,
body.home .hero-col-1 h3 {
  font-weight: 400;
  margin: 0;
}

section.section-hero {
  background: var(--light-blue);
  color: var(--white);
  position: relative;
  min-height: 333px;
}

section.section-hero.section-hero-shop {
  min-height: unset;
}

section.section-hero .wpt-title {
  font-size: 68px;
  line-height: 1.1;
  direction: ltr;
}

section.section-hero .wpt-subtitle {
  font-size: 40px;
  line-height: 1.1;
}

section.section-hero .wpt-note {
  font-size: 24px;
  line-height: 1.1;
}

.archive section.section-hero .hero-col-1 {
  min-height: 333px;
}

.reals {
  display: flex;
  gap: 48px;
  flex-wrap: wrap;
  padding-top: 36px;
  justify-content: center;
}

.real {
  width: calc((100% - 144px) / 4);
}

.real video {
  width: 100%;
  border: 2px solid #18181b;
  border-radius: 32px;
  background: #18181b;
}

video {
  max-width: 100%;
}

.reals.slick-initialized button.slick-next {
  left: -50px;
}

.reals.slick-initialized button.slick-prev {
  right: -50px;
}

.reals.slick-initialized button.slick-next,
.reals.slick-initialized button.slick-prev {
  background-repeat: no-repeat;
  background-position: center;
  background-color: black;
  border-radius: 50%;
  border: none;
  filter: brightness(10);
}

.reals.slick-initialized button.slick-arrow.slick-disabled {
  background-color: transparent;
  filter: none;
}

@media screen and (max-width: 992px) {
  .real {
    width: calc((100% - 48px) / 2);
  }
}

@media screen and (max-width: 768px) {
  .reals {
    display: block;
    gap: unset;
    flex-wrap: unset;
  }

  .reals.slick-initialized {
    width: 70%;
    margin: 0 auto;
    padding-top: 36px;
  }

  .real {
    width: auto;
    padding: 0 16px;
  }
}

@media screen and (max-width: 782px) {
  .hero-button {
    width: 210px;
    height: 48px;
    font-size: 16px;
  }

  section.section-hero {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  h2.hero-title {
    font-size: 29px;
    text-align: center;
    margin: 0 0 25px;
    max-width: 100%;
  }


  .shop-desktop section.section-hero,
  .archive section.section-hero .hero-col-1,
  .hero-col-title,
  .hero-col-badge {
    min-height: 178px;
  }

  section.section-hero.section-hero-shop.shop-mobile .hero-badge-image {
    position: relative;
    left: unset;
    right: unset;
    top: unset;
    bottom: unset;
  }

  section.section-hero.section-hero-shop.shop-mobile .hero-badge-image img {
    width: 100%;
    height: auto;
    display: block;
  }
}

body.home section.section-hero {
  padding: 40px 0;
}

.hero-cols {
  position: relative;
}

.hero-cols.has-image {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.7rem 7%;
}

.hero-col-1 {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  max-width: 490px;
  margin: 0 auto;
}

.hero-col-1 h2 {
  font-size: 68px;
  line-height: 1.1;
  margin: 10px auto;
}

.hero-col-1 h3 {
  font-size: 34px;
  line-height: 1.2;
  margin: 10px auto;
}

.hero-col-1 .user-content {
  margin: 0 0 1.1rem;
}

.hero-cols a.button {
  border: none;
  font-size: 1rem;
  padding-inline-start: 2em;
  padding-inline-end: 2em;
  margin: 0;
}

body.home .hero-col-1 a.button {
  padding: 1.35em min(4em, 5vw);
}

.hero-col-2 {
  position: relative;
}

.hero-col-2 img {
  height: auto;
  display: block;
  border-radius: 5%;
  width: 480px;
  max-width: 100%;
}

body.home .section-hero a.button:hover {
  background: var(--light-pink);
}

.hero-badge img {
  display: block;
}

ul.home-categories-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin: 0;
  padding: 0;
  list-style: none;
  gap: 40px 4%;
}

ul.home-categories-grid li {
  background: var(--gray);
  border-radius: 15px;
  padding: 10px;
}

ul.home-categories-grid a {
  display: block;
  padding: calc(14% - 1rem) 14%;
}

ul.home-categories-grid h3.category-name {
  margin: 0;
  padding: 0;
  font-size: 24px;
}

ul.home-categories-grid li a img {
  width: 100%;
  height: auto;
  display: block;
  box-shadow: none;
  margin: 0.4rem 0 0.6rem;
  border-radius: 16px;
}

@media (min-width: 783px) {
  .hero-badge {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
  }

  .hero-badge img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
  }

  .hero-cols.has-image.has-badge {
    grid-template-columns: 1fr 1fr 40px;
  }

  .home-header-badge {
    position: absolute;

    left: 0;

    top: 50%;

    transform: translate(-73%, -20%);
  }
}

@media (max-width: 782px) {
  ul.home-categories-grid {
    grid-template-columns: 1fr;
    gap: 20px 0;
  }

  ul.home-categories-grid li .arrow-left {
    align-items: flex-start;
  }

  ul.home-categories-grid li .arrow-left:after {
    height: 0.45rem;
    padding: 0.3rem 0;
  }

  .hero-col-1 {
    gap: 0.6rem;
  }

  .hero-col-1 .user-content {
    margin: 0;
  }

  .section-hero-shop .hero-title-container {
    display: flex;
    gap: 33px;
    width: 100%;
    align-items: center;
    justify-content: center;
  }

  .section-hero-shop .hero-col-1 h2 {
    font-size: 29px;
    text-align: start;
    margin: 0;
  }

  .section-hero-shop .hero-badge {
    width: 66px;
    flex-shrink: 0;
  }

  .section-hero-shop a.button {
    width: 100%;
    margin: 1rem 0 0;
  }

  ul.home-categories-grid h3.category-name {
    text-align: center;
  }

  ul.home-categories-grid a {
    padding: calc(14% - 1rem) 8%;
  }
}

.flex-direction-nav {
  display: none;
}

.button,
a.button {
  display: inline-block;
  text-align: center;
  font-size: 1rem;
  padding: 0.8em 2em 0.6em;
  border-radius: 9px;
  text-decoration: none;
  background: var(--white);
  color: var(--black);
  border: 1px solid var(--gray-3);
  cursor: pointer;
}

.button:not(.no-underline) a:not(.no-underline) {
  text-decoration: none;
}

/*.button[href="#"],
a.button[href="#"] { cursor:auto; }*/

.button.button-on,
a.button.button-on {
  background: var(--gray-3);
  color: var(--white);
}

.section-best-selling {
  padding: 90px 0 60px;
}

.section-best-selling .section-title {
  margin: 0 0 1rem;
  align-items: flex-end;
}

.section-best-selling .section-title h2 {
  margin: 0;
}

.section-best-selling a.arrow {
  font-size: 24px;
  font-weight: 700;
}

.arrow.no-underline.mobile-only {
  font-size: 18px;
  justify-content: center;
  background-color: #fff69887;
  padding: 0.65em 1.3em 0.45em;
  border-radius: 9px;
  margin: 0 auto;
  width: max-content;
}

.whatsApp {
  position: fixed;
  display: flex;
  align-items: center;
  justify-content: center;
  bottom: 20px;
  right: 20px;
}

@media (min-width: 783px) {
  .section-best-selling .section-title h3 {
    transform: translateY(2px);
    margin-top: 0;
  }
}

@media (max-width: 782px) {

  .button,
  a.button {
    font-size: 15px;
    padding: 0.65em 1.3em 0.45em;
  }

  .section-best-selling {
    padding: 30px 0 60px;
  }

  .section-best-selling .section-title.flex {
    display: block;
    text-align: center;
  }

  .section-best-selling .section-title h2 {
    text-align: center;
  }

  .hero-cols.has-image {
    grid-template-columns: auto;
  }

  .hero-col-2 {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.1rem;
  }

  .hero-col-2 img {
    width: 260px;
  }

  .hero-col-1 h2 {
    font-size: 35px;
    line-height: 1;
    margin: 0;
  }

  .hero-col-1 h3 {
    font-size: 23px;
    margin: 0;
  }

  /*body.home .hero-col-1 a.button { padding:0.8em min(4em,5vw) 0.7em; width:260px; max-width:100%; position: absolute; bottom: 0; }*/
}

/* why section: */
.section-why {
  background: #fff69887;
}

.why-main-container {
  padding: 80px 0;
}

.why-main-container .wrapper {
  max-width: 1100px;
}

.section-why .button {
  border: none;
}

.why-main {
  display: grid;
  grid-template-columns: 1fr 0.8106fr;
  margin: 0 auto 110px;
  gap: 50px 12%;
  align-items: center;
  max-width: 930px;
}

.why-main img {
  height: auto;
}

.why-main-2 h2 {
  font-size: 33px;
}

.why-main-2 p {
  max-width: 360px;
}

.why-advantages {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 53px 5%;
}

.why-advantages .item {
  width: 320px;
  text-align: center;
  display: grid;
  grid-template-rows: 6rem 2.7rem auto;
  align-self: start;
}

.why-advantages .item img {
  width: auto;
  height: auto;
  margin: 0 auto 1.5rem;
}

.why-advantages .item h4 {
  margin: 0.7rem auto 0;
  font-size: 23px;
}

.why-advantages .item .user-content {
  line-height: 1.44;
}

@media (max-width: 782px) {
  .why-main-container {
    padding: 0 0 56px;
  }

  .section-why {
    background: none;
  }

  .why-main {
    grid-template-columns: auto;
    text-align: center;
    gap: 32px;
    margin: 0 auto 60px;
  }

  .why-main-2 {
    display: flex;
    justify-content: center;
  }

  .why-main-2 .user-content h2 {
    font-size: 20px;
  }

  .why-advantages {
    flex-direction: column;
  }

  .why-advantages .item {
    max-width: 100%;
    width: 245px;
    margin: 0 auto;
    grid-template-rows: auto auto auto;
    font-size: 16px;
  }

  .why-advantages .item img {
    margin-bottom: 0.5rem;
  }

  .why-advantages .item h4 {
    margin: 1rem auto;
  }
}

.why-bullets {
  background: #ddc9ed;
  padding: 37px 0;
  width: 100%;
  overflow: hidden;
}

.why-bullets .item {
  display: flex;
  align-items: center;
  gap: 0;
  flex-grow: 1;
  text-align: center;
  color: #000;
}

.why-bullets .marquee-inner {
  display: flex;
  justify-content: space-around;
  gap: 1rem 0;
  white-space: nowrap;
  width: max-content;
  min-width: 200%;
}

.marquee-inner {
  animation-duration: 26s;
  animation-iteration-count: infinite;
  animation-name: marquee-content;
  animation-timing-function: linear;
}

.why-bullets .item img {
  display: block;
  width: auto;
  height: auto;
  margin-inline-end: 1.5rem;
  transform: translateY(-7%);
  max-width: 1.6em;
  max-height: 1.6em;
  filter: brightness(0);
}

.why-bullets .item:before {
  content: "|";
  margin: 0 2rem;
  flex-grow: 1;
}

@media (max-width: 768px) {
  .why-bullets {
    padding: 18px 0;
    font-size: 17px;
  }
}

@keyframes marquee-content {
  from {
    transform: translateX(0%);
  }

  to {
    transform: translateX(33.3%);
  }
}

/* reviews: */
.star-rating,
.stars {
  color: var(--light-pink-2);
  text-align: start;
}

.stars {
  display: flex;
  gap: 2px;
  margin: 0 0 1rem;
  width: fit-content;
}

.stars .star-on {
  width: 17px;
  height: 17px;
  background: url(assets/img/star.svg) no-repeat;
}

.stars .star-off {
  width: 17px;
  height: 17px;
  background: url(assets/img/star.svg) no-repeat;
  filter: saturate(0) brightness(1.15);
}

.single-product .section-reviews {
  margin-top: 70px;
}

@media (min-width: 783px) {
  .single-product .section-reviews {
    width: auto;
    max-width: none;
    margin-right: -100px;
    margin-left: -100px;
  }

  .single-product .reviews-slider {
    width: 90vw;
    max-width: 1430px;
  }
}

@media (max-width: 782px) {
  .single-product .section-reviews {
    margin-top: 40px;
  }
}

section.section-reviews {
  text-align: center;
  margin: 105px 0 60px;
}

.section-reviews h3 {
  margin: 0 0 0.5rem;
}

.reviews-slider {
  width: 100%;
  margin: 55px auto 0;
  position: relative;
  /*--slick-gap:3rem;*/
  padding: 0 3rem;
}

.review {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  align-items: center;
  margin: 0 min(40px, 2vw);
}

.review img.attachment-medium {
  display: block;
  width: auto;
  height: 2rem;
  margin: 0 0 0.6rem;
}

.reviews-slider.slick-slider.slick-flex .slick-track {
  align-items: flex-start;
}

section.section-categories {
  margin: 70px auto 75px;
}

section.section-categories>h3 {
  margin-bottom: 3rem;
}

.section-categories .woocommerce ul.products[class*="columns-"] li.product {
  margin-bottom: 40px;
}

/* switch the woocommerce products grid to actual css grid: */
ul.products.columns-4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.5rem 3.8%;
}

ul.products.columns-4:before,
ul.products.columns-4:after {
  display: none;
}

ul.products.columns-4 li {
  width: auto !important;
  margin: 0 !important;
}

ul.products.columns-4 li.product-span-2-cols {
  grid-column: span 2;
}

ul.products.columns-4 li.product-span-2-cols .product-item-image-container {
  aspect-ratio: calc(315 * 2 * 1.083 / 375);
}

@media (max-width: 782px) {
  .section-reviews h3 {
    margin: 0;
  }

  .reviews-slider {
    margin: 28px auto 0;
  }

  .review {
    margin: 0 1.5rem;
  }
}

@media (max-width: 768px) {
  ul.products.columns-4 {
    grid-template-columns: repeat(2, 1fr);
  }
}

/*.review:before { content:''; width:29px; height:29px; border-radius: 5px; display:block; margin-bottom:13px; }
.reviews-slider .slick-slide:nth-child(3n+1) .review:before { background:var(--color-1); }
.reviews-slider .slick-slide:nth-child(3n+2) .review:before { background:var(--color-2); }
.reviews-slider .slick-slide:nth-child(3n+3) .review:before { background:var(--color-3); }*/
.user-content-preline {
  white-space: pre-line;
}

.review .user-content-preline {
  margin: 0 0 1rem;
  line-height: 1.5;
}

.review-name,
.review-location {
  font-size: 16px;
}

@media (max-width: 782px) {
  section.section-categories {
    margin: 45px auto 42px;
  }

  section.section-categories>h3 {
    margin-bottom: 2rem;
  }

  .section-categories ul.products.columns-2 li {
    width: 100% !important;
    margin: 0 0 20px !important;
  }

  section.section-reviews {
    margin: 46px 0;
  }

  section.section-reviews .slick-dots {
    margin-top: 2rem;
  }

  .image-bottom-mobile {
    margin: 0 auto 57px;
    width: fit-content;
  }

  .image-bottom-mobile img {
    display: block;
    border-radius: 10px;
  }

  .review-name,
  .review-location {
    font-size: 16px;
    font-weight: 700;
  }
}

/* tech page: */
body.page-template-page-tech section.section-hero {
  background: var(--brown);
}

body.page-template-page-tech .hero-col-2 {
  grid-area: 1 / 1;
  flex-shrink: 0;
}

.page-template-page-tech .hero-col-1 h2 {
  font-weight: 400;
}

.paragraphs-container {
  display: grid;
  gap: 3.5rem;
  max-width: 1002px;
  margin: 0 auto;
}

.paragraph {
  display: grid;
  grid-template-columns: 33% auto;
  gap: 0.7rem 6.5%;
}

.section-tech-main {
  padding: 100px 0;
}

.section-tech-main .paragraphs-container {
  max-width: 890px;
  margin: 0 auto;
}

.section-tech-main-why {
  margin-top: 70px;
}

.section-tech-main-why .items-container {
  display: flex;
  gap: 5%;
  margin: 2.8rem auto 0;
  max-width: 800px;
  justify-content: center;
}

.section-tech-main-why .items-container .item {
  width: 140px;
}

.section-tech-main-why .item img {
  display: block;
  height: auto;
  margin: 0 auto 1.5rem;
  width: 95px;
}

.section-tech-how {
  background: var(--gray-f);
  padding: 100px 0;
}

.section-tech-how .button {
  border: none;
}

.section-tech-how .button:hover {
  background: #ffe4e4;
}

.tech-how-grid {
  display: grid;
  grid-template-columns: 40% auto;
  gap: 2rem 12%;
  align-items: center;
  margin: 0 auto;
}

.tech-how-grid img {
  height: auto;
  display: block;
}

.section-tech-why {
  padding: 100px 0;
}

.icon-rows-container {
  display: flex;
  gap: 120px 0;
  flex-direction: column;
  margin: 0 0 120px;
}

.icon-row {}

.icon-row>h2 {
  margin: 0 auto 2rem;
}

.icon-row-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 2rem 2%;
}

.icon-row-item {
  aspect-ratio: 1;
  height: auto;
  background: var(--gray-f);
  border-radius: 5px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 1rem;
  word-break: break-word;
  overflow: hidden;
  gap: 1em;
  font-size: min(18px, 1.1vw);
}

.icon-row-item>div {
  min-height: 50%;
}

.icon-row img {
  width: 3rem;
  height: auto;
  display: block;
}

.section-tech-sets {
  padding: 76px 0;
}

body.home .section-tech-sets {
  margin: 100px 0;
  padding: 0;
}

.tech-set {
  background: var(--color);
  padding: 62px 85px;
  border-radius: 15px;
  max-width: 1227px;
  margin: 2rem auto;
  display: flex;
  align-items: center;
  gap: 2rem 12%;
}

.tech-set:nth-child(2n) {
  flex-direction: row-reverse;
}

.tech-set-1 {
  width: 40%;
  flex-shrink: 0;
}

.tech-set-1 .image-container {
  aspect-ratio: 1;
  background: var(--white);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 6%;
  overflow: hidden;
}

.tech-set-2 {
  flex-grow: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-self: stretch;
  gap: 0.5rem;
}

.tech-set-1 img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.user-content {
  font-size: 16px;
}

.section-tech-newsletter {
  background: var(--gray-f);
  padding: 120px 0 100px;
}

.tech-newsletter-grid {
  display: grid;
  grid-template-columns: 44% auto;
  gap: 2rem 15%;
  margin: 0 auto;
  width: 659px;
  max-width: 100%;
  position: relative;
}

.tech-newsletter-1 {
  position: relative;
  width: 290px;
  margin: 0 auto;
}

.tech-newsletter-1:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: min(5rem, 20vw);
  height: min(5rem, 20vw);
  background: url(assets/img/mypatch-small-badge.svg) center/contain no-repeat;
  transform: translate(87%, -50%);
}

.tech-newsletter-1>* {
  position: relative;
  width: fit-content;
}

.section-tech-newsletter form {
  margin: 0;
}

.section-tech-newsletter form p {
  margin: 0 0 0.5rem;
}

.section-tech-newsletter input[type="email"] {
  background: none;
  border: 1px solid;
  border-radius: 10px;
  padding-left: 125px;
  outline: none;
}

.section-tech-newsletter input[type="email"]::placeholder {
  color: black !important;
}

.section-tech-newsletter input[type="submit"] {
  position: absolute;
  top: 0;
  left: 0;
  background: url(assets/img/big-arrow.svg) center no-repeat;
  border: none;
  height: 2.4rem;
  width: 125px;
  font-size: 0;
  color: transparent;
  cursor: pointer;
}

.section-tech-newsletter .wpcf7 form.invalid .wpcf7-response-output {
  display: none !important;
}

.button-black,
a.button-black {
  background: var(--black);
  color: var(--white);
  border: none;
}

a.button.button-yellow {
  background: #fff69887;
}

@media (min-width: 783px) {
  body.page-template-page-tech section.section-hero {
    padding: 83px 0 143px;
  }

  .page-template-page-tech .hero-cols.has-image {
    display: flex;
    gap: 1rem 4%;
    flex-direction: row-reverse;
    width: 1170px;
    max-width: 100%;
    margin: 0 auto;
  }

  .page-template-page-tech .hero-col-2 img {
    width: auto;
  }
}

@media (max-width: 1000px) {
  .icon-row-grid.slick-slider {
    margin-right: calc(-1 * var(--wrapper-margin));
    margin-left: calc(-1 * var(--wrapper-margin));
    padding: 0;
  }

  .slick-initialized .slick-slide.icon-row-item {
    display: flex;
    word-break: break-word;
    overflow: hidden;
    font-size: max(14px, 4vw);
    margin-inline-end: 1.5rem;
    border-radius: 15px;
  }

  .icon-row-grid .slick-track {
    padding: 0 var(--wrapper-margin);
  }

  .icon-row-grid .slick-dots {
    margin-top: 30px;
  }
}

@media (max-width: 782px) {
  .paragraph {
    grid-template-columns: auto;
  }

  .section-tech-main {
    padding: 60px 0;
  }

  .section-tech-main-why .items-container .item {
    flex-basis: 0;
    flex-grow: 1;
    font-size: 14px;
  }

  .section-tech-how {
    padding: 80px 0;
  }

  .tech-how-grid {
    grid-template-columns: auto;
    gap: 3rem 2rem;
  }

  /*.tech-how-1 { grid-area: 2 / 1; }*/
  .tech-how-grid img {
    margin: 0 auto;
  }

  .icon-row>h2 {
    max-width: 14em;
  }

  .icon-rows-container {
    gap: 90px 0;
    margin: 0 0 90px;
  }

  .section-tech-why {
    padding: 60px 0;
  }

  .section-tech-sets {
    padding: 40px 0;
  }

  body.home .section-tech-sets {
    margin: 40px 0;
    padding: 0;
  }

  .tech-set {
    flex-direction: column !important;
    padding: 24px 49px;
    gap: 20px;
  }

  .tech-set>h3 {
    margin-bottom: -0.3em;
  }

  .tech-set-1 {
    width: 100%;
  }

  .tech-set-2 .button {
    margin: 0 auto;
    width: 80%;
    min-width: fit-content;
    display: block;
  }

  .section-tech-newsletter {
    padding: 90px 0 60px;
  }

  .tech-newsletter-grid {
    grid-template-columns: auto;
    justify-items: center;
  }
}

/* products grid:  */

/*.woocommerce-breadcrumb,
.woocommerce-result-count { display:none !important; }*/

header.woocommerce-products-header {
  margin: 46px 0 60px;
}

header.woocommerce-products-header h2 {
  margin: 0 0 36px;
}

/*.product-cat-nav-container { display: grid; grid-template-columns:6em auto 6em; align-items: center; }*/

ul.product-cat-nav {
  display: flex;
  gap: 1rem 22px;
  justify-content: center;
  flex-wrap: wrap;
}

ul.product-cat-nav a {
  /* min-width: max(13vw, 9em); */
  border: 1px solid #33333355;
}

ul.product-cat-nav a.button-on,
ul.product-cat-nav a:hover {
  background: var(--gray-blue);
  border-color: var(--gray-blue);
  color: var(--black);
}

.woocommerce .woocommerce-ordering {
  margin: 0;
}

.woocommerce .woocommerce-ordering select {
  width: 4em;
  border: none;
  padding: 0;
}

ul.slick-slider li.product {
  position: relative;
}

.woocommerce ul.slick-slider li.product img {
  /*width:100%;*/
}

.woocommerce ul.slick-slider li.product,
.woocommerce-page ul.slick-slider li.product {
  margin: 0 1rem 0 1rem;
  padding: 0;
  position: relative;
  width: auto;
  text-align: center;
}

.woocommerce ul.slick-slider li.product a,
.woocommerce-page ul.slick-slider li.product a {
  text-decoration: none;
}

.onsale {
  display: none !important;
}

ul:is(.products, .slick-slider) li.product .price {
  color: var(--black) !important;
}

.woocommerce ul:is(.products, .slick-slider) li.product a.woocommerce-loop-product__link {
  text-align: center;
  font-size: 16px;
}

.product-item-details {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: 5em;
  line-height: 1.3;
}

.woocommerce-loop-product__title {
  padding: 0 !important;
  font-size: inherit !important;
  margin-bottom: 0.2em !important;
}

.woocommerce-loop-product__title p {
  display: inline;
  margin: 0;
}

@media (min-width: 783px) {
  .woocommerce-loop-product__title span:nth-child(2):before {
    content: " | ";
  }
}

.woocommerce-loop-product__title .subtitle {
  display: none;
}

@media (max-width: 782px) {

  .woocommerce ul.slick-slider li.product,
  .woocommerce-page ul.slick-slider li.product {
    margin: 0 9px;
  }

  .woocommerce-loop-product__title .subtitle {
    display: none;
  }

  ul.product-cat-nav a {
    font-size: 16px;
  }

  .woocommerce-loop-product__title {
    display: flex;
    flex-direction: column;
    margin: 0 0 0.1em !important;
  }

  .product-item-details {
    min-height: 4em;
  }
}

/*.wc-block-grid__products .wc-block-grid__product-image img,

.woocommerce ul:is(.products, .slick-slider) li.product:not(.product-category) a img {*/

.product-item-image-container {
  position: relative;
  background: var(--gray);
  border-radius: 15px;
  margin: 0 0 1em;
  aspect-ratio: 315/375;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.product-item-image-container picture {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

/* Handle placeholder images properly */
.product-item-image-container .woocommerce-placeholder {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--gray);
  color: #999;
  font-size: 14px;
  text-align: center;
  padding: 20px;
}

.product-item-image-container .woocommerce-placeholder::before {
  content: "📷";
  font-size: 48px;
  display: block;
  margin-bottom: 10px;
}

/* Ensure placeholder text is visible */
.product-item-image-container .woocommerce-placeholder {
  font-weight: 500;
  line-height: 1.4;
}

.woocommerce ul.products li.product a .product-item-image-container img,
.product-item-image-container img {
  margin: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity 0.3s ease;
}

.single-product .woocommerce-product-gallery__image--placeholder img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  display: none;
}

input.wc-block-components-quantity-selector__input {
  text-align: center !important;
}

li.product .product-item-image-container .product-hover-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 2;
}

.woocommerce ul.products li.product:hover .product-item-image-container .product-hover-image {
  opacity: 1;
}

.woocommerce ul.products li.product:hover .product-item-image-container img:not(.product-hover-image) {
  opacity: 0;
}

/* Only apply hover effect when there's a second image */
.woocommerce ul.products li.product:not(:has(.product-hover-image)):hover .product-item-image-container img {
  opacity: 1 !important;
}

/* Fallback for browsers that don't support :has() */
@supports not (selector(:has(*))) {
  .woocommerce ul.products li.product .product-item-image-container img {
    opacity: 1 !important;
  }
}

/* Ensure the main image has proper positioning */
.woocommerce ul.products li.product .product-item-image-container img:not(.product-hover-image) {
  position: relative;
  z-index: 1;
  transition: opacity 0.3s ease;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Fix hover background issue */
.woocommerce ul.products li.product .product-item-image-container {
  position: relative;
  display: block;
  width: 100%;
  height: auto;
}

.woocommerce ul:is(.products, .slick-slider) .added_to_cart.wc-forward,
.wc-block-grid__product-add-to-cart,
.woocommerce ul:is(.products, .slick-slider) li.product .button {
  position: absolute;
  top: auto;
  left: 50%;
  transform: translateX(-50%);
  width: 80%;
  bottom: 8em;
  margin: 0;
  border-radius: 6px;
  font-size: 15px;
  padding: 0.8em 0.5em;
  border: none;
  background: white;
  text-align: center;
  z-index: 2;
}

.woocommerce ul:is(.products, .slick-slider) li.product.product-span-2-cols .button {
  width: 37%;
}

.woocommerce ul:is(.products, .slick-slider) li.product .coming-soon-notice {
  position: absolute;
  top: 0;
  right: 0;
  width: 29%;
  aspect-ratio: 1;
  background: url(assets/img/coming-soon.svg) center/contain no-repeat;
  display: block;
  transform: translate(17%, -25%);
  z-index: 1;
}

body:not(.post-type-archive-product, .tax-product_cat) .coming-soon-notice {
  display: none !important;
}

.woocommerce ul:is(.products, .slick-slider) li.product .star-rating {
  display: none;
}

.wc-block-grid__products li:not(:hover, :active) .wc-block-grid__product-add-to-cart,
.woocommerce ul:is(.products, .slick-slider) li.product:not(:hover, :active) .button {
  opacity: 0;
}

@media (max-width: 782px) {
  .product-item-image-container {
    margin: 0 0 0.7em;
  }

  .wc-block-grid__products li .wc-block-grid__product-add-to-cart,
  .woocommerce ul:is(.products, .slick-slider) li.product .button {
    display: none;
  }
}

body.woocommerce:is(.post-type-archive-product, .tax-product_cat) ul:is(.products, .slick-slider) {
  margin-bottom: 6rem;
}

.woocommerce-pagination {
  margin: -4rem 0 7rem;
}

.woocommerce ul.products li.product-category {
  background: var(--gray);
  border-radius: 15px;
  padding: 10px;
}

.woocommerce ul.products li.product-category :is(.woocommerce-loop-category__title, .count) {
  display: none;
}

.woocommerce ul.products li.product-category a {
  display: block;
  padding: calc(14% - 1rem) 14%;
}

.woocommerce ul.products li.product-category h3.category-name {
  margin: 0;
  padding: 0;
  font-size: 24px;
}

body .woocommerce ul.products li.product-category img {
  margin: 0.4rem 0 0.6rem;
  border-radius: 5px;
}

.woocommerce ul.products li.product-category .category-description {
  margin: 0;
}

.woocommerce ul.products li.product-category .arrow-left:after {
  height: min(12px, 2.3vw);
}

.woocommerce ul.products li.product-category .category-description.flex {
  align-items: flex-start;
}

.woocommerce ul.products[class*="columns-"] li.product,
.woocommerce-page ul.products[class*="columns-"] li.product {
  margin-bottom: 0.5rem;
}

.archive.tax-product_cat.term-fix .tech-set:not(:nth-child(2)) {
  display: none;
}

.archive.tax-product_cat.term-stick-to-your-best .tech-set:not(:nth-child(1)) {
  display: none;
}

.archive.tax-product_cat .section-tech-sets {
  padding: 0;
}

.product-cat-nav.mobile-slider .slick-dots {
  margin: 22px auto 0;
}

.product-cat-nav.mobile-slider .button {
  margin: 0 9px;
  border: 1px solid #33333355;
  display: block;
}

.product-cat-nav.mobile-slider .button.button-on,
.product-cat-nav.mobile-slider .button:hover {
  background: var(--gray-blue);
  border-color: var(--gray-blue);
  color: var(--black);
}

@media (max-width: 782px) {
  header.woocommerce-products-header nav.unwrap-mobile {
    max-width: 110% !important;
    margin-left: -5% !important;
    margin-right: -5% !important;
    width: unset !important;
    position: relative;
    overflow: hidden;
  }

  header.woocommerce-products-header {
    margin: 28px 0 40px;
  }

  header.woocommerce-products-header h2 {
    margin: 0 0 20px;
  }

  .product-cat-nav-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.3rem;
  }

  header.woocommerce-products-header nav {
    overflow: auto;
    max-width: 100%;
  }

  header.woocommerce-products-header ul {
    flex-wrap: nowrap;
    white-space: nowrap;
    padding: 0 5vw 1rem;
    width: fit-content;
  }

  .woocommerce ul.products li.product-category h3.category-name {
    margin: 0;
    padding: 0;
    font-size: 19px;
  }
}

/* cart page: */

.wp-block-wt-related-products {
  display: none !important;
}

.wc-block-grid__product .wc-block-grid__product-image,
.wc-block-grid__product .wc-block-grid__product-link {
  width: 100%;
}

.wc-block-grid__product .wc-block-grid__product-image:not(.wc-block-components-product-image),
.wc-block-grid__product .wc-block-grid__product-title {
  margin: 0 !important;
}

.wc-block-grid__product-add-to-cart a {
  background: none !important;
  color: var(--black) !important;
  border: none !important;
}

.wp-block-woocommerce-cart-cross-sells-block {
  display: none;
}

a.wc-block-cart__submit-button.contained {
  margin: 1rem 0 0;
}

button.wc-block-components-checkout-place-order-button.contained,
a.wc-block-cart__submit-button.contained {
  text-decoration: none;

  background: var(--light-blue);

  padding: 1rem;

  border-radius: 10px;

  font-size: 1.2rem;
}

.woocommerce .cart-collaterals .cart_totals,
.woocommerce-page .cart-collaterals .cart_totals {
  width: auto !important;
  float: none;
}

.cross-sells-product img {
  width: 70% !important;
}

@media (max-width: 782px) {
  .cross-sells-product img {
    width: 50% !important;
  }
}

/* faq page: */

body.page-template-default .site-content {
  padding-bottom: 5rem;
}

@media (min-width: 783px) {
  body.page-template-default .section-faq-1 h3 {
    margin-bottom: 1.9rem;
  }
}

.section-faq-1 h3 {
  background: var(--light-pink);
  padding: 0.4em 0.6em 0.3em;
  text-align: center;
  font-weight: 400;
}

@media (max-width: 782px) {
  /*.section-faq-1 h3 { background: var(--light-pink); padding: 0.4em 0.6em 0.3em; text-align: center; font-weight: 400; }*/

  body:not(.sidebar) .alignwide {
    margin: 0;
  }
}

/* single product page: */

.mypatch-product-title-wrapper {
  display: flex;
  justify-content: space-between;
  margin-bottom: 1.5rem;
}

.product-badges {
  margin-inline-start: 1rem;
  display: flex;
  gap: 0.7rem;
}

.product-badges img.product-badge {
  max-width: 64px;
  max-height: 64px;
  width: auto;
  height: auto;
  display: block;
}

.back-to-all-products {
  margin: 0 0 20px;
}

@media (min-width: 783px) {
  .single-product.woocommerce div.product {
    margin-top: 75px;
  }
}

@media (max-width: 782px) {
  .mypatch-product-title-wrapper {
    margin-bottom: 0;
  }

  .woocommerce-product-gallery__trigger {
    display: none;
  }

  .product-badges {
    position: absolute;
    top: 0;
    left: 0;
    padding: 10px;
  }

  .product-badges img.product-badge {
    max-width: 58px;
    max-height: 58px;
  }
}

.single-product.woocommerce div.product .entry-summary .product_title {
  color: #333333;
  font-size: 26px;
  margin: 0.2rem 0 0;
}

.single-product .entry-summary .product_title span {
  display: block;
}

.single-product .entry-summary p.product-subtitle {
  margin: 0.3rem 0 0;
}

.woocommerce div.product .woocommerce-product-rating {
  margin: 0 0 20px;
}

body:has(.my-product-variation) .entry-summary p.price {
  display: none !important;
}

.single-product .section-faq {
  clear: both;

  padding: min(9vw, 97px) 0 43px;

  background: var(--light-pink);
}

.woocommerce div.product div.summary {
  margin-bottom: 120px;
}

@media (max-width: 782px) {
  .woocommerce div.product div.summary {
    margin-bottom: 70px;
  }
}

@media (min-width: 769px) {

  .woocommerce #content div.product div.images,
  .woocommerce div.product div.images,
  .woocommerce-page #content div.product div.images,
  .woocommerce-page div.product div.images {
    width: 39.842%;
  }

  .woocommerce #content div.product div.summary,
  .woocommerce div.product div.summary,
  .woocommerce-page #content div.product div.summary,
  .woocommerce-page div.product div.summary {
    width: 46%;
  }
}

.single-product .zoomImg {
  display: none !important;
}

.twentythirteen .woocommerce-breadcrumb {
  padding-top: 40px;
  display: flex;
}

body.woocommerce div.product div.images .woocommerce-product-gallery__image a {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}

body.woocommerce div.product div.images .woocommerce-product-gallery__wrapper img {
  width: auto;
  height: auto;
  max-height: 100%;
}

body.woocommerce div.product div.images .flex-viewport .woocommerce-product-gallery__image a {
  cursor: auto;
}

.site-content .wpcf7 input[type="text"],
.site-content .wpcf7 input[type="email"],
.site-content .wpcf7 input[type="tel"],
.site-content .wpcf7 input[type="url"],
.site-content .wpcf7 textarea {
  border: 1px solid #000000;
  background: white;
  display: block;
  width: 100%;
  padding: 0.65em 0.8em 0.45em;
  line-height: 1.2;
  border-radius: 10px;
}

@media (min-width: 783px) {
  .woocommerce-page div.product div.images {
    margin-bottom: 120px;
  }
}

@media (max-width: 782px) {
  .single-product.woocommerce div.product .entry-summary .product_title {
    font-size: 20px;
    color: inherit;
  }

  .woocommerce-product-details__short-description {
    font-size: 14px;
    margin: 0.8rem 0 1rem;
  }

  body .woocommerce-product-gallery__image {
    position: relative;
    aspect-ratio: 1.1;
  }

  .woocommerce div.product div.images .woocommerce-product-gallery__trigger {
    left: calc(0.5em + 5vw);
  }

  .woocommerce-product-gallery__image:after {
    content: "";
    position: absolute;
    top: -5vw;
    left: 0;
    width: 100%;
    height: calc(100% + 10vw);
    border: 5vw solid white;
    box-sizing: border-box;
    border-radius: 40px;
  }

  .flex-viewport-display {
    display: flex;
    align-items: center;
    gap: 0 0.5em;
    width: fit-content;
    margin: 1rem auto;
    font-size: 15px;
  }

  .flex-viewport-display>span {
    direction: ltr;
  }
}

.woocommerce-product-gallery__image {
  background: var(--gray);
  border-radius: 15px;
  display: flex !important;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1;
}

.woocommerce div.product div.images .woocommerce-product-gallery__wrapper .zoomImg {
  background: var(--gray);
}

.woocommerce div.product div.images .flex-control-thumbs {
  margin-top: 29px;
  display: flex;
  gap: 31px;
}

.woocommerce div.product div.images .flex-control-thumbs li {
  width: 50%;
  position: relative;
  background: var(--gray);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5%;
  aspect-ratio: 1;
  overflow: hidden;
}

.woocommerce div.product div.images .flex-control-thumbs li img {
  /*max-width: 50%; max-height: 50%; width:auto; height:auto;*/
  /*width: 100%; height: 100%; object-fit: cover; border-radius: 5%;*/
  width: auto;
  height: auto;
  display: block;
}

.woocommerce .woocommerce-product-rating .star-rating {
  margin: 0;
  display: inline-block;
  float: none;
  vertical-align: text-top;
}

a.woocommerce-review-link {
  text-decoration: none;
  margin-inline-start: 0.3em;
}

div#reviews {
  clear: both;
  margin: 0 0 100px;
}

.woocommerce #reviews #comments ol.commentlist {
  width: fit-content;
}

.pswp__bg {
  background: var(--gray-3);
}

#reply-title {
  text-decoration: underline;
}

form#commentform {
  padding: 2rem !important;
  background: #eee;
  border-radius: 15px;
  margin: 1rem 0;
}

.section-faq {
  clear: both;
}

.section-faq-grid {
  display: grid;
  grid-template-columns: auto 39%;
  gap: 2rem 12%;
}

.section-faq-2 img {
  display: block;
  margin-inline-start: auto;
  height: auto;
  border-radius: 15px;
}

.faq-list-more {
  width: 100% !important;
}

.section-faq .read-more {
  margin-top: 2rem;
  text-decoration: underline;
  color: black !important;
}

.section-faq .read-less {
  margin-top: 2rem;
  text-decoration: underline;
  color: black !important;
}

.section-faq-2 {
  display: flex;
  flex-direction: column;
  gap: 1.4rem;
}

@media (max-width: 800px) {
  .section-faq-grid {
    grid-template-columns: auto;
  }

  .section-faq-2 img {
    display: block;
    margin: 0 auto;
  }

  .section-faq-2 {
    flex-direction: column-reverse;
  }

  .section-faq-1 h2 {
    text-align: center;
  }

  ol.flex-control-nav.flex-control-thumbs {
    display: none !important;
  }
}

form.cart {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.pack-discount-banner {
  margin: 0 0 32px;
  background: var(--light-pink-2);
  color: var(--black);
  padding: 16px 26px 16px;
  border-radius: 15px;
}

.pack-discount-banner h4 {
  margin: 0.1em 0 0;
}

.ingredients-list-box {
  position: relative;
  margin: 0 0 32px;
  background: var(--product-color);
  color: var(--product-color-text);
  padding: 19px 26px 16px;
  border-radius: 15px;
}

.ingredients-list-box h4 {
  font-size: 1rem;
  margin: 0 0 0.4rem;
}

.ingredients-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
}

.ingredients-list>li:not(:last-child):after {
  content: "|";
  margin: 0 0.25em;
}

.ingredients-info-button {
  cursor: pointer;
  position: absolute;
  top: 17px;
  left: 13px;
  width: 16px;
  height: 16px;
  background: url(assets/img/expand-plus.svg) center no-repeat;
}

.ingredient-name {
  text-transform: uppercase;
}

.ingredients-popup .popup {}

.ingredients-popup .hide-popup {
  position: absolute;
  top: 10px;
  width: 30px;
  height: 30px;
  background: url(assets/img/popup-x.svg) center no-repeat;
}

body:not(.rtl) .ingredients-popup .hide-popup {
  right: 10px;
}

body.rtl .ingredients-popup .hide-popup {
  left: 10px;
}

.ingredients-popup .hide-popup:after {
  display: none;
}

.ingredients-popup .popup-content>h4 {
  margin: 0 0 7px;
}

.ingredients-popup .popup-inner {
  max-height: calc(90vh - var(--admin-bar-height) - 4rem);
}

.ingredients-popup .popup-content {
  padding: 26px 42px;
  background: var(--product-color);
  color: var(--product-color-text);
  border-radius: 15px;
}

/*table.ingredients-popup-list { border: none; border-collapse: separate; border-spacing:0px 7px; margin:0; }
table.ingredients-popup-list th { vertical-align: text-top; padding-inline-end: 12px; }
table.ingredients-popup-list h4 { margin:0; background:white; padding:0.2em 1em; border-radius: 5px; font-weight: 400; text-align: center; min-width:90px; }*/
ul.ingredients-popup-list {
  list-style: none;
  padding: 0;
  display: grid;
  gap: 5px;
  margin: 7px 0 0;
}

.ingredients-popup-list li {
  background: var(--white);
  border-radius: 8px;
  padding: 1.1em 16px 0.9em;
}

.single-product-texts {
  color: #2e2d2d;
}

.texts-list>* {
  border-bottom: 2px solid var(--gray-3);
  padding: 1rem 0;
}

.texts-list-item.expandable .expandable-content {
  margin: 1em 0 0;
}

.texts-list-item.expandable .expandable-trigger {
  display: flex;
  gap: 1rem;
  justify-content: space-between;
}

.texts-list-item.expandable .expandable-trigger:after {
  content: "";
  width: 16px;
  height: 1.3em;
  background: url(assets/img/expand-plus.svg) center no-repeat;
  flex-shrink: 0;
}

.texts-list-item.expandable.expanded .expandable-trigger:after {
  background-image: url(assets/img/expand-minus.svg);
}

.expandable-trigger {
  cursor: pointer;
}

.expandable-content {
  width: 100% !important;
}

.expandable .expandable-content {
  display: none;
}

section.related.products,
section.related {
  clear: both;
  padding: 80px 0 0px;
}

section.related.products h3 {
  text-align: center;
  margin: 0 0 3rem;
}

section.related.wt-related-products h2 {
  text-align: center;
}

.mypatch-product-variations-container {
  display: grid;
  gap: 0.5rem;
  margin: 0 0 20px;
}

.mypatch-product-variations-container>div {
  background: var(--gray);
  border-radius: 15px;
  padding: 17px 21px;
  padding-inline-end: 16px;
}

.mypatch-product-variations-container>div.out-of-stock-notice {
  background: transparent;
  padding: 17px 21px 0;
}

.mypatch-product-variations-container>div.out-of-stock-notice p {
  color: red;
}

.mypatch-product-variations-container a.added_to_cart.wc-forward {
  display: block;
  text-align: center;
  margin-top: 0.5em;
}

.my-product-variation {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  position: relative;
}

.my-product-variation .button {
  border: none;
  background: var(--brown);
}

.variation-price-line>* {
  display: inline !important;
}

.variation-price-line:has(.price-per-unit) {
  font-weight: 700;
}

.variation-price-line .price-per-unit {
  font-weight: 400;
}

.my-product-variation .added_to_cart {
  display: none !important;
}

.my-product-variation-1 {
  font-size: 1rem;
}

.my-product-variation-1 h3 {
  font-size: 1rem;
  margin: 0.2rem 0 0.4rem;
}

span.variation_description {
  display: inline-block;
  background: #ddc9ed;
  border-radius: 5px;
  padding: 0.2em 0.6em 0.1em;
  font-size: 13px;
  font-weight: 400;
  margin-inline-start: 0.5rem;
  vertical-align: middle;
}

span.variation_description * {
  display: inline;
  margin: 0;
}

body.rtl span.woocommerce-Price-amount bdi {
  direction: rtl;
}

@media (min-width: 783px) {
  .my-product-variation-2 .button:hover {
    background: var(--white) !important;
  }
}

.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price,
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
  color: inherit;
  font-size: 1rem;
  display: block;
}

@media (max-width: 782px) {

  section.related.products,
  section.related {
    clear: both;
    padding: 2rem 0 0rem;
  }

  section.related.products h3 {
    margin: 0 0 1.6rem;
  }

  .mypatch-product-variations-container {
    margin: 0 0 14px;
  }

  span.variation_description {
    font-size: 10px;
    margin-inline-start: 0.1rem;
  }

  .woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price,
  .woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
    font-size: 16px;
  }
}

/* blog index: */
.blog-archive-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 5rem 37px;
}

.blog-archive-grid article {
  display: flex;
  align-items: stretch;
}

.blog-archive-grid article a {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.blog-archive-grid article img {
  display: block;
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  height: auto;
}

.blog-archive-grid article .inner {
  padding: 1rem;
  border-radius: 0 0 15px 15px;
  background: #f2f2f2;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.blog-archive-grid article .inner .entry-meta {
  font-size: 16px;
}

.blog-archive-grid article .inner>div:first-child {
  flex-grow: 1;
}

.blog-archive-grid article h2.entry-title {
  margin: 0.45rem 0 0.25rem;
  font-size: 22px;
}

.blog-archive-grid article h3.entry-subtitle {
  margin: 0;
  font-weight: 400;
  font-size: 17px;
}

.blog-archive-grid article .entry-read-button {
  font-size: 17px;
  font-weight: 700;
  margin-top: 1.5rem;
}

@media (max-width: 1250px) {
  .blog-archive-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 1000px) {
  .blog-archive-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 782px) {
  .blog-archive-grid {
    grid-template-columns: repeat(1, 1fr);
    gap: 2.5rem;
  }
}

/* single post - blog */

.single-post .entry-header {
  width: 85%;
  position: relative;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  margin: 60px auto 100px;
}

.single-post h1.entry-title {
  margin: 0;
}

.single-post .entry-header>*:last-child {
  justify-self: end;
}

.wrapper.single-post-wrapper {
  max-width: 1100px;
}

.single-post-grid {
  display: grid;
  grid-template-columns: auto 315px;
  gap: 2rem 100px;
  margin-top: 22px;
}

.single-post-grid .entry-content {
  overflow: hidden;
}

.single-post-grid .entry-content h2 {
  margin-top: 4rem;
  font-size: 28px;
}

.single-post-grid .entry-thumbnail img {
  height: auto;
  display: block;
}

.blog-post-products h3 {
  margin: 0 0 2.5rem;
}

@media (max-width: 782px) {
  .single-post-grid .entry-content h2 {
    margin: 3rem 0 1rem;
    font-size: 20px;
  }

  .single-post .entry-header {
    grid-template-columns: repeat(2, 1fr);
    font-size: 15px;
    gap: 2rem 0;
    margin: 10px auto 30px;
  }

  .single-post h1.entry-title {
    grid-row: 2;
    grid-column: span 2;
  }

  .single-post-grid {
    grid-template-columns: repeat(1, 1fr);
    gap: 1rem;
  }

  .single-post-grid .entry-thumbnail {
    grid-row: 1;
    margin-top: 0.7rem;
  }
}

/* slick slider: */

.slick-slider.slick-flex .slick-track {
  display: flex;
  align-items: center;
  /*gap:var(--slick-gap);*/
}

.slick-slider.slick-flex .slick-slide {
  height: auto;
}

.slick-dots {
  list-style: none;
  padding: 0;
  gap: 9px;
  margin: 0 5vw 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.slick-dots li button {
  font-size: 0;
  display: block;
  width: 8px;
  height: 8px;
  padding: 0;
  cursor: pointer;
  color: transparent;
  border: none;
  background: #d9d9d9;
  border-radius: 50%;
}

.slick-dots li.slick-active button {
  background: #bbb1e1;
}

section.related .slick-slider,
.slick-slider {
  position: relative;
  padding: 0 min(100px, 13vw);
}

.section-home-slider .slick-slider {
  position: relative;
  padding: 0 !important;
  overflow: hidden;
}

.section-home-slider .home-slider-container {
  width: 100%;
  max-width: 100vw;
  overflow: hidden;
}

.section-home-slider .home-slider-slides {
  overflow: hidden;
}

.section-home-slider .home-slider-slide {
  overflow: hidden;
  position: relative;
  width: 100%;
  max-width: 100vw;
}

.section-home-slider .home-slider-slide a {
  display: block;
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
}

.section-home-slider .home-slider-slide img {
  width: 100%;
  max-width: 100vw;
  height: auto;
  display: block;
}

.section-home-slider ul.slick-dots {
  margin-top: 20px;
}

@media (max-width: 782px) {

  section.related .slick-slider,
  .slick-slider {
    padding: 0;
  }

  ul.products-slider .slick-dots {
    /*margin-top: -1.4rem;*/
  }
}

button.slick-arrow,
button.slick-arrow:focus,
button.slick-arrow:hover {
  border: none;
  font-size: 0;
  position: absolute;
  cursor: pointer;
}

button.slick-arrow {
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 39px;
  height: 39px;
  background: url(assets/img/arr-r.svg) center no-repeat;
}

button.slick-arrow:hover {}

button.slick-arrow:before,
button.slick-arrow:after {
  display: none;
}

body.rtl button.slick-next,
body:not(.rtl) button.slick-prev {
  right: auto;
  left: 0;
  background-image: url(assets/img/arr-l.svg);
}

.products-slider button.slick-arrow {
  top: calc(50% - 3.6rem);
}

body.rtl .slick-slider .slick-list,
body.rtl .slick-slider .slick-track {
  direction: inherit !important;
}

/*body:not(.rtl) .wpsisac-slick-slider.design-1 .slick-next { left:auto !important; right:20px !important; }

body:not(.rtl) .wpsisac-slick-slider.design-1 .slick-prev { left:20px !important; right:auto !important; }*/

/* social: */

ul.social {
  display: flex;
  align-items: center;
  list-style: none;
  gap: 1rem;
  flex-wrap: wrap;
  padding: 0;
  margin: 0;
}

ul.social img {
  display: block;
  max-width: 2rem;
  max-height: 2rem;
  width: auto;
  height: auto;
}

nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

nav ul :is(a, button, span) {
  text-decoration: none;
}

nav ul button {
  padding: 0;
  color: inherit;
  outline: none;
}

/* footer: */

.site-footer .home-link img,
.site-footer ul.social img {
  filter: invert(1);
}

.site-footer input[type="email"] {
  color: white;
}

.site-footer input[type="email"]::placeholder {
  color: white !important;
}

.site-footer input[type="submit"] {
  filter: brightness(100);
}

.site-footer span.wpcf7-not-valid-tip {
  color: white;
}

.site-footer {
  background: var(--brown);
  padding: 58px 0 22px;
  color: var(--white);
}

.site-footer-cols {
  display: grid;
  grid-template-columns: max-content auto min(430px, 40%);
  gap: 2rem;
}

.footer-menu {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  justify-content: center;
}

.footer-menu ul {
  display: grid;
  gap: 1rem;
  margin-top: 1rem;
  width: 100% !important;
}

.site-footer form {
  margin: 0 0 30px;
}

.site-footer form p {
  margin: 0 0 0.5rem;
}

.site-footer input[type="email"] {
  background: none;
  border: 1px solid;
  border-radius: 10px;
  padding-left: 125px;
  outline: none;
}

.site-footer input[type="submit"] {
  position: absolute;
  top: 0;
  left: 0;
  background: url(assets/img/big-arrow.svg) center no-repeat;
  border: none;
  height: 2.4rem;
  width: 125px;
  font-size: 0;
  color: transparent;
  cursor: pointer;
}

.site-footer .wpcf7 form.invalid .wpcf7-response-output {
  display: none !important;
}

.site-footer input[type="email"]:-webkit-autofill,
.site-footer input[type="email"]:-webkit-autofill:hover,
.site-footer input[type="email"]:-webkit-autofill:focus,
.site-footer input[type="email"]:-webkit-autofill:active {
  -webkit-background-clip: text;
  -webkit-text-fill-color: #ffffff;
  transition: background-color 5000s ease-in-out 0s;
  box-shadow: inset 0 0 20px 20px #00000099;
}

/*  page vision: */
header.section-vision-header {
  min-height: 700px;
  background: #B3DDF3;
  display: flex;
  align-items: center;
}

@media (max-width: 768px) {
  header.section-vision-header {
    min-height: 600px;
  }
}

header.section-vision-header .wrapper {
  max-width: 1120px;
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: flex-start;
  gap: 20px;
}

@media (max-width: 1370px) {
  header.section-vision-header .wrapper {
    flex-direction: column;
  }
}

header.section-vision-header .wrapper .page-title {
  max-width: 496px;
  width: 100%;
  font-weight: 400;
  font-size: 68px;
  line-height: 106%;
  text-align: center;
  color: #fff;
  margin: 0;
}

header.section-vision-header .wrapper .vision-header-images {
  position: relative;
}

img.vision-header-image-first {
  border-radius: 30px;
  max-width: 415px;
  width: 100%;
  height: auto;
}

img.vision-header-image-second {
  position: absolute;
  top: -90px;
  right: -207px;
  width: 287px;
  height: auto;
  border-radius: 16px;
}

@media (max-width: 768px) {
  img.vision-header-image-second {
    display: none;
  }
}

.vision-header-brandname {
  border-radius: 8px;
  width: 92px;
  height: 92px;
  background: #fdf8f4;
  transform: rotate(12deg);
  display: flex;
  justify-content: center;
  align-items: center;
  direction: ltr;
  position: absolute;
  bottom: 38px;
  right: -66px;
}

@media (max-width: 768px) {
  .vision-header-brandname {
    bottom: 0;
    right: -5px;
  }
}

section.section-vision-block1 {
  padding: 60px 0;
}

section.section-vision-block1 .wrapper {
  max-width: 973px;
}

.vision-block1-title {
  font-weight: 400;
  font-size: 35px;
  line-height: 103%;
  text-align: right;
  color: #333;
  margin-bottom: 33px;
}

.vision-block1-text-wrapper {
  display: flex;
  justify-content: space-between;
  gap: 116px;
}

.vision-block1-text1 {
  max-width: 416px;
  font-weight: 400;
  font-size: 18px;
  color: #000;
}

.vision-block1-text2 {
  max-width: 441px;
  font-weight: 400;
  font-size: 18px;
  text-align: right;
  color: #000;
}

@media (max-width: 992px) {
  .vision-block1-text-wrapper {
    flex-direction: column;
    gap: 30px;
  }

  .vision-block1-text1,
  .vision-block1-text2 {
    max-width: unset;
  }
}

section.section-vision-block2 {
  background: #ffe4e4;
  padding: 60px 0;
}

.vision-block2-text {
  max-width: 516px;
  margin: 0 auto;
  font-weight: 400;
  font-size: 18px;
  text-align: center;
  color: #000;
}

section.section-vision-block3 {
  padding: 60px 0;
}

.vision-block3-text {
  max-width: 698px;
  margin: 0 auto;
  font-weight: 400;
  font-size: 18px;
  text-align: center;
  color: #000;
}

section.section-tech-newsletter h2.user-content-preline {
  white-space: unset;
}

.section-tech-newsletter input.wpcf7-email {
  padding-left: 130px !important;
}

/* media queries: */
@media (min-width: 783px) {
  .site-footer-2 {
    grid-row: span 2;
  }

  .site-footer-3 {
    grid-row: span 2;
  }

  .site-footer-4 {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
  }

  .footer-menu ul {
    display: grid !important;
  }

  .footer-credits {
    margin-top: 1rem;
  }
}

@media (max-width: 782px) {
  .site-footer input[type="submit"] {
    background: url(assets/img/big-arrow.svg) 0.8rem 50% / auto 12px no-repeat;
  }

  .site-footer-cols {
    grid-template-columns: auto;
  }

  .site-footer-3 {
    grid-row: 2;
    text-align: center;
  }

  ul.social {
    justify-content: center;
  }

  .footer-menu {
    display: grid;
    grid-template-columns: 1fr;
    margin: 0 0.5rem;
    gap: 0;
  }

  .footer-menu>li {
    border-bottom: 1px solid;
  }

  .footer-menu>li> :is(a, span) {
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    padding: 0.6rem 0 0.4rem;
    align-items: center;
    width: 100%;
  }

  .footer-menu>li.menu-item-has-children> :is(a, span)>.menu-expand {
    content: "";
    width: 11px;
    height: 11px;
    background: url(assets/img/expand-plus.svg) center no-repeat;
    filter: brightness(100);
  }

  .footer-menu>li.menu-item-has-children.expanded> :is(a, span)>.menu-expand {
    background-image: url(assets/img/expand-minus.svg);
  }

  .footer-menu ul {
    display: none;
    margin: 0;
    padding: 0.25rem 0;
    gap: 0.5rem;
  }

  .footer-menu ul>li {
    margin: 0 0 0.4rem;
  }

  .site-footer-4 {
    text-align: center;
  }
}

/* popups: */

.popup-container {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: none;
  background: #32323388;
  z-index: 100;
}

.popup {
  position: absolute;
  width: 90%;
  max-width: 576px;
  max-height: calc(100vh - 80px);
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);

  -webkit-transition: all 0.5s ease-out;
  -moz-transition: all 0.5s ease-out;
  -o-transition: all 0.5s ease-out;
  transition: all 0.5s ease-out;
}

.popup-content {
  background-color: white;
  color: black;
  padding: 2em 4em;
}

.popup-inner {
  max-height: calc(90vh - var(--admin-bar-height));
  overflow: auto;
  margin-inline-end: -20px;
  padding-inline-end: 20px;
}

.thin-scrollbar::-webkit-scrollbar {
  width: 6px;
}

.thin-scrollbar::-webkit-scrollbar-track {
  background: #3333;
}

.thin-scrollbar::-webkit-scrollbar-thumb {
  background: #eee;
}

.hide-popup {
  position: absolute;
  top: -30px;
  right: 0;
  cursor: pointer;
}

body.rtl .hide-popup {
  right: auto;
  left: 0;
}

.hide-popup:after {
  display: block;
  content: "";
  background: url(assets/img/x-white.png) 50% 50% / contain no-repeat;
  font-family: dashicons;
  text-align: center;
  color: white;
  cursor: pointer;
  width: 19px;
  height: 20px;
}

.popup-newsletter-2025 .popup {
  max-width: 82vw;
  width: 510px;
}

.popup-newsletter-2025 .popup-content {
  background: #fdf8f4;
  padding: min(15vw, 100px) min(17%, 10vw) min(10vw, 80px);
  text-align: center;
  color: #444444;
  border-radius: 36px;

  font-size: 26px;
}

.popup-newsletter-2025 .popup-content h2 {
  font-size: 34px;
  font-weight: 700;
  margin-top: 0;
}

.popup-newsletter-2025 .wpcf7 input {
  width: 100%;
  display: block;
  font-size: 18px;
  text-align: center !important;
  line-height: 1.2;
  padding: 0.7em 0.7em 0.5em;
  border: none;
  border-radius: 0.3em;
  color: #444444;
}

.popup-newsletter-2025 .wpcf7 input[type="submit"] {
  background: #b4def4;
}

body.rtl .popup-newsletter-2025 .hide-popup {
  left: auto;
  right: 0;
  transform: translateX(40%);
  top: -1.6rem;
  background: url(assets/img/button-x.svg) center/contain no-repeat;
  width: 5rem;
  height: 5rem;

  max-width: 18vw;
}

.popup-newsletter-2025 .hide-popup:after {
  display: none;
}

.popup-newsletter-2025 .popup:after {
  content: "";

  position: absolute;

  left: min(0px, calc(20vw - 86px));

  transform: translateX(-43%);

  top: 13%;

  width: 11rem;

  height: 14rem;

  background: url(assets/img/popup-decoration-left.svg) center / contain no-repeat;

  max-width: 23vw;
}

.popup-newsletter-2025 .popup:before {
  content: "";

  position: absolute;

  right: -2.9rem;

  top: 4rem;

  width: min(2rem, 4vw);

  height: 2rem;

  background: url(assets/img/star-white.svg) center/contain no-repeat;
}

.popup-newsletter-2025 .wpcf7-not-valid-tip {

  font-size: 0.7em;
}

.woocommerce-MyAccount-content form .button {
  margin-top: 40px;
}

.tech-newsletter-2 {
  width: 320px;
}

.ipc-form-consent-wrapper {
    display: none;
}

.single-product .variation-price-line > span.price-per-unit {
    display: none !important;
}

@media (max-width: 782px) {}

.wpcf7 form.invalid .wpcf7-response-output {
  display: none !important;
}

@media (max-width: 1300px) {
  .site-footer {
    display: flex;
    flex-direction: column-reverse;
    align-items: center;
    padding: 35px 0;
  }
}

@media (min-width: 783px) {
  .mobile-only {
    display: none !important;
  }
}

@media (max-width: 782px) {
  /*body.admin-bar .site-header {top:46px;}*/

  html {
    /*position:unset;*/
  }

  .desktop-only {
    display: none !important;
  }

  .woocommerce-page .site-content,
  .wrapper {
    width: 90%;
    margin: 0 auto;
  }

  .woocommerce-product-gallery.woocommerce-product-gallery--with-images,
  .unwrap,
  .unwrap-mobile {
    margin-left: -5vw !important;
    margin-right: -5vw !important;
    max-width: 100vw !important;
    width: 100vw !important;
  }

  :root {
    --wrapper-margin: 5vw;
  }

  .menu-toggle {
    cursor: pointer;
    margin: 0;
    display: flex;
    align-items: center;
    position: absolute;
    top: 50%;

    transform: translateY(-50%);
    right: 1rem;
    background: url(assets/img/menu-toggle.svg) center/contain no-repeat;

    width: 25px;
    height: 25px;
  }

  #navbar .menu-toggle {
    height: 73px;
    top: 0;
    transform: none;
  }

  #navbar .menu-toggle.menu-close {
    background: url(assets/img/popup-x.svg) center / contain no-repeat;

    top: 24px;
    width: 1.5rem;
    height: 1.5rem;
  }

  body #navbar {
    display: block;
    z-index: 100;
    position: absolute;
    top: 0;
    bottom: -60px;
    right: 100%;
    width: 85%;
    background: white;
    color: inherit;
    padding: calc(var(--site-header-height) + -0.5rem) 24px 1rem;
    flex-direction: column;
    justify-content: space-around;
    box-shadow: 0 3px 6px #00000022;
    border-inline-end: 5px solid var(--color-red);
    overflow: hidden;
    height: 100vh;
  }

  body.rtl #navbar {
    right: auto;
    left: 100%;
  }

  body.admin-bar #navbar {}

  body.mobile-menu-open #navbar {
    transform: translateX(-100%);
  }

  body.rtl.mobile-menu-open #navbar {
    left: 100%;
    right: auto;
  }

  #navbar ul.social {
    justify-content: flex-start;
    margin-top: 2rem;
  }

  ul.nav-menu {
    display: grid;
    margin: 0 0 1.2rem;
    gap: 1.2rem;
    grid-template-columns: 1fr;
  }

  #navbar .wrapper {
    height: auto;
  }

  li.login-menu-item {
    margin: 0 !important;
  }

  .site-main button.slick-prev {
    left: -0.5em;
  }

  .site-main button.slick-next {
    right: -0.5em;
  }

  div#customer_details {
    display: flex;
    flex-direction: column-reverse;
  }

  section.section-hero .wpt-title {
      font-size: 40px;
  }

  section.section-hero .wpt-subtitle {
      font-size: 24px;
  }

  section.section-hero .wpt-note {
      font-size: 16px;
  }


	.shop-desktop section.section-hero.section-hero-shop {
    	padding: 10px 0;
	}

  section.section-tech-newsletter h2.user-content-preline {
    font-size: 46px;
    max-width: 200px;
  }
}

@media screen and (max-width: 600px) {
  html #wpadminbar {
    position: fixed;
  }
}

/* Search Results Styles */
/* Use section-best-selling styles for search products */
.search-products.section-best-selling {
  padding: 90px 0 60px;
}

.search-products.section-best-selling .section-title {
  margin: 0 0 1rem;
  align-items: flex-end;
}

.search-products.section-best-selling .section-title h2 {
  margin: 0;
  font-size: 35px;
  font-weight: 700;
}

.search-posts {
  margin: 0 0 60px;
}

.search-posts:last-child {
  margin-bottom: 0;
}

.search-posts .section-title {
  font-size: 35px;
  font-weight: 700;
  margin: 0 0 36px;
  text-align: center;
}

/* Products in search results - use same styles as archive pages and home page */
.search-products .woocommerce ul.products {
  margin-bottom: 0;
}

/* Ensure products in search use the same grid as archive pages */
.search-products ul.products.columns-4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.5rem 3.8%;
  padding: 0;
  margin: 0;
  list-style: none;
}

.search-products ul.products.columns-4:before,
.search-products ul.products.columns-4:after {
  display: none;
}

.search-products ul.products.columns-4 li {
  width: auto !important;
  margin: 0 !important;
}

.search-products ul.products.columns-4 .woocommerce-LoopProduct-link.woocommerce-loop-product__link {
    text-decoration: none;
    text-align: center;
}

.search-products ul.products.columns-4 a.button.product_type_variable.add_to_cart_button {
  display: none !important;
}

.search-products ul.products.columns-4 li.product-span-2-cols {
  grid-column: span 2;
}

.search-products ul.products.columns-4 li.product-span-2-cols .product-item-image-container {
  aspect-ratio: calc(315 * 2 * 1.083 / 375);
}

/* Grid-3 for search results (posts) */
.search-results.grid-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 40px 4%;
  list-style: none;
  padding: 0;
  margin: 0;
}

.search-results.grid-3 article {
  margin: 0;
}

@media (max-width: 782px) {
  .search-products.section-best-selling {
    padding: 30px 0 60px;
  }

  .search-products.section-best-selling .section-title {
    display: block;
    text-align: center;
  }

  .search-products.section-best-selling .section-title h2 {
    text-align: center;
    font-size: 20px;
  }

  .search-posts .section-title {
    font-size: 20px;
    margin: 0 0 24px;
  }

  .search-posts {
    margin: 0 0 40px;
  }

  .search-results.grid-3 {
    grid-template-columns: 1fr;
    gap: 20px 0;
  }
}

@media (max-width: 768px) {
  .search-products ul.products.columns-4 {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* ========================================
   Pagination Styles
   ======================================== */

.pagination-wrapper {
  margin: 60px 0 40px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.pagination {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: center;
}

.pagination-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  height: 44px;
  padding: 0 12px;
  font-size: 16px;
  font-weight: 500;
  color: #333;
  text-decoration: none;
  border: 2px solid #e0e0e0;
  border-radius: 8px;
  background-color: #fff;
  transition: all 0.3s ease;
  cursor: pointer;
  user-select: none;
}

.pagination-link:hover:not(.pagination-disabled):not(.pagination-current) {
  border-color: #333;
  background-color: #f8f8f8;
  color: #000;
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
}

.pagination-link.pagination-current {
  background-color: #333;
  color: #fff;
  border-color: #333;
  font-weight: 600;
  cursor: default;
}

.pagination-link.pagination-disabled {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}

.pagination-link.pagination-prev,
.pagination-link.pagination-next {
  font-weight: 600;
  min-width: 50px;
}

.pagination-arrow {
  font-size: 18px;
  line-height: 1;
}

.pagination-dots {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  height: 44px;
  padding: 0 8px;
  color: #999;
  font-size: 18px;
  font-weight: 600;
  user-select: none;
}

/* Mobile styles */
@media (max-width: 782px) {
  .pagination-wrapper {
    margin: 40px 0 30px;
  }

  .pagination {
    gap: 6px;
  }

  .pagination-link {
    min-width: 40px;
    height: 40px;
    padding: 0 10px;
    font-size: 15px;
    border-radius: 6px;
  }

  .pagination-link.pagination-prev,
  .pagination-link.pagination-next {
    min-width: 44px;
  }

  .pagination-dots {
    min-width: 40px;
    height: 40px;
    font-size: 16px;
  }

  .pagination-arrow {
    font-size: 16px;
  }
}

@media (max-width: 480px) {
  .pagination {
    gap: 4px;
  }

  .pagination-link {
    min-width: 36px;
    height: 36px;
    padding: 0 8px;
    font-size: 14px;
  }

  .pagination-link.pagination-prev,
  .pagination-link.pagination-next {
    min-width: 40px;
  }

  .pagination-dots {
    min-width: 36px;
    height: 36px;
    font-size: 14px;
  }
}

/* RTL support for pagination arrows */
[dir="rtl"] .pagination-prev .pagination-arrow,
body.rtl .pagination-prev .pagination-arrow {
  font-size: 0;
  line-height: 0;
}

[dir="rtl"] .pagination-prev .pagination-arrow::before,
body.rtl .pagination-prev .pagination-arrow::before {
  content: "→";
  font-size: 18px;
  line-height: 1;
  display: inline-block;
}

[dir="rtl"] .pagination-next .pagination-arrow,
body.rtl .pagination-next .pagination-arrow {
  font-size: 0;
  line-height: 0;
}

[dir="rtl"] .pagination-next .pagination-arrow::before,
body.rtl .pagination-next .pagination-arrow::before {
  content: "←";
  font-size: 18px;
  line-height: 1;
  display: inline-block;
}

@media (max-width: 782px) {
  [dir="rtl"] .pagination-prev .pagination-arrow::before,
  body.rtl .pagination-prev .pagination-arrow::before,
  [dir="rtl"] .pagination-next .pagination-arrow::before,
  body.rtl .pagination-next .pagination-arrow::before {
    font-size: 16px;
  }
}

ol {
  counter-reset: item;
}

ol.start-5 {
  counter-reset: item 4; /* 5 = 4 + 1 */
}

ol.start-19 {
  counter-reset: item 18; /* 19 = 18 + 1 */
}

ol.start-26 {
  counter-reset: item 25; /* 26 = 25 + 1 */
}

ol.start-29 {
  counter-reset: item 28; /* 29 = 28 + 1 */
}
ol.start-31 {
  counter-reset: item 30; /* 31 = 30 + 1 */
}
ol.start-34 {
  counter-reset: item 33; /* 34 = 33 + 1 */
}
ol.start-37 {
  counter-reset: item 36; /* 37 = 36 + 1 */
}
ol.start-44 {
  counter-reset: item 43; /* 44 = 43 + 1 */
}

ol li {
  display: block;
}

ol li::before {
  content: counters(item, ".") ". ";
  counter-increment: item;
}