/* ==== blocks.css ==== */
/* ============================================
   Mini Problems — кастомные стили блоков
   Дополняют theme.json. Палитра: синий/сине-серый/светлый голубой
   ============================================ */

@font-face {
  font-display: swap;
  font-family: 'Jost';
  font-style: normal;
  font-weight: 100 900;
  src: url('../fonts/Jost/Jost-VariableFont_wght.woff2') format('woff2'), url('../fonts/Jost/Jost-VariableFont_wght.ttf') format('truetype');
}

@font-face {
  font-display: swap;
  font-family: 'Jost';
  font-style: italic;
  font-weight: 100 900;
  src: url('../fonts/Jost/Jost-Italic-VariableFont_wght.woff2') format('woff2'), url('../fonts/Jost/Jost-Italic-VariableFont_wght.ttf') format('truetype');
}

@font-face {
  font-display: swap;
  font-family: 'Gogol';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/Gogol/gogol_regular.woff2') format('woff2'), url('../fonts/Gogol/gogol_regular.otf') format('opentype');
}

:root {
  --mp-primary: #1F3763;
  --mp-beige: #B89D88;
  --mp-cream: #EFE3D3;
  --mp-sand: #6FAED6;
  --mp-sand-dark: #1F3763;
  --mp-graphite: #344154;
  --mp-milk: #F7FBFD;
  --mp-line: #DDE8F0;
  --mp-font-body: 'Jost', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --mp-font-display: var(--mp-font-body);
  --mp-font-script: 'Gogol', var(--mp-font-body);
  --mp-mobile-nav-height: 72px;
  --mp-mobile-action-height: 64px;
  --mp-promo-height: 34px;
}

body {
  font-family: var(--mp-font-body);
}

/*
 * Foundational reset: this theme's style.css ships with no box-sizing rule
 * at all, and box-sizing: border-box was only ever set on a handful of
 * individual classes throughout this file. In the browser default
 * (content-box), any element combining "width: 100%" with its own padding
 * renders wider than its container, which pushes the whole page past the
 * viewport on mobile (hence needing to pinch-zoom out to see the edges —
 * the fixed bottom nav stays pinned to the real viewport width while the
 * rest of the page is wider, so it looks mismatched/"too long").
 */
*,
*::before,
*::after {
  box-sizing: border-box;
}

html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

.mp-inner-title {
  background: #fff;
  border-bottom: 1px solid rgba(31, 55, 99, .08);
  padding: clamp(72px, 9vw, 138px) 20px clamp(34px, 5vw, 70px);
  text-align: center;
}

.mp-inner-title__heading,
.mp-inner-title .wp-block-query-title,
.mp-inner-title .wp-block-post-title {
  color: var(--mp-sand-dark);
  font-family: var(--mp-font-body);
  font-size: clamp(36px, 5.2vw, 72px);
  font-style: normal;
  font-weight: 400;
  letter-spacing: 0;
  line-height: 1.08;
  margin: 0;
  text-transform: none;
}

.mp-inner-title__breadcrumbs,
.mp-inner-title .woocommerce-breadcrumb {
  color: rgba(31, 55, 99, .58);
  font-size: 12px;
  letter-spacing: .08em;
  margin-top: 28px;
  text-transform: uppercase;
}

.mp-inner-title__breadcrumbs a,
.mp-inner-title .woocommerce-breadcrumb a {
  color: inherit;
  text-decoration: none;
}

.mp-not-found {
  max-width: 720px;
  padding: clamp(72px, 10vw, 132px) 20px;
}

.mp-not-found__code {
  color: rgba(31, 55, 99, .12);
  font-size: clamp(88px, 18vw, 180px);
  font-weight: 700;
  letter-spacing: .08em;
  line-height: .85;
  margin: 0 0 20px;
}

.mp-not-found__title {
  color: var(--mp-sand-dark);
  font-size: clamp(28px, 4vw, 46px);
  font-weight: 500;
  letter-spacing: .02em;
  margin: 0 0 16px;
}

.mp-not-found__text {
  color: var(--mp-graphite);
  font-size: 16px;
  line-height: 1.7;
  margin: 0 auto 30px;
  max-width: 560px;
}

.mp-not-found__search {
  margin: 34px auto 0;
  max-width: 520px;
}

.mp-not-found__search .wp-block-search__inside-wrapper {
  border: 1px solid var(--mp-line);
  border-radius: 4px;
  overflow: hidden;
}

.mp-not-found__search .wp-block-search__input {
  border: 0;
  min-height: 48px;
}

.mp-not-found__search .wp-block-search__button {
  background: var(--mp-sand-dark);
  border: 0;
  color: #fff;
  min-height: 48px;
}

.mp-blog-sidebar {
  display: grid;
  gap: 18px;
  padding: 0 !important;
}

.mp-blog-sidebar__section {
  background: #fff;
  border: 1px solid var(--mp-line);
  padding: 22px !important;
}

.mp-blog-sidebar__title {
  color: var(--mp-sand-dark) !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: .12em;
  margin: 0 0 16px !important;
  padding: 0 0 12px !important;
  text-transform: uppercase !important;
}

.mp-blog-sidebar ul,
.mp-blog-sidebar ol {
  margin: 0;
  padding-left: 18px;
}

.mp-blog-sidebar li {
  color: var(--mp-graphite);
  line-height: 1.7;
}

.mp-blog-sidebar a {
  color: inherit;
  text-decoration: none;
}

.mp-blog-sidebar a:hover {
  color: var(--mp-sand-dark);
}

.mp-blog-sidebar .wp-block-search__inside-wrapper {
  border: 1px solid var(--mp-line);
  border-radius: 4px;
  overflow: hidden;
}

.mp-blog-sidebar .wp-block-search__input,
.mp-blog-sidebar .wp-block-search__button {
  border: 0;
  min-height: 44px;
}

.mp-blog-sidebar .wp-block-search__button {
  background: var(--mp-sand-dark);
  color: #fff;
}

.mp-journal-page,
.mp-search-page {
  padding: clamp(42px, 6vw, 78px) 20px;
}

.mp-journal-layout {
  align-items: flex-start;
  gap: clamp(28px, 4vw, 56px);
}

.mp-post-grid {
  gap: clamp(22px, 3vw, 34px) !important;
}

.mp-post-card {
  background: #fff;
  border: 1px solid var(--mp-line);
  display: flex;
  flex-direction: column;
  height: 100%;
  overflow: hidden;
}

.mp-post-card__image {
  background: var(--mp-milk);
  margin: 0 !important;
  overflow: hidden;
}

.mp-post-card__image img {
  height: 100%;
  object-fit: cover;
  transition: transform .35s ease;
  width: 100%;
}

.mp-post-card:hover .mp-post-card__image img {
  transform: scale(1.025);
}

.mp-post-card__body {
  padding: 18px 18px 22px;
}

.mp-post-card__date {
  color: rgba(31, 55, 99, .58);
  font-size: 11px !important;
  font-weight: 600;
  letter-spacing: .12em;
  margin: 0 0 10px !important;
  text-transform: uppercase;
}

.mp-post-card__title {
  font-size: clamp(18px, 2vw, 23px) !important;
  font-weight: 500;
  line-height: 1.25;
  margin: 0 0 12px !important;
}

.mp-post-card__title a {
  color: var(--mp-sand-dark);
  text-decoration: none;
}

.mp-post-card__excerpt {
  color: var(--mp-graphite);
  font-size: 14px !important;
  line-height: 1.65;
  margin: 0 !important;
}

.mp-post-card__excerpt .wp-block-post-excerpt__more-link {
  color: var(--mp-sand-dark);
  display: inline-flex;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .1em;
  margin-top: 14px;
  text-decoration: none;
  text-transform: uppercase;
}

.mp-search-page__form {
  margin: 0 auto clamp(34px, 5vw, 56px);
  max-width: 640px;
}

.mp-search-page__form .wp-block-search__inside-wrapper {
  border: 1px solid var(--mp-line);
  border-radius: 4px;
  overflow: hidden;
}

.mp-search-page__form .wp-block-search__input,
.mp-search-page__form .wp-block-search__button {
  border: 0;
  min-height: 52px;
}

.mp-search-page__form .wp-block-search__button {
  background: var(--mp-sand-dark);
  color: #fff;
  padding-left: 24px;
  padding-right: 24px;
}

.mp-pagination {
  gap: 8px;
  margin-top: clamp(34px, 5vw, 58px);
}

.mp-pagination a,
.mp-pagination .page-numbers {
  align-items: center;
  border: 1px solid var(--mp-line);
  color: var(--mp-graphite);
  display: inline-flex;
  justify-content: center;
  min-height: 38px;
  min-width: 38px;
  padding: 8px 12px;
  text-decoration: none;
}

.mp-pagination .page-numbers.current,
.mp-pagination a:hover {
  background: var(--mp-sand-dark);
  border-color: var(--mp-sand-dark);
  color: #fff;
}

.mp-single-post {
  padding: clamp(42px, 6vw, 82px) 20px;
}

.mp-single-post__image {
  background: var(--mp-milk);
  margin-bottom: clamp(24px, 4vw, 42px) !important;
  overflow: hidden;
}

.mp-single-post__image img {
  display: block;
  max-height: 620px;
  object-fit: cover;
  width: 100%;
}

.mp-single-post__meta {
  color: rgba(31, 55, 99, .58);
  font-size: 12px;
  font-weight: 600;
  gap: 14px;
  letter-spacing: .1em;
  margin-bottom: clamp(24px, 4vw, 40px);
  text-transform: uppercase;
}

.mp-single-post__meta a {
  color: inherit;
  text-decoration: none;
}

.mp-single-post__content {
  color: var(--mp-graphite);
  font-size: 17px;
  line-height: 1.85;
}

.mp-single-post__content h2,
.mp-single-post__content h3,
.mp-single-post__content h4 {
  color: var(--mp-sand-dark);
  line-height: 1.2;
  margin-top: 1.8em;
}

.mp-single-post__content a {
  color: var(--mp-sand-dark);
}

.mp-single-post__terms {
  border-top: 1px solid var(--mp-line);
  color: rgba(31, 55, 99, .68);
  font-size: 13px;
  gap: 10px 18px;
  margin-top: clamp(34px, 5vw, 58px);
  padding-top: 20px;
}

.mp-single-post__terms a {
  color: inherit;
  text-decoration: none;
}

.mp-single-post__separator {
  border-color: var(--mp-line);
  margin: clamp(28px, 4vw, 48px) 0 !important;
}

.mp-comments {
  background: #fff;
  border: 1px solid var(--mp-line);
  padding: clamp(22px, 4vw, 40px);
}

@media (max-width: 700px) {
  .mp-inner-title {
    padding: 54px 18px 32px;
  }

  .mp-inner-title__heading,
  .mp-inner-title .wp-block-query-title,
  .mp-inner-title .wp-block-post-title {
    font-size: 38px;
    letter-spacing: .06em;
  }

  .mp-journal-page,
  .mp-search-page {
    padding-left: 16px;
    padding-right: 16px;
  }

  .mp-post-grid {
    grid-template-columns: 1fr !important;
  }
}

/* ─── Promo bar ─── */
.mp-promo-bar {
  background: var(--mp-beige);
  color: #fff;
  font-family: var(--mp-font-body);
  font-size: 12px;
  letter-spacing: .04em;
  line-height: 1.2;
  position: sticky;
  top: 0;
  z-index: 950;
}

.mp-promo-bar__inner {
  align-items: center;
  color: inherit;
  display: flex;
  gap: 10px;
  justify-content: center;
  min-height: var(--mp-promo-height);
  padding: 6px 16px;
  text-align: center;
  text-decoration: none;
}

.mp-promo-bar__code {
  background: rgba(255, 255, 255, .14);
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 999px;
  font-weight: 700;
  padding: 3px 9px;
  white-space: nowrap;
}

@media (max-width: 520px) {
  .mp-promo-bar {
    font-size: 11px;
  }

  .mp-promo-bar__inner {
    align-items: center;
    flex-direction: column;
    gap: 4px;
    min-height: auto;
  }
}

/* Header / footer */
.mp-site-header {
  background: rgba(255, 255, 255, .96);
  border-bottom: 1px solid var(--mp-line);
  position: sticky;
  top: 0;
  transition: box-shadow .2s ease;
  z-index: 900;
}

.mp-site-header.is-scrolled {
  box-shadow: 0 2px 14px rgba(20, 30, 50, .06);
}

.mp-site-header.is-scrolled .mp-main-header {
  --mp-header-inner-padding: 10px;
}

.mp-main-header {
  padding-top: var(--mp-header-inner-padding, 18px);
  padding-bottom: var(--mp-header-inner-padding, 18px);
  transition: padding .2s ease;
}

.mp-site-header.is-scrolled .mp-header-logo img {
  max-height: 34px;
  transition: max-height .2s ease;
}

.mp-site-logo {
  line-height: 0;
  margin: 0 !important;
}

.mp-site-logo img {
  display: block;
  height: auto !important;
  max-height: 60px;
  object-fit: contain;
}

.mp-site-header .wp-block-site-title a {
  text-decoration: none;
}

.mp-site-header .wp-block-navigation a {
  text-decoration: none;
}

.mp-site-footer {
  color: #fff;
}

.mp-site-footer a {
  color: inherit;
  text-decoration: none;
}

.mp-site-footer a:hover {
  text-decoration: underline;
}

.mp-site-footer__title {
  font-family: var(--mp-font-body);
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .08em;
  margin: 0 0 16px;
  text-transform: uppercase;
}

.mp-site-footer__logo {
  margin-bottom: 18px !important;
}

