/* Mariola — поверх Bootstrap (Montserrat в fonts.css) */

:root {
  --mariola-white: #ffffff;
  --mariola-black: #000000;
  --mariola-brand: #004445;
  --mariola-accent: #F5D7CC;
  --mariola-surface: #F5F5F5;
  --mariola-muted: #999999;
  --mariola-border: #E0E0E0;

  --mariola-ink: var(--mariola-black);

  /* Vertical rhythm — e-commerce typography */
  --mariola-rhythm-unit: 8px;
  --mariola-text-min: 0.8125rem;
  --mariola-text-2xs: var(--mariola-text-min);
  --mariola-text-xs: var(--mariola-text-min);
  --mariola-text-sm: var(--mariola-text-min);
  --mariola-text-card: var(--mariola-text-min);
  --mariola-text-base: 1rem;
  --mariola-text-lg: 1.125rem;
  --mariola-text-xl: 1.25rem;
  --mariola-text-2xl: 1.5rem;
  --mariola-text-3xl: 2rem;
  --mariola-leading-tight: 1.2;
  --mariola-leading-snug: 1.35;
  --mariola-leading-ui: 1.3;
  --mariola-leading-normal: 1.5;
  --mariola-leading-relaxed: 1.6;
  --mariola-space-1: 4px;
  --mariola-space-2: 8px;
  --mariola-space-3: 12px;
  --mariola-space-4: 16px;
  --mariola-space-6: 24px;
  --mariola-space-8: 32px;
  --mariola-btn-height: 44px;
  --mariola-btn-radius: 3px;
  --mariola-input-font-size: 1rem;

  /* WB-like page chrome */
  --mariola-breadcrumb: #868695;
  --mariola-breadcrumb-size: var(--mariola-text-card);
  --mariola-breadcrumb-leading: 1.23;
  --mariola-title-catalog-size: clamp(1.25rem, 2.5vw, 1.75rem);
  --mariola-title-pdp-size: clamp(1.125rem, 2vw, 1.5rem);
  --mariola-title-leading: 1.33;

  --site-header-bar-padding-y: 1.75rem;
  --site-header-height: 4.5rem;
  --bs-body-font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --bs-body-font-size: var(--mariola-text-base);
  --bs-small-font-size: var(--mariola-text-min);
  --bs-body-line-height: var(--mariola-leading-normal);
  --bs-body-color: var(--mariola-black);
  --bs-primary: var(--mariola-brand);
  --bs-primary-rgb: 0, 68, 69;
  --bs-btn-border-radius: var(--mariola-btn-radius);
  --bs-border-radius: 0;
  --bs-modal-border-radius: var(--mariola-btn-radius);
  --bs-modal-inner-border-radius: var(--mariola-btn-radius);
  --bs-offcanvas-border-radius: var(--mariola-btn-radius);
}

html {
  font-size: 16px;
}

button,
input[type="submit"],
input[type="button"],
input[type="reset"],
.btn,
.button,
a.button,
a.btn,
.hero-mariola__cta,
.site-header__catalog-btn,
.site-header__menu-btn,
.wc-shop-filters-drawer__apply,
.wc-shop-filters-drawer__reset,
.product-card__cart-btn,
.product-card__remove-btn,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  border-radius: var(--mariola-btn-radius);
  text-transform: uppercase;
}

/* Site modals — unified corner radius */
.modal-content,
.offcanvas,
.wc-shop-filters-drawer,
body.mariola-fibosearch .dgwt-wcas-om-bar,
body.mariola-fibosearch .dgwt-wcas-details-wrapp {
  border-radius: var(--mariola-btn-radius);
  overflow: hidden;
}

@media (min-width: 992px) {
  .container,
  .container-sm,
  .container-md,
  .container-lg,
  .container-xl,
  .container-xxl {
    max-width: 1500px;
  }
}

/* Info bar */
.mariola-info-bar-area .widget {
  margin: 0;
}

.mariola-info-bar {
  background: var(--mariola-black);
  color: var(--mariola-white);
  font-size: var(--mariola-text-xs);
  font-weight: 500;
  height: 35px;
  letter-spacing: 0.02em;
  line-height: var(--mariola-leading-tight);
}

.mariola-info-bar__inner {
  align-items: center;
  display: flex;
  height: 35px;
  justify-content: flex-start;
  gap: 1rem;
}

.mariola-info-bar__contacts {
  align-items: center;
  display: flex;
  flex: 1 1 auto;
  gap: 1.5rem;
  justify-content: flex-start;
  min-width: 0;
  width: 100%;
}

.mariola-info-bar__link,
.mariola-info-bar__text {
  color: var(--mariola-white);
  font-size: var(--mariola-text-xs);
  font-weight: 500;
  letter-spacing: 0.02em;
  line-height: var(--mariola-leading-tight);
  text-decoration: none;
  white-space: nowrap;
}

.mariola-info-bar__link:hover,
.mariola-info-bar__link:focus-visible {
  color: var(--mariola-white);
  opacity: 0.8;
}

.mariola-info-bar__social {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: 0.75rem;
  margin-left: auto;
}

.mariola-info-bar__social-link {
  align-items: center;
  display: inline-flex;
  flex: 0 0 auto;
  justify-content: center;
  line-height: 0;
  text-decoration: none;
  transition: transform 0.2s ease, opacity 0.2s ease;
}

.mariola-info-bar__social-icon {
  display: block;
  height: 24px;
  object-fit: contain;
  width: 24px;
}

.mariola-info-bar__social-link:hover,
.mariola-info-bar__social-link:focus-visible {
  opacity: 0.85;
  transform: scale(1.08);
}

@media (max-width: 767.98px) {
  .mariola-info-bar__link--email {
    display: none;
  }

  .mariola-info-bar__contacts {
    gap: 1rem;
    justify-content: flex-start;
    width: 100%;
  }

  .mariola-info-bar__inner {
    justify-content: flex-start;
  }

  .mariola-info-bar__link,
  .mariola-info-bar__text {
    font-size: var(--mariola-text-min);
  }
}

@media (max-width: 479.98px) {
  .mariola-info-bar__contacts {
    gap: 0.75rem;
  }
}

body {
  color: var(--mariola-ink);
  background: var(--mariola-white);
  font-size: var(--mariola-text-base);
  line-height: var(--mariola-leading-normal);
  overflow-x: clip;
}

/* Content zone — readable prose */
.entry-content,
.woocommerce-Tabs-panel--description {
  font-size: var(--mariola-text-base);
  line-height: var(--mariola-leading-relaxed);
}

.entry-content > *:first-child {
  margin-top: 0;
}

.entry-content > *:last-child {
  margin-bottom: 0;
}

.entry-content p {
  margin-bottom: var(--mariola-space-4);
}

.entry-content h1 {
  font-size: var(--mariola-text-3xl);
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.15;
  margin: var(--mariola-space-8) 0 var(--mariola-space-3);
}

.entry-content h2 {
  font-size: var(--mariola-text-2xl);
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: var(--mariola-leading-tight);
  margin: var(--mariola-space-6) 0 var(--mariola-space-3);
}

.entry-content h3 {
  font-size: var(--mariola-text-xl);
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.25;
  margin: var(--mariola-space-4) 0 var(--mariola-space-2);
}

.entry-content h4 {
  font-size: var(--mariola-text-base);
  font-weight: 600;
  line-height: var(--mariola-leading-ui);
  margin: var(--mariola-space-4) 0 var(--mariola-space-2);
}

.entry-content ul,
.entry-content ol {
  margin-bottom: var(--mariola-space-4);
  padding-left: var(--mariola-space-6);
}

.entry-content li + li {
  margin-top: var(--mariola-space-2);
}

.entry-content input,
.entry-content select,
.entry-content textarea,
.woocommerce form .input-text,
.woocommerce form select {
  font-size: var(--mariola-input-font-size);
  line-height: var(--mariola-leading-normal);
}

html {
  overflow-x: clip;
}

/* Icons */
.mariola-icon {
  color: var(--mariola-black);
  display: inline-block;
  flex-shrink: 0;
}

.mariola-icon:not(.mariola-icon--header) {
  height: 1.5rem;
  width: 1.5rem;
}

.mariola-icon svg {
  display: block;
  height: 100%;
  width: 100%;
}

.mariola-icon--header {
  display: block;
  flex-shrink: 0;
  height: var(--site-header-icon-size, 22px);
  max-height: none;
  max-width: none;
  width: auto;
}

.site-header__actions-desktop {
  align-items: center;
  display: flex;
  gap: 1.25rem;
}

.site-header__actions-desktop > * {
  align-items: center;
  display: inline-flex;
  flex-shrink: 0;
  height: var(--site-header-icon-size, 22px);
  justify-content: center;
}

.site-header__bottom-tabs {
  display: none;
}

.site-header__bottom-tabs-inner {
  align-items: start;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  min-height: 3.5rem;
}

.site-header__tab {
  align-items: center;
  background: transparent;
  border: 0;
  color: var(--mariola-black);
  cursor: pointer;
  display: flex;
  flex-direction: column;
  font-family: inherit;
  gap: 0.25rem;
  justify-content: center;
  min-height: 3.5rem;
  padding: 0.35rem 0.25rem;
  position: relative;
  text-align: center;
  text-decoration: none;
  text-transform: none;
}

.site-header__tab:hover,
.site-header__tab:focus {
  color: var(--mariola-brand);
  outline: 0;
}

.site-header__tab-label {
  font-size: var(--mariola-text-2xs);
  font-weight: 500;
  line-height: 1.1;
  text-transform: none;
}

.site-header__bottom-tabs .site-header__tab {
  align-content: start;
  display: grid;
  gap: 0.25rem;
  grid-template-columns: minmax(0, 1fr);
  grid-template-rows: 22px auto;
  justify-items: center;
}

.site-header__bottom-tabs .site-header__tab > svg.mariola-icon {
  align-self: center;
  display: block;
  flex-shrink: 0;
  grid-column: 1;
  grid-row: 1;
  height: 22px;
  justify-self: center;
  width: 22px;
}

.site-header__bottom-tabs .site-header__tab-label {
  grid-column: 1;
  grid-row: 2;
  max-width: 100%;
}

.site-header__bottom-tabs .site-header__tab .site-header__cart-count,
.site-header__bottom-tabs .site-header__tab .site-header__wishlist-count {
  grid-column: 1;
  grid-row: 1;
  justify-self: center;
  right: auto;
  top: 0.5rem;
  transform: translateX(1.35rem);
  z-index: 1;
}

.site-header__bottom-tabs .site-header__tab .site-header__wishlist-count.is-animating {
  animation-name: mariola-header-wishlist-count-pop-tab;
}

@keyframes mariola-header-wishlist-count-pop-tab {
  0%,
  100% {
    transform: translateX(1.35rem) scale(1);
  }

  40% {
    transform: translateX(1.35rem) scale(1.25);
  }
}

.site-header__search .dgwt-wcas-search-wrapp.dgwt-wcas-layout-icon {
  align-items: center;
  display: flex;
  height: var(--site-header-icon-size, 22px);
  max-width: var(--site-header-icon-size, 22px);
}

.site-header__search .dgwt-wcas-search-icon {
  align-items: center;
  color: var(--mariola-black);
  display: inline-flex;
  height: var(--site-header-icon-size, 22px);
  justify-content: center;
  line-height: 0;
  width: var(--site-header-icon-size, 22px);
}

.site-header__search .dgwt-wcas-ico-magnifier-handler,
.site-header__search .dgwt-wcas-ico-magnifier {
  display: block;
  fill: currentColor;
  height: var(--site-header-icon-size, 22px);
  margin-bottom: 0;
  max-width: none;
  width: auto;
}

.site-header__search .dgwt-wcas-search-icon:hover,
.site-header__search .dgwt-wcas-search-icon:focus {
  color: var(--mariola-brand);
}

/* Header */
.site-header {
  border-bottom: 1px solid var(--mariola-border);
  overflow: visible;
  position: sticky;
  top: 0;
  width: 100%;
  z-index: 1060;
}

.site-header > .container {
  overflow: visible;
}

.site-header__bar {
  align-items: center;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
  min-height: 4.5rem;
  overflow: visible;
  padding: var(--site-header-bar-padding-y) 0;
  position: relative;
}

.site-header__left {
  align-items: center;
  display: flex;
  flex: 1 1 0;
  gap: 0.5rem 1.25rem;
  justify-content: flex-start;
  min-width: 0;
  overflow: hidden;
  pointer-events: none;
  z-index: 1;
}

.site-header__left > * {
  pointer-events: auto;
}

.site-header__catalog-btn,
.wc-shop-toolbar__ordering .orderby {
  border-radius: var(--mariola-btn-radius);
  font-size: var(--mariola-text-sm);
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: var(--mariola-leading-tight);
  text-transform: uppercase;
}

.wc-shop-toolbar__ordering .orderby {
  background: transparent;
  border: 1px solid var(--mariola-black);
  color: var(--mariola-black);
}

.site-header__left > a.site-header__catalog-btn {
  align-items: center;
  background: var(--mariola-brand);
  border: 1px solid var(--mariola-brand);
  box-sizing: border-box;
  color: var(--mariola-white);
  display: inline-flex;
  justify-content: center;
  padding: 0.625rem 1rem;
  text-align: center;
  text-decoration: none;
  white-space: normal;
  word-break: break-word;
}

.site-header__left > a.site-header__catalog-btn:hover,
.site-header__left > a.site-header__catalog-btn:focus {
  background: var(--mariola-black);
  border-color: var(--mariola-black);
  color: var(--mariola-white);
  outline: 0;
}

html.mariola-catalog-mega-open .site-header__left > a.site-header__catalog-btn {
  background: var(--mariola-black);
  border-color: var(--mariola-black);
  color: var(--mariola-white);
}

.site-header__catalog-mega {
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 100%;
  transition: visibility 0s linear 0.36s;
  visibility: hidden;
  z-index: 1040;
}

.site-header__catalog-mega.is-open {
  pointer-events: auto;
  transition: visibility 0s linear 0s;
  visibility: visible;
}

.site-header__catalog-mega[hidden] {
  display: none !important;
}

.site-header__catalog-mega-backdrop {
  background: rgba(0, 0, 0, 0.45);
  bottom: 0;
  left: 0;
  opacity: 0;
  position: fixed;
  right: 0;
  top: var(--mariola-catalog-mega-backdrop-top, 100%);
  transition: opacity 0.32s ease;
  z-index: 0;
}

.site-header__catalog-mega.is-open .site-header__catalog-mega-backdrop {
  opacity: 1;
}

.site-header__catalog-mega-panel {
  background: var(--mariola-white, #ffffff);
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.12);
  clip-path: inset(0 0 100% 0);
  opacity: 0;
  padding: 1.875rem 0;
  position: relative;
  transform: translateY(-0.75rem);
  transition:
    clip-path 0.36s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.28s ease,
    transform 0.36s cubic-bezier(0.22, 1, 0.36, 1);
  z-index: 1;
}

.site-header__catalog-mega.is-open .site-header__catalog-mega-panel {
  clip-path: inset(0 0 0 0);
  opacity: 1;
  transform: translateY(0);
}

.site-header__catalog-mega-panel::before {
  content: "";
  height: 0.75rem;
  left: 0;
  position: absolute;
  right: 0;
  top: -0.75rem;
}

@media (prefers-reduced-motion: reduce) {
  .site-header__catalog-mega {
    transition: none;
  }

  .site-header__catalog-mega-backdrop,
  .site-header__catalog-mega-panel {
    transition-duration: 0.01ms;
  }

  .site-header__catalog-mega-panel {
    clip-path: none;
    transform: none;
  }

  .site-header__catalog-mega:not(.is-open) .site-header__catalog-mega-backdrop,
  .site-header__catalog-mega:not(.is-open) .site-header__catalog-mega-panel {
    opacity: 0;
  }
}

.site-header__catalog-mega-grid,
.site-header__catalog-mega .site-header__catalog-mega-grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(var(--mariola-catalog-mega-columns, 5), minmax(0, 1fr));
  margin: 0;
}

.site-header__catalog-mega .widget {
  margin: 0;
}