.mp-site-footer__links {
  display: grid;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.mp-site-footer__links li,
.mp-site-footer__contact,
.mp-site-footer__marketplaces,
.mp-site-footer__bottom p {
  font-family: var(--mp-font-body);
  font-size: 14px;
  line-height: 1.45;
  margin: 0;
}

.mp-site-footer__bottom {
  color: rgba(255, 255, 255, .82);
}

@media (max-width: 781px) {
  .mp-site-footer__columns {
    gap: 28px;
  }

  .mp-footer-accordion > h2,
  .mp-footer-accordion > h3 {
    cursor: pointer;
    margin: 0 !important;
    padding: 14px 0;
    position: relative;
  }

  .mp-footer-accordion > h2::after,
  .mp-footer-accordion > h3::after {
    content: "+";
    font-size: 18px;
    line-height: 1;
    position: absolute;
    right: 4px;
    top: 50%;
    transform: translateY(-50%);
  }

  .mp-footer-accordion.is-open > h2::after,
  .mp-footer-accordion.is-open > h3::after {
    content: "\2212";
  }

  .mp-footer-accordion > *:not(h2):not(h3) {
    display: none;
  }

  .mp-footer-accordion.is-open > *:not(h2):not(h3) {
    display: block;
  }

  .mp-footer-accordion.mp-site-footer__social.is-open > .wp-block-social-links {
    display: flex;
  }
}

/*
 * On mobile the site header is replaced by the fixed bottom app nav
 * (see "Mobile browser app layer" below), so it must not render at all.
 * Breakpoint matches the one used by .mp-mobile-nav (768px) so there is
 * no gap where neither the header nor the bottom nav is visible.
 */
@media (max-width: 768px) {
  .mp-site-header {
    display: none !important;
  }
}

/* ─── HERO ─── */
.mp-hero {
  position: relative;
  min-height: clamp(390px, 41.667vw, 600px) !important;
}
.mp-hero .wp-block-cover__image-background {
  object-position: center center;
}
.mp-hero__content {
  max-width: 575px;
  width: 100%;
}
.mp-hero__title {
  font-family: var(--mp-font-body) !important;
  font-size: clamp(48px, 5.1vw, 74px) !important;
  font-weight: 600 !important;
  letter-spacing: .035em;
  color: var(--mp-sand-dark) !important;
  line-height: .94 !important;
  margin: 0 0 10px !important;
}
.mp-hero__desc {
  font-family: var(--mp-font-body) !important;
  color: var(--mp-sand-dark);
  font-size: clamp(18px, 1.78vw, 25px) !important;
  font-weight: 400;
  letter-spacing: .015em;
  line-height: 1.22;
  margin: 0 0 6px !important;
}
.mp-hero__desc strong {
  color: var(--mp-sand-dark);
  font-weight: 700;
}
.mp-hero__script {
  color: var(--mp-sand-dark);
  font-family: var(--mp-font-script);
  font-size: clamp(26px, 3vw, 43px) !important;
  line-height: 1;
  margin: 6px 0 0 !important;
}
.mp-hero__content::after {
  content: none;
}
.mp-hero__actions {
  gap: 6px;
}
.mp-hero__btn .wp-block-button__link {
  align-items: center;
  display: inline-flex;
  height: 38px;
  justify-content: center;
  min-width: 178px;
  padding: 0 34px !important;
  transition: all .3s ease;
}
.mp-hero__btn--outline .wp-block-button__link:hover {
  background: var(--mp-graphite) !important;
  border-color: var(--mp-graphite) !important;
  color: #fff !important;
}
.mp-hero__btn--primary .wp-block-button__link:hover {
  background: var(--mp-sand-dark) !important;
  border-color: var(--mp-sand-dark) !important;
}

@media (max-width: 781px) {
  .mp-hero {
    min-height: 520px !important;
  }

  .mp-hero .wp-block-cover__image-background {
    object-position: 62% center;
  }

  .mp-hero__content {
    max-width: 72%;
  }

  .mp-hero__actions {
    flex-direction: column;
  }
}

@media (max-width: 520px) {
  .mp-hero {
    min-height: 560px !important;
  }

  .mp-hero::before {
    background: linear-gradient(90deg, rgba(247, 251, 253, .92), rgba(247, 251, 253, .62) 58%, rgba(247, 251, 253, .08));
    content: "";
    inset: 0;
    position: absolute;
    z-index: 1;
  }

  .mp-hero .wp-block-cover__inner-container {
    position: relative;
    z-index: 2;
  }

  .mp-hero__content {
    max-width: 88%;
  }
}

/* ─── ОБЩЕЕ: убираем наследие owl/carousel которое ломает сетку ─── */
.slider-products-sec,
.slider-products-content,
.owl-carousel {
  display: block !important;
}

/* ─── Плашки доверия / секции — выравнивание ─── */
.entry-content > .wp-block-columns:not(.mp-gender__grid),
.wp-site-blocks > .wp-block-columns:not(.mp-gender__grid) {
  gap: 2px;
}

/* ============================================
   БЛОКИ ГЛАВНОЙ (canopea v2)
   ============================================ */

/* ─── Плашки доверия ─── */
.mp-trust {
  min-height: 72px;
}
.mp-trust__row {
  gap: 0 !important;
  min-height: 72px;
  width: 100%;
}
.mp-trust__item {
  align-items: center !important;
  border-right: 1px solid #d8c5ba;
  box-sizing: border-box;
  flex: 1 1 25%;
  gap: 18px !important;
  min-height: 46px;
  padding: 0 24px;
  text-align: left;
}
.mp-trust__item:last-child {
  border-right: none;
}
.mp-trust__icon {
  flex: 0 0 34px;
  line-height: 0;
  margin: 0 !important;
}

.mp-trust__icon img {
  height: 34px !important;
  width: 34px !important;
}
.mp-trust__copy {
  margin: 0 !important;
}
.mp-trust__title {
  color: var(--mp-sand-dark);
  font-size: 15px;
  letter-spacing: .045em;
  line-height: 1;
  margin: 0 0 3px !important;
  text-transform: uppercase;
}
.mp-trust__title strong {
  font-weight: 500;
}
.mp-trust__desc {
  color: #6f7380;
  font-size: 10px;
  letter-spacing: .02em;
  line-height: 1;
  margin: 0 !important;
}
@media (max-width: 781px) {
  .mp-trust__row { flex-wrap: wrap !important; }
  .mp-trust__item { flex-basis: 50% !important; justify-content: flex-start !important; padding: 14px 18px; border-bottom: 1px solid var(--mp-line); }
  .mp-trust__item:nth-child(2) { border-right: none; }
}

/* Gender split */
.mp-gender,
.mp-gender__grid,
.mp-gender > .wp-block-columns {
  gap: 8px !important;
}
.mp-gender {
  background: #f7fbfd;
  max-width: none !important;
  overflow: hidden;
  width: 100% !important;
}
.mp-gender__grid,
.mp-gender > .wp-block-columns {
  align-items: stretch !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  margin: 0 auto !important;
  max-width: none !important;
  padding: 0 !important;
  width: 100% !important;
}
.mp-gender__col,
.mp-gender > .wp-block-columns > .wp-block-column {
  flex-basis: auto !important;
  flex-grow: 0 !important;
  margin: 0 !important;
  min-width: 0;
  width: 100% !important;
}
.mp-gender__cover,
.mp-gender .wp-block-cover {
  aspect-ratio: 469 / 270;
  margin: 0 !important;
  max-width: none !important;
  min-height: 0 !important;
  overflow: hidden;
  width: 100%;
}
.mp-gender__cover .wp-block-cover__inner-container,
.mp-gender .wp-block-cover .wp-block-cover__inner-container {
  width: 100%;
  z-index: 2;
}
.mp-gender__button-area {
  box-sizing: border-box;
  margin: 0;
  width: 100%;
}
.mp-gender__cover img,
.mp-gender .wp-block-cover img {
  object-fit: cover;
  width: 100% !important;
  transition: transform .45s ease;
}
.mp-gender__cover:hover img,
.mp-gender .wp-block-cover:hover img {
  transform: scale(1.025);
}
.mp-gender__button {
  margin: 0;
  z-index: 3;
}
.mp-gender__button a {
  color: var(--mp-sand-dark);
  display: inline-block;
  font-family: var(--mp-font-body) !important;
  font-size: clamp(28px, 3vw, 44px);
  font-style: normal;
  font-weight: 400;
  line-height: 1;
  padding: 10px 18px;
  text-decoration: none;
  text-shadow: 0 0 8px rgba(247, 251, 253, .85), 0 0 16px rgba(247, 251, 253, .65);
}
.mp-gender__button a:focus-visible {
  outline: 2px solid var(--mp-sand-dark);
  outline-offset: 4px;
}
@media (max-width: 781px) {
  .mp-gender__grid,
  .mp-gender > .wp-block-columns {
    display: grid !important;
    grid-template-columns: 1fr;
  }

  .mp-gender__button a {
    font-size: clamp(30px, 9vw, 44px);
  }
}

.mp-front-page {
  overflow: hidden;
}

.mp-front-title {
  color: var(--mp-sand-dark);
  font-family: var(--mp-font-body) !important;
  font-size: clamp(24px, 2.1vw, 34px) !important;
  font-weight: 400 !important;
  letter-spacing: .02em;
  line-height: 1.15 !important;
  margin: 0 !important;
}

.mp-front-title--center {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 760px;
}

.mp-front-link {
  font-family: var(--mp-font-body);
  font-size: 12px;
  letter-spacing: .08em;
  margin: 0 !important;
  text-transform: uppercase;
}

.mp-front-link a {
  color: var(--mp-sand-dark);
  text-decoration: none;
}

.mp-new-products {
  margin-top: 0 !important;
}

.mp-section-head--row {
  align-items: center !important;
  margin-bottom: 24px !important;
  width: 100%;
}

.mp-products-grid {
  gap: 8px !important;
  margin: 0 !important;
}

.mp-product-card,
.mp-products-grid .wc-block-product {
  margin: 0 !important;
}

.mp-product-card__image,
.mp-products-grid .wc-block-components-product-image {
  background: #f7fbfd;
  margin: 0 !important;
  overflow: hidden;
}

.mp-product-card__image img,
.mp-products-grid .wc-block-components-product-image img {
  aspect-ratio: 1 / 1.34;
  display: block;
  height: auto !important;
  object-fit: cover;
  width: 100% !important;
}

.mp-product-card__title,
.mp-product-card__title a,
.mp-products-grid .wp-block-post-title,
.mp-products-grid .wp-block-post-title a {
  color: var(--mp-sand-dark);
  font-family: var(--mp-font-body) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.35 !important;
  margin: 14px 0 4px !important;
  text-decoration: none;
}

.mp-product-card__price,
.mp-products-grid .wc-block-components-product-price {
  color: var(--mp-sand-dark);
  font-family: var(--mp-font-body) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  margin: 0 !important;
}

.mp-cheaper__table {
  border: 1px solid rgba(31, 55, 99, .18);
  box-shadow: 0 22px 44px rgba(31, 55, 99, .08);
}

.mp-cheaper__table table {
  border-collapse: collapse;
  font-family: var(--mp-font-body);
  width: 100%;
}

.mp-cheaper__table th {
  background: var(--mp-sand-dark);
  color: #fff;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: .04em;
  padding: 15px 18px;
  text-transform: uppercase;
}

.mp-cheaper__table th:first-child {
  background: #fff;
}

.mp-cheaper__table td {
  background: #fff;
  border-top: 1px solid rgba(31, 55, 99, .12);
  color: var(--mp-sand-dark);
  font-size: 14px;
  padding: 15px 18px;
  text-align: center;
}

.mp-cheaper__table td:first-child {
  text-align: left;
}

.mp-cheaper__table td:last-child {
  color: var(--mp-primary);
  font-weight: 700;
}

@media (max-width: 781px) {
  .mp-section-head--row {
    align-items: flex-start !important;
    flex-direction: column;
    gap: 10px;
  }

  .mp-products-grid {
    display: grid !important;
    grid-template-columns: 1fr;
  }
}

/* Delivery and payment page */
.mp-page-script {
  color: var(--mp-sand-dark);
  font-family: var(--mp-font-script) !important;
  font-size: clamp(30px, 4vw, 54px) !important;
  line-height: 1;
  margin: 0 0 14px !important;
}

.mp-page-title {
  color: var(--mp-sand-dark);
  font-family: var(--mp-font-body) !important;
  font-size: clamp(46px, 6vw, 86px) !important;
  font-weight: 600 !important;
  letter-spacing: .035em;
  line-height: .95 !important;
  margin: 0 0 22px !important;
  text-transform: uppercase;
}

.mp-page-lead {
  color: var(--mp-graphite);
  font-size: clamp(17px, 1.7vw, 22px) !important;
  line-height: 1.5;
  margin: 0 auto !important;
  max-width: 760px;
}

.mp-section-eyebrow {
  color: var(--mp-sand-dark);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .16em;
  margin: 0 0 16px !important;
  text-transform: uppercase;
}

.mp-section-title {
  color: var(--mp-sand-dark);
  font-family: var(--mp-font-body) !important;
  font-size: clamp(28px, 4vw, 48px) !important;
  font-weight: 500 !important;
  line-height: 1.12 !important;
  margin: 0 0 28px !important;
}

.mp-info-split__image {
  aspect-ratio: 4 / 5;
  margin: 0 !important;
  overflow: hidden;
}

.mp-info-split__image img {
  height: 100%;
  object-fit: cover;
  object-position: 69% center;
  width: 100%;
}

.mp-delivery-cards {
  gap: 14px !important;
}

.mp-delivery-card {
  background: #fff;
  border: 1px solid rgba(31, 55, 99, .1);
  border-radius: 6px;
  padding: 28px !important;
}

.mp-delivery-card__num,
.mp-process__num {
  color: #cfaa96;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .18em;
  margin: 0 0 16px !important;
}

.mp-delivery-card__title {
  color: var(--mp-sand-dark);
  font-size: 24px !important;
  font-weight: 600 !important;
  margin: 0 0 12px !important;
}

.mp-delivery-card__text,
.mp-policy-block__text {
  color: var(--mp-graphite);
  font-size: 16px;
  line-height: 1.65;
  margin: 0 !important;
}

.mp-delivery-card__text + .mp-delivery-card__text,
.mp-policy-block__text + .mp-policy-block__text {
  margin-top: 16px !important;
}

.mp-process {
  border-bottom: 1px solid rgba(31, 55, 99, .12);
  border-top: 1px solid rgba(31, 55, 99, .12);
  gap: 0 !important;
}

.mp-process__item {
  border-right: 1px solid rgba(31, 55, 99, .12);
  padding: 34px 28px !important;
}

.mp-process__item:last-child {
  border-right: 0;
}

.mp-process__text {
  color: var(--mp-sand-dark);
  font-size: 17px;
  line-height: 1.45;
  margin: 0 !important;
}

.mp-policy-block {
  background: #fff;
  border-radius: 6px;
  padding: clamp(30px, 4vw, 54px) !important;
}

.mp-policy-block--return {
  background: #f8fcfd;
  border: 1px solid rgba(31, 55, 99, .1);
}

.mp-return-note {
  border-top: 1px solid rgba(31, 55, 99, .12);
  color: var(--mp-sand-dark);
  font-size: 17px;
  line-height: 1.6;
  margin-top: 44px !important;
  padding-top: 28px;
}

.mp-care-guide-list {
  color: var(--mp-graphite);
  display: grid;
  gap: 14px;
  list-style: none;
  margin: 0 !important;
  padding: 0 !important;
}

.mp-care-guide-list li {
  border-bottom: 1px solid rgba(31, 55, 99, .12);
  font-size: 16px;
  line-height: 1.6;
  padding: 0 0 14px 34px;
  position: relative;
}

.mp-care-guide-list li::before {
  color: #cfaa96;
  content: "—";
  left: 0;
  position: absolute;
  top: 0;
}

.mp-policy-block__text + .mp-care-guide-list {
  margin-top: 16px !important;
}

.mp-care-guide-list + .mp-policy-block__text {
  margin-top: 20px !important;
}

@media (max-width: 781px) {
  .mp-page-title {
    letter-spacing: .02em;
  }

  .mp-delivery-cards,
  .mp-payment-return__grid,
  .mp-process {
    flex-direction: column !important;
  }

  .mp-process__item {
    border-bottom: 1px solid rgba(31, 55, 99, .12);
    border-right: 0;
  }

  .mp-process__item:last-child {
    border-bottom: 0;
  }
}

/* Brand story page */
.mp-brand-photo__image {
  aspect-ratio: 4 / 5;
  margin: 0 !important;
  overflow: hidden;
}

.mp-brand-photo__image img {
  height: 100%;
  object-fit: cover;
  object-position: center;
  width: 100%;
}

.mp-brand-photo__caption {
  color: rgba(31, 55, 99, .62);
  font-size: 13px;
  line-height: 1.5;
  margin: 14px 0 0 !important;
}

.mp-brand-text {
  color: var(--mp-graphite);
  font-size: 17px;
  line-height: 1.72;
  margin: 0 0 20px !important;
}

.mp-brand-quote {
  border-left: 1px solid rgba(207, 170, 150, .75);
  color: var(--mp-sand-dark);
  margin: 28px 0 !important;
  padding-left: 28px;
}

.mp-brand-quote p {
  font-size: clamp(18px, 2vw, 24px);
  line-height: 1.58;
  margin: 0 0 14px !important;
}

.mp-brand-quote cite {
  color: rgba(31, 55, 99, .62);
  display: block;
  font-size: 12px;
  font-style: normal;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
}

.mp-brand-philosophy__title {
  color: var(--mp-sand-dark);
  font-family: var(--mp-font-body) !important;
  font-size: clamp(30px, 4vw, 54px) !important;
  font-weight: 500 !important;
  line-height: 1.12 !important;
  margin: 0 auto 28px !important;
  max-width: 920px;
}

.mp-brand-philosophy__text {
  color: var(--mp-graphite);
  font-size: clamp(17px, 1.7vw, 21px) !important;
  line-height: 1.62;
  margin: 0 auto !important;
  max-width: 820px;
}

.mp-brand-philosophy__text + .mp-brand-philosophy__text {
  margin-top: 18px !important;
}

.mp-brand-value {
  background: #fff;
  border: 1px solid rgba(31, 55, 99, .1);
  border-radius: 6px;
  padding: clamp(26px, 3vw, 38px) !important;
}

.mp-brand-value__num {
  color: #cfaa96;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .18em;
  margin: 0 0 24px !important;
}

.mp-brand-value__title {
  color: var(--mp-sand-dark);
  font-size: 25px !important;
  font-weight: 600 !important;
  margin: 0 0 12px !important;
}

.mp-brand-value__text {
  color: var(--mp-graphite);
  font-size: 16px;
  line-height: 1.65;
  margin: 0 !important;
}

.mp-brand-final {
  border-top: 1px solid rgba(31, 55, 99, .12);
  margin-top: clamp(38px, 5vw, 64px) !important;
  padding-top: clamp(28px, 4vw, 44px);
}

.mp-brand-final__text {
  color: var(--mp-sand-dark);
  font-size: clamp(19px, 2vw, 26px);
  line-height: 1.55;
  margin: 0 !important;
}

@media (max-width: 781px) {
  .mp-brand-origin__grid,
  .mp-brand-values__grid {
    flex-direction: column !important;
  }

  .mp-brand-quote {
    padding-left: 20px;
  }
}

/* FAQ page */
.mp-faq-aside {
  position: relative;
}

.mp-faq-aside__text {
  color: rgba(35, 40, 48, .72);
  font-size: 16px;
  line-height: 1.65;
  margin: 0 !important;
}

.mp-faq-list {
  border-top: 1px solid rgba(31, 55, 99, .12);
}

.mp-faq-item {
  border-bottom: 1px solid rgba(31, 55, 99, .12);
  color: var(--mp-graphite);
  padding: 0;
}

.mp-faq-item summary {
  color: var(--mp-sand-dark);
  cursor: pointer;
  font-size: clamp(18px, 2vw, 24px);
  font-weight: 500;
  line-height: 1.35;
  list-style: none;
  padding: 26px 44px 26px 0;
  position: relative;
}

.mp-faq-item summary::-webkit-details-marker {
  display: none;
}

.mp-faq-item summary::after {
  color: #cfaa96;
  content: "+";
  font-size: 28px;
  font-weight: 300;
  line-height: 1;
  position: absolute;
  right: 4px;
  top: 25px;
}

.mp-faq-item[open] summary::after {
  content: "−";
}

.mp-faq-item p {
  color: var(--mp-graphite);
  font-size: 16px;
  line-height: 1.7;
  margin: 0 0 18px !important;
  max-width: 720px;
}

@media (max-width: 781px) {
  .mp-faq-layout {
    flex-direction: column !important;
  }

  .mp-faq-item summary {
    padding-right: 36px;
  }
}

/* ─── UPF блок ─── */
.mp-upf__hero { display: flex; align-items: center; }
.mp-upf__content { text-align: right; }
.mp-upf__eyebrow { font-size: 10px; letter-spacing: .22em; text-transform: uppercase; opacity: .7; margin-bottom: 12px; }
.mp-upf__title { font-size: clamp(28px, 4vw, 44px) !important; margin-bottom: 16px !important; }
.mp-upf__text { font-size: 15px; opacity: .85; margin-bottom: 20px; }
.mp-upf__link a { font-size: 11px; letter-spacing: .16em; text-transform: uppercase; border-bottom: 1px solid rgba(255,255,255,.5); padding-bottom: 2px; }
.mp-upf__compare-title { font-size: clamp(22px, 3vw, 30px) !important; }
.mp-upf__explain-title { font-size: 22px !important; }
.mp-upf__b-title { margin: 0 0 4px; } .mp-upf__b-title strong { font-weight: 500; }
.mp-upf__b-text { font-size: 13px; color: #888; margin: 0; }
@media (max-width: 781px) {
  .mp-upf__content { text-align: left; }
  .mp-upf__benefits { flex-direction: column !important; gap: 24px; }
}

/* Таблицы сравнения */
.mp-compare-table table, .mp-cheaper__table table { border-collapse: collapse; width: 100%; }
.mp-compare-table th, .mp-cheaper__table th { font-family: var(--mp-font-body); font-size: 11px; font-weight: 400; letter-spacing: .1em; text-transform: uppercase; color: #888; text-align: left; padding: 16px 20px; border-bottom: 2px solid var(--mp-graphite); }
.mp-compare-table th:first-child { color: var(--mp-graphite); font-weight: 600; }
.mp-compare-table td, .mp-cheaper__table td { font-size: 14px; color: #777; padding: 16px 20px; border-bottom: 1px solid var(--mp-line); vertical-align: top; }
.mp-compare-table td:first-child { color: var(--mp-graphite); }

/* ─── Дешевле на сайте ─── */
.mp-cheaper__eyebrow { font-size: 10px; letter-spacing: .2em; text-transform: uppercase; margin-bottom: 12px; }
.mp-cheaper__title { font-size: clamp(26px, 3vw, 32px) !important; margin-bottom: 6px !important; }
.mp-cheaper__sub { font-size: 14px; color: #888; }
.mp-cheaper__table th, .mp-cheaper__table td { text-align: center; }
.mp-cheaper__table th:first-child, .mp-cheaper__table td:first-child { text-align: left; }
.mp-cheaper__table th:last-child, .mp-cheaper__table td:last-child { color: var(--mp-sand); font-weight: 600; background: rgba(206,145,100,.06); }

/* Front page final overrides */
.mp-front-page .mp-gender,
.mp-front-page .mp-new-products,
.mp-front-page .mp-upf,
.mp-front-page .mp-cheaper,
.mp-front-page .mp-care-program,
.mp-front-page .faq-section {
  margin-top: 0 !important;
}

.mp-front-page .mp-cheaper__table th {
  background: var(--mp-sand-dark) !important;
  border-bottom: 0 !important;
  color: #fff !important;
  text-align: center !important;
}

.mp-front-page .mp-cheaper__table th:first-child {
  background: #fff !important;
  color: var(--mp-sand-dark) !important;
  text-align: left !important;
}

.mp-front-page .mp-cheaper__table td {
  background: #fff !important;
  border-bottom: 1px solid rgba(31, 55, 99, .12) !important;
  color: var(--mp-sand-dark) !important;
  text-align: center !important;
}

.mp-front-page .mp-cheaper__table td:first-child {
  text-align: left !important;
}

.mp-front-page .mp-cheaper__table td:last-child {
  background: #fff !important;
  color: var(--mp-primary) !important;
  font-weight: 700 !important;
}
.mp-cheaper__note { font-size: 12px; color: #999; margin-top: 16px; }

/* ─── Доставка ─── */
.mp-delivery__eyebrow { font-size: 10px; letter-spacing: .2em; text-transform: uppercase; color: #888; margin-bottom: 10px; }
.mp-delivery__title { font-size: clamp(22px, 3vw, 28px) !important; }
.mp-delivery__steps { border-top: 1px solid var(--mp-line); padding-top: 40px; }
.mp-delivery__num { font-family: var(--mp-font-body); font-size: 48px !important; line-height: 1; margin: 0 0 16px !important; }
.mp-delivery__step-text { font-size: 13px; color: #888; }
.mp-delivery__logos { margin-top: 48px; padding-top: 32px; border-top: 1px solid var(--mp-line); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: #888; }
@media (max-width: 781px) {
  .mp-delivery__steps { flex-wrap: wrap !important; }
  .mp-delivery__step { flex-basis: 50% !important; margin-bottom: 24px; }
}

/* ─── Mini Care ─── */
.mp-care {
  border-top: 1px solid var(--mp-line);
  padding: clamp(48px, 7vw, 80px) 24px;
}
.mp-care__inner {
  display: grid;
  gap: clamp(28px, 5vw, 64px);
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
  margin: 0 auto;
  max-width: 1280px;
}
.mp-care__eyebrow { font-size: 10px; letter-spacing: .2em; text-transform: uppercase; color: #888; margin-bottom: 12px; }
.mp-care__title { color: var(--mp-sand-dark); font-size: clamp(28px, 4vw, 40px) !important; margin-bottom: 14px !important; }
.mp-care__text { font-size: 14px; color: #667085; margin-bottom: 32px; max-width: 440px; }
.mp-care__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.mp-care__button,
.mp-care__link {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0;
  display: inline-flex;
  font-family: var(--mp-font-body);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .1em;
  padding: 0;
  text-decoration: none;
  text-transform: uppercase;
}
.mp-care__button {
  color: #fff;
}
.mp-care__link {
  color: var(--mp-sand-dark);
}
.mp-care__levels { border-top: 1px solid var(--mp-line); }
.mp-care__level {
  align-items: center;
  display: grid;
  gap: 24px;
  grid-template-columns: 88px minmax(0, 1fr);
  padding: 24px 0;
}
.mp-care__level:not(:last-child) { border-bottom: 1px solid var(--wp--preset--color--background2); }
.mp-care__pct { color: var(--mp-sand-dark); font-family: var(--mp-font-body); font-size: 36px !important; min-width: 70px; margin: 0 !important; }
.mp-care__name { margin: 0 0 3px; } .mp-care__name strong { color: var(--mp-graphite); font-size: 11px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.mp-care__desc { font-size: 12px; color: #667085; margin: 0; }
@media (max-width: 781px) {
  .mp-care__inner { grid-template-columns: 1fr; }
}

/* ─── Product page ─── */
.single-product .mp-inner-title,
.post-type-archive-product .mp-inner-title,
.tax-product_cat .mp-inner-title,
.tax-product_tag .mp-inner-title,
.woocommerce.search .mp-inner-title {
  display: none !important;
}

.mp-single-product-page,
.post-type-archive-product #primary,
.tax-product_cat #primary,
.tax-product_tag #primary,
.woocommerce.search #primary {
  padding-top: clamp(28px, 4vw, 56px);
}

.mp-product-summary {
  align-items: flex-start;
  gap: clamp(28px, 5vw, 72px) !important;
  margin: 0 auto clamp(36px, 5vw, 72px);
  max-width: 1260px;
}

.mp-product-summary__media {
  flex-basis: min(46vw, 560px) !important;
}

.mp-product-summary__media .woocommerce-product-gallery,
.mp-product-summary__media .wp-block-woocommerce-product-image-gallery {
  max-width: 100%;
}

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

.mp-product-summary__media .woocommerce-product-gallery__image,
.mp-product-summary__media .woocommerce-product-gallery__image a,
.mp-product-summary__media .woocommerce-product-gallery__image img {
  display: block;
  width: 100%;
}

.mp-product-summary__media .woocommerce-product-gallery__image img {
  aspect-ratio: 4 / 5;
  object-fit: cover;
}

.mp-product-summary__media .flex-control-thumbs {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  list-style: none;
  margin: 10px 0 0;
  padding: 0;
}

.mp-product-summary__media .flex-control-thumbs li {
  float: none;
  width: auto;
}

.mp-product-summary__media .flex-control-thumbs img {
  aspect-ratio: 1;
  object-fit: cover;
  width: 100%;
}

.mp-product-summary__content > .wp-block-post-title {
  color: var(--mp-sand-dark);
  font-family: var(--mp-font-body);
  font-size: clamp(30px, 3.2vw, 48px);
  letter-spacing: 0;
  line-height: 1.08;
  margin-bottom: 12px;
}

.mp-product-summary__content > .wp-block-post-excerpt,
.mp-product-summary__content > .wp-block-post-excerpt p {
  color: var(--mp-graphite);
  font-family: var(--mp-font-body);
  font-size: 15px;
  line-height: 1.55;
}

.mp-product-summary__content .wp-block-woocommerce-product-price,
.mp-product-summary__content .price {
  color: #111;
  font-family: var(--mp-font-body);
  font-weight: 700;
}

.mp-product-specs {
  background: #F7FBFD;
  border: 1px solid var(--mp-line);
  border-radius: 18px;
  margin: 24px 0;
  padding: 18px;
}

.mp-product-specs__title {
  color: var(--mp-sand-dark);
  font-family: var(--mp-font-body);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .1em;
  margin: 0 0 14px;
  text-transform: uppercase;
}

.mp-product-specs__list {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}

.mp-product-specs__item {
  align-items: flex-start;
  display: flex;
  gap: 10px;
  min-width: 0;
}

.mp-product-specs__icon {
  background: var(--mp-sand-dark);
  border-radius: 999px;
  box-shadow: inset 0 0 0 5px #EAF4FA;
  flex: 0 0 auto;
  height: 18px;
  margin-top: 2px;
  width: 18px;
}

.mp-product-specs__content {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.mp-product-specs__label {
  color: #7C8796;
  font-family: var(--mp-font-body);
  font-size: 11px;
  line-height: 1.25;
}

.mp-product-specs__value {
  color: var(--mp-graphite);
  font-family: var(--mp-font-body);
  font-size: 14px;
  font-weight: 600;
  line-height: 1.3;
  overflow-wrap: anywhere;
}

.mp-size-guide {
  margin: -8px 0 20px;
}

.mp-size-guide__trigger {
  align-items: center;
  background: transparent;
  border: 0;
  border-bottom: 1px solid currentColor;
  color: var(--mp-sand-dark);
  cursor: pointer;
  display: inline-flex;
  font-family: var(--mp-font-body);
  font-size: 13px;
  font-weight: 600;
  gap: 8px;
  padding: 0 0 3px;
}

.mp-size-guide__trigger::before {
  display: none;
}

.mp-size-guide__dialog[hidden] {
  display: none;
}

.mp-size-guide__dialog {
  inset: 0;
  position: fixed;
  z-index: 970;
}

.mp-size-guide__backdrop {
  background: rgba(16, 40, 76, .42);
  inset: 0;
  position: absolute;
}

.mp-size-guide__panel {
  background: #fff;
  border-radius: 22px;
  box-shadow: 0 24px 80px rgba(16, 40, 76, .24);
  box-sizing: border-box;
  left: 50%;
  max-height: min(680px, calc(100vh - 48px));
  max-width: 760px;
  overflow: auto;
  padding: 24px;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: calc(100vw - 32px);
}

.mp-size-guide__head {
  align-items: flex-start;
  display: flex;
  gap: 18px;
  justify-content: space-between;
  margin-bottom: 18px;
}

.mp-size-guide__title {
  color: var(--mp-sand-dark);
  font-family: var(--mp-font-body);
  font-size: 24px;
  line-height: 1.15;
  margin: 0;
}

.mp-size-guide__model {
  color: #7C8796;
  font-family: var(--mp-font-body);
  font-size: 13px;
  margin: 6px 0 0;
}

.mp-size-guide__close {
  align-items: center;
  background: #EAF4FA;
  border: 0;
  border-radius: 999px;
  color: var(--mp-sand-dark);
  cursor: pointer;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 26px;
  height: 40px;
  justify-content: center;
  line-height: 1;
  width: 40px;
}

.mp-size-guide__table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 8px; /* ensure space for scrollbar */
  padding-right: 8px; /* avoid last column being clipped under dialog edge */
}

.mp-size-guide__table {
  border-collapse: collapse;
  font-family: var(--mp-font-body);
  min-width: 620px;
  width: auto; /* allow horizontal scrolling to reveal full table */
}

.mp-size-guide__table th,
.mp-size-guide__table td {
  border-bottom: 1px solid var(--mp-line);
  color: var(--mp-graphite);
  font-size: 13px;
  padding: 12px;
  text-align: left;
}

.mp-size-guide__table th {
  color: var(--mp-sand-dark);
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.mp-size-guide__empty,
.mp-size-guide__note {
  color: #7C8796;
  font-family: var(--mp-font-body);
  font-size: 14px;
  line-height: 1.45;
}

.mp-size-guide__empty {
  background: #F7FBFD;
  border: 1px dashed var(--mp-line);
  border-radius: 16px;
  margin: 0;
  padding: 16px;
}

.mp-size-guide__note {
  margin: 16px 0 0;
}

.single-product form.cart .single_add_to_cart_button,
.single-product .wp-block-add-to-cart-form .single_add_to_cart_button {
  background: var(--mp-sand-dark) !important;
  border-radius: 999px !important;
  color: #fff !important;
  min-height: 46px;
  padding-left: 28px !important;
  padding-right: 28px !important;
}

.mp-marketplaces {
  margin: 16px 0 20px;
}

.mp-marketplaces__title {
  color: #7C8796;
  font-family: var(--mp-font-body);
  font-size: 12px;
  margin: 0 0 10px;
}

.mp-marketplaces__links {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

/* Wildberries/Ozon/Детский мир now ship as ready-made button graphics
 * (background, shape and label baked into the image), so the link itself
 * is just a transparent, unstyled hit area sized to the image. */
.mp-marketplaces__link {
  align-items: center;
  display: inline-flex;
  justify-content: center;
  text-decoration: none;
  transition: transform .15s ease, opacity .15s ease;
}

.mp-marketplaces__icon {
  height: 46px !important;
  width: auto !important;
  max-width: 100% !important;
  flex: 0 0 auto;
  object-fit: contain;
}

.mp-marketplaces__link:hover {
  opacity: .85;
  transform: translateY(-1px);
}

.mp-product-buy-note {
  border: 1px solid var(--mp-line);
  border-radius: 18px;
  margin: 18px 0 22px;
  padding: 16px;
}

.mp-product-buy-note__head {
  align-items: center;
  color: var(--mp-sand-dark);
  display: flex;
  font-family: var(--mp-font-body);
  font-size: 13px;
  font-weight: 700;
  gap: 8px;
  letter-spacing: .06em;
  margin-bottom: 12px;
  text-transform: uppercase;
}

.mp-product-buy-note__mark {
  background: #9AD3F1;
  border-radius: 999px;
  box-shadow: 0 0 0 5px #EAF4FA;
  height: 9px;
  width: 9px;
}

.mp-product-buy-note__list {
  display: grid;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.mp-product-buy-note__item {
  display: grid;
  gap: 2px;
}

.mp-product-buy-note__item strong {
  color: var(--mp-graphite);
  font-family: var(--mp-font-body);
  font-size: 14px;
  line-height: 1.25;
}

.mp-product-buy-note__item span {
  color: #7C8796;
  font-family: var(--mp-font-body);
  font-size: 13px;
  line-height: 1.35;
}

.single-product .wp-block-woocommerce-product-meta {
  display: none;
}

.single-product #primary,
.single-product .woocommerce.product {
  max-width: min(100% - 32px, 1440px);
  margin-left: auto;
  margin-right: auto;
}

.single-product .woocommerce.product > .wp-block-columns,
.single-product .wc-block-store-notices + .wp-block-columns {
  align-items: flex-start !important;
  gap: clamp(28px, 4vw, 58px) !important;
  margin: 0 auto clamp(36px, 5vw, 72px) !important;
  max-width: 1260px !important;
}

.single-product .woocommerce.product > .wp-block-columns > .wp-block-column:first-child,
.single-product .wc-block-store-notices + .wp-block-columns > .wp-block-column:first-child {
  flex-basis: min(46vw, 560px) !important;
  flex-grow: 0 !important;
}

.single-product .woocommerce.product > .wp-block-columns > .wp-block-column:last-child,
.single-product .wc-block-store-notices + .wp-block-columns > .wp-block-column:last-child {
  flex-basis: 0 !important;
  flex-grow: 1 !important;
  min-width: 0;
}

.single-product .woocommerce-product-gallery,
.single-product .wp-block-woocommerce-product-image-gallery {
  max-width: 560px;
}

.single-product .woocommerce-product-gallery__image img {
  aspect-ratio: 4 / 5;
  display: block;
  object-fit: cover;
  width: 100%;
}

.single-product .wp-block-add-to-cart-form,
.single-product .cart {
  margin-top: 24px;
}

.mp-product-recommendations {
  margin-top: clamp(34px, 5vw, 64px);
}

.mp-product-recommendations__title {
  color: var(--mp-sand-dark);
  font-family: var(--mp-font-body);
  font-size: clamp(24px, 3vw, 34px);
  font-weight: 600;
  letter-spacing: 0;
  line-height: 1.15;
}

.mp-product-recommendations__placeholder {
  background: #F7FBFD;
  border: 1px dashed var(--mp-line);
  border-radius: 16px;
  color: #7C8796;
  font-family: var(--mp-font-body);
  font-size: 14px;
  margin: 0;
  padding: 18px;
}

.mp-product-cards {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.mp-product-card {
  background: #fff;
  border: 1px solid var(--mp-line);
  border-radius: 18px;
  overflow: hidden;
}

.mp-product-card__image {
  aspect-ratio: 3 / 4;
  background: #F7FBFD;
  display: block;
  overflow: hidden;
}

.mp-product-card__image img {
  height: 100%;
  object-fit: cover;
  transition: transform .4s ease;
  width: 100%;
}

.mp-product-card:hover .mp-product-card__image img {
  transform: scale(1.035);
}

.mp-product-card__body {
  display: grid;
  gap: 8px;
  padding: 14px;
}

.mp-product-card__title {
  font-family: var(--mp-font-body);
  font-size: 14px;
  line-height: 1.3;
  margin: 0;
}

.mp-product-card__title a {
  color: var(--mp-graphite);
  text-decoration: none;
}

.mp-product-card__price {
  color: var(--mp-sand-dark);
  font-family: var(--mp-font-body);
  font-size: 14px;
  font-weight: 700;
}

.mp-product-card__link {
  border: 1px solid var(--mp-line);
  border-radius: 999px;
  color: var(--mp-sand-dark);
  display: inline-flex;
  font-family: var(--mp-font-body);
  font-size: 12px;
  font-weight: 600;
  justify-content: center;
  padding: 9px 14px;
  text-decoration: none;
}

@media (max-width: 900px) {
  .mp-product-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 520px) {
  .mp-product-cards {
    gap: 10px;
  }

  .mp-product-card__body {
    padding: 11px;
  }
}

.mp-product-care {
  background: linear-gradient(135deg, #F7FBFD 0%, #EAF4FA 100%);
  border-radius: 22px;
  display: grid;
  gap: clamp(22px, 4vw, 48px);
  grid-template-columns: minmax(320px, .82fr) minmax(0, 1.18fr);
  margin-top: clamp(34px, 5vw, 64px);
  padding: clamp(24px, 5vw, 52px);
}

.mp-product-care__eyebrow {
  color: #7C8796;
  font-family: var(--mp-font-body);
  font-size: 11px;
  letter-spacing: .16em;
  margin: 0 0 10px;
  text-transform: uppercase;
}

.mp-product-care__title {
  color: var(--mp-sand-dark);
  font-family: var(--mp-font-body);
  font-size: clamp(28px, 2.3vw, 34px);
  line-height: 1.12;
  margin: 0 0 14px;
  max-width: 430px;
}

.mp-product-care__text {
  color: var(--mp-graphite);
  font-family: var(--mp-font-body);
  font-size: 15px;
  line-height: 1.55;
  margin: 0;
  max-width: 440px;
}

.mp-product-care__cards {
  display: grid;
  gap: 10px;
}

.mp-product-care__card {
  background: rgba(255, 255, 255, .78);
  border: 1px solid #c7ccd1;
  border-radius: 16px;
  padding: 16px 18px;
}

.mp-product-care__card summary {
  align-items: center;
  color: #1f3d6b !important;
  cursor: pointer;
  display: flex;
  font-family: var(--mp-font-body);
  font-size: 13px !important;
  font-weight: 700 !important;
  gap: 16px;
  justify-content: space-between;
  letter-spacing: .07em !important;
  list-style: none;
  text-transform: uppercase !important;
}

.mp-product-care__card summary::-webkit-details-marker {
  display: none;
}

.mp-product-care__card summary::after {
  content: "+";
  flex: 0 0 auto;
  font-weight: 500;
}

.mp-product-care__card[open] summary::after {
  content: "-";
}

.mp-product-care__card p,
.mp-product-care__card li {
  color: #667085;
  font-family: var(--mp-font-body);
  font-size: 14px;
  line-height: 1.45;
}

.mp-product-care__card p {
  margin: 10px 0 0;
}

.mp-product-care__card ul {
  margin: 10px 0 0;
  padding-left: 18px;
}

.mp-single-product-page .woocommerce-tabs,
.mp-single-product-page .wp-block-woocommerce-product-details {
  margin-top: clamp(28px, 4vw, 52px);
}

.mp-single-product-page .woocommerce-tabs ul.tabs {
  border-bottom: 1px solid rgba(31, 55, 99, .18);
  display: flex;
  gap: clamp(18px, 3vw, 36px);
  margin: 0 0 22px;
  padding: 0;
}

.mp-single-product-page .woocommerce-tabs ul.tabs li {
  background: transparent;
  border: 0;
  list-style: none;
  margin: 0;
  padding: 0 0 10px;
}

.mp-single-product-page .woocommerce-tabs ul.tabs li.active {
  border-bottom: 2px solid var(--mp-primary);
}

.mp-single-product-page .woocommerce-tabs ul.tabs a {
  color: var(--mp-primary);
  font-family: var(--mp-font-body);
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
}

.mp-single-product-page .woocommerce-Tabs-panel,
.mp-single-product-page .woocommerce-tabs .panel {
  color: var(--mp-graphite);
  font-family: var(--mp-font-body);
  font-size: 16px;
  line-height: 1.75;
  max-width: 1180px;
}

.mp-single-product-page .woocommerce-Tabs-panel h2,
.mp-single-product-page .woocommerce-tabs .panel h2 {
  color: var(--mp-primary);
  font-size: clamp(24px, 2.1vw, 32px);
  line-height: 1.15;
  margin: 0 0 18px;
}

.mp-single-product-page .woocommerce-Tabs-panel p,
.mp-single-product-page .woocommerce-tabs .panel p {
  margin: 0 0 18px;
  max-width: 1120px;
}

@media (max-width: 781px) {
  .mp-product-care {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 781px) {
  .mp-product-summary {
    gap: 22px !important;
  }

  .mp-product-specs {
    border-radius: 16px;
    padding: 16px;
  }
}

@media (max-width: 520px) {
  .mp-product-specs__list {
    grid-template-columns: 1fr;
  }
}

/* ─── Catalog ─── */
.mp-catalog-toolbar {
  border-bottom: 1px solid var(--mp-line);
  gap: 16px;
  margin-bottom: 22px;
  padding-bottom: 16px;
}

.mp-catalog-layout {
  align-items: flex-start !important;
  gap: clamp(22px, 4vw, 42px) !important;
}

.mp-catalog-layout__sidebar {
  position: sticky;
  top: calc(var(--mp-promo-height) + 18px);
}

.mp-catalog-filters {
  border: 1px solid var(--mp-line);
  border-radius: 18px;
}

.mp-catalog-filters__title {
  color: var(--mp-sand-dark);
  font-family: var(--mp-font-body);
  font-size: 20px;
  margin: 0 0 18px;
}

.mp-catalog-filters h3,
.mp-catalog-filters__heading {
  color: var(--mp-graphite);
  font-family: var(--mp-font-body);
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: .08em;
  margin: 24px 0 10px;
  text-transform: uppercase;
}

.mp-catalog-mobile-filter {
  display: none;
}

.woocommerce .wp-block-woocommerce-product-collection .wp-block-post-title {
  font-family: var(--mp-font-body);
}

.woocommerce .wp-block-woocommerce-product-collection .wp-block-button__link {
  border-radius: 999px;
}

.post-type-archive-product #primary,
.tax-product_cat #primary,
.tax-product_tag #primary,
.woocommerce.search #primary {
  max-width: min(100% - 32px, 1440px);
  margin-left: auto;
  margin-right: auto;
}

.post-type-archive-product .woocommerce-result-count,
.tax-product_cat .woocommerce-result-count,
.tax-product_tag .woocommerce-result-count,
.woocommerce.search .woocommerce-result-count {
  color: var(--mp-graphite);
  font-family: var(--mp-font-body);
  font-size: 13px;
  margin: 0;
}

.post-type-archive-product .woocommerce-ordering select,
.tax-product_cat .woocommerce-ordering select,
.tax-product_tag .woocommerce-ordering select,
.woocommerce.search .woocommerce-ordering select,
.mp-catalog-toolbar select {
  border: 1px solid var(--mp-line);
  border-radius: 0;
  color: var(--mp-blue);
  font-family: var(--mp-font-body);
  font-size: 13px;
  min-height: 38px;
  padding: 0 34px 0 12px;
}

.mp-catalog-layout__products {
  min-width: 0;
}

.mp-catalog-layout__products .wc-block-product-template,
.mp-catalog-layout__products .wp-block-woocommerce-product-template,
.mp-catalog-layout__products ul.products {
  display: grid !important;
  gap: clamp(18px, 2vw, 28px) !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  margin: 0 !important;
  padding: 0 !important;
}

.mp-catalog-layout__products .wc-block-product,
.mp-catalog-layout__products .wp-block-post,
.mp-catalog-layout__products ul.products li.product {
  background: #fff;
  border: 1px solid var(--mp-line);
  border-radius: 8px;
  list-style: none;
  overflow: hidden;
  padding: 0 0 18px !important;
  text-align: left;
}

.mp-catalog-layout__products .wc-block-components-product-image,
.mp-catalog-layout__products .wp-block-woocommerce-product-image,
.mp-catalog-layout__products ul.products li.product a.woocommerce-LoopProduct-link {
  display: block;
  margin: 0 0 16px !important;
}

.mp-catalog-layout__products .wc-block-components-product-image img,
.mp-catalog-layout__products .wp-block-woocommerce-product-image img,
.mp-catalog-layout__products ul.products li.product img {
  aspect-ratio: 4 / 5;
  display: block;
  height: auto;
  object-fit: cover;
  width: 100%;
}

.mp-catalog-layout__products .wc-block-components-product-image {
  position: relative;
}

.mp-card-badge {
  background: #fff;
  border-radius: 999px;
  color: var(--mp-blue);
  font-family: var(--mp-font-body);
  font-size: 11px;
  font-weight: 700;
  left: 12px;
  letter-spacing: .04em;
  padding: 5px 12px;
  position: absolute;
  text-transform: uppercase;
  top: 12px;
  z-index: 2;
}

.mp-card-badge--new {
  background: var(--mp-sand-dark);
  color: #fff;
}

.mp-card-badge--hit {
  background: #fff;
  border: 1px solid var(--mp-sand-dark);
  color: var(--mp-sand-dark);
}

.mp-card-hover-img {
  aspect-ratio: 4 / 5;
  display: block;
  height: 100%;
  inset: 0;
  object-fit: cover;
  opacity: 0;
  position: absolute;
  transition: opacity .25s ease;
  width: 100%;
}

@media (hover: hover) and (pointer: fine) {
  .mp-catalog-layout__products .wc-block-components-product-image:hover .mp-card-hover-img {
    opacity: 1;
  }
}

.mp-catalog-layout__products .wp-block-post-title,
.mp-catalog-layout__products .wp-block-post-title a,
.mp-catalog-layout__products .woocommerce-loop-product__title {
  color: var(--mp-blue) !important;
  font-family: var(--mp-font-body) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  margin: 0 18px 8px !important;
  text-align: left !important;
  text-decoration: none !important;
}

.mp-catalog-layout__products .wc-block-components-product-price,
.mp-catalog-layout__products .wp-block-woocommerce-product-price,
.mp-catalog-layout__products .price {
  color: var(--mp-blue);
  font-family: var(--mp-font-body);
  font-size: 15px !important;
  margin: 0 18px 16px !important;
  text-align: left !important;
}

.mp-catalog-layout__products .wp-block-button,
.mp-catalog-layout__products .wc-block-components-product-button,
.mp-catalog-layout__products .wp-block-read-more,
.mp-catalog-layout__products ul.products li.product .button {
  margin: 0 18px !important;
}

.mp-catalog-layout__products .wp-block-button__link,
.mp-catalog-layout__products .wc-block-components-product-button__button,
.mp-catalog-layout__products .wp-block-read-more,
.mp-catalog-layout__products ul.products li.product .button {
  align-items: center;
  background: #fff !important;
  border: 1px solid var(--mp-sand-dark) !important;
  border-radius: 0 !important;
  color: var(--mp-blue) !important;
  display: inline-flex;
  font-family: var(--mp-font-body) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  justify-content: center;
  line-height: 1 !important;
  min-height: 42px;
  min-width: 170px;
  padding: 0 22px !important;
  text-decoration: none !important;
}

.mp-catalog-layout__products .wp-block-read-more {
  border-radius: 999px !important;
  min-width: 124px;
}

.post-type-archive-product ul.products,
.tax-product_cat ul.products,
.tax-product_tag ul.products,
.woocommerce.search ul.products {
  display: grid !important;
  gap: clamp(18px, 2vw, 28px) !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

@media (min-width: 1280px) {
  .mp-catalog-layout__products .wc-block-product-template,
  .mp-catalog-layout__products .wp-block-woocommerce-product-template,
  .mp-catalog-layout__products ul.products,
  .post-type-archive-product ul.products,
  .tax-product_cat ul.products,
  .tax-product_tag ul.products,
  .woocommerce.search ul.products {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

.post-type-archive-product ul.products::before,
.post-type-archive-product ul.products::after,
.tax-product_cat ul.products::before,
.tax-product_cat ul.products::after,
.tax-product_tag ul.products::before,
.tax-product_tag ul.products::after,
.woocommerce.search ul.products::before,
.woocommerce.search ul.products::after {
  display: none !important;
}

.post-type-archive-product ul.products li.product,
.tax-product_cat ul.products li.product,
.tax-product_tag ul.products li.product,
.woocommerce.search ul.products li.product {
  float: none !important;
  margin: 0 !important;
  width: auto !important;
}

.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
.tax-product_tag ul.products li.product .woocommerce-loop-product__title,
.woocommerce.search ul.products li.product .woocommerce-loop-product__title {
  color: var(--mp-blue) !important;
  font-family: var(--mp-font-body) !important;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.35 !important;
  padding: 0 !important;
}

.post-type-archive-product ul.products li.product .button,
.tax-product_cat ul.products li.product .button,
.tax-product_tag ul.products li.product .button,
.woocommerce.search ul.products li.product .button {
  border-radius: 999px !important;
}

.mp-empty-state {
  background: #F7FBFD;
  border: 1px dashed var(--mp-line);
  border-radius: 18px;
  padding: 34px;
  text-align: center;
}

.mp-search-page__form {
  margin-bottom: 18px;
}

.mp-search-page__form .wp-block-search__inside-wrapper,
.mp-empty-state .wp-block-search__inside-wrapper {
  border: 1px solid var(--mp-line);
  border-radius: 999px;
  overflow: hidden;
}

.mp-search-page__form .wp-block-search__input,
.mp-empty-state .wp-block-search__input {
  border: 0;
  min-height: 48px;
  padding-left: 18px;
}

.mp-search-page__form .wp-block-search__button,
.mp-empty-state .wp-block-search__button {
  background: var(--mp-sand-dark);
  border: 0;
  color: #fff;
  margin: 0;
  padding: 0 22px;
}

@media (max-width: 781px) {
  .mp-catalog-mobile-filter {
    display: block;
    margin-bottom: 14px;
  }

  .mp-catalog-toolbar {
    align-items: flex-start;
    flex-direction: column;
  }

  .mp-catalog-layout {
    flex-direction: column !important;
  }

  .mp-catalog-layout__sidebar {
    position: static;
    width: 100%;
  }

  .mp-catalog-filters {
    border-radius: 16px;
  }

  .mp-catalog-layout__products .wc-block-product-template,
  .mp-catalog-layout__products .wp-block-woocommerce-product-template,
  .mp-catalog-layout__products ul.products,
  .post-type-archive-product ul.products,
  .tax-product_cat ul.products,
  .tax-product_tag ul.products,
  .woocommerce.search ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 781px) {
  .mp-catalog-layout__products .wc-block-product-template,
  .mp-catalog-layout__products .wp-block-woocommerce-product-template,
  .mp-catalog-layout__products ul.products,
  .post-type-archive-product ul.products,
  .tax-product_cat ul.products,
  .tax-product_tag ul.products,
  .woocommerce.search ul.products {
    gap: 10px 8px !important;
  }

  .mp-catalog-layout__products .wp-block-post-title,
  .mp-catalog-layout__products .wp-block-post-title a,
  .mp-catalog-layout__products .woocommerce-loop-product__title {
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    display: -webkit-box;
    font-size: 13px !important;
    margin: 0 10px 4px !important;
    overflow: hidden;
  }

  .mp-catalog-layout__products .wc-block-components-product-price,
  .mp-catalog-layout__products .wp-block-woocommerce-product-price,
  .mp-catalog-layout__products .price {
    font-size: 13px !important;
    margin: 0 10px 12px !important;
  }

  .mp-catalog-layout__products .wp-block-button,
  .mp-catalog-layout__products .wc-block-components-product-button,
  .mp-catalog-layout__products .wp-block-read-more,
  .mp-catalog-layout__products ul.products li.product .button {
    margin: 0 10px 10px !important;
  }

  .mp-catalog-layout__products .wp-block-button__link,
  .mp-catalog-layout__products .wc-block-components-product-button__button {
    min-width: 0;
    width: 100%;
  }
}

/* Very narrow phones: drop to a single column so cards keep breathing room. */
@media (max-width: 359px) {
  .mp-catalog-layout__products .wc-block-product-template,
  .mp-catalog-layout__products .wp-block-woocommerce-product-template,
  .mp-catalog-layout__products ul.products,
  .post-type-archive-product ul.products,
  .tax-product_cat ul.products,
  .tax-product_tag ul.products,
  .woocommerce.search ul.products {
    grid-template-columns: 1fr !important;
  }
}

/* ─── Cart and checkout ─── */
.mp-cart-page,
.mp-checkout-page {
  background: #F7FBFD;
}

.mp-cart-page .wc-block-cart,
.mp-checkout-page .wc-block-checkout {
  font-family: var(--mp-font-body);
}

.mp-cart-page .wc-block-cart__main,
.mp-cart-page .wc-block-cart__sidebar,
.mp-checkout-page .wc-block-checkout__main,
.mp-checkout-page .wc-block-checkout__sidebar {
  background: #fff;
  border: 1px solid var(--mp-line);
  border-radius: 18px;
  padding: clamp(16px, 3vw, 28px);
}

.mp-cart-page .wc-block-components-button,
.mp-checkout-page .wc-block-components-button {
  background: var(--mp-sand-dark);
  border-radius: 999px;
  color: #fff;
  font-weight: 700;
}

.mp-cart-page .wc-block-components-button:not(.is-link):hover,
.mp-checkout-page .wc-block-components-button:not(.is-link):hover {
  background: #10284C;
  color: #fff;
}

.mp-cart-page .wc-block-components-product-name,
.mp-checkout-page .wc-block-components-product-name {
  color: var(--mp-graphite);
  font-weight: 700;
}

.mp-cart-page .wc-block-components-totals-wrapper,
.mp-checkout-page .wc-block-components-totals-wrapper {
  border-color: var(--mp-line);
}

/* Checkout fields need a clear visual boundary: the former underline-only
   treatment was too easy to mistake for static text. */
.mp-checkout-page .wc-block-checkout input[type="text"],
.mp-checkout-page .wc-block-checkout input[type="email"],
.mp-checkout-page .wc-block-checkout input[type="tel"],
.mp-checkout-page .wc-block-checkout input[type="number"],
.mp-checkout-page .wc-block-checkout select,
.mp-checkout-page .wc-block-checkout textarea,
.mp-checkout-page .wc-block-components-combobox .components-combobox-control__input {
  box-sizing: border-box;
  min-height: 52px;
  padding: 14px 18px;
  border: 1.5px solid #9eafc5;
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 1px 2px rgba(31, 61, 107, .06);
  color: var(--mp-graphite);
  font: inherit;
}

.mp-checkout-page .wc-block-checkout textarea {
  min-height: 118px;
  border-radius: 18px;
  resize: vertical;
}

.mp-checkout-page .wc-block-checkout input::placeholder,
.mp-checkout-page .wc-block-checkout textarea::placeholder {
  color: #73819a;
  opacity: 1;
}

.mp-checkout-page .wc-block-checkout input[type="text"]:focus,
.mp-checkout-page .wc-block-checkout input[type="email"]:focus,
.mp-checkout-page .wc-block-checkout input[type="tel"]:focus,
.mp-checkout-page .wc-block-checkout input[type="number"]:focus,
.mp-checkout-page .wc-block-checkout select:focus,
.mp-checkout-page .wc-block-checkout textarea:focus,
.mp-checkout-page .wc-block-components-combobox .components-combobox-control__input:focus {
  border-color: var(--mp-primary, #1f3d6b);
  box-shadow: 0 0 0 3px rgba(31, 61, 107, .14);
  outline: 0;
}

/* ─── Account ─── */
.mp-account-page {
  background: #F7FBFD;
}

.mp-account-intro {
  margin-bottom: 22px;
}

.mp-account-intro__title {
  color: var(--mp-sand-dark);
  font-family: var(--mp-font-body);
  font-size: clamp(26px, 3vw, 36px);
  margin: 0 0 8px;
}

.mp-account-intro__text {
  color: #667085;
  font-family: var(--mp-font-body);
  margin: 0;
}

.mp-account-shell {
  background: #fff;
  border: 1px solid var(--mp-line);
  border-radius: 18px;
  padding: clamp(18px, 3vw, 32px);
}

.mp-account-shell .woocommerce {
  font-family: var(--mp-font-body);
}

.mp-account-shell .woocommerce-MyAccount-navigation ul {
  border: 1px solid var(--mp-line);
  border-radius: 16px;
  list-style: none;
  margin: 0;
  overflow: hidden;
  padding: 0;
}

.mp-account-shell .woocommerce-MyAccount-navigation-link a {
  border-bottom: 1px solid var(--mp-line);
  color: var(--mp-graphite);
  display: block;
  font-size: 14px;
  font-weight: 600;
  padding: 13px 16px;
  text-decoration: none;
}

.mp-account-shell .woocommerce-MyAccount-navigation-link:last-child a {
  border-bottom: 0;
}

.mp-account-shell .woocommerce-MyAccount-navigation-link.is-active a,
.mp-account-shell .woocommerce-MyAccount-navigation-link a:hover {
  background: #EAF4FA;
  color: var(--mp-sand-dark);
}

.mp-account-shell .woocommerce-MyAccount-content {
  color: var(--mp-graphite);
}

.mp-account-shell .woocommerce form.login,
.mp-account-shell .woocommerce form.register,
.mp-account-shell .woocommerce-EditAccountForm,
.mp-account-shell .woocommerce-address-fields {
  border: 1px solid var(--mp-line);
  border-radius: 16px;
  padding: clamp(16px, 3vw, 26px);
}

.mp-account-shell .woocommerce input.input-text {
  border: 1px solid var(--mp-line);
  border-radius: 12px;
  min-height: 44px;
  padding: 0 12px;
}

.mp-account-shell .woocommerce button.button,
.mp-account-shell .woocommerce a.button {
  background: var(--mp-sand-dark);
  border-radius: 999px;
  color: #fff;
  font-weight: 700;
  padding: 12px 20px;
}

@media (max-width: 768px) {
  .mp-account-shell {
    border-radius: 16px;
    padding: 16px;
  }
}

@media (max-width: 768px) {
  .mp-cart-page .wc-block-cart__main,
  .mp-cart-page .wc-block-cart__sidebar,
  .mp-checkout-page .wc-block-checkout__main,
  .mp-checkout-page .wc-block-checkout__sidebar {
    border-radius: 16px;
    padding: 16px;
  }

  .mp-checkout-page .wc-block-checkout input[type="text"],
  .mp-checkout-page .wc-block-checkout input[type="email"],
  .mp-checkout-page .wc-block-checkout input[type="tel"],
  .mp-checkout-page .wc-block-checkout input[type="number"],
  .mp-checkout-page .wc-block-checkout select,
  .mp-checkout-page .wc-block-components-combobox .components-combobox-control__input {
    min-height: 50px;
    padding: 13px 16px;
    border-radius: 25px;
    font-size: 16px;
  }

  .mp-checkout-page .wc-block-checkout textarea {
    min-height: 108px;
    padding: 14px 16px;
    border-radius: 16px;
    font-size: 16px;
  }

  .mp-cart-page .wc-block-cart-items__row {
    align-items: start !important;
    display: grid !important;
    gap: 0 12px !important;
    grid-template-columns: 78px minmax(0, 1fr) !important;
    padding: 18px 0 !important;
  }

  .mp-cart-page .wc-block-cart-item__image {
    grid-column: 1 !important;
    grid-row: 1 / span 4 !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 78px !important;
  }

  .mp-cart-page .wc-block-cart-item__image img {
    aspect-ratio: 3 / 4;
    border-radius: 8px;
    object-fit: cover;
    width: 100% !important;
  }

  .mp-cart-page .wc-block-cart-item__product {
    grid-column: 2 !important;
    min-width: 0 !important;
    padding: 0 !important;
  }

  .mp-cart-page .wc-block-components-product-name {
    display: block !important;
    font-size: 14px !important;
    line-height: 1.3 !important;
    margin: 0 0 6px !important;
    overflow-wrap: break-word !important;
    position: static !important;
  }

  .mp-cart-page .wc-block-components-product-badge {
    display: inline-flex !important;
    margin: 0 0 6px !important;
    position: static !important;
  }

  .mp-cart-page .wc-block-components-product-metadata,
  .mp-cart-page .wc-block-components-product-details {
    font-size: 11px !important;
    line-height: 1.4 !important;
    margin: 4px 0 8px !important;
    overflow-wrap: anywhere !important;
  }

  .mp-cart-page .wc-block-cart-item__prices,
  .mp-cart-page .wc-block-cart-item__quantity {
    position: static !important;
  }

  /* Woo renders the line price twice on mobile. Keep the price inside the
     product column and remove the duplicate table total that otherwise sits
     on top of the product title in our two-column card grid. */
  .mp-cart-page .wc-block-cart-item__total {
    display: none !important;
  }

  /* The fixed mobile checkout bar already provides this action. */
  .mp-cart-page .wc-block-cart__submit-container {
    display: none !important;
  }
}

/* ─── Mobile browser app layer ─── */
.mp-mobile-nav,
.mp-mobile-action-bar,
.mp-mobile-search {
  display: none;
}

@media (max-width: 768px) {
  body.has-mobile-app-nav {
    padding-bottom: calc(var(--mp-mobile-nav-height) + env(safe-area-inset-bottom, 0px));
  }

  body.has-mobile-product-bar,
  body.has-mobile-cart-bar {
    padding-bottom: calc(var(--mp-mobile-nav-height) + var(--mp-mobile-action-height) + env(safe-area-inset-bottom, 0px));
  }

  .mp-mobile-nav {
    align-items: stretch;
    background: rgba(255, 255, 255, .98);
    border-top: 1px solid var(--mp-line);
    bottom: 0;
    box-shadow: 0 -10px 30px rgba(16, 40, 76, .12);
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    height: calc(var(--mp-mobile-nav-height) + env(safe-area-inset-bottom, 0px));
    left: 0;
    padding: 6px 8px calc(8px + env(safe-area-inset-bottom, 0px));
    position: fixed;
    right: 0;
    z-index: 900;
  }

  .mp-mobile-nav__item {
    align-items: center;
    border-radius: 14px;
    color: var(--mp-graphite);
    display: flex;
    flex-direction: column;
    font-family: var(--mp-font-body);
    font-size: 10px;
    gap: 3px;
    justify-content: center;
    line-height: 1;
    min-width: 0;
    position: relative;
    text-decoration: none;
  }

  .mp-mobile-nav__item.is-active {
    background: #EAF4FA;
    color: var(--mp-sand-dark);
  }

  .mp-mobile-nav__icon {
    display: inline-flex;
    height: 22px;
    width: 22px;
  }

  .mp-mobile-nav__icon svg {
    fill: none;
    height: 100%;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
    width: 100%;
  }

  .mp-mobile-nav__text {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 100%;
  }

  .mp-mobile-nav__badge {
    align-items: center;
    background: var(--mp-sand-dark);
    border: 2px solid #fff;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 10px;
    font-weight: 700;
    height: 18px;
    justify-content: center;
    min-width: 18px;
    padding: 0 5px;
    position: absolute;
    right: 18%;
    top: 5px;
  }

  .mp-mobile-action-bar {
    align-items: center;
    background: rgba(255, 255, 255, .98);
    border-top: 1px solid var(--mp-line);
    bottom: calc(var(--mp-mobile-nav-height) + env(safe-area-inset-bottom, 0px));
    box-shadow: 0 -10px 26px rgba(16, 40, 76, .12);
    display: flex;
    gap: 14px;
    height: var(--mp-mobile-action-height);
    justify-content: space-between;
    left: 0;
    padding: 10px 14px;
    position: fixed;
    right: 0;
    z-index: 890;
  }

  .mp-mobile-action-bar__price {
    color: #111;
    display: flex;
    flex-direction: column;
    font-family: var(--mp-font-body);
    font-size: 22px;
    font-weight: 700;
    line-height: 1.05;
    min-width: 0;
  }

  .mp-mobile-action-bar__price span:first-child:not(.woocommerce-Price-amount) {
    color: #6B7280;
    font-size: 11px;
    font-weight: 500;
    letter-spacing: .08em;
    margin-bottom: 2px;
    text-transform: uppercase;
  }

  .mp-mobile-action-bar__price del {
    color: #9CA3AF;
    font-size: 14px;
    font-weight: 400;
    order: 2;
  }

  .mp-mobile-action-bar__price ins {
    text-decoration: none;
  }

  .mp-mobile-action-bar__button {
    align-items: center;
    background: var(--mp-sand-dark);
    border: 0;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    flex: 0 0 auto;
    font-family: var(--mp-font-body);
    font-size: 14px;
    font-weight: 600;
    height: 44px;
    justify-content: center;
    min-width: 136px;
    padding: 0 22px;
    text-decoration: none;
  }

  .mp-mobile-action-bar__button.is-disabled {
    opacity: .45;
    pointer-events: none;
  }

  /* Fix #3 (client spec): the sticky product bar gained a second "Buy now"
     button next to "Add to cart" - both need to fit alongside the price on
     one row, so this narrows them (vs. the single wider button the cart bar
     still uses) rather than changing .mp-mobile-action-bar__button itself. */
  .mp-mobile-product-bar {
    gap: 8px;
  }

  .mp-mobile-product-bar .mp-mobile-action-bar__price {
    flex: 0 1 auto;
    font-size: 16px;
    max-width: 84px;
  }

  .mp-mobile-action-bar__buttons {
    display: flex;
    flex: 1 1 auto;
    gap: 6px;
    min-width: 0;
  }

  .mp-mobile-product-bar .mp-mobile-action-bar__button {
    flex: 1 1 0;
    min-width: 0;
    padding: 0 8px;
    font-size: 11.5px;
    white-space: nowrap;
  }

  .mp-mobile-product-bar .mp-mobile-action-bar__button--secondary {
    background: #fff;
    border: 1px solid var(--mp-sand-dark);
    color: var(--mp-sand-dark);
  }

  .mp-mobile-search[hidden] {
    display: none;
  }

  .mp-mobile-search {
    display: block;
    inset: 0;
    position: fixed;
    z-index: 980;
  }

  .mp-mobile-search__backdrop {
    background: rgba(16, 40, 76, .34);
    inset: 0;
    position: absolute;
  }

  .mp-mobile-search__panel {
    background: #fff;
    border-radius: 22px 22px 0 0;
    bottom: 0;
    box-shadow: 0 -18px 40px rgba(16, 40, 76, .18);
    left: 0;
    padding: 18px 16px calc(18px + env(safe-area-inset-bottom, 0px));
    position: absolute;
    right: 0;
  }

  .mp-mobile-search__head {
    align-items: center;
    display: flex;
    justify-content: space-between;
    margin-bottom: 14px;
  }

  .mp-mobile-search__label {
    color: var(--mp-sand-dark);
    font-family: var(--mp-font-body);
    font-size: 18px;
    font-weight: 700;
  }

  .mp-mobile-search__close {
    align-items: center;
    background: #EAF4FA;
    border: 0;
    border-radius: 999px;
    color: var(--mp-sand-dark);
    display: inline-flex;
    font-size: 24px;
    height: 36px;
    justify-content: center;
    line-height: 1;
    width: 36px;
  }

  .mp-mobile-search__field {
    border: 1px solid var(--mp-line);
    border-radius: 16px;
    box-sizing: border-box;
    color: var(--mp-graphite);
    font-family: var(--mp-font-body);
    font-size: 16px;
    height: 50px;
    margin-bottom: 10px;
    padding: 0 14px;
    width: 100%;
  }

  .mp-mobile-search__results {
    display: grid;
    gap: 8px;
    margin-bottom: 10px;
    max-height: min(44vh, 360px);
    overflow: auto;
  }

  .mp-mobile-search__result {
    align-items: center;
    border: 1px solid var(--mp-line);
    border-radius: 14px;
    color: inherit;
    display: grid;
    gap: 10px;
    grid-template-columns: 58px minmax(0, 1fr);
    padding: 8px;
    text-decoration: none;
  }

  .mp-mobile-search__result img {
    aspect-ratio: 1;
    background: #F7FBFD;
    border-radius: 10px;
    height: 58px;
    object-fit: cover;
    width: 58px;
  }

  .mp-mobile-search__result-body {
    display: grid;
    gap: 4px;
    min-width: 0;
  }

  .mp-mobile-search__result-title {
    color: var(--mp-graphite);
    font-family: var(--mp-font-body);
    font-size: 13px;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .mp-mobile-search__result-price {
    color: var(--mp-sand-dark);
    font-family: var(--mp-font-body);
    font-size: 12px;
    font-weight: 700;
  }

  .mp-mobile-search__all,
  .mp-mobile-search__empty {
    border-radius: 12px;
    color: #7C8796;
    display: block;
    font-family: var(--mp-font-body);
    font-size: 13px;
    margin: 0;
    padding: 10px;
    text-align: center;
    text-decoration: none;
  }

  .mp-mobile-search__all {
    background: #EAF4FA;
    color: var(--mp-sand-dark);
    font-weight: 700;
  }

  .mp-mobile-search__submit {
    background: var(--mp-sand-dark);
    border: 0;
    border-radius: 999px;
    color: #fff;
    font-family: var(--mp-font-body);
    font-size: 15px;
    font-weight: 600;
    height: 46px;
    width: 100%;
  }
}

/* Mini Problems front page - final Figma pass */
.mp-front-page {
  background: #fff;
  color: var(--mp-primary);
}

.mp-gender,
.mp-gender__grid,
.mp-gender > .wp-block-columns {
  background: #f7fbfd !important;
  gap: 10px !important;
}

.mp-gender__button--girls {
  left: auto;
  top: auto;
}

.mp-gender__button--boys {
  left: auto;
  top: auto;
}

.mp-gender__button a {
  align-items: center;
  background: rgba(255, 255, 255, .88);
  border: 1px solid rgba(188, 160, 144, .78);
  color: var(--mp-primary) !important;
  display: inline-flex !important;
  font-family: var(--mp-font-body) !important;
  font-size: clamp(20px, 2.1vw, 28px) !important;
  font-weight: 400 !important;
  gap: 14px;
  justify-content: center;
  letter-spacing: .02em;
  line-height: 1 !important;
  min-height: 58px;
  min-width: 220px;
  padding: 0 28px !important;
  text-decoration: none;
  text-shadow: none !important;
}

.mp-new-products {
  padding-top: 42px !important;
}

.mp-front-title {
  color: var(--mp-primary) !important;
  font-size: clamp(28px, 2.5vw, 36px) !important;
  letter-spacing: .01em;
}

.mp-front-link a {
  color: var(--mp-primary) !important;
  font-size: 14px;
  letter-spacing: .08em;
}

.mp-products-grid {
  gap: 10px !important;
}

.mp-product-card,
.mp-products-grid .wc-block-product {
  position: relative;
}

.mp-product-card__image,
.mp-products-grid .wc-block-components-product-image {
  position: relative;
}

.mp-product-card__image::before,
.mp-products-grid .wc-block-components-product-image::before {
  /* The real NEW/HIT badge is rendered from the product tag in PHP. */
  content: none;
  display: none;
}

.mp-product-card__image img,
.mp-products-grid .wc-block-components-product-image img {
  aspect-ratio: 421 / 568 !important;
  height: auto !important;
}

.mp-product-card__meta {
  align-items: center !important;
  gap: 16px;
  margin-top: 0 !important;
  padding: 28px 42px 0;
}

.mp-product-card__title,
.mp-product-card__title a,
.mp-products-grid .wp-block-post-title,
.mp-products-grid .wp-block-post-title a {
  color: var(--mp-primary) !important;
  font-size: 15px !important;
  margin: 0 0 3px !important;
}

.mp-product-card__price,
.mp-products-grid .wc-block-components-product-price {
  color: var(--mp-primary) !important;
  font-size: 16px !important;
}

.mp-product-card__button {
  margin: 0 !important;
}

.mp-product-card__button a,
.mp-product-card__button .wp-block-button__link,
.mp-product-card__button button,
.mp-products-grid .wp-block-button__link,
.mp-products-grid button {
  align-items: center !important;
  background: #fff !important;
  border: 1px solid rgba(188, 160, 144, .78) !important;
  border-radius: 0 !important;
  color: var(--mp-primary) !important;
  display: inline-flex !important;
  font-family: var(--mp-font-body) !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  justify-content: center !important;
  min-height: 40px !important;
  min-width: 176px !important;
  padding: 0 22px !important;
  text-decoration: none !important;
  text-transform: none !important;
}

.mp-upf {
  margin: 0 !important;
}

.mp-upf-feature {
  margin: 0 auto !important;
  max-width: 1290px !important;
  padding-bottom: 68px !important;
  position: relative;
}

.mp-upf-feature.wp-block-cover {
  align-items: center;
  box-sizing: border-box;
  display: flex;
  justify-content: flex-end;
}

.mp-upf-feature .wp-block-cover__inner-container {
  width: auto !important;
}

.mp-upf-feature > *,
.mp-upf-compare > *,
.mp-upf-explain > *,
.mp-care > * {
  margin-block-start: 0 !important;
  margin-block-end: 0 !important;
}

.mp-upf-feature__media {
  display: block;
  margin: 0 !important;
  min-height: 625px;
  overflow: hidden;
  position: relative;
}

.mp-upf-feature__media img {
  display: block;
  height: 625px;
  object-fit: cover;
  object-position: center;
  width: 100%;
}

.mp-upf-feature__card {
  background: #fff;
  color: var(--mp-primary);
  max-width: 492px;
  padding: 44px 58px 50px;
  position: relative;
  z-index: 2;
}

.mp-upf-feature__card > * {
  margin-block-start: 0 !important;
}

.mp-upf-feature__card h2 {
  color: var(--mp-primary);
  font-family: var(--mp-font-body);
  font-size: clamp(38px, 4vw, 54px);
  font-weight: 400;
  letter-spacing: .03em;
  line-height: 1;
  margin: 0 0 12px;
}

.mp-upf-feature__lead {
  border-bottom: 1px solid rgba(188, 160, 144, .5);
  color: var(--mp-primary);
  font-size: clamp(22px, 2.4vw, 30px);
  letter-spacing: .08em;
  line-height: 1.3;
  margin: 0 0 20px;
  padding-bottom: 18px;
}

.mp-upf-feature__card p:not(.mp-upf-feature__lead) {
  color: #394858;
  font-size: 15px;
  line-height: 1.55;
  margin: 0 0 26px;
}

.mp-upf-feature__card a,
.mp-upf-compare__button,
.mp-upf-compare__button .wp-block-button__link,
.mp-hits__body a {
  color: var(--mp-primary);
  font-family: var(--mp-font-body);
  font-size: 12px;
  letter-spacing: .1em;
  text-decoration: none;
  text-transform: uppercase;
}

.mp-upf-compare {
  padding: 16px 24px 78px;
}

.mp-upf-compare__title {
  color: var(--mp-primary);
  font-family: var(--mp-font-body);
  font-size: clamp(28px, 3vw, 34px);
  font-weight: 400;
  letter-spacing: .04em;
  line-height: 1.2;
  margin: 0 0 36px;
  text-align: center;
}

.mp-upf-compare__title span {
  color: var(--mp-sand-dark);
  font-weight: 600;
}

.mp-upf-compare__grid {
  display: grid;
  gap: 12px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin: 0 auto !important;
  max-width: 1263px;
}

.mp-upf-panel {
  background: #fff;
  border: 1px solid rgba(188, 160, 144, .35);
  color: var(--mp-primary);
  margin: 0 !important;
}

.mp-upf-panel--best {
  box-shadow: 0 28px 46px rgba(31, 55, 99, .12);
}

.mp-upf-panel--cream {
  background: #fff;
}

.mp-upf-panel h3 {
  background: #e8e5e3;
  color: var(--mp-primary);
  font-family: var(--mp-font-body);
  font-size: clamp(22px, 2.4vw, 30px);
  font-weight: 400;
  letter-spacing: .08em;
  margin: 0;
  padding: 18px 36px;
  text-align: center;
}

.mp-upf-panel--best h3 {
  background: var(--mp-primary);
  color: #fff;
  font-weight: 600;
}

.mp-upf-panel ul,
.mp-upf-panel__list {
  list-style: none;
  margin: 0;
  padding: 0 58px 28px;
}

.mp-upf-panel li,
.mp-upf-panel__row {
  align-items: flex-start;
  border-bottom: 1px solid rgba(188, 160, 144, .35);
  display: grid;
  gap: 24px;
  grid-template-columns: 26px minmax(0, 1fr);
  margin: 0 !important;
  padding: 18px 0;
}

.mp-upf-panel li:last-child,
.mp-upf-panel__row:last-child {
  border-bottom: 0;
}

.mp-upf-panel li span,
.mp-upf-panel__row span {
  color: var(--mp-sand-dark);
  font-size: 24px;
  line-height: 1;
}

.mp-upf-panel__icon {
  display: block;
  height: 24px;
  object-fit: contain;
  width: 24px;
}

.mp-upf-panel li p,
.mp-upf-panel__row strong {
  color: var(--mp-primary);
  display: block;
  font-size: 17px;
  font-weight: 400;
  letter-spacing: .04em;
  line-height: 1.35;
  margin: 0;
}

.mp-upf-panel li small,
.mp-upf-panel__row small {
  display: block;
  font-size: 15px;
  grid-column: 2;
}

.mp-upf-compare__button,
.mp-upf-compare__button .wp-block-button__link {
  align-items: center;
  background: var(--mp-primary);
  border-radius: 0 !important;
  color: #fff !important;
  display: flex;
  height: 44px;
  justify-content: center;
  max-width: 244px;
  min-width: 244px;
  padding: 0 28px;
}

.mp-upf-compare__button {
  background: transparent !important;
  padding: 0 !important;
}

.mp-upf-compare > .wp-block-buttons {
  margin-top: 38px;
}

.mp-upf-explain {
  padding: 20px 24px 76px;
}

.mp-upf-explain__grid {
  align-items: center;
  gap: clamp(36px, 7vw, 92px);
  margin: 0 auto !important;
  max-width: 1263px;
}

.mp-upf-explain__grid .wp-block-media-text__content,
.mp-upf-benefits > .wp-block-column {
  margin: 0 !important;
  padding: 0 !important;
}

.mp-upf-explain__text h2 {
  color: var(--mp-primary);
  font-family: var(--mp-font-body);
  font-size: clamp(42px, 4.8vw, 58px);
  font-weight: 400;
  letter-spacing: .04em;
  line-height: 1.2;
  margin: 0 0 22px;
  text-transform: uppercase;
}

.mp-upf-explain__text h2 strong {
  font-weight: 700;
}

.mp-upf-explain__text p {
  color: #394858;
  font-size: 17px;
  letter-spacing: .04em;
  line-height: 1.35;
  margin: 0;
  max-width: 610px;
}

.mp-upf-explain__text p strong {
  color: var(--mp-primary);
  font-size: 24px;
}

.mp-upf-explain__image,
.mp-upf-explain__grid .wp-block-media-text__media {
  margin: 0;
}

.mp-upf-explain__image img,
.mp-upf-explain__grid .wp-block-media-text__media img {
  aspect-ratio: 465 / 342;
  display: block;
  object-fit: cover;
  width: 100%;
}

.mp-upf-benefits {
  display: grid;
  gap: 48px;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 70px auto 0 !important;
  max-width: 1263px;
}

.mp-upf-benefits > .wp-block-column {
  border-right: 1px solid rgba(188, 160, 144, .7);
  display: grid;
  gap: 6px 18px;
  grid-template-columns: 28px minmax(0, 1fr);
  padding-right: 50px;
}

.mp-upf-benefits > .wp-block-column:last-child {
  border-right: 0;
}

.mp-upf-benefits figure {
  grid-row: span 2;
  margin: 0 !important;
}

.mp-upf-benefits img {
  height: 28px;
  object-fit: contain;
  width: 28px;
}

.mp-upf-benefits h3 {
  color: var(--mp-primary);
  font-family: var(--mp-font-body);
  font-size: 21px;
  font-weight: 400;
  letter-spacing: .06em;
  line-height: 1.2;
  margin: 0;
}

.mp-upf-benefits p {
  color: #394858;
  font-size: 14px;
  letter-spacing: .04em;
  line-height: 1.3;
  margin: 0;
}

.mp-upf-note {
  border-left: 2px solid var(--mp-sand-dark);
  color: var(--mp-primary) !important;
  font-size: 15px !important;
  margin-top: 18px !important;
  padding-left: 16px;
}

.mp-upf-benefits-section,
.mp-upf-faq,
.mp-upf-final-cta {
  padding: 70px 24px;
}

.mp-upf-benefits-section .mp-upf-benefits {
  margin-top: 0 !important;
}

.mp-upf-benefits-section .mp-upf-note {
  margin: 38px auto 0 !important;
  max-width: 1263px;
}

.mp-upf-product-cta {
  align-items: center;
  display: grid;
  gap: clamp(36px, 6vw, 78px);
  grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr);
  margin: 0 auto !important;
  max-width: 1263px;
  padding: 78px 24px;
}

.mp-upf-product-cta figure {
  margin: 0 !important;
}

.mp-upf-product-cta img {
  aspect-ratio: 760 / 520;
  display: block;
  height: auto;
  object-fit: cover;
  width: 100%;
}

.mp-upf-product-cta__card {
  background: #fff;
  border: 1px solid rgba(188, 160, 144, .35);
  padding: clamp(34px, 4vw, 56px);
}

.mp-upf-product-cta__card h2,
.mp-upf-final-cta h2,
.mp-upf-faq__aside h2 {
  color: var(--mp-primary);
  font-family: var(--mp-font-body);
  font-size: clamp(34px, 4vw, 52px);
  font-weight: 400;
  letter-spacing: .04em;
  line-height: 1.15;
  margin: 0 0 20px;
}

.mp-upf-product-cta__card p,
.mp-upf-final-cta p {
  color: #394858;
  font-size: 17px;
  letter-spacing: .04em;
  line-height: 1.45;
  margin: 0 0 28px;
}

.mp-upf-product-cta__card a,
.mp-upf-final-cta__actions a {
  align-items: center;
  display: inline-flex;
  font-family: var(--mp-font-body);
  font-size: 12px;
  justify-content: center;
  letter-spacing: .1em;
  min-height: 44px;
  min-width: 190px;
  padding: 0 28px;
  text-decoration: none;
  text-transform: uppercase;
}

.mp-upf-product-cta__card a,
.mp-upf-final-cta__primary {
  background: var(--mp-primary);
  color: #fff;
}

.mp-upf-final-cta__secondary {
  background: #fff;
  border: 1px solid rgba(188, 160, 144, .7);
  color: var(--mp-primary);
}

.mp-upf-faq__inner {
  display: grid;
  gap: clamp(36px, 6vw, 78px);
  grid-template-columns: 340px minmax(0, 1fr);
  margin: 0 auto !important;
  max-width: 1263px;
}

.mp-upf-faq .mp-faq-list {
  margin: 0 !important;
}

.mp-upf-final-cta {
  background: #f7fbfd;
}

.mp-upf-final-cta__inner {
  margin: 0 auto !important;
  max-width: 920px;
  text-align: center;
}

.mp-upf-final-cta__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  justify-content: center;
}

.mp-hits {
  background: #fff;
  margin: 0 !important;
}

.mp-hits__image {
  margin: 0 auto;
  max-width: 1290px;
  overflow: hidden;
}

.mp-hits__image img {
  aspect-ratio: 1290 / 676;
  display: block;
  height: auto;
  object-fit: cover;
  object-position: center;
  width: 100%;
}

.mp-hits__body {
  align-items: center;
  display: flex;
  flex-direction: column;
  padding: 22px 24px 8px;
}

.mp-hits__body span {
  border-left: 2px solid var(--mp-primary);
  border-top: 2px solid var(--mp-primary);
  display: block;
  height: 28px;
  transform: rotate(45deg);
  width: 28px;
}

.mp-hits__body h2 {
  color: var(--mp-primary);
  font-family: var(--mp-font-body);
  font-size: clamp(28px, 3vw, 34px);
  font-weight: 400;
  letter-spacing: .03em;
  margin: 14px 0 18px;
}

.mp-hits__body a {
  align-items: center;
  background: var(--mp-primary);
  color: #fff !important;
  display: flex;
  height: 43px;
  justify-content: center;
  min-width: 284px;
}

.mp-cheaper {
  background: #fff;
  color: var(--mp-primary);
  margin: 0 !important;
}

.mp-cheaper__water {
  background: linear-gradient(180deg, rgba(146, 210, 225, .45), rgba(0, 113, 139, .95));
  height: 40px;
}

.mp-cheaper__water--middle {
  height: 38px;
}

.mp-cheaper__water--bottom {
  background: linear-gradient(180deg, #022238, #001c2b);
  height: 42px;
}

.mp-cheaper__stats,
.mp-cheaper__table-wrap,
.mp-delivery-home {
  margin: 0 auto;
  max-width: 1130px;
}

.mp-cheaper__stats {
  align-items: center;
  display: grid;
  gap: 40px;
  grid-template-columns: 1.7fr repeat(3, 1fr);
  padding: 58px 24px 54px;
}

.mp-cheaper__intro h2,
.mp-delivery-home__intro h2 {
  color: var(--mp-primary);
  font-family: var(--mp-font-body);
  font-size: clamp(28px, 3vw, 36px);
  font-weight: 400;
  line-height: 1.1;
  margin: 0 0 4px;
}

.mp-cheaper__intro p,
.mp-delivery-home__intro p {
  color: #394858;
  font-size: 14px;
  letter-spacing: .04em;
  margin: 0 0 14px;
}

.mp-cheaper__market-icons {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.mp-cheaper__market-icons .wp-block-image {
  margin: 0 !important;
}

.mp-cheaper__market-icons img {
  border-radius: 6px;
  display: block;
}

.mp-cheaper__market-icons span {
  align-items: center;
  border-radius: 6px;
  color: #fff;
  display: inline-flex;
  font-size: 11px;
  font-weight: 700;
  height: 40px;
  justify-content: center;
  width: 40px;
}

.mp-cheaper__market-icons span:nth-child(1) { background: #1e8cff; }
.mp-cheaper__market-icons span:nth-child(2) { background: #005bff; }
.mp-cheaper__market-icons span:nth-child(3) { background: #111; font-size: 9px; }
.mp-cheaper__market-icons span:nth-child(4) { background: #c00085; }

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

.mp-cheaper__stat img {
  height: 34px;
  margin-bottom: 12px;
  object-fit: contain;
  width: 34px;
}

.mp-cheaper__stat strong {
  color: var(--mp-primary);
  display: block;
  font-family: var(--mp-font-body);
  font-size: 22px;
  font-weight: 400;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.mp-cheaper__stat span {
  color: #394858;
  display: block;
  font-size: 13px;
  line-height: 1.35;
}

.mp-cheaper__table-wrap {
  padding: 36px 24px 38px;
}

.mp-cheaper__table {
  border: 0 !important;
  border-collapse: collapse;
  box-shadow: none !important;
  width: 100%;
}

.mp-cheaper__table th,
.mp-cheaper__table td {
  background: #fff !important;
  border-bottom: 1px solid rgba(188, 160, 144, .75) !important;
  color: #394858 !important;
  font-family: var(--mp-font-body);
  font-size: 15px;
  font-weight: 400 !important;
  padding: 13px 0 !important;
  text-align: center !important;
}

.mp-cheaper__table th:first-child,
.mp-cheaper__table td:first-child {
  text-align: left !important;
}

.mp-cheaper__table th:last-child {
  color: var(--mp-primary) !important;
  font-weight: 700 !important;
}

.mp-cheaper__table td:last-child {
  color: var(--mp-sand-dark) !important;
}

.mp-cheaper__note {
  color: #8d969e;
  font-size: 11px;
  letter-spacing: .04em;
  margin: 26px 0 0;
}

.mp-delivery-home {
  align-items: center;
  border-bottom: 1px solid rgba(188, 160, 144, .75);
  border-top: 1px solid rgba(188, 160, 144, .75);
  display: grid;
  gap: 46px;
  grid-template-columns: 300px minmax(0, 1fr);
  padding: 28px 24px;
}

.mp-delivery-home__steps {
  align-items: center;
  display: grid;
  gap: 20px;
  grid-template-columns: 1fr 36px 1fr 36px 1fr 36px 1fr;
}

.mp-delivery-home__steps div {
  color: #394858;
  font-size: 14px;
  line-height: 1.25;
  text-align: left;
}

.mp-delivery-home__steps span {
  color: var(--mp-sand-dark);
  display: block;
  font-size: 24px;
  margin-bottom: 8px;
  text-align: center;
}

.mp-delivery-home__steps div:nth-child(even) span {
  color: var(--mp-primary);
  font-size: 28px;
}

.mp-delivery-home__steps p {
  margin: 0;
}

.mp-care {
  border-top: 1px solid rgba(188, 160, 144, .75) !important;
  margin: 74px auto 0 !important;
  padding: 72px 24px 78px !important;
}

.mp-care__inner {
  display: grid;
  gap: 58px;
  grid-template-columns: 330px minmax(0, 1fr);
  margin: 0 auto !important;
  max-width: 1263px;
}

.mp-care__inner > .wp-block-column,
.mp-care__level > .wp-block-column {
  margin: 0 !important;
}

.mp-care__eyebrow {
  color: var(--mp-sand-dark);
  font-size: 14px;
  letter-spacing: .28em;
  margin: 0 0 8px;
  text-transform: uppercase;
}

.mp-care__intro h2 {
  color: var(--mp-primary);
  font-family: var(--mp-font-body);
  font-size: clamp(46px, 5vw, 60px);
  font-weight: 400;
  letter-spacing: .04em;
  line-height: 1;
  margin: 0;
  text-transform: uppercase;
}

.mp-care__script {
  color: var(--mp-primary);
  font-family: var(--mp-font-script);
  font-size: clamp(24px, 2.6vw, 34px);
  line-height: 1;
  margin: -2px 0 20px;
}

.mp-care__actions {
  display: flex;
  gap: 10px;
  margin-top: 20px !important;
}

.mp-care__button .wp-block-button__link,
.mp-care__link .wp-block-button__link {
  align-items: center;
  border-radius: 0 !important;
  display: inline-flex;
  font-size: 14px !important;
  font-weight: 400 !important;
  height: 40px;
  justify-content: center;
  letter-spacing: .02em !important;
  padding: 0 24px !important;
  text-decoration: none;
  text-transform: none !important;
}

.mp-care__button .wp-block-button__link {
  background: var(--mp-primary);
  color: #fff;
}

.mp-care__link .wp-block-button__link {
  background: #fff;
  border: 1px solid rgba(188, 160, 144, .78);
  color: var(--mp-primary);
}

.mp-care__levels {
  border-top: 0 !important;
}

.mp-care__level {
  align-items: center;
  border-top: 1px solid rgba(188, 160, 144, .75);
  display: grid;
  gap: 28px;
  grid-template-columns: 80px 72px 160px minmax(0, 1fr);
  margin: 0 !important;
  padding: 24px 0;
}

.mp-care__level strong {
  color: var(--mp-primary);
  font-size: 24px;
  font-weight: 400;
}

.mp-care__level span {
  color: var(--mp-sand-dark);
  font-size: 28px;
  letter-spacing: -.08em;
}

.mp-care__level em {
  color: var(--mp-sand-dark);
  font-size: 24px;
  font-style: normal;
  letter-spacing: .06em;
}

.mp-care__level p {
  color: #394858;
  font-size: 14px;
  line-height: 1.25;
  margin: 0;
}

.mp-site-footer {
  background: var(--mp-primary);
  margin-top: 0 !important;
  padding: 64px 24px 92px !important;
}

.mp-site-footer__columns {
  display: grid;
  gap: clamp(48px, 8vw, 110px);
  grid-template-columns: 260px 140px 210px 160px;
  margin: 0 auto;
  max-width: 1180px;
}

.mp-site-footer__logo {
  margin: 0 0 16px;
}

.mp-site-footer__logo img {
  height: 72px;
  object-fit: contain;
  width: 136px;
}

.mp-site-footer,
.mp-site-footer a {
  color: #fff;
  text-decoration: none;
}

.mp-site-footer p,
.mp-site-footer__nav a {
  display: block;
  font-size: 12px;
  line-height: 1.35;
  margin: 0 0 7px;
}

.mp-site-footer__legal {
  color: rgba(255, 255, 255, .72) !important;
  font-size: 11px !important;
  margin-top: 12px !important;
}

.mp-site-footer h2 {
  color: #fff;
  font-family: var(--mp-font-body);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.2;
  margin: 0 0 18px;
}

.mp-site-footer__social div {
  display: flex;
  gap: 8px;
}

.mp-site-footer__social a {
  align-items: center;
  background: #fff;
  border-radius: 3px;
  color: var(--mp-primary);
  display: inline-flex;
  font-size: 12px;
  font-weight: 700;
  height: 22px;
  justify-content: center;
  text-transform: uppercase;
  width: 22px;
}

@media (max-width: 900px) {
  .mp-gender__grid,
  .mp-gender > .wp-block-columns,
  .mp-upf-compare__grid,
  .mp-upf-explain__grid,
  .mp-upf-product-cta,
  .mp-upf-faq__inner,
  .mp-cheaper__stats,
  .mp-delivery-home,
  .mp-care__inner,
  .mp-site-footer__columns {
    grid-template-columns: 1fr !important;
  }

  .mp-gender__button--girls,
  .mp-gender__button--boys {
    left: auto;
  }

  .mp-gender__button a {
    min-width: 190px;
  }

  .mp-product-card__meta {
    padding: 18px 16px 0;
  }

  .mp-upf-feature {
    padding: 0 0 42px;
  }

  .mp-upf-feature__media,
  .mp-upf-feature__media img {
    height: auto;
    min-height: 0;
  }

  .mp-upf-feature__media img {
    aspect-ratio: 1 / 1.05;
  }

  .mp-upf-feature__card {
    margin: -44px 18px 0;
    max-width: none;
    padding: 28px 26px;
    position: relative;
    right: auto;
    top: auto;
  }

  .mp-upf-panel ul {
    padding: 0 24px 20px;
  }

  .mp-upf-explain__text h2 {
    font-size: 34px;
  }

  .mp-upf-benefits {
    gap: 24px;
    grid-template-columns: 1fr;
  }

  .mp-upf-benefits > div,
  .mp-upf-benefits > .wp-block-column {
    border-bottom: 1px solid rgba(188, 160, 144, .45);
    border-right: 0;
    padding: 0 0 22px;
  }

  .mp-cheaper__stats,
  .mp-delivery-home {
    gap: 28px;
  }

  .mp-delivery-home__steps {
    grid-template-columns: 1fr;
  }

  .mp-delivery-home__intro {
    text-align: center;
  }

  .mp-delivery-home__steps div:nth-child(even) {
    display: none;
  }

  /* Fix delivery arrows duplication: hide inline arrow containers and clear existing pseudo-elements */
  .mp-delivery-home__steps p span,
  .mp-delivery-home__steps p strong,
  .mp-delivery-home__steps p em,
  .mp-delivery-home__steps p i {
    display: none !important;
  }

  /* Remove any existing pseudo content on step paragraphs by default */
  .mp-delivery-home__steps p::before,
  .mp-delivery-home__steps p::after {
    content: none !important;
    display: none !important;
  }

  /* Mobile: vertical steps with a single down arrow between stacked items */
  @media (max-width: 900px) {
    .mp-delivery-home__steps {
      display: block;
      grid-template-columns: 1fr;
    }

    .mp-delivery-home__steps p + p::before {
      content: "\2193";
      display: block;
      text-align: center;
      color: var(--mp-primary);
      font-size: 20px;
      margin-bottom: 8px;
    }
  }

  /* Desktop: horizontal steps with right arrows between columns */
  @media (min-width: 901px) {
    .mp-delivery-home__steps {
      display: grid !important;
      grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
      align-items: start;
      gap: 24px;
    }

    /* Show right arrow after each paragraph except the last one */
    .mp-delivery-home__steps p::after {
      content: "\2192";
      display: inline-block;
      margin: 0 12px;
      font-size: 20px;
      color: var(--mp-primary);
      vertical-align: middle;
    }

    .mp-delivery-home__steps p:last-child::after {
      content: none;
      display: none;
    }

    /* Ensure vertical arrows stay hidden on desktop */
    .mp-delivery-home__steps p + p::before {
      content: none !important;
      display: none !important;
    }
  }

  .mp-care__level {
    gap: 10px;
    grid-template-columns: 60px 64px 1fr;
  }

  .mp-care__level p {
    grid-column: 1 / -1;
  }
}

/* Editable Gutenberg blocks pass */
.mp-gender__button a {
  font-family: var(--mp-font-body) !important;
  font-size: clamp(30px, 3vw, 42px) !important;
  font-style: normal !important;
  font-weight: 400 !important;
  letter-spacing: 0;
}

.mp-hits__body {
  margin: 0 auto !important;
}

.mp-hits__arrow {
  border-left: 2px solid var(--mp-primary);
  border-top: 2px solid var(--mp-primary);
  display: block;
  height: 28px;
  margin: 0 auto !important;
  transform: rotate(45deg);
  width: 28px;
}

.mp-hits__body .wp-block-buttons {
  margin-top: 0 !important;
}

.mp-hits__button .wp-block-button__link {
  align-items: center;
  background: var(--mp-primary) !important;
  border-radius: 0 !important;
  color: #fff !important;
  display: inline-flex;
  font-family: var(--mp-font-body);
  font-size: 12px;
  height: 43px;
  justify-content: center;
  letter-spacing: .1em;
  min-width: 284px;
  padding: 0 28px;
  text-transform: uppercase;
}

.mp-cheaper__market-icons .wp-block-button__link {
  align-items: center;
  border-radius: 6px !important;
  color: #fff !important;
  display: inline-flex;
  font-size: 11px !important;
  font-weight: 700;
  height: 40px;
  justify-content: center;
  min-width: 40px;
  padding: 0 8px !important;
}

.mp-cheaper__market-icons .wp-block-button:nth-child(1) .wp-block-button__link { background: #1e8cff !important; }
.mp-cheaper__market-icons .wp-block-button:nth-child(2) .wp-block-button__link { background: #005bff !important; }
.mp-cheaper__market-icons .wp-block-button:nth-child(3) .wp-block-button__link { background: #111 !important; font-size: 9px !important; }
.mp-cheaper__market-icons .wp-block-button:nth-child(4) .wp-block-button__link { background: #c00085 !important; }

.mp-cheaper__stat .wp-block-image {
  margin: 0 auto 12px !important;
}

.mp-cheaper__stat h3 {
  color: var(--mp-primary);
  font-family: var(--mp-font-body);
  font-size: 22px;
  font-weight: 400;
  letter-spacing: .02em;
  line-height: 1.1;
  margin: 0 0 5px !important;
  text-transform: uppercase;
}

.mp-cheaper__stat p {
  color: #394858;
  font-size: 13px;
  line-height: 1.35;
  margin: 0 !important;
}

.mp-delivery-home__steps {
  align-items: center;
}

.mp-delivery-home__steps p {
  color: #394858;
  font-size: 14px;
  line-height: 1.25;
  margin: 0 !important;
  text-align: left;
}

.mp-delivery-home__steps p span {
  color: var(--mp-sand-dark);
  display: block;
  font-size: 24px;
  margin-bottom: 8px;
  text-align: center;
}

.mp-delivery-home__steps > p:nth-child(2),
.mp-delivery-home__steps > p:nth-child(4),
.mp-delivery-home__steps > p:nth-child(6) {
  align-items: center;
  display: flex;
  justify-content: center;
}

.mp-delivery-home__steps > p:nth-child(2) span,
.mp-delivery-home__steps > p:nth-child(4) span,
.mp-delivery-home__steps > p:nth-child(6) span {
  color: var(--mp-primary);
  font-size: 26px;
  margin: 0;
}

/* Main page Figma 1440px correction pass */
.mp-front-page {
  --mp-figma-width: 1440px;
}

.mp-hero .wp-block-cover__image-background {
  object-position: center center !important;
}

.mp-gender,
.mp-gender__grid,
.mp-gender > .wp-block-columns {
  background: #f7fbfd !important;
  gap: 8px !important;
}

.mp-gender__grid,
.mp-gender > .wp-block-columns {
  max-width: 1440px !important;
}

.mp-gender__cover,
.mp-gender .wp-block-cover {
  aspect-ratio: 713 / 411 !important;
}

.mp-gender__button--girls {
  left: auto;
  top: auto;
}

.mp-gender__button--boys {
  left: auto;
  top: auto;
}

.mp-gender__button a {
  background: rgba(255, 255, 255, .82) !important;
  border: 1px solid rgba(188, 160, 144, .78) !important;
  color: var(--mp-primary) !important;
  display: inline-flex !important;
  font-family: var(--mp-font-body) !important;
  font-size: clamp(28px, 2.7vw, 39px) !important;
  font-style: normal !important;
  gap: 18px !important;
  justify-content: center !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  min-height: 69px !important;
  min-width: 243px !important;
  padding: 0 26px !important;
  text-shadow: none !important;
}

.mp-new-products {
  max-width: 1290px !important;
  padding-bottom: 64px !important;
  padding-top: 50px !important;
}

.mp-section-head--row {
  margin-bottom: 34px !important;
}

.mp-front-title {
  color: #415563 !important;
  font-size: 32px !important;
}

.mp-front-link a {
  color: var(--mp-primary) !important;
  font-size: 14px !important;
  letter-spacing: .08em !important;
  text-transform: uppercase;
}

.mp-products-grid,
.mp-products-grid--demo {
  gap: 10px !important;
}

.mp-product-card__image img,
.mp-products-grid .wc-block-components-product-image img {
  aspect-ratio: 421 / 568 !important;
  object-fit: cover !important;
  width: 100% !important;
}

.mp-product-card__meta {
  min-height: 93px;
  padding: 28px 51px 0 !important;
}

.mp-upf-feature {
  max-width: 1450px !important;
  padding: 0 0 76px !important;
}

.mp-upf-feature__media,
.mp-upf-feature__media img {
  height: 697px !important;
  min-height: 697px !important;
}

.mp-upf-feature__card {
  max-width: 510px !important;
  padding: 48px 66px 54px !important;
  right: 118px !important;
  top: 148px !important;
}

.mp-upf-feature__card h2 {
  font-size: 54px !important;
  margin-bottom: 12px !important;
}

.mp-upf-feature__lead {
  font-size: 28px !important;
  padding-bottom: 18px !important;
}

.mp-upf-compare,
.mp-upf-explain {
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1263px !important;
}

.mp-upf-compare {
  padding: 22px 0 78px !important;
}

.mp-upf-compare__grid {
  gap: 13px !important;
}

.mp-upf-explain {
  padding: 20px 0 76px !important;
}

.mp-upf-explain__grid {
  gap: 82px !important;
  grid-template-columns: minmax(0, 1fr) 521px !important;
}

.mp-upf-explain__image img {
  aspect-ratio: 521 / 422 !important;
}

.mp-upf-benefits {
  gap: 58px !important;
  margin-top: 70px !important;
}

.mp-hits {
  max-width: 1441px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.mp-hits__image {
  max-width: 1441px !important;
}

.mp-hits__image img {
  aspect-ratio: 1440 / 741 !important;
  width: 100% !important;
}

.mp-hits__body {
  min-height: 166px !important;
  padding: 22px 24px 0 !important;
}

.mp-hits__arrow {
  color: transparent !important;
  font-size: 0 !important;
}

.mp-hits__body h2 {
  font-size: 34px !important;
  margin: 14px 0 18px !important;
}

.mp-cheaper {
  max-width: 1442px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.mp-cheaper__water {
  background-image: image-set(url("../images/water-texture.webp") type("image/webp"), url("../images/water-texture.png") type("image/png")) !important;
  background-position: center 0 !important;
  background-size: cover !important;
}

.mp-cheaper__water--top {
  height: 65px !important;
}

.mp-cheaper__water--middle {
  height: 47px !important;
  background-position: center 42% !important;
}

.mp-cheaper__water--bottom {
  height: 52px !important;
  background-position: center 82% !important;
}

.mp-cheaper__stats,
.mp-cheaper__table-wrap,
.mp-delivery-home {
  max-width: 1232px !important;
}

.mp-cheaper__stats {
  gap: 58px !important;
  grid-template-columns: 1.85fr repeat(3, 1fr) !important;
  min-height: 213px !important;
  padding: 44px 0 38px !important;
}

.mp-cheaper__stat .wp-block-image,
.mp-cheaper__stat img {
  height: 34px !important;
  width: 34px !important;
}

.mp-cheaper__table-wrap {
  padding: 38px 0 40px !important;
}

.mp-cheaper__table th,
.mp-cheaper__table td {
  padding: 14px 0 !important;
}

.mp-delivery-home {
  min-height: 178px !important;
  padding: 30px 0 !important;
}

.mp-care {
  max-width: 1263px !important;
}

@media (max-width: 900px) {
  .mp-hero {
    min-height: 560px !important;
  }

  .mp-upf-feature__media,
  .mp-upf-feature__media img {
    height: auto !important;
    min-height: 0 !important;
  }

  .mp-upf-feature__card {
    right: auto !important;
    top: auto !important;
  }

  .mp-upf-compare,
  .mp-upf-explain,
  .mp-cheaper,
  .mp-hits {
    max-width: 100% !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .mp-upf-explain__grid {
    grid-template-columns: 1fr !important;
  }

  .mp-cheaper__stats,
  .mp-cheaper__table-wrap,
  .mp-delivery-home {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
}

.mp-delivery-home__steps p:nth-child(even) span {
  color: var(--mp-primary);
  font-size: 28px;
}

.mp-care-page {
  background: #fff;
}

.mp-care-page__hero {
  background: #f7fbfd;
}

.mp-care-page .mp-care {
  margin-top: 0 !important;
}

.mp-care-page__details {
  background: #fff;
}

.mp-care-info-card {
  border: 1px solid rgba(188, 160, 144, .45);
  padding: 26px 24px;
}

.mp-care-info-card h3 {
  color: var(--mp-primary);
  font-family: var(--mp-font-body);
  font-size: 20px;
  font-weight: 400;
  margin: 0 0 10px !important;
}

.mp-care-info-card p {
  color: #394858;
  font-size: 14px;
  line-height: 1.5;
  margin: 0 !important;
}

.wp-site-blocks > .mp-site-footer,
.wp-site-blocks > footer.mp-site-footer {
  left: 50%;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  max-width: none !important;
  position: relative;
  right: 50%;
  width: 100vw !important;
}

.mp-site-footer .mp-site-footer__columns {
  align-items: flex-start !important;
  display: grid !important;
  gap: clamp(52px, 9vw, 126px) !important;
  grid-template-columns: 260px 140px 210px 160px !important;
  margin: 0 auto !important;
  max-width: 1180px !important;
  width: 100% !important;
}

.mp-site-footer .mp-site-footer__columns > .wp-block-column {
  flex-basis: auto !important;
  margin: 0 !important;
}

.mp-site-footer__logo {
  line-height: 0;
}

.mp-site-footer__social-links {
  gap: 8px !important;
  margin: 0 !important;
}

.mp-site-footer__social-links .wp-social-link {
  height: 22px !important;
  margin: 0 !important;
  width: 22px !important;
}

.mp-site-footer__social-links .wp-social-link a {
  align-items: center !important;
  display: inline-flex !important;
  height: 22px !important;
  justify-content: center !important;
  padding: 0 !important;
  width: 22px !important;
}

.mp-site-footer__social-links svg {
  height: 14px !important;
  width: 14px !important;
}

/* Homepage final Gutenberg sizing pass */
.mp-front-page > .mp-hero,
.mp-front-page > .mp-trust,
.mp-front-page > .mp-gender,
.mp-front-page > .mp-upf-feature,
.mp-front-page > .mp-hits,
.mp-front-page > .mp-cheaper {
  left: 50%;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  max-width: none !important;
  position: relative;
  right: 50%;
  width: 100vw !important;
}

.mp-front-page > .mp-gender {
  background: #f7fbfd !important;
}

.mp-front-page .mp-gender__grid,
.mp-front-page .mp-gender > .wp-block-columns {
  max-width: none !important;
  width: 100% !important;
}

.mp-front-page .mp-gender__cover,
.mp-front-page .mp-gender .wp-block-cover {
  aspect-ratio: 713 / 411 !important;
  min-height: clamp(320px, 28.55vw, 548px) !important;
}

.mp-front-page .mp-gender__cover img,
.mp-front-page .mp-gender .wp-block-cover img {
  height: 100% !important;
}

.mp-front-page .mp-upf-feature {
  min-height: clamp(560px, 48.4vw, 760px) !important;
  padding-bottom: 0 !important;
}

.mp-front-page .mp-upf-feature .wp-block-cover__image-background {
  object-position: center center !important;
}

.mp-front-page .mp-hits__image {
  max-width: none !important;
  width: 100% !important;
}

.mp-front-page .mp-hits__image img {
  aspect-ratio: 1440 / 741 !important;
  width: 100% !important;
}

.mp-front-page .mp-upf-compare {
  box-sizing: border-box;
  max-width: none !important;
  padding: 74px max(48px, calc((100vw - 1263px) / 2)) 86px !important;
  width: 100% !important;
}

.mp-front-page .mp-upf-compare__title {
  font-size: clamp(30px, 2.6vw, 42px) !important;
  font-weight: 500 !important;
  letter-spacing: .04em !important;
  margin: 0 0 6px !important;
  position: relative;
  z-index: 2;
}

.mp-front-page .mp-upf-compare__grid {
  gap: 14px !important;
  max-width: 1263px !important;
  width: 100% !important;
}

.mp-front-page .mp-upf-panel {
  min-height: 512px;
}

.mp-front-page .mp-upf-panel h3 {
  background: #e8e5e3 !important;
  color: var(--mp-primary) !important;
  font-size: clamp(25px, 2.15vw, 32px) !important;
  min-height: 76px;
  padding: 22px 42px !important;
}

.mp-front-page .mp-upf-panel--best h3 {
  background: var(--mp-primary) !important;
  color: #fff !important;
}

.mp-front-page .mp-upf-panel__list {
  padding: 42px 58px 34px !important;
}

.mp-front-page .mp-upf-panel__row {
  grid-template-columns: 28px minmax(0, 1fr) !important;
  min-height: 59px;
  padding: 17px 0 !important;
}

.mp-front-page .mp-upf-panel__row strong {
  font-size: clamp(16px, 1.25vw, 20px) !important;
}

.mp-front-page .mp-upf-panel__row small {
  font-size: clamp(13px, 1vw, 16px) !important;
  margin-top: 8px;
}

.mp-front-page .mp-upf-compare > .wp-block-buttons {
  margin-top: 38px !important;
}

.mp-front-page .mp-upf-compare__button .wp-block-button__link {
  min-width: 244px !important;
}

@media (max-width: 781px) {
  .mp-front-page > .mp-hero,
  .mp-front-page > .mp-trust,
  .mp-front-page > .mp-gender,
  .mp-front-page > .mp-upf-feature,
  .mp-front-page > .mp-hits,
  .mp-front-page > .mp-cheaper {
    left: auto;
    margin-left: 0 !important;
    margin-right: 0 !important;
    right: auto;
    width: 100% !important;
  }

  .mp-front-page .mp-upf-compare {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }

  .mp-front-page .mp-upf-panel {
    min-height: 0;
  }
}

/* Final Figma alignment pass: header, homepage sections and footer */
.mp-site-header {
  background: #fff !important;
  border-bottom: 1px solid rgba(31, 55, 99, .14) !important;
  box-shadow: none !important;
  position: relative !important;
  top: auto !important;
  z-index: 20;
}

.mp-promo-bar {
  background: #b99d88 !important;
  color: #fff;
  margin: 0 !important;
  min-height: 29px;
}

.mp-promo-bar__inner {
  box-sizing: border-box;
  min-height: 29px;
  margin: 0 auto !important;
  max-width: none !important;
  padding: 0 28px;
  width: 100% !important;
}

.mp-promo-bar__social {
  align-items: center;
  display: flex;
  gap: 14px !important;
  margin: 0 !important;
  min-width: 105px;
  padding: 0 !important;
}

.mp-promo-bar__spacer {
  margin: 0 !important;
  min-width: 105px;
}

.mp-promo-bar__social a,
.mp-promo-bar__text a {
  color: #fff !important;
  font-size: 10px;
  letter-spacing: .09em;
  line-height: 1.05;
  text-decoration: none !important;
  text-transform: uppercase;
}

.mp-promo-bar__social .wp-social-link {
  background: transparent !important;
  color: #fff !important;
  height: 13px !important;
  margin: 0 !important;
  width: 13px !important;
}

.mp-promo-bar__social .wp-social-link a {
  align-items: center !important;
  color: #fff !important;
  display: inline-flex !important;
  height: 13px !important;
  justify-content: center !important;
  padding: 0 !important;
  width: 13px !important;
}

.mp-promo-bar__social .wp-social-link svg {
  height: 11px !important;
  width: 11px !important;
}

.mp-promo-bar__social .wp-block-social-link-label,
.mp-site-footer__social-links .wp-block-social-link-label,
.screen-reader-text {
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  clip-path: inset(50%) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important;
  word-wrap: normal !important;
}

.mp-promo-bar__text {
  margin: 0 !important;
  position: relative;
}

.mp-promo-bar__text::after {
  background: rgba(255, 255, 255, .55);
  content: "";
  display: block;
  height: 1px;
  margin: 2px auto 0;
  width: 180px;
}

.mp-main-header {
  margin: 0 auto !important;
  max-width: none !important;
  padding: 8px 28px 7px !important;
  width: 100% !important;
}

.mp-main-header__inner,
.mp-main-header__left,
.mp-main-header__right,
.mp-header-icons {
  gap: 28px !important;
}

.mp-header-logo {
  line-height: 0;
  margin: 0 !important;
}

.mp-header-logo img {
  height: 37px !important;
  object-fit: contain !important;
  width: 70px !important;
}

.mp-catalog-toggle {
  margin: 0 !important;
}

.mp-catalog-toggle a {
  align-items: center;
  border: 1px solid var(--mp-primary);
  border-radius: 4px;
  color: var(--mp-primary) !important;
  display: inline-flex;
  font-size: 12px;
  font-weight: 500;
  gap: 10px;
  height: 28px;
  justify-content: center;
  letter-spacing: .04em;
  min-width: 106px;
  padding: 0 14px;
  text-decoration: none !important;
  text-transform: uppercase;
}

.mp-catalog-nav {
  margin: 0 !important;
}

.mp-catalog-nav .wp-block-navigation__container {
  gap: 0 !important;
}

.mp-catalog-nav .wp-block-navigation-submenu {
  align-items: center;
  border: 1px solid var(--mp-primary);
  border-radius: 4px;
  display: inline-flex;
  margin: 0 !important;
  overflow: hidden;
  position: relative;
}

.mp-catalog-nav .wp-block-navigation-submenu > .wp-block-navigation-item__content {
  align-items: center;
  border: none;
  border-radius: 0;
  color: var(--mp-primary) !important;
  display: inline-flex;
  font-size: 12px;
  font-weight: 500;
  height: 28px;
  justify-content: center;
  letter-spacing: .04em;
  min-width: 86px;
  padding: 0 8px 0 14px !important;
  text-decoration: none !important;
  text-transform: uppercase;
}

.mp-catalog-nav .wp-block-navigation__submenu-icon {
  align-items: center;
  border: none;
  border-left: 1px solid var(--mp-primary);
  border-radius: 0;
  color: var(--mp-primary) !important;
  display: inline-flex !important;
  height: 28px;
  justify-content: center;
  margin: 0 !important;
  padding: 0 10px 0 2px !important;
  width: 28px;
}

.mp-catalog-nav .wp-block-navigation__submenu-icon svg {
  height: 11px;
  width: 11px;
}

.mp-catalog-nav .wp-block-navigation__submenu-container {
  background: #fff !important;
  border: 1px solid rgba(185, 157, 136, .45) !important;
  border-radius: 4px !important;
  box-shadow: 0 14px 30px rgba(31, 55, 99, .12);
  color: var(--mp-primary) !important;
  min-width: 190px !important;
  padding: 8px 0 !important;
  top: calc(100% + 8px) !important;
}

.mp-catalog-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
  color: var(--mp-primary) !important;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .04em;
  padding: 10px 16px !important;
  text-decoration: none !important;
  text-transform: uppercase;
}

.mp-catalog-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
  background: #f7f9fb;
}

.mp-header-nav a {
  color: var(--mp-primary) !important;
  text-decoration: none !important;
}

.mp-header-icons {
  gap: 22px !important;
}

.mp-header-icons .wp-block-navigation__container {
  gap: 22px !important;
}

.mp-header-icon {
  height: 28px;
  margin: 0 !important;
  position: relative;
  width: 28px;
}

.mp-header-icon a {
  display: block;
  height: 28px;
  overflow: hidden;
  padding: 0 !important;
  position: relative;
  text-indent: -999px;
  width: 28px;
}

.mp-header-icon .wp-block-navigation-item__label {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

.mp-header-icon a::before,
.mp-header-icon a::after {
  box-sizing: border-box;
  content: "";
  display: block;
  position: absolute;
}

.mp-header-icon--search a::before {
  border: 1.5px solid #b76f4c;
  border-radius: 50%;
  height: 17px;
  left: 3px;
  top: 2px;
  width: 17px;
}

.mp-header-icon--search a::after {
  background: #b76f4c;
  height: 10px;
  left: 18px;
  top: 17px;
  transform: rotate(-45deg);
  width: 1.5px;
}

.mp-header-icon--account a::before {
  border: 1.5px solid #b76f4c;
  border-radius: 50%;
  height: 10px;
  left: 9px;
  top: 2px;
  width: 10px;
}

.mp-header-icon--account a::after {
  border: 1.5px solid #b76f4c;
  border-bottom: 0;
  border-radius: 14px 14px 0 0;
  height: 12px;
  left: 4px;
  top: 15px;
  width: 20px;
}

.mp-header-icon--heart a::before {
  color: #b76f4c;
  content: "\2661";
  font-family: Arial, sans-serif;
  font-size: 32px;
  line-height: 28px;
  position: absolute;
  top: -3px;
}

.mp-header-icon--heart a::after {
  display: none;
}

.mp-header-icon--heart a::before {
  content: "\2661" !important;
  text-indent: 0;
}

.mp-header-icon--cart a::before {
  border: 1.5px solid #b76f4c;
  height: 16px;
  left: 4px;
  top: 9px;
  width: 20px;
}

.mp-header-icon--cart a::after {
  border: 1.5px solid #b76f4c;
  border-bottom: 0;
  border-radius: 9px 9px 0 0;
  height: 9px;
  left: 9px;
  top: 2px;
  width: 10px;
}

.mp-front-page > .mp-hero {
  margin-top: 0 !important;
}

.mp-front-page .mp-hero__actions {
  gap: 6px !important;
  margin-top: 28px !important;
}

.mp-front-page .mp-hero__btn .wp-block-button__link {
  align-items: center !important;
  border-radius: 4px !important;
  box-sizing: border-box;
  display: inline-flex !important;
  font-family: var(--mp-font-body) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  height: 38px !important;
  justify-content: center;
  letter-spacing: .08em !important;
  min-width: 210px !important;
  padding: 0 42px !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
}

.mp-front-page .mp-hero__btn--outline .wp-block-button__link {
  background: rgba(255, 255, 255, .86) !important;
  border: 1px solid var(--mp-primary) !important;
  color: var(--mp-primary) !important;
}

.mp-front-page .mp-hero__btn--primary .wp-block-button__link {
  background: var(--mp-primary) !important;
  border: 1px solid var(--mp-primary) !important;
  color: #fff !important;
}

.mp-front-page > .mp-new-products {
  box-sizing: border-box;
  max-width: 1290px !important;
  width: min(1290px, calc(100vw - 80px)) !important;
}

.mp-front-page .mp-new-products .wc-block-product-template,
.mp-front-page .mp-new-products ul.products {
  width: 100% !important;
}

.mp-front-page .mp-gender__grid,
.mp-front-page .mp-gender > .wp-block-columns {
  gap: 8px !important;
}

.mp-front-page .mp-gender__button {
  margin: 0;
  position: static;
  z-index: 4;
}

.mp-front-page .mp-gender__button--girls {
  left: auto;
  top: auto;
  transform: none;
}

.mp-front-page .mp-gender__button--boys {
  left: auto;
  top: auto;
  transform: none;
}

.mp-front-page .mp-gender__button a {
  align-items: center !important;
  background: rgba(255, 255, 255, .74) !important;
  border: 1px solid rgba(185, 157, 136, .74) !important;
  border-radius: 0 !important;
  box-sizing: border-box;
  color: var(--mp-primary) !important;
  display: inline-flex !important;
  font-family: var(--mp-font-body) !important;
  font-size: clamp(30px, 2.45vw, 42px) !important;
  font-style: normal !important;
  font-weight: 400 !important;
  gap: 18px;
  justify-content: center;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  min-height: 69px !important;
  min-width: 243px !important;
  overflow: visible !important;
  padding: 8px 28px !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}

.mp-front-page .mp-gender__button span {
  font-family: var(--mp-font-body) !important;
  font-size: 26px;
  line-height: 1;
}

.mp-front-page .mp-upf-compare {
  padding-top: 66px !important;
}

.mp-front-page .mp-upf-panel {
  border: 1px solid rgba(185, 157, 136, .38) !important;
  min-height: 440px !important;
}

.mp-front-page .mp-upf-panel > h3.wp-block-heading {
  align-items: center;
  background: #e8e5e3 !important;
  color: var(--mp-primary) !important;
  display: flex !important;
  justify-content: center;
  margin: 0 !important;
  min-height: 76px !important;
  padding: 18px 32px !important;
}

.mp-front-page .mp-upf-panel.mp-upf-panel--best > h3.wp-block-heading {
  background: var(--mp-primary) !important;
  color: #fff !important;
  font-weight: 600 !important;
}

.mp-front-page .mp-upf-panel__list {
  padding: 30px 58px 26px !important;
}

.mp-front-page .mp-upf-panel__row {
  min-height: 50px !important;
  padding: 14px 0 !important;
}

.mp-front-page .mp-upf-benefits figure,
.mp-front-page .mp-upf-benefits .wp-block-image {
  height: 42px !important;
  margin: 0 18px 0 0 !important;
  min-width: 42px;
  width: 42px !important;
}

.mp-front-page .mp-upf-benefits img {
  filter: sepia(1) saturate(2.2) brightness(.72) contrast(1.25) !important;
  height: 38px !important;
  opacity: 1 !important;
  width: 38px !important;
}

.mp-front-page .mp-hits__body {
  padding: 26px 20px 30px !important;
}

.mp-front-page .mp-hits__arrow {
  color: transparent !important;
  font-size: 0 !important;
  height: 18px;
  line-height: 0;
  margin: 0 auto 10px !important;
  position: relative;
  width: 36px;
}

.mp-front-page .mp-hits__arrow span {
  display: block;
  height: 18px;
  position: relative;
  width: 36px;
}

.mp-front-page .mp-hits__arrow::before {
  background: var(--mp-primary);
  content: "";
  display: block;
  height: 2px;
  left: 3px;
  position: absolute;
  top: 8px;
  transform: rotate(-38deg);
  transform-origin: right center;
  width: 18px;
}

.mp-front-page .mp-hits__arrow::after {
  background: var(--mp-primary);
  content: "";
  display: block;
  height: 2px;
  position: absolute;
  right: 3px;
  top: 8px;
  transform: rotate(38deg);
  transform-origin: left center;
  width: 18px;
}

.mp-front-page > .mp-cheaper {
  background: image-set(url("../images/water-texture.webp") type("image/webp"), url("../images/water-texture.png") type("image/png")) center top / cover repeat-y !important;
  padding-bottom: 66px !important;
}

.mp-front-page .mp-cheaper__water {
  background: transparent !important;
}

.mp-front-page .mp-cheaper__stats,
.mp-front-page .mp-cheaper__table-wrap,
.mp-front-page .mp-delivery-home {
  background: #fff !important;
  box-sizing: border-box;
  max-width: 1290px !important;
  width: min(1290px, calc(100vw - 80px)) !important;
}

.mp-front-page .mp-cheaper__stats {
  padding: 62px 88px 58px !important;
}

.mp-front-page .mp-cheaper__stat img,
.mp-front-page .mp-delivery-home img {
  filter: sepia(1) saturate(1.65) brightness(.78) contrast(1.15) !important;
  opacity: 1 !important;
}

.mp-front-page .mp-cheaper__table td:last-child {
  color: transparent !important;
  font-size: 0 !important;
}

.mp-front-page .mp-cheaper__table tbody td:last-child::before {
  align-items: center;
  background: #b99d88;
  border-radius: 50%;
  color: #fff;
  content: "✓";
  display: inline-flex;
  font-size: 13px;
  height: 20px;
  justify-content: center;
  line-height: 1;
  width: 20px;
}

.mp-front-page .mp-cheaper__table th:nth-child(n+2),
.mp-front-page .mp-cheaper__table td:nth-child(n+2) {
  text-align: center !important;
}

.mp-front-page .mp-delivery-home {
  padding: 54px 88px 52px !important;
}

.mp-delivery-home__steps img.mp-delivery-home__icon {
  display: block !important;
  height: 28px !important;
  margin: 0 auto 10px !important;
  object-fit: contain;
  width: 28px !important;
}

.mp-care__button .wp-block-button__link,
.mp-care__link .wp-block-button__link {
  align-items: center !important;
  border-radius: 0 !important;
  display: inline-flex !important;
  height: 49px !important;
  justify-content: center;
  min-width: 150px !important;
  padding: 0 28px !important;
}

.mp-care__button .wp-block-button__link {
  background: var(--mp-primary) !important;
  border: 1px solid var(--mp-primary) !important;
  color: #fff !important;
  min-width: 176px !important;
}

.mp-care__link .wp-block-button__link {
  background: #fff !important;
  border: 1px solid rgba(185, 157, 136, .62) !important;
  color: var(--mp-primary) !important;
  min-width: 132px !important;
}

.wp-site-blocks > .mp-site-footer,
.wp-site-blocks > footer.mp-site-footer {
  left: auto !important;
  margin: 0 auto 0 !important;
  max-width: 1290px !important;
  padding: 58px 78px 86px !important;
  right: auto !important;
  width: min(1290px, calc(100vw - 80px)) !important;
}

.mp-site-footer .mp-site-footer__columns {
  gap: clamp(64px, 8vw, 118px) !important;
  grid-template-columns: 260px 130px 210px 150px !important;
  max-width: 980px !important;
}

@media (max-width: 900px) {
  .mp-main-header {
    padding: 8px 18px !important;
  }

  .mp-main-header__inner {
    align-items: flex-start !important;
    flex-direction: column;
    gap: 10px !important;
  }

  .mp-main-header__right {
    justify-content: space-between !important;
    width: 100%;
  }

  .mp-header-icons {
    gap: 14px !important;
  }

  .mp-front-page > .mp-new-products,
  .mp-front-page .mp-cheaper__stats,
  .mp-front-page .mp-cheaper__table-wrap,
  .mp-front-page .mp-delivery-home,
  .wp-site-blocks > .mp-site-footer,
  .wp-site-blocks > footer.mp-site-footer {
    width: calc(100% - 32px) !important;
  }

  .mp-front-page .mp-gender__button a {
    min-height: 56px !important;
    min-width: 190px !important;
  }

  .mp-front-page .mp-cheaper__stats,
  .mp-front-page .mp-delivery-home,
  .wp-site-blocks > .mp-site-footer,
  .wp-site-blocks > footer.mp-site-footer {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}

/* Saved-template compatibility pass */
.main-header-section {
  background: #fff !important;
  border-bottom: 1px solid rgba(31, 55, 99, .14) !important;
  box-shadow: none !important;
  margin: 0 !important;
  padding-top: 29px !important;
  position: relative !important;
}

.main-header-section::before {
  align-items: center;
  background: #b99d88;
  color: #fff;
  content: "Способы доставки и оплаты\A подробнее >";
  display: flex;
  font-size: 10px;
  height: 29px;
  justify-content: center;
  left: 0;
  letter-spacing: .09em;
  line-height: 1.05;
  position: absolute;
  right: 0;
  text-align: center;
  text-transform: uppercase;
  top: 0;
  white-space: pre;
}

.main-header-section .header-section {
  padding: 8px 28px 7px !important;
}

.main-header-section .header-inner-section {
  align-items: center !important;
  margin: 0 auto !important;
  max-width: 1290px !important;
}

.main-header-section .header-logo-box {
  align-items: center;
  display: flex !important;
  flex-basis: auto !important;
  gap: 38px;
}

.main-header-section .wp-block-site-title,
.main-header-section .header-logo-box .wp-block-heading,
.main-header-section .header-logo-box p {
  font-size: 0 !important;
  line-height: 0 !important;
  margin: 0 !important;
}

.main-header-section .wp-block-site-title a,
.main-header-section .header-logo-box a:first-child {
  background: url("../images/logo.png") center / contain no-repeat;
  display: inline-block;
  height: 45px;
  overflow: hidden;
  text-indent: -999px;
  width: 86px;
}

.main-header-section .header-logo-box::after {
  align-items: center;
  border: 1px solid var(--mp-primary);
  border-radius: 4px;
  color: var(--mp-primary);
  content: "Каталог  ☰";
  display: inline-flex;
  font-size: 12px;
  height: 28px;
  justify-content: center;
  letter-spacing: .04em;
  min-width: 106px;
  text-transform: uppercase;
}

.main-header-section .header-menu {
  flex: 1 1 auto !important;
}

.main-header-section .header-logo-box::after {
  content: none !important;
  display: none !important;
}

.main-header-section .wp-block-site-title a,
.main-header-section .header-logo-box a:first-child {
  background-image: url("../images/header-logo.png") !important;
}

.main-header-section .top-menus,
.main-header-section .wp-block-navigation {
  justify-content: flex-end !important;
}

.main-header-section .top-menus a,
.main-header-section .wp-block-navigation a {
  color: var(--mp-primary) !important;
  font-family: var(--mp-font-body) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

.main-header-section .header-btn-box {
  flex-basis: auto !important;
  max-width: 150px;
}

.main-header-section .header-woo-btns {
  gap: 22px !important;
}

.main-header-section .header-search,
.main-header-section .wc-block-mini-cart,
.main-header-section .wc-block-customer-account,
.main-header-section .header-cart,
.main-header-section .header-account {
  color: #b76f4c !important;
}

.mp-front-page .mp-hero__btn:not(.mp-hero__btn--outline):not(.is-style-outline) .wp-block-button__link,
.mp-front-page .mp-hero__btn--primary .wp-block-button__link,
.mp-front-page .mp-hero__btn:not(.is-style-outline) .wp-block-button__link {
  background: var(--mp-primary) !important;
  border: 1px solid var(--mp-primary) !important;
  color: #fff !important;
}

.mp-front-page .mp-hero__btn.is-style-outline .wp-block-button__link,
.mp-front-page .mp-hero__btn--outline .wp-block-button__link {
  background: rgba(255, 255, 255, .86) !important;
  border: 1px solid var(--mp-primary) !important;
  color: var(--mp-primary) !important;
}

.mp-front-page > .mp-new-products,
.mp-front-page .mp-new-products {
  left: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  max-width: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  position: relative !important;
  right: 50% !important;
  width: 100vw !important;
}

.mp-front-page .mp-new-products__inner {
  box-sizing: border-box;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1290px !important;
  width: min(1290px, calc(100vw - 80px)) !important;
}

.mp-front-page .mp-new-products .mp-products-grid,
.mp-front-page .mp-new-products .wp-block-woocommerce-product-collection,
.mp-front-page .mp-new-products .wc-block-product-template {
  max-width: 1290px !important;
  width: 100% !important;
}

.mp-front-page .mp-new-products .wc-block-product-template {
  display: grid !important;
  gap: 12px !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.mp-front-page .mp-upf-feature {
  box-sizing: border-box;
  align-items: center !important;
  justify-content: center !important;
  min-height: clamp(500px, 34vw, 560px) !important;
  padding: 0 !important;
}

.mp-front-page .mp-upf-feature .wp-block-cover__inner-container {
  box-sizing: border-box;
  display: flex;
  justify-content: flex-end;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1290px !important;
  padding-left: 40px;
  padding-right: 40px;
  width: 100% !important;
}

.mp-front-page .mp-upf-feature__card,
.mp-front-page .mp-upf-feature .wp-block-cover__inner-container > .wp-block-group {
  color: var(--mp-primary) !important;
  max-width: 410px !important;
  padding: 40px 48px 36px !important;
  position: relative !important;
  right: auto !important;
  top: auto !important;
  width: 410px !important;
}

.mp-front-page .mp-upf-feature__card h2,
.mp-front-page .mp-upf-feature .wp-block-cover__inner-container h2 {
  color: var(--mp-primary) !important;
}

.mp-front-page .mp-upf-panel.mp-upf-panel--best > h3,
.mp-front-page .mp-upf-panel.mp-upf-panel--best > .wp-block-heading,
.mp-front-page .mp-upf-panel--best h3.wp-block-heading {
  background: var(--mp-primary) !important;
  color: #fff !important;
  min-height: 76px !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.mp-front-page .mp-upf-panel__list {
  align-content: start !important;
  display: grid !important;
}

.mp-front-page .mp-hits {
  background: #fff !important;
}

.mp-front-page .mp-hits__image,
.mp-front-page .mp-hits__image img {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.mp-front-page .mp-hits:not(:has(.mp-hits__image))::before {
  aspect-ratio: 1440 / 741;
  background: image-set(url("../images/hits-banner.webp") type("image/webp"), url("../images/hits-banner.png") type("image/png")) center center / cover no-repeat;
  content: "";
  display: block;
  width: 100%;
}

.mp-front-page .mp-hits__body {
  min-height: 126px !important;
  padding: 28px 20px 30px !important;
}

.mp-front-page .mp-hits__body h2 {
  margin-top: 4px !important;
}

.mp-front-page .mp-hits__button .wp-block-button__link {
  color: #fff !important;
}

.mp-care .mp-care__button,
.mp-care .mp-care__link,
.mp-care .mp-care__button .wp-block-button__link,
.mp-care .mp-care__link .wp-block-button__link,
.mp-care .wp-block-button__link {
  border-radius: 0 !important;
}

.mp-care .mp-care__button .wp-block-button__link {
  background: var(--mp-primary) !important;
  color: #fff !important;
}

.mp-care .mp-care__link .wp-block-button__link {
  background: #fff !important;
  color: var(--mp-primary) !important;
}

.mp-site-footer,
.wp-site-blocks > .mp-site-footer,
.wp-site-blocks > footer.mp-site-footer {
  box-sizing: border-box !important;
  left: 50% !important;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
  max-width: none !important;
  position: relative !important;
  right: 50% !important;
  width: 100vw !important;
}

.mp-site-footer .mp-site-footer__brand h2,
.mp-site-footer .mp-site-footer__brand > p:first-of-type::before {
  content: none !important;
  display: none !important;
}

/* ─── Финальная сверка таблицы «Дешевле на сайте» с макетом дизайнера ───
   Ранее в файле накопилось несколько конфликтующих !important-правил
   (белый фон + серый текст), которые не совпадали с макетом. Ниже —
   единственный источник истины для этой таблицы, подтверждённый по
   пикселям исходного PNG: тёмно-синяя шапка у Ozon/Wildberries,
   светло-серая шапка + тёмно-синий текст у колонки Mini Problems,
   белый фон тела таблицы, тёмно-синий текст везде. */
.mp-cheaper__table th,
.mp-cheaper__table td {
  background: var(--mp-primary) !important;
  color: #fff !important;
  font-family: var(--mp-font-body) !important;
  font-weight: 400 !important;
  text-align: center !important;
}

.mp-cheaper__table td {
  background: #fff !important;
  color: var(--mp-primary) !important;
}

.mp-cheaper__table th:first-child,
.mp-cheaper__table td:first-child {
  background: #fff !important;
  color: var(--mp-primary) !important;
  text-align: left !important;
}

.mp-cheaper__table th:last-child {
  background: #E8E6E5 !important;
  color: var(--mp-primary) !important;
  font-weight: 700 !important;
}

.mp-cheaper__table td:last-child {
  background: #fff !important;
  color: var(--mp-primary) !important;
  font-weight: 700 !important;
}

/* Keep the desktop comparison table fully inside its white panel. The first
   column used to consume about half of the table and squeezed the marketplace
   columns; explicit proportions leave room for every heading without changing
   the separately defined horizontal-scroll layout on mobile. */
@media (min-width: 782px) {
  .mp-front-page .mp-cheaper__table table {
    table-layout: fixed;
  }

  .mp-front-page .mp-cheaper__table th:first-child,
  .mp-front-page .mp-cheaper__table td:first-child {
    width: 42%;
  }

  .mp-front-page .mp-cheaper__table th:nth-child(2),
  .mp-front-page .mp-cheaper__table td:nth-child(2),
  .mp-front-page .mp-cheaper__table th:nth-child(3),
  .mp-front-page .mp-cheaper__table td:nth-child(3) {
    width: 14%;
  }

  .mp-front-page .mp-cheaper__table th:last-child,
  .mp-front-page .mp-cheaper__table td:last-child {
    width: 30%;
  }
}

/* Homepage pinpoint fixes: keep these blocks editable in Gutenberg. */
.mp-front-page .mp-gender__button {
  left: auto !important;
  margin: 0 !important;
  position: static !important;
  top: auto !important;
  transform: none !important;
  z-index: 4;
}

.mp-front-page .mp-gender__button--girls,
.mp-front-page .mp-gender__button--boys {
  left: auto !important;
  top: auto !important;
  transform: none !important;
}

.mp-front-page .mp-gender__cover,
.mp-front-page .mp-gender .wp-block-cover {
  align-items: center !important;
  display: flex !important;
}

.mp-front-page .mp-gender__cover .wp-block-cover__inner-container,
.mp-front-page .mp-gender .wp-block-cover .wp-block-cover__inner-container {
  height: auto !important;
  inset: auto !important;
  position: relative !important;
  width: 100% !important;
}

.mp-front-page .mp-upf-panel__icon {
  display: block;
  height: 24px;
  object-fit: contain;
  width: 24px;
}

.mp-front-page .mp-upf-panel__row > .mp-upf-panel__icon {
  align-self: center;
}

/* Gender buttons are native Gutenberg Button blocks; keep only visual styling here. */
.mp-front-page .mp-gender .wp-block-button.mp-gender__button,
.mp-front-page .mp-gender .wp-block-button.mp-gender__button--girls,
.mp-front-page .mp-gender .wp-block-button.mp-gender__button--boys {
  margin: 0 !important;
  position: static !important;
}

.mp-front-page .mp-gender .wp-block-button.mp-gender__button .wp-block-button__link,
.mp-front-page .mp-gender .wp-block-button.mp-gender__button .wp-element-button {
  align-items: center !important;
  background: rgba(255, 255, 255, .74) !important;
  border: 1px solid rgba(185, 157, 136, .74) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  color: var(--mp-primary) !important;
  display: inline-flex !important;
  font-family: var(--mp-font-body) !important;
  font-size: clamp(28px, 2.35vw, 39px) !important;
  font-style: normal !important;
  font-weight: 400 !important;
  gap: 18px !important;
  justify-content: center !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  min-height: 69px !important;
  min-width: 243px !important;
  outline: none !important;
  padding: 8px 28px !important;
  text-decoration: none !important;
  text-shadow: none !important;
  white-space: nowrap !important;
}

.mp-front-page .mp-gender .wp-block-button.mp-gender__button .wp-block-button__link span,
.mp-front-page .mp-gender .wp-block-button.mp-gender__button .wp-element-button span {
  font-family: var(--mp-font-body) !important;
  font-size: 26px !important;
  line-height: 1 !important;
}

/* Gender native Gutenberg reset: this block must remain editable via Cover/Group/Buttons controls. */
.mp-front-page .mp-gender,
.mp-front-page .mp-gender__grid,
.mp-front-page .mp-gender > .wp-block-columns {
  gap: 8px !important;
}

/*
 * Mobile fix: "Девочкам / Мальчикам" buttons were dead-centered over the
 * photo (align-items:center + justify-content:center), landing right on
 * the child's face. Anchor them to the bottom of the image on phones
 * instead, with a soft gradient behind them so the text stays readable.
 */
@media (max-width: 900px) {
  .mp-front-page .mp-gender__cover,
  .mp-front-page .mp-gender .wp-block-cover {
    align-items: flex-end !important;
    padding-bottom: 28px !important;
  }

  .mp-front-page .mp-gender__cover::after,
  .mp-front-page .mp-gender .wp-block-cover::after {
    background: linear-gradient(to top, rgba(16, 26, 44, .55), rgba(16, 26, 44, 0) 60%);
    bottom: 0;
    content: "";
    height: 45%;
    left: 0;
    pointer-events: none;
    position: absolute;
    right: 0;
    z-index: 1;
  }

  .mp-front-page .mp-gender__button {
    position: relative;
    z-index: 2;
  }
}

/*
 * Mobile fix: hero banner was cropping most of the photo. The mobile
 * min-height values below were previously overridden by an unconditional
 * ".mp-hero { min-height: 602px !important; }" rule elsewhere in this file
 * (removed) that forced the same tall, near-square box on every screen
 * size regardless of the photo's landscape aspect ratio. Now that the
 * override is gone these apply again, but we also lower them a bit further
 * and re-center the crop so less of the image is cut off on phones.
 */
@media (max-width: 520px) {
  .mp-hero {
    min-height: min(70vw, 460px) !important;
  }

  .mp-hero .wp-block-cover__image-background {
    object-position: 58% center;
  }
}

.mp-front-page .mp-gender__button-area {
  box-sizing: border-box !important;
  margin: 0 !important;
  max-width: none !important;
  min-width: 0 !important;
  position: static !important;
  transform: none !important;
  width: 100% !important;
  z-index: 4 !important;
}

.mp-front-page .mp-gender__button-area--girls {
  padding-left: 0 !important;
}

.mp-front-page .mp-gender__button-area--boys {
  padding-right: 0 !important;
}

.mp-front-page .mp-gender .wp-block-buttons.mp-gender__buttons {
  margin: 0 !important;
}

.mp-front-page .mp-gender .wp-block-button.mp-gender__button {
  left: auto !important;
  margin: 0 !important;
  position: static !important;
  top: auto !important;
  transform: none !important;
}

.mp-front-page .mp-gender .wp-block-button.mp-gender__button .wp-block-button__link,
.mp-front-page .mp-gender .wp-block-button.mp-gender__button a.wp-block-button__link,
.mp-front-page .mp-gender .wp-block-button.mp-gender__button .wp-element-button {
  align-items: center !important;
  background-color: transparent !important;
  background-image: none !important;
  border: 1px solid rgba(185, 157, 136, .74) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  color: var(--mp-primary) !important;
  display: inline-flex !important;
  font-family: var(--mp-font-body) !important;
  font-size: clamp(28px, 2.35vw, 39px) !important;
  font-style: normal !important;
  font-weight: 400 !important;
  gap: 18px !important;
  justify-content: center !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  min-height: 69px !important;
  min-width: 243px !important;
  outline: 0 !important;
  padding: 8px 28px !important;
  text-decoration: none !important;
  text-shadow: none !important;
  white-space: nowrap !important;
}

.mp-front-page .mp-hits__arrow {
  display: block !important;
  height: 22px !important;
  line-height: 0 !important;
  margin: 0 auto 10px !important;
  width: 42px !important;
}

.mp-front-page .mp-hits__arrow::before,
.mp-front-page .mp-hits__arrow::after,
.mp-front-page .mp-hits__arrow span {
  content: none !important;
  display: none !important;
}

.mp-front-page .mp-hits__arrow img {
  display: block;
  height: 22px !important;
  object-fit: contain;
  width: 42px !important;
}

/* Product/catalog hotfixes: keep layouts editable, fix broken Woo states. */
.single-product .mp-product-buy-note {
  display: none !important;
}

.single-product .mp-product-summary__content > .wp-block-post-title {
  color: #1f3d6b !important;
  font-size: clamp(32px, 3vw, 48px) !important;
  line-height: 1.12 !important;
  max-width: 760px;
}

.single-product .mp-product-summary__content > .wp-block-post-excerpt,
.single-product .mp-product-summary__content > .wp-block-post-excerpt p {
  max-width: 820px;
}

.single-product .mp-product-specs {
  background: #f7fbfd;
  border-radius: 8px;
  padding: 22px 24px;
}

.single-product .mp-product-specs__list {
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.single-product .mp-product-specs__icon {
  background: transparent;
  border: 1px solid var(--mp-blue);
  box-shadow: none;
}

.single-product .mp-size-guide {
  margin: 6px 0 20px;
}

.single-product .mp-size-guide__trigger {
  border-bottom-color: var(--mp-blue);
  color: var(--mp-blue);
  font-size: 14px;
}

.single-product .mp-size-guide__trigger::before {
  background: var(--mp-blue);
}

.mp-marketplaces {
  margin: 18px 0 22px;
}

.mp-marketplaces__title {
  color: var(--mp-blue);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.mp-marketplaces__links {
  gap: 10px;
}

/* Shape, size and brand colors for marketplace buttons are defined once,
   earlier in this file (.mp-marketplaces__link and .is-wb/.is-ozon/.is-detmir)
   — this duplicate block used to set a conflicting radius/size/Detmir color
   and has been removed instead of layering a third override on top. */

.mp-catalog-size-filter {
  margin-top: 24px;
}

.mp-catalog-gender-filter {
  margin-top: 24px;
}

.mp-catalog-gender-filter__list,
.mp-catalog-size-filter__list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.mp-catalog-gender-filter__list a,
.mp-catalog-size-filter__list a {
  align-items: center;
  border: 1px solid var(--mp-line);
  color: var(--mp-blue);
  display: inline-flex;
  font-family: var(--mp-font-body);
  font-size: 13px;
  gap: 8px;
  min-height: 34px;
  padding: 0 11px;
  text-decoration: none;
}

.mp-catalog-gender-filter__list a span,
.mp-catalog-size-filter__list a span {
  border: 1px solid currentColor;
  height: 13px;
  width: 13px;
}

.mp-catalog-gender-filter__list a.is-active,
.mp-catalog-size-filter__list a.is-active {
  background: var(--mp-blue);
  border-color: var(--mp-blue);
  color: #fff;
}

.mp-catalog-layout__products .wc-block-components-product-image,
.mp-catalog-layout__products .wp-block-woocommerce-product-image {
  background: #f7fbfd;
}

.mp-catalog-layout__products .wc-block-components-product-image img,
.mp-catalog-layout__products .wp-block-woocommerce-product-image img,
.mp-catalog-layout__products ul.products li.product img {
  height: 100% !important;
}

.mp-catalog-layout__products .wp-block-button__link,
.mp-catalog-layout__products .wc-block-components-product-button__button,
.mp-catalog-layout__products .wp-block-read-more,
.mp-catalog-layout__products ul.products li.product .button {
  border-radius: 0 !important;
}

/* Product system pages: final storefront button/link normalization. */
.single-product .mp-product-card__title a,
.single-product .mp-product-recommendations .wp-block-post-title a,
.single-product .related.products .woocommerce-loop-product__title,
.single-product .related.products a,
.mp-catalog-layout__products .wp-block-post-title a,
.mp-catalog-layout__products .woocommerce-loop-product__title,
.mp-catalog-layout__products a.woocommerce-LoopProduct-link {
  color: var(--mp-blue, #213b67) !important;
  text-decoration: none !important;
}

.single-product .mp-product-card__title a:hover,
.single-product .mp-product-recommendations .wp-block-post-title a:hover,
.single-product .related.products a:hover,
.mp-catalog-layout__products .wp-block-post-title a:hover,
.mp-catalog-layout__products a.woocommerce-LoopProduct-link:hover {
  color: var(--mp-blue, #213b67) !important;
  text-decoration: none !important;
}

.single-product .mp-product-card__link,
.single-product .mp-product-card__button .wp-block-button__link,
.single-product .mp-product-recommendations .wp-block-button__link,
.single-product .mp-product-recommendations .wc-block-components-product-button__button,
.single-product .related.products .button,
.mp-catalog-layout__products .wp-block-button__link,
.mp-catalog-layout__products .wc-block-components-product-button__button,
.mp-catalog-layout__products .wp-block-read-more,
.mp-catalog-layout__products ul.products li.product .button {
  align-items: center !important;
  background: #fff !important;
  border: 1px solid var(--mp-sand, #c7ad9b) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--mp-blue, #213b67) !important;
  display: inline-flex !important;
  font-family: var(--mp-font-body, Jost, Arial, sans-serif) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  justify-content: center !important;
  letter-spacing: 0 !important;
  line-height: 1.1 !important;
  min-height: 42px !important;
  min-width: 170px !important;
  padding: 0 22px !important;
  text-decoration: none !important;
  text-transform: none !important;
}

.single-product .mp-product-card__link:hover,
.single-product .mp-product-card__button .wp-block-button__link:hover,
.single-product .mp-product-recommendations .wp-block-button__link:hover,
.single-product .mp-product-recommendations .wc-block-components-product-button__button:hover,
.single-product .related.products .button:hover,
.mp-catalog-layout__products .wp-block-button__link:hover,
.mp-catalog-layout__products .wc-block-components-product-button__button:hover,
.mp-catalog-layout__products .wp-block-read-more:hover,
.mp-catalog-layout__products ul.products li.product .button:hover {
  background: var(--mp-blue, #213b67) !important;
  border-color: var(--mp-blue, #213b67) !important;
  color: #fff !important;
}

/* NOTE: .mp-marketplaces__link intentionally excluded from the generic
   button reset above — see the dedicated is-wb/is-ozon/is-detmir rules,
   which keep each marketplace's brand color (item 13 of the brief). */

.mp-product-care__card summary::after {
  color: var(--mp-blue, #213b67) !important;
  content: "+" !important;
  font-family: Arial, sans-serif !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  line-height: 1 !important;
  text-transform: none !important;
}

.mp-product-care__card[open] summary::after {
  content: "-" !important;
}

/* Final product/system-page corrections: header icons, search panel, catalog buttons. */
.mp-header-nav .wp-block-navigation__container {
  column-gap: 44px !important;
}

.mp-header-icons,
.mp-header-icons .wp-block-navigation__container {
  align-items: center !important;
  display: flex !important;
  gap: 24px !important;
}

.mp-header-icons .wp-block-navigation-item,
.mp-header-icons .wp-block-navigation-item__content {
  align-items: center !important;
  display: inline-flex !important;
  flex: 0 0 28px !important;
  height: 28px !important;
  justify-content: center !important;
  min-width: 28px !important;
  overflow: visible !important;
  padding: 0 !important;
  position: relative !important;
  width: 28px !important;
}

.mp-header-icons .wp-block-navigation-item__label,
.mp-header-icons .wp-block-navigation-item__content > span,
.mp-header-icons .wp-block-navigation-item__content > .wp-block-navigation-item__label {
  display: none !important;
}

.mp-header-icons .wp-block-navigation-item__content {
  color: transparent !important;
  font-size: 0 !important;
  letter-spacing: 0 !important;
  line-height: 0 !important;
  text-indent: -9999px !important;
  white-space: nowrap !important;
}

.mp-header-icons .wp-block-navigation-item__content::before,
.mp-header-icons .wp-block-navigation-item__content::after {
  text-indent: 0 !important;
}

.mp-search-panel {
  background: rgba(255, 255, 255, .98);
  border: 1px solid var(--mp-line, #d8c8bb);
  box-shadow: 0 22px 70px rgba(31, 55, 99, .16);
  left: 50%;
  max-width: min(620px, calc(100vw - 32px));
  opacity: 0;
  padding: 28px 30px 30px;
  pointer-events: none;
  position: fixed;
  top: 92px;
  transform: translate(-50%, -8px);
  transition: opacity .18s ease, transform .18s ease;
  width: 100%;
  z-index: 1200;
}

.mp-search-panel:target {
  opacity: 1;
  pointer-events: auto;
  transform: translate(-50%, 0);
}

.mp-search-panel__close {
  align-items: center;
  color: var(--mp-blue, #213b67) !important;
  display: inline-flex;
  font-family: Arial, sans-serif;
  font-size: 24px;
  height: 30px;
  justify-content: center;
  line-height: 1;
  position: absolute;
  right: 12px;
  text-decoration: none !important;
  top: 8px;
  width: 30px;
}

.mp-search-panel .wp-block-search__inside-wrapper {
  border: 1px solid var(--mp-sand, #c7ad9b);
  display: flex;
  min-height: 48px;
}

.mp-search-panel .wp-block-search__input {
  border: 0 !important;
  color: var(--mp-blue, #213b67);
  font-family: var(--mp-font-body, Jost, Arial, sans-serif);
  font-size: 15px;
  padding: 0 16px;
}

.mp-search-panel .wp-block-search__button {
  background: var(--mp-blue, #213b67) !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: #fff !important;
  font-family: var(--mp-font-body, Jost, Arial, sans-serif);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .04em;
  margin: 0 !important;
  min-width: 112px;
  text-transform: uppercase;
}

body.search .mp-post-card__button,
body.search .mp-post-card__button:visited,
body.search .wp-block-read-more,
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button,
.mp-catalog-layout__products .wp-block-button__link,
.mp-catalog-layout__products .wc-block-components-product-button__button,
.mp-catalog-layout__products .wp-block-read-more,
.single-product .related.products .button,
.single-product .mp-product-recommendations .wp-block-button__link,
.single-product .mp-product-recommendations .wc-block-components-product-button__button {
  align-items: center !important;
  background: #fff !important;
  border: 1px solid var(--mp-sand, #c7ad9b) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--mp-blue, #213b67) !important;
  display: inline-flex !important;
  font-family: var(--mp-font-body, Jost, Arial, sans-serif) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  justify-content: center !important;
  letter-spacing: 0 !important;
  line-height: 1.1 !important;
  min-height: 42px !important;
  min-width: 170px !important;
  padding: 0 22px !important;
  text-decoration: none !important;
  text-transform: none !important;
}

body.search .mp-post-card__button:hover,
body.search .wp-block-read-more:hover,
.woocommerce ul.products li.product .button:hover,
.woocommerce-page ul.products li.product .button:hover,
.mp-catalog-layout__products .wp-block-button__link:hover,
.mp-catalog-layout__products .wc-block-components-product-button__button:hover,
.mp-catalog-layout__products .wp-block-read-more:hover,
.single-product .related.products .button:hover,
.single-product .mp-product-recommendations .wp-block-button__link:hover,
.single-product .mp-product-recommendations .wc-block-components-product-button__button:hover {
  background: var(--mp-blue, #213b67) !important;
  border-color: var(--mp-blue, #213b67) !important;
  color: #fff !important;
}

/* Marketplace buttons keep their brand color (is-wb/is-ozon/is-detmir on
   .mp-marketplaces__link, defined earlier in this file) — only the shared
   pill shape/size is enforced here, deliberately outside the generic
   outline-button reset above (see item 13 of the brief: brand colors must
   stay, sizing/alignment must match). */
body.single-product .mp-marketplaces .mp-marketplaces__links {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}

body.single-product .mp-marketplaces .mp-marketplaces__link {
  min-height: 46px !important;
  min-width: 170px !important;
}

.mp-editable-page > .wp-block-group:first-child,
.mp-editable-page .mp-page-hero,
.mp-editable-page .mp-faq-hero,
.mp-editable-page .mp-delivery-hero {
  box-sizing: border-box;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1440px !important;
  padding-left: clamp(24px, 5vw, 96px) !important;
  padding-right: clamp(24px, 5vw, 96px) !important;
  width: 100% !important;
}

.mp-editable-page .mp-page-title,
.mp-editable-page h1.mp-page-title {
  color: var(--mp-blue, #213b67) !important;
  font-size: clamp(48px, 7vw, 108px) !important;
  line-height: .98 !important;
  max-width: 1180px !important;
  overflow-wrap: normal !important;
  word-break: normal !important;
}

@media (max-width: 900px) {
  .mp-header-nav .wp-block-navigation__container {
    column-gap: 22px !important;
  }

  .mp-search-panel {
    top: 72px;
  }

  .mp-editable-page .mp-page-title,
  .mp-editable-page h1.mp-page-title {
    font-size: clamp(40px, 13vw, 64px) !important;
  }
}

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

.single-product .mp-product-specs__item {
  gap: 0 !important;
}

/* Editable service pages: make real page content use the same canvas as patterns. */
.mp-editable-page {
  box-sizing: border-box;
  margin-block-start: 0 !important;
  max-width: none !important;
  overflow-x: clip;
  width: 100% !important;
}

.mp-editable-page__content,
.mp-editable-page .entry-content {
  box-sizing: border-box;
  margin-block-start: 0 !important;
  max-width: none !important;
  width: 100% !important;
}

.mp-editable-page__content > *,
.mp-editable-page .entry-content > * {
  margin-block-start: 0;
}

.mp-editable-page .mp-brand-page,
.mp-editable-page .mp-care-page,
.mp-editable-page .mp-delivery-page,
.mp-editable-page .mp-faq-page,
.mp-editable-page .mp-legal-page {
  box-sizing: border-box;
  max-width: none !important;
  width: 100% !important;
}

.mp-editable-page .mp-brand-hero,
.mp-editable-page .mp-care-page__hero,
.mp-editable-page .mp-delivery-hero,
.mp-editable-page .mp-faq-hero,
.mp-editable-page .mp-legal-page {
  box-sizing: border-box;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1440px !important;
  padding-left: clamp(24px, 6vw, 96px) !important;
  padding-right: clamp(24px, 6vw, 96px) !important;
  width: 100% !important;
}

.mp-editable-page .mp-brand-origin,
.mp-editable-page .mp-brand-values,
.mp-editable-page .mp-care-page__details,
.mp-editable-page .mp-delivery-page__body,
.mp-editable-page .mp-faq-page__body {
  box-sizing: border-box;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 1180px !important;
  padding-left: clamp(20px, 4vw, 48px) !important;
  padding-right: clamp(20px, 4vw, 48px) !important;
  width: 100% !important;
}

.mp-editable-page .mp-page-title,
.mp-editable-page h1.mp-page-title {
  max-width: none !important;
  text-wrap: balance;
}

@media (max-width: 900px) {
  .mp-editable-page .mp-brand-hero,
  .mp-editable-page .mp-care-page__hero,
  .mp-editable-page .mp-delivery-hero,
  .mp-editable-page .mp-faq-hero,
  .mp-editable-page .mp-legal-page {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

/*
 * Mobile fix: "Новинки" product grid.
 * .mp-front-page .mp-new-products .wc-block-product-template was hard-coded
 * to a 3-column grid with no media query, so on phones the cards were
 * squeezed down to almost nothing — titles wrapped one letter per line and
 * the "В корзину" button floated over the card. Same specificity + later in
 * the cascade so it wins over that rule on small screens.
 */
@media (max-width: 768px) {
  .mp-front-page .mp-new-products .wc-block-product-template {
    grid-template-columns: 1fr !important;
  }

  .mp-product-card__meta {
    min-height: 0 !important;
    padding: 16px 16px 0 !important;
  }
}

/*
 * Mobile fix: hero banner crop + button alignment.
 * The source photo (hero-banner.jpg) is a very wide 1440x600 (2.4:1) shot
 * with the girl model positioned in the right ~1/3 of the frame. On a
 * narrow/tall mobile box, object-fit: cover has to crop most of the width
 * away, and the previous object-position (58–62%) cut her out of frame
 * almost entirely. Shifting the crop further right brings her back into
 * view. Separately, .mp-hero__actions used the flex default
 * (align-items: stretch) in its mobile column layout, so both buttons
 * stretched to the full width of .mp-hero__content and centered their
 * label text — which reads as "shifted right" of the left-aligned title.
 * align-items: flex-start lets them size to their own content and sit at
 * the same left edge as the heading.
 */
@media (max-width: 781px) {
  .mp-hero .wp-block-cover__image-background {
    object-position: 88% center;
  }

  .mp-hero__actions {
    align-items: flex-start;
  }

  .mp-hero__btn,
  .mp-front-page .mp-hero__btn {
    flex: 0 0 auto;
    width: auto;
  }
}

@media (max-width: 520px) {
  .mp-hero {
    min-height: min(78vw, 480px) !important;
  }

  .mp-hero .wp-block-cover__image-background {
    object-position: 96% center;
  }
}

/*
 * Mobile fix: "Девочкам / Мальчикам" buttons.
 * Previously centered (then bottom-anchored) on both photos. Per request:
 * offset the girls' button toward the right side of its photo and the
 * boys' button toward the left side of its photo, instead of both sitting
 * dead-center.
 */
@media (max-width: 900px) {
  .mp-front-page .mp-gender__cover--girls {
    justify-content: flex-end !important;
    padding-right: 20px !important;
  }

  .mp-front-page .mp-gender__cover--boys {
    justify-content: flex-start !important;
    padding-left: 20px !important;
  }
}

/*
 * Mobile fix: "Дешевле на сайте" comparison table.
 * Four columns (label, Ozon, Wildberries, Mini Problems) with no min-width
 * and no scroll wrapper meant the last column's header ("Mini Problems")
 * got clipped at the edge of the screen on phones. Make the table
 * horizontally scrollable within its own wrapper (standard pattern for
 * data tables on mobile) and shrink the type a bit so more fits on screen
 * before a scroll is even needed.
 */
@media (max-width: 620px) {
  .mp-cheaper__table-wrap {
    -webkit-overflow-scrolling: touch;
    overflow-x: auto;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .mp-cheaper__table {
    min-width: 460px;
  }

  .mp-cheaper__table th,
  .mp-cheaper__table td {
    font-size: 12px !important;
    padding: 10px 6px !important;
  }
}

/*
 * Mobile fix: Mini Care tier rows.
 * Markup is <strong>3%</strong><span>☆</span><em>MINI</em><p>description</p>
 * inside .mp-care__level. Rebuilding this as flex (instead of relying on a
 * fixed grid-template-columns count matching the exact number of inline
 * elements) is more robust: percent/stars/name naturally sit on one line
 * and the description paragraph wraps to its own full-width line below,
 * regardless of column-count mismatches elsewhere in the cascade.
 */
@media (max-width: 900px) {
  .mp-care__level {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: baseline !important;
    column-gap: 10px !important;
    row-gap: 4px !important;
  }

  .mp-care__level strong,
  .mp-care__level span,
  .mp-care__level em {
    flex: 0 0 auto;
  }

  .mp-care__level p {
    flex: 1 1 100%;
    width: 100%;
  }
}

/*
 * Mobile fix: footer columns.
 * ".mp-site-footer .mp-site-footer__columns" (a 2-class compound selector,
 * declared without any media query) has higher specificity than the plain
 * ".mp-site-footer__columns { grid-template-columns: 1fr !important }"
 * mobile rule earlier in this file, so it was winning on every screen
 * size — forcing a 4-column grid (260px+130px+210px+150px ≈ 750px+ wide)
 * onto phones. Only the brand + first nav column ended up visible; the
 * rest were pushed off-screen. Matching the same compound selector here,
 * later in the cascade, lets this one win on mobile instead.
 */
@media (max-width: 900px) {
  .mp-site-footer .mp-site-footer__columns {
    grid-template-columns: 1fr !important;
    gap: 36px !important;
    max-width: 100% !important;
  }
}

/*
 * Same bug pattern as the footer above, found on two more sections while
 * auditing the rest of the site: a later, unconditional (no media query)
 * redeclaration of grid-template-columns with !important was beating the
 * earlier mobile "stack to 1fr" rule at equal specificity, just by being
 * later in the file.
 *
 * - .mp-upf-explain__grid (UPF 50+ page) forced a fixed 521px column on
 *   every screen size — guaranteed horizontal overflow on any phone.
 * - .mp-cheaper__stats ("дешевле на сайте" stats row, used on the front
 *   page and delivery/UPF pages) forced a 4-column row
 *   (1.85fr + 3×1fr) on mobile instead of stacking.
 */
@media (max-width: 900px) {
  .mp-upf-explain__grid {
    grid-template-columns: 1fr !important;
  }

  .mp-cheaper__stats {
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
  }
}

/*
 * Same bug pattern again (fourth instance): ".mp-front-page
 * .mp-upf-feature__card" is a compound selector with !important and no
 * media query, so it out-specifies the plain ".mp-upf-feature__card
 * { max-width: none }" mobile rule earlier in the file and forces a fixed
 * width: 410px on every screen size — wider than most phones once you
 * add the section's own side padding.
 */
@media (max-width: 900px) {
  .mp-front-page .mp-upf-feature__card {
    width: 100% !important;
    max-width: none !important;
  }
}

/*
 * Fifth instance: the existing mobile rule for .mp-front-page
 * .mp-upf-panel set "min-height: 0" with no !important, so it lost to a
 * later, unconditional "min-height: 440px !important" declaration —
 * !important always wins over non-important regardless of specificity or
 * media query, keeping the comparison panel unnecessarily tall on phones.
 */
@media (max-width: 900px) {
  .mp-front-page .mp-upf-panel {
    min-height: 0 !important;
  }
}

/* Mini Problems v6: authoritative home hero button layout.
 * Keeps both CTAs level, equal-sized and immune to inherited block widths. */
.mp-front-page .mp-hero__actions {
  align-items: center !important;
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: flex-start !important;
}

.mp-front-page .mp-hero__actions > .wp-block-button,
.mp-front-page .mp-hero__actions > .mp-hero__btn {
  flex: 0 0 auto !important;
  margin: 0 !important;
  width: auto !important;
}

.mp-front-page .mp-hero__actions .mp-hero__btn .wp-block-button__link {
  box-sizing: border-box !important;
  line-height: 1 !important;
  margin: 0 !important;
  min-width: 210px !important;
  white-space: nowrap !important;
  width: 210px !important;
}

@media (max-width: 781px) {
  .mp-front-page .mp-hero__actions {
    align-items: flex-start !important;
    flex-direction: column !important;
  }
}

/* Mini Problems v6: stable three-card product row on desktop. */
@media (min-width: 769px) {
  .mp-front-page .mp-new-products .wc-block-product-template {
    align-items: stretch !important;
  }

  .mp-front-page .mp-new-products .wc-block-product-template > .wc-block-product {
    min-width: 0 !important;
    width: auto !important;
  }
}

/* ================================================================
 * MINI PROBLEMS v7 STABLE
 * Authoritative layout, spacing and responsive corrections.
 * Kept at the end of the cascade intentionally so legacy iterations
 * cannot override the stable rules below.
 * ================================================================ */

:root {
  --mp-space-xs: 8px;
  --mp-space-sm: 16px;
  --mp-space-md: 24px;
  --mp-space-lg: 40px;
  --mp-space-xl: 64px;
  --mp-space-2xl: 88px;
  --mp-page-gutter: clamp(16px, 4vw, 40px);
  --mp-content-width: 1290px;
}

html,
body {
  max-width: 100%;
  overflow-x: clip;
}

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

img,
svg,
video,
iframe {
  max-width: 100%;
}

.wp-site-blocks {
  overflow: clip;
}

/* Consistent focus indication for keyboard users. */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.wp-element-button:focus-visible {
  outline: 2px solid var(--mp-primary, #b76f4c) !important;
  outline-offset: 3px;
}

/* Legacy WooCommerce checkout used by the live order form. */
.woocommerce-checkout form.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout form.woocommerce-checkout .form-row input[type="text"],
.woocommerce-checkout form.woocommerce-checkout .form-row input[type="email"],
.woocommerce-checkout form.woocommerce-checkout .form-row input[type="tel"],
.woocommerce-checkout form.woocommerce-checkout .form-row select,
.woocommerce-checkout form.woocommerce-checkout .form-row textarea,
.woocommerce-checkout #customer_details .form-row input,
.woocommerce-checkout #customer_details .form-row select,
.woocommerce-checkout #customer_details .form-row textarea {
  box-sizing: border-box !important;
  min-height: 52px !important;
  padding: 14px 18px !important;
  border: 1px solid #b7c5d6 !important;
  border-radius: 26px !important;
  background: #fff !important;
  box-shadow: 0 1px 2px rgba(31, 61, 107, .04) !important;
  color: var(--mp-graphite, #182d4e) !important;
}

.woocommerce-checkout form.woocommerce-checkout .form-row textarea,
.woocommerce-checkout #customer_details .form-row textarea {
  min-height: 118px !important;
  border-radius: 18px !important;
}

.woocommerce-checkout form.woocommerce-checkout .form-row input:focus,
.woocommerce-checkout form.woocommerce-checkout .form-row select:focus,
.woocommerce-checkout form.woocommerce-checkout .form-row textarea:focus,
.woocommerce-checkout #customer_details .form-row input:focus,
.woocommerce-checkout #customer_details .form-row select:focus,
.woocommerce-checkout #customer_details .form-row textarea:focus {
  border-color: var(--mp-primary, #1f3d6b) !important;
  box-shadow: 0 0 0 3px rgba(31, 61, 107, .12) !important;
  outline: 0 !important;
}

@media (max-width: 768px) {
  .woocommerce-checkout form.woocommerce-checkout .form-row input,
  .woocommerce-checkout form.woocommerce-checkout .form-row select,
  .woocommerce-checkout #customer_details .form-row input,
  .woocommerce-checkout #customer_details .form-row select {
    min-height: 50px !important;
    padding: 13px 16px !important;
    border-radius: 25px !important;
    font-size: 16px !important;
  }

  .woocommerce-checkout form.woocommerce-checkout .form-row textarea,
  .woocommerce-checkout #customer_details .form-row textarea {
    min-height: 108px !important;
    padding: 14px 16px !important;
    border-radius: 16px !important;
    font-size: 16px !important;
  }
}

/* Woo checkout renders its fields outside the page-shell wrapper on some
   routes, so target the actual checkout components directly. */
.wc-block-checkout .wc-block-components-text-input input,
.wc-block-checkout .wc-block-components-address-form input,
.wc-block-checkout .wc-block-components-combobox-control input,
.wc-block-checkout .wc-block-components-textarea textarea,
.wc-block-checkout select {
  box-sizing: border-box !important;
  min-height: 52px !important;
  padding: 14px 18px !important;
  border: 1px solid #b7c5d6 !important;
  border-radius: 26px !important;
  background: #fff !important;
  box-shadow: 0 1px 2px rgba(31, 61, 107, .04) !important;
  color: var(--mp-graphite, #182d4e) !important;
}

.wc-block-checkout .wc-block-components-textarea textarea {
  min-height: 118px !important;
  border-radius: 18px !important;
}

.wc-block-checkout .wc-block-components-text-input input:focus,
.wc-block-checkout .wc-block-components-address-form input:focus,
.wc-block-checkout .wc-block-components-combobox-control input:focus,
.wc-block-checkout .wc-block-components-textarea textarea:focus,
.wc-block-checkout select:focus {
  border-color: var(--mp-primary, #1f3d6b) !important;
  box-shadow: 0 0 0 3px rgba(31, 61, 107, .12) !important;
  outline: 0 !important;
}

@media (max-width: 768px) {
  .wc-block-checkout .wc-block-components-text-input input,
  .wc-block-checkout .wc-block-components-address-form input,
  .wc-block-checkout .wc-block-components-combobox-control input,
  .wc-block-checkout select {
    min-height: 50px !important;
    padding: 13px 16px !important;
    border-radius: 25px !important;
    font-size: 16px !important;
  }

  .wc-block-checkout .wc-block-components-textarea textarea {
    min-height: 108px !important;
    padding: 14px 16px !important;
    border-radius: 16px !important;
    font-size: 16px !important;
  }
}

/* Prevent the default Gutenberg block gap from creating accidental double
   spaces between template sections. Each section owns its own padding. */
.mp-front-page,
.mp-upf-page,
.mp-brand-page,
.mp-delivery-page,
.mp-faq-page,
.mp-care-page,
.mp-editable-page {
  margin-top: 0 !important;
}

.mp-front-page > *,
.mp-upf-page > *,
.mp-brand-page > *,
.mp-delivery-page > *,
.mp-faq-page > *,
.mp-care-page > * {
  margin-block-start: 0 !important;
}

/* Homepage rhythm. Hero and trust strip remain edge-to-edge; content sections
   receive predictable vertical breathing room. */
.mp-front-page > .mp-new-products,
.mp-front-page > .mp-upf-compare,
.mp-front-page > .mp-upf-explain,
.mp-front-page > .mp-upf-benefits,
.mp-front-page > .mp-care,
.mp-front-page > .faq-section {
  padding-top: clamp(48px, 6vw, 82px) !important;
  padding-bottom: clamp(48px, 6vw, 82px) !important;
}

.mp-front-page > .mp-gender,
.mp-front-page > .mp-upf-feature,
.mp-front-page > .mp-hits,
.mp-front-page > .mp-cheaper {
  margin-top: 0 !important;
}

.mp-front-title,
.mp-section-title,
.mp-page-title,
.mp-inner-title__heading {
  text-wrap: balance;
}

.mp-front-title,
.mp-section-title {
  margin-top: 0 !important;
  margin-bottom: clamp(24px, 3vw, 40px) !important;
}

/* Stable header. Desktop remains unchanged. On mobile we retain a compact
   logo bar instead of removing the entire top of the page. This avoids the
   hero looking abruptly cut off and preserves clear brand orientation while
   the fixed bottom navigation continues to handle actions. */
@media (max-width: 768px) {
  .mp-site-header {
    background: #fff !important;
    display: block !important;
    min-height: calc(58px + env(safe-area-inset-top, 0px));
    position: relative;
    z-index: 20;
  }

  .mp-site-header .mp-promo-bar,
  .mp-site-header .mp-catalog-nav,
  .mp-site-header .mp-main-header__right,
  .mp-site-header .mp-search-panel {
    display: none !important;
  }

  .mp-site-header .mp-main-header {
    border-bottom: 1px solid rgba(31, 55, 99, .10) !important;
    min-height: calc(58px + env(safe-area-inset-top, 0px));
    padding: env(safe-area-inset-top, 0px) 16px 0 !important;
  }

  .mp-site-header .mp-main-header__inner,
  .mp-site-header .mp-main-header__left {
    align-items: center !important;
    flex-direction: row !important;
    justify-content: center !important;
    min-height: 58px;
    width: 100% !important;
  }

  .mp-site-header .mp-header-logo,
  .mp-site-header .mp-header-logo img {
    height: 40px !important;
    margin: 0 !important;
    object-fit: contain !important;
    width: 78px !important;
  }
}

/* Hero: crop and content positioning are tuned per viewport instead of using
   one tall box for every phone. */
.mp-front-page > .mp-hero {
  min-height: clamp(500px, 41.67vw, 602px) !important;
}

.mp-front-page .mp-hero__content {
  padding-block: clamp(44px, 6vw, 76px);
}

.mp-front-page .mp-hero__actions {
  column-gap: 10px !important;
  row-gap: 10px !important;
}

@media (max-width: 900px) {
  .mp-front-page > .mp-hero {
    min-height: clamp(500px, 72vw, 610px) !important;
  }

  .mp-front-page .mp-hero__content {
    max-width: min(72%, 520px) !important;
    padding-block: 44px;
  }

  .mp-front-page .mp-hero .wp-block-cover__image-background {
    object-position: 82% center !important;
  }
}

@media (max-width: 600px) {
  .mp-front-page > .mp-hero {
    min-height: clamp(440px, 118vw, 560px) !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .mp-front-page .mp-hero .wp-block-cover__image-background {
    object-position: 84% center !important;
  }

  .mp-front-page .mp-hero::before {
    background: linear-gradient(90deg, rgba(247, 251, 253, .96) 0%, rgba(247, 251, 253, .82) 42%, rgba(247, 251, 253, .24) 72%, rgba(247, 251, 253, 0) 100%) !important;
  }

  .mp-front-page .mp-hero__content {
    max-width: 76% !important;
    padding-block: 36px 44px;
  }

  .mp-front-page .mp-hero__title {
    font-size: clamp(38px, 12vw, 54px) !important;
    line-height: .96 !important;
  }

  .mp-front-page .mp-hero__desc {
    font-size: clamp(16px, 4.6vw, 20px) !important;
  }

  .mp-front-page .mp-hero__script {
    font-size: clamp(25px, 8vw, 36px) !important;
  }

  .mp-front-page .mp-hero__actions .mp-hero__btn .wp-block-button__link {
    min-width: 184px !important;
    width: 184px !important;
  }
}

@media (max-width: 380px) {
  .mp-front-page .mp-hero__content {
    max-width: 82% !important;
  }

  .mp-front-page .mp-hero .wp-block-cover__image-background {
    object-position: 87% center !important;
  }
}

/* Trust strip: wrap cleanly instead of squeezing four columns. */
@media (max-width: 781px) {
  .mp-trust__row {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .mp-trust__item {
    border-bottom: 1px solid #d8c5ba;
    border-right: 1px solid #d8c5ba;
    min-height: 72px;
    padding: 12px !important;
  }

  .mp-trust__item:nth-child(2n) {
    border-right: 0;
  }

  .mp-trust__item:nth-last-child(-n+2) {
    border-bottom: 0;
  }
}

/* Gender cards: avoid clipped CTAs and excessive image crop. */
@media (max-width: 781px) {
  .mp-front-page .mp-gender__grid,
  .mp-front-page .mp-gender > .wp-block-columns {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  .mp-front-page .mp-gender__cover,
  .mp-front-page .mp-gender .wp-block-cover {
    aspect-ratio: 16 / 10 !important;
    min-height: 0 !important;
  }

  .mp-front-page .mp-gender__button-area {
    align-items: flex-end !important;
    display: flex !important;
    height: 100% !important;
    padding: 0 18px 18px !important;
  }

  .mp-front-page .mp-gender__button a {
    font-size: clamp(25px, 8vw, 34px) !important;
    min-height: 54px !important;
    min-width: 0 !important;
    padding: 8px 20px !important;
  }
}

/* Product grids and cards. */
.mp-product-card,
.wc-block-product {
  min-width: 0;
}

.mp-product-card__title,
.wc-block-components-product-name {
  overflow-wrap: anywhere;
}

.mp-product-card__image img,
.wc-block-components-product-image img,
.woocommerce ul.products li.product img {
  display: block;
  height: auto;
  width: 100%;
}

@media (min-width: 769px) {
  .mp-front-page .mp-new-products .wc-block-product-template,
  .mp-front-page .mp-new-products ul.products {
    display: grid !important;
    gap: clamp(18px, 2.2vw, 30px) !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 768px) {
  .mp-front-page > .mp-new-products {
    width: calc(100% - 32px) !important;
  }

  .mp-front-page .mp-new-products .wc-block-product-template,
  .mp-front-page .mp-new-products ul.products {
    gap: 24px !important;
    grid-template-columns: 1fr !important;
  }
}

/* UPF page and comparison blocks. */
.mp-upf-page > .mp-upf-feature,
.mp-upf-page > .mp-upf-explain,
.mp-upf-page > .mp-upf-compare,
.mp-upf-page > .mp-upf-benefits,
.mp-upf-page > .mp-upf-product-cta,
.mp-upf-page > .mp-upf-faq,
.mp-upf-page > .mp-upf-final-cta {
  margin-top: 0 !important;
}

.mp-upf-page > .mp-upf-explain,
.mp-upf-page > .mp-upf-compare,
.mp-upf-page > .mp-upf-benefits,
.mp-upf-page > .mp-upf-product-cta,
.mp-upf-page > .mp-upf-faq,
.mp-upf-page > .mp-upf-final-cta {
  padding-top: clamp(48px, 6vw, 84px) !important;
  padding-bottom: clamp(48px, 6vw, 84px) !important;
}

@media (max-width: 900px) {
  .mp-upf-compare__grid,
  .mp-upf-explain__grid,
  .mp-upf-benefits,
  .mp-upf-final-cta .wp-block-columns {
    grid-template-columns: 1fr !important;
  }

  .mp-upf-panel,
  .mp-front-page .mp-upf-panel {
    min-height: 0 !important;
  }

  .mp-upf-panel__list,
  .mp-front-page .mp-upf-panel__list {
    padding: 22px 20px !important;
  }
}

/* Inner pages: shared horizontal gutters and readable line lengths. */
.mp-editable-page__content,
.mp-brand-page,
.mp-delivery-page,
.mp-faq-page,
.mp-care-page,
.mp-upf-page,
.mp-cart-page,
.mp-checkout-page,
.mp-account-page,
.mp-search-page,
.mp-journal-page,
.mp-single-post,
.mp-single-product-page {
  max-width: 100%;
}

@media (max-width: 781px) {
  .mp-brand-origin__grid,
  .mp-brand-values__grid,
  .mp-delivery-cards,
  .mp-payment-return__grid,
  .mp-faq-layout,
  .mp-info-split,
  .mp-product-summary {
    grid-template-columns: 1fr !important;
  }

  .mp-brand-page,
  .mp-delivery-page,
  .mp-faq-page,
  .mp-care-page,
  .mp-upf-page,
  .mp-editable-page__content,
  .mp-cart-page,
  .mp-checkout-page,
  .mp-account-page,
  .mp-search-page,
  .mp-journal-page,
  .mp-single-post,
  .mp-single-product-page {
    padding-left: var(--mp-page-gutter) !important;
    padding-right: var(--mp-page-gutter) !important;
  }

  .mp-brand-hero,
  .mp-care-page__hero,
  .mp-delivery-hero,
  .mp-faq-hero,
  .mp-inner-title {
    padding-top: 42px !important;
    padding-bottom: 42px !important;
  }
}

/* Catalog and WooCommerce: prevent sidebar/product overflow and improve small
   screen controls. */
@media (max-width: 900px) {
  .mp-catalog-layout {
    display: block !important;
  }

  .mp-catalog-layout__sidebar {
    display: none !important;
  }

  .mp-catalog-layout__products,
  .woocommerce-page .site-main,
  .woocommerce .site-main {
    min-width: 0 !important;
    width: 100% !important;
  }

  .mp-catalog-toolbar {
    align-items: stretch !important;
    flex-direction: column !important;
    gap: 12px !important;
  }

  .woocommerce .woocommerce-ordering,
  .woocommerce .woocommerce-result-count {
    float: none !important;
    margin: 0 !important;
    width: 100% !important;
  }

  .woocommerce .woocommerce-ordering select {
    max-width: 100%;
    width: 100%;
  }
}

@media (max-width: 520px) {
  .woocommerce ul.products,
  .woocommerce-page ul.products,
  .wc-block-product-template {
    grid-template-columns: 1fr !important;
  }

  .woocommerce div.product .woocommerce-tabs ul.tabs {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    padding-bottom: 4px;
    white-space: nowrap;
  }
}

/* Responsive tables globally. */
.wp-block-table,
.woocommerce table.shop_table,
.mp-cheaper__table-wrap,
.mp-compare-table {
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* Footer: stable stacking and spacing. */
@media (max-width: 900px) {
  .wp-site-blocks > .mp-site-footer,
  .wp-site-blocks > footer.mp-site-footer {
    padding: 44px 24px calc(96px + env(safe-area-inset-bottom, 0px)) !important;
    width: calc(100% - 32px) !important;
  }

  .mp-site-footer .mp-site-footer__columns {
    gap: 32px !important;
    grid-template-columns: 1fr !important;
  }
}

/* Motion accessibility. */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
  }
}

/* Mobile-only fixes based on the original 1.0.50 theme. */
@media (max-width: 900px) {
  /* Keep the compact catalogue control available in the mobile header. */
  .mp-site-header .mp-catalog-nav {
    display: block !important;
  }

  .mp-site-header .mp-main-header__inner,
  .mp-site-header .mp-main-header__left {
    justify-content: space-between !important;
  }

  .mp-catalog-nav .wp-block-navigation-submenu {
    overflow: visible !important;
    position: relative !important;
  }

  .mp-catalog-nav .wp-block-navigation__submenu-container {
    display: none !important;
    left: auto !important;
    opacity: 0 !important;
    pointer-events: none !important;
    right: 0 !important;
    top: calc(100% + 8px) !important;
    visibility: hidden !important;
    z-index: 1000 !important;
  }

  .mp-catalog-nav .wp-block-navigation-submenu.is-mp-mobile-open > .wp-block-navigation__submenu-container {
    display: flex !important;
    height: auto !important;
    opacity: 1 !important;
    overflow: visible !important;
    pointer-events: auto !important;
    visibility: visible !important;
    width: 210px !important;
  }

  .mp-catalog-nav .wp-block-navigation__submenu-container a {
    pointer-events: auto !important;
    width: 100% !important;
  }

  /* Tag filter exists only on the mobile catalogue and tag archives. */
  .mp-mobile-gender-filter {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 0 auto 18px;
    max-width: 100%;
    padding: 0 var(--mp-page-gutter, 16px);
  }

  .mp-mobile-gender-filter__link {
    align-items: center;
    background: #fff;
    border: 1px solid var(--mp-sand, #c7ad9b);
    color: var(--mp-blue, #213b67) !important;
    display: inline-flex;
    font-family: var(--mp-font-body, Jost, Arial, sans-serif);
    font-size: 13px;
    font-weight: 600;
    justify-content: center;
    min-height: 42px;
    min-width: 0;
    padding: 8px;
    text-align: center;
    text-decoration: none !important;
  }

  .mp-mobile-gender-filter__link.is-active {
    background: var(--mp-blue, #213b67);
    border-color: var(--mp-blue, #213b67);
    color: #fff !important;
  }
}

@media (min-width: 901px) {
  .mp-mobile-gender-filter {
    display: none !important;
  }
}

@media (max-width: 781px) {
  /* Single-product page: image first, information below, without narrow columns. */
  body.single-product .mp-single-product-page {
    overflow-x: hidden;
  }

  body.single-product .mp-product-summary.wp-block-columns {
    display: flex !important;
    flex-direction: column !important;
    flex-wrap: nowrap !important;
    gap: 18px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
  }

  body.single-product .mp-product-summary > .wp-block-column,
  body.single-product .mp-product-summary__media,
  body.single-product .mp-product-summary__content,
  body.single-product .woocommerce.product > .wp-block-columns > .wp-block-column:first-child,
  body.single-product .woocommerce.product > .wp-block-columns > .wp-block-column:last-child,
  body.single-product .wc-block-store-notices + .wp-block-columns > .wp-block-column:first-child,
  body.single-product .wc-block-store-notices + .wp-block-columns > .wp-block-column:last-child {
    flex: 0 0 100% !important;
    flex-basis: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    width: 100% !important;
  }

  body.single-product .mp-product-summary__media .woocommerce-product-gallery,
  body.single-product .mp-product-summary__media .wp-block-woocommerce-product-image-gallery,
  body.single-product .mp-product-summary__media .woocommerce-product-gallery__wrapper,
  body.single-product .mp-product-summary__media .woocommerce-product-gallery__image,
  body.single-product .mp-product-summary__media .woocommerce-product-gallery__image a,
  body.single-product .mp-product-summary__media .woocommerce-product-gallery__image img {
    box-sizing: border-box !important;
    max-width: 100% !important;
    width: 100% !important;
  }

  body.single-product .mp-product-summary__content > .wp-block-post-title {
    font-size: clamp(28px, 9vw, 38px) !important;
    hyphens: none !important;
    line-height: 1.08 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    width: 100% !important;
  }

  /* Marketplace buttons: equal width and clean vertical alignment on phones. */
  body.single-product .mp-marketplaces,
  body.single-product .mp-marketplaces__links {
    box-sizing: border-box !important;
    width: 100% !important;
  }

  body.single-product .mp-marketplaces__links {
    display: grid !important;
    gap: 10px !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.single-product .mp-marketplaces .mp-marketplaces__link,
  body.single-product .mp-marketplaces .mp-marketplaces__link.is-wb,
  body.single-product .mp-marketplaces .mp-marketplaces__link.is-ozon,
  body.single-product .mp-marketplaces .mp-marketplaces__link.is-detmir {
    box-sizing: border-box !important;
    min-width: 0 !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    text-align: center !important;
    white-space: normal !important;
    width: 100% !important;
  }
}

/* Canopea-style overrides: unify header/search/page container widths and account forms */
/* Keep rules minimal and specific to avoid breaking other layouts */
.mp-site-header .mp-main-header__inner,
.mp-search-panel,
.wp-block-group.alignwide.mp-account-shell,
.wp-block-group.alignwide .mp-account-shell,
.wp-block-group.alignwide,
.page .wp-block-group.alignwide {
  max-width: 1290px !important;
  margin: 0 auto !important;
  padding: 0 16px !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

/* Restore vertical padding for the hero/inner-title so the first block keeps intended spacing */
.mp-inner-title {
  text-align: center !important;
  /* Restore original large vertical spacing for hero banners */
  padding: clamp(72px, 9vw, 138px) 16px clamp(34px, 5vw, 70px) !important;
}

/* Prevent account forms collapsing into very narrow columns */
.mp-account-shell .woocommerce form.login,
.mp-account-shell .woocommerce form.register,
.mp-account-shell .woocommerce-EditAccountForm,
.mp-account-shell .woocommerce-address-fields {
  max-width: 760px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Front page buttons: keep gap and equal widths on mobile; lowered and closer to edges, slightly smaller */
.mp-front-page .wp-block-buttons {
  display: flex !important;
  gap: 18px !important;
  flex-wrap: wrap !important;
  margin-top: 18px !important; /* push buttons lower */
  padding: 0 12px !important; /* closer to edges */
  justify-content: flex-start !important;
}
.mp-front-page .wp-block-buttons > .wp-block-button { margin: 0 !important; }
.mp-front-page .wp-block-button {
  flex: 0 0 auto !important;
  min-width: 180px !important;
}
.mp-front-page .wp-block-button__link {
  display: inline-block !important;
  width: auto !important;
  text-align: center !important;
  padding: 8px 16px !important; /* slightly smaller */
  font-size: 14px !important;
  border-radius: 10px !important;
}
/* ensure gap fallback for older browsers */
.mp-front-page .wp-block-button + .wp-block-button { margin-left: 12px !important; }

/* Stacked on very small screens */
@media (max-width: 420px) {
  .mp-front-page .wp-block-button {
    flex-basis: 100% !important;
    max-width: 100% !important;
  }
  .mp-front-page .wp-block-buttons {
    padding-left: 8px !important;
    padding-right: 8px !important;
    gap: 10px !important;
    margin-top: 12px !important;
  }
}

/* Desktop header alignment: keep items vertically centered and spaced */
@media (min-width: 901px) {
  .mp-site-header .mp-main-header__inner {
    align-items: center !important;
    justify-content: space-between !important;
  }
}

/* Mobile header padding standardization */
@media (max-width: 900px) {
  .mp-site-header .mp-main-header__inner {
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  /* Mini Care: stack action buttons vertically and align to container edges on phones */
  .mp-care__actions {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    align-items: stretch !important;
    margin-top: 12px !important;
  }

  .mp-care__button .wp-block-button__link,
  .mp-care__link .wp-block-button__link {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    box-sizing: border-box !important;
  }

  /* Prevent small text lines from overflowing the viewport */
  .mp-care p,
  .mp-delivery-home__steps p,
  .mp-front-page p,
  .mp-inner-title__breadcrumbs,
  .mp-account-shell .woocommerce-MyAccount-navigation ul,
  .mp-account-shell .woocommerce-MyAccount-content {
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }

  /* Ensure content blocks have safe horizontal padding */
  .mp-care,
  .mp-delivery-home,
  .mp-front-page,
  .mp-inner-title,
  .mp-account-shell {
    padding-left: 12px !important;
    padding-right: 12px !important;
    box-sizing: border-box !important;
  }

  /* Gender cover adjustments: position buttons near the bottom to avoid overlapping product children */
  .mp-gender__cover {
    position: relative !important;
    overflow: hidden !important;
  }

  .mp-gender__button-area {
    position: absolute !important;
    left: 12px !important;
    right: 12px !important;
    bottom: 12px !important;
    display: flex !important;
    justify-content: center !important;
    z-index: 2 !important;
    padding: 0 !important;
  }

  .mp-gender__buttons {
    width: 100% !important;
    display: flex !important;
    gap: 10px !important;
    justify-content: center !important;
  }

  .mp-gender__button .wp-block-button__link {
    min-width: 120px !important;
    padding: 8px 12px !important;
    font-size: 14px !important;
    border-radius: 8px !important;
  }

  /* Small screens: stack gender buttons vertically */
  @media (max-width: 480px) {
    .mp-gender__buttons {
      flex-direction: column !important;
      gap: 8px !important;
    }

    .mp-gender__button .wp-block-button__link {
      width: 100% !important;
    }
  }
}

/* Account page: two-column layout for WooCommerce My Account on desktop */

/* Heading polish — make large headings slightly smaller and more consistent */
/* Global defaults for headings to avoid oversized blocks across templates */
.mp-inner-title__heading,
.mp-inner-title .wp-block-post-title,
.mp-inner-title .wp-block-query-title,
.mp-page-title,
.mp-section-title,
.wp-block-heading,
h1, h2, h3 {
  font-family: var(--mp-font-heading, Jost, Arial, sans-serif) !important;
  font-weight: 600 !important;
}

/* Default heading sizes (scaled smoothly) */
.mp-inner-title__heading,
.mp-inner-title .wp-block-post-title,
.mp-inner-title .wp-block-query-title,
.mp-page-title,
.mp-section-title,
.wp-block-heading {
  font-size: clamp(24px, 3.6vw, 36px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.01em !important;
  margin-bottom: 16px !important;
  max-width: 1100px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Hero / primary H1: slightly larger but bounded */
.mp-hero__title,
.mp-inner-title__heading.h1,
h1 {
  font-size: clamp(28px, 4.8vw, 40px) !important;
  line-height: 1.04 !important;
  margin-bottom: 18px !important;
}

/* H2 / section titles */
h2,
.mp-front-title {
  font-size: clamp(20px, 3.2vw, 30px) !important;
  line-height: 1.06 !important;
}

/* H3 */
h3,
.mp-section-subtitle {
  font-size: clamp(16px, 2.4vw, 22px) !important;
}

/* Tighter display on very large screens for hero headings */
@media (min-width: 1200px) {
  .mp-inner-title__heading,
  .mp-front-title,
  .mp-page-title {
    font-size: 40px !important;
    line-height: 1.06 !important;
  }
}

/* Slightly reduced size on medium screens */
@media (max-width: 900px) {
  .mp-inner-title__heading,
  .mp-front-title,
  .mp-page-title,
  .wp-block-heading {
    font-size: clamp(20px, 5vw, 28px) !important;
    margin-bottom: 12px !important;
  }
}

/* Desktop account layout: place navigation across the top as horizontal tabs */
@media (min-width: 901px) {
  .mp-account-shell {
    display: block !important;
    max-width: 980px !important;
    margin: 0 auto !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
  }

  /* Navigation becomes horizontal and placed above content */
  .mp-account-shell .woocommerce-MyAccount-navigation {
    display: flex !important;
    gap: 12px !important;
    justify-content: center !important;
    margin: 0 0 20px 0 !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
  }

  .mp-account-shell .woocommerce-MyAccount-navigation ul {
    display: flex !important;
    gap: 8px !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
  }

  .mp-account-shell .woocommerce-MyAccount-navigation li a {
    display: inline-block !important;
    padding: 10px 14px !important;
    border-radius: 8px !important;
    background: #fff !important;
    border: 1px solid var(--mp-line) !important;
    color: var(--mp-blue) !important;
    text-decoration: none !important;
    font-weight: 600 !important;
  }

  .mp-account-shell .woocommerce-MyAccount-navigation li.is-active a,
  .mp-account-shell .woocommerce-MyAccount-navigation li a:hover {
    background: var(--mp-blue) !important;
    color: #fff !important;
    border-color: var(--mp-blue) !important;
  }

  .mp-account-shell .woocommerce-MyAccount-content {
    margin-top: 8px !important;
  }
}

@media (max-width: 900px) {
  /* Force hero and front-page action buttons to stack and be full-width on mobile/tablet */
  .mp-hero__actions,
  .mp-front-page .wp-block-buttons {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    align-items: stretch !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }

  .mp-hero__btn,
  .mp-front-page .wp-block-button,
  .mp-front-page .wp-block-button__link {
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    text-align: center !important;
  }

  /* Product care: stack cards and make buttons full width */
  .mp-product-care__cards,
  .mp-product-care__cards .mp-product-care__card,
  .mp-care__cards,
  .mp-care__cards .mp-product-care__card {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    width: 100% !important;
  }
  .mp-product-care__card summary,
  .mp-product-care__card p,
  .mp-product-care__card ul {
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }
  .mp-product-care__card .wp-block-button__link {
    width: 100% !important;
  }

  /* Ensure front-page columns stack so images and children don't overlap */
  .mp-front-page .wp-block-columns,
  .mp-front-page .wp-block-column {
    flex-direction: column !important;
    width: 100% !important;
  }

  /* Gender cover image positioning and button spacing to avoid overlap */
  .mp-gender__cover .wp-block-cover__image-background {
    object-position: center top !important;
    /* allow the image to scale naturally */
    height: auto !important;
  }
  .mp-gender__button-area { bottom: 12px !important; }
}

/* Fix delivery arrows duplication: hide various inline elements that may contain textual arrows */

/* Strong mobile override: stack hero/front buttons, product cards, mini-care and gender block to prevent overlap */
@media (max-width: 900px) {
  .mp-hero__actions,
  .mp-front-page .wp-block-buttons {
    display:flex !important;
    flex-direction:column !important;
    gap:12px !important;
    align-items:stretch !important;
    padding-left:12px !important;
    padding-right:12px !important;
    box-sizing:border-box !important;
  }

  .mp-hero__btn,
  .mp-front-page .wp-block-button {
    width:100% !important; max-width:100% !important; min-width:0 !important; margin:0 !important;
  }

  .mp-hero__btn .wp-block-button__link,
  .mp-front-page .wp-block-button__link {
    display:block !important; width:100% !important; text-align:center !important; padding:12px 16px !important; font-size:15px !important;
  }

  .mp-products-grid, .mp-products {
    display:flex !important; flex-wrap:wrap !important; gap:18px !important; justify-content:center !important; padding-left:12px !important; padding-right:12px !important; box-sizing:border-box !important;
  }

  .mp-products-grid .mp-product-card,
  .mp-products .mp-product-card,
  .mp-products .wc-block-grid__product {
    width:100% !important; max-width:100% !important; padding:10px !important; box-sizing:border-box !important; background:transparent !important; border:none !important;
  }

  .mp-product-card__image img, .mp-products .wc-block-grid__product .wp-block-image img { width:100% !important; height:auto !important; object-fit:cover !important; display:block !important; }

  .mp-product-card__button .wp-block-button__link { width:100% !important; }

  .mp-care__actions, .mp-product-care__cards { display:flex !important; flex-direction:column !important; gap:12px !important; width:100% !important; }
  .mp-care__button .wp-block-button__link, .mp-care__link .wp-block-button__link, .mp-product-care__card .wp-block-button__link { width:100% !important; box-sizing:border-box !important; }

  .mp-gender__cover { position:relative !important; overflow:hidden !important; }
  .mp-gender__button-area { position:absolute !important; left:12px !important; right:12px !important; bottom:12px !important; display:flex !important; gap:10px !important; z-index:2 !important; padding:0 !important; box-sizing:border-box !important; }
  .mp-gender__button-area--girls { justify-content:flex-start !important; padding-left:18px !important; }
  .mp-gender__button-area--boys { justify-content:flex-end !important; padding-right:18px !important; }
  .mp-gender__buttons { display:flex !important; gap:10px !important; }
  .mp-gender__button .wp-block-button__link { padding:8px 12px !important; font-size:14px !important; border-radius:8px !important; min-width:110px !important; }

  @media (max-width:480px) {
    .mp-gender__button-area { left:8px !important; right:8px !important; bottom:10px !important; }
    .mp-gender__buttons { flex-direction:column !important; width:100% !important; }
    .mp-gender__button .wp-block-button__link { width:100% !important; }
    .mp-products-grid .mp-product-card, .mp-products .mp-product-card { width:100% !important; }
  }

  /* Prevent text overflow */
  .mp-care p, .mp-front-page p, .mp-product-card__body, .mp-product-card__title, .mp-inner-title { overflow-wrap:anywhere !important; word-break:break-word !important; }

  /* reduce hero padding on small screens to keep buttons visible */
  .mp-inner-title, .mp-hero__content { padding-left:12px !important; padding-right:12px !important; }
}

.mp-delivery-home__steps p span,
.mp-delivery-home__steps p strong,
.mp-delivery-home__steps p em,
.mp-delivery-home__steps p i {
  display: none !important;
}

/* Add single pseudo-arrow between steps when needed */
.mp-delivery-home__steps > p::before {
  content: "\2193";
  display: block;
  text-align: center;
  color: var(--mp-primary);
  font-size: 20px;
  margin-bottom: 8px;
}

/* Stack front page buttons and Mini Care actions on tablet+mobile screens */
@media (max-width: 900px) {
  .mp-front-page .wp-block-buttons {
    justify-content: center !important;
    gap: 12px !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
  .mp-front-page .wp-block-button {
    flex-basis: 100% !important;
    max-width: 100% !important;
  }
  .mp-front-page .wp-block-button__link {
    width: 100% !important;
    text-align: center !important;
  }

  /* Mini Care: stack actions vertically on broader mobile breakpoint */
  .mp-care__actions {
    flex-direction: column !important;
    gap: 10px !important;
  }

  .mp-care__button .wp-block-button__link,
  .mp-care__link .wp-block-button__link {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Move gender filter lower so buttons don't overlap images */
  .mp-mobile-gender-filter {
    margin-top: 28px !important;
    gap: 10px !important;
  }

  /* Ensure front-page columns stack so images and children don't overlap */
  .mp-front-page .wp-block-columns,
  .mp-front-page .wp-block-column {
    flex-direction: column !important;
    width: 100% !important;
  }
}

/* Center "Новинки" section and product card content for a neater scroll experience */
.mp-products,
.archive .mp-products,
.wp-block-query .mp-products,
.mp-front-page .mp-products {
  text-align: center !important;
}

/* Product grid wrapper: center items and allow wrapping */
.mp-products-grid,
.mp-products {
  display: flex !important;
  gap: 20px !important;
  justify-content: center !important;
  flex-wrap: wrap !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
  box-sizing: border-box !important;
}

/* Individual product card: fixed max width, centered content, gentle card styling */
.mp-products-grid .mp-product-card,
.mp-products .mp-product-card,
.mp-products .wc-block-grid__product {
  box-sizing: border-box !important;
  width: 320px !important;
  max-width: 100% !important;
  background: #fff !important;
  border-radius: 12px !important;
  border: 1px solid var(--mp-line, #eee) !important;
  padding: 12px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
}

/* Image/figure: force responsive image, keep aspect and cover */
.mp-product-card__figure,
.mp-product-card__image {
  width: 100% !important;
}
.mp-product-card__image img,
.mp-product-card__figure img,
.mp-products .wc-block-grid__product .wp-block-image img {
  width: 100% !important;
  height: auto !important;
  object-fit: cover !important;
  display: block !important;
  border-radius: 8px !important;
}

/* Product body: stack title, price, button neatly */
.mp-product-card__body {
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  align-items: center !important;
  margin-top: 8px !important;
}

.mp-product-card__title {
  font-size: 15px !important;
  margin: 0 !important;
  line-height: 1.2 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
}

.mp-product-card__price {
  font-weight: 700 !important;
  color: var(--mp-blue, #213b67) !important;
}

/* Ensure Add to cart / action button sits below and is consistent */
.mp-product-card__button .wp-block-button__link,
.mp-products .wc-block-grid__product .wp-block-button__link {
  display: inline-block !important;
  padding: 8px 14px !important;
  border-radius: 8px !important;
  text-align: center !important;
}

/* Responsive: two columns on small tablets, full width on phones */
@media (max-width: 900px) {
  .mp-products-grid .mp-product-card,
  .mp-products .mp-product-card {
    width: calc(50% - 16px) !important;
  }
}

@media (max-width: 480px) {
  .mp-products-grid .mp-product-card,
  .mp-products .mp-product-card {
    width: 100% !important;
  }

  .mp-product-card__button .wp-block-button__link,
  .mp-products .wc-block-grid__product .wp-block-button__link {
    width: 100% !important;
  }
}

/* Keep titles and buttons centered for accessibility when scrolling */
.mp-products .mp-product-card .mp-product-card__title,
.mp-products .mp-product-card .wc-block-grid__product-title,
.mp-products .mp-product-card .price,
.mp-products .mp-product-card .wp-block-button {
  text-align: center !important;
}
    padding: 12px !important;
    box-shadow: none !important;
  }

  .mp-account-shell .woocommerce-MyAccount-navigation ul {
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .mp-account-shell .woocommerce-MyAccount-navigation-link a {
    display: block !important;
    padding: 14px 12px !important;
    color: var(--mp-graphite) !important;
    font-weight: 600 !important;
  }

  /* Content card */
  .mp-account-shell .woocommerce-MyAccount-content {
    background: #fff !important;
    border: 1px solid var(--mp-line) !important;
    border-radius: 12px !important;
    padding: 20px !important;
  }
}

  /* Mini Care: stack action buttons vertically and align to container edges on phones */
  .mp-care__actions {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    align-items: stretch !important;
    margin-top: 12px !important;
  }

  .mp-care__button .wp-block-button__link,
  .mp-care__link .wp-block-button__link {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    box-sizing: border-box !important;
  }

  /* Prevent small text lines from overflowing the viewport */
  .mp-care p,
  .mp-delivery-home__steps p,
  .mp-front-page p,
  .mp-inner-title__breadcrumbs,
  .mp-account-shell .woocommerce-MyAccount-navigation ul,
  .mp-account-shell .woocommerce-MyAccount-content {
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
  }

  /* Ensure content blocks have safe horizontal padding */
  .mp-care,
  .mp-delivery-home,
  .mp-front-page,
  .mp-inner-title,
  .mp-account-shell {
    padding-left: 12px !important;
    padding-right: 12px !important;
    box-sizing: border-box !important;
  }
}

/* ==== variables.css ==== */
:root {
  --mp-page-width: 1320px;
  --mp-gutter: clamp(16px, 3vw, 40px);
  --mp-text: #171717;
  --mp-muted: #6f6f6f;
  --mp-line: #e9e7e2;
  --mp-surface: #ffffff;
  --mp-soft: #f6f4ef;
  --mp-accent: #d95745;
  --mp-radius-sm: 8px;
  --mp-radius-md: 14px;
  --mp-shadow-menu: 0 18px 50px rgba(20, 20, 20, .10);
  --mp-header-height: 78px;
}

/* ==== base.css ==== */
html { scroll-behavior: smooth; }
body { color: var(--mp-text); background: var(--mp-surface); }
body, button, input, select, textarea { -webkit-font-smoothing: antialiased; }
*, *::before, *::after { box-sizing: border-box; }
a { text-underline-offset: .18em; }
img { max-width: 100%; height: auto; }
.mp-shell { width: min(100% - (2 * var(--mp-gutter)), var(--mp-page-width)); margin-inline: auto; }

/* ==== header.css ==== */
.mp-site-header {
  position: relative;
  z-index: 1000;
  background: var(--mp-surface, #fff);
  color: var(--mp-text, #1d1d1b);
  border-bottom: 1px solid rgba(29,29,27,.12);
}
.mp-site-header a { color: inherit; text-decoration: none; }
.mp-promo-bar { background: var(--mp-text, #1d1d1b); color: #fff; }
.mp-promo-bar__inner {
  min-height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5px 20px;
  font-size: 10px;
  line-height: 1.2;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.mp-main-header {
  padding-inline: clamp(18px, 3vw, 48px);
}

/* position: sticky doesn't work here — .wp-site-blocks (WordPress core's
 * root-padding-aware-alignments wrapper) has overflow: clip, which breaks
 * the sticky containing-block chain. header.js switches this to fixed via
 * IntersectionObserver instead and inserts a matching-height spacer so the
 * page doesn't jump when the header leaves normal flow. */
.mp-main-header.is-stuck {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1000;
  background: var(--mp-surface, #fff);
  box-shadow: 0 6px 18px rgba(16, 24, 40, .08);
}
.mp-main-header__inner {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0,1fr) auto;
  align-items: center;
  min-height: 82px;
  gap: 34px;
  max-width: 1540px;
  margin-inline: auto;
}
.mp-header-logo { display: block; line-height: 0; }
.mp-header-logo img { display: block; width: auto; height: 46px; object-fit: contain; }
.mp-header-primary { justify-self: center; min-width: 0; }
.mp-header-primary__list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(18px, 2vw, 34px);
  margin: 0;
  padding: 0;
  list-style: none;
}
.mp-header-primary__item > a {
  display: block;
  padding: 32px 0 30px;
  font-size: 11px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: .09em;
  text-transform: uppercase;
  white-space: nowrap;
}
.mp-header-primary__item > a::after {
  content: "";
  display: block;
  width: 0;
  height: 1px;
  margin-top: 7px;
  background: currentColor;
  transition: width .2s ease;
}
.mp-header-primary__item:hover > a::after,
.mp-header-primary__item:focus-within > a::after { width: 100%; }
.mp-header-secondary { display: flex; align-items: center; gap: 15px; }
.mp-header-icon {
  position: relative;
  display: grid;
  place-items: center;
  width: 26px;
  height: 26px;
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
}
.mp-header-icon::before,
.mp-header-icon::after,
.mp-header-icon > span::before,
.mp-header-icon > span::after { content: ""; position: absolute; box-sizing: border-box; }
.mp-header-icon--search::before { width: 15px; height: 15px; border: 1px solid currentColor; border-radius: 50%; transform: translate(-2px,-2px); }
.mp-header-icon--search::after { width: 7px; height: 1px; background: currentColor; transform: translate(6px,6px) rotate(45deg); }
.mp-header-icon--account::before { width: 9px; height: 9px; border: 1px solid currentColor; border-radius: 50%; top: 2px; }
.mp-header-icon--account::after { width: 17px; height: 9px; border: 1px solid currentColor; border-bottom: 0; border-radius: 10px 10px 0 0; bottom: 2px; }
.mp-header-icon--cart::before { width: 19px; height: 13px; border: 1px solid currentColor; border-radius: 0 0 2px 2px; bottom: 2px; }
.mp-header-icon--cart::after { width: 9px; height: 5px; border: 1px solid currentColor; border-bottom: 0; border-radius: 7px 7px 0 0; top: 1px; }
.mp-header-cart-count {
  position: absolute;
  top: -5px;
  right: -7px;
  display: grid;
  place-items: center;
  min-width: 15px;
  height: 15px;
  padding: 0 3px;
  border-radius: 999px;
  background: var(--mp-accent, #e66571);
  color: #fff;
  font-size: 8px;
  line-height: 1;
}
.mp-header-cart-count.is-empty { display: none; }
.mp-has-mega { position: static; }
.mp-mega-menu {
  position: absolute;
  top: 100%;
  left: 50%;
  width: min(100vw - 48px, 1280px);
  display: grid;
  grid-template-columns: minmax(0,1fr) 315px;
  gap: 48px;
  padding: 34px;
  background: #fff;
  border-top: 1px solid rgba(29,29,27,.12);
  box-shadow: 0 18px 45px rgba(0,0,0,.08);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translate(-50%, 8px);
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}
.mp-has-mega:hover .mp-mega-menu,
.mp-has-mega:focus-within .mp-mega-menu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(-50%, 0);
}
.mp-mega-menu__links { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 34px; }
.mp-mega-menu section { min-width: 0; }
.mp-mega-menu__title {
  display: inline-block;
  margin-bottom: 18px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .07em;
  text-transform: uppercase;
}
.mp-mega-menu ul { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.mp-mega-menu li a { font-size: 13px; color: rgba(29,29,27,.66); }
.mp-mega-menu li a:hover { color: #1d1d1b; }
.mp-mega-menu__promo { display: grid; gap: 12px; align-content: start; text-align: center; font-size: 11px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.mp-mega-menu__promo-image { display: block; overflow: hidden; aspect-ratio: 315/194; background: #f3f1ed; }
.mp-mega-menu__promo img { width: 100%; height: 100%; object-fit: cover; object-position: center 42%; transition: transform .35s ease; }
.mp-mega-menu__promo:hover img { transform: scale(1.035); }
.mp-search-panel,
.mp-mobile-drawer { position: fixed; inset: 0; z-index: 1300; pointer-events: none; visibility: hidden; }
.mp-search-panel.is-open,
.mp-mobile-drawer.is-open { pointer-events: auto; visibility: visible; }
.mp-search-panel__backdrop,
.mp-mobile-drawer__backdrop { position: absolute; inset: 0; width: 100%; border: 0; background: rgba(0,0,0,.28); opacity: 0; transition: opacity .2s ease; }
.mp-search-panel.is-open .mp-search-panel__backdrop,
.mp-mobile-drawer.is-open .mp-mobile-drawer__backdrop { opacity: 1; }
.mp-search-panel__content {
  position: relative;
  z-index: 1;
  width: 100%;
  padding: clamp(58px, 9vh, 96px) clamp(20px, 5vw, 76px) 48px;
  background: #fff;
  transform: translateY(-100%);
  transition: transform .24s ease;
}
.mp-search-panel.is-open .mp-search-panel__content { transform: translateY(0); }
.mp-search-panel__close { position: absolute; top: 21px; right: clamp(20px, 5vw, 76px); border: 0; background: transparent; font-size: 30px; font-weight: 200; cursor: pointer; }
.mp-search-panel__form { position: relative; display: grid; grid-template-columns: 28px minmax(0,1fr); align-items: center; gap: 14px; max-width: 1180px; margin-inline: auto; border-bottom: 1px solid #1d1d1b; }
.mp-search-panel__form input[type="search"] { width: 100%; min-height: 66px; padding: 8px 0; border: 0; outline: 0; background: transparent; color: inherit; font: inherit; font-size: clamp(23px, 3vw, 40px); }
.mp-search-panel__icon { position: relative; width: 20px; height: 20px; border: 1px solid currentColor; border-radius: 50%; }
.mp-search-panel__icon::after { content: ""; position: absolute; width: 8px; height: 1px; right: -6px; bottom: -3px; background: currentColor; transform: rotate(45deg); }
.mp-mobile-toggle { display: none; width: 27px; height: 27px; padding: 3px 0; border: 0; background: transparent; }
.mp-mobile-toggle span { display: block; width: 23px; height: 1px; margin: 5px 0; background: currentColor; }
.mp-mobile-drawer__panel {
  position: absolute;
  inset: 0 auto 0 0;
  width: min(88vw, 390px);
  display: grid;
  grid-template-rows: auto minmax(0,1fr) auto;
  background: #fff;
  transform: translateX(-100%);
  transition: transform .24s ease;
}
.mp-mobile-drawer.is-open .mp-mobile-drawer__panel { transform: translateX(0); }
.mp-mobile-drawer__header { display: flex; align-items: center; justify-content: space-between; min-height: 64px; padding: 0 22px; border-bottom: 1px solid rgba(29,29,27,.12); font-size: 11px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; }
.mp-mobile-drawer__close { border: 0; background: transparent; font-size: 28px; font-weight: 200; cursor: pointer; }
.mp-mobile-drawer__nav { overflow-y: auto; overscroll-behavior: contain; }
.mp-mobile-drawer__nav > a,
.mp-mobile-drawer__nav summary { display: flex; align-items: center; justify-content: space-between; min-height: 56px; padding: 0 22px; border-bottom: 1px solid rgba(29,29,27,.12); font-size: 13px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase; cursor: pointer; list-style: none; }
.mp-mobile-drawer__nav summary::-webkit-details-marker { display: none; }
.mp-mobile-drawer__nav summary::after { content: "+"; font-size: 18px; font-weight: 300; }
.mp-mobile-drawer__nav details[open] summary::after { content: "−"; }
.mp-mobile-drawer__submenu { display: grid; padding: 8px 22px 16px; border-bottom: 1px solid rgba(29,29,27,.12); }
.mp-mobile-drawer__submenu a { padding: 9px 0; font-size: 13px; color: rgba(29,29,27,.66); }
.mp-mobile-drawer__footer { padding: 20px 22px calc(20px + env(safe-area-inset-bottom)); border-top: 1px solid rgba(29,29,27,.12); font-size: 13px; }
body.mp-overlay-open { overflow: hidden; }
@media (max-width: 1180px) {
  .mp-header-primary__list { gap: 18px; }
  .mp-header-primary__item > a { font-size: 10px; }
}
@media (max-width: 960px) {
  .mp-promo-bar__inner { min-height: 28px; font-size: 9px; }
  .mp-main-header { padding-inline: 16px; }
  .mp-main-header__inner { grid-template-columns: 28px minmax(0,1fr) auto; min-height: 64px; gap: 12px; }
  .mp-mobile-toggle { display: block; }
  .mp-header-primary { display: none; }
  .mp-header-logo { justify-self: center; }
  .mp-header-logo img { height: 38px; }
  .mp-header-secondary { gap: 12px; }
  .mp-header-icon--account { display: none; }
}
@media (max-width: 420px) {
  .mp-main-header__inner { min-height: 60px; }
  .mp-header-logo img { height: 34px; max-width: 126px; }
  .mp-header-secondary { gap: 8px; }
}
@media (max-height: 520px) and (orientation: landscape) and (max-width: 960px) {
  .mp-promo-bar { display: none; }
  .mp-main-header__inner { min-height: 52px; }
  .mp-header-logo img { height: 31px; }
  .mp-mobile-drawer__header { min-height: 52px; }
  .mp-mobile-drawer__nav > a,
  .mp-mobile-drawer__nav summary { min-height: 44px; }
}

/* ===== Consolidated from iteration-1.css (2026-09-23): promo bar + desktop search panel ===== */
/* Restored social icons; the existing beige promo strip remains untouched. */
.mp-promo-bar__inner { position: relative !important; }
.mp-promo-bar__social-icons { position: absolute !important; left: max(28px, calc((100vw - 1290px) / 2)) !important; top: 50% !important; z-index: 50 !important; display: inline-flex !important; align-items: center !important; gap: 13px !important; width: auto !important; height: 18px !important; margin: 0 !important; padding: 0 !important; visibility: visible !important; opacity: 1 !important; transform: translateY(-50%) !important; }
.mp-promo-bar__social-icons a { display: inline-flex !important; align-items: center; justify-content: center; width: 18px !important; height: 18px !important; padding: 0 !important; color: #fff !important; opacity: 1 !important; visibility: visible !important; }
.mp-promo-bar__social-icons a:hover { opacity: .72; }
.mp-promo-bar__social-icons svg { display: block !important; width: 16px !important; height: 16px !important; fill: currentColor; stroke: currentColor; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; visibility: visible !important; }
.mp-promo-bar__social-icons a:first-child svg { fill: none; }
@media (max-width: 768px) { .mp-promo-bar__social-icons { display: none !important; } }
/* Desktop header search only; the mobile drawer/search behavior is unchanged. */
@media (min-width: 782px) {
  html body .mp-search-panel { position: fixed !important; inset: 0 !important; left: 0 !important; top: 0 !important; z-index: 10000 !important; width: 100vw !important; max-width: none !important; height: 100dvh !important; margin: 0 !important; padding: 0 !important; border: 0 !important; background: transparent !important; box-shadow: none !important; opacity: 0 !important; visibility: hidden !important; pointer-events: none !important; transform: none !important; transition: opacity .18s ease, visibility .18s ease !important; }
  html body .mp-search-panel.is-open { opacity: 1 !important; visibility: visible !important; pointer-events: auto !important; transform: none !important; }
  .mp-search-panel__backdrop { position: absolute !important; inset: 0 !important; z-index: 1 !important; width: 100% !important; height: 100% !important; padding: 0 !important; border: 0 !important; background: rgba(20, 31, 48, .36) !important; }
  .mp-search-panel__content { position: absolute !important; z-index: 2 !important; top: clamp(82px, 12vh, 132px) !important; left: 50% !important; width: min(760px, calc(100vw - 64px)) !important; margin: 0 !important; padding: 34px !important; background: #fff !important; box-sizing: border-box !important; box-shadow: 0 22px 70px rgba(31, 55, 99, .18) !important; transform: translateX(-50%) !important; }
  .mp-search-panel__form { width: 100% !important; max-width: none !important; margin: 0 !important; }
  .mp-search-panel__form input[type="search"],
  .mp-search-panel__form input[type="search"]:hover,
  .mp-search-panel__form input[type="search"]:focus,
  .mp-search-panel__form input[type="search"]:focus-visible { border: 0 !important; border-radius: 0 !important; outline: 0 !important; box-shadow: none !important; background: transparent !important; -webkit-appearance: none !important; appearance: none !important; }
}

/* ==== components.css ==== */
/* Shared interface elements and WooCommerce states */
:where(.wp-site-blocks, .woocommerce) button,
:where(.wp-site-blocks, .woocommerce) input,
:where(.wp-site-blocks, .woocommerce) select,
:where(.wp-site-blocks, .woocommerce) textarea { font: inherit; }

:where(.woocommerce, .wp-site-blocks) .button,
:where(.woocommerce, .wp-site-blocks) button[type="submit"],
:where(.woocommerce, .wp-site-blocks) input[type="submit"],
.wp-block-button__link {
  min-height: 46px;
  border-radius: 999px;
  padding: 12px 24px;
  border: 1px solid var(--mp-text);
  background: var(--mp-text);
  color: #fff;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  transition: transform .18s ease, background-color .18s ease, color .18s ease, border-color .18s ease;
}
:where(.woocommerce, .wp-site-blocks) .button:hover,
:where(.woocommerce, .wp-site-blocks) button[type="submit"]:hover,
:where(.woocommerce, .wp-site-blocks) input[type="submit"]:hover,
.wp-block-button__link:hover { transform: translateY(-1px); }

:where(.woocommerce, .wp-site-blocks) input[type="text"],
:where(.woocommerce, .wp-site-blocks) input[type="email"],
:where(.woocommerce, .wp-site-blocks) input[type="tel"],
:where(.woocommerce, .wp-site-blocks) input[type="password"],
:where(.woocommerce, .wp-site-blocks) input[type="number"],
:where(.woocommerce, .wp-site-blocks) input[type="search"],
:where(.woocommerce, .wp-site-blocks) select,
:where(.woocommerce, .wp-site-blocks) textarea {
  width: 100%;
  min-height: 48px;
  border: 1px solid #d9d6d0;
  border-radius: 10px;
  padding: 11px 14px;
  background: #fff;
  color: var(--mp-text);
  outline: none;
}
:where(.woocommerce, .wp-site-blocks) textarea { min-height: 120px; resize: vertical; }
:where(.woocommerce, .wp-site-blocks) input:focus,
:where(.woocommerce, .wp-site-blocks) select:focus,
:where(.woocommerce, .wp-site-blocks) textarea:focus {
  border-color: var(--mp-text);
  box-shadow: 0 0 0 3px rgba(23,23,23,.08);
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  margin: 0 0 24px;
  padding: 16px 18px 16px 48px;
  border: 1px solid var(--mp-line);
  border-radius: var(--mp-radius-md);
  background: var(--mp-soft);
  color: var(--mp-text);
  line-height: 1.5;
}
.woocommerce-error { border-color: #e8b7b0; background: #fff4f2; }
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before { top: 16px; left: 18px; }

.woocommerce nav.woocommerce-pagination ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  border: 0;
}
.woocommerce nav.woocommerce-pagination ul li { border: 0; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  display: grid;
  place-items: center;
  min-width: 42px;
  min-height: 42px;
  padding: 8px;
  border: 1px solid var(--mp-line);
  border-radius: 999px;
  background: #fff;
  color: var(--mp-text);
}
.woocommerce nav.woocommerce-pagination ul li span.current,
.woocommerce nav.woocommerce-pagination ul li a:hover {
  border-color: var(--mp-text);
  background: var(--mp-text);
  color: #fff;
}

.woocommerce .woocommerce-breadcrumb {
  margin: 0 0 24px;
  color: var(--mp-muted);
  font-size: 13px;
}
.woocommerce .woocommerce-breadcrumb a { color: inherit; }

@media (max-width: 680px) {
  :where(.woocommerce, .wp-site-blocks) .button,
  :where(.woocommerce, .wp-site-blocks) button[type="submit"],
  :where(.woocommerce, .wp-site-blocks) input[type="submit"] { min-height: 44px; }
  .woocommerce-message,
  .woocommerce-info,
  .woocommerce-error { padding: 14px 14px 14px 42px; font-size: 14px; }
  .woocommerce-message::before,
  .woocommerce-info::before,
  .woocommerce-error::before { top: 14px; left: 15px; }
}
/* Keep the MailPoet subscription popup reachable on short and mobile screens. */
body .mailpoet_form_popup.active {
	top: 50% !important;
	right: auto !important;
	bottom: auto !important;
	left: 50% !important;
	max-width: calc(100vw - 24px) !important;
	max-height: calc(100dvh - 24px) !important;
	overflow-y: auto !important;
	transform: translate(-50%, -50%) !important;
}

@media (max-width: 500px) {
	body #mp_form_popup1.mailpoet_form_popup.active {
		box-sizing: border-box !important;
		width: calc(100vw - 24px) !important;
		min-width: 0 !important;
		max-height: calc(100dvh - 96px) !important;
		padding: 20px 16px !important;
		border: 1px solid rgba(23, 52, 97, .12) !important;
		border-radius: 16px !important;
		background: #fff !important;
		box-shadow: 0 18px 55px rgba(23, 52, 97, .24) !important;
	}
	body #mp_form_popup1 > form.mailpoet_form_popup {
		width: 100% !important;
		background: transparent !important;
	}
	body #mp_form_popup1 fieldset {
		min-width: 0 !important;
		margin: 0 !important;
		padding: 0 !important;
		border: 0 !important;
	}
	body #mp_form_popup1 legend.mailpoet_checkbox_label,
	body #mp_form_popup1 label.mailpoet_checkbox_label {
		font-size: 14px !important;
		line-height: 1.35 !important;
	}
	body #mp_form_popup1 .mailpoet_form_paragraph.last {
		font-size: 12px !important;
		line-height: 1.45 !important;
	}
}

/* Mini Care status in the WooCommerce account dashboard. */
.mp-account-care {
	margin: 0 0 32px;
	padding: clamp(22px, 4vw, 36px);
	border-radius: 24px;
	background: #f7f1eb;
	color: #173461;
}
.mp-account-care__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
}
.mp-account-care__eyebrow,
.mp-account-care__next { margin: 0; }
.mp-account-care h2 { margin: 4px 0 0; }
.mp-account-care__discount {
	font-size: clamp(36px, 7vw, 64px);
	line-height: 1;
}
.mp-account-care__progress {
	height: 12px;
	margin: 18px 0 10px;
	overflow: hidden;
	border-radius: 999px;
	background: #dfd5cc;
}
.mp-account-care__progress span {
	display: block;
	height: 100%;
	border-radius: inherit;
	background: #173461;
}
.mp-mini-care-total td { font-size: 13px; }

/* ==== footer.css ==== */
/* Mini Problems footer */
.mp-site-footer {
  margin-block-start: clamp(56px, 7vw, 104px);
  background: #f2efe8;
  color: var(--mp-text);
  border-top: 1px solid rgba(23, 23, 23, .08);
}

.mp-site-footer__inner {
  width: min(100% - (2 * var(--mp-gutter)), var(--mp-page-width));
  margin-inline: auto;
  padding-block: clamp(40px, 5vw, 72px) 22px;
}

.mp-site-footer__columns {
  gap: clamp(28px, 4vw, 64px);
  margin: 0;
}

.mp-site-footer__logo { margin: 0 0 20px; }
.mp-site-footer__logo img { display: block; }
.mp-site-footer__intro {
  max-width: 340px;
  margin: 0 0 18px;
  color: #56534f;
  font-size: 15px;
  line-height: 1.65;
}
.mp-site-footer__contact { margin: 0; font-weight: 600; }
.mp-site-footer a { color: inherit; text-decoration: none; }
.mp-site-footer a:hover,
.mp-site-footer a:focus-visible { text-decoration: underline; }

.mp-site-footer h2 {
  margin: 4px 0 18px;
  font-size: clamp(16px, 1.3vw, 19px);
  line-height: 1.2;
  letter-spacing: -.01em;
}
.mp-site-footer__nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 11px;
}
.mp-site-footer__nav li { margin: 0; color: #56534f; font-size: 15px; }
.mp-site-footer__help p {
  margin: 0 0 20px;
  color: #56534f;
  font-size: 15px;
  line-height: 1.6;
}
.mp-site-footer__buttons { margin: 0; }
.mp-site-footer__buttons .wp-block-button__link {
  min-height: 44px;
  padding: 11px 22px;
  border: 1px solid #fff;
  border-radius: 999px;
  background: transparent;
  color: var(--mp-text);
  font-weight: 600;
}
.mp-site-footer__buttons .wp-block-button__link:hover {
  background: var(--mp-text);
  color: #fff;
  text-decoration: none;
}

.mp-site-footer__bottom {
  gap: 16px 28px;
  margin-top: clamp(34px, 4vw, 56px);
  padding-top: 20px;
  border-top: 1px solid rgba(23, 23, 23, .12);
  color: #6b6863;
  font-size: 13px;
}
.mp-site-footer__bottom p { margin: 0; }

.mp-site-footer__social-icons {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  width: min(100%, 230px);
  margin: 16px 0 0;
}
.mp-site-footer__social-icons a {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  align-items: center;
  column-gap: 10px;
  min-width: 44px;
  width: 100%;
  min-height: 44px;
  padding: 9px 24px;
  border: 1px solid rgba(247, 251, 253, .34);
  border-radius: 999px;
  color: #F7FBFD;
  font-size: 13px;
  line-height: 1;
  text-decoration: none;
  transition: background-color .2s ease, border-color .2s ease, opacity .2s ease;
  box-sizing: border-box;
}
.mp-site-footer__social-icons svg {
  display: block;
  justify-self: center;
  width: 23px;
  height: 23px;
  fill: currentColor;
  stroke: currentColor;
  stroke-width: 1.4;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.mp-site-footer__social-icons a::after {
  justify-self: start;
  white-space: nowrap;
}
.mp-site-footer__social-icons a:nth-child(1)::after { content: 'Почта'; }
.mp-site-footer__social-icons a:nth-child(2)::after { content: 'ВКонтакте'; }
.mp-site-footer__social-icons a:nth-child(3)::after { content: 'Telegram'; }
.mp-site-footer__social-icons a:first-child svg { fill: none; }
.mp-site-footer__social-icons a:hover { border-color: #F7FBFD; background: rgba(247, 251, 253, .1); opacity: 1; }

@media (max-width: 900px) {
  .mp-site-footer__columns { flex-wrap: wrap !important; }
  .mp-site-footer__brand { flex-basis: 100% !important; }
  .mp-site-footer__nav,
  .mp-site-footer__help { flex-basis: calc(33.333% - 20px) !important; }
}

@media (max-width: 600px) {
  .mp-site-footer__social-icons {
    width: min(100%, 230px);
  }
}

@media (max-width: 680px) {
  .mp-site-footer { margin-block-start: 48px; }
  .mp-site-footer__inner { padding-block-start: 34px; }
  .mp-site-footer__columns { gap: 30px; }
  .mp-site-footer__nav,
  .mp-site-footer__help { flex-basis: 100% !important; }
  .mp-site-footer h2 { margin-bottom: 13px; }
  .mp-site-footer__bottom { align-items: flex-start; }
}

@media (orientation: landscape) and (max-height: 520px) and (max-width: 950px) {
  .mp-site-footer__inner { padding-block-start: 28px; }
  .mp-site-footer__columns { gap: 24px; }
  .mp-site-footer__brand { flex-basis: 36% !important; }
  .mp-site-footer__nav { flex-basis: calc(32% - 16px) !important; }
  .mp-site-footer__help { flex-basis: 100% !important; }
  .mp-site-footer__logo img { width: 122px !important; height: auto !important; }
}

/* ===== Consolidated from iteration-1.css (2026-09-23): desktop footer headings ===== */
/* Keep desktop footer headings readable without splitting words. */
@media (min-width: 901px) {
  .mp-site-footer .mp-site-footer__columns {
    grid-template-columns: minmax(240px, 1.5fr) minmax(180px, .9fr) minmax(190px, 1fr) minmax(180px, .9fr) !important;
    gap: clamp(48px, 5vw, 82px) !important;
    max-width: 1180px !important;
  }

  .mp-site-footer h2 {
    overflow-wrap: normal !important;
    word-break: keep-all !important;
    hyphens: none !important;
  }
}

/* ==== mobile.css ==== */
/* Cross-section responsive rules are added here only when a component cannot own them. */

/* The UPF explanation is a core Media & Text block. WordPress keeps that block
   in two columns until 600px, which leaves an unreadably narrow text column on
   tablets. Stack it at the theme's tablet breakpoint instead. */
@media (max-width: 900px) {
  .mp-front-page .mp-upf-explain__grid,
  .mp-upf-page .mp-upf-explain__grid {
    gap: 28px !important;
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .mp-front-page .mp-upf-explain__grid > .wp-block-media-text__content,
  .mp-upf-page .mp-upf-explain__grid > .wp-block-media-text__content {
    grid-column: 1 !important;
    grid-row: 1 !important;
    min-width: 0;
  }

  .mp-front-page .mp-upf-explain__grid > .wp-block-media-text__media,
  .mp-upf-page .mp-upf-explain__grid > .wp-block-media-text__media {
    grid-column: 1 !important;
    grid-row: 2 !important;
    min-width: 0;
    width: 100%;
  }
}

/* ==== landscape.css ==== */
/* Mobile landscape safeguards */
@media (orientation: landscape) and (max-height: 520px) and (max-width: 950px) {
  html { scroll-padding-top: 64px; }
  body { min-width: 320px; }

  .mp-site-header,
  .mp-header { --mp-header-height: 62px; }

  .mp-mobile-menu,
  .mp-catalog-drawer,
  .mp-size-guide-modal,
  .woocommerce-store-notice {
    max-height: 100dvh;
    overflow-y: auto;
    overscroll-behavior: contain;
  }

  .mp-mobile-menu__inner,
  .mp-catalog-drawer__inner,
  .mp-size-guide-modal__dialog { padding-bottom: max(18px, env(safe-area-inset-bottom)); }

  .mp-home-hero,
  .wp-block-cover.mp-home-hero { min-height: clamp(300px, 88dvh, 520px); }

  .single-product div.product,
  .woocommerce div.product { align-items: start; }

  .woocommerce div.product div.images,
  .woocommerce div.product div.summary { margin-bottom: 22px; }

  .woocommerce-cart-form,
  .cart_totals,
  .woocommerce-checkout-review-order { position: static !important; }

  .mp-catalog-toolbar { position: static; }
}

/* ==== polish.css ==== */
/* Mini Problems 2.1.4 — final alignment polish for page headers and catalog filters. */

/*
 * One header canvas for editable/service pages.
 * The actual page patterns use different hero classes, but their eyebrow,
 * title and lead must share the same centre line and readable measure.
 */
.mp-editable-page .mp-brand-hero,
.mp-editable-page .mp-care-page__hero,
.mp-editable-page .mp-delivery-hero,
.mp-editable-page .mp-faq-hero,
.mp-editable-page .mp-document-page,
.mp-editable-page .mp-legal-page,
.mp-account-intro,
.mp-search-page > .wp-block-group:first-child,
.mp-404-page > .wp-block-group:first-child {
  box-sizing: border-box;
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin-inline: auto !important;
  padding-inline: clamp(20px, 5vw, 72px) !important;
  text-align: center;
  width: min(100%, 1440px) !important;
}

.mp-editable-page .mp-brand-hero > *,
.mp-editable-page .mp-care-page__hero > *,
.mp-editable-page .mp-delivery-hero > *,
.mp-editable-page .mp-faq-hero > *,
.mp-editable-page .mp-document-page > *,
.mp-editable-page .mp-legal-page > *,
.mp-account-intro > *,
.mp-search-page > .wp-block-group:first-child > *,
.mp-404-page > .wp-block-group:first-child > * {
  box-sizing: border-box;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 920px !important;
  text-align: center !important;
  width: 100%;
}

.mp-editable-page .mp-page-title,
.mp-editable-page h1.mp-page-title,
.mp-account-intro__title,
.mp-search-page h1,
.mp-404-page h1 {
  margin-block: 14px 18px !important;
  max-width: 980px !important;
  overflow-wrap: anywhere;
  text-align: center !important;
  text-wrap: balance;
}

.mp-editable-page .mp-page-lead,
.mp-account-intro__text,
.mp-search-page .mp-page-lead,
.mp-404-page .mp-page-lead {
  max-width: 760px !important;
  text-wrap: pretty;
}

/* Editable pages must respect the alignment selected in the block editor. */
.mp-account-intro__text,
.mp-search-page .mp-page-lead,
.mp-404-page .mp-page-lead {
  text-align: center !important;
}

.mp-editable-page .mp-section-eyebrow,
.mp-editable-page .mp-page-script {
  text-align: center !important;
}

/* The document patterns had no dedicated hero spacing. */
.mp-editable-page .mp-document-page {
  padding-block: clamp(54px, 8vw, 110px) !important;
}

/* Catalog drawer: "Girls / Boys" controls are equal, aligned buttons. */
.mp-catalog-gender-filter__list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px !important;
  width: 100%;
}

.mp-catalog-gender-filter__list li,
.mp-catalog-filters .mp-catalog-gender-filter__list li,
.mp-catalog-filters .mp-catalog-gender-filter__list li + li {
  margin: 0 !important;
  min-width: 0;
  width: 100%;
}

.mp-catalog-gender-filter__list a {
  box-sizing: border-box;
  justify-content: flex-start;
  min-height: 44px;
  padding: 0 12px !important;
  white-space: nowrap;
  width: 100%;
}

@media (max-width: 600px) {
  .mp-editable-page .mp-brand-hero,
  .mp-editable-page .mp-care-page__hero,
  .mp-editable-page .mp-delivery-hero,
  .mp-editable-page .mp-faq-hero,
  .mp-editable-page .mp-document-page,
  .mp-editable-page .mp-legal-page,
  .mp-account-intro,
  .mp-search-page > .wp-block-group:first-child,
  .mp-404-page > .wp-block-group:first-child {
    padding-inline: 18px !important;
  }

  .mp-editable-page .mp-page-title,
  .mp-editable-page h1.mp-page-title,
  .mp-account-intro__title,
  .mp-search-page h1,
  .mp-404-page h1 {
    font-size: clamp(34px, 11vw, 52px) !important;
    line-height: 1.04 !important;
  }

  .mp-catalog-gender-filter__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mp-catalog-gender-filter__list a {
    font-size: 12px;
    gap: 8px;
    padding-inline: 10px !important;
  }
}

@media (max-width: 340px) {
  .mp-catalog-gender-filter__list {
    grid-template-columns: 1fr;
  }
}

/* Fix #2 (client spec): the Complianz cookie banner covered most of the
   mobile viewport, hiding the product image/size picker/CTA behind it.
   Keeps Accept/Decline/Settings, only tightens spacing and repositions it
   above the sticky bottom nav and (on product/cart pages) the sticky
   add-to-cart bar - reusing the same --mp-mobile-nav-height /
   --mp-mobile-action-height variables and has-mobile-*-bar body classes
   those bars are themselves positioned from (see blocks.css), instead of a
   guessed pixel offset that would drift if those bars ever resize. */
@media (max-width: 700px) {
  #cmplz-cookiebanner-container .cmplz-cookiebanner {
    bottom: calc(var(--mp-mobile-nav-height) + env(safe-area-inset-bottom, 0px)) !important;
    top: auto !important;
    right: 0 !important;
    left: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    max-height: 62vh !important;
    overflow-y: auto !important;
    border-radius: 16px 16px 0 0 !important;
    padding: 14px 16px !important;
  }
  body.has-mobile-product-bar #cmplz-cookiebanner-container .cmplz-cookiebanner,
  body.has-mobile-cart-bar #cmplz-cookiebanner-container .cmplz-cookiebanner {
    bottom: calc(var(--mp-mobile-nav-height) + var(--mp-mobile-action-height) + env(safe-area-inset-bottom, 0px)) !important;
  }
  #cmplz-cookiebanner-container .cmplz-header {
    margin-bottom: 6px !important;
  }
  #cmplz-cookiebanner-container .cmplz-title {
    font-size: 15px !important;
  }
  #cmplz-cookiebanner-container .cmplz-message,
  #cmplz-cookiebanner-container .cmplz-message p {
    font-size: 12.5px !important;
    line-height: 1.35 !important;
    margin: 0 0 10px !important;
  }
  #cmplz-cookiebanner-container .cmplz-divider {
    margin: 8px 0 !important;
  }
  #cmplz-cookiebanner-container .cmplz-buttons {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
    margin: 10px 0 !important;
  }
  #cmplz-cookiebanner-container .cmplz-buttons .cmplz-accept {
    grid-column: 1 / -1 !important;
  }
  #cmplz-cookiebanner-container .cmplz-btn {
    min-height: 40px !important;
    height: 40px !important;
    padding: 0 12px !important;
    font-size: 13px !important;
  }
  #cmplz-cookiebanner-container .cmplz-documents.cmplz-links ul {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 4px 12px !important;
    margin: 0 !important;
  }
  #cmplz-cookiebanner-container .cmplz-documents.cmplz-links li {
    font-size: 10.5px !important;
    margin: 0 !important;
  }
}

/* ==== iteration-1.css ==== */
/* Cross-page rules that don't belong to a single page type (page titles, breadcrumbs, product-card badges shown on both home and catalog). Everything page-specific was moved out on 2026-09-23 into pages.css/header.css/home.css/catalog.css/product.css/footer.css — see the 'Consolidated from iteration-1.css' markers there. */

/* Internal page titles only. */
body:not(.home) main h1,
body:not(.home) .wp-block-query-title,
body:not(.home) .mp-page-title { font-size: clamp(30px, 4vw, 52px) !important; line-height: 1.08 !important; overflow-wrap: anywhere; }
.mp-global-breadcrumbs { width: min(100% - 40px, 1290px); margin: 18px auto 0; font-size: 12px; color: #777; }
.mp-global-breadcrumbs a { color: inherit; }

/* Compact NEW marker and progressive catalogue pagination. */
.mp-catalog-card__image, .wp-block-woocommerce-product-image { position: relative; }

/* Keep prices and actions on one baseline when a product name wraps. */
@media (min-width: 600px) {
  .mp-catalog-card__title {
    min-height: 3em !important;
  }
}
.mp-new-badge,
.mp-product-tag-badge { position: absolute; z-index: 4; top: 10px; left: 10px; display: inline-flex; align-items: center; min-height: 22px; padding: 3px 7px; background: var(--mp-primary, #1f3d6b); color: #fff; font-size: 10px; font-weight: 700; line-height: 1; letter-spacing: .08em; }
.mp-product-tag-badge--hit { background: #b79a84; }

/* Never render the legacy hard-coded NEW ribbon. Product-tag badges above are
 * the single source of truth for NEW and HIT. */
.mp-product-card__image::before,
.mp-products-grid .wc-block-components-product-image::before {
  content: none !important;
  display: none !important;
}