.site-header__catalog-mega-card {
  align-items: center;
  background: rgba(0, 90, 91, 0.05);
  border: 1px solid transparent;
  border-radius: 10px;
  color: var(--mariola-black, #000000);
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  justify-content: center;
  min-height: 9.375rem;
  padding: 0.75rem 0.5rem;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.site-header__catalog-mega-card:hover,
.site-header__catalog-mega-card:focus-visible {
  background: rgba(0, 90, 91, 0.09);
  border-color: var(--mariola-brand, #004445);
  color: var(--mariola-black, #000000);
  outline: 0;
}

.site-header__catalog-mega-card-media {
  align-items: center;
  aspect-ratio: 1;
  display: flex;
  flex-shrink: 0;
  justify-content: center;
  line-height: 0;
  margin: 0 auto;
  max-width: 150px;
  overflow: hidden;
  width: 100%;
}

.site-header__catalog-mega-card-img,
.site-header__catalog-mega-card-placeholder {
  aspect-ratio: 1;
  border-radius: 15px;
  display: block;
  flex-shrink: 0;
  height: auto;
  margin: 0;
  max-height: 100%;
  max-width: 100%;
  object-fit: cover;
  object-position: center center;
  width: 100%;
}

.site-header__catalog-mega-card-placeholder {
  align-self: stretch;
  background: rgba(0, 68, 69, 0.08);
  height: 100%;
  width: 100%;
}

.site-header__catalog-mega-card-title {
  display: block;
  flex-shrink: 0;
  font-size: var(--mariola-text-sm, 0.875rem);
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1.3;
  text-align: center;
  width: 100%;
}

@media (max-width: 1199.98px) {
  .site-header__catalog-mega-grid,
  .site-header__catalog-mega .site-header__catalog-mega-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (max-width: 991.98px) {
  .site-header__catalog-mega {
    display: none !important;
  }
}

.wc-shop-filters-toggle.site-header__catalog-btn {
  background: transparent;
  border: 1px solid var(--mariola-black);
  box-sizing: border-box;
  color: var(--mariola-black);
  line-height: var(--mariola-leading-tight);
  padding: var(--mariola-space-2) var(--mariola-space-4);
  white-space: nowrap;
}

.wc-shop-filters-toggle.site-header__catalog-btn:hover,
.wc-shop-filters-toggle.site-header__catalog-btn:focus {
  background: var(--mariola-black);
  border-color: var(--mariola-black);
  color: var(--mariola-white);
}

.site-header__menu-btn {
  align-items: center;
  background: transparent;
  border: 1px solid var(--mariola-black);
  display: inline-flex;
  justify-content: center;
  line-height: 0;
  padding: 0.45rem;
}

.site-header__menu-btn-icon {
  align-items: center;
  display: inline-flex;
  justify-content: center;
}

.site-header__menu-btn-icon--close {
  display: none;
}

.site-header__menu-btn .mariola-icon {
  height: 1.25rem;
  width: 1.25rem;
}

.site-header__menu-btn.is-open .site-header__menu-btn-icon--open {
  display: none;
}

.site-header__menu-btn.is-open .site-header__menu-btn-icon--close {
  display: inline-flex;
}

.site-header__logo-wrap {
  display: flex;
  flex: 0 1 10.5rem;
  justify-content: center;
  left: 50%;
  max-width: 10.5rem;
  min-width: 0;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
}

.site-header__logo {
  display: block;
  line-height: 0;
  padding: 0;
  pointer-events: auto;
  text-decoration: none;
  width: 100%;
}

.site-header__logo-img {
  aspect-ratio: 1842.6 / 513.75;
  display: block;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  padding: 0;
  width: 100%;
}

.site-header__actions {
  align-items: center;
  display: flex;
  flex: 1 1 0;
  gap: 1.25rem;
  justify-content: flex-end;
  min-width: 0;
  overflow: visible;
  pointer-events: none;
  z-index: 1;
}

.site-header__actions > * {
  pointer-events: auto;
}

.site-header__inline-nav {
  align-items: center;
  min-width: 0;
}

.site-header__inline-nav-list {
  align-items: center;
  display: flex;
  flex-wrap: nowrap;
  gap: 0.25rem 1.5rem;
}

.site-header__inline-nav.is-hidden-fit {
  display: none !important;
}

.site-header__inline-nav-link {
  color: var(--mariola-black);
  display: inline-block;
  font-size: var(--mariola-text-sm);
  font-weight: 500;
  line-height: var(--mariola-leading-tight);
  padding: 0.75rem 0;
  position: relative;
  text-decoration: none;
  white-space: nowrap;
}

.site-header__inline-nav-link::after {
  background-color: var(--mariola-black);
  bottom: 0.5rem;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  right: 0;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.24s ease-in-out;
}

.site-header__inline-nav-link:hover,
.site-header__inline-nav-link:focus {
  color: var(--mariola-black);
  outline: 0;
}

.site-header__inline-nav-link:hover::after,
.site-header__inline-nav-link:focus::after,
.site-header__inline-nav-link.is-active::after {
  transform: scaleX(1);
}

.site-header__icon-link {
  align-items: center;
  color: var(--mariola-black);
  display: inline-flex;
  height: var(--site-header-icon-size, 22px);
  justify-content: center;
  line-height: 0;
  position: relative;
  text-decoration: none;
}

.site-header__icon-link:hover,
.site-header__icon-link:focus {
  color: var(--mariola-brand);
}

.site-header__account-menu {
  align-items: center;
  display: inline-flex;
  position: relative;
}

.site-header__account-toggle {
  background: transparent;
  border: 0;
  cursor: pointer;
  padding: 0;
  text-decoration: none;
}

@media (min-width: 992px) {
  .site-header__account-menu:hover .site-header__account-panel,
  .site-header__account-menu:focus-within .site-header__account-panel,
  .site-header__account-menu.is-open .site-header__account-panel {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0);
    visibility: visible;
  }
}

.site-header__account-panel {
  background: var(--mariola-white);
  border: 1px solid var(--mariola-border);
  border-radius: var(--mariola-btn-radius);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
  display: flex;
  flex-direction: column;
  gap: 0.125rem;
  min-width: 12.75rem;
  opacity: 0;
  padding: 1.25rem;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: calc(100% + 0.5rem);
  transform: translateY(-0.375rem);
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
  visibility: hidden;
  z-index: 1080;
}

.site-header__account-panel-profile {
  border-bottom: 1px solid var(--mariola-border);
  margin-bottom: 0.125rem;
  padding: 0.625rem 0.75rem;
  text-align: center;
}

.site-header__account-panel-profile-name {
  color: var(--mariola-black);
  font-size: var(--mariola-text-sm);
  font-weight: 600;
  line-height: var(--mariola-leading-tight);
  margin: 0;
  text-align: center;
}

.site-header__account-panel-profile-type {
  color: var(--mariola-muted);
  font-size: var(--mariola-text-xs);
  font-weight: 500;
  line-height: var(--mariola-leading-tight);
  margin: 0.375rem 0 0;
  text-align: center;
}

.site-header__account-panel-link {
  border: 0;
  border-radius: var(--mariola-btn-radius);
  color: var(--mariola-black);
  display: block;
  font-size: var(--mariola-text-sm);
  font-weight: 500;
  line-height: var(--mariola-leading-tight);
  padding: 0.625rem 0.75rem;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.15s ease, color 0.15s ease;
  white-space: nowrap;
}

.site-header__account-panel-link:hover,
.site-header__account-panel-link:focus {
  background: var(--mariola-surface);
  color: var(--mariola-brand);
  outline: 0;
}

.site-header__account-panel-link--logout,
.site-header__account-panel-link--login {
  align-items: center;
  background-color: var(--mariola-brand);
  color: var(--mariola-white);
  display: flex;
  gap: 0.5rem;
  justify-content: center;
  letter-spacing: 0.08em;
  margin-top: 0.25rem;
  padding: 0.625rem 0.75rem;
  text-transform: uppercase;
}

.site-header__account-panel-link--logout:hover,
.site-header__account-panel-link--logout:focus,
.site-header__account-panel-link--login:hover,
.site-header__account-panel-link--login:focus {
  background-color: var(--mariola-black);
  color: var(--mariola-white);
  outline: 0;
}

.site-header__account-panel--guest {
  gap: 0;
  min-width: 18.5rem;
  padding: 1rem 1.125rem;
  white-space: normal;
}

.site-header__account-login-form {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0;
  text-align: left;
  width: 100%;
}

.site-header__account-login-row,
.site-header__account-login-remember,
.site-header__account-login-submit,
.site-header__account-login-lost,
.site-header__account-login-register {
  float: none;
  width: 100%;
}

.site-header__account-login-row {
  margin: 0 0 0.625rem;
  padding: 0;
}

.site-header__account-login-row label {
  color: var(--mariola-black);
  display: block;
  font-size: var(--mariola-text-xs);
  font-weight: 500;
  line-height: var(--mariola-leading-tight);
  margin: 0 0 0.375rem;
}

.site-header__account-login-input {
  background: var(--mariola-white);
  border: 1px solid var(--mariola-border);
  border-radius: var(--mariola-btn-radius);
  box-sizing: border-box;
  color: var(--mariola-black);
  display: block;
  font-size: var(--mariola-text-sm);
  line-height: var(--mariola-leading-normal);
  min-height: 2.5rem;
  padding: 0.5rem 0.75rem;
  width: 100%;
}

.site-header__account-login-input:focus {
  border-color: var(--mariola-brand);
  outline: 0;
}

.site-header__account-login-row.is-error label {
  color: #b42318;
}

.site-header__account-login-row.is-error .site-header__account-login-input {
  border-color: #b42318;
}

.site-header__account-login-row.is-error .site-header__account-login-input:focus {
  border-color: #b42318;
}

.site-header__account-login-error {
  color: #b42318;
  font-size: var(--mariola-text-xs);
  line-height: 1.4;
  margin: 0 0 0.75rem;
  padding: 0;
}

.site-header__account-login-error[hidden] {
  display: none;
}

.site-header__account-login-error-link {
  color: #b42318;
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

.site-header__account-login-error-link:hover,
.site-header__account-login-error-link:focus {
  color: var(--mariola-black);
  outline: 0;
}

.site-header__account-login-remember {
  margin: 0 0 0.75rem;
  padding: 0;
}

.site-header__account-login-remember-label {
  align-items: center;
  color: var(--mariola-black);
  cursor: pointer;
  display: inline-flex;
  font-size: var(--mariola-text-xs);
  font-weight: 400;
  gap: 0.5rem;
  line-height: var(--mariola-leading-normal);
  margin: 0;
}

.site-header__account-login-checkbox {
  accent-color: var(--mariola-brand);
  flex-shrink: 0;
  height: 1rem;
  margin: 0;
  width: 1rem;
}

.site-header__account-login-submit {
  margin: 0 0 0.625rem;
  padding: 0;
}

.site-header__account-login-button {
  background: var(--mariola-brand);
  border: 0;
  border-radius: var(--mariola-btn-radius);
  box-sizing: border-box;
  color: var(--mariola-white);
  cursor: pointer;
  display: block;
  float: none;
  font-family: inherit;
  font-size: var(--mariola-text-sm);
  font-weight: 600;
  letter-spacing: 0.08em;
  line-height: 1.2;
  margin: 0;
  min-height: 2.75rem;
  padding: 0.625rem 0.75rem;
  text-transform: uppercase;
  width: 100%;
}

.site-header__account-login-button:hover,
.site-header__account-login-button:focus {
  background: var(--mariola-black);
  color: var(--mariola-white);
  outline: 0;
}

.site-header__account-login-lost {
  margin: 0 0 0.5rem;
  padding: 0;
  text-align: center;
}

.site-header__account-login-lost a {
  color: var(--mariola-muted);
  font-size: var(--mariola-text-xs);
  font-weight: 400;
  line-height: var(--mariola-leading-tight);
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

.site-header__account-login-lost a:hover,
.site-header__account-login-lost a:focus {
  color: var(--mariola-brand);
  outline: 0;
}

.site-header__account-login-register {
  margin: 0;
  padding: 0;
  text-align: center;
}

.site-header__account-login-register a {
  color: var(--mariola-brand);
  font-size: var(--mariola-text-sm);
  font-weight: 500;
  line-height: var(--mariola-leading-tight);
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

.site-header__account-login-register a:hover,
.site-header__account-login-register a:focus {
  color: var(--mariola-black);
  outline: 0;
}

.site-header__account-logout-icon {
  color: currentColor;
  flex-shrink: 0;
  height: 1.125rem;
  margin: 0;
  padding: 0;
  width: 1.125rem;
}

.site-header__account-logout-label {
  line-height: 1;
}

.site-header__cart-link {
  align-items: center;
}

.site-header__cart-count {
  background: var(--mariola-brand);
  border-radius: 999px;
  color: var(--mariola-white);
  font-size: var(--mariola-text-2xs);
  font-weight: 700;
  line-height: var(--mariola-leading-tight);
  min-width: 1rem;
  padding: 0.15rem 0.35rem;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  transform: translate(35%, -35%);
}

.site-header__wishlist-count {
  background: var(--mariola-brand);
  border-radius: 999px;
  color: var(--mariola-white);
  font-size: var(--mariola-text-2xs);
  font-weight: 700;
  line-height: var(--mariola-leading-tight);
  min-width: 1rem;
  padding: 0.15rem 0.35rem;
  position: absolute;
  right: 0;
  text-align: center;
  top: 0;
  transform: translate(35%, -35%);
}

.site-header__wishlist-count.is-animating {
  animation: mariola-header-wishlist-count-pop 0.45s cubic-bezier(0.34, 1.56, 0.64, 1);
}

@keyframes mariola-header-wishlist-count-pop {
  0%,
  100% {
    transform: translate(35%, -35%) scale(1);
  }

  40% {
    transform: translate(35%, -35%) scale(1.25);
  }
}

.site-header__nav {
  border-top: 1px solid var(--mariola-border);
  padding: 0.75rem 0 1rem;
}

.site-header__nav-list a,
.site-header__nav-link,
.site-header__nav .nav-link {
  color: var(--mariola-black);
  display: block;
  font-size: var(--mariola-text-sm);
  font-weight: 500;
  line-height: var(--mariola-leading-tight);
  padding: var(--mariola-space-2) 0;
  position: relative;
  text-decoration: none;
  text-transform: none;
}

.site-header__nav-link::after,
.site-header__nav .nav-link::after {
  background-color: var(--mariola-black);
  bottom: 0.35rem;
  content: "";
  height: 1px;
  left: 0;
  position: absolute;
  right: 0;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.24s ease-in-out;
}

.site-header__nav-link:hover::after,
.site-header__nav-link:focus::after,
.site-header__nav-link.is-active::after,
.site-header__nav .nav-link:hover::after,
.site-header__nav .nav-link:focus::after,
.site-header__nav .nav-link.is-active::after {
  transform: scaleX(1);
}

.site-header__nav-list--extra {
  border-top: 1px solid var(--mariola-border);
  margin-top: 0.5rem;
  padding-top: 0.5rem;
}

html.mariola-mobile-nav-open,
html.mariola-mobile-nav-open body,
html.mariola-mobile-account-open,
html.mariola-mobile-account-open body {
  overflow: hidden !important;
  overscroll-behavior: none;
  touch-action: none;
}

html.mariola-mobile-nav-open .wc-main,
html.mariola-mobile-nav-open .wc-shop-content,
html.mariola-mobile-nav-open .wc-shop-content ul.products,
html.mariola-mobile-account-open .wc-main,
html.mariola-mobile-account-open .wc-shop-content,
html.mariola-mobile-account-open .wc-shop-content ul.products {
  overscroll-behavior: none;
  pointer-events: none;
  touch-action: none;
}

body.mariola-mobile-nav-open .site-header__nav-overlay,
body.mariola-mobile-account-open .site-header__account-overlay {
  overscroll-behavior: none;
  touch-action: none;
}

body.mariola-mobile-nav-open .site-header__nav--drawer,
body.mariola-mobile-nav-open .site-header__nav-menu,
body.mariola-mobile-account-open .site-header__account-drawer,
body.mariola-mobile-account-open .site-header__account-drawer-menu {
  overscroll-behavior: contain;
  touch-action: pan-y;
}

.mariola-info-bar-area {
  position: relative;
  z-index: 1061;
}

.mariola-info-bar,
.mariola-widget-info-bar {
  position: relative;
  z-index: 1061;
}

.mariola-pin-spacer {
  display: block;
  flex-shrink: 0;
  pointer-events: none;
  visibility: hidden;
}

html.mariola-header-chrome-pinned--info-bar .mariola-info-bar {
  background: var(--mariola-black);
  left: 0;
  position: fixed;
  right: 0;
  top: var(--mariola-pinned-info-bar-top, 0px);
  width: 100%;
  z-index: 1071;
}

html.mariola-header-chrome-pinned .site-header {
  background: var(--mariola-white);
  left: 0;
  position: fixed;
  right: 0;
  top: var(--mariola-pinned-header-top, 0px);
  width: 100%;
  z-index: 1070;
}

.site-header__nav-overlay {
  background: rgba(0, 0, 0, 0.45);
  bottom: 0;
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  right: 0;
  top: var(--site-mobile-nav-top, var(--site-header-height, 4.5rem));
  transition: opacity 0.32s ease, visibility 0s linear 0.32s;
  visibility: hidden;
  z-index: 1015;
}

.site-header__nav-overlay.is-open {
  opacity: 1;
  pointer-events: auto;
  transition: opacity 0.32s ease, visibility 0s linear 0s;
  visibility: visible;
}

@media (max-width: 991.98px) {
  body.mariola-mobile-nav-open .site-header__nav-overlay {
    bottom: var(--site-header-bottom-height, 0px);
    top: var(--site-mobile-nav-top-frozen, var(--site-mobile-nav-top, var(--site-header-height, 4.5rem)));
  }

  .site-header__nav.site-header__nav--drawer {
    background: var(--mariola-white);
    border-top: 0;
    bottom: var(--site-header-bottom-height, 0px);
    box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.08);
    display: flex;
    flex-direction: column;
    height: calc(100dvh - var(--site-mobile-nav-top-frozen, var(--site-mobile-nav-top, var(--site-header-height, 4.5rem))) - var(--site-header-bottom-height, 0px));
    left: 0;
    max-height: none;
    overflow: hidden;
    padding: 0;
    position: fixed;
    right: 0;
    top: var(--site-mobile-nav-top-frozen, var(--site-mobile-nav-top, var(--site-header-height, 4.5rem)));
    transform: translate3d(-100%, 0, 0);
    transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s linear 0.32s;
    visibility: hidden;
    width: 100%;
    z-index: 1020;
    will-change: transform;
  }

  .site-header__nav.site-header__nav--drawer.is-visible {
    transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s linear 0s;
    visibility: visible;
  }

  .site-header__nav.site-header__nav--drawer.is-open {
    background: var(--mariola-white);
    transform: translate3d(0, 0, 0);
  }

  .site-header__nav.site-header__nav--drawer .site-header__nav-body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
    padding: 0;
  }

  .site-header__nav.site-header__nav--drawer .site-header__nav-menu {
    -webkit-overflow-scrolling: touch;
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 0;
    text-align: left;
    width: 100%;
    max-width: 540px;
    margin-left: auto;
    margin-right: auto;
  }

  .site-header__nav.site-header__nav--drawer .site-header__nav-list--extra {
    border-top: 0;
    margin-top: 0;
    padding-top: 0;
  }

  .site-header__nav.site-header__nav--drawer .site-header__nav-link,
  .site-header__nav.site-header__nav--drawer .site-header__nav .nav-link {
    border-bottom: 1px solid var(--mariola-border);
    font-size: var(--mariola-text-base);
    font-weight: 500;
    line-height: var(--mariola-leading-snug);
    padding: 1rem 10px;
    text-transform: none;
  }

  .site-header__nav.site-header__nav--drawer .site-header__nav-link::after,
  .site-header__nav.site-header__nav--drawer .site-header__nav .nav-link::after {
    display: none;
  }

  .site-header__nav.site-header__nav--drawer .site-header__nav-link:hover,
  .site-header__nav.site-header__nav--drawer .site-header__nav-link:focus,
  .site-header__nav.site-header__nav--drawer .site-header__nav .nav-link:hover,
  .site-header__nav.site-header__nav--drawer .site-header__nav .nav-link:focus {
    color: var(--mariola-brand);
  }

  .site-header__nav-contacts {
    border-top: 1px solid var(--mariola-border);
    flex: 0 0 auto;
    padding: 1.25rem 10px calc(1.25rem + env(safe-area-inset-bottom, 0px));
    text-align: left;
    width: 100%;
    max-width: 540px;
    margin-left: auto;
    margin-right: auto;
  }

  .site-header__nav-contacts-title {
    color: var(--mariola-muted);
    font-size: var(--mariola-text-xs);
    font-weight: 500;
    letter-spacing: 0.04em;
    margin: 0 0 0.75rem;
    text-transform: uppercase;
  }

  .site-header__nav-social {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
  }

  .site-header__nav-social .site-footer__social-svg {
    height: 1.5rem;
    width: 1.5rem;
  }

  .site-header__nav-social-link {
    display: inline-flex;
    line-height: 0;
  }

  .site-header__nav-marketplaces {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 1.25rem;
  }

  .site-header__nav-marketplaces-link {
    display: inline-flex;
    line-height: 0;
  }

  .site-header__nav-marketplaces-icon {
    display: block;
    height: 1.5rem;
    width: 1.5rem;
  }

  .site-header__nav-social-icon {
    display: block;
    height: 1.5rem;
    width: 1.5rem;
  }

  .site-header__nav-contact-block {
    margin-bottom: 0.75rem;
  }

  .site-header__nav-contact-phone {
    color: var(--mariola-black);
    display: inline-block;
    font-size: var(--mariola-text-lg);
    font-weight: 600;
    line-height: var(--mariola-leading-tight);
    text-decoration: none;
  }

  .site-header__nav-contact-phone:hover,
  .site-header__nav-contact-phone:focus {
    color: var(--mariola-brand);
  }

  .site-header__nav-contact-hours {
    color: var(--mariola-muted);
    font-size: var(--mariola-text-xs);
    line-height: var(--mariola-leading-normal);
    margin: 0.35rem 0 0;
  }

  .site-header__nav-contact-email {
    color: var(--mariola-black);
    display: inline-block;
    font-size: var(--mariola-text-sm);
    font-weight: 500;
    text-decoration: none;
  }

  .site-header__nav-contact-email:hover,
  .site-header__nav-contact-email:focus {
    color: var(--mariola-brand);
  }

  .site-header__menu-btn,
  .site-header__account-menu-btn {
    border: 0;
  }

  .site-header__menu-btn.is-open {
    background: var(--mariola-black);
    border: 0;
    color: var(--mariola-white);
    position: relative;
    z-index: 2;
  }

  .site-header__menu-btn.is-open .mariola-icon {
    color: var(--mariola-white);
  }

  body.mariola-mobile-nav-open:not(.wc-shop-filters-open) .site-header {
    z-index: 1070;
  }

  body.mariola-mobile-nav-open:not(.wc-shop-filters-open) .mariola-info-bar {
    z-index: 1071;
  }

  body.mariola-mobile-nav-open .wc-shop-toolbar {
    z-index: 1000;
  }

  body.mariola-mobile-nav-open .site-header__nav-overlay.is-open {
    z-index: 1060;
  }

  body.mariola-mobile-nav-open .site-header__nav.site-header__nav--drawer.is-visible,
  body.mariola-mobile-nav-open .site-header__nav.site-header__nav--drawer.is-open {
    z-index: 1065;
  }

  body.mariola-mobile-nav-open .site-header__nav-overlay {
    background: rgba(0, 0, 0, 0.25);
  }

  .site-header__account-menu-btn .mariola-icon {
    height: 1.25rem;
    width: 1.25rem;
  }

  .site-header__account-menu-btn.is-open {
    background: var(--mariola-black);
    border: 0;
    color: var(--mariola-white);
    position: relative;
    z-index: 2;
  }

  .site-header__account-menu-btn.is-open .mariola-icon {
    color: var(--mariola-white);
  }

  body.mariola-mobile-account-open:not(.wc-shop-filters-open) .site-header {
    z-index: 1070;
  }

  body.mariola-mobile-account-open:not(.wc-shop-filters-open) .mariola-info-bar {
    z-index: 1071;
  }

  body.mariola-mobile-account-open .wc-shop-toolbar {
    z-index: 1000;
  }

  body.mariola-mobile-account-open .site-header__account-overlay.is-open {
    z-index: 1060;
  }

  body.mariola-mobile-account-open .site-header__account-drawer.is-visible,
  body.mariola-mobile-account-open .site-header__account-drawer.is-open {
    z-index: 1065;
  }

  body.mariola-mobile-account-open .site-header__account-overlay {
    background: rgba(0, 0, 0, 0.25);
  }

  .site-header__account-drawer {
    background: var(--mariola-white);
    border-top: 0;
    bottom: var(--site-header-bottom-height, 0px);
    box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.08);
    display: flex;
    flex-direction: column;
    height: calc(100dvh - var(--site-mobile-nav-top-frozen, var(--site-mobile-nav-top, var(--site-header-height, 4.5rem))) - var(--site-header-bottom-height, 0px));
    left: 0;
    max-height: none;
    overflow: hidden;
    padding: 0;
    position: fixed;
    right: 0;
    top: var(--site-mobile-nav-top-frozen, var(--site-mobile-nav-top, var(--site-header-height, 4.5rem)));
    transform: translate3d(100%, 0, 0);
    transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s linear 0.32s;
    visibility: hidden;
    width: 100%;
    z-index: 1020;
    will-change: transform;
  }

  .site-header__account-drawer.is-visible {
    transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s linear 0s;
    visibility: visible;
  }

  .site-header__account-drawer.is-open {
    transform: translate3d(0, 0, 0);
  }

  .site-header__account-drawer-body {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 0;
    overflow: hidden;
    padding: 0;
  }

  .site-header__account-drawer-menu {
    -webkit-overflow-scrolling: touch;
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    box-sizing: border-box;
    padding: 0 0 calc(1.25rem + env(safe-area-inset-bottom, 0px));
    text-align: center;
    width: 100%;
    max-width: 540px;
    margin-left: auto;
    margin-right: auto;
  }

  .site-header__account-drawer-profile {
    border-bottom: 1px solid var(--mariola-border);
    margin-bottom: 0.25rem;
    padding: 0.5rem 0 1rem;
    text-align: center;
  }

  .site-header__account-drawer-profile-name {
    color: var(--mariola-black);
    font-size: var(--mariola-text-base);
    font-weight: 600;
    line-height: var(--mariola-leading-tight);
    margin: 0;
    text-align: center;
  }

  .site-header__account-drawer-profile-type {
    color: var(--mariola-muted);
    font-size: var(--mariola-text-sm);
    font-weight: 500;
    line-height: var(--mariola-leading-tight);
    margin: 0.5rem 0 0;
    text-align: center;
  }

  .site-header__account-drawer-link {
    border-bottom: 1px solid var(--mariola-border);
    color: var(--mariola-black);
    display: block;
    font-size: var(--mariola-text-base);
    font-weight: 500;
    line-height: var(--mariola-leading-snug);
    padding: 1rem 10px;
    text-align: center;
    text-decoration: none;
  }

  .site-header__account-drawer-link:hover,
  .site-header__account-drawer-link:focus {
    color: var(--mariola-brand);
    outline: 0;
  }

  .site-header__account-drawer-link--logout {
    align-items: center;
    background-color: #fef3f2;
    border: 1px solid #fecdca;
    border-bottom: 1px solid #fecdca;
    color: #b42318;
    display: flex;
    gap: 0.5rem;
    justify-content: center;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0.75rem;
    max-width: 18rem;
    padding: 0.875rem 0.75rem;
    text-transform: uppercase;
    width: 100%;
  }

  .site-header__account-drawer-link--logout:hover,
  .site-header__account-drawer-link--logout:focus {
    background-color: #fef3f2;
    border-color: #fecdca;
    color: #b42318;
    outline: 0;
  }

  body.mariola-mobile-account-open .site-header__account-overlay {
    bottom: var(--site-header-bottom-height, 0px);
    top: var(--site-mobile-nav-top-frozen, var(--site-mobile-nav-top, var(--site-header-height, 4.5rem)));
  }
}

@media (min-width: 992px) {
  .site-header__bar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
  }

  .site-header__logo-wrap {
    flex: none;
    left: auto;
    max-width: 10.5rem;
    position: static;
    top: auto;
    transform: none;
    width: auto;
  }

  .site-header__left {
    justify-self: start;
  }

  .site-header__actions {
    justify-self: end;
  }
}

@media (max-width: 1199.98px) {
  .site-header__inline-nav-list {
    gap: 0.25rem 1rem;
  }

  .site-header__inline-nav-link {
    font-size: var(--mariola-text-min);
    padding: 0.65rem 0;
  }
}

@media (max-width: 991.98px) {
  body {
    padding-bottom: calc(var(--site-header-bottom-height, 3.5rem) + env(safe-area-inset-bottom, 0px));
  }

  .site-header__bottom-tabs {
    background: var(--mariola-white);
    border-top: 1px solid var(--mariola-border);
    bottom: 0;
    display: block;
    left: 0;
    padding-bottom: env(safe-area-inset-bottom, 0px);
    position: fixed;
    right: 0;
    z-index: 1030;
  }

  .site-header__bar {
    display: flex;
    min-height: 3.75rem;
    padding: 0.75rem 0;
  }

  .site-header__logo-wrap {
    flex: 0 1 6.75rem;
    left: 50%;
    max-width: 6.75rem;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
  }

  .site-header__left,
  .site-header__actions {
    flex: 0 0 auto;
  }

  .site-header__left {
    justify-content: flex-start;
  }

  .site-header__actions {
    justify-content: flex-end;
    margin-left: auto;
  }

  .site-header__actions-desktop {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }
}

@media (max-width: 575.98px) {
  .site-header__bar {
    gap: 0.375rem;
    min-height: 3.5rem;
  }

  .site-header__logo-wrap {
    flex-basis: 6.75rem;
    max-width: 6.75rem;
  }

  .wc-shop-filters-toggle.site-header__catalog-btn,
  .wc-shop-toolbar__ordering .orderby {
    font-size: var(--mariola-text-min);
    padding: 0.45rem 0.65rem;
  }

  .wc-shop-toolbar__ordering .orderby {
    padding-right: 2rem;
  }

  .site-header__actions-desktop {
    gap: 0.75rem;
  }

  .site-header__tab-label {
    font-size: 0.625rem;
  }
}

@media (max-width: 380px) {
  .site-header__catalog-btn,
  .wc-shop-filters-toggle.site-header__catalog-btn,
  .wc-shop-toolbar__ordering .orderby {
    letter-spacing: 0;
    padding: 0.4rem 0.5rem;
  }

  .wc-shop-toolbar__ordering .orderby {
    padding-right: 1.75rem;
  }
}

/* Footer */
.site-footer {
  border-top: 1px solid var(--mariola-border);
  margin-top: 3rem;
  padding: 3rem 0 2rem;
}

.site-footer__grid {
  display: grid;
  gap: 2rem 1.5rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 2.5rem;
}

.site-footer__heading {
  color: var(--mariola-black);
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.3;
  margin: 0 0 1rem;
}

.site-footer__menu {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.site-footer__menu-link {
  color: var(--mariola-black);
  display: inline-block;
  font-size: var(--mariola-text-sm);
  font-weight: 400;
  line-height: var(--mariola-leading-tight);
  text-decoration: none;
  text-transform: none;
  transition: color 0.2s ease;
}

.site-footer__menu-link:hover,
.site-footer__menu-link:focus {
  color: var(--mariola-brand);
  text-decoration: underline;
  text-underline-offset: 0.2em;
}

.site-footer__bottom {
  align-items: center;
  border-top: 1px solid var(--mariola-border);
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding-top: 1.5rem;
}

.site-footer__copy {
  color: var(--mariola-muted);
  font-size: var(--mariola-text-sm);
  line-height: var(--mariola-leading-ui);
  margin: 0;
  text-align: center;
}

.site-footer__social {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: flex-start;
}

.site-footer__social-link {
  display: inline-flex;
  line-height: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
}

.site-footer__social-link:hover,
.site-footer__social-link:focus {
  opacity: 0.85;
  transform: scale(0.96);
}

.site-footer__social-svg {
  border-radius: 5px;
  display: block;
  height: 2.5rem;
  width: 2.5rem;
}

@media (min-width: 768px) {
  .site-footer__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .site-footer__bottom {
    flex-direction: row;
    justify-content: space-between;
  }

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

/* Hero / storefront banner */
.hero-mariola {
  margin-bottom: 0;
  overflow: hidden;
  position: relative;
}

.hero-mariola--storefront {
  color: var(--mariola-white);
}

.hero-mariola__backdrop {
  background-color: var(--mariola-brand);
  inset: 0;
  position: absolute;
  z-index: 0;
}

.hero-mariola__bg {
  background-color: var(--mariola-brand);
  background-position: center;
  background-size: cover;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

.hero-mariola__bg-img {
  display: block;
  height: auto;
  max-width: 100%;
  object-fit: contain;
  object-position: center center;
  width: 100%;
}

.hero-mariola__bg--desktop {
  display: none;
}

.hero-mariola__bg--mobile {
  display: block;
}

.hero-mariola--overlay-brand .hero-mariola__backdrop::after,
.hero-mariola--overlay-dark .hero-mariola__backdrop::after {
  background: linear-gradient(90deg, rgba(0, 68, 69, 0.92) 0%, rgba(0, 68, 69, 0.55) 55%, rgba(0, 0, 0, 0.15) 100%);
  content: "";
  inset: 0;
  position: absolute;
}

.hero-mariola--overlay-dark .hero-mariola__backdrop::after {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.72) 0%, rgba(0, 0, 0, 0.35) 60%, rgba(0, 0, 0, 0.1) 100%);
}

.hero-mariola__container {
  position: relative;
  z-index: 1;
}

.hero-mariola__inner {
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: 36rem;
  min-height: 22rem;
  padding: 3rem 0;
}

.hero-mariola--storefront .hero-mariola__inner:not(:has(.hero-mariola__cta)) {
  min-height: 0;
  padding: 0;
}

.hero-mariola__eyebrow {
  font-size: var(--mariola-text-sm);
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: var(--mariola-leading-ui);
  margin: 0 0 var(--mariola-space-2);
}

.hero-mariola__title {
  font-size: clamp(1.75rem, 4vw, 2.5rem);
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.15;
  margin: 0 0 var(--mariola-space-4);
}

.hero-mariola__cta {
  align-self: flex-start;
  background: var(--mariola-accent);
  border: 0;
  border-radius: var(--mariola-btn-radius);
  color: var(--mariola-black);
  font-size: var(--mariola-text-sm);
  font-weight: 600;
  letter-spacing: 0.06em;
  line-height: var(--mariola-leading-tight);
  min-height: var(--mariola-btn-height);
  padding: 0.85rem 1.75rem;
}

.hero-mariola__cta:hover,
.hero-mariola__cta:focus {
  background: var(--mariola-white);
  color: var(--mariola-black);
}

@media (min-width: 992px) {
  .hero-mariola__bg--desktop {
    display: block;
  }

  .hero-mariola__bg--mobile {
    display: none;
  }

  .hero-mariola__inner {
    min-height: 28rem;
    padding: 4rem 0;
  }

  .hero-mariola--storefront .hero-mariola__inner:not(:has(.hero-mariola__cta)) {
    min-height: 0;
    padding: 0;
  }
}

@media (max-width: 991.98px) {
  .hero-mariola--storefront .hero-mariola__backdrop {
    inset: auto;
    position: relative;
  }

  .hero-mariola--storefront .hero-mariola__bg--mobile {
    height: auto;
    left: auto;
    position: relative;
    top: auto;
    width: 100%;
  }

  .hero-mariola--storefront .hero-mariola__container {
    inset: 0;
    pointer-events: none;
    position: absolute;
  }

  .hero-mariola--storefront .hero-mariola__inner {
    height: 100%;
    justify-content: flex-end;
    min-height: 0;
    padding: 1.25rem 0 3.5rem;
  }

  .hero-mariola--storefront .hero-mariola__cta {
    pointer-events: auto;
  }

  .hero-mariola--storefront .hero-mariola__inner:not(:has(.hero-mariola__cta)) {
    min-height: 0;
    padding: 0;
  }
}

.home-products__title {
  font-size: var(--mariola-text-xl);
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: var(--mariola-leading-tight);
}

/* Home new arrivals carousel */
.home-new-arrivals-area .widget {
  margin: 0;
}

.home-new-arrivals {
  padding: 2.5rem 0;
}

.home-new-arrivals__heading {
  margin-bottom: 1.5rem;
}

.home-products-carousel {
  position: relative;
}

.home-products-carousel__viewport {
  overflow: hidden;
  padding-bottom: 0.25rem;
  width: 100%;
}

.home-products-carousel:has(.product-card__buy.is-sizes-visible) .home-products-carousel__viewport {
  overflow: visible;
}

.home-products-carousel__track {
  display: flex;
  flex-wrap: nowrap;
  gap: 1.5rem;
  grid-template-columns: none;
  list-style: none;
  margin: 0;
  padding: 0;
  width: max-content;
  will-change: transform;
}

.woocommerce ul.products.home-products-carousel__track {
  display: flex;
}

.home-products-carousel__track::before,
.home-products-carousel__track::after {
  content: none;
  display: none;
}

.home-products-carousel__track > li.product {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  float: none;
  height: auto;
  margin: 0;
  max-width: none;
  width: clamp(10.5rem, 44vw, 16.5rem);
}

@media (min-width: 576px) {
  .home-products-carousel__track > li.product {
    width: clamp(11rem, 30vw, 16.5rem);
  }
}

@media (min-width: 992px) {
  .home-products-carousel__track > li.product {
    width: clamp(12rem, 20vw, 17.5rem);
  }
}

.home-products-carousel__controls {
  display: flex;
  gap: 0.75rem;
  justify-content: flex-end;
  margin-top: 1.25rem;
}

.home-products-carousel.is-static .home-products-carousel__controls {
  display: none;
}

.home-products-carousel__nav {
  align-items: center;
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(0, 0, 0, 0.12);
  color: #000;
  cursor: pointer;
  display: inline-flex;
  font-size: 1.5rem;
  height: 2.5rem;
  justify-content: center;
  line-height: 1;
  padding: 0;
  width: 2.5rem;
}

.home-products-carousel__nav:hover,
.home-products-carousel__nav:focus-visible {
  border-color: var(--mariola-brand);
  color: var(--mariola-brand);
}

.home-products-carousel__nav:disabled {
  cursor: default;
  opacity: 0.35;
}

/* Home categories */
.home-categories-area .widget {
  margin: 0;
}

.home-categories {
  padding: 2.5rem 3rem;
}

@media (max-width: 991.98px) {
  .home-categories {
    padding: 0;
  }
}

.home-categories__heading {
  font-size: var(--mariola-text-xl);
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: var(--mariola-leading-tight);
  margin: 0 0 var(--mariola-space-6);
  text-align: center;
}

.home-categories__grid {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 1.5rem 2rem;
  justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0;
}

.home-categories__item {
  flex: 0 0 auto;
  position: relative;
  width: clamp(6.5rem, 18vw, 9.5rem);
  z-index: 0;
}

.home-categories__item:hover,
.home-categories__item:focus-within {
  z-index: 2;
}

.home-categories__link {
  align-items: center;
  color: inherit;
  display: flex;
  flex-direction: column;
  text-align: center;
  text-decoration: none;
  transform: scale(1);
  transform-origin: center center;
  transition: transform 0.4s cubic-bezier(0.22, 1, 0.36, 1);
  width: 100%;
  will-change: transform;
}

.home-categories__item:hover .home-categories__link,
.home-categories__item:focus-within .home-categories__link {
  transform: scale(1.2);
}

.home-categories__link:hover .home-categories__name,
.home-categories__link:focus-visible .home-categories__name {
  color: var(--mariola-brand);
}

.home-categories__media {
  aspect-ratio: 1 / 1;
  background: var(--mariola-surface);
  display: block;
  overflow: hidden;
  transition: box-shadow 0.4s ease;
  width: 100%;
}

.home-categories__item:hover .home-categories__media,
.home-categories__item:focus-within .home-categories__media {
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.12);
}

@media (prefers-reduced-motion: reduce) {
  .home-categories__link,
  .home-categories__media {
    transition: none;
  }

  .home-categories__item:hover .home-categories__link,
  .home-categories__item:focus-within .home-categories__link {
    transform: none;
  }
}

.home-categories__media--placeholder {
  align-items: center;
  border: 1px solid var(--mariola-border);
  display: flex;
  justify-content: center;
}

.home-categories__placeholder-flower {
  max-height: 42%;
  max-width: 42%;
  width: 42%;
}

.mariola-placeholder-wrap {
  align-items: center;
  aspect-ratio: 1 / 1;
  background: var(--mariola-surface);
  display: flex;
  justify-content: center;
  overflow: hidden;
  width: 100%;
}

.mariola-placeholder-wrap .mariola-placeholder-flower {
  max-height: 42%;
  max-width: 42%;
  width: 42%;
}

.mariola-placeholder-flower {
  display: block;
  height: auto;
  object-fit: contain;
  opacity: 0.55;
}

img[src*="mariola_flower.svg"] {
  object-fit: contain;
}

.woocommerce ul.products li.product .mariola-placeholder-flower,
.product-card__media .mariola-placeholder-flower,
.product-card__media img[src*="mariola_flower.svg"],
.woocommerce ul.products li.product img[src*="mariola_flower.svg"],
.woocommerce-product-gallery__image .mariola-placeholder-flower,
.woocommerce-product-gallery__image img[src*="mariola_flower.svg"] {
  aspect-ratio: 1 / 1;
  box-sizing: border-box;
  margin: 0 auto;
  max-height: none;
  max-width: none;
  opacity: 0.55;
  padding: 22%;
  width: 100%;
}

.product-card__gallery .mariola-placeholder-flower,
.product-card__gallery img[src*="mariola_flower.svg"],
.product-card__media .mariola-placeholder-flower,
.product-card__media img[src*="mariola_flower.svg"],
.woocommerce ul.products li.product .mariola-placeholder-flower,
.woocommerce ul.products li.product img[src*="mariola_flower.svg"] {
  aspect-ratio: auto;
  height: 100%;
  object-fit: contain;
}

.woocommerce .mariola-placeholder-wrap--cart {
  max-width: 4.5rem;
}

.woocommerce .mariola-placeholder-wrap--category {
  margin-bottom: 0.75rem;
}

.home-categories__img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.home-categories__name {
  font-size: var(--mariola-text-card);
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: var(--mariola-leading-ui);
  margin-top: var(--mariola-space-3);
}

/* Home showcase categories */
.home-showcase-categories {
  padding: 0 0 2.5rem;
}

.home-showcase-categories__grid {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

.home-showcase-categories__link {
  color: inherit;
  display: block;
  position: relative;
  text-decoration: none;
}

.home-showcase-categories__media {
  aspect-ratio: 3 / 4;
  background: var(--mariola-surface);
  display: block;
  isolation: isolate;
  overflow: hidden;
  position: relative;
  transition: box-shadow 0.35s ease;
  width: 100%;
}

.home-showcase-categories__media::after {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 45%, rgba(0, 0, 0, 0.55) 100%);
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  transition: background 0.35s ease;
  z-index: 1;
}

.home-showcase-categories__img {
  display: block;
  height: 100%;
  object-fit: cover;
  transition: transform 0.35s ease;
  width: 100%;
}

.home-showcase-categories__img--placeholder {
  max-height: 42%;
  max-width: 42%;
  object-fit: contain;
}

.home-showcase-categories__link:hover .home-showcase-categories__media,
.home-showcase-categories__link:focus-visible .home-showcase-categories__media {
  box-shadow: 0 0 0 2px var(--mariola-brand);
}

.home-showcase-categories__link:hover .home-showcase-categories__media::after,
.home-showcase-categories__link:focus-visible .home-showcase-categories__media::after {
  background: linear-gradient(180deg, rgba(0, 68, 69, 0.08) 0%, rgba(0, 68, 69, 0.88) 100%);
}

.home-showcase-categories__link:hover .home-showcase-categories__img,
.home-showcase-categories__link:focus-visible .home-showcase-categories__img {
  transform: scale(1.03);
}

.home-showcase-categories__title {
  bottom: 0;
  color: var(--mariola-white);
  font-size: var(--mariola-text-lg);
  font-weight: 600;
  left: 0;
  letter-spacing: 0.04em;
  line-height: var(--mariola-leading-tight);
  padding: 1rem 0.75rem;
  position: absolute;
  right: 0;
  text-align: center;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.35);
  text-transform: uppercase;
  transition: color 0.35s ease, text-shadow 0.35s ease;
  z-index: 2;
}

.home-showcase-categories__link:hover .home-showcase-categories__title,
.home-showcase-categories__link:focus-visible .home-showcase-categories__title {
  color: var(--mariola-white);
  text-shadow: 0 2px 12px rgba(0, 68, 69, 0.55);
}

/* Home wholesale CTA */
.home-wholesale-cta {
  background: var(--mariola-brand);
  color: var(--mariola-white);
  margin-bottom: 2.5rem;
  padding: 2.5rem 0;
}

.home-wholesale-cta__inner {
  display: grid;
  gap: 1.5rem;
}

.home-wholesale-cta__title {
  color: inherit;
  font-size: clamp(1.375rem, 2.6vw, 1.75rem);
  font-weight: 300;
  letter-spacing: 0.06em;
  line-height: 1.35;
  margin: 0 0 0.75rem;
}

.home-wholesale-cta__title-line {
  display: block;
}

.home-wholesale-cta__title-line--accent {
  font-weight: 400;
  letter-spacing: 0.08em;
  margin-top: 0.25rem;
}

.home-wholesale-cta__text {
  font-size: var(--mariola-text-base);
  line-height: var(--mariola-leading-normal);
  margin: 0;
  max-width: 42rem;
}

.home-wholesale-cta__link {
  color: inherit;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 0.2em;
}

.home-wholesale-cta__link:hover,
.home-wholesale-cta__link:focus-visible {
  color: var(--mariola-accent);
  outline: 0;
}

.home-wholesale-cta__notice {
  background: rgba(255, 255, 255, 0.12);
  border-radius: var(--mariola-btn-radius);
  font-size: var(--mariola-text-sm);
  font-weight: 500;
  margin: 0;
  padding: 0.75rem 1rem;
}

.home-wholesale-cta__notice.is-success {
  background: rgba(255, 255, 255, 0.18);
}

.home-wholesale-cta__notice.is-error {
  background: rgba(0, 0, 0, 0.18);
}

.home-wholesale-cta__form {
  margin: 0;
  max-width: 42rem;
}

.home-wholesale-cta__form-row {
  display: grid;
  gap: 0.75rem;
}

.home-wholesale-cta__fields {
  display: grid;
  gap: 0.75rem;
  grid-template-columns: minmax(0, 1fr);
  margin: 0;
}

.home-wholesale-cta__field {
  margin: 0;
}

.home-wholesale-cta__input {
  background: var(--mariola-white);
  border: 1px solid transparent;
  border-radius: var(--mariola-btn-radius);
  box-sizing: border-box;
  color: var(--mariola-black);
  font-size: var(--mariola-text-sm);
  line-height: var(--mariola-leading-normal);
  min-height: var(--mariola-btn-height);
  padding: 0.625rem 1rem;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  width: 100%;
}

.home-wholesale-cta__input::placeholder {
  color: var(--mariola-muted);
}

.home-wholesale-cta__input:focus {
  border-color: var(--mariola-accent);
  box-shadow: 0 0 0 1px var(--mariola-accent);
  outline: 0;
}

.home-wholesale-cta__error {
  color: var(--mariola-accent);
  font-size: var(--mariola-text-sm);
  font-weight: 500;
  margin: 0.75rem 0 0;
}

.home-wholesale-cta__actions {
  margin: 0;
}

.home-wholesale-cta__submit.button {
  background: var(--mariola-white);
  border: 1px solid var(--mariola-white);
  border-radius: var(--mariola-btn-radius);
  color: var(--mariola-brand);
  font-size: var(--mariola-text-sm);
  font-weight: 600;
  letter-spacing: 0.06em;
  line-height: var(--mariola-leading-tight);
  min-height: var(--mariola-btn-height);
  padding: 0.75rem 1.25rem;
  text-transform: uppercase;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
  width: 100%;
}

.home-wholesale-cta__submit.button:hover,
.home-wholesale-cta__submit.button:focus {
  background: var(--mariola-accent);
  border-color: var(--mariola-accent);
  color: var(--mariola-black);
  outline: 0;
}

.home-wholesale-cta__submit.button:disabled,
.home-wholesale-cta__submit.button.is-loading {
  cursor: wait;
  opacity: 0.75;
}

@media (min-width: 768px) {
  .home-wholesale-cta {
    margin-bottom: 3rem;
    padding: 3rem 0;
  }

  .home-wholesale-cta__form-row {
    align-items: stretch;
    gap: 0.75rem;
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .home-wholesale-cta__actions {
    align-self: stretch;
    display: flex;
  }

  .home-wholesale-cta__submit.button {
    align-self: stretch;
    height: 100%;
    white-space: nowrap;
    width: auto;
  }
}

/* Home about teaser */
.home-about-teaser {
  padding: 0 0 3rem;
}

.home-about-teaser__grid {
  align-items: start;
  display: grid;
  gap: 2rem;
  grid-template-columns: minmax(0, 1fr);
}

.home-about-teaser__media {
  margin: 0;
}

.home-about-teaser__image {
  display: block;
  height: auto;
  width: 100%;
}

.home-about-teaser__title {
  font-size: var(--mariola-text-2xl);
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: var(--mariola-leading-tight);
  margin: 0 0 1.25rem;
  text-transform: uppercase;
}

.home-about-teaser__copy p {
  margin-bottom: 1rem;
}

.home-about-teaser__copy p:last-child {
  margin-bottom: 0;
}

.home-about-teaser__more {
  margin-top: 1.5rem;
}

.home-about-teaser__more-link {
  color: var(--mariola-black);
  font-size: var(--mariola-text-sm);
  font-weight: 600;
  letter-spacing: 0.04em;
  text-decoration: underline;
  text-transform: uppercase;
  text-underline-offset: 0.2em;
}

.home-about-teaser__more-link:hover,
.home-about-teaser__more-link:focus-visible {
  color: var(--mariola-brand);
}

@media (min-width: 768px) {
  .home-showcase-categories__grid {
    gap: 1rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .home-showcase-categories__title {
    font-size: var(--mariola-text-xl);
    padding: 1.25rem 1rem;
  }
}

@media (min-width: 992px) {
  .home-about-teaser__grid {
    gap: 3rem;
    grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.05fr);
  }
}

/* Product cards */
.product-card {
  display: flex;
  flex-direction: column;
  list-style: none;
}

.product-card__media {
  background: transparent;
  border: 1px solid transparent;
  border-radius: var(--mariola-btn-radius);
  flex-shrink: 0;
  overflow: hidden;
  position: relative;
  transition: border-color 0.15s ease;
}

.product-card.product:hover .product-card__media {
  border: 1px solid #004445;
}

.product-card__media img,
.product-card__gallery-img {
  display: block;
  width: 100%;
}

.product-card__cart-anim {
  --mariola-card-cart-action: 2.6s;
  --mariola-card-cart-total: 4.6s;
  align-items: center;
  animation: mariola-card-cart-overlay var(--mariola-card-cart-total) ease-out forwards;
  background-color: rgba(0, 81, 82, 0.3);
  display: flex;
  inset: 0;
  justify-content: center;
  pointer-events: none;
  position: absolute;
  z-index: 6;
}

.product-card__cart-anim-svg {
  height: 130px;
  overflow: visible;
  width: 130px;
}

.product-card__cart-anim-svg path,
.product-card__cart-anim-svg circle {
  fill: none;
  stroke: #fff;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 3.5;
}

.product-card__cart-anim .product-card__cart-anim-basket {
  animation: mariola-card-cart-basket var(--mariola-card-cart-total) cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
  transform-origin: 60px 80px;
}

.product-card__cart-anim .product-card__cart-anim-ring {
  animation: mariola-card-cart-ring var(--mariola-card-cart-action) cubic-bezier(0.55, 0.055, 0.675, 0.19) forwards;
  transform-origin: 60px 24px;
}

.product-card__cart-anim .product-card__cart-anim-check {
  animation: mariola-card-cart-check var(--mariola-card-cart-total) ease-out forwards;
  stroke: #5eead4 !important;
  stroke-dasharray: 40;
  stroke-dashoffset: 40;
  stroke-width: 4.5 !important;
  transform-origin: 60px 74px;
}

.product-card__cart-anim .product-card__cart-anim-wave {
  animation: mariola-card-cart-wave var(--mariola-card-cart-action) ease-out forwards;
  stroke: rgba(94, 234, 212, 0.8) !important;
  stroke-width: 2 !important;
  transform-origin: 60px 74px;
}

@keyframes mariola-card-cart-overlay {
  0%,
  56.5%,
  96% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@keyframes mariola-card-cart-basket {
  0%,
  14.1% {
    opacity: 0;
    transform: scale(0.85);
  }

  19.8% {
    opacity: 1;
    transform: scale(1);
  }

  29.4% {
    transform: scale(1.1, 0.86) translateY(4px);
  }

  35% {
    transform: scale(0.96, 1.04) translateY(-2px);
  }

  39.6%,
  96% {
    opacity: 1;
    transform: scale(1, 1) translateY(0);
  }

  100% {
    opacity: 0;
  }
}

@keyframes mariola-card-cart-ring {
  0% {
    opacity: 0;
    transform: translateY(-20px) rotate(0deg) scale(0.6);
  }

  18% {
    opacity: 1;
    transform: translateY(0) rotate(45deg) scale(1);
  }

  50% {
    opacity: 1;
    transform: translateY(50px) rotate(220deg) scale(0.9);
  }

  56% {
    opacity: 0;
    transform: translateY(52px) rotate(240deg) scale(0.3);
  }

  100% {
    opacity: 0;
    transform: translateY(52px) scale(0);
  }
}

@keyframes mariola-card-cart-check {
  0%,
  29.4% {
    opacity: 0;
    stroke-dashoffset: 40;
    transform: scale(0.7);
  }

  31.7% {
    opacity: 1;
  }

  38.4%,
  96% {
    opacity: 1;
    stroke-dashoffset: 0;
    transform: scale(1);
  }

  100% {
    opacity: 0;
    stroke-dashoffset: 0;
  }
}

@keyframes mariola-card-cart-wave {
  0%,
  50% {
    opacity: 0;
    transform: scale(0.2);
  }

  54% {
    opacity: 0.8;
  }

  68% {
    opacity: 0;
    transform: scale(1.4);
  }

  100% {
    opacity: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .product-card__cart-anim {
    animation: none;
    display: none;
  }
}

.product-card__gallery {
  aspect-ratio: 3 / 4;
  background: var(--mariola-surface);
  overflow: hidden;
  position: relative;
  touch-action: pan-y;
  width: 100%;
}

.product-card__gallery-track {
  height: 100%;
  position: relative;
  width: 100%;
}

.product-card__gallery-slide {
  inset: 0;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  transition: opacity 0.45s ease;
}

.product-card__gallery-slide.is-active {
  opacity: 1;
  pointer-events: auto;
}

.product-card__gallery.is-fading-to-photo .product-card__gallery-slide--video {
  transition-duration: 0.55s;
}

.product-card__gallery-slide img,
.product-card__gallery-img {
  height: 100%;
  object-fit: contain;
  width: 100%;
}

.product-card__gallery-video {
  background: var(--mariola-surface);
  display: block;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
  width: 100%;
}

.product-card__gallery-zones {
  display: none;
  inset: 0;
  position: absolute;
  z-index: 1;
}

@media (hover: hover) and (pointer: fine) {
  .product-card__gallery-zones {
    display: flex;
  }
}

.product-card__gallery-zone {
  flex: 1 1 0;
  height: 100%;
}

.product-card__gallery-dots {
  bottom: 0.75rem;
  display: flex;
  gap: 0.375rem;
  justify-content: center;
  left: 0;
  padding: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  z-index: 2;
}

.product-card__gallery-dot {
  background: rgba(255, 255, 255, 0.55);
  border: 1px solid rgba(0, 0, 0, 0.18);
  border-radius: 50%;
  box-sizing: border-box;
  flex: 0 0 auto;
  height: 0.5rem;
  transition: background-color 0.2s ease, border-color 0.2s ease;
  width: 0.5rem;
}

.product-card__gallery-dot.is-active {
  background: var(--mariola-brand);
  border-color: var(--mariola-brand);
}

.product-card__wishlist {
  background: transparent;
  border: 0;
  color: var(--mariola-accent);
  cursor: pointer;
  line-height: 0;
  padding: 0.5rem;
  pointer-events: auto;
  position: absolute;
  right: 0.25rem;
  top: 0.25rem;
  z-index: 3;
}

.product-card__wishlist-icons {
  display: block;
  height: 1.5rem;
  pointer-events: none;
  position: relative;
  width: 1.5rem;
}

.product-card__wishlist-icon {
  display: block;
  height: 1.5rem;
  pointer-events: none;
  transition: color 0.28s ease, opacity 0.28s ease, transform 0.28s ease;
  width: 1.5rem;
}

.product-card__wishlist-icon--outline {
  color: var(--mariola-accent);
}

.product-card__wishlist-icon--filled {
  color: var(--mariola-accent);
  inset: 0;
  opacity: 0;
  position: absolute;
}

.product-card__wishlist:hover .product-card__wishlist-icon--outline,
.product-card__wishlist:focus .product-card__wishlist-icon--outline {
  color: var(--mariola-accent);
}

.product-card__wishlist.is-active .product-card__wishlist-icon--outline {
  opacity: 0;
}

.product-card__wishlist.is-active .product-card__wishlist-icon--filled {
  opacity: 1;
}

.product-card__wishlist.is-animating .product-card__wishlist-icons {
  animation: mariola-wishlist-heart-pop 0.45s cubic-bezier(0.34, 1.56, 0.64, 1);
}

@keyframes mariola-wishlist-heart-pop {
  0% {
    transform: scale(1);
  }

  40% {
    transform: scale(1.3);
  }

  100% {
    transform: scale(1);
  }
}

@media (prefers-reduced-motion: reduce) {
  .product-card__wishlist-icon {
    transition: color 0.15s ease, opacity 0.15s ease;
  }

  .product-card__wishlist.is-animating .product-card__wishlist-icons,
  .site-header__wishlist-count.is-animating {
    animation: none;
  }
}

.product-card__wishlist:disabled {
  cursor: wait;
  opacity: 0.65;
}

.mariola-wishlist-empty {
  padding: 2rem 0 3rem;
  text-align: center;
}

.mariola-wishlist-empty__text {
  color: var(--mariola-muted);
  font-size: var(--mariola-text-base);
  line-height: var(--mariola-leading-normal);
  margin: 0 0 var(--mariola-space-4);
}

.mariola-wishlist-empty__link {
  color: var(--mariola-brand);
  font-size: var(--mariola-text-sm);
  font-weight: 600;
  line-height: var(--mariola-leading-tight);
  text-decoration: none;
  text-transform: uppercase;
}

.mariola-wishlist-empty__link:hover,
.mariola-wishlist-empty__link:focus {
  color: var(--mariola-black);
}

.wp-block-woocommerce-cart:not(.is-loading) .wp-block-woocommerce-filled-cart-block:not([hidden]) ~ .wp-block-woocommerce-empty-cart-block {
  display: none !important;
}

.wp-block-woocommerce-empty-cart-block[hidden] {
  display: none !important;
}

.mariola-cart-empty {
  padding: 1.5rem 0 3rem;
  text-align: center;
}

.mariola-cart-empty .wc-block-cart__empty-cart__title {
  font-size: clamp(1.25rem, 2.5vw, 1.75rem);
  font-weight: 500;
  line-height: var(--mariola-leading-snug);
  margin: 0 0 1.5rem;
}

.mariola-cart-empty .wc-block-cart__empty-cart__title::before {
  content: none;
  display: none;
}

.mariola-cart-empty__image {
  margin: 0 auto 1.5rem;
  max-width: 24.3125rem;
}

.mariola-cart-empty__image img {
  display: block;
  height: auto;
  margin: 0 auto;
  width: 100%;
}

.mariola-cart-empty__actions {
  justify-content: center;
  margin: 0;
}

.mariola-cart-empty__button .wp-block-button__link {
  align-items: center;
  background: var(--mariola-brand);
  border: 0;
  border-radius: var(--mariola-btn-radius);
  box-sizing: border-box;
  color: var(--mariola-white);
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 500;
  justify-content: center;
  line-height: 1.2;
  min-height: var(--mariola-btn-height);
  padding: 0.625rem 1.5rem;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.mariola-cart-empty__button .wp-block-button__link:hover,
.mariola-cart-empty__button .wp-block-button__link:focus {
  background: var(--mariola-black);
  color: var(--mariola-white);
}

.mariola-cart-empty__new-title {
  font-size: clamp(1.125rem, 2.2vw, 1.5rem);
  font-weight: 500;
  line-height: var(--mariola-leading-snug);
  margin: 2.5rem 0 1.25rem;
  text-align: center;
}

.mariola-cart-empty__products.wc-shop-content {
  margin: 0 auto;
  max-width: 100%;
  text-align: left;
}

.mariola-cart-empty .wc-main {
  margin-top: 0;
}

.mariola-cart-empty .wc-block-product-new,
.mariola-cart-empty .wp-block-woocommerce-product-new {
  display: none !important;
}

.mariola-cart-empty .wc-block-grid__products {
  display: none !important;
}

.wc-main .mariola-cart-empty__products.wc-shop-content ul.products {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

@media (min-width: 768px) {
  .wc-main .mariola-cart-empty__products.wc-shop-content ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 992px) {
  .wc-main .mariola-cart-empty__products.wc-shop-content ul.products {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

.wp-block-woocommerce-cart .wc-block-components-product-name {
  color: var(--mariola-black, #000000);
}

.wp-block-woocommerce-cart .wc-block-components-product-name:hover,
.wp-block-woocommerce-cart .wc-block-components-product-name:focus {
  color: var(--mariola-black, #000000);
}

/* Артикул и скидка перед ценой: metadata выше prices. */
.wp-block-woocommerce-cart .wc-block-cart-item__wrap {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}

.wp-block-woocommerce-cart .wc-block-cart-item__wrap > .wc-block-components-product-name,
.wp-block-woocommerce-cart .wc-block-cart-item__wrap > a.wc-block-components-product-name {
  order: 1;
}

.wp-block-woocommerce-cart .wc-block-cart-item__wrap > .wc-block-components-product-metadata {
  order: 2;
  width: 100%;
}

.wp-block-woocommerce-cart .wc-block-cart-item__wrap > .wc-block-cart-item__prices {
  order: 3;
}

.wp-block-woocommerce-cart .wc-block-cart-item__wrap > .wc-block-cart-item__quantity {
  order: 4;
}

.wp-block-woocommerce-cart .wc-block-components-product-details.mariola-cart-item-sku,
.wp-block-woocommerce-cart .mariola-cart-item-sku {
  color: rgba(0, 0, 0, 0.55);
  display: block;
  font-size: 0.8125rem;
  line-height: 1.35;
}

.wp-block-woocommerce-cart .wc-block-components-product-details.mariola-cart-item-discount,
.wp-block-woocommerce-cart .mariola-cart-item-discount {
  color: var(--mariola-brand, #004445);
  display: block;
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.35;
}

/* WC Blocks вставляет « / » между item_data; у блочных строк он лишний. */
.wp-block-woocommerce-cart .mariola-cart-item-sku > span[aria-hidden="true"],
.wp-block-woocommerce-cart .mariola-cart-item-discount > span[aria-hidden="true"],
.wp-block-woocommerce-cart .mariola-cart-item-mto > span[aria-hidden="true"],
.wp-block-woocommerce-cart .mariola-cart-item-stock-shortfall > span[aria-hidden="true"] {
  display: none;
}

.wp-block-woocommerce-cart .wc-block-components-product-details.mariola-cart-item-mto,
.wp-block-woocommerce-cart .mariola-cart-item-mto,
.woocommerce-checkout .mariola-cart-item-mto,
.woocommerce-order-pay .mariola-cart-item-mto {
  color: var(--mariola-brand, #004445);
  display: block;
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.4;
  margin-top: 0.25rem;
}

.wp-block-woocommerce-cart .mariola-cart-item-mto .wc-block-components-product-details__name {
  display: none;
}

.wp-block-woocommerce-cart .wc-block-components-product-details.mariola-cart-item-stock-shortfall,
.wp-block-woocommerce-cart .mariola-cart-item-stock-shortfall {
  color: #b8860b;
  display: block;
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: 1.4;
  margin-top: 0.25rem;
}

.wp-block-woocommerce-cart .mariola-cart-item-stock-shortfall .wc-block-components-product-details__name {
  display: none;
}

.wp-block-woocommerce-cart .mariola-stock-prepay-warning {
  margin: 0 0 1rem;
}

/* Classic checkout: строка «Наличие» под размером, без лейбла. */
.woocommerce-checkout .mariola-checkout-review-order__item .variation dt:has(+ dd .mariola-cart-item-mto),
.woocommerce-order-pay .mariola-checkout-review-order__item .variation dt:has(+ dd .mariola-cart-item-mto) {
  display: none;
}

.woocommerce-checkout .mariola-checkout-review-order__item .variation dd:has(.mariola-cart-item-mto),
.woocommerce-order-pay .mariola-checkout-review-order__item .variation dd:has(.mariola-cart-item-mto) {
  display: block;
  margin-top: 0.25rem;
}

.mariola-stock-prepay-warning {
  background: color-mix(in srgb, var(--mariola-brand, #004445) 8%, #fff);
  border: 1px solid var(--mariola-brand, #004445);
  border-radius: var(--mariola-btn-radius, 4px);
  color: var(--mariola-brand, #004445);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.45;
  margin: 0 0 1rem;
  padding: 0.75rem 1rem;
}

.wp-block-woocommerce-cart .mariola-cart-item-discount .wc-block-components-product-details__name {
  display: none;
}

/* Мобила: строки скидки по купону в каждом товаре (+~28px × N) сдвигают весь блок итогов. */
@media (max-width: 991.98px) {
  .wp-block-woocommerce-cart .wc-block-components-product-details.mariola-cart-item-discount,
  .wp-block-woocommerce-cart .mariola-cart-item-discount {
    display: none;
  }
}

/* Превью товара в корзине: 2× от дефолтных 80px WC Blocks (десктоп). */
.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__header .wc-block-cart-items__header-image,
.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image {
  width: 160px;
}

.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image a {
  display: block;
  height: 160px;
  overflow: hidden;
  width: 160px;
}

.wp-block-woocommerce-cart table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image img {
  display: block;
  height: 100%;
  max-width: none;
  object-fit: cover;
  width: 100%;
}

/* Компактная сетка Blocks (is-small/mobile/medium): колонка = размер превью, текст не наезжает. */
.wp-block-woocommerce-cart .is-small table.wc-block-cart-items .wc-block-cart-items__row,
.wp-block-woocommerce-cart .is-mobile table.wc-block-cart-items .wc-block-cart-items__row,
.wp-block-woocommerce-cart .is-medium table.wc-block-cart-items .wc-block-cart-items__row {
  grid-template-columns: 112px minmax(0, 1fr);
}

.wp-block-woocommerce-cart .is-small table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image,
.wp-block-woocommerce-cart .is-mobile table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image,
.wp-block-woocommerce-cart .is-medium table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image {
  box-sizing: border-box;
  padding-right: 12px;
  width: 112px;
}

.wp-block-woocommerce-cart .is-small table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image a,
.wp-block-woocommerce-cart .is-mobile table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image a,
.wp-block-woocommerce-cart .is-medium table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image a {
  height: 100px;
  width: 100px;
}

.wp-block-woocommerce-cart .is-small table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__product,
.wp-block-woocommerce-cart .is-mobile table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__product,
.wp-block-woocommerce-cart .is-medium table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__product,
.wp-block-woocommerce-cart .is-small .wc-block-cart-item__wrap,
.wp-block-woocommerce-cart .is-mobile .wc-block-cart-item__wrap,
.wp-block-woocommerce-cart .is-medium .wc-block-cart-item__wrap {
  max-width: 100%;
  min-width: 0;
}

.wp-block-woocommerce-cart .is-small .wc-block-components-product-name,
.wp-block-woocommerce-cart .is-mobile .wc-block-components-product-name,
.wp-block-woocommerce-cart .is-medium .wc-block-components-product-name {
  overflow-wrap: anywhere;
  word-break: break-word;
}

@media (max-width: 575.98px) {
  .wp-block-woocommerce-cart .is-small table.wc-block-cart-items .wc-block-cart-items__row,
  .wp-block-woocommerce-cart .is-mobile table.wc-block-cart-items .wc-block-cart-items__row,
  .wp-block-woocommerce-cart .is-medium table.wc-block-cart-items .wc-block-cart-items__row {
    grid-template-columns: 96px minmax(0, 1fr);
  }

  .wp-block-woocommerce-cart .is-small table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image,
  .wp-block-woocommerce-cart .is-mobile table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image,
  .wp-block-woocommerce-cart .is-medium table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image {
    padding-right: 10px;
    width: 96px;
  }

  .wp-block-woocommerce-cart .is-small table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image a,
  .wp-block-woocommerce-cart .is-mobile table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image a,
  .wp-block-woocommerce-cart .is-medium table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image a {
    height: 86px;
    width: 86px;
  }
}

.wp-block-woocommerce-cart .wc-block-cart__submit-button.wc-block-components-button.contained,
.wp-block-woocommerce-cart a.wc-block-cart__submit-button.contained {
  background-color: var(--mariola-brand);
  border-color: var(--mariola-brand);
  color: var(--mariola-white);
}

.wp-block-woocommerce-cart .wc-block-cart__submit-button.wc-block-components-button.contained:hover,
.wp-block-woocommerce-cart .wc-block-cart__submit-button.wc-block-components-button.contained:focus,
.wp-block-woocommerce-cart a.wc-block-cart__submit-button.contained:hover,
.wp-block-woocommerce-cart a.wc-block-cart__submit-button.contained:focus {
  background-color: var(--mariola-black);
  border-color: var(--mariola-black);
  color: var(--mariola-white);
}

/* Sticky CTA над нижними табами (не под ними). */
@media (max-width: 991.98px) {
  .wp-block-woocommerce-cart .wc-block-cart__submit-container,
  .wp-block-woocommerce-cart .wc-block-cart__submit-container--sticky {
    background: var(--mariola-white, #fff);
    border-top: 1px solid var(--mariola-border, rgba(0, 0, 0, 0.08));
    bottom: calc(var(--site-header-bottom-height, 3.5rem) + env(safe-area-inset-bottom, 0px));
    box-shadow: 0 -4px 16px rgba(0, 0, 0, 0.06);
    box-sizing: border-box;
    left: 0;
    margin: 0;
    padding: 0.75rem 1rem;
    position: fixed;
    right: 0;
    width: 100%;
    z-index: 1025;
  }

  .wp-block-woocommerce-cart .wc-block-cart__submit-container .wc-block-cart__submit-button,
  .wp-block-woocommerce-cart .wc-block-cart__submit-container a.wc-block-cart__submit-button {
    margin: 0;
    width: 100%;
  }

  body.woocommerce-cart {
    --mariola-mobile-sticky-cta-height: 5rem;
    padding-bottom: calc(
      var(--site-header-bottom-height, 3.5rem) + var(--mariola-mobile-sticky-cta-height, 5rem) +
        env(safe-area-inset-bottom, 0px)
    );
  }
}

/* Пока купон применяется/снимается: без smooth-scroll и без overflow-anchor. */
html.mariola-coupon-scroll-lock,
html.mariola-coupon-scroll-lock body {
  scroll-behavior: auto !important;
}

html.mariola-coupon-scroll-lock .wp-block-woocommerce-cart,
html.mariola-coupon-scroll-lock .mariola-checkout-coupon {
  overflow-anchor: none;
}

/* Кнопка Panel скрыта: форму держим раскрытой через cart-coupon-panel.js (клик по кнопке). */
@media (max-width: 991.98px) {
  .wp-block-woocommerce-cart .wc-block-components-totals-coupon {
    min-height: 83px;
  }
}

.wp-block-woocommerce-cart .wc-block-components-totals-coupon .wc-block-components-panel__button {
  display: none !important;
}

.wp-block-woocommerce-cart .wc-block-components-totals-coupon .wc-block-components-panel__content {
  display: block !important;
  margin: 0;
  overflow: visible;
  padding-bottom: 0;
  visibility: visible;
}

.wp-block-woocommerce-cart .wc-block-components-totals-coupon__form {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0;
  width: 100%;
}

.wp-block-woocommerce-cart .wc-block-components-totals-coupon__input {
  flex: 3 1 120px;
  margin: 0;
}

.wp-block-woocommerce-cart .wc-block-components-totals-coupon__input.mariola-has-applied-coupon,
.wp-block-woocommerce-cart .wc-block-components-text-input.mariola-has-applied-coupon {
  position: relative;
}

.wp-block-woocommerce-cart .wc-block-components-text-input.mariola-has-applied-coupon[data-mariola-coupon]::after {
  color: var(--mariola-black, #111);
  content: attr(data-mariola-coupon);
  font: inherit;
  inset: 0;
  line-height: 50px;
  overflow: hidden;
  padding: 0 16px;
  pointer-events: none;
  position: absolute;
  text-overflow: ellipsis;
  white-space: nowrap;
  z-index: 2;
}

.wp-block-woocommerce-cart .mariola-cart-coupon-applied-code {
  box-sizing: border-box;
  color: var(--mariola-black, #111);
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  position: absolute;
  text-overflow: ellipsis;
  white-space: nowrap;
  z-index: 3;
}

.wp-block-woocommerce-cart .mariola-has-applied-coupon input[type="text"] {
  color: transparent !important;
  caret-color: transparent;
}

.wp-block-woocommerce-cart .wc-block-components-totals-coupon__button {
  flex: 1 1 auto;
  margin: 0;
  white-space: nowrap;
}

/* Snackbar WC Blocks / flash-notices → mariola-pdp-toast. */
.wc-block-components-notice-snackbar-list {
  display: none !important;
}

body:not(.woocommerce-order-received) .woocommerce-notices-wrapper > .woocommerce-message,
body:not(.woocommerce-order-received) .woocommerce-notices-wrapper > .woocommerce-info,
body:not(.woocommerce-order-received) .woocommerce-notices-wrapper > .woocommerce-error,
body:not(.woocommerce-order-received) .woocommerce-NoticeGroup-checkout {
  display: none !important;
}

body.mariola-toast-notices .wc-block-components-notice-snackbar[data-mariola-toast-hijacked='1'],
body.mariola-toast-notices .woocommerce-NoticeGroup[data-mariola-toast-hijacked='1'] {
  display: none !important;
}

body.woocommerce-cart .woocommerce-notices-wrapper,
body.woocommerce-checkout .woocommerce-notices-wrapper,
body.woocommerce-account .woocommerce-notices-wrapper {
  min-height: 0;
}

body:not(.woocommerce-order-received) .woocommerce-notices-wrapper:empty {
  display: none;
}

.wc-main .wc-shop-content .product-card__body ,
.home-new-arrivals .product-card__body{
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 0;
  min-height: 0;
  overflow: hidden;
  padding-top: var(--mariola-space-2);
  position: relative;
}

.wc-main .wc-shop-content .product-card__summary ,
.home-new-arrivals .product-card__summary{
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: var(--mariola-space-1);
  min-height: calc(
    var(--mariola-text-card) * var(--mariola-leading-snug) * 2
    + var(--mariola-space-1)
    + var(--mariola-text-lg) * var(--mariola-leading-tight)
  );
  transition: opacity 0.18s ease;
}

.wc-main .wc-shop-content .product-card .woocommerce-loop-product__title ,
.home-new-arrivals .product-card .woocommerce-loop-product__title{
  font-size: var(--mariola-text-card);
  font-weight: 400;
  letter-spacing: normal;
  line-height: var(--mariola-leading-snug);
  margin: 0;
  min-height: calc(var(--mariola-text-card) * var(--mariola-leading-snug) * 2);
  text-transform: none;
}

.wc-main .wc-shop-content .product-card .woocommerce-loop-product__title a ,
.home-new-arrivals .product-card .woocommerce-loop-product__title a{
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  color: var(--mariola-black);
  display: -webkit-box;
  overflow: hidden;
  text-decoration: none;
  transition: color 0.2s ease;
}

.wc-main .wc-shop-content .product-card:hover .woocommerce-loop-product__title a,
.wc-main .wc-shop-content .product-card .woocommerce-loop-product__title a:hover,
.wc-main .wc-shop-content .product-card .woocommerce-loop-product__title a:focus ,
.home-new-arrivals .product-card:hover .woocommerce-loop-product__title a,
.home-new-arrivals .product-card .woocommerce-loop-product__title a:hover,
.home-new-arrivals .product-card .woocommerce-loop-product__title a:focus{
  color: var(--mariola-brand);
}

.wc-main .wc-shop-content .product-card .price,
.wc-main .wc-shop-content .woocommerce ul.products li.product .price ,
.home-new-arrivals .product-card .price,
.home-new-arrivals .woocommerce ul.products li.product .price{
  color: var(--mariola-black);
  font-size: var(--mariola-text-lg);
  font-weight: 700;
  line-height: var(--mariola-leading-tight);
  margin: 0;
}

.wc-main .wc-shop-content .product-card .price del ,
.home-new-arrivals .product-card .price del{
  color: var(--mariola-muted);
  font-size: var(--mariola-text-card);
  font-weight: 400;
}

.wc-main .wc-shop-content .product-card .price ins ,
.home-new-arrivals .product-card .price ins{
  text-decoration: none;
}

.wc-main .wc-shop-content .product-card .mariola-wholesale-label,
.wc-main .wc-shop-content .product-card .mariola-wholesale-stock-loop ,
.home-new-arrivals .product-card .mariola-wholesale-label,
.home-new-arrivals .product-card .mariola-wholesale-stock-loop{
  font-size: var(--mariola-text-xs);
  margin-top: var(--mariola-space-1);
}

.wc-main .wc-shop-content .product-card .product-card__cart-btn,
.wc-main .wc-shop-content .product-card a.product-card__cart-btn,
.wc-main .wc-shop-content .product-card a.button.product-card__cart-btn ,
.home-new-arrivals .product-card .product-card__cart-btn,
.home-new-arrivals .product-card a.product-card__cart-btn,
.home-new-arrivals .product-card a.button.product-card__cart-btn{
  align-items: center;
  background: var(--mariola-brand);
  border: 0;
  border-radius: var(--mariola-btn-radius);
  box-sizing: border-box;
  color: var(--mariola-white);
  display: inline-flex;
  flex-shrink: 0;
  font-size: var(--mariola-text-sm);
  font-weight: 600;
  height: var(--mariola-btn-height);
  justify-content: center;
  letter-spacing: 0.01em;
  line-height: 1;
  margin-top: var(--mariola-space-3);
  min-height: var(--mariola-btn-height);
  padding: 0 0.75rem;
  text-align: center;
  text-decoration: none;
  transition: opacity 0.2s ease, background-color 0.15s ease;
  width: 100%;
}

.wc-main .wc-shop-content .product-card .product-card__buy ,
.home-new-arrivals .product-card .product-card__buy{
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  margin-top: auto;
  width: 100%;
  z-index: 2;
}

.wc-main .wc-shop-content .product-card .product-card__buy .product-card__cart-btn,
.wc-main .wc-shop-content .product-card .product-card__buy a.product-card__cart-btn,
.wc-main .wc-shop-content .product-card .product-card__buy a.button.product-card__cart-btn ,
.home-new-arrivals .product-card .product-card__buy .product-card__cart-btn,
.home-new-arrivals .product-card .product-card__buy a.product-card__cart-btn,
.home-new-arrivals .product-card .product-card__buy a.button.product-card__cart-btn{
  margin-top: 0;
  position: relative;
  z-index: 4;
}

.wc-main .wc-shop-content .product-card .product-card__sizes ,
.home-new-arrivals .product-card .product-card__sizes{
  align-items: center;
  background: var(--mariola-white, #fff);
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  justify-content: flex-start;
  left: 0;
  opacity: 0;
  overflow: visible;
  padding: 0 0 0.5rem;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: calc(var(--mariola-space-2) + var(--mariola-space-3, 12px));
  transform: translateY(0.6rem);
  transition:
    opacity 0.22s ease,
    transform 0.22s ease,
    visibility 0.22s ease;
  visibility: hidden;
  width: 100%;
  z-index: 3;
}

/* Оверлей поверх карточки: сетка и товары ниже не смещаются. */
.wc-main .wc-shop-content .product-card:has(.product-card__buy.is-sizes-visible) ,
.home-new-arrivals .product-card:has(.product-card__buy.is-sizes-visible){
	overflow: visible;
	position: relative;
	z-index: 40;
}

.wc-main .wc-shop-content .product-card:has(.product-card__buy.is-sizes-visible) .product-card__media ,
.home-new-arrivals .product-card:has(.product-card__buy.is-sizes-visible) .product-card__media{
	position: relative;
	z-index: 8;
}

.wc-main .wc-shop-content .product-card:has(.product-card__buy.is-sizes-visible) .product-card__wishlist ,
.home-new-arrivals .product-card:has(.product-card__buy.is-sizes-visible) .product-card__wishlist{
	pointer-events: auto;
	z-index: 9;
}

.wc-main .wc-shop-content .product-card:has(.product-card__buy.is-sizes-visible) .product-card__body ,
.home-new-arrivals .product-card:has(.product-card__buy.is-sizes-visible) .product-card__body{
	overflow: visible;
	position: relative;
	z-index: 6;
}

/* Слот под кнопку, пока buy в absolute — высота карточки в сетке не меняется. */
.wc-main .wc-shop-content .product-card:has(.product-card__buy.is-sizes-visible) .product-card__body::after ,
.home-new-arrivals .product-card:has(.product-card__buy.is-sizes-visible) .product-card__body::after{
  content: '';
  display: block;
  flex-shrink: 0;
  height: var(--mariola-btn-height, 44px);
  margin-top: auto;
  pointer-events: none;
  visibility: hidden;
  width: 100%;
}

.wc-main .wc-shop-content .product-card:has(.product-card__buy.is-sizes-visible) .product-card__summary ,
.home-new-arrivals .product-card:has(.product-card__buy.is-sizes-visible) .product-card__summary{
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.18s ease;
}

.wc-main .wc-shop-content .product-card .product-card__buy.is-sizes-visible ,
.home-new-arrivals .product-card .product-card__buy.is-sizes-visible{
  background: var(--mariola-white, #fff);
  bottom: auto;
  height: auto;
  left: 0;
  margin-top: 0;
  min-height: 100%;
  padding-top: calc(var(--mariola-space-2) + var(--mariola-space-3, 12px));
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  z-index: 6;
}

.wc-main .wc-shop-content .product-card .product-card__buy.is-sizes-visible .product-card__sizes ,
.home-new-arrivals .product-card .product-card__buy.is-sizes-visible .product-card__sizes{
  flex: 1 1 auto;
  justify-content: center;
  left: auto;
  min-height: calc(
    var(--mariola-text-card) * var(--mariola-leading-snug) * 2
    + var(--mariola-space-1)
    + var(--mariola-text-lg) * var(--mariola-leading-tight)
  );
  opacity: 1;
  padding-bottom: 0.5rem;
  pointer-events: auto;
  position: relative;
  right: auto;
  top: auto;
  transform: translateY(0);
  visibility: visible;
}

.wc-main .wc-shop-content .product-card .product-card__buy.is-sizes-visible .product-card__cart-btn,
.wc-main .wc-shop-content .product-card .product-card__buy.is-sizes-visible a.product-card__cart-btn,
.wc-main .wc-shop-content .product-card .product-card__buy.is-sizes-visible a.button.product-card__cart-btn ,
.home-new-arrivals .product-card .product-card__buy.is-sizes-visible .product-card__cart-btn,
.home-new-arrivals .product-card .product-card__buy.is-sizes-visible a.product-card__cart-btn,
.home-new-arrivals .product-card .product-card__buy.is-sizes-visible a.button.product-card__cart-btn{
  margin-top: auto;
  position: relative;
  z-index: 7;
}

.wc-main .wc-shop-content .product-card .product-card__sizes-hint ,
.home-new-arrivals .product-card .product-card__sizes-hint{
  color: var(--mariola-brand);
  font-size: var(--mariola-text-xs, 0.75rem);
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1.3;
  margin: 0;
  text-align: center;
  text-transform: uppercase;
}

.wc-main .wc-shop-content .product-card .product-card__size-buttons ,
.home-new-arrivals .product-card .product-card__size-buttons{
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem;
  justify-content: center;
  overflow: visible;
  width: 100%;
}

.wc-main .wc-shop-content .product-card .product-card__size-meta ,
.home-new-arrivals .product-card .product-card__size-meta{
  color: var(--mariola-black, #111);
  font-size: var(--mariola-text-sm, 0.875rem);
  font-weight: 600;
  line-height: 1.3;
  margin: 0;
  text-align: center;
}

.wc-main .wc-shop-content .product-card .product-card__size-meta[hidden] ,
.home-new-arrivals .product-card .product-card__size-meta[hidden]{
  display: none;
}

.wc-main .wc-shop-content .product-card .product-card__size-btn[data-value="individualno"],
.wc-main .wc-shop-content .product-card .product-card__size-btn[data-label="Индивидуально"],
.product-card__size-btn[data-value="individualno"],
.product-card__size-btn[data-label="Индивидуально"],
.mariola-pdp-related .product-card__size-btn[data-value="individualno"],
.mariola-pdp-related .product-card__size-btn[data-label="Индивидуально"],
.home-new-arrivals .product-card .product-card__size-btn[data-value="individualno"],
.home-new-arrivals .product-card .product-card__size-btn[data-label="Индивидуально"]{
  display: none !important;
}

.wc-main .wc-shop-content .product-card .product-card__size-btn ,
.home-new-arrivals .product-card .product-card__size-btn{
  align-items: center;
  background: var(--mariola-white);
  border: 1px solid var(--mariola-border, rgba(0, 0, 0, 0.12));
  border-radius: var(--mariola-btn-radius);
  color: var(--mariola-black);
  cursor: pointer;
  display: inline-flex;
  font-size: 0.8125rem;
  font-weight: 500;
  justify-content: center;
  line-height: 1.2;
  min-height: 2rem;
  min-width: 2.25rem;
  padding: 0.25rem 0.5rem;
  position: relative;
  transition: border-color 0.15s ease, background-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
}

.wc-main .wc-shop-content .product-card .product-card__size-btn:hover:not(:disabled):not(.is-selected),
.wc-main .wc-shop-content .product-card .product-card__size-btn:focus:not(:disabled):not(.is-selected),
.wc-main .wc-shop-content .product-card .product-card__size-btn:focus-visible:not(:disabled):not(.is-selected) ,
.home-new-arrivals .product-card .product-card__size-btn:hover:not(:disabled):not(.is-selected),
.home-new-arrivals .product-card .product-card__size-btn:focus:not(:disabled):not(.is-selected),
.home-new-arrivals .product-card .product-card__size-btn:focus-visible:not(:disabled):not(.is-selected){
  border-color: var(--mariola-brand);
  color: var(--mariola-brand);
  outline: 0;
}

.wc-main .wc-shop-content .product-card .product-card__size-btn.is-selected ,
.home-new-arrivals .product-card .product-card__size-btn.is-selected{
  background: var(--mariola-brand);
  border-color: var(--mariola-brand);
  color: var(--mariola-white);
}

.wc-main .wc-shop-content .product-card .product-card__size-btn.is-selected:hover:not(:disabled),
.wc-main .wc-shop-content .product-card .product-card__size-btn.is-selected:focus:not(:disabled),
.wc-main .wc-shop-content .product-card .product-card__size-btn.is-selected:focus-visible:not(:disabled) ,
.home-new-arrivals .product-card .product-card__size-btn.is-selected:hover:not(:disabled),
.home-new-arrivals .product-card .product-card__size-btn.is-selected:focus:not(:disabled),
.home-new-arrivals .product-card .product-card__size-btn.is-selected:focus-visible:not(:disabled){
  background: var(--mariola-brand);
  border-color: var(--mariola-brand);
  color: var(--mariola-white);
  outline: 0;
}

.wc-main .wc-shop-content .product-card .product-card__size-btn.is-in-stock ,
.home-new-arrivals .product-card .product-card__size-btn.is-in-stock{
  color: #1f8a3b;
}

.wc-main .wc-shop-content .product-card .product-card__size-btn.is-out-of-stock ,
.home-new-arrivals .product-card .product-card__size-btn.is-out-of-stock{
  color: #d4a017;
}

.wc-main .wc-shop-content .product-card .product-card__size-btn.is-in-stock:hover:not(:disabled):not(.is-selected),
.wc-main .wc-shop-content .product-card .product-card__size-btn.is-in-stock:focus:not(:disabled):not(.is-selected),
.wc-main .wc-shop-content .product-card .product-card__size-btn.is-in-stock:focus-visible:not(:disabled):not(.is-selected) ,
.home-new-arrivals .product-card .product-card__size-btn.is-in-stock:hover:not(:disabled):not(.is-selected),
.home-new-arrivals .product-card .product-card__size-btn.is-in-stock:focus:not(:disabled):not(.is-selected),
.home-new-arrivals .product-card .product-card__size-btn.is-in-stock:focus-visible:not(:disabled):not(.is-selected){
  border-color: #1f8a3b;
  color: #1f8a3b;
}

.wc-main .wc-shop-content .product-card .product-card__size-btn.is-out-of-stock:hover:not(:disabled):not(.is-selected),
.wc-main .wc-shop-content .product-card .product-card__size-btn.is-out-of-stock:focus:not(:disabled):not(.is-selected),
.wc-main .wc-shop-content .product-card .product-card__size-btn.is-out-of-stock:focus-visible:not(:disabled):not(.is-selected) ,
.home-new-arrivals .product-card .product-card__size-btn.is-out-of-stock:hover:not(:disabled):not(.is-selected),
.home-new-arrivals .product-card .product-card__size-btn.is-out-of-stock:focus:not(:disabled):not(.is-selected),
.home-new-arrivals .product-card .product-card__size-btn.is-out-of-stock:focus-visible:not(:disabled):not(.is-selected){
  border-color: #d4a017;
  color: #d4a017;
}

.wc-main .wc-shop-content .product-card .product-card__size-btn.is-selected.is-in-stock ,
.home-new-arrivals .product-card .product-card__size-btn.is-selected.is-in-stock{
  background: #1f8a3b;
  border-color: #1f8a3b;
  color: var(--mariola-white);
}

.wc-main .wc-shop-content .product-card .product-card__size-btn.is-selected.is-out-of-stock ,
.home-new-arrivals .product-card .product-card__size-btn.is-selected.is-out-of-stock{
  background: #d4a017;
  border-color: #d4a017;
  color: var(--mariola-white);
}

.wc-main .wc-shop-content .product-card .product-card__size-btn.is-unavailable,
.wc-main .wc-shop-content .product-card .product-card__size-btn:disabled ,
.home-new-arrivals .product-card .product-card__size-btn.is-unavailable,
.home-new-arrivals .product-card .product-card__size-btn:disabled{
  color: var(--mariola-muted);
  cursor: not-allowed;
  opacity: 0.4;
}

.wc-main .wc-shop-content .product-card .product-card__fulfillment-hint ,
.home-new-arrivals .product-card .product-card__fulfillment-hint{
  background: color-mix(in srgb, var(--mariola-brand) 8%, var(--mariola-white));
  border: 1px solid var(--mariola-brand);
  border-radius: var(--mariola-btn-radius);
  color: var(--mariola-brand);
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.35;
  margin: 0 0 0.5rem;
  padding: 0.5rem 0.625rem;
  text-align: left;
}

.wc-main .wc-shop-content .product-card .product-card__fulfillment-hint[hidden] ,
.home-new-arrivals .product-card .product-card__fulfillment-hint[hidden]{
  display: none;
}

.wc-main .wc-shop-content .product-card .product-card__buy.is-prompt .product-card__size-btn:not(:disabled) ,
.home-new-arrivals .product-card .product-card__buy.is-prompt .product-card__size-btn:not(:disabled){
  border-color: var(--mariola-brand);
  box-shadow: 0 0 0 1px var(--mariola-brand);
}

@media (hover: hover) and (pointer: fine) and (min-width: 992px) {
  body:not(.mariola-wishlist-page) .wc-main .wc-shop-content .product-card .product-card__cart-btn,
  body:not(.mariola-wishlist-page) .wc-main .wc-shop-content .product-card a.product-card__cart-btn,
  body:not(.mariola-wishlist-page) .wc-main .wc-shop-content .product-card a.button.product-card__cart-btn,
  body:not(.mariola-wishlist-page) .wc-main .wc-shop-content .product-card .product-card__buy ,
body:not(.mariola-wishlist-page) .home-new-arrivals .product-card .product-card__cart-btn,
body:not(.mariola-wishlist-page) .home-new-arrivals .product-card a.product-card__cart-btn,
body:not(.mariola-wishlist-page) .home-new-arrivals .product-card a.button.product-card__cart-btn,
body:not(.mariola-wishlist-page) .home-new-arrivals .product-card .product-card__buy{
    opacity: 0;
    pointer-events: none;
  }

  body:not(.mariola-wishlist-page) .wc-main .wc-shop-content .product-card:hover .product-card__cart-btn,
  body:not(.mariola-wishlist-page) .wc-main .wc-shop-content .product-card:hover a.product-card__cart-btn,
  body:not(.mariola-wishlist-page) .wc-main .wc-shop-content .product-card:hover a.button.product-card__cart-btn,
  body:not(.mariola-wishlist-page) .wc-main .wc-shop-content .product-card:focus-within .product-card__cart-btn,
  body:not(.mariola-wishlist-page) .wc-main .wc-shop-content .product-card:focus-within a.product-card__cart-btn,
  body:not(.mariola-wishlist-page) .wc-main .wc-shop-content .product-card:focus-within a.button.product-card__cart-btn,
  body:not(.mariola-wishlist-page) .wc-main .wc-shop-content .product-card:hover .product-card__buy,
  body:not(.mariola-wishlist-page) .wc-main .wc-shop-content .product-card:focus-within .product-card__buy,
  body:not(.mariola-wishlist-page) .wc-main .wc-shop-content .product-card .product-card__buy.is-prompt ,
body:not(.mariola-wishlist-page) .home-new-arrivals .product-card:hover .product-card__cart-btn,
body:not(.mariola-wishlist-page) .home-new-arrivals .product-card:hover a.product-card__cart-btn,
body:not(.mariola-wishlist-page) .home-new-arrivals .product-card:hover a.button.product-card__cart-btn,
body:not(.mariola-wishlist-page) .home-new-arrivals .product-card:focus-within .product-card__cart-btn,
body:not(.mariola-wishlist-page) .home-new-arrivals .product-card:focus-within a.product-card__cart-btn,
body:not(.mariola-wishlist-page) .home-new-arrivals .product-card:focus-within a.button.product-card__cart-btn,
body:not(.mariola-wishlist-page) .home-new-arrivals .product-card:hover .product-card__buy,
body:not(.mariola-wishlist-page) .home-new-arrivals .product-card:focus-within .product-card__buy,
body:not(.mariola-wishlist-page) .home-new-arrivals .product-card .product-card__buy.is-prompt{
    opacity: 1;
    pointer-events: auto;
  }
}

@media (max-width: 991.98px) {
  .wc-main .wc-shop-content .product-card__body,
  .home-new-arrivals .product-card__body {
    padding-bottom: 10px;
  }
}

.wc-main .wc-shop-content .product-card__body > .product-card__cart-btn,
.wc-main .wc-shop-content .product-card__body > a.product-card__cart-btn,
.wc-main .wc-shop-content .product-card__body > a.button.product-card__cart-btn,
.wc-main .wc-shop-content .product-card__body > .product-card__buy ,
.home-new-arrivals .product-card__body > .product-card__cart-btn,
.home-new-arrivals .product-card__body > a.product-card__cart-btn,
.home-new-arrivals .product-card__body > a.button.product-card__cart-btn,
.home-new-arrivals .product-card__body > .product-card__buy{
  margin-top: auto;
}

.wc-main .wc-shop-content .product-card .product-card__cart-btn:hover,
.wc-main .wc-shop-content .product-card .product-card__cart-btn:focus,
.wc-main .wc-shop-content .product-card a.product-card__cart-btn:hover,
.wc-main .wc-shop-content .product-card a.product-card__cart-btn:focus ,
.home-new-arrivals .product-card .product-card__cart-btn:hover,
.home-new-arrivals .product-card .product-card__cart-btn:focus,
.home-new-arrivals .product-card a.product-card__cart-btn:hover,
.home-new-arrivals .product-card a.product-card__cart-btn:focus{
  background: #003637;
  color: var(--mariola-white);
  outline: 0;
}

.wc-main .wc-shop-content .product-card .added_to_cart ,
.home-new-arrivals .product-card .added_to_cart{
  display: none;
}

.mariola-wishlist-page .product-card__actions {
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  gap: var(--mariola-space-2);
  margin-top: auto;
  width: 100%;
}

.mariola-wishlist-page .product-card__actions .product-card__buy,
.mariola-wishlist-page .product-card__actions .product-card__cart-btn,
.mariola-wishlist-page .product-card__actions a.product-card__cart-btn {
  margin-top: 0;
}

.mariola-wishlist-page .product-card__sizes {
  display: none;
}

.mariola-wishlist-page .product-card__remove-btn {
  background: transparent;
  border: 1px solid var(--mariola-brand);
  border-radius: var(--mariola-btn-radius);
  color: var(--mariola-brand);
  cursor: pointer;
  display: block;
  font-size: var(--mariola-text-sm);
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: var(--mariola-leading-tight);
  min-height: var(--mariola-btn-height);
  padding: 0.7rem 0.75rem;
  text-align: center;
  width: 100%;
}

.mariola-wishlist-page .product-card__remove-btn:hover,
.mariola-wishlist-page .product-card__remove-btn:focus {
  background: var(--mariola-brand);
  color: var(--mariola-white);
  outline: 0;
}

.mariola-wishlist-page .product-card__remove-btn:disabled {
  cursor: wait;
  opacity: 0.65;
}

.price,
.woocommerce ul.products li.product .price {
  color: var(--mariola-black);
  font-weight: 700;
}

.mariola-wholesale-label {
  color: var(--mariola-muted);
  font-size: var(--mariola-text-min);
  font-weight: 500;
}

.mariola-wholesale-stock-loop {
  margin-top: 0.25rem;
}

.mariola-product-status-badge {
  background: var(--mariola-accent);
  border-radius: 0;
  color: var(--mariola-black);
  display: inline-block;
  font-size: var(--mariola-text-xs);
  font-weight: 600;
  left: 0.5rem;
  letter-spacing: 0.03em;
  line-height: var(--mariola-leading-ui);
  margin: 0;
  padding: 0.15rem 0.5rem;
  pointer-events: none;
  position: absolute;
  text-transform: uppercase;
  top: 0.5rem;
  /* Выше gallery zones/dots (1–2), ниже wishlist (5). */
  z-index: 4;
}

.product-card__media > .woocommerce-LoopProduct-link {
  display: block;
  position: relative;
}

.mariola-gallery-video video {
  display: block;
  height: auto;
  width: 100%;
}

.mariola-gallery-video-thumb--play img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.mariola-gallery-video-thumb--loading img {
  background: var(--mariola-surface);
  opacity: 1;
}

.mariola-gallery-video-thumb--play::after {
  color: #fff;
  content: "▶";
  font-size: 1.25rem;
  left: 50%;
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
}

.mariola-gallery-video-thumb {
  position: relative;
}

/* WooCommerce layout */
.wc-main > .container {
  width: 100%;
}

.wc-main .woocommerce,
.wc-main .woocommerce-page {
  max-width: 100%;
}

.wc-shop-header__title,
.wc-shop-header .page-title {
  font-size: var(--mariola-title-catalog-size);
  font-weight: 600;
  letter-spacing: normal;
  line-height: var(--mariola-title-leading);
  margin: 0;
  text-transform: none;
}

.wc-shop-header__title.bapf_page_title {
  height: 0;
  margin: 0;
  overflow: hidden;
  padding: 0;
  visibility: hidden;
}

.wc-shop-header {
  margin-bottom: var(--mariola-space-2);
  padding-top: calc(var(--mariola-space-3) / 2);
}

.wc-shop-header .woocommerce-breadcrumb,
.wc-shop-header__breadcrumbs,
.wc-shop-header__breadcrumbs a {
  color: var(--mariola-breadcrumb);
  font-size: var(--mariola-breadcrumb-size);
  font-weight: 400;
  line-height: var(--mariola-breadcrumb-leading);
  margin: 0;
  padding: 0;
  text-decoration: none;
}

.wc-shop-header .woocommerce-breadcrumb a:hover,
.wc-shop-header .woocommerce-breadcrumb a:focus,
.wc-shop-header__breadcrumbs a:hover,
.wc-shop-header__breadcrumbs a:focus {
  color: var(--mariola-black);
}

/* Breadcrumbs & titles — WB-style (catalog, PDP, checkout) */
.woocommerce .woocommerce-breadcrumb {
  color: var(--mariola-breadcrumb);
  font-size: var(--mariola-breadcrumb-size);
  font-weight: 400;
  line-height: var(--mariola-breadcrumb-leading);
  margin: 0 0 var(--mariola-space-1);
  padding: calc(var(--mariola-space-3) / 2) 0 0;
  text-decoration: none;
}

.woocommerce .woocommerce-breadcrumb a {
  color: var(--mariola-breadcrumb);
  text-decoration: none;
}

.woocommerce .woocommerce-breadcrumb a:hover,
.woocommerce .woocommerce-breadcrumb a:focus {
  color: var(--mariola-black);
}

.wc-shop-header .woocommerce-breadcrumb {
  margin: 0;
  padding: 0;
}

.single-product div.product .product_title,
.single-product div.product .product_title.entry-title {
  font-size: 1.25rem;
  font-weight: 600;
  letter-spacing: normal;
  line-height: 1.5;
  margin: 0 0 var(--mariola-space-4);
  text-transform: none;
}

.mariola-pdp {
  display: flow-root;
  margin-bottom: 0;
  width: 100%;
}

.mariola-pdp__grid {
  display: grid;
  gap: var(--mariola-space-6);
  grid-template-columns: minmax(0, 1fr);
  margin-bottom: 0;
  width: 100%;
}

.single-product div.product.mariola-pdp::before,
.single-product div.product.mariola-pdp::after {
  display: none;
}

.mariola-pdp__top {
  align-items: start;
  column-gap: var(--mariola-space-6);
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 4fr);
  min-width: 0;
  width: 100%;
}

.mariola-pdp__gallery {
  min-width: 0;
  width: 100%;
}

@media (min-width: 992px) {
  .mariola-pdp__gallery {
    align-self: start;
    position: sticky;
    top: calc(var(--site-header-height, 4.5rem) + var(--mariola-space-4));
  }
}

.mariola-pdp__main {
  display: flex;
  flex-direction: column;
  gap: var(--mariola-space-4);
  min-width: 0;
  width: 100%;
}

.mariola-pdp__wide {
  clear: both;
  margin-top: var(--mariola-space-8);
  width: 100%;
}

.mariola-pdp__wide > .container {
  max-width: 100%;
  width: 100%;
}

.mariola-pdp__aside {
  clear: both;
  isolation: isolate;
  margin-bottom: var(--mariola-space-8);
  max-width: 100%;
  min-width: 0;
  position: relative;
  width: 100%;
  z-index: 2;
}

.mariola-pdp__aside .mariola-pdp-related {
  max-width: 100%;
  width: 100%;
}

.mariola-pdp__aside .mariola-pdp-related .wc-shop-content {
  max-width: 100%;
  width: 100%;
}

.mariola-pdp__columns {
  align-items: start;
  display: grid;
  gap: var(--mariola-space-4);
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  width: 100%;
}

.mariola-pdp__head {
  min-width: 0;
  width: 100%;
}

.mariola-pdp__details-col,
.mariola-pdp__buy-col,
.mariola-pdp__buy-side {
  min-width: 0;
}

.single-product .mariola-pdp div.images,
.mariola-pdp__gallery .woocommerce-product-gallery {
  float: none;
  margin: 0;
  max-width: none;
  width: 100% !important;
}

.mariola-pdp__gallery .woocommerce-product-gallery .flex-viewport,
.mariola-pdp__gallery .woocommerce-product-gallery__wrapper,
.mariola-pdp__gallery .woocommerce-product-gallery__image {
  max-width: none;
  width: 100%;
}

.mariola-pdp__gallery .woocommerce-product-gallery .flex-viewport {
  position: relative;
}

.mariola-pdp__gallery .woocommerce-product-gallery__image img,
.mariola-pdp__gallery .flex-viewport img {
  display: block;
  height: auto;
  margin: 0 auto;
  max-width: 100%;
  pointer-events: none;
  width: 100%;
}

.mariola-pdp__gallery .mariola-gallery-video {
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
  touch-action: manipulation;
}

.mariola-pdp__gallery .mariola-gallery-video video {
  display: block;
  height: auto;
  margin: 0 auto;
  max-width: 100%;
  pointer-events: auto;
  width: 100%;
}

.mariola-pdp__gallery .mariola-gallery-video video::-webkit-media-controls {
  display: none !important;
}

.pswp.mariola-pswp--video-slide .pswp__zoom-wrap.mariola-pswp-zoom-wrap--video > .pswp__img,
.pswp.mariola-pswp--video-slide .pswp__zoom-wrap.mariola-pswp-zoom-wrap--video > .pswp__img--placeholder {
  opacity: 0 !important;
  pointer-events: none;
  visibility: hidden !important;
}

.pswp.mariola-pswp--video-slide .pswp__preloader {
  display: none;
}

.pswp.mariola-pswp--video-slide .pswp__button--zoom {
  display: none;
}

.pswp .mariola-pswp-video {
  align-items: center;
  display: flex;
  inset: 0;
  justify-content: center;
  pointer-events: auto;
  position: absolute;
  z-index: 2;
}

.pswp .mariola-pswp-video video {
  display: block;
  height: auto;
  margin: 0 auto;
  max-height: 100%;
  max-width: 100%;
  object-fit: contain;
  width: auto;
}

.pswp .pswp__button--arrow--left,
.pswp .pswp__button--arrow--right {
  margin-top: 0;
  top: 50%;
  transform: translateY(-50%);
}

.pswp .pswp__top-bar {
  align-items: center;
  box-sizing: border-box;
  display: flex;
  flex-wrap: nowrap;
}

.pswp .pswp__top-bar .pswp__button {
  float: none;
  flex: 0 0 44px;
  height: 44px;
  min-height: 44px;
  min-width: 44px;
  padding: 0;
  width: 44px;
}

body:has(.pswp--open) .site-header,
body:has(.pswp--open) .mariola-info-bar,
html.pswp-open .mariola-pdp-gallery__controls,
body:has(.pswp--open) .mariola-pdp-gallery__controls {
  display: none !important;
}

@media (max-width: 991.98px) {
  .pswp.pswp--open {
    height: 100% !important;
    height: 100dvh !important;
    inset: 0 auto auto 0;
    left: 0 !important;
    position: fixed !important;
    top: 0 !important;
    width: 100% !important;
    z-index: 2000;
  }

  .admin-bar .pswp.pswp--open:not(:fullscreen):not(.pswp--fs) {
    height: calc(100dvh - var(--wp-admin--admin-bar--height, 0px)) !important;
    top: var(--wp-admin--admin-bar--height, 0px) !important;
  }

  .pswp .pswp__top-bar {
    height: calc(44px + env(safe-area-inset-top, 0px));
    padding-top: env(safe-area-inset-top, 0px);
  }

  .pswp .pswp__caption {
    bottom: env(safe-area-inset-bottom, 0px);
    padding-bottom: env(safe-area-inset-bottom, 0px);
  }

  .pswp:fullscreen,
  .pswp:-webkit-full-screen,
  .pswp.pswp--fs {
    height: 100% !important;
    height: 100dvh !important;
    top: 0 !important;
  }
}

.mariola-pdp__gallery .woocommerce-product-gallery {
  opacity: 1 !important;
}

.mariola-pdp__gallery .woocommerce-product-gallery .flex-viewport {
  min-height: 1px;
}

.mariola-pdp__gallery .woocommerce-product-gallery .flex-control-thumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  margin: 12px 0 0;
  padding: 0;
}

.mariola-pdp__gallery .woocommerce-product-gallery .flex-control-thumbs li {
  float: none;
  margin: 0;
  max-width: none;
  overflow: hidden;
  touch-action: manipulation;
  width: auto;
}

.mariola-pdp__gallery .woocommerce-product-gallery .flex-control-thumbs img {
  aspect-ratio: 1 / 1;
  border: 1px solid rgba(0, 90, 91, 0.49);
  border-radius: 10px;
  box-sizing: border-box;
  display: block;
  height: auto !important;
  max-height: none;
  max-width: 100%;
  object-fit: cover;
  width: 5rem !important;
}

.mariola-pdp__gallery .woocommerce-product-gallery .flex-control-thumbs .mariola-gallery-video-thumb {
  border: 1px solid rgba(0, 90, 91, 0.49);
  border-radius: 10px;
  box-sizing: border-box;
  flex: 0 0 5rem;
  height: 5rem;
  overflow: hidden;
  width: 5rem;
}

.mariola-pdp__gallery .woocommerce-product-gallery .flex-control-thumbs .mariola-gallery-video-thumb img {
  border: 0;
  border-radius: 0;
  height: 100%;
  width: 100%;
}

.mariola-pdp-gallery__stage {
  min-width: 0;
  position: relative;
  width: 100%;
}

.mariola-pdp-gallery__controls {
  display: none;
  inset: 0;
  pointer-events: none;
  position: absolute;
  z-index: 10;
}

.mariola-pdp-gallery__controls > * {
  pointer-events: auto;
}

.mariola-pdp-gallery__controls[hidden] {
  display: none !important;
}

.mariola-pdp-gallery__arrow {
  align-items: center;
  background: rgba(255, 255, 255, 0.88);
  border: 0;
  border-radius: 50%;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
  color: var(--mariola-black);
  cursor: pointer;
  display: inline-flex;
  height: 2.25rem;
  justify-content: center;
  padding: 0;
  pointer-events: auto;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2.25rem;
}

.mariola-pdp-gallery__arrow--prev {
  left: 0.5rem;
}

.mariola-pdp-gallery__arrow--next {
  right: 0.5rem;
}

.mariola-pdp-gallery__arrow:hover,
.mariola-pdp-gallery__arrow:focus-visible {
  background: var(--mariola-white);
  color: var(--mariola-brand);
  outline: 0;
}

.mariola-pdp-gallery__dots {
  align-items: center;
  bottom: 0.5rem;
  display: flex;
  gap: 0.125rem;
  justify-content: center;
  left: 0;
  pointer-events: auto;
  position: absolute;
  right: 0;
}

.mariola-pdp-gallery__dot {
  align-items: center;
  background: transparent;
  border: 0;
  box-sizing: border-box;
  cursor: pointer;
  display: inline-flex;
  height: 1.75rem;
  justify-content: center;
  padding: 0;
  touch-action: manipulation;
  width: 1.75rem;
}

.mariola-pdp-gallery__dot::before {
  background: rgba(255, 255, 255, 0.55);
  border: 1px solid rgba(0, 0, 0, 0.18);
  border-radius: 50%;
  box-sizing: border-box;
  content: "";
  height: 0.5rem;
  width: 0.5rem;
}

.mariola-pdp-gallery__dot.is-active::before,
.mariola-pdp-gallery__dot[aria-selected="true"]::before {
  background: var(--mariola-brand);
  border-color: var(--mariola-brand);
}

@media (max-width: 1024.98px) {
  .mariola-pdp__gallery .woocommerce-product-gallery {
    position: relative;
  }

  .mariola-pdp__gallery .woocommerce-product-gallery:has(.flex-control-thumbs) {
    align-items: start;
    display: grid;
    gap: 12px;
    grid-template-areas:
      "viewport"
      "thumbs";
    grid-template-columns: minmax(0, 1fr);
    width: 100%;
  }

  .mariola-pdp__gallery .woocommerce-product-gallery:has(.flex-control-thumbs) .mariola-pdp-gallery__stage,
  .mariola-pdp__gallery .woocommerce-product-gallery:has(.flex-control-thumbs) .flex-viewport,
  .mariola-pdp__gallery .woocommerce-product-gallery:has(.flex-control-thumbs) .woocommerce-product-gallery__trigger {
    grid-area: viewport;
    min-width: 0;
    width: 100%;
  }

  .mariola-pdp__gallery .woocommerce-product-gallery .flex-viewport {
    min-height: min(75vw, 32rem);
  }

  .mariola-pdp__gallery .mariola-gallery-video {
    min-height: min(75vw, 32rem);
  }

  .mariola-pdp__gallery .mariola-gallery-video video {
    background: var(--mariola-surface);
    min-height: min(75vw, 32rem);
    object-fit: contain;
  }

  .mariola-pdp__gallery .woocommerce-product-gallery .flex-control-thumbs {
    display: flex !important;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 8px;
    grid-area: thumbs;
    justify-content: flex-start;
    margin: 0;
    max-width: none;
    min-width: 0;
    width: 100%;
  }

  .mariola-pdp__gallery .woocommerce-product-gallery .flex-control-thumbs li {
    flex: 0 0 auto;
    max-width: none;
    width: auto !important;
  }

  .mariola-pdp__gallery .woocommerce-product-gallery .flex-control-thumbs img {
    height: auto !important;
    width: 5rem !important;
  }

  .mariola-pdp__gallery .woocommerce-product-gallery .flex-control-thumbs .mariola-gallery-video-thumb {
    flex: 0 0 5rem;
    height: 5rem;
    width: 5rem;
  }

  .mariola-pdp__gallery .flex-direction-nav {
    display: none !important;
  }

  .mariola-pdp-gallery__controls:not([hidden]) {
    display: block;
  }
}

@media (min-width: 1025px) {
  .mariola-pdp__gallery .woocommerce-product-gallery:has(.flex-control-thumbs) {
    align-items: start;
    display: grid;
    gap: 12px;
    grid-template-areas: "thumbs viewport";
    grid-template-columns: minmax(0, 5rem) minmax(0, 1fr);
    width: 100%;
  }

  .mariola-pdp__gallery .woocommerce-product-gallery:has(.flex-control-thumbs) .mariola-pdp-gallery__stage,
  .mariola-pdp__gallery .woocommerce-product-gallery:has(.flex-control-thumbs) .flex-viewport,
  .mariola-pdp__gallery .woocommerce-product-gallery:has(.flex-control-thumbs) .woocommerce-product-gallery__trigger {
    grid-area: viewport;
    min-width: 0;
    width: 100%;
  }

  .mariola-pdp__gallery .woocommerce-product-gallery .flex-viewport {
    min-width: 0;
    width: 100%;
  }

  .mariola-pdp__gallery .woocommerce-product-gallery .flex-control-thumbs {
    flex-direction: column-reverse;
    gap: 8px;
    grid-area: thumbs;
    justify-content: flex-end;
    margin: 0;
    max-width: 5rem;
    min-width: 0;
    width: 100%;
  }

  .mariola-pdp__gallery .woocommerce-product-gallery .flex-control-thumbs li {
    flex: 0 0 auto;
    max-width: 100%;
    width: 100% !important;
  }

  .mariola-pdp__gallery .woocommerce-product-gallery .flex-control-thumbs img {
    height: auto !important;
    width: 100% !important;
  }

  .mariola-pdp__gallery .woocommerce-product-gallery .flex-control-thumbs .mariola-gallery-video-thumb {
    height: auto;
    width: 100%;
  }
}

.woocommerce div.product .mariola-pdp__buy-col.summary {
  align-self: start;
  background: var(--mariola-white);
  border: 1px solid var(--mariola-brand);
  border-radius: 10px;
  box-sizing: border-box;
  clear: none;
  float: none;
  height: fit-content;
  margin: 0;
  margin-bottom: 0;
  max-width: none;
  padding: 15px;
  width: 100% !important;
}

.mariola-pdp__buy-body.product-card__body {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  gap: 0;
  height: fit-content;
  min-height: 0;
  padding-top: 0;
}

.mariola-pdp__buy-summary.product-card__summary {
  display: flex;
  flex: 0 0 auto;
  flex-direction: column;
  gap: var(--mariola-space-2);
  height: fit-content;
  min-height: 0;
  width: 100%;
}

.mariola-pdp__buy-side {
  display: flex;
  flex-direction: column;
  gap: var(--mariola-space-4);
}

.mariola-pdp__controls {
  align-items: center;
  border: 0;
  border-top: 0;
  display: flex;
  flex-wrap: nowrap;
  gap: var(--mariola-space-4);
  justify-content: center;
  margin: 0;
  min-height: 1.125rem;
  padding: 0;
  width: 100%;
}

.mariola-pdp__control {
  align-items: center;
  align-self: center;
  background: transparent;
  border: 0;
  color: var(--mariola-black);
  cursor: pointer;
  display: inline-flex;
  flex: 0 0 auto;
  font-family: inherit;
  font-size: var(--mariola-text-min);
  font-weight: 400;
  gap: 0.375rem;
  height: 1.125rem;
  line-height: 1.125rem;
  margin: 0;
  padding: 0;
  text-align: left;
  text-transform: none;
  transition: color 0.15s ease;
  white-space: nowrap;
}

.mariola-pdp__control .mariola-icon:not(.mariola-icon--header) {
  display: block;
  flex-shrink: 0;
  height: 1.125rem;
  line-height: 0;
  width: 1.125rem;
}

.mariola-pdp__control-label {
  align-self: center;
  display: block;
  font-size: var(--mariola-text-min);
  height: 1.125rem;
  line-height: 1.125rem;
  margin: 0;
  padding: 0;
  text-transform: lowercase;
}

.mariola-pdp__control:hover,
.mariola-pdp__control:focus-visible {
  color: var(--mariola-brand);
  outline: 0;
}

.mariola-pdp__control:disabled {
  cursor: wait;
  opacity: 0.6;
}

.mariola-pdp__control-icons {
  align-items: center;
  align-self: center;
  display: inline-flex;
  flex: 0 0 1.125rem;
  height: 1.125rem;
  justify-content: center;
  pointer-events: none;
  position: relative;
  width: 1.125rem;
}

.mariola-pdp__control-icons .mariola-pdp__control-icon,
.mariola-pdp__control-icons .mariola-pdp__control-icon-svg,
.mariola-pdp__control-icon-svg {
  display: block;
  flex-shrink: 0;
  height: 1.125rem;
  pointer-events: none;
  width: 1.125rem;
}

.mariola-pdp__control-icon {
  transition: color 0.28s ease, opacity 0.28s ease, transform 0.28s ease;
}

.mariola-pdp__control-icon--outline,
.mariola-pdp__control-icon--filled,
.mariola-pdp__control-icon-svg {
  color: var(--mariola-black);
}

.mariola-pdp__control-icon--filled {
  inset: 0;
  opacity: 0;
  position: absolute;
}

.mariola-pdp__control--wishlist:hover .mariola-pdp__control-icon--outline,
.mariola-pdp__control--wishlist:focus-visible .mariola-pdp__control-icon--outline,
.mariola-pdp__control--wishlist.is-active .mariola-pdp__control-icon--filled {
  color: var(--mariola-black);
}

.mariola-pdp__control--wishlist.is-active .mariola-pdp__control-icon--outline {
  opacity: 0;
}

.mariola-pdp__control--wishlist.is-active .mariola-pdp__control-icon--filled {
  opacity: 1;
}

.mariola-pdp__control--wishlist.is-animating .mariola-pdp__control-icons {
  animation: mariola-wishlist-heart-pop 0.45s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.mariola-pdp__control-share-wrap {
  align-items: center;
  align-self: center;
  display: inline-flex;
  position: relative;
}

.mariola-pdp__control--share:hover .mariola-pdp__control-icon-svg,
.mariola-pdp__control--share:focus-visible .mariola-pdp__control-icon-svg {
  color: var(--mariola-brand);
}

.mariola-pdp-share-popover {
  pointer-events: none;
}

.mariola-pdp-share-popover.is-open {
  pointer-events: auto;
}

.mariola-pdp-share-popover__backdrop {
  background: rgba(0, 0, 0, 0.45);
  inset: 0;
  opacity: 0;
  position: absolute;
  transition: opacity 0.32s ease, visibility 0s linear 0.32s;
  visibility: hidden;
}

.mariola-pdp-share-popover.is-open .mariola-pdp-share-popover__backdrop {
  opacity: 1;
  transition: opacity 0.32s ease, visibility 0s linear 0s;
  visibility: visible;
}

@media (max-width: 991.98px) {
  body.mariola-pdp-share-open,
  html.mariola-pdp-share-open {
    overscroll-behavior: none;
  }

  body.mariola-pdp-share-open .site-header {
    z-index: 1070;
  }

  body.mariola-pdp-share-open .mariola-info-bar-area {
    z-index: 1071;
  }

  .mariola-pdp-share-popover {
    bottom: calc(var(--site-header-bottom-height, 3.5rem) + env(safe-area-inset-bottom, 0px));
    left: 0;
    position: fixed;
    right: 0;
    top: var(--site-mobile-nav-top-frozen, var(--site-mobile-nav-top, var(--site-header-height, 4.5rem)));
    z-index: 1050;
  }

  .mariola-pdp-share-popover__panel {
    opacity: 0;
    transform: translate(-50%, calc(-50% + 0.75rem)) scale(0.96);
    transition: opacity 0.32s ease, transform 0.32s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .mariola-pdp-share-popover.is-open .mariola-pdp-share-popover__panel {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
  }
}

.mariola-pdp-share-popover__panel {
  background: var(--mariola-white);
  border-radius: var(--mariola-btn-radius);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
  left: 50%;
  max-width: calc(100vw - 2rem);
  padding: 1rem 1rem 0.875rem;
  pointer-events: auto;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: min(17rem, calc(100vw - 2rem));
  z-index: 1;
}

.mariola-pdp-share-popover__close {
  align-items: center;
  background: transparent;
  border: 0;
  color: var(--mariola-muted);
  cursor: pointer;
  display: inline-flex;
  padding: 0.25rem;
  position: absolute;
  right: 0.5rem;
  top: 0.5rem;
}

.mariola-pdp-share-popover__close:hover,
.mariola-pdp-share-popover__close:focus-visible {
  color: var(--mariola-brand);
  outline: 0;
}

.mariola-pdp-share-popover__title {
  font-size: var(--mariola-text-min);
  font-weight: 600;
  margin: 0 1.5rem 0.75rem 0;
}

.mariola-pdp-share-popover__networks {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  list-style: none;
  margin: 0 0 0.75rem;
  padding: 0;
}

.mariola-pdp-share-popover__network {
  display: inline-flex;
  line-height: 0;
  transition: opacity 0.15s ease, transform 0.15s ease;
}

.mariola-pdp-share-popover__network:hover,
.mariola-pdp-share-popover__network:focus-visible {
  opacity: 0.85;
  outline: 0;
  transform: scale(0.96);
}

.mariola-pdp-share-popover__network .site-footer__social-svg {
  border-radius: 5px;
  display: block;
  height: 2.5rem;
  width: 2.5rem;
}

.mariola-pdp-share-popover__copy {
  background: transparent;
  border: 0;
  color: var(--mariola-black);
  cursor: pointer;
  display: block;
  font-family: inherit;
  font-size: var(--mariola-text-min);
  line-height: 1.4;
  padding: 0;
  text-align: left;
  text-decoration: underline;
  text-transform: none;
  text-underline-offset: 0.12em;
  transition: color 0.15s ease;
  width: 100%;
}

.mariola-pdp-share-popover__copy:hover,
.mariola-pdp-share-popover__copy:focus-visible {
  color: var(--mariola-brand);
  outline: 0;
}

.mariola-pdp-share-popover__copy.is-copied {
  color: var(--mariola-brand);
  text-decoration: none;
}

@media (min-width: 992px) {
  .mariola-pdp-share-popover {
    inset: auto;
    pointer-events: none;
    position: absolute;
    right: 0;
    top: calc(100% + 0.375rem);
    z-index: 12;
  }

  .mariola-pdp-share-popover__backdrop {
    display: none;
  }

  body.mariola-pdp-share-open {
    overflow: auto;
  }

  .mariola-pdp-share-popover__panel {
    left: auto;
    position: relative;
    top: auto;
    transform: none;
    width: 13.5rem;
  }
}

.mariola-pdp__buy-summary .woocommerce-variation.single_variation:empty {
  display: none;
  height: 0;
  margin: 0;
  overflow: hidden;
  padding: 0;
}

.mariola-pdp__buy-summary .single_variation_wrap {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin: 0;
  min-height: 0;
}

.mariola-pdp__meta.product_meta {
  margin: 0;
  order: 1;
}

.mariola-pdp__meta .detail-container {
  color: var(--mariola-black);
  display: block;
  font-size: 0.875rem;
  font-style: normal;
  line-height: var(--mariola-leading-normal);
}

.mariola-pdp__meta .detail-container + .detail-container {
  margin-top: 4px;
}

.mariola-pdp__meta .detail-label,
.mariola-pdp__meta .detail-content,
.mariola-pdp__meta .detail-content a,
.mariola-pdp__meta .sku.detail-content {
  color: var(--mariola-black);
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 400;
  text-decoration: none;
}

.mariola-pdp__meta .mariola-pdp__sku-copy {
  background: none;
  border: none;
  cursor: pointer;
  font: inherit;
  margin: 0;
  padding: 0;
  text-align: left;
}

.mariola-pdp__meta .mariola-pdp__sku-copy:hover,
.mariola-pdp__meta .mariola-pdp__sku-copy:focus {
  color: var(--mariola-brand);
  text-decoration: underline;
}

.mariola-pdp__meta .mariola-pdp__sku-copy.is-copied {
  color: var(--mariola-brand);
  text-decoration: none;
}

.mariola-pdp__meta .detail-content a:hover,
.mariola-pdp__meta .detail-content a:focus {
  color: var(--mariola-brand);
}

.mariola-pdp__price-block {
  display: flex;
  flex-direction: column;
  gap: 4px;
  margin: 0;
  order: 2;
}

.mariola-pdp__buy-col .mariola-pdp__custom-size-field {
  margin-top: var(--mariola-space-3);
  width: 100%;
}

.mariola-pdp__custom-size-field {
  position: relative;
  z-index: 12;
}

.mariola-pdp__custom-size-input-wrap {
  align-items: center;
  display: flex;
  gap: 6px;
  position: relative;
  width: 100%;
}

.mariola-pdp__custom-size-input {
  border: 1px solid var(--mariola-border);
  border-radius: var(--mariola-btn-radius);
  color: var(--mariola-black);
  flex: 1 1 auto;
  font-size: 0.875rem;
  line-height: var(--mariola-leading-normal);
  min-height: 40px;
  min-width: 0;
  padding: 0.5rem 0.75rem;
}

.mariola-pdp__custom-size-input::placeholder {
  color: var(--mariola-muted);
}

.mariola-pdp__custom-size-input:focus {
  border-color: var(--mariola-brand);
  outline: 0;
}

.mariola-pdp__custom-size-field .mariola-pdp__price-hint-wrap {
  flex: 0 0 auto;
}

.mariola-pdp__price-meta {
  align-items: center;
  display: inline-flex;
  flex-wrap: wrap;
  gap: 6px;
  position: relative;
  width: fit-content;
  z-index: 2;
}

.mariola-pdp__price-block .mariola-pdp__price-meta,
.mariola-pdp__price-meta.is-hint-active,
.mariola-pdp__price-meta.is-open {
  z-index: 40;
}

.mariola-pdp__size-stock.mariola-pdp__price-meta {
  z-index: 1;
}

.mariola-pdp__size-stock.mariola-pdp__price-meta.is-hint-active,
.mariola-pdp__size-stock.mariola-pdp__price-meta.is-open {
  z-index: 41;
}

.mariola-pdp__price-label {
  color: var(--mariola-muted);
  font-size: 0.8125rem;
  font-weight: 400;
  line-height: var(--mariola-leading-normal);
}

.mariola-pdp__price-hint-wrap {
  display: inline-flex;
  position: relative;
}

.mariola-pdp__price-hint-wrap::before {
  content: "";
  height: 14px;
  left: -6px;
  position: absolute;
  right: -6px;
  top: 100%;
}

.mariola-pdp__price-hint {
  align-items: center;
  background: transparent;
  border: 0;
  border-radius: 50%;
  color: var(--mariola-muted);
  cursor: pointer;
  display: inline-flex;
  height: 24px;
  justify-content: center;
  margin: -3px;
  padding: 3px;
  width: 24px;
}

.mariola-pdp__price-hint:hover,
.mariola-pdp__price-hint:focus-visible {
  color: var(--mariola-brand);
  outline: 0;
}

.mariola-pdp__price-hint-icon {
  display: block;
}

.mariola-pdp__price-tooltip {
  background: var(--mariola-white);
  border: 1px solid var(--mariola-border);
  border-radius: var(--mariola-btn-radius);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
  color: var(--mariola-black);
  font-size: 0.8125rem;
  font-weight: 400;
  left: 50%;
  line-height: var(--mariola-leading-normal);
  margin-top: 10px;
  max-width: min(20rem, calc(100vw - 2rem));
  opacity: 0;
  padding: 0.875rem 1rem;
  pointer-events: none;
  position: absolute;
  right: auto;
  top: 100%;
  transform: translateX(-50%);
  visibility: hidden;
  white-space: normal;
  width: min(20rem, calc(100vw - 2rem));
  z-index: 42;
}

.mariola-pdp__price-tooltip::before {
  border-bottom: 7px solid var(--mariola-border);
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  bottom: 100%;
  content: "";
  left: var(--mariola-pdp-price-tooltip-arrow-left, 50%);
  position: absolute;
  right: auto;
  transform: translateX(-50%);
}

.mariola-pdp__price-tooltip::after {
  border-bottom: 6px solid var(--mariola-white);
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  bottom: 100%;
  content: "";
  left: var(--mariola-pdp-price-tooltip-arrow-left, 50%);
  position: absolute;
  right: auto;
  transform: translateX(-50%);
}

.mariola-pdp__size-swatch.is-in-stock {
  color: #1f8a3b;
  font-weight: 600;
}

.mariola-pdp__size-swatch.is-out-of-stock {
  color: #d4a017;
  font-weight: 600;
}

.mariola-pdp__price-tooltip a:hover,
.mariola-pdp__price-tooltip a:focus {
  color: var(--mariola-brand);
}

.mariola-pdp__price-hint-wrap:hover .mariola-pdp__price-tooltip,
.mariola-pdp__price-hint-wrap:focus-within .mariola-pdp__price-tooltip,
[data-mariola-price-hint].is-hint-active .mariola-pdp__price-tooltip,
[data-mariola-price-hint].is-open .mariola-pdp__price-tooltip {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
}

.woocommerce div.product .mariola-pdp__buy-col p.price,
.woocommerce div.product .mariola-pdp__buy-col span.price,
.mariola-pdp__buy-col .mariola-pdp__buy-summary p.price {
  color: var(--mariola-black);
  font-size: var(--mariola-text-lg);
  font-weight: 700;
  line-height: var(--mariola-leading-tight);
  margin: 0;
}

.woocommerce div.product .mariola-pdp__buy-col p.price .woocommerce-Price-amount,
.woocommerce div.product .mariola-pdp__buy-col p.price .woocommerce-Price-amount bdi,
.woocommerce div.product .mariola-pdp__buy-col span.price .woocommerce-Price-amount,
.woocommerce div.product .mariola-pdp__buy-col span.price .woocommerce-Price-amount bdi,
.mariola-pdp__buy-col .price .woocommerce-Price-amount,
.mariola-pdp__buy-col .price .woocommerce-Price-amount bdi {
  color: var(--mariola-black);
}

.woocommerce div.product .mariola-pdp__buy-col p.price del,
.mariola-pdp__buy-col .price del {
  color: var(--mariola-muted);
  font-size: var(--mariola-text-card);
  font-weight: 400;
}

.woocommerce div.product .mariola-pdp__buy-col p.price ins,
.woocommerce div.product .mariola-pdp__buy-col p.price ins .woocommerce-Price-amount,
.woocommerce div.product .mariola-pdp__buy-col p.price ins .woocommerce-Price-amount bdi,
.mariola-pdp__buy-col .price ins,
.mariola-pdp__buy-col .price ins .woocommerce-Price-amount,
.mariola-pdp__buy-col .price ins .woocommerce-Price-amount bdi {
  color: var(--mariola-black);
  text-decoration: none;
}

.mariola-pdp__buy-col .mariola-wholesale-label,
.mariola-pdp__buy-col .mariola-wholesale-stock {
  font-size: var(--mariola-text-xs);
  margin: 0;
  order: 3;
}

.mariola-pdp__buy-col .stock {
  display: none;
}

.mariola-pdp__buy-col .woocommerce-variation-price,
.mariola-pdp__buy-col .woocommerce-variation-availability {
  display: none !important;
}

.mariola-pdp__availability[hidden] {
  display: none !important;
}

.woocommerce div.product .mariola-pdp__buy-col .mariola-pdp__price-block .stock,
.woocommerce div.product .mariola-pdp__buy-col .mariola-pdp__price-block .stock.in-stock,
.woocommerce div.product .mariola-pdp__buy-col .mariola-pdp__price-block .stock.out-of-stock,
.mariola-pdp__buy-col .mariola-pdp__price-block .stock,
.mariola-pdp__buy-col .mariola-pdp__price-block .mariola-wholesale-stock {
  color: var(--mariola-black);
  display: block;
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.35;
  margin: 0;
  order: 0;
}

.woocommerce div.product.mariola-pdp form.cart,
.woocommerce div.product.mariola-pdp form.variations_form,
.mariola-pdp__buy-col form.cart,
.mariola-pdp__buy-col form.variations_form {
  flex: 0 0 auto;
  margin: var(--mariola-space-3) 0 0;
  margin-bottom: 0;
  order: 4;
  width: 100%;
}

.mariola-pdp__buy-col .mariola-pdp__cart,
.mariola-pdp__buy-col .woocommerce-variation-add-to-cart {
  display: flex;
  flex-direction: column;
  gap: var(--mariola-space-3);
  width: 100%;
}

.mariola-pdp__buy-col .added_to_cart.wc-forward {
  color: var(--mariola-brand, #004445);
  font-size: var(--mariola-text-sm, 0.875rem);
  font-weight: 500;
  text-align: center;
  text-decoration: underline;
  text-underline-offset: 0.12em;
}

.mariola-pdp__buy-col .added_to_cart.wc-forward:hover,
.mariola-pdp__buy-col .added_to_cart.wc-forward:focus {
  color: var(--mariola-black, #000);
  outline: 0;
}

.mariola-pdp__buy-col .quantity {
  margin: 0;
  width: 100%;
}

.mariola-pdp__buy-col .mariola-qty-stepper {
  align-items: stretch;
  border: 0;
  border-radius: 0;
  display: flex;
  overflow: visible;
  width: 100%;
}

.mariola-pdp__buy-col .mariola-qty-stepper__btn {
  align-items: center;
  background: var(--mariola-white);
  border: 0;
  color: var(--mariola-brand);
  cursor: pointer;
  display: inline-flex;
  flex: 0 0 3.25rem;
  font-size: 1.5rem;
  font-weight: 400;
  justify-content: center;
  line-height: 1;
  min-height: var(--mariola-btn-height);
  padding: 0;
  transition: background-color 0.15s ease, color 0.15s ease;
  user-select: none;
}

.mariola-pdp__buy-col .mariola-qty-stepper__btn:hover,
.mariola-pdp__buy-col .mariola-qty-stepper__btn:focus {
  background: var(--mariola-surface);
  color: var(--mariola-brand);
  outline: 0;
}

.mariola-pdp__buy-col .mariola-qty-stepper .qty {
  -moz-appearance: textfield;
  appearance: textfield;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  color: var(--mariola-black);
  flex: 1 1 auto;
  font-size: var(--mariola-text-base);
  font-weight: 600;
  margin: 0;
  max-width: none;
  min-height: var(--mariola-btn-height);
  min-width: 0;
  outline: 0;
  padding: 0.5rem 0.75rem;
  text-align: center;
  width: auto;
}

.mariola-pdp__buy-col .mariola-qty-stepper .qty:focus {
  border: 0;
  box-shadow: none;
  outline: 0;
}

.mariola-pdp__buy-col .mariola-qty-stepper .qty::-webkit-outer-spin-button,
.mariola-pdp__buy-col .mariola-qty-stepper .qty::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.mariola-pdp__buy-col .quantity:not(.mariola-qty-stepper) .qty {
  border: 1px solid var(--mariola-brand);
  border-radius: var(--mariola-btn-radius);
  font-size: var(--mariola-text-sm);
  max-width: none;
  min-height: var(--mariola-btn-height);
  padding: 0.5rem 0.75rem;
  width: 100%;
}

.woocommerce .mariola-pdp__buy-col button.single_add_to_cart_button.button.alt.product-card__cart-btn,
.mariola-pdp__buy-col .single_add_to_cart_button.product-card__cart-btn,
.mariola-pdp__buy-col .product-card__cart-btn {
  align-items: center;
  background-color: var(--mariola-brand);
  background-image: none;
  border: 0;
  border-radius: var(--mariola-btn-radius);
  box-sizing: border-box;
  color: var(--mariola-white);
  display: inline-flex;
  flex-shrink: 0;
  font-size: var(--mariola-text-sm);
  font-weight: 600;
  height: var(--mariola-btn-height);
  justify-content: center;
  letter-spacing: 0.01em;
  line-height: 1;
  margin: 0;
  min-height: var(--mariola-btn-height);
  opacity: 1;
  padding: 0 0.75rem;
  pointer-events: auto;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  transition: opacity 0.2s ease, background-color 0.15s ease;
  width: 100%;
}

.woocommerce .mariola-pdp__buy-col button.single_add_to_cart_button.button.alt.product-card__cart-btn:hover,
.woocommerce .mariola-pdp__buy-col button.single_add_to_cart_button.button.alt.product-card__cart-btn:focus,
.mariola-pdp__buy-col .single_add_to_cart_button.product-card__cart-btn:hover,
.mariola-pdp__buy-col .single_add_to_cart_button.product-card__cart-btn:focus,
.mariola-pdp__buy-col .product-card__cart-btn:hover,
.mariola-pdp__buy-col .product-card__cart-btn:focus {
  background-color: var(--mariola-black);
  background-image: none;
  color: var(--mariola-white);
  outline: 0;
}

.woocommerce .mariola-pdp__buy-col button.single_add_to_cart_button.button.alt.product-card__cart-btn.is-added,
.mariola-pdp__buy-col .single_add_to_cart_button.product-card__cart-btn.is-added,
.mariola-pdp__buy-col .product-card__cart-btn.is-added {
  background-color: var(--mariola-black);
  background-image: none;
  color: var(--mariola-white);
  cursor: default;
  opacity: 1;
}

.woocommerce .mariola-pdp__buy-col button.single_add_to_cart_button.button.alt.product-card__cart-btn.is-added:hover,
.woocommerce .mariola-pdp__buy-col button.single_add_to_cart_button.button.alt.product-card__cart-btn.is-added:focus,
.mariola-pdp__buy-col .single_add_to_cart_button.product-card__cart-btn.is-added:hover,
.mariola-pdp__buy-col .single_add_to_cart_button.product-card__cart-btn.is-added:focus,
.mariola-pdp__buy-col .product-card__cart-btn.is-added:hover,
.mariola-pdp__buy-col .product-card__cart-btn.is-added:focus {
  background-color: var(--mariola-black);
  color: var(--mariola-white);
}

.mariola-pdp__buy-col .single_add_to_cart_button.loading,
.mariola-pdp__buy-col .product-card__cart-btn.loading {
  opacity: 0.72;
}

body.mariola-single-product .woocommerce-notices-wrapper {
  display: none !important;
}

.mariola-pdp-toast {
  bottom: 1.25rem;
  max-width: min(22rem, calc(100vw - 2rem));
  pointer-events: none;
  position: fixed;
  right: 1.25rem;
  transform: translate3d(0, calc(100% + 1.5rem), 0);
  transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s linear 0.32s;
  visibility: hidden;
  will-change: transform;
  z-index: 100210;
}

.mariola-pdp-toast.is-visible {
  pointer-events: auto;
  transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s linear 0s;
  visibility: visible;
}

.mariola-pdp-toast.is-open {
  transform: translate3d(0, 0, 0);
}

.mariola-pdp-toast__inner {
  align-items: flex-start;
  background: var(--mariola-white);
  border-radius: var(--mariola-btn-radius);
  box-shadow: 0 0 40px rgba(0, 0, 0, 0.12);
  display: flex;
  gap: 0.75rem;
  padding: 1rem 1rem 1rem 1.25rem;
}

.mariola-pdp-toast__message {
  color: var(--mariola-black);
  flex: 1 1 auto;
  font-family: var(--bs-body-font-family);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.45;
  margin: 0;
}

.mariola-pdp-toast__close {
  align-items: center;
  background: transparent;
  border: 0;
  color: var(--mariola-black);
  cursor: pointer;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 1.25rem;
  height: 1.5rem;
  justify-content: center;
  line-height: 1;
  margin: 0;
  padding: 0;
  width: 1.5rem;
}

.mariola-pdp-toast__close::before {
  content: "×";
}

.mariola-pdp-toast__close:hover,
.mariola-pdp-toast__close:focus {
  color: var(--mariola-brand);
  outline: 0;
}

.mariola-pdp-toast.is-error .mariola-pdp-toast__inner {
  background: #f8e4e4;
}

@media (max-width: 782px) {
  .mariola-pdp-toast {
    bottom: auto !important;
    left: 1rem;
    right: 1rem;
    max-width: none;
    top: max(1rem, env(safe-area-inset-top, 0px)) !important;
    transform: translate3d(0, calc(-1 * (100% + 1.5rem)), 0);
  }
}

.mariola-pdp__buy-col .variations.mariola-pdp__variations,
.mariola-pdp__buy-col .mariola-pdp__variations .variations {
  border: 0;
  display: block;
  margin-bottom: var(--mariola-space-3);
  width: 100%;
}

.mariola-pdp__buy-col .mariola-pdp__variations .variations tbody,
.mariola-pdp__buy-col .mariola-pdp__variations .variations tr,
.mariola-pdp__buy-col .mariola-pdp__variations .variations td,
.mariola-pdp__buy-col .mariola-pdp__variations .variations th {
  border: 0;
  display: block;
  padding: 0;
}

.mariola-pdp__buy-col .mariola-pdp__variations .variations .label {
  font-size: 0.875rem;
  font-weight: 500;
  line-height: var(--mariola-leading-snug);
  margin: 0 0 var(--mariola-space-2);
  text-align: left;
}

.mariola-pdp__buy-col .mariola-pdp__variations .variations .label label {
  display: block;
  font-size: inherit;
  font-weight: inherit;
  margin: 0;
  transition: color 0.45s ease;
}

.mariola-pdp__buy-col .mariola-pdp__variations .variations .label .mariola-pdp__size-stock {
  display: flex;
  margin: 0.35rem 0 0;
  width: 100%;
}

.mariola-pdp__buy-col .mariola-pdp__variations .variations .label .mariola-pdp__size-stock .mariola-pdp__price-label {
  color: var(--mariola-muted);
  font-size: 0.8125rem;
  font-weight: 400;
  line-height: var(--mariola-leading-normal);
}

.mariola-pdp__variation-value {
  width: 100%;
  border-radius: var(--mariola-btn-radius);
  transition: box-shadow 0.45s ease;
}

/* Нативный select нужен WC/JS, но не должен быть виден рядом с кнопками размеров. */
.mariola-pdp__variation-select,
select.mariola-pdp__variation-select {
  display: none !important;
}

.mariola-pdp__variation-btn[data-value="individualno"],
.product-card__size-btn[data-value="individualno"] {
  display: none !important;
}

.mariola-pdp__variation-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  overflow: visible;
}

.mariola-pdp__variation-btn {
  align-items: center;
  background: var(--mariola-white);
  border: 1px solid var(--mariola-border);
  border-radius: var(--mariola-btn-radius);
  color: var(--mariola-black);
  cursor: pointer;
  display: inline-flex;
  font-size: 0.875rem;
  font-weight: 500;
  justify-content: center;
  line-height: 1.2;
  min-height: 40px;
  min-width: 48px;
  padding: 0.5rem 0.875rem;
  position: relative;
  transition: border-color 0.15s ease, background-color 0.15s ease, color 0.15s ease;
}

.mariola-pdp__variation-btn[data-stock-tip]::after,
.product-card__size-btn[data-stock-tip]::after {
  background: var(--mariola-black, #231f20);
  border-radius: 0.375rem;
  bottom: calc(100% + 8px);
  color: var(--mariola-white, #fff);
  content: attr(data-stock-tip);
  font-size: 0.75rem;
  font-weight: 500;
  left: 50%;
  line-height: 1.3;
  opacity: 0;
  padding: 0.35rem 0.55rem;
  pointer-events: none;
  position: absolute;
  transform: translateX(-50%) translateY(2px);
  transition: opacity 0.12s ease, transform 0.12s ease, visibility 0.12s ease;
  visibility: hidden;
  white-space: nowrap;
  z-index: 50;
}

.mariola-pdp__variation-btn[data-stock-tip]::before,
.product-card__size-btn[data-stock-tip]::before {
  border: 5px solid transparent;
  border-top-color: var(--mariola-black, #231f20);
  bottom: calc(100% - 2px);
  content: "";
  left: 50%;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  transform: translateX(-50%) translateY(2px);
  transition: opacity 0.12s ease, transform 0.12s ease, visibility 0.12s ease;
  visibility: hidden;
  z-index: 50;
}

.mariola-pdp__variation-btn[data-stock-tip]:hover::after,
.mariola-pdp__variation-btn[data-stock-tip]:hover::before,
.mariola-pdp__variation-btn[data-stock-tip]:focus-visible::after,
.mariola-pdp__variation-btn[data-stock-tip]:focus-visible::before,
.product-card__size-btn[data-stock-tip]:hover::after,
.product-card__size-btn[data-stock-tip]:hover::before,
.product-card__size-btn[data-stock-tip]:focus-visible::after,
.product-card__size-btn[data-stock-tip]:focus-visible::before {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
  visibility: visible;
}

.mariola-pdp__variation-btn:hover:not(:disabled),
.mariola-pdp__variation-btn:focus-visible:not(:disabled) {
  border-color: var(--mariola-brand);
  color: var(--mariola-brand);
  outline: 0;
}

.mariola-pdp__variation-btn.is-in-stock {
  color: #1f8a3b;
}

.mariola-pdp__variation-btn.is-out-of-stock {
  color: #d4a017;
}

.mariola-pdp__variation-btn.is-in-stock:hover:not(:disabled),
.mariola-pdp__variation-btn.is-in-stock:focus-visible:not(:disabled) {
  border-color: #1f8a3b;
  color: #1f8a3b;
}

.mariola-pdp__variation-btn.is-out-of-stock:hover:not(:disabled),
.mariola-pdp__variation-btn.is-out-of-stock:focus-visible:not(:disabled) {
  border-color: #d4a017;
  color: #d4a017;
}

.mariola-pdp__variation-btn.is-selected {
  background: var(--mariola-brand);
  border-color: var(--mariola-brand);
  color: var(--mariola-white);
}

.mariola-pdp__variation-btn.is-selected.is-in-stock,
.mariola-pdp__variation-btn.is-selected.is-in-stock:hover:not(:disabled),
.mariola-pdp__variation-btn.is-selected.is-in-stock:focus-visible:not(:disabled) {
  background: #1f8a3b;
  border-color: #1f8a3b;
  color: var(--mariola-white);
}

.mariola-pdp__variation-btn.is-selected.is-out-of-stock,
.mariola-pdp__variation-btn.is-selected.is-out-of-stock:hover:not(:disabled),
.mariola-pdp__variation-btn.is-selected.is-out-of-stock:focus-visible:not(:disabled) {
  background: #d4a017;
  border-color: #d4a017;
  color: var(--mariola-white);
}

.mariola-pdp__variation-btn.is-unavailable {
  color: var(--mariola-muted);
  cursor: not-allowed;
  opacity: 0.45;
}

.mariola-pdp__variation-btn:disabled {
  color: var(--mariola-muted);
  cursor: not-allowed;
  opacity: 0.45;
}

.mariola-pdp__variation.is-selection-required .label label {
  color: var(--mariola-brand);
}

.mariola-pdp__variation.is-selection-required .mariola-pdp__variation-value {
  box-shadow: 0 0 0 1px var(--mariola-brand);
  padding: 2px;
}

.mariola-pdp__variation.is-selection-required .mariola-pdp__variation-buttons {
  animation: mariola-pdp-variation-pulse 1.2s ease-in-out infinite;
  transition: box-shadow 0.45s ease;
}

.mariola-pdp__variation.is-selection-required.is-fading-out .label label {
  color: inherit;
}

.mariola-pdp__variation.is-selection-required.is-fading-out .mariola-pdp__variation-value {
  box-shadow: 0 0 0 1px transparent;
}

.mariola-pdp__variation.is-selection-required.is-fading-out .mariola-pdp__variation-buttons {
  animation: none;
  box-shadow: none;
}

.mariola-pdp__variation-hint {
  background: color-mix(in srgb, var(--mariola-brand) 8%, var(--mariola-white));
  border: 1px solid var(--mariola-brand);
  border-radius: var(--mariola-btn-radius);
  color: var(--mariola-brand);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: var(--mariola-leading-snug);
  margin: 0;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  padding: 0 0.875rem;
  transition: max-height 0.28s ease, opacity 0.28s ease, margin 0.28s ease, padding 0.28s ease;
}

.mariola-pdp__variation-hint.is-visible {
  margin-top: 0.75rem;
  max-height: 12rem;
  opacity: 1;
  padding: 0.625rem 0.875rem;
}

@keyframes mariola-pdp-variation-pulse {
  0%,
  100% {
    box-shadow: 0 0 0 0 rgba(0, 68, 69, 0.28);
  }

  50% {
    box-shadow: 0 0 0 6px rgba(0, 68, 69, 0.12);
  }
}

@media (prefers-reduced-motion: reduce) {
  .mariola-pdp__variation.is-selection-required .mariola-pdp__variation-buttons {
    animation: none;
  }

  .mariola-pdp__variation.is-selection-required .label label,
  .mariola-pdp__variation-value,
  .mariola-pdp__variation.is-selection-required .mariola-pdp__variation-buttons {
    transition: none;
  }
}

.mariola-pdp__buy-col .variations {
  margin-bottom: var(--mariola-space-3);
  width: 100%;
}

.mariola-pdp__buy-col .variations .label,
.mariola-pdp__buy-col .variations .value {
  font-size: 0.875rem;
  font-style: normal;
}

.mariola-pdp__buy-col .reset_variations {
  display: none;
}

.mariola-pdp__size-guide {
  margin-top: 0;
  width: 100%;
}

.mariola-pdp__custom-size-field + .mariola-pdp__size-guide {
  margin-top: var(--mariola-space-3);
}

.mariola-pdp__size-guide-toggle {
  background: transparent;
  border: 0;
  color: var(--mariola-muted);
  cursor: pointer;
  font-size: 0.8125rem;
  font-weight: 400;
  line-height: var(--mariola-leading-normal);
  padding: 0;
  text-align: left;
  text-decoration: none;
  text-transform: none;
}

.mariola-pdp__size-guide-toggle:hover,
.mariola-pdp__size-guide-toggle:focus-visible {
  color: var(--mariola-black);
  outline: 0;
  text-decoration: none;
}

.mariola-pdp__size-guide-panel {
  display: grid;
  gap: var(--mariola-space-3);
  margin-top: var(--mariola-space-3);
  width: 100%;
}

.mariola-pdp__size-guide-panel[hidden] {
  display: none;
}

.mariola-pdp__size-guide-text {
  color: var(--mariola-black);
  font-size: 0.8125rem;
  line-height: var(--mariola-leading-normal);
  margin: 0;
}

.mariola-pdp__size-guide-field {
  display: grid;
  gap: 6px;
}

.mariola-pdp__size-guide-label {
  color: var(--mariola-black);
  font-size: 0.8125rem;
  font-weight: 500;
  line-height: var(--mariola-leading-normal);
  margin: 0;
}

.mariola-pdp__size-guide-input-wrap {
  align-items: center;
  display: flex;
  gap: 8px;
}

.mariola-pdp__size-guide-input {
  -moz-appearance: textfield;
  appearance: textfield;
  border: 1px solid var(--mariola-border);
  border-radius: var(--mariola-btn-radius);
  color: var(--mariola-black);
  flex: 1 1 auto;
  font-size: 0.875rem;
  line-height: var(--mariola-leading-normal);
  min-height: 40px;
  min-width: 0;
  padding: 0.5rem 0.75rem;
}

.mariola-pdp__size-guide-input:focus {
  border-color: var(--mariola-brand);
  outline: 0;
}

.mariola-pdp__size-guide-input::-webkit-outer-spin-button,
.mariola-pdp__size-guide-input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.mariola-pdp__size-guide-unit {
  color: var(--mariola-muted);
  flex: 0 0 auto;
  font-size: 0.8125rem;
}

.mariola-pdp__size-guide-result {
  align-items: baseline;
  column-gap: 8px;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  margin: 0;
  row-gap: 0.35rem;
}

.mariola-pdp__size-guide-result-label {
  color: var(--mariola-black);
  font-size: 0.8125rem;
  font-weight: 500;
  grid-column: 1;
  grid-row: 1;
  line-height: var(--mariola-leading-normal);
  margin: 0;
}

.mariola-pdp__size-guide-result-match {
  grid-column: 2;
  grid-row: 1;
  justify-self: start;
  text-transform: none;
}

.mariola-pdp__size-guide-result-custom {
  color: var(--mariola-black);
  font-size: 0.8125rem;
  font-weight: 500;
  grid-column: 2;
  grid-row: 1;
  line-height: var(--mariola-leading-normal);
  min-width: 0;
}

.mariola-pdp__size-guide-result-custom.has-manager-hint {
  display: contents;
}

.mariola-pdp__size-guide-result-custom-title {
  display: block;
  grid-column: 2;
  grid-row: 1;
  line-height: var(--mariola-leading-normal);
}

.mariola-pdp__size-guide-result-custom-hint {
  color: rgba(0, 0, 0, 0.55);
  display: block;
  font-size: 0.8125rem;
  font-weight: 400;
  grid-column: 1 / -1;
  grid-row: 2;
  line-height: 1.4;
}

.mariola-pdp__size-guide-result-custom-hint a {
  color: var(--mariola-brand);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.mariola-pdp__size-guide-result-custom-hint a:hover,
.mariola-pdp__size-guide-result-custom-hint a:focus {
  color: var(--mariola-black);
}

.mariola-pdp__size-guide-more {
  color: var(--mariola-brand);
  font-size: 0.8125rem;
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 2px;
  width: fit-content;
}

.mariola-pdp__size-guide-more:hover,
.mariola-pdp__size-guide-more:focus {
  color: var(--mariola-black);
}

.mariola-size-guide-page {
  display: flex;
  justify-content: center;
  margin: 0 auto 2.5rem;
  max-width: 100%;
  width: 100%;
}

.mariola-size-guide-page__card {
  background: var(--mariola-white, #fff);
  border: 1px solid rgba(0, 68, 69, 0.14);
  border-radius: 1rem;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.06);
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin: 0 auto;
  max-width: 32rem;
  padding: 1.5rem 1.5rem 1.35rem;
  text-align: left;
  width: min(100%, 32rem);
}

.mariola-size-guide-page__title {
  color: var(--mariola-black, #231f20);
  font-size: 1.25rem;
  font-weight: 600;
  line-height: var(--mariola-leading-tight, 1.2);
  margin: 0;
}

.mariola-size-guide-page__lead {
  color: rgba(0, 0, 0, 0.62);
  font-size: 0.9375rem;
  font-weight: 400;
  line-height: 1.45;
  margin: 0;
}

.mariola-size-guide-page__lead + .mariola-size-guide-page__panel,
.mariola-size-guide-page__lead + .mariola-pdp__size-guide-panel {
  margin-top: -0.45rem;
}

.mariola-size-guide-page .mariola-pdp__size-guide-panel,
.mariola-size-guide-page__panel {
  display: flex;
  flex-direction: column;
  gap: 0.875rem;
  margin-top: 0;
  text-align: left;
}

.mariola-size-guide-page .mariola-pdp__size-guide-panel[hidden] {
  display: flex;
}

.mariola-size-guide-page .mariola-pdp__size-guide-text {
  color: rgba(0, 0, 0, 0.72);
  font-size: 0.875rem;
  text-align: left;
}

.mariola-size-guide-page .mariola-pdp__size-guide-field {
  align-items: stretch;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  width: 100%;
}

.mariola-size-guide-page .mariola-pdp__size-guide-label {
  font-size: 0.875rem;
  font-weight: 500;
  text-align: left;
  width: 100%;
}

.mariola-size-guide-page .mariola-pdp__size-guide-input-wrap {
  justify-content: flex-start;
  max-width: none;
  width: 100%;
}

.mariola-size-guide-page .mariola-pdp__size-guide-input {
  background: #f7f8f8;
  border: 1px solid rgba(0, 68, 69, 0.18);
  border-radius: 0.625rem;
  flex: 1 1 auto;
  font-size: 1rem;
  min-height: 2.75rem;
  padding: 0.625rem 0.875rem;
  text-align: left;
}

.mariola-size-guide-page .mariola-pdp__size-guide-input:focus {
  background: var(--mariola-white, #fff);
  border-color: var(--mariola-brand, #004445);
  box-shadow: 0 0 0 3px rgba(0, 68, 69, 0.12);
  outline: 0;
}

.mariola-size-guide-page .mariola-pdp__size-guide-unit {
  color: rgba(0, 0, 0, 0.55);
  font-size: 0.875rem;
  font-weight: 500;
}

.mariola-size-guide-page__result {
  align-items: center;
  background: rgba(0, 68, 69, 0.06);
  border: 1px solid rgba(0, 68, 69, 0.12);
  border-radius: 0.75rem;
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 0.5rem;
  justify-content: flex-start;
  margin-top: 0.25rem;
  padding: 0.75rem 1rem;
  text-align: left;
}

.mariola-size-guide-page__result .mariola-pdp__size-guide-result-label,
.mariola-size-guide-page__result .mariola-pdp__size-guide-result-custom {
  font-size: 1rem;
  font-weight: 600;
}

.mariola-size-guide-page__note {
  border-top: 1px solid rgba(0, 0, 0, 0.08);
  color: rgba(0, 0, 0, 0.62);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.45;
  margin: 0.35rem 0 0;
  padding-top: 1rem;
  text-align: left;
}

.mariola-size-guide-page__note a {
  color: var(--mariola-brand, #004445);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.mariola-size-guide-page__note a:hover,
.mariola-size-guide-page__note a:focus {
  color: var(--mariola-black, #231f20);
}

.entry-content .mariola-size-guide-page__note a {
  color: var(--mariola-brand, #004445);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.entry-content .mariola-size-guide-page__note a:hover,
.entry-content .mariola-size-guide-page__note a:focus {
  color: var(--mariola-black, #231f20);
}

.mariola-pdp__guest-banner {
  align-items: center;
  border: 1px solid rgba(0, 63, 44, 0.45);
  border-radius: 15px;
  display: grid;
  gap: var(--mariola-space-4);
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  margin-bottom: var(--mariola-space-6);
  padding: 15px;
}

.mariola-pdp__guest-banner-copy {
  min-width: 0;
}

.mariola-pdp__guest-banner-title {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: var(--mariola-leading-tight);
  margin: 0 0 var(--mariola-space-2);
}

.mariola-pdp__guest-banner-text {
  color: var(--mariola-black);
  font-size: 0.9375rem;
  line-height: var(--mariola-leading-normal);
  margin: 0;
}

.mariola-pdp__guest-banner-actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
}

.mariola-pdp__guest-banner-btn {
  align-items: center;
  border-radius: 5px;
  display: inline-flex;
  font-size: var(--mariola-text-sm);
  font-weight: 500;
  justify-content: center;
  line-height: 1.2;
  min-height: 40px;
  padding: 0.625rem 1.25rem;
  text-decoration: none;
  text-transform: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.mariola-pdp__guest-banner-btn--primary {
  background: var(--mariola-brand);
  border: 1px solid var(--mariola-brand);
  color: var(--mariola-white);
}

.mariola-pdp__guest-banner-btn--primary:hover,
.mariola-pdp__guest-banner-btn--primary:focus {
  background: var(--mariola-black);
  border-color: var(--mariola-black);
  color: var(--mariola-white);
}

.mariola-pdp__guest-banner-btn--secondary {
  background: #005152;
  border: 1px solid #005152;
  color: var(--mariola-white);
}

.mariola-pdp__guest-banner-btn--secondary:hover,
.mariola-pdp__guest-banner-btn--secondary:focus {
  background: var(--mariola-black);
  border-color: var(--mariola-black);
  color: var(--mariola-white);
}

.mariola-pdp__section-title {
  color: var(--mariola-black);
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
  margin: 0 0 var(--mariola-space-3);
  text-transform: none;
}

.mariola-pdp__details {
  display: flex;
  flex-direction: column;
  gap: var(--mariola-space-3);
  margin-bottom: 0;
}

.mariola-pdp__spec-section-title {
  color: var(--mariola-black);
  font-family: var(--bs-body-font-family);
  font-size: 0.875rem;
  font-weight: 500;
  line-height: 1.35;
  margin: 0;
}

.mariola-pdp__specs {
  display: flex;
  flex-direction: column;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}

.mariola-pdp__spec {
  align-items: end;
  column-gap: 4px;
  display: grid;
  font-family: var(--bs-body-font-family);
  font-size: 0.875rem;
  font-style: normal;
  font-weight: 400;
  grid-template-columns: auto 1fr auto;
  line-height: 1.35;
  margin: 0;
}

.mariola-pdp__spec-title {
  color: var(--mariola-black);
  font-weight: 400;
  white-space: nowrap;
}

.mariola-pdp__spec-separator {
  border-bottom: 1px dotted #e7eaed;
  height: 0;
  margin-bottom: 0.25em;
  min-width: 2rem;
  width: 100%;
}

.mariola-pdp__spec-value {
  color: var(--mariola-black);
  font-style: normal;
  font-weight: 400;
  text-align: right;
  white-space: normal;
}

.mariola-pdp__spec-value p {
  font-size: inherit;
  font-style: normal;
  margin: 0;
}

.mariola-pdp__spec-value a {
  color: inherit;
  font-size: inherit;
  font-style: normal;
  text-decoration: none;
  transition: color 0.24s ease-in-out;
}

.mariola-pdp__spec-value a:hover,
.mariola-pdp__spec-value a:focus {
  color: var(--mariola-brand);
}

.mariola-pdp__similar {
  display: flex;
  flex-direction: column;
  gap: var(--mariola-space-3);
  margin-top: var(--mariola-space-3);
}

.mariola-pdp__similar-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.mariola-pdp__similar-link {
  background: #fff;
  border: 1px solid rgba(0, 90, 91, 0.49);
  border-radius: 10px;
  box-sizing: border-box;
  display: block;
  flex: 0 0 5.2rem;
  height: 5.2rem;
  overflow: hidden;
  text-decoration: none;
  transition: border-color 0.18s ease, box-shadow 0.18s ease;
  width: 5.2rem;
}

.mariola-pdp__similar-link:hover,
.mariola-pdp__similar-link:focus-visible {
  border-color: var(--mariola-brand);
  box-shadow: 0 0 0 1px var(--mariola-brand);
  outline: 0;
}

.mariola-pdp__similar-link img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.mariola-pdp__coating-switcher {
  display: flex;
  gap: 0.625rem;
  margin-top: 1rem;
}

.mariola-pdp__coating-option {
  border: 2px solid #d9dde2;
  border-radius: 50%;
  box-sizing: border-box;
  display: inline-block;
  flex-shrink: 0;
  height: 1.75rem;
  text-decoration: none;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
  width: 1.75rem;
}

.mariola-pdp__coating-option--gold {
  background: radial-gradient(circle at 35% 30%, #fffcf9 0%, #ffdf98 42%, #bf764d 100%);
}

.mariola-pdp__coating-option--silver {
  background: radial-gradient(circle at 35% 30%, #f5f7fa 0%, #c7ced6 45%, #8f98a3 100%);
}

.mariola-pdp__coating-option:hover,
.mariola-pdp__coating-option:focus-visible {
  border-color: var(--mariola-brand);
  box-shadow: 0 0 0 1px var(--mariola-brand);
  outline: 0;
  transform: scale(1.05);
}

.mariola-pdp__coating-option.is-active {
  border-color: #d9dde2;
}

.mariola-pdp__quality-trigger {
  align-items: center;
  background: transparent;
  border: 0;
  border-top: 1px solid #e3e3e3;
  color: var(--mariola-black);
  cursor: pointer;
  display: flex;
  font-family: var(--bs-body-font-family);
  font-size: 0.875rem;
  font-weight: 400;
  gap: 0.75rem;
  justify-content: space-between;
  line-height: 1.35;
  margin-top: var(--mariola-space-3);
  min-height: 2.5rem;
  padding: 0.5rem 0 0;
  text-align: left;
  text-transform: none;
  width: 100%;
}

.mariola-pdp__quality-trigger:hover,
.mariola-pdp__quality-trigger:focus-visible {
  color: var(--mariola-brand);
  outline: 0;
}

.mariola-pdp__quality-trigger-label {
  flex: 1 1 auto;
}

.mariola-pdp__quality-trigger-icon {
  border-right: 1.5px solid currentColor;
  border-top: 1.5px solid currentColor;
  flex-shrink: 0;
  height: 0.5rem;
  margin-top: 0.125rem;
  transform: rotate(45deg);
  width: 0.5rem;
}

.mariola-pdp-quality-modal {
  align-items: center;
  display: none;
  inset: 0;
  justify-content: center;
  padding: 1rem;
  position: fixed;
  z-index: 10060;
}

.mariola-pdp-quality-modal.is-open {
  display: flex;
}

body.mariola-pdp-quality-modal-open {
  overflow: hidden;
}

.mariola-pdp-quality-modal__backdrop {
  background: rgba(0, 0, 0, 0.55);
  inset: 0;
  position: absolute;
}

.mariola-pdp-quality-modal__panel {
  background: var(--mariola-white);
  border-radius: var(--mariola-btn-radius);
  box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
  display: flex;
  flex-direction: column;
  max-height: calc(100vh - 2rem);
  max-width: 40.625rem;
  overflow: hidden;
  padding: 1.5rem 1.5rem 1.25rem;
  position: relative;
  width: 100%;
  z-index: 1;
}

.mariola-pdp-quality-modal__panel--fit {
  min-height: 0;
}

.mariola-pdp-quality-modal__scroll {
  flex: 1 1 auto;
  margin: 0 -0.25rem;
  min-height: 0;
  overflow: auto;
  padding: 0 0.25rem;
}

.mariola-pdp-quality-modal__accordion {
  --bs-accordion-border-color: #e3e3e3;
  --bs-accordion-btn-bg: var(--mariola-white);
  --bs-accordion-btn-color: var(--mariola-black);
  --bs-accordion-active-bg: var(--mariola-white);
  --bs-accordion-active-color: var(--mariola-black);
  --bs-accordion-btn-focus-box-shadow: none;
  margin: 0;
  width: 100%;
}

.mariola-pdp-quality-modal__accordion-item {
  border-left: 0;
  border-right: 0;
}

.mariola-pdp-quality-modal__accordion .accordion-header {
  margin: 0;
}

.mariola-pdp-quality-modal__accordion .accordion-button {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.35;
  padding: 0.875rem 0;
  text-transform: none;
}

.mariola-pdp-quality-modal__accordion .accordion-button:not(.collapsed) {
  box-shadow: none;
  color: var(--mariola-black);
}

.mariola-pdp-quality-modal__accordion .accordion-body {
  color: var(--mariola-black);
  font-size: 0.875rem;
  line-height: var(--mariola-leading-relaxed);
  padding: 0 0 1rem;
}

.mariola-pdp-quality-modal__section {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.mariola-pdp-quality-modal__section-media {
  flex-shrink: 0;
  text-align: center;
}

.mariola-pdp-quality-modal__section-media img {
  display: block;
  height: auto;
  margin: 0 auto;
  max-width: 100%;
  width: min(100%, 17.5rem);
}

.mariola-pdp-quality-modal__section-text > :last-child {
  margin-bottom: 0;
}

.mariola-pdp-quality-modal__section-text ol {
  margin: 0.75rem 0 0;
  padding-left: 1.25rem;
}

.mariola-pdp-quality-modal__section-text li + li {
  margin-top: 0.35rem;
}

.mariola-pdp-quality-modal__footer {
  flex-shrink: 0;
  margin-top: 1rem;
  padding-top: 0.25rem;
}

.mariola-pdp-quality-modal__ok {
  background: var(--mariola-brand);
  border: 0;
  border-radius: var(--mariola-btn-radius);
  color: var(--mariola-white);
  cursor: pointer;
  display: block;
  font-size: var(--mariola-text-sm);
  font-weight: 600;
  height: var(--mariola-btn-height);
  line-height: 1;
  margin: 0 auto;
  min-height: var(--mariola-btn-height);
  min-width: 10rem;
  padding: 0 1.5rem;
  text-align: center;
  width: 100%;
}

.mariola-pdp-quality-modal__ok:hover,
.mariola-pdp-quality-modal__ok:focus {
  background: var(--mariola-black);
  color: var(--mariola-white);
}

@media (min-width: 576px) {
  .mariola-pdp-quality-modal__section {
    align-items: flex-start;
    flex-direction: row;
  }

  .mariola-pdp-quality-modal__section-media {
    width: 42%;
  }

  .mariola-pdp-quality-modal__section-text {
    flex: 1;
    min-width: 0;
  }

  .mariola-pdp-quality-modal__ok {
    width: auto;
  }
}

.mariola-pdp-quality-modal__close {
  background: transparent;
  border: 0;
  color: var(--mariola-black);
  cursor: pointer;
  font-size: 1.5rem;
  line-height: 1;
  padding: 0;
  position: absolute;
  right: 0.75rem;
  top: 0.5rem;
}

.mariola-pdp-quality-modal__close:hover,
.mariola-pdp-quality-modal__close:focus {
  color: var(--mariola-brand);
}

.mariola-pdp-quality-modal__title {
  flex-shrink: 0;
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.35;
  margin: 0 2rem 1rem 0;
}

.mariola-pdp-quality-modal__body {
  color: var(--mariola-black);
  font-size: 0.875rem;
  line-height: var(--mariola-leading-relaxed);
}

.mariola-pdp-quality-modal__body > :last-child {
  margin-bottom: 0;
}


.mariola-pdp__sizes {
  margin-bottom: var(--mariola-space-4);
}

.mariola-pdp__sizes-table {
  border-collapse: collapse;
  margin: 0;
  width: 100%;
}

.mariola-pdp__sizes-table th,
.mariola-pdp__sizes-table td {
  border-bottom: 1px solid var(--mariola-border);
  font-size: var(--mariola-text-base);
  line-height: var(--mariola-leading-normal);
  padding: 0.5rem 0;
  text-align: left;
  vertical-align: top;
}

.mariola-pdp__sizes-table thead th {
  color: var(--mariola-muted);
  font-weight: 500;
}

.mariola-pdp__sizes-table tbody th {
  color: var(--mariola-black);
  font-weight: 500;
}

.mariola-pdp__sizes-status--instock {
  color: var(--mariola-brand);
}

.mariola-pdp__sizes-status--backorder {
  color: var(--mariola-muted);
}

.mariola-pdp__sizes-status--outofstock {
  color: var(--mariola-black);
}


.mariola-pdp__wholesale-note {
  color: var(--mariola-black);
  font-size: 0.875rem;
  line-height: var(--mariola-leading-normal);
  margin: 10px 0 0;
  text-align: center;
}

.mariola-pdp__wholesale-note a {
  color: var(--mariola-brand);
  font-weight: 600;
  text-decoration: none;
}

.mariola-pdp__cta {
  display: grid;
  gap: 10px;
  margin-bottom: 0;
}

.mariola-pdp__cta-btn {
  align-items: center;
  background: var(--mariola-white);
  border: 1px solid var(--mariola-black);
  border-radius: 5px;
  color: var(--mariola-black);
  display: inline-flex;
  font-size: var(--mariola-text-sm);
  font-weight: 500;
  justify-content: center;
  line-height: 1.2;
  min-height: 40px;
  padding: 0.625rem 1rem;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
  width: 100%;
}

.mariola-pdp__cta-btn:hover,
.mariola-pdp__cta-btn:focus {
  background: var(--mariola-surface);
  border-color: var(--mariola-brand);
  color: var(--mariola-brand);
}

.mariola-pdp__cta-btn.btn-black {
  background: var(--mariola-brand);
  border-color: var(--mariola-brand);
  color: var(--mariola-white);
}

.mariola-pdp__cta-btn.btn-black:hover,
.mariola-pdp__cta-btn.btn-black:focus {
  background: var(--mariola-black);
  border-color: var(--mariola-black);
  color: var(--mariola-white);
}

.mariola-pdp__content {
  display: flex;
  flex-direction: column;
  gap: 0;
  margin-top: var(--mariola-space-2);
  min-width: 0;
  width: 100%;
}

.mariola-pdp__description {
  color: var(--mariola-black);
  font-size: var(--mariola-text-base);
  line-height: var(--mariola-leading-relaxed);
  margin: 0;
  max-width: none;
  text-align: justify;
  width: 100%;
}

.mariola-pdp__description p,
.mariola-pdp__description li {
  text-align: justify;
}

.mariola-pdp__description p:last-child {
  margin-bottom: 0;
}

.mariola-pdp__accordion {
  --bs-accordion-border-color: #e3e3e3;
  --bs-accordion-btn-bg: var(--mariola-white);
  --bs-accordion-btn-color: var(--mariola-black);
  --bs-accordion-active-bg: var(--mariola-white);
  --bs-accordion-active-color: var(--mariola-black);
  --bs-accordion-btn-focus-box-shadow: none;
  margin: var(--mariola-space-4) 0 0;
  width: 100%;
}

.mariola-pdp__accordion-item {
  border-left: 0;
  border-right: 0;
}

.mariola-pdp__accordion .accordion-header {
  margin: 0;
}

.mariola-pdp__accordion .accordion-button {
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.35;
  padding: 12px 0;
  text-transform: none;
}

.mariola-pdp__accordion .accordion-button:not(.collapsed) {
  box-shadow: none;
  color: var(--mariola-black);
}

.mariola-pdp__accordion .accordion-body {
  color: var(--mariola-black);
  font-size: 0.9em;
  line-height: var(--mariola-leading-relaxed);
  padding: 0 0 12px;
}

.mariola-pdp__shipping-methods {
  display: grid;
  gap: 1rem;
}

.mariola-pdp__shipping-method-title {
  margin: 0 0 0.35rem;
}

.mariola-pdp__shipping-method-desc,
.mariola-pdp__shipping-method-cost {
  margin: 0 0 0.25rem;
}

.mariola-pdp__shipping-method-cost {
  color: var(--mariola-muted, #666);
}

.mariola-pdp__accordion-more a {
  color: var(--mariola-black);
  font-weight: 400;
  position: relative;
  text-decoration: none;
  transition: color 0.24s ease-in-out;
}

.mariola-pdp__accordion-more a::after {
  background-color: var(--mariola-brand);
  bottom: 0;
  content: "";
  display: block;
  height: 1px;
  left: 0;
  position: absolute;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.24s ease-in-out;
  width: 100%;
}

.mariola-pdp__accordion-more a:hover,
.mariola-pdp__accordion-more a:focus {
  color: var(--mariola-brand);
}

.mariola-pdp__accordion-more a:hover::after,
.mariola-pdp__accordion-more a:focus::after {
  transform: scaleX(1);
}

.mariola-pdp__aside .upsells.products {
  margin-top: var(--mariola-space-8);
}

.mariola-pdp-related {
  margin-top: var(--mariola-space-8);
  max-width: 100%;
  width: 100%;
}

.mariola-pdp__aside .mariola-pdp-related {
  margin-top: 0;
}

.mariola-pdp__aside .mariola-pdp-related + .mariola-pdp-related {
  margin-top: var(--mariola-space-8);
}

.mariola-pdp-related--center {
  align-items: center;
  display: flex;
  flex-direction: column;
  width: 100%;
}

.mariola-pdp-related--center .mariola-pdp-related__title {
  text-align: center;
  width: 100%;
}

.mariola-pdp-related--center .wc-shop-content {
  width: 100%;
}

.mariola-pdp-related .wc-shop-content ul.products::before,
.mariola-pdp-related .wc-shop-content ul.products::after {
  content: none;
  display: none;
}

.entry-content .mariola-pdp-related__title {
  padding-left: 0;
}

.mariola-pdp-related__title {
  font-size: var(--mariola-title-catalog-size);
  font-weight: 600;
  line-height: var(--mariola-title-leading);
  margin: 0 0 var(--mariola-space-4);
  padding-left: 0;
  text-transform: none;
}

@media (max-width: 991.98px) {
  .mariola-pdp__grid {
    gap: var(--mariola-space-4);
  }

  .mariola-pdp__top {
    gap: var(--mariola-space-4);
    grid-template-columns: minmax(0, 1fr);
  }

  .mariola-pdp__gallery {
    position: static;
    top: auto;
  }

  .mariola-pdp__columns {
    grid-template-columns: minmax(0, 1fr);
  }

  .mariola-pdp__guest-banner {
    grid-template-columns: minmax(0, 1fr);
  }

  .mariola-pdp__guest-banner-actions {
    justify-content: flex-start;
  }

  .mariola-pdp__buy-col.summary {
    padding: 15px;
  }
}

.single-product .wc-main > .container {
  display: flow-root;
  padding-top: var(--mariola-space-3);
}

.single-product .woocommerce-breadcrumb {
  border: 0;
  clip: rect(0, 0, 0, 0);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px 0 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.mariola-pdp__back-header {
  column-gap: var(--mariola-space-6);
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 4fr);
  margin: 0 0 var(--mariola-space-4);
  min-width: 0;
  position: relative;
}

.mariola-pdp__back-link {
  align-items: center;
  color: var(--mariola-black);
  column-gap: 0.5rem;
  display: inline-flex;
  flex-shrink: 0;
  justify-content: center;
  left: 0;
  line-height: 0;
  min-height: 2.5rem;
  min-width: 2.5rem;
  position: absolute;
  text-decoration: none;
  top: 50%;
  transform: translateY(-50%);
  z-index: 1;
}

.mariola-pdp__back-label {
  display: none;
  font-size: 0.9375rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1.3;
  text-transform: uppercase;
  white-space: nowrap;
}

.mariola-pdp__back-link:hover,
.mariola-pdp__back-link:focus {
  color: var(--mariola-brand);
  outline: 0;
}

.mariola-pdp__back-link .mariola-icon,
.mariola-pdp__back-icon {
  color: currentColor;
}

.mariola-pdp__back-icon {
  display: block;
  height: 20px;
  width: 20px;
}

.mariola-pdp__back-title {
  font-size: 1rem;
  font-weight: 600;
  grid-column: 2;
  letter-spacing: normal;
  line-height: 1.35;
  margin: 0;
  min-width: 0;
  overflow: hidden;
  text-align: center;
  text-overflow: ellipsis;
  text-transform: none;
  white-space: nowrap;
}

.single-product div.product .mariola-pdp__back-title.product_title,
.single-product div.product .mariola-pdp__back-title.entry-title {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.35;
  margin: 0;
  text-transform: none;
}

@media (min-width: 992px) {
  .mariola-pdp__back-title,
  .single-product div.product .mariola-pdp__back-title.product_title,
  .single-product div.product .mariola-pdp__back-title.entry-title {
    font-size: 1.25rem;
    line-height: 1.5;
  }

  .mariola-pdp__back-link {
    justify-content: flex-start;
    min-width: 0;
    width: auto;
  }

  .mariola-pdp__back-label {
    display: inline;
  }
}

@media (max-width: 991.98px) {
  .mariola-pdp__back-header {
    align-items: flex-start;
    display: flex;
    gap: var(--mariola-space-2);
    grid-template-columns: none;
    text-align: left;
  }

  .mariola-pdp__back-link {
    position: relative;
    top: auto;
    transform: none;
  }

  .mariola-pdp__back-title,
  .single-product div.product .mariola-pdp__back-title.product_title,
  .single-product div.product .mariola-pdp__back-title.entry-title {
    flex: 1 1 auto;
    grid-column: auto;
    margin: 0;
    max-width: none;
    min-width: 0;
    overflow: visible;
    padding-top: calc((2.5rem - 1.35em) / 2);
    text-align: center;
    text-overflow: unset;
    white-space: normal;
  }
}

@media (max-width: 767.98px) {
  :root {
    --mariola-breadcrumb-size: var(--mariola-text-xs);
    --mariola-breadcrumb-leading: 1.25;
  }

  .wc-shop-header,
  .wc-shop-header.mb-4 {
    margin-bottom: var(--mariola-space-2);
    padding-top: var(--mariola-space-1);
  }

  .woocommerce .woocommerce-breadcrumb {
    padding-top: var(--mariola-space-1);
  }

  .single-product .wc-main > .container {
    padding-top: var(--mariola-space-2);
  }
}

.wc-shop-toolbar {
  align-items: center;
  background: var(--mariola-white);
  display: flex;
  flex-wrap: nowrap;
  gap: var(--mariola-space-4);
  justify-content: space-between;
  margin-bottom: 0.625rem;
  position: sticky;
  top: var(--site-header-height, 4.5rem);
  z-index: 1025;
}

.wc-shop-toolbar.is-stuck {
  padding-bottom: var(--mariola-space-3);
  padding-top: var(--mariola-space-3);
}

.wc-shop-toolbar__ordering {
  align-items: center;
  display: flex;
  flex: 1 1 auto;
  flex-wrap: nowrap;
  gap: var(--mariola-space-3);
  justify-content: flex-end;
  margin-left: auto;
  min-width: 0;
}

.wc-shop-toolbar__per-page {
  display: inline-flex;
  flex: 0 0 auto;
  gap: var(--mariola-space-1);
}

.wc-shop-toolbar__per-page-btn {
  align-items: center;
  background: transparent;
  border: 0;
  box-sizing: border-box;
  color: var(--mariola-black);
  cursor: pointer;
  display: inline-flex;
  font-size: var(--mariola-text-sm);
  font-weight: 500;
  justify-content: center;
  line-height: var(--mariola-leading-tight);
  min-width: 2.5rem;
  padding: var(--mariola-space-2) var(--mariola-space-3);
  text-decoration: none;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.wc-shop-toolbar__per-page-btn:hover,
.wc-shop-toolbar__per-page-btn:focus {
  background: var(--mariola-black);
  color: var(--mariola-white);
  outline: 0;
}

.wc-shop-toolbar__per-page-btn.is-active {
  background: var(--mariola-black);
  color: var(--mariola-white);
  pointer-events: none;
}

@media (max-width: 767.98px) {
  .wc-shop-toolbar__per-page {
    display: none;
  }
}

.wc-shop-toolbar__ordering .woocommerce-ordering {
  display: block;
  float: none;
  margin: 0;
  max-width: 100%;
  min-width: 0;
  text-align: right;
}

.wc-shop-toolbar__ordering .orderby {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: transparent;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 10L12 16L18 10' stroke='%23000' stroke-width='2' stroke-linecap='square'/%3E%3C/svg%3E");
  background-position: right 0.75rem center;
  background-repeat: no-repeat;
  background-size: 1em;
  box-sizing: border-box;
  cursor: pointer;
  line-height: var(--mariola-leading-tight);
  max-width: 100%;
  min-width: 0;
  overflow: hidden;
  padding: var(--mariola-space-2) 2.25rem var(--mariola-space-2) var(--mariola-space-4);
  text-overflow: ellipsis;
  white-space: nowrap;
  width: auto;
}

.wc-shop-orderby-sizer {
  left: -9999px;
  pointer-events: none;
  position: absolute;
  top: 0;
  visibility: hidden;
  white-space: nowrap;
}

.wc-shop-toolbar__ordering .orderby:hover,
.wc-shop-toolbar__ordering .orderby:focus {
  background-color: var(--mariola-black);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 10L12 16L18 10' stroke='%23fff' stroke-width='2' stroke-linecap='square'/%3E%3C/svg%3E");
  background-position: right 0.75rem center;
  background-repeat: no-repeat;
  background-size: 1em;
  color: var(--mariola-white);
  outline: 0;
}

.wc-shop-wholesale-banner {
  background: var(--mariola-white);
  border: 1px solid var(--mariola-border);
  border-radius: 8px;
  box-sizing: border-box;
  margin-bottom: var(--mariola-space-6);
  overflow: hidden;
  position: relative;
  width: 100%;
}

.wc-shop-wholesale-banner__close {
  background: transparent;
  border: 0;
  color: #d32f2f;
  cursor: pointer;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1;
  padding: 0.375rem 0.5rem;
  position: absolute;
  right: 0.375rem;
  top: 0.25rem;
  z-index: 2;
}

.wc-shop-wholesale-banner__close:hover,
.wc-shop-wholesale-banner__close:focus {
  color: #b71c1c;
  outline: 0;
}

.wc-shop-wholesale-banner__inner {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--mariola-space-4) var(--mariola-space-6);
  justify-content: space-between;
  padding: 1rem calc(var(--mariola-space-4) + 1.75rem) 1rem var(--mariola-space-4);
}

.wc-shop-wholesale-banner__content {
  flex: 1 1 16rem;
  min-width: 0;
}

.wc-shop-wholesale-banner__title {
  color: var(--mariola-brand);
  font-size: clamp(1.125rem, 2.2vw, 1.5rem);
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.35;
  margin: 0;
}

.wc-shop-wholesale-banner__title-line {
  display: block;
}

.wc-shop-wholesale-banner__title-line--accent {
  font-size: clamp(0.9375rem, 1.8vw, 1.125rem);
  font-weight: 400;
  letter-spacing: 0.01em;
  margin-top: 0.35rem;
}

.wc-shop-wholesale-banner__actions {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  gap: var(--mariola-space-3);
}

.wc-main .wc-shop-content .wc-shop-wholesale-banner__btn.button {
  border-radius: var(--mariola-btn-radius);
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: var(--mariola-text-sm);
  font-weight: 600;
  letter-spacing: 0.06em;
  line-height: var(--mariola-leading-tight);
  min-height: var(--mariola-btn-height);
  min-width: 9.5rem;
  padding: 0.75rem 1.5rem;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
  white-space: nowrap;
}

.wc-main .wc-shop-content .wc-shop-wholesale-banner__btn--primary.button {
  background: var(--mariola-brand);
  border: 1px solid var(--mariola-brand);
  color: var(--mariola-white);
}

.wc-main .wc-shop-content .wc-shop-wholesale-banner__btn--primary.button:hover,
.wc-main .wc-shop-content .wc-shop-wholesale-banner__btn--primary.button:focus {
  background: var(--mariola-black);
  border-color: var(--mariola-black);
  color: var(--mariola-white);
  outline: 0;
}

.wc-main .wc-shop-content .wc-shop-wholesale-banner__btn--secondary.button {
  background: var(--mariola-white);
  border: 1px solid var(--mariola-brand);
  color: var(--mariola-brand);
}

.wc-main .wc-shop-content .wc-shop-wholesale-banner__btn--secondary.button:hover,
.wc-main .wc-shop-content .wc-shop-wholesale-banner__btn--secondary.button:focus {
  background: rgba(0, 68, 69, 0.06);
  border-color: var(--mariola-brand);
  color: var(--mariola-brand);
  outline: 0;
}

@media (min-width: 768px) {
  .wc-shop-wholesale-banner__inner {
    padding: 1rem calc(var(--mariola-space-6) + 1.75rem) 1rem var(--mariola-space-6);
  }
}

@media (max-width: 575.98px) {
  .wc-shop-wholesale-banner {
    margin-bottom: var(--mariola-space-4);
  }

  .wc-shop-wholesale-banner__close {
    font-size: 1.25rem;
    padding: 0.25rem 0.375rem;
    right: 0.25rem;
    top: 0.125rem;
  }

  .wc-shop-wholesale-banner__inner {
    align-items: stretch;
    flex-direction: column;
    gap: var(--mariola-space-3);
    padding: 1rem calc(var(--mariola-space-3) + 1.5rem) 1rem var(--mariola-space-3);
  }

  .wc-shop-wholesale-banner__content {
    flex: 0 1 auto;
  }

  .wc-shop-wholesale-banner__title {
    font-size: var(--mariola-text-sm);
    line-height: 1.3;
  }

  .wc-shop-wholesale-banner__actions {
    gap: var(--mariola-space-2);
    width: 100%;
  }

  .wc-main .wc-shop-content .wc-shop-wholesale-banner__btn.button {
    flex: 1 1 calc(50% - var(--mariola-space-2));
    font-size: var(--mariola-text-min);
    letter-spacing: 0.04em;
    min-height: 36px;
    min-width: 0;
    padding: 0.5rem 0.75rem;
  }
}

.wc-main .wc-shop-content {
  --mariola-catalog-cols: 2;
  --mariola-catalog-gap: 8px;
  --mariola-catalog-card-width: calc(
    (100% - (var(--mariola-catalog-cols) - 1) * var(--mariola-catalog-gap)) / var(--mariola-catalog-cols)
  );
}

@media (min-width: 768px) {
  .wc-main .wc-shop-content {
    --mariola-catalog-cols: 3;
  }
}

@media (min-width: 992px) {
  .wc-main .wc-shop-content {
    --mariola-catalog-cols: 4;
  }
}

@media (min-width: 1200px) {
  .wc-main .wc-shop-content {
    --mariola-catalog-cols: 5;
  }
}

.wc-main .wc-shop-content ul.products {
  column-gap: 8px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

.wc-main .wc-shop-content ul.products::before,
.wc-main .wc-shop-content ul.products::after {
  content: none;
  display: none;
}

.wc-main .wc-shop-content ul.products li.product,
.woocommerce .wc-main .wc-shop-content ul.products li.product {
  clear: none;
  display: flex;
  flex-direction: column;
  float: none;
  height: 100%;
  margin: 0;
  max-width: none;
  min-width: 0;
  padding: 0;
  position: relative;
  width: auto;
}

@media (min-width: 768px) {
  .wc-main .wc-shop-content ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media (min-width: 992px) {
  .wc-main .wc-shop-content ul.products {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media (min-width: 1200px) {
  .wc-main .wc-shop-content ul.products {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }

  .mariola-wishlist-page .wc-main .wc-shop-content ul.products {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}

.wc-main .mariola-pdp-related--center .wc-shop-content ul.products,
.wc-main .mariola-pdp-set .wc-shop-content ul.products {
  display: flex;
  flex-wrap: wrap;
  grid-template-columns: none;
  justify-content: center;
}

.wc-main .mariola-pdp-related--center .wc-shop-content ul.products li.product,
.wc-main .mariola-pdp-set .wc-shop-content ul.products li.product {
  flex: 0 1 var(--mariola-catalog-card-width);
  height: auto;
  max-width: var(--mariola-catalog-card-width);
  width: var(--mariola-catalog-card-width);
}

.wc-shop-filters-toggle {
  align-items: center;
  cursor: pointer;
  display: inline-flex;
  flex: 0 0 auto;
  gap: 0.375rem;
  max-width: none;
}

.wc-shop-filters-toggle .wc-shop-filters-toggle__filter-icon {
  color: currentColor;
  flex-shrink: 0;
  height: 1em;
  line-height: 0;
  width: 1em;
}

.wc-shop-filters-toggle__label {
  line-height: var(--mariola-leading-tight);
}

html.wc-shop-filters-open,
html.wc-shop-filters-open body {
  overflow: hidden !important;
  overscroll-behavior: none;
  touch-action: none;
}

html.wc-shop-filters-open .wc-main,
html.wc-shop-filters-open .wc-shop-content,
html.wc-shop-filters-open .wc-shop-content ul.products {
  overscroll-behavior: none;
  pointer-events: none;
  touch-action: none;
}

html.wc-shop-filters-open .wc-shop-header,
html.mariola-mobile-nav-open .wc-shop-header,
html.mariola-mobile-account-open .wc-shop-header {
  visibility: hidden;
}

html.wc-shop-filters-open .mariola-info-bar-area,
html.wc-shop-filters-open .mariola-info-bar,
html.wc-shop-filters-open .mariola-widget-info-bar,
html.mariola-mobile-nav-open .mariola-info-bar-area,
html.mariola-mobile-nav-open .mariola-info-bar,
html.mariola-mobile-nav-open .mariola-widget-info-bar,
html.mariola-mobile-account-open .mariola-info-bar-area,
html.mariola-mobile-account-open .mariola-info-bar,
html.mariola-mobile-account-open .mariola-widget-info-bar {
  z-index: 1072;
}

body.wc-shop-filters-open .wc-shop-filters-overlay {
  overscroll-behavior: none;
  touch-action: none;
}

body.wc-shop-filters-open .wc-shop-filters-drawer,
body.wc-shop-filters-open .wc-shop-filters-drawer__body {
  overscroll-behavior: contain;
  touch-action: pan-y;
}

body.wc-shop-filters-open .wc-shop-toolbar.is-filters-pinned {
  left: var(--mariola-pinned-toolbar-left, 0px);
  margin-bottom: 0;
  position: fixed;
  right: auto;
  top: var(--mariola-pinned-toolbar-top, var(--site-header-height, 4.5rem));
  width: var(--mariola-pinned-toolbar-width, 100%);
  z-index: 1030;
}

.wc-shop-filters-overlay {
  background: rgba(0, 0, 0, 0.45);
  inset: 0;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  transition: opacity 0.32s ease, visibility 0s linear 0.32s;
  visibility: hidden;
  z-index: 1040;
}

.wc-shop-filters-overlay.is-open {
  opacity: 1;
  pointer-events: auto;
  transition: opacity 0.32s ease, visibility 0s linear 0s;
  visibility: visible;
}

.wc-shop-filters-drawer {
  --filter-border: #e6e5e3;
  --filter-chip-bg: rgb(0 81 82 / 10%);
  --filter-muted: #a6a19e;
  --filter-ink: #1e1d1d;
  --filter-active: var(--mariola-brand);
  background: var(--mariola-white);
  border-radius: var(--mariola-btn-radius);
  box-shadow: 0 0 40px rgba(0, 0, 0, 0.12);
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  max-height: 100%;
  overflow: hidden;
  pointer-events: none;
  position: fixed;
  transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s linear 0.32s;
  visibility: hidden;
  will-change: transform;
  z-index: 1050;
}

.wc-shop-filters-drawer.is-visible {
  pointer-events: auto;
  transition: transform 0.32s cubic-bezier(0.4, 0, 0.2, 1), visibility 0s linear 0s;
  visibility: visible;
}

.wc-shop-filters-drawer__header {
  align-items: center;
  background: var(--mariola-white);
  border-bottom: 1px solid var(--filter-border);
  display: flex;
  flex-shrink: 0;
  gap: 1rem;
  grid-row: 1;
  justify-content: space-between;
  padding: 1rem 1.25rem 1rem 2rem;
  z-index: 2;
}

.wc-shop-filters-drawer__body {
  flex: 1 1 auto;
  grid-row: 2;
  -webkit-overflow-scrolling: touch;
  min-height: 0;
  overflow-y: auto;
  overscroll-behavior: contain;
}

.wc-shop-filters-drawer__title {
  flex: 1 1 auto;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  margin: 0;
  min-width: 0;
  text-transform: uppercase;
}

.wc-shop-filters-drawer__header-actions {
  align-items: center;
  display: inline-flex;
  flex: 0 0 auto;
  gap: 1rem;
  margin-left: auto;
}

.wc-shop-filters-drawer__close {
  align-items: center;
  background: transparent;
  border: 0;
  color: var(--mariola-black);
  cursor: pointer;
  display: inline-flex;
  justify-content: center;
  padding: 0.25rem;
}

.wc-shop-filters-drawer__close:hover,
.wc-shop-filters-drawer__close:focus {
  color: var(--mariola-brand);
}

.wc-shop-filters-drawer__close .mariola-icon {
  height: 1.25rem;
  width: 1.25rem;
}

.wc-shop-filters-drawer__footer {
  background: var(--mariola-white);
  border-top: 0;
  box-shadow: none;
  flex-shrink: 0;
  grid-row: 3;
  margin: 0;
  padding: 0;
}

.wc-shop-filters-drawer__footer.filter-list {
  border-bottom: 0;
  padding: 1rem 1.25rem calc(1rem + env(safe-area-inset-bottom, 0)) 2rem;
}

.wc-shop-filters-drawer__footer .filter-list__row {
  margin: 0 0 0.75rem;
  padding: 0;
}

.wc-shop-filters-drawer__footer .filter-list__row:last-child {
  margin-bottom: 0;
}

.wc-shop-filters-drawer__apply.btn-black {
  align-items: center;
  background: var(--filter-ink);
  border: 1px solid var(--filter-ink);
  border-radius: var(--mariola-btn-radius);
  color: var(--mariola-white);
  display: inline-flex;
  font-size: var(--mariola-text-sm);
  font-weight: 500;
  gap: var(--mariola-space-2);
  justify-content: center;
  letter-spacing: 0.02em;
  line-height: var(--mariola-leading-tight);
  min-height: var(--mariola-btn-height);
  padding: 0.875rem 1.25rem;
  width: 100%;
}

.wc-shop-filters-drawer__apply-count:empty,
.wc-shop-filters-drawer__apply-count[aria-hidden='true'] {
  display: none;
}

.wc-shop-filters-drawer__apply-count:not(:empty):not([aria-hidden='true']) {
  margin-left: 0.35rem;
}

.wc-shop-filters-drawer__apply-loader {
  align-items: center;
  display: none;
  flex: 0 0 auto;
  justify-content: center;
  margin-left: 0.35rem;
  min-height: 1em;
  min-width: 1.25rem;
}

.wc-shop-filters-drawer__apply.is-busy .wc-shop-filters-drawer__apply-count {
  display: none;
}

.wc-shop-filters-drawer__apply.is-busy .wc-shop-filters-drawer__apply-loader {
  display: inline-flex;
}

.wc-shop-filters-drawer__apply-loader .wc-shop-filters-drawer__apply-loader-inner.bapf_loader_page,
.wc-shop-filters-drawer__apply-loader .bapf_loader_page {
  align-items: center;
  background: transparent !important;
  display: flex !important;
  height: auto !important;
  justify-content: center;
  position: relative !important;
  width: auto !important;
}

.wc-shop-filters-drawer__apply-loader .bapf_lcontainer {
  height: 1rem !important;
  margin: 0 !important;
  position: relative !important;
  width: 1rem !important;
}

.wc-shop-filters-drawer__apply-loader .bapf_limg {
  filter: brightness(0) invert(1);
}

/* Лоадер BeRocket только поверх панели фильтров, не на всю страницу */
.wc-shop-filters-drawer > .bapf_loader_page.mariola-filters-drawer-loader {
  align-items: center;
  background: rgba(255, 255, 255, 0.88) !important;
  bottom: 0 !important;
  display: flex !important;
  justify-content: center;
  left: 0 !important;
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  z-index: 30;
}

body.wc-shop-filters-open > .bapf_loader_page:not(.mariola-filters-drawer-loader) {
  display: none !important;
}

.wc-shop-filters-drawer .bapf_update,
.wc-shop-filters-drawer .berocket_aapf_widget_update_button {
  display: none !important;
}

.wc-shop-filters-drawer__apply.btn-black:hover,
.wc-shop-filters-drawer__apply.btn-black:focus {
  background: var(--mariola-black);
  border-color: var(--mariola-black);
  color: var(--mariola-white);
}

.wc-shop-filters-drawer__reset {
  background: transparent;
  border: 0;
  border-radius: var(--mariola-btn-radius);
  color: var(--filter-ink);
  cursor: pointer;
  flex: 0 0 auto;
  font-size: var(--mariola-text-sm);
  font-weight: 500;
  line-height: var(--mariola-leading-ui);
  margin: 0;
  padding: 0.25rem 0;
  text-decoration: none;
  white-space: nowrap;
}

.wc-shop-filters-drawer__reset:hover,
.wc-shop-filters-drawer__reset:focus {
  color: var(--mariola-brand);
  text-decoration: none;
}

.wc-shop-filters-drawer .wc-shop-filters.filter.smartfilter {
  margin: 0;
  padding: 0;
}

.wc-shop-filters-drawer .berocket_single_filter_widget {
  border-bottom: 1px solid var(--filter-border);
  margin: 0;
  padding: 1.125rem 1.25rem 1.125rem 2rem;
}

.wc-shop-filters-drawer .berocket_single_filter_widget:last-child {
  border-bottom: 0;
}

.wc-shop-filters-drawer .bapf_sfilter {
  margin: 0;
}

.wc-shop-filters-drawer .bapf_head {
  cursor: pointer;
  margin: 0;
  padding: 0.5rem 0 0.875rem;
}

.wc-shop-filters-drawer .bapf_head h3,
.wc-shop-filters-drawer .berocket_aapf_widget-title {
  align-items: center;
  color: var(--mariola-brand);
  display: flex;
  font-size: var(--mariola-text-xs);
  font-weight: 600;
  gap: var(--mariola-space-2);
  justify-content: space-between;
  letter-spacing: 0.02em;
  line-height: var(--mariola-leading-ui);
  margin: 0 0 0.25rem;
  text-transform: uppercase;
}

.wc-shop-filters-drawer .berocket_single_filter_widget:first-child .bapf_head h3 {
  font-size: var(--mariola-text-base);
}

.wc-shop-filters-drawer .bapf_head .bapf_colaps_smb {
  color: var(--mariola-brand);
  font-size: var(--mariola-text-xs);
  margin-left: auto;
}

.wc-shop-filters-drawer .bapf_body {
  margin: 0;
  padding: 0.5rem 0 0;
}

.wc-shop-filters-drawer .bapf_body ul {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 30px 5px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.wc-shop-filters-drawer .bapf_body li {
  margin: 0;
}

.wc-shop-filters-drawer .bapf_hideckbox input[type="checkbox"] {
  clip: rect(0, 0, 0, 0);
  height: 1px;
  overflow: hidden;
  position: absolute;
  width: 1px;
}

.wc-shop-filters-drawer .bapf_hideckbox .bapf_body > ul > li label {
  background: var(--filter-chip-bg);
  border: 1px solid var(--filter-border);
  border-radius: var(--mariola-btn-radius);
  color: var(--filter-ink);
  cursor: pointer;
  display: inline-block;
  font-size: var(--mariola-text-base);
  font-weight: 400;
  line-height: var(--mariola-leading-tight);
  margin: 0;
  padding: 0.625rem 0.5rem;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.wc-shop-filters-drawer .bapf_hideckbox .bapf_body > ul > li label:hover,
.wc-shop-filters-drawer .bapf_hideckbox .bapf_body > ul > li label:focus {
  border-color: var(--filter-ink);
  color: var(--filter-ink);
}

.wc-shop-filters-drawer .bapf_hideckbox .bapf_body > ul:not(.is-filter-list-expanded) > li.mariola-filter-item--overflow {
  display: none;
}

.wc-shop-filters-drawer .bapf_hideckbox .bapf_body > ul.is-filter-list-expanded > li.mariola-filter-more {
  display: none;
}

.wc-shop-filters-drawer .mariola-filter-more {
  display: flex;
  flex: 0 0 auto;
  list-style: none;
}

.wc-shop-filters-drawer .mariola-filter-more__btn {
  background: var(--filter-chip-bg);
  border: 1px solid var(--filter-border);
  border-radius: var(--mariola-btn-radius);
  box-sizing: border-box;
  color: var(--filter-ink);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: var(--mariola-text-base);
  font-weight: 400;
  line-height: var(--mariola-leading-tight);
  margin: 0;
  min-height: calc(0.625rem * 2 + var(--mariola-text-base) * var(--mariola-leading-tight));
  min-width: 2.75rem;
  padding: 0.625rem 0.5rem;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.wc-shop-filters-drawer .mariola-filter-more__btn:hover,
.wc-shop-filters-drawer .mariola-filter-more__btn:focus {
  border-color: var(--filter-ink);
  color: var(--filter-ink);
  outline: 0;
}

.wc-shop-filters-drawer .bapf_hideckbox .bapf_body > ul > li input:checked + label,
.wc-shop-filters-drawer .bapf_hideckbox .bapf_body > ul > li input:checked + label:hover {
  background: var(--filter-active);
  border-color: var(--mariola-white);
  color: var(--mariola-white);
  font-weight: 400;
}

/* Категории/подкатегории всегда видны — не прячем по count=0 текущего архива */
.wc-shop-filters-drawer .mariola-filter-category.bapf_fhide .bapf_body ul li.bapf_hide,
.wc-shop-filters-drawer .mariola-filter-subcategory.bapf_fhide .bapf_body ul li.bapf_hide {
  display: list-item !important;
}

.wc-shop-filters-drawer .bapf_hideckbox .brapf_disabled_checkbox label {
  color: var(--filter-muted);
  cursor: default;
  opacity: 0.55;
}

.wc-shop-filters-drawer .mariola-price-range .bapf_slidr_all {
  padding: 0.5rem 0 0;
  position: relative;
}

.wc-shop-filters-drawer .mariola-price-range .irs,
.wc-shop-filters-drawer .mariola-price-range .bapf_slidr_all > .irs {
  margin-bottom: 0.5rem;
  margin-top: 0.5rem;
  min-height: 1.75rem;
  position: relative;
}

.wc-shop-filters-drawer .mariola-price-range .irs--flat {
  height: 1.75rem;
}

.wc-shop-filters-drawer .mariola-price-range .irs-bar,
.wc-shop-filters-drawer .mariola-price-range .irs--flat .irs-bar {
  background: var(--filter-active);
  border-radius: 0;
  height: 1px;
  pointer-events: none;
  top: calc(50% - 0.5px);
  z-index: 2;
}

.wc-shop-filters-drawer .mariola-price-range .irs-handle,
.wc-shop-filters-drawer .mariola-price-range .bapf_slidr_main.ui-widget-content .ui-slider-handle,
.wc-shop-filters-drawer .mariola-price-range .berocket_filter_price_slider.ui-widget-content .ui-slider-handle {
  background: var(--filter-active);
  border: 0;
  border-radius: 50%;
  box-shadow: 0 0 0 2px var(--mariola-white);
  cursor: grab;
  height: 0.875rem;
  pointer-events: auto;
  top: calc(50% - 0.4375rem);
  touch-action: none;
  width: 0.875rem;
  z-index: 3;
}

.wc-shop-filters-drawer .mariola-price-range .irs--flat .irs-handle {
  background-color: var(--filter-active);
  height: 0.875rem;
  top: calc(50% - 0.4375rem);
  width: 0.875rem;
}

.wc-shop-filters-drawer .mariola-price-range .irs-handle.state_hover,
.wc-shop-filters-drawer .mariola-price-range .irs-handle:active {
  cursor: grabbing;
}

.mariola-price-range__fields {
  display: grid;
  gap: 0.75rem 1rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 1.25rem;
}

.mariola-price-range__field {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  margin: 0;
}

.mariola-price-range__label {
  color: var(--filter-muted);
  font-size: var(--mariola-text-min);
  font-weight: 500;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.mariola-price-range__input {
  -moz-appearance: textfield;
  background: var(--mariola-white);
  border: 1px solid var(--filter-border);
  border-radius: 0;
  color: var(--filter-ink);
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.2;
  padding: 0.625rem 0.75rem;
  width: 100%;
}

.mariola-price-range__input::-webkit-outer-spin-button,
.mariola-price-range__input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.mariola-price-range__input::placeholder {
  color: var(--filter-muted);
  opacity: 1;
}

.mariola-price-range__input:focus {
  border-color: var(--filter-active);
  outline: 0;
}

.mariola-price-range__slider,
.wc-shop-filters-drawer .mariola-price-range .bapf_slidr_all > .irs {
  padding: 0.25rem 0 0.5rem;
}

.wc-shop-filters-drawer .mariola-price-range .bapf_slidr_all > input.bapf_slidr_main {
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  pointer-events: none;
  position: absolute;
  width: 1px;
}

.wc-shop-filters-drawer .mariola-price-range .bapf_slidr_all > .mariola-price-range__fields + * {
  margin-top: 0;
}

.wc-shop-filters-drawer .mariola-price-range .irs-from,
.wc-shop-filters-drawer .mariola-price-range .irs-to,
.wc-shop-filters-drawer .mariola-price-range .irs-single,
.wc-shop-filters-drawer .mariola-price-range .irs-min,
.wc-shop-filters-drawer .mariola-price-range .irs-max {
  display: none;
}

.wc-shop-filters-drawer .mariola-price-range .irs-line,
.wc-shop-filters-drawer .mariola-price-range .irs--flat .irs-line {
  background: transparent !important;
  border: 0;
  border-radius: 0;
  display: block;
  height: 100%;
  opacity: 0;
  top: 0;
  z-index: 1;
}

.wc-shop-filters-drawer .bapf_slidr .bapf_fromto_box,
.wc-shop-filters-drawer .bapf_slidr .bapf_slidr_jqrui {
  margin-top: 0.75rem;
}

.wc-shop-filters-drawer .mariola-price-range .irs-handle.type_last {
  z-index: 4;
}

.wc-shop-filters-drawer .mariola-price-range .irs--flat .irs-handle > i:first-child {
  display: none;
}

.wc-shop-filters-drawer .bapf_body a {
  color: var(--filter-ink);
  text-decoration: none;
}

.wc-shop-filters-drawer .mariola-filter-subcategory {
  border-top: 0;
  margin-top: 0;
  padding-top: 0;
}

.wc-shop-filters-drawer .mariola-filter-subcategory.bapf_filter_hide {
  display: none;
}

@media (min-width: 992px) {
  #wcShopFiltersDrawer {
    bottom: 0;
    height: auto;
    left: 0;
    margin: 0;
    max-height: none;
    top: var(--site-mobile-nav-top-frozen, var(--site-mobile-nav-top, var(--site-header-height, 4.5rem)));
    transform: translate3d(calc(-100% - 20px), 0, 0);
    width: min(40rem, 92vw);
  }

  #wcShopFiltersDrawer.is-open {
    transform: translate3d(0, 0, 0);
  }

  body.wc-shop-filters-open .wc-shop-filters-overlay {
    top: 0;
  }
}

@media (max-width: 991.98px) {
  body.wc-shop-filters-open .site-header {
    z-index: 1070;
  }

  body.wc-shop-filters-open .wc-shop-filters-overlay {
    bottom: var(--site-header-bottom-height, 0px);
    top: 0;
  }

  .wc-shop-filters-drawer {
    border-radius: 0;
    bottom: var(--site-header-bottom-height, 0px);
    height: auto;
    left: 0;
    max-height: none;
    right: auto;
    top: var(--site-mobile-nav-top-frozen, var(--site-mobile-nav-top, var(--site-header-height, 4.5rem)));
    transform: translate3d(-100%, 0, 0);
    width: 100%;
  }

  .wc-shop-filters-drawer.is-open {
    transform: translate3d(0, 0, 0);
  }

  .wc-shop-filters-drawer__header {
    padding: 1.125rem 1rem 0.875rem 1.5rem;
  }

  .wc-shop-filters-drawer__footer.filter-list {
    padding: 0.875rem 1rem calc(0.875rem + env(safe-area-inset-bottom, 0)) 1.5rem;
  }

  .wc-shop-filters-drawer .berocket_single_filter_widget {
    padding: 1rem 1rem 1rem 1.5rem;
  }
}

.woocommerce .woocommerce-result-count {
  margin-bottom: 0;
}

.wc-shop-catalog-controls {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.375rem 0.75rem;
  margin-bottom: 1rem;
  min-width: 0;
  width: 100%;
}

.wc-shop-catalog-controls__count,
.wc-shop-active-filters:not([hidden]) {
  display: contents;
}

.wc-shop-catalog-controls__count .woocommerce-result-count {
  flex: 0 0 auto;
  margin: 0;
  white-space: nowrap;
}

.wc-shop-active-filters[hidden] {
  display: none !important;
}

.wc-shop-active-filters__tag {
  align-items: center;
  background: var(--filter-chip-bg, rgb(0 81 82 / 10%));
  border: 1px solid var(--filter-border, #e6e5e3);
  border-radius: var(--mariola-btn-radius);
  box-sizing: border-box;
  color: var(--filter-ink, #1e1d1d);
  display: inline-flex;
  flex: 0 0 auto;
  font-size: var(--mariola-text-sm);
  font-weight: 400;
  gap: 0.375rem;
  line-height: var(--mariola-leading-tight);
  max-width: 100%;
  min-height: 2rem;
  padding: 0.375rem 0.375rem 0.375rem 0.625rem;
  white-space: nowrap;
}

.wc-shop-active-filters__label {
  overflow: visible;
  text-overflow: clip;
}

.wc-shop-active-filters__remove {
  align-items: center;
  background: rgb(0 0 0 / 6%);
  border: 0;
  border-radius: var(--mariola-btn-radius);
  color: inherit;
  cursor: pointer;
  display: inline-flex;
  flex: 0 0 auto;
  height: 1.5rem;
  justify-content: center;
  margin: 0;
  opacity: 1;
  padding: 0;
  transition: background-color 0.15s ease;
  width: 1.5rem;
}

.wc-shop-active-filters__remove:hover,
.wc-shop-active-filters__remove:focus {
  background: rgb(0 0 0 / 10%);
  outline: 0;
}

.wc-shop-active-filters__remove svg {
  display: block;
  height: 0.75rem;
  width: 0.75rem;
}

.wc-shop-active-filters__reset {
  background: transparent;
  border: 0;
  color: var(--filter-ink, #1e1d1d);
  cursor: pointer;
  flex: 0 0 auto;
  font-size: var(--mariola-text-sm);
  font-weight: 500;
  line-height: var(--mariola-leading-tight);
  margin: 0 0 0 0.25rem;
  padding: 0.375rem 0.5rem;
  text-decoration: underline;
  text-underline-offset: 0.15em;
  white-space: nowrap;
}

.wc-shop-active-filters__reset:hover,
.wc-shop-active-filters__reset:focus {
  color: var(--mariola-black);
  outline: 0;
}

@media (max-width: 991.98px) {
  .wc-shop-catalog-controls {
    flex-wrap: nowrap;
    -webkit-overflow-scrolling: touch;
    overflow-x: auto;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    touch-action: pan-x;
  }

  .wc-shop-catalog-controls::-webkit-scrollbar {
    display: none;
  }

  .wc-shop-active-filters__tag {
    max-width: none;
  }
}

.woocommerce nav.woocommerce-pagination {
  display: flex;
  justify-content: center;
  margin-top: 2rem;
  text-align: center;
}

.woocommerce nav.woocommerce-pagination ul {
  align-items: center;
  border: 0;
  clear: none;
  display: inline-flex;
  flex-wrap: wrap;
  float: none;
  gap: var(--mariola-space-2);
  justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0;
}

.woocommerce nav.woocommerce-pagination ul::before,
.woocommerce nav.woocommerce-pagination ul::after {
  display: none;
}

.woocommerce nav.woocommerce-pagination ul li {
  border: 0;
  display: block;
  float: none;
  margin: 0;
  overflow: visible;
  padding: 0;
}

.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  align-items: center;
  background: var(--mariola-white);
  border: 1px solid var(--mariola-border);
  border-radius: var(--mariola-btn-radius);
  color: var(--mariola-ink);
  display: inline-flex;
  font-size: var(--mariola-text-sm);
  font-weight: 500;
  justify-content: center;
  line-height: var(--mariola-leading-tight);
  margin: 0;
  min-height: 2.5rem;
  min-width: 2.5rem;
  padding: 0 0.75rem;
  text-decoration: none;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li a:focus {
  background: var(--mariola-white);
  border-color: var(--mariola-brand);
  color: var(--mariola-brand);
}

.woocommerce nav.woocommerce-pagination ul li span.current {
  background: var(--mariola-brand);
  border-color: var(--mariola-brand);
  color: var(--mariola-white);
  font-weight: 600;
  text-decoration: none;
}

.woocommerce nav.woocommerce-pagination ul li span.dots {
  background: transparent;
  border-color: transparent;
  color: var(--mariola-muted);
  min-width: auto;
  padding: 0 0.25rem;
}

.mariola-blog-card {
  color: inherit;
}

.mariola-blog-card__image {
  aspect-ratio: 1 / 1;
  background: #f5f5f5;
  flex-shrink: 0;
  margin-bottom: 1rem;
  overflow: hidden;
  width: 100%;
}

.mariola-blog-card__image--placeholder {
  align-items: center;
  display: flex;
  justify-content: center;
}

.mariola-blog-card__img {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.mariola-blog-card__img--placeholder {
  height: auto;
  max-height: 42%;
  max-width: 42%;
  object-fit: contain;
  width: auto;
}

.mariola-blog-card__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  min-width: 0;
}

.mariola-blog-card__title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}

.mariola-blog-card__excerpt {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

.mariola-blog-card:hover .mariola-blog-card__title {
  color: var(--mariola-brand, #004445);
}

.mariola-blog-single__title,
.mariola-blog-archive__title {
  font-size: var(--mariola-title-catalog-size, clamp(1.25rem, 2.5vw, 1.75rem));
  font-weight: 600;
}

.mariola-blog-single__content img,
.mariola-blog-single__content table {
  max-width: 100%;
  height: auto;
}

.mariola-blog-single__content img:not(.emoji) {
  display: block;
  margin-inline: auto;
}

.mariola-blog-single__featured {
  aspect-ratio: 1 / 1;
  margin-inline: auto;
  max-width: 42rem;
  overflow: hidden;
}

.mariola-blog-single__featured img {
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.mariola-blog-single__content table {
  width: 100%;
  margin: 1.5rem 0;
}

.mariola-blog-video-placeholder {
  background: #f5f5f5;
  border: 1px dashed #ccc;
  padding: 2rem;
  text-align: center;
  margin: 1.5rem 0;
}

.mariola-page__title {
  font-size: var(--mariola-title-catalog-size, clamp(1.25rem, 2.5vw, 1.75rem));
  font-weight: 600;
}

@media (max-width: 991.98px) {
  body.woocommerce-cart #primary.site-main.mariola-page.py-5,
  body.woocommerce-checkout #primary.site-main.mariola-page.py-5 {
    padding-bottom: 1rem !important; /* .py-3 */
    padding-top: 1rem !important;
  }

  body.woocommerce-cart .mariola-page__title {
    margin-bottom: 0.75rem;
    text-align: center;
  }

  body.woocommerce-cart .mariola-stock-prepay-warning {
    margin-bottom: 0.75rem;
  }
}

/* WooCommerce info notices — peach warning style instead of default blue */
.woocommerce .woocommerce-info,
.woocommerce-page .woocommerce-info,
.woocommerce-info {
  background-color: var(--mariola-accent);
  border: 0;
  border-radius: var(--mariola-btn-radius);
  color: var(--mariola-black);
  list-style: none;
  margin: 0 0 1rem;
  padding: 0.875rem 1rem;
  width: auto;
}

.woocommerce .woocommerce-info::before,
.woocommerce-page .woocommerce-info::before,
.woocommerce-info::before {
  content: none;
  display: none;
}

.woocommerce .woocommerce-info a,
.woocommerce-page .woocommerce-info a,
.woocommerce-info a {
  color: var(--mariola-brand);
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 0.12em;
}

.woocommerce .woocommerce-info a:hover,
.woocommerce-page .woocommerce-info a:hover,
.woocommerce-info a:hover,
.woocommerce .woocommerce-info a:focus,
.woocommerce-page .woocommerce-info a:focus,
.woocommerce-info a:focus {
  color: var(--mariola-black);
}

/* WooCommerce error notices — без иконки, текст по центру */
.entry-content .woocommerce-notices-wrapper ul.woocommerce-error,
.entry-content ul.woocommerce-error,
.woocommerce-notices-wrapper ul.woocommerce-error {
  padding-left: 0;
  text-align: center;
}

.entry-content .woocommerce-notices-wrapper .woocommerce-error li,
.entry-content .woocommerce-error li,
.entry-content .woocommerce-error li + li,
.woocommerce-notices-wrapper .woocommerce-error li {
  list-style: none;
  margin: 0;
  padding-left: 0;
  text-align: center;
}

.entry-content .woocommerce-error li::before,
.woocommerce-notices-wrapper .woocommerce-error li::before,
.woocommerce .woocommerce-error li::before,
.woocommerce-page .woocommerce-error li::before,
.woocommerce-error li::before {
  content: none;
  display: none;
}

.woocommerce .woocommerce-error,
.woocommerce-page .woocommerce-error,
.woocommerce-error {
  background-color: #f8e4e4;
  border: 0;
  border-radius: var(--mariola-btn-radius);
  color: var(--mariola-black);
  list-style: none;
  margin: 0 0 1rem;
  padding: 0.875rem 1rem;
  text-align: center;
  width: auto;
}

.woocommerce .woocommerce-error::before,
.woocommerce-page .woocommerce-error::before,
.woocommerce-error::before {
  content: none;
  display: none;
}

.woocommerce .woocommerce-error a,
.woocommerce-page .woocommerce-error a,
.woocommerce-error a {
  color: rgba(0, 68, 69, 1);
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 0.12em;
}

.woocommerce .woocommerce-error a:hover,
.woocommerce-page .woocommerce-error a:hover,
.woocommerce-error a:hover,
.woocommerce .woocommerce-error a:focus,
.woocommerce-page .woocommerce-error a:focus,
.woocommerce-error a:focus {
  color: var(--mariola-black);
}

.mariola-account-orders {
  margin-top: 0;
}

/* Account login / register */
.mariola-page__content .woocommerce,
.woocommerce-account .woocommerce {
  width: 100%;
}

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
  float: none;
  width: 100%;
}

.mariola-account-nav {
  margin: 0 0 1.25rem;
  width: 100%;
}

.mariola-account-nav__title {
  color: var(--mariola-black);
  display: block;
  font-size: 1.125rem;
  font-weight: 600;
  margin: 1rem 0 1.25rem !important;
  padding-top: 0;
  text-align: center;
}

body.woocommerce-account #primary.site-main.mariola-page.py-5 {
  padding-top: 1rem !important;
}

.entry-content .mariola-account-nav__list {
  margin-bottom: 0;
  padding-left: 0;
}

.entry-content .mariola-account-nav__list .mariola-account-nav__item + .mariola-account-nav__item {
  margin-top: 0;
}

.mariola-account-nav__list {
  align-items: stretch;
  display: flex;
  gap: 0.75rem;
  list-style: none;
  margin: 0;
  padding: 0;
  width: 100%;
}

.mariola-account-nav__item {
  display: flex;
  flex: 1 1 0;
  margin: 0;
  min-width: 0;
}

.woocommerce-MyAccount-navigation .mariola-account-nav__item {
  align-self: stretch;
  list-style: none;
  padding: 0;
}

.mariola-account-nav__button {
  align-items: center;
  background: var(--mariola-white);
  border: 1px solid var(--mariola-border);
  border-radius: var(--mariola-btn-radius);
  box-sizing: border-box;
  color: var(--mariola-black);
  display: flex;
  flex: 1;
  font-size: var(--mariola-text-base);
  font-weight: 500;
  height: 100%;
  justify-content: center;
  line-height: var(--mariola-leading-tight);
  min-height: 3rem;
  padding: 0.75rem 1rem;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
  width: 100%;
}

.entry-content .mariola-account-nav__button:not(.mariola-account-nav__button--logout),
.woocommerce-MyAccount-navigation .mariola-account-nav__button:not(.mariola-account-nav__button--logout) {
  padding: 0.75rem 1rem;
}

.mariola-account-nav__button:hover,
.mariola-account-nav__button:focus {
  border-color: var(--mariola-brand);
  color: var(--mariola-brand);
  outline: 0;
}

.entry-content .woocommerce-MyAccount-navigation-link.is-active .mariola-account-nav__button:not(.mariola-account-nav__button--logout),
.entry-content .mariola-account-nav__item.is-active .mariola-account-nav__button:not(.mariola-account-nav__button--logout),
.entry-content .mariola-account-nav__button[aria-current="page"]:not(.mariola-account-nav__button--logout),
.woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link.is-active .mariola-account-nav__button:not(.mariola-account-nav__button--logout),
.woocommerce-MyAccount-navigation .mariola-account-nav__item.is-active .mariola-account-nav__button:not(.mariola-account-nav__button--logout),
.woocommerce-MyAccount-navigation .mariola-account-nav__button[aria-current="page"]:not(.mariola-account-nav__button--logout),
.mariola-account-nav__item.is-active .mariola-account-nav__button:not(.mariola-account-nav__button--logout),
.mariola-account-nav__button[aria-current="page"]:not(.mariola-account-nav__button--logout) {
  align-items: center;
  background-color: var(--mariola-surface);
  border: 1px solid var(--mariola-brand);
  color: var(--mariola-brand);
  justify-content: center;
  padding: 0.75rem 1rem;
  text-align: center;
}

.entry-content .woocommerce-MyAccount-navigation-link.is-active .mariola-account-nav__button:not(.mariola-account-nav__button--logout):hover,
.entry-content .woocommerce-MyAccount-navigation-link.is-active .mariola-account-nav__button:not(.mariola-account-nav__button--logout):focus,
.entry-content .mariola-account-nav__item.is-active .mariola-account-nav__button:not(.mariola-account-nav__button--logout):hover,
.entry-content .mariola-account-nav__item.is-active .mariola-account-nav__button:not(.mariola-account-nav__button--logout):focus,
.entry-content .mariola-account-nav__button[aria-current="page"]:not(.mariola-account-nav__button--logout):hover,
.entry-content .mariola-account-nav__button[aria-current="page"]:not(.mariola-account-nav__button--logout):focus,
.woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link.is-active .mariola-account-nav__button:not(.mariola-account-nav__button--logout):hover,
.woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link.is-active .mariola-account-nav__button:not(.mariola-account-nav__button--logout):focus,
.woocommerce-MyAccount-navigation .mariola-account-nav__item.is-active .mariola-account-nav__button:not(.mariola-account-nav__button--logout):hover,
.woocommerce-MyAccount-navigation .mariola-account-nav__item.is-active .mariola-account-nav__button:not(.mariola-account-nav__button--logout):focus,
.woocommerce-MyAccount-navigation .mariola-account-nav__button[aria-current="page"]:not(.mariola-account-nav__button--logout):hover,
.woocommerce-MyAccount-navigation .mariola-account-nav__button[aria-current="page"]:not(.mariola-account-nav__button--logout):focus,
.mariola-account-nav__item.is-active .mariola-account-nav__button:not(.mariola-account-nav__button--logout):hover,
.mariola-account-nav__item.is-active .mariola-account-nav__button:not(.mariola-account-nav__button--logout):focus,
.mariola-account-nav__button[aria-current="page"]:not(.mariola-account-nav__button--logout):hover,
.mariola-account-nav__button[aria-current="page"]:not(.mariola-account-nav__button--logout):focus {
  background-color: var(--mariola-surface);
  border: 0;
  color: var(--mariola-brand);
  outline: 0;
}

.mariola-account-nav__item--logout {
  flex: 0 0 auto;
}

.mariola-account-nav__button--logout {
  align-items: center;
  background-color: #fef3f2;
  border: 1px solid #fecdca;
  color: #b42318;
  flex: 0 0 auto;
  gap: 0.5rem;
  justify-content: center;
  min-height: 3rem;
  padding: 0.75rem 1rem;
  width: auto;
}

.mariola-account-nav__button--logout:hover,
.mariola-account-nav__button--logout:focus {
  background-color: #fef3f2;
  border: 1px solid #fecdca;
  color: #b42318;
  outline: 0;
}

.mariola-account-nav__button--logout .mariola-icon {
  color: currentColor;
}

.entry-content .mariola-account-nav__button--logout,
.woocommerce-MyAccount-navigation .mariola-account-nav__button--logout {
  padding: 0.75rem 1rem;
}

.mariola-account-nav__button--logout .mariola-account-nav__button-icon {
  display: block;
  flex-shrink: 0;
  height: 1.125rem;
  padding: 0;
  width: 1.125rem;
}

.mariola-account-nav__button-label {
  line-height: 1;
}

@media (max-width: 575.98px) {
  .mariola-account-nav__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem;
  }

  .mariola-account-nav__item {
    width: 100%;
    flex: 0 0 auto;
  }

  .mariola-account-nav__button {
    width: 100%;
  }

  .mariola-account-nav__button--logout {
    width: 100%;
  }
}

@media (max-width: 991.98px) {
  .mariola-account-nav__button--logout .mariola-account-nav__button-label {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px;
  }

  .entry-content .mariola-account-nav__button--logout,
  .woocommerce-MyAccount-navigation .mariola-account-nav__button--logout,
  .mariola-account-nav__button--logout {
    align-items: center;
    gap: 0;
    justify-content: center;
    min-width: 3rem;
    padding: 0.75rem;
    padding-left: 0.75rem;
    width: 3rem;
  }

  .mariola-account-nav__button--logout .mariola-account-nav__button-icon {
    display: block;
    flex-shrink: 0;
    margin: 0 auto;
    padding: 0;
  }
}

@media (max-width: 575.98px) {
  /* Не сворачиваем “Выйти” до одной иконки на маленьких экранах. */
  .mariola-account-nav__button--logout .mariola-account-nav__button-label {
    border: 0 !important;
    clip: auto !important;
    height: auto !important;
    margin: 0 !important;
    overflow: visible !important;
    padding: 0 !important;
    position: static !important;
    white-space: normal !important;
    width: auto !important;
  }

  .entry-content .mariola-account-nav__button--logout,
  .woocommerce-MyAccount-navigation .mariola-account-nav__button--logout,
  .mariola-account-nav__button--logout {
    min-width: 0 !important;
    width: 100% !important;
    padding: 0.75rem 1rem !important;
  }

  .mariola-account-nav__button--logout .mariola-account-nav__button-icon {
    margin: 0 !important;
  }

  /* “Выйти” всегда справа в сетке 2x2. */
  .mariola-account-nav__item--logout {
    grid-column: 2;
    grid-row: 2;
  }
}

.mariola-account-dashboard__welcome {
  margin: 0;
}

.mariola-edit-account__wholesale-field .input-text[data-mariola-inn] {
  padding-left: 0;
}

.mariola-account-dashboard__wholesale {
  margin: 0;
}

.mariola-account-dashboard__wholesale-toggle {
  appearance: none;
  background: none;
  border: 0;
  color: var(--mariola-brand);
  cursor: pointer;
  display: inline;
  font: inherit;
  font-weight: 500;
  margin: 0;
  padding: 0;
  text-align: left;
  text-decoration: underline;
  text-transform: none;
  text-underline-offset: 0.12em;
}

.mariola-account-dashboard__wholesale-toggle:hover,
.mariola-account-dashboard__wholesale-toggle:focus {
  color: var(--mariola-black);
  outline: 0;
}

.mariola-account-dashboard__wholesale-form-wrap {
  margin-top: 1rem;
  max-width: 24rem;
}

.mariola-account-dashboard__wholesale-form {
  border: 1px solid var(--mariola-border);
  border-radius: var(--mariola-btn-radius);
  margin: 0;
  padding: 1rem;
}

.mariola-account-dashboard__wholesale-form .form-row,
.entry-content .mariola-account-dashboard__wholesale-form .form-row {
  margin: 0 0 1rem;
  padding-left: 0;
}

.mariola-account-dashboard__wholesale-intro {
  color: var(--mariola-black);
  font-size: var(--mariola-text-sm);
  line-height: var(--mariola-leading-relaxed);
  margin: 0 0 1rem;
  padding-left: 0;
}

.entry-content .mariola-account-dashboard__wholesale-intro {
  padding-left: 0;
}

.mariola-account-dashboard__wholesale-terms {
  margin: 0 0 1rem;
  padding-left: 0;
}

.entry-content .mariola-account-dashboard__wholesale-terms {
  padding-left: 0;
}

.mariola-account-dashboard__wholesale-terms-link {
  color: var(--mariola-brand);
  font-size: var(--mariola-text-sm);
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 0.12em;
}

.mariola-account-dashboard__wholesale-terms-link:hover,
.mariola-account-dashboard__wholesale-terms-link:focus {
  color: var(--mariola-black);
  outline: 0;
}

.mariola-account-dashboard__wholesale-form label {
  display: block;
  font-weight: 500;
  margin-bottom: 0.375rem;
}

.mariola-account-dashboard__wholesale-form .input-text {
  box-sizing: border-box;
  padding-left: 0;
  width: 100%;
}

.entry-content .mariola-account-dashboard__wholesale-form .input-text,
.mariola-wholesale-fields .input-text[data-mariola-inn] {
  padding-left: 0;
}

.mariola-inn-error {
  color: #b32d2e;
  display: block;
  font-size: var(--mariola-text-sm);
  margin-top: 0.375rem;
}

.mariola-account-dashboard__wholesale-actions {
  margin: 0;
}

.mariola-account-dashboard__wholesale-submit.button {
  background: var(--mariola-brand);
  border: 0;
  border-radius: var(--mariola-btn-radius);
  color: var(--mariola-white);
  font-weight: 500;
  min-height: var(--mariola-btn-height);
  padding: 0.625rem 1.25rem;
  transition: background-color 0.15s ease, color 0.15s ease;
}

.mariola-account-dashboard__wholesale-submit.button:hover,
.mariola-account-dashboard__wholesale-submit.button:focus {
  background: var(--mariola-black);
  color: var(--mariola-white);
  outline: 0;
}

.woocommerce form.checkout_coupon,
.woocommerce form.login,
.woocommerce form.register {
  margin: 0;
}

.mariola-account-login.col2-set {
  align-items: stretch;
  column-gap: 4%;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  isolation: isolate;
  margin: 0;
  position: relative;
  width: 100%;
  z-index: 0;
}

.mariola-account-login.col2-set::before,
.mariola-account-login.col2-set::after {
  display: none;
}

.mariola-page__content .mariola-account-login.col2-set .col-1,
.mariola-page__content .mariola-account-login.col2-set .col-2 {
  float: none;
  width: auto;
}

.mariola-account-login--login-only {
  grid-template-columns: minmax(0, 1fr);
  max-width: 34.5rem;
}

.mariola-account-login--login-only .col-1 {
  max-width: none;
  width: auto;
}

.mariola-account-login__column {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  height: 100%;
  min-width: 0;
}

.mariola-account-login .woocommerce-form-login,
.mariola-account-login .mariola-account-register__form {
  border: 1px solid #cfc8d8;
  border-radius: 5px;
  box-sizing: border-box;
  display: flex;
  flex: 1;
  flex-direction: column;
  margin: 0;
  min-height: 0;
  padding: 20px;
  text-align: left;
}

.mariola-account-login .mariola-account-register__success {
  border: 1px solid #cfc8d8;
  border-radius: 5px;
  box-sizing: border-box;
  flex: 1;
  margin: 0;
  padding: 20px;
}

.mariola-account-login h2.mariola-account-login__title {
  font-size: 1.25rem;
  font-weight: 600;
  line-height: var(--mariola-leading-tight);
  margin: 0 0 1em;
  text-transform: none;
}

.mariola-account-login__form .form-row {
  margin: 0 0 6px;
  padding: 3px;
}

.mariola-account-login__form label {
  color: var(--mariola-black);
  display: block;
  font-size: 0.875rem;
  font-weight: 500;
  line-height: var(--mariola-leading-normal);
  margin: 0 0 6px;
}

.mariola-account-login__form .required {
  color: var(--mariola-black);
  font-weight: 500;
  text-decoration: none;
}

.mariola-account-login__form .screen-reader-text {
  border: 0;
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.mariola-account-login__form .input-text {
  background: var(--mariola-white);
  border: 1px solid var(--mariola-border);
  border-radius: var(--mariola-btn-radius);
  box-sizing: border-box;
  color: var(--mariola-black);
  display: block;
  font-size: 0.875rem;
  line-height: var(--mariola-leading-normal);
  min-height: var(--mariola-btn-height);
  padding: 0.5rem 0.75rem;
  width: 100%;
}

.mariola-account-login__form .input-text:focus {
  border-color: var(--mariola-brand);
  outline: 0;
}

.mariola-account-login__form--login .mariola-login-field--error label {
  color: #b42318;
}

.mariola-account-login__form--login .mariola-login-field--error .required {
  color: #b42318;
}

.mariola-account-login__form--login .mariola-login-field--error .input-text {
  border-color: #b42318;
}

.mariola-account-login__form--login .mariola-login-field--error .input-text:focus {
  border-color: #b42318;
}

.mariola-account-login__fields-error {
  color: #b42318;
  font-size: 0.8125rem;
  line-height: 1.4;
  margin: 0 0 6px;
  padding: 0 3px;
}

.mariola-account-login__actions {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--mariola-space-3) var(--mariola-space-4);
  justify-content: space-between;
  margin-bottom: var(--mariola-space-3);
}

.mariola-account-login__remember-row {
  margin-bottom: 6px;
}

.mariola-account-login__submit-row {
  margin-bottom: 6px;
  width: 100%;
}

.mariola-account-login__submit-row--register {
  margin-top: auto;
  padding-top: 0;
}

.mariola-account-login__form--login .mariola-account-login__lost-password {
  margin-top: auto;
}

.mariola-account-login__form .woocommerce-form-login__rememberme {
  align-items: center;
  display: inline-flex;
  gap: 8px;
  margin: 0;
}

.mariola-account-login__form .woocommerce-form-login__rememberme span {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: var(--mariola-leading-normal);
}

.mariola-account-login__form .woocommerce-form__input-checkbox {
  accent-color: var(--mariola-brand);
  height: 16px;
  margin: 0;
  width: 16px;
}

.mariola-account-login__submit-row .button,
.mariola-account-login__submit.button,
.woocommerce .mariola-account-login .mariola-account-login__submit.button {
  background: var(--mariola-brand);
  border: 0;
  border-radius: var(--mariola-btn-radius);
  box-sizing: border-box;
  color: var(--mariola-white);
  cursor: pointer;
  display: block;
  float: none;
  font-size: 0.9375rem;
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.2;
  margin: 0;
  min-height: 48px;
  padding: 0.75rem 1.5rem;
  text-transform: none;
  width: 100%;
}

.mariola-account-login__submit-row .button:hover,
.mariola-account-login__submit-row .button:focus,
.mariola-account-login__submit.button:hover,
.mariola-account-login__submit.button:focus,
.woocommerce .mariola-account-login .mariola-account-login__submit.button:hover,
.woocommerce .mariola-account-login .mariola-account-login__submit.button:focus {
  background: var(--mariola-black);
  color: var(--mariola-white);
}

.mariola-account-login__lost-password {
  margin: 0;
}

.mariola-account-login__lost-password a {
  color: var(--mariola-brand);
  font-size: 0.875rem;
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 2px;
  text-transform: none;
}

.mariola-account-login__lost-password a:hover,
.mariola-account-login__lost-password a:focus {
  color: var(--mariola-black);
}

.mariola-yandex-login {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: var(--mariola-space-4);
  isolation: isolate;
  margin-top: 1em;
  padding-top: 0;
  position: relative;
  width: 100%;
  z-index: 0;
}

.mariola-yandex-login__divider {
  background: var(--mariola-border);
  display: block;
  height: 1px;
  width: 100%;
}

.mariola-yandex-login__container {
  line-height: 0;
  min-height: 48px;
  position: relative;
  width: 100%;
  z-index: 0;
}

.mariola-yandex-login__container iframe,
#buttonContainerId iframe,
.mariola-yandex-login [class*='Ya'] {
  border: 0;
  display: block;
  max-width: 100%;
  position: relative !important;
  width: 100%;
  z-index: 0 !important;
}

/* Пока открыто меню/аккаунт в хедере — не перехватывать клики кнопкой Яндекса. */
body.mariola-mobile-nav-open .mariola-yandex-login,
body.mariola-mobile-account-open .mariola-yandex-login {
  pointer-events: none;
}

.mariola-yandex-login__error {
  color: #b42318;
  font-size: 0.8125rem;
  line-height: 1.4;
  margin: 0;
}

.mariola-account-register__accept .woocommerce-form-login__rememberme {
  align-items: flex-start;
}

.mariola-account-register__accept .woocommerce-form-login__rememberme span {
  line-height: 1.4;
}

.mariola-account-register__accept a {
  color: var(--mariola-brand);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.mariola-field-error {
  color: #b42318;
  display: block;
  font-size: 0.8125rem;
  line-height: 1.4;
  margin-top: 6px;
}

.mariola-account-register__form-error {
  background: #fef3f2;
  border: 1px solid #fecdca;
  border-radius: var(--mariola-btn-radius);
  color: #b42318;
  font-size: 0.875rem;
  margin: 0 0 var(--mariola-space-4);
  padding: 0.75rem 1rem;
}

.mariola-account-register__success {
  background: #f0fdf4;
  border: 1px solid #bbf7d0;
  border-radius: var(--mariola-btn-radius);
  padding: 1.25rem 1rem;
}

.mariola-account-register__success-text {
  color: var(--mariola-black);
  font-size: 0.9375rem;
  line-height: 1.5;
  margin: 0;
}

.mariola-account-register__success-text strong {
  font-weight: 600;
}

.mariola-registration-modal {
  align-items: center;
  display: none;
  inset: 0;
  justify-content: center;
  padding: 1rem;
  position: fixed;
  z-index: 10050;
}

.mariola-cookie-consent {
  align-items: flex-end;
  display: flex;
  inset: auto 0 0;
  justify-content: center;
  padding: 0 1rem 1rem;
  pointer-events: none;
  position: fixed;
  z-index: 10040;
}

.mariola-cookie-consent.is-visible {
  pointer-events: auto;
}

.mariola-cookie-consent__panel {
  align-items: center;
  animation: mariola-cookie-consent-in 1.2s ease;
  background: var(--mariola-white);
  border-radius: 10px;
  box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 1.25rem;
  justify-content: center;
  max-width: 100%;
  padding: 1.875rem;
}

.mariola-cookie-consent__text {
  color: var(--mariola-black);
  font-size: var(--mariola-text-base);
  line-height: var(--mariola-leading-normal);
  margin: 0;
  text-align: center;
}

.mariola-cookie-consent__btn.button {
  background: var(--mariola-brand);
  border: 0;
  border-radius: var(--mariola-btn-radius);
  color: var(--mariola-white);
  flex-shrink: 0;
  font-size: var(--mariola-text-sm);
  font-weight: 600;
  height: var(--mariola-btn-height);
  line-height: 1;
  min-height: var(--mariola-btn-height);
  padding: 0 1.25rem;
  text-transform: none;
  white-space: nowrap;
}

.mariola-cookie-consent__btn.button:hover,
.mariola-cookie-consent__btn.button:focus {
  background: var(--mariola-black);
  color: var(--mariola-white);
}

@keyframes mariola-cookie-consent-in {
  from {
    opacity: 0;
    transform: translateY(1.5rem);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (max-width: 767.98px) {
  .mariola-cookie-consent__panel {
    flex-direction: column;
    padding: 1.25rem;
  }
}

.mariola-vk-invite {
  align-items: center;
  display: none;
  inset: 0;
  justify-content: center;
  padding: 1rem;
  position: fixed;
  z-index: 10055;
}

.mariola-vk-invite.is-open {
  display: flex;
}

body.mariola-vk-invite-open {
  overflow: hidden;
}

.mariola-vk-invite__backdrop {
  background: rgba(0, 0, 0, 0.55);
  inset: 0;
  position: absolute;
}

.mariola-vk-invite__dialog {
  background: var(--mariola-white);
  box-shadow: 2px 8px 23px 3px rgba(0, 0, 0, 0.2);
  box-sizing: border-box;
  max-height: calc(100vh - 2rem);
  max-height: calc(100dvh - 2rem);
  max-width: 53.125rem;
  overflow: auto;
  padding: 1.875rem;
  position: relative;
  width: 100%;
  z-index: 1;
}

.mariola-vk-invite__close {
  background: transparent;
  border: 0;
  color: var(--mariola-black);
  cursor: pointer;
  font-size: 1.75rem;
  line-height: 1;
  padding: 0.25rem 0.5rem;
  position: absolute;
  right: 0.5rem;
  top: 0.25rem;
  z-index: 2;
}

.mariola-vk-invite__close:hover,
.mariola-vk-invite__close:focus {
  color: var(--mariola-brand);
}

.mariola-vk-invite__grid {
  display: grid;
  gap: 1.5rem;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  min-width: 0;
}

.mariola-vk-invite__media {
  min-height: 21.25rem;
  overflow: hidden;
}

.mariola-vk-invite__image {
  border-radius: 1.875rem;
  display: block;
  height: 100%;
  min-height: 21.25rem;
  object-fit: cover;
  width: 100%;
}

.mariola-vk-invite__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.mariola-vk-invite__title {
  font-size: var(--mariola-text-2xl);
  font-weight: 600;
  line-height: var(--mariola-title-leading);
  margin: 0 0 1.25rem;
}

.mariola-vk-invite__title a {
  color: var(--mariola-black);
  text-decoration: none;
}

.mariola-vk-invite__title a:hover,
.mariola-vk-invite__title a:focus {
  color: var(--mariola-brand);
}

.mariola-vk-invite__list {
  font-size: var(--mariola-text-base);
  line-height: var(--mariola-leading-relaxed);
  margin: 0 0 1.25rem;
  padding-left: 1.25rem;
}

.mariola-vk-invite__list li + li {
  margin-top: 0.5rem;
}

.mariola-vk-invite__btn {
  align-items: center;
  align-self: center;
  background: var(--mariola-accent);
  border: 0;
  border-radius: var(--mariola-btn-radius);
  box-sizing: border-box;
  color: var(--mariola-black);
  display: inline-flex;
  font-size: var(--mariola-text-sm);
  font-weight: 600;
  justify-content: center;
  letter-spacing: 0.06em;
  line-height: var(--mariola-leading-tight);
  min-height: var(--mariola-btn-height);
  min-width: 10rem;
  padding: 0.85rem 1.75rem;
  text-decoration: none;
  text-transform: uppercase;
  transition: background-color 0.2s ease, color 0.2s ease;
}

.mariola-vk-invite__btn:hover,
.mariola-vk-invite__btn:focus {
  background: var(--mariola-white);
  box-shadow: inset 0 0 0 1px var(--mariola-accent);
  color: var(--mariola-black);
}

@media (max-width: 767.98px) {
  .mariola-vk-invite {
    align-items: center;
    padding: 0.625rem;
  }

  .mariola-vk-invite__dialog {
    max-height: calc(100vh - 1.25rem);
    max-height: calc(100dvh - 1.25rem);
    overflow-x: hidden;
    overflow-y: auto;
    padding: 2.5rem 1rem 1.25rem;
    -webkit-overflow-scrolling: touch;
  }

  .mariola-vk-invite__grid {
    gap: 1rem;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto;
  }

  .mariola-vk-invite__media {
    min-height: 0;
    order: -1;
    width: 100%;
  }

  .mariola-vk-invite__image {
    aspect-ratio: 425 / 500;
    border-radius: 1rem;
    height: auto;
    max-height: min(38dvh, 15rem);
    min-height: 0;
    object-fit: cover;
    width: 100%;
  }

  .mariola-vk-invite__content {
    min-width: 0;
    width: 100%;
  }

  .mariola-vk-invite__title {
    font-size: 1.125rem;
    margin-bottom: 0.75rem;
    text-align: center;
  }

  .mariola-vk-invite__list {
    font-size: 0.875rem;
    margin-bottom: 1rem;
    padding-left: 1rem;
  }

  .mariola-vk-invite__btn {
    align-self: stretch;
    width: 100%;
  }
}

.mariola-registration-modal.is-open {
  display: flex;
}

.mariola-registration-modal__backdrop {
  background: rgba(0, 0, 0, 0.45);
  inset: 0;
  position: absolute;
}

.mariola-registration-modal__panel {
  background: var(--mariola-white);
  border-radius: var(--mariola-btn-radius);
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.18);
  max-width: 28rem;
  padding: 1.5rem;
  position: relative;
  width: 100%;
  z-index: 1;
}

.mariola-registration-modal__panel--success {
  border-top: 4px solid #16a34a;
}

.mariola-registration-modal__panel--info {
  border-top: 4px solid var(--mariola-brand);
}

.mariola-registration-modal__panel--error {
  border-top: 4px solid #b42318;
}

.mariola-registration-modal__close {
  background: transparent;
  border: 0;
  color: var(--mariola-black);
  cursor: pointer;
  font-size: 1.5rem;
  line-height: 1;
  padding: 0;
  position: absolute;
  right: 0.75rem;
  top: 0.5rem;
}

.mariola-registration-modal__title {
  font-size: 1.125rem;
  font-weight: 600;
  margin: 0 0 0.75rem;
}

.mariola-registration-modal__text {
  color: var(--mariola-black);
  font-size: 0.9375rem;
  line-height: 1.5;
  margin: 0 0 1.25rem;
}

.mariola-registration-modal__button.button {
  background: var(--mariola-brand);
  border: 0;
  border-radius: var(--mariola-btn-radius);
  color: var(--mariola-white);
  font-size: 0.875rem;
  font-weight: 600;
  min-height: var(--mariola-btn-height);
  padding: 0 1.5rem;
  text-transform: none;
}

.mariola-registration-modal__button.button:hover,
.mariola-registration-modal__button.button:focus {
  background: var(--mariola-black);
  color: var(--mariola-white);
}

@media (max-width: 767.98px) {
  .mariola-account-login.col2-set {
    grid-template-columns: minmax(0, 1fr);
    row-gap: var(--mariola-space-6);
  }

  .mariola-account-login--login-only {
    max-width: none;
  }

  .mariola-account-login__column {
    height: auto;
  }

  .mariola-account-login .woocommerce-form-login,
  .mariola-account-login .mariola-account-register__form {
    flex: none;
  }

  .mariola-account-login__submit-row--register,
  .mariola-account-login__form--login .mariola-account-login__lost-password {
    margin-top: 0;
  }
}

.mariola-page__content img,
.mariola-page__content table,
.mariola-page__content iframe {
  max-width: 100%;
  height: auto;
}

.mariola-page__content table {
  width: 100%;
  margin: 1.5rem 0;
}

.mariola-page__content h2,
.mariola-page__content h3,
.mariola-page__content h4 {
  margin-top: 1.75rem;
  margin-bottom: 1rem;
}

.mariola-page__content .mariola-account-nav__title {
  margin-top: 1rem !important;
}

.mariola-contacts__header .woocommerce-breadcrumb {
  margin-bottom: 1rem;
}

.mariola-contacts__title {
  font-size: var(--mariola-title-catalog-size, clamp(1.25rem, 2.5vw, 1.75rem));
  font-weight: 600;
}

.mariola-contacts__intro p {
  margin-bottom: 0;
}

.mariola-contacts__social {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem;
  margin-bottom: 1.25rem;
}

.mariola-contacts__social-link {
  display: inline-flex;
  line-height: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
}

.mariola-contacts__social-link:hover,
.mariola-contacts__social-link:focus {
  opacity: 0.85;
  transform: scale(0.96);
}

.mariola-contacts__social .site-footer__social-svg {
  height: 2.8125rem;
  width: 2.8125rem;
}

.mariola-contacts__block + .mariola-contacts__block {
  margin-top: 1rem;
}

.mariola-contacts__action {
  color: inherit;
  display: inline-block;
  font-weight: 500;
  text-decoration: none;
}

.mariola-contacts__action:hover,
.mariola-contacts__action:focus {
  color: inherit;
  opacity: 0.8;
  text-decoration: underline;
}

.mariola-contacts__address-title {
  font-weight: 600;
}

.mariola-contacts__address {
  color: #000;
  margin-bottom: 1rem;
}

.mariola-contacts__map {
  min-height: 400px;
  overflow: hidden;
  width: 100%;
}

.mariola-contacts__marketplaces-title {
  font-weight: 600;
  margin-inline: auto;
  max-width: 52rem;
}

.mariola-contacts__banner-link {
  transition: transform 0.2s ease;
}

.mariola-contacts__banner-link:hover,
.mariola-contacts__banner-link:focus {
  transform: scale(1.01);
}

.mariola-contacts__banner-caption {
  color: var(--mariola-text, #212529);
  font-weight: 700;
  margin-top: 0.625rem;
}

.mariola-about__header .woocommerce-breadcrumb {
  margin-bottom: 1rem;
}

.mariola-about__title {
  font-size: var(--mariola-title-catalog-size, clamp(1.25rem, 2.5vw, 1.75rem));
  font-weight: 600;
}

.mariola-about__copy {
  color: #303030;
}

.mariola-about__copy h3,
.mariola-about__copy h4 {
  font-weight: 600;
  margin-bottom: 0.75rem;
  margin-top: 1.5rem;
}

.mariola-about__copy h3:first-child {
  margin-top: 0;
}

.mariola-about__aside {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

.mariola-about__carousel {
  background: #f5f5f5;
}

.mariola-about__carousel-image {
  aspect-ratio: 3 / 4;
  object-fit: cover;
  width: 100%;
}

.mariola-about__carousel .carousel-item {
  min-height: 20rem;
}

.mariola-about__carousel-control {
  width: 12%;
}

.mariola-about__thumbs {
  display: grid;
  gap: 0.625rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.mariola-about__thumb {
  aspect-ratio: 21 / 9;
  background: transparent;
  border: 2px solid transparent;
  border-radius: 0.25rem;
  overflow: hidden;
  padding: 0;
  transition: border-color 0.2s ease, opacity 0.2s ease;
}

.mariola-about__thumb.is-active,
.mariola-about__thumb:hover,
.mariola-about__thumb:focus-visible {
  border-color: var(--mariola-text, #212529);
  opacity: 1;
}

.mariola-about__thumb:not(.is-active) {
  opacity: 0.72;
}

.mariola-about__thumb-image {
  display: block;
  height: 100%;
  object-fit: cover;
  width: 100%;
}

.mariola-about__social-card {
  border-radius: 0.625rem;
  box-shadow: 0 0 2.875rem -1.3125rem rgba(0, 0, 0, 0.5);
  padding: 1.875rem;
}

.mariola-about__social-title {
  font-size: 1.125rem;
  font-weight: 600;
}

.mariola-about__social {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  justify-content: center;
}

.mariola-about__social-link {
  display: inline-flex;
  line-height: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
}

.mariola-about__social-link:hover,
.mariola-about__social-link:focus {
  opacity: 0.85;
  transform: scale(0.96);
}

.mariola-about__social .site-footer__social-svg {
  height: 2.5rem;
  width: 2.5rem;
}

@media (min-width: 992px) {
  .mariola-about__carousel .carousel-item {
    min-height: 31.25rem;
  }
}

.mariola-404__inner {
  margin: 0 auto;
  max-width: 36rem;
  padding: var(--mariola-space-8) 0;
  text-align: center;
}

.mariola-404__code {
  color: var(--mariola-brand);
  font-size: clamp(3.5rem, 12vw, 6rem);
  font-weight: 600;
  letter-spacing: 0.04em;
  line-height: 1;
  margin: 0 0 var(--mariola-space-4);
}

.mariola-404__title {
  font-size: var(--mariola-title-catalog-size);
  font-weight: 600;
  line-height: var(--mariola-title-leading);
  margin: 0 0 var(--mariola-space-3);
}

.mariola-404__text {
  color: var(--mariola-muted);
  font-size: var(--mariola-text-base);
  line-height: var(--mariola-leading-relaxed);
  margin: 0 0 var(--mariola-space-6);
}

.mariola-404__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--mariola-space-3);
  justify-content: center;
}

.mariola-404__btn {
  align-items: center;
  border-radius: var(--mariola-btn-radius);
  box-sizing: border-box;
  display: inline-flex;
  font-size: var(--mariola-text-sm);
  font-weight: 600;
  justify-content: center;
  letter-spacing: 0.04em;
  line-height: var(--mariola-leading-tight);
  min-height: var(--mariola-btn-height);
  padding: 0.625rem 1.25rem;
  text-decoration: none;
  text-transform: uppercase;
}

.mariola-404__btn--primary {
  background: var(--mariola-brand);
  border: 1px solid var(--mariola-brand);
  color: var(--mariola-white);
}

.mariola-404__btn--primary:hover,
.mariola-404__btn--primary:focus {
  background: var(--mariola-black);
  border-color: var(--mariola-black);
  color: var(--mariola-white);
  outline: 0;
}

.mariola-404__btn--secondary {
  background: transparent;
  border: 1px solid var(--mariola-black);
  color: var(--mariola-black);
}

.mariola-404__btn--secondary:hover,
.mariola-404__btn--secondary:focus {
  background: var(--mariola-black);
  border-color: var(--mariola-black);
  color: var(--mariola-white);
  outline: 0;
}

@media (min-width: 768px) and (max-width: 991.98px) {
  /* Tablet drawer: align width with .container (~720px) */
  .site-header__nav.site-header__nav--drawer .site-header__nav-menu,
  .site-header__nav-contacts,
  .site-header__account-drawer-menu {
    max-width: 720px;
  }
}

