/* ==== pages.css ==== */
/* Service pages: account, legal content, generic pages, search and 404 */

.mp-account-page,
.mp-editable-page,
.mp-search-page,
.mp-404-page,
.main-page {
  padding-inline: var(--mp-page-gutter, clamp(16px, 4vw, 48px));
}

.mp-account-page,
.mp-editable-page,
.mp-search-page,
.mp-404-page {
  padding-block: clamp(32px, 6vw, 80px);
}

.mp-account-intro,
.mp-account-shell,
.mp-editable-page__content,
.mp-search-page > *,
.mp-not-found {
  width: min(100%, 1180px);
  margin-inline: auto;
}

.mp-account-intro {
  margin-bottom: clamp(24px, 4vw, 42px);
  text-align: center;
}

.mp-account-intro__title {
  margin: 0 0 12px;
  font-size: clamp(30px, 5vw, 54px);
  line-height: 1.04;
  letter-spacing: -.03em;
}

.mp-account-intro__text {
  max-width: 680px;
  margin: 0 auto;
  color: var(--mp-muted);
  font-size: clamp(15px, 2vw, 18px);
  line-height: 1.55;
}

/* WooCommerce account */
.woocommerce-account .woocommerce {
  display: grid;
  grid-template-columns: minmax(210px, 260px) minmax(0, 1fr);
  gap: clamp(24px, 4vw, 48px);
  align-items: start;
}

.woocommerce-account .woocommerce::before,
.woocommerce-account .woocommerce::after { display: none; }

.woocommerce-MyAccount-navigation {
  padding: 10px;
  border: 1px solid var(--mp-line);
  border-radius: var(--mp-radius-lg);
  background: var(--mp-soft);
}

.woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.woocommerce-MyAccount-navigation li + li { margin-top: 4px; }

.woocommerce-MyAccount-navigation a {
  display: block;
  padding: 12px 14px;
  border-radius: 12px;
  color: var(--mp-text);
  font-weight: 600;
  line-height: 1.3;
  text-decoration: none;
}

.woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-MyAccount-navigation a:hover {
  background: #fff;
  box-shadow: 0 6px 22px rgba(23, 23, 23, .07);
}

.woocommerce-MyAccount-content {
  min-width: 0;
  padding: clamp(22px, 4vw, 40px);
  border: 1px solid var(--mp-line);
  border-radius: var(--mp-radius-lg);
  background: #fff;
}

.woocommerce-MyAccount-content > :first-child { margin-top: 0; }
.woocommerce-MyAccount-content > :last-child { margin-bottom: 0; }

.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 {
  margin-top: 0;
  letter-spacing: -.02em;
}

.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register,
.woocommerce-EditAccountForm,
.woocommerce-address-fields {
  padding: clamp(20px, 4vw, 34px);
  border: 1px solid var(--mp-line);
  border-radius: var(--mp-radius-lg);
  background: #fff;
}

.woocommerce-account .u-columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.woocommerce-account .u-column1,
.woocommerce-account .u-column2 { width: auto; float: none; }

.woocommerce-account .form-row { margin-bottom: 16px; }
.woocommerce-account label { display: inline-block; margin-bottom: 7px; font-weight: 600; }

.woocommerce-account table.shop_table {
  overflow: hidden;
  border: 1px solid var(--mp-line);
  border-radius: var(--mp-radius-md);
}

.woocommerce-account table.shop_table th,
.woocommerce-account table.shop_table td { padding: 14px 16px; }

.woocommerce-account .woocommerce-Address {
  width: calc(50% - 12px);
  padding: 20px;
  border: 1px solid var(--mp-line);
  border-radius: var(--mp-radius-md);
}

.woocommerce-account .woocommerce-Address-title h3 { margin: 0 0 12px; }

/* Legal and editorial pages */
.mp-legal-template .mp-editable-page__content,
.main-page {
  width: min(100%, 920px);
  margin-inline: auto;
}

.mp-editable-page__content > :first-child,
.main-page > :first-child { margin-top: 0; }

.mp-editable-page__content h1,
.mp-editable-page__content h2,
.mp-editable-page__content h3,
.main-page h1,
.main-page h2,
.main-page h3 {
  line-height: 1.15;
  letter-spacing: -.025em;
}

.mp-editable-page__content h2,
.main-page h2 { margin-top: clamp(32px, 6vw, 58px); }

.mp-editable-page__content p,
.mp-editable-page__content li,
.main-page p,
.main-page li {
  color: #3c3b38;
  line-height: 1.72;
}

.mp-editable-page__content a,
.main-page a {
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.mp-editable-page__content table,
.main-page table {
  width: 100%;
  border-collapse: collapse;
  font-size: 15px;
}

.mp-editable-page__content th,
.mp-editable-page__content td,
.main-page th,
.main-page td {
  padding: 12px 14px;
  border: 1px solid var(--mp-line);
  text-align: left;
  vertical-align: top;
}

/* Search page */
.mp-search-page__form {
  width: min(100%, 680px);
  margin: 0 auto clamp(30px, 5vw, 56px);
}

.mp-search-page__form .wp-block-search__inside-wrapper {
  padding: 5px;
  border: 1px solid var(--mp-line);
  border-radius: 999px;
  background: #fff;
  box-shadow: 0 10px 32px rgba(23, 23, 23, .06);
}

.mp-search-page__form input {
  min-height: 46px;
  border: 0 !important;
  border-radius: 999px;
  box-shadow: none !important;
}

.mp-search-page__form button {
  min-height: 46px;
  margin-left: 6px;
  border-radius: 999px;
}

.mp-post-grid {
  gap: clamp(16px, 2.5vw, 30px);
}

.mp-post-card {
  overflow: hidden;
  border: 1px solid var(--mp-line);
  border-radius: var(--mp-radius-lg);
  background: #fff;
  transition: transform .2s ease, box-shadow .2s ease;
}

.mp-post-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 42px rgba(23, 23, 23, .09);
}

.mp-post-card__image img { width: 100%; object-fit: cover; }
.mp-post-card__body { padding: 16px 18px 20px; }
.mp-post-card__title { margin: 0 0 10px; line-height: 1.3; }
.mp-post-card__title a { color: inherit; text-decoration: none; }
.mp-post-card__button { display: inline-flex; margin-top: 12px; font-weight: 600; }

.mp-empty-state {
  padding: clamp(30px, 6vw, 64px) 20px;
  border: 1px dashed var(--mp-line);
  border-radius: var(--mp-radius-lg);
  background: var(--mp-soft);
}

/* 404 */
.mp-404-page {
  display: grid;
  min-height: min(720px, calc(100dvh - 180px));
  place-items: center;
}

.mp-not-found {
  padding: clamp(38px, 7vw, 84px) clamp(18px, 5vw, 56px);
  border: 1px solid var(--mp-line);
  border-radius: clamp(24px, 4vw, 40px);
  background: linear-gradient(145deg, #fff 0%, var(--mp-soft) 100%);
  text-align: center;
}

.mp-not-found__code {
  margin: 0;
  font-size: clamp(84px, 18vw, 190px);
  line-height: .85;
  letter-spacing: -.08em;
}

.mp-not-found__title {
  margin: clamp(18px, 4vw, 32px) 0 12px;
  font-size: clamp(28px, 5vw, 48px);
  letter-spacing: -.03em;
}

.mp-not-found__text {
  max-width: 620px;
  margin: 0 auto 26px;
  color: var(--mp-muted);
  line-height: 1.6;
}

.mp-not-found__search {
  width: min(100%, 620px);
  margin: 28px auto 0;
}

.mp-not-found__search .wp-block-search__inside-wrapper {
  padding: 5px;
  border: 1px solid var(--mp-line);
  border-radius: 999px;
  background: #fff;
}

.mp-not-found__search input { border: 0 !important; box-shadow: none !important; }
.mp-not-found__search button { border-radius: 999px; }

@media (max-width: 820px) {
  .woocommerce-account .woocommerce { grid-template-columns: 1fr; }
  .woocommerce-MyAccount-navigation { overflow-x: auto; padding: 8px; }
  .woocommerce-MyAccount-navigation ul { display: flex; width: max-content; gap: 4px; }
  .woocommerce-MyAccount-navigation li + li { margin-top: 0; }
  .woocommerce-MyAccount-navigation a { white-space: nowrap; }
  .woocommerce-account .u-columns { grid-template-columns: 1fr; }
  .woocommerce-account .woocommerce-Address { width: 100%; float: none; }
  .woocommerce-account .woocommerce-Address + .woocommerce-Address { margin-top: 16px; }
  .mp-post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (max-width: 560px) {
  .mp-account-page,
  .mp-editable-page,
  .mp-search-page,
  .mp-404-page { padding-block: 28px 42px; }

  .woocommerce-MyAccount-content,
  .woocommerce-account .woocommerce-form-login,
  .woocommerce-account .woocommerce-form-register,
  .woocommerce-EditAccountForm,
  .woocommerce-address-fields { padding: 18px; border-radius: 18px; }

  .woocommerce-account table.shop_table,
  .woocommerce-account table.shop_table tbody,
  .woocommerce-account table.shop_table tr,
  .woocommerce-account table.shop_table td { display: block; width: 100%; }

  .woocommerce-account table.shop_table thead { display: none; }
  .woocommerce-account table.shop_table tr { padding: 14px; border-bottom: 1px solid var(--mp-line); }
  .woocommerce-account table.shop_table tr:last-child { border-bottom: 0; }
  .woocommerce-account table.shop_table td { padding: 6px 0; border: 0; text-align: left !important; }
  .woocommerce-account table.shop_table td::before { margin-right: 8px; font-weight: 700; }

  .mp-post-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 12px; }
  .mp-post-card__body { padding: 12px 12px 15px; }
  .mp-post-card__title { font-size: 15px !important; }
  .mp-post-card__button { font-size: 13px; }

  .mp-search-page__form .wp-block-search__inside-wrapper,
  .mp-not-found__search .wp-block-search__inside-wrapper { border-radius: 18px; }

  .mp-search-page__form button,
  .mp-not-found__search button { padding-inline: 16px; }

  .mp-not-found .wp-block-buttons { flex-direction: column; align-items: stretch; }
  .mp-not-found .wp-block-button,
  .mp-not-found .wp-block-button__link { width: 100%; }
}

@media (orientation: landscape) and (max-height: 520px) and (max-width: 950px) {
  .mp-account-page,
  .mp-editable-page,
  .mp-search-page,
  .mp-404-page { padding-block: 20px 28px; }

  .mp-404-page { min-height: auto; }
  .mp-not-found { padding-block: 24px; }
  .mp-not-found__code { font-size: clamp(70px, 18vh, 110px); }
  .mp-not-found__title { margin-top: 12px; }
  .mp-not-found__search { margin-top: 18px; }
}

/* Contacts page */
.mp-contacts-page {
  box-sizing: border-box;
  width: min(calc(100vw - 80px), 1180px) !important;
  max-width: none !important;
  margin-left: 50% !important;
  transform: translateX(-50%);
  padding: clamp(62px, 8vw, 104px) 24px clamp(72px, 9vw, 120px);
}

.mp-contacts-page-content {
  display: contents;
}

.mp-contacts-hero {
  margin-bottom: clamp(42px, 6vw, 68px) !important;
}

.mp-contacts-title {
  margin: 8px 0 18px !important;
  color: var(--mp-sand-dark) !important;
  font-family: var(--mp-font-script) !important;
  font-size: clamp(52px, 7vw, 84px) !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
}

.mp-contacts-lead {
  max-width: 620px;
  margin-inline: auto !important;
  color: #596775;
  font-size: 17px;
  line-height: 1.65;
}

.mp-contacts-grid {
  align-items: stretch !important;
  gap: 0 !important;
  border: 1px solid #e2e6e9;
  background: #fff;
}

.mp-contact-card {
  min-width: 0;
  padding: clamp(28px, 4vw, 44px) !important;
  border-right: 1px solid #e2e6e9;
}

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

.mp-contact-card__label {
  margin: 0 0 16px !important;
  color: #b79a84 !important;
  font-size: 11px !important;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}

.mp-contact-card__title {
  margin: 0 0 18px !important;
  font-size: clamp(20px, 2vw, 27px) !important;
  line-height: 1.2 !important;
  overflow-wrap: anywhere;
}

.mp-contact-card__title a {
  color: var(--mp-primary, #213b67) !important;
  text-decoration: none !important;
}

.mp-contact-card > p:last-child {
  margin-bottom: 0 !important;
  color: #66727c;
  line-height: 1.6;
}

.mp-contact-address {
  padding: 26px clamp(28px, 4vw, 44px) !important;
  border: solid #e2e6e9;
  border-width: 0 1px 1px;
  background: #f7fafc;
}

.mp-contact-address__text {
  margin: 0 !important;
  color: var(--mp-primary, #213b67) !important;
  font-size: clamp(16px, 1.6vw, 20px) !important;
  line-height: 1.5 !important;
}

@media (max-width: 781px) {
  .mp-contacts-page {
    width: calc(100vw - 32px) !important;
    padding-inline: 0;
  }

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

  .mp-contact-card {
    border-right: 0;
    border-bottom: 1px solid #e2e6e9;
  }

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

/* Return policy: a single expressive page title, while the legal hierarchy
   below it keeps the neutral document typography. */
.mp-return-policy-template .mp-return-page-title {
  margin: 0 0 clamp(30px, 4vw, 46px) !important;
  color: var(--mp-sand-dark) !important;
  font-family: var(--mp-font-script) !important;
  font-size: clamp(48px, 6vw, 76px) !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
}

.mp-return-policy-template .mp-return-page-title strong {
  font: inherit;
}

.mp-care-rules-template .mp-care-rules-page-title {
  color: var(--mp-sand-dark) !important;
  font-family: var(--mp-font-body) !important;
  font-size: clamp(38px, 5vw, 64px) !important;
  font-weight: 700 !important;
  line-height: 1.08 !important;
  letter-spacing: -.025em !important;
  letter-spacing: 0 !important;
}

.mp-legal-template .mp-legal-page-title {
  margin: 0 0 clamp(20px, 3vw, 32px) !important;
  color: var(--mp-sand-dark) !important;
  font-family: var(--mp-font-script) !important;
  font-size: clamp(48px, 6vw, 76px) !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
}

.mp-legal-template .mp-policy-page-title {
  max-width: 1000px !important;
  margin-inline: auto !important;
  font-size: clamp(40px, 5vw, 62px) !important;
  line-height: 1.08 !important;
  text-wrap: balance;
}

.mp-legal-template .mp-consent-page-title {
  max-width: 920px !important;
  margin-inline: auto !important;
  font-size: clamp(42px, 5.4vw, 66px) !important;
  line-height: 1.06 !important;
  text-wrap: balance;
}

.mp-legal-template .mp-marketing-consent-title {
  max-width: 920px !important;
  margin-inline: auto !important;
  font-size: clamp(42px, 5.4vw, 66px) !important;
  line-height: 1.06 !important;
  text-wrap: balance;
}

@media (max-width: 600px) {
  .mp-return-policy-template .mp-return-page-title {
    margin-bottom: 28px !important;
    font-size: clamp(42px, 14vw, 58px) !important;
  }

  .mp-care-rules-template .mp-care-rules-page-title {
    font-size: clamp(34px, 10vw, 48px) !important;
  }

  .mp-legal-template .mp-legal-page-title {
    font-size: clamp(42px, 14vw, 58px) !important;
  }

  .mp-legal-template .mp-policy-page-title {
    font-size: clamp(34px, 11vw, 48px) !important;
  }

  .mp-legal-template .mp-consent-page-title {
    font-size: clamp(36px, 12vw, 50px) !important;
  }

  .mp-legal-template .mp-marketing-consent-title {
    font-size: clamp(36px, 12vw, 50px) !important;
  }
}

/* Canopea-inspired account and document pages */
.mp-account-intro {
  max-width: 820px;
  margin: 0 auto clamp(30px, 5vw, 58px);
  text-align: center;
}
.mp-account-intro__title {
  margin-bottom: 12px;
  font-size: clamp(30px, 4vw, 50px);
  font-weight: 500;
  letter-spacing: -.035em;
}
.mp-account-intro__text { color: var(--mp-muted); }
.woocommerce-account .woocommerce {
  gap: clamp(22px, 4vw, 48px);
}
.woocommerce-MyAccount-navigation,
.woocommerce-MyAccount-content,
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register,
.woocommerce-EditAccountForm,
.woocommerce-address-fields {
  border: 1px solid rgba(28,28,28,.14);
  border-radius: 14px;
  background: #fff;
  box-shadow: none;
}
.woocommerce-MyAccount-navigation { padding: 10px; }
.woocommerce-MyAccount-navigation a {
  border-radius: 999px;
  font-size: 13px;
  letter-spacing: .04em;
}
.woocommerce-MyAccount-navigation .is-active a,
.woocommerce-MyAccount-navigation a:hover { background: #f2efe9; }
.woocommerce-MyAccount-content { padding: clamp(20px, 3vw, 36px); }
.woocommerce-account input,
.woocommerce-account select,
.woocommerce-account textarea {
  border: 0 !important;
  border-bottom: 1px solid rgba(28,28,28,.18) !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.woocommerce-account .button {
  border-radius: 999px !important;
  letter-spacing: .05em;
}

.mp-document-page {
  padding: clamp(62px, 8vw, 116px) 20px;
}
.mp-document-page .mp-page-title {
  margin: 8px auto 18px;
  max-width: 880px;
  font-size: clamp(32px, 5vw, 58px);
  font-weight: 500;
  line-height: 1.05;
  letter-spacing: -.04em;
}
.mp-document-page .mp-page-lead {
  max-width: 720px;
  margin: 0 auto clamp(30px, 5vw, 56px);
  color: var(--mp-muted);
  font-size: clamp(16px, 2vw, 20px);
  line-height: 1.6;
}
.mp-document-card {
  padding: clamp(24px, 5vw, 58px);
  border: 1px solid rgba(28,28,28,.14);
  border-radius: 16px;
  background: #fff;
}
.mp-document-card h2 {
  margin: 2.2em 0 .7em;
  font-size: clamp(21px, 2.5vw, 29px);
  font-weight: 500;
  letter-spacing: -.02em;
}
.mp-document-card h2:first-child { margin-top: 0; }
.mp-document-card p,
.mp-document-card li { line-height: 1.75; }
@media (max-width: 560px) {
  .mp-document-page { padding: 42px 16px 64px; }
  .mp-document-card { padding: 20px 18px; border-radius: 12px; }
}

/* Mini Problems 2.1.1 — account layout hardening and responsive polish. */
.woocommerce-account .mp-account-page,
.woocommerce-account .mp-account-shell,
.woocommerce-account .mp-account-shell > .wp-block-post-content,
.woocommerce-account .mp-account-shell .woocommerce {
  width: 100% !important;
  max-width: none !important;
}

.woocommerce-account .mp-account-shell {
  width: min(100%, 1180px) !important;
  margin-inline: auto !important;
  padding: clamp(18px, 3vw, 34px) !important;
}

.woocommerce-account .mp-account-shell .woocommerce {
  display: grid !important;
  grid-template-columns: minmax(230px, 270px) minmax(0, 1fr) !important;
  gap: clamp(24px, 4vw, 52px) !important;
  align-items: start !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
  padding: 8px !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation a {
  padding: 13px 15px !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.woocommerce-account .woocommerce-MyAccount-content {
  padding: clamp(24px, 4vw, 44px) !important;
  font-size: 16px !important;
  line-height: 1.7 !important;
}

.woocommerce-account .woocommerce-MyAccount-content p {
  max-width: 760px;
}

@media (max-width: 781px) {
  .woocommerce-account .mp-account-page {
    padding-inline: 14px !important;
    padding-block: 30px 84px !important;
  }

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

  .woocommerce-account .mp-account-intro__title {
    font-size: clamp(28px, 9vw, 38px) !important;
  }

  .woocommerce-account .mp-account-shell {
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
  }

  .woocommerce-account .mp-account-shell .woocommerce {
    display: block !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation {
    margin-bottom: 16px !important;
    overflow-x: auto !important;
    border-radius: 12px !important;
    scrollbar-width: none;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation::-webkit-scrollbar {
    display: none;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: flex !important;
    min-width: max-content !important;
    gap: 4px !important;
    border: 0 !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation li,
  .woocommerce-account .woocommerce-MyAccount-navigation li + li {
    margin: 0 !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation a {
    min-height: 42px !important;
    padding: 11px 14px !important;
    border: 0 !important;
    white-space: nowrap !important;
  }

  .woocommerce-account .woocommerce-MyAccount-content {
    padding: 20px 18px !important;
    border-radius: 12px !important;
  }

  .woocommerce-account table.shop_table {
    display: block !important;
    overflow-x: auto !important;
    white-space: nowrap !important;
  }

  .woocommerce-account .woocommerce-Address {
    float: none !important;
    width: 100% !important;
    margin-bottom: 14px !important;
  }
}

/* Mini Problems 2.1.3 — responsive hardening for service and document pages. */
.mp-account-page,
.mp-editable-page,
.mp-search-page,
.mp-404-page,
.mp-document-page,
.main-page,
.woocommerce-order-received .site-main,
.woocommerce-view-order .site-main {
  box-sizing: border-box;
  min-width: 0;
  overflow-wrap: anywhere;
}

.mp-editable-page__content,
.mp-document-card,
.main-page,
.woocommerce-MyAccount-content,
.woocommerce-order,
.woocommerce-order-details,
.woocommerce-customer-details {
  min-width: 0;
  max-width: 100%;
}

.mp-editable-page__content img,
.mp-document-card img,
.main-page img,
.woocommerce-account img,
.woocommerce-order img {
  max-width: 100%;
  height: auto;
}

.mp-editable-page__content iframe,
.mp-editable-page__content video,
.mp-editable-page__content embed,
.mp-document-card iframe,
.mp-document-card video,
.main-page iframe,
.main-page video {
  display: block;
  width: 100%;
  max-width: 100%;
}

.mp-editable-page__content pre,
.mp-document-card pre,
.main-page pre {
  max-width: 100%;
  overflow-x: auto;
  white-space: pre;
  -webkit-overflow-scrolling: touch;
}

.mp-editable-page__content table,
.mp-document-card table,
.main-page table,
.woocommerce-order-details table,
.woocommerce-customer-details table {
  display: block;
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: thin;
}

.mp-editable-page__content table::before,
.mp-document-card table::before,
.main-page table::before {
  content: "Листайте таблицу в сторону →";
  display: none;
  padding: 0 0 10px;
  color: var(--mp-muted, #6f6f6f);
  font-size: 12px;
  letter-spacing: .04em;
}

.woocommerce-account .woocommerce-MyAccount-content .button,
.woocommerce-account .woocommerce-MyAccount-content a.button,
.woocommerce-order .button,
.woocommerce-order a.button {
  max-width: 100%;
  white-space: normal;
  text-align: center;
}

.woocommerce-account .woocommerce-MyAccount-content address,
.woocommerce-order address {
  line-height: 1.65;
  overflow-wrap: anywhere;
}

.woocommerce-order-overview {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 28px !important;
  padding: 0 !important;
  list-style: none;
}

.woocommerce-order-overview li {
  min-width: 0;
  margin: 0 !important;
  padding: 16px !important;
  border: 1px solid var(--mp-line, rgba(28,28,28,.14));
  border-radius: 12px;
  overflow-wrap: anywhere;
}

.woocommerce-order-details,
.woocommerce-customer-details {
  margin-top: 24px;
  padding: clamp(18px, 3vw, 32px);
  border: 1px solid var(--mp-line, rgba(28,28,28,.14));
  border-radius: 14px;
  background: #fff;
}

@media (max-width: 980px) {
  .woocommerce-order-overview {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .mp-document-page,
  .mp-editable-page,
  .mp-search-page,
  .mp-404-page {
    padding-inline: clamp(16px, 4vw, 28px);
  }
}

@media (max-width: 680px) {
  .mp-document-page .mp-page-title,
  .mp-editable-page__content h1,
  .main-page h1 {
    font-size: clamp(28px, 9vw, 40px) !important;
    line-height: 1.08 !important;
    overflow-wrap: anywhere;
  }

  .mp-document-page .mp-page-lead {
    font-size: 16px;
    line-height: 1.55;
  }

  .mp-document-card h2,
  .mp-editable-page__content h2,
  .main-page h2 {
    font-size: clamp(21px, 6vw, 28px) !important;
  }

  .mp-editable-page__content table::before,
  .mp-document-card table::before,
  .main-page table::before {
    display: block;
  }

  .woocommerce-order-overview {
    grid-template-columns: 1fr;
  }

  .woocommerce-order-details,
  .woocommerce-customer-details {
    padding: 18px 16px;
    border-radius: 12px;
  }

  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions,
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions a {
    width: 100%;
  }

  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-actions a + a {
    margin-top: 8px;
  }

  .mp-search-page__form .wp-block-search__inside-wrapper,
  .mp-not-found__search .wp-block-search__inside-wrapper {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 6px;
    width: 100%;
  }

  .mp-search-page__form input,
  .mp-not-found__search input {
    min-width: 0;
    width: 100%;
  }
}

@media (max-width: 420px) {
  .mp-account-page,
  .mp-editable-page,
  .mp-search-page,
  .mp-404-page,
  .mp-document-page {
    padding-inline: 12px !important;
  }

  .mp-document-card,
  .woocommerce-MyAccount-content,
  .woocommerce-order-details,
  .woocommerce-customer-details {
    padding-inline: 14px !important;
  }

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

  .mp-search-page__form .wp-block-search__inside-wrapper,
  .mp-not-found__search .wp-block-search__inside-wrapper {
    grid-template-columns: 1fr;
    border-radius: 14px;
  }

  .mp-search-page__form button,
  .mp-not-found__search button {
    width: 100%;
    margin-left: 0;
  }

  .mp-not-found__code {
    font-size: clamp(72px, 26vw, 108px);
  }
}

@media (orientation: landscape) and (max-height: 520px) and (max-width: 950px) {
  .woocommerce-account .mp-account-shell .woocommerce {
    display: grid !important;
    grid-template-columns: minmax(180px, 220px) minmax(0, 1fr) !important;
    gap: 18px !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation {
    max-height: calc(100dvh - 100px);
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation ul {
    display: block !important;
    min-width: 0 !important;
  }

  .woocommerce-account .woocommerce-MyAccount-navigation a {
    white-space: normal !important;
  }

  .mp-document-page {
    padding-block: 26px 34px;
  }

  .mp-document-card {
    padding: 20px;
  }
}
.mp-contact-form,
.mp-thank-you-page {
  width: min(760px, calc(100% - 32px));
  margin: clamp(38px, 7vw, 88px) auto;
  padding: clamp(24px, 5vw, 54px);
  border: 1px solid rgba(28,28,28,.12);
  border-radius: 20px;
  background: #fff;
  text-align: center;
}
.mp-contact-form form { margin-top: 28px; text-align: left; }
.mp-contact-form__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.mp-contact-form label { display: block; margin-bottom: 18px; font-weight: 600; }
.mp-contact-form input:not([type="checkbox"]),
.mp-contact-form textarea {
  box-sizing: border-box;
  width: 100%;
  margin-top: 7px;
  padding: 13px 15px;
  border: 1px solid rgba(28,28,28,.24);
  border-radius: 10px;
  background: #fff;
  font: inherit;
}
.mp-contact-form__consent { display: flex !important; gap: 10px; align-items: flex-start; font-size: 13px; font-weight: 400 !important; }
.mp-contact-form__consent input { margin-top: 3px; }
.mp-contact-form button,
.mp-thank-you-page .wp-element-button,
.mp-thank-you-actions .button { border-radius: 999px !important; }
.mp-contact-form button { min-height: 50px; padding: 0 28px; border: 0; background: #223e6d; color: #fff; font-weight: 700; cursor: pointer; }
.mp-contact-form__notice { padding: 12px 15px; border-radius: 8px; background: #fff0ed; color: #8b2418; }
.mp-contact-form__trap { position: absolute; left: -9999px; }
.mp-thank-you-page .wp-block-buttons { justify-content: center; margin-top: 28px; }
.mp-thank-you-actions { margin: 28px 0; text-align: center; }
.mp-thank-you-actions__buttons { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; margin-top: 18px; }
.mp-thank-you-related { margin-top: clamp(36px, 6vw, 72px); }
.mp-thank-you-related > h2 { text-align: center; }
@media (max-width: 640px) {
  .mp-contact-form__grid { grid-template-columns: 1fr; gap: 0; }
  .mp-contact-form button { width: 100%; }
}

.mp-collections-page,
.mp-collection-single { padding: clamp(44px, 7vw, 96px) 20px; }
.mp-collections-page > h1,
.mp-collection-single > h1 { margin-top: 8px; text-align: center; }
.mp-collections-page__lead { max-width: 650px; margin: 0 auto clamp(30px, 5vw, 58px); }
.mp-collections-grid { gap: clamp(20px, 3vw, 38px); }
.mp-collection-card { height: 100%; }
.mp-collection-card .wp-block-post-featured-image { margin: 0 0 18px; overflow: hidden; border-radius: 16px; }
.mp-collection-card .wp-block-post-title { margin: 0 0 8px; }
.mp-collection-card .wp-block-post-title a { color: inherit; text-decoration: none; }
.mp-collection-card .wp-block-post-excerpt__more-link { font-weight: 700; }
.mp-collection-single .wp-block-post-featured-image { margin: clamp(24px, 4vw, 48px) auto; overflow: hidden; border-radius: 20px; }
.mp-collection-single > .wp-block-buttons { margin-top: 40px; }

/* ===== Consolidated from iteration-1.css (2026-09-23): UPF/Care/Brand editorial pages ===== */
/* Reference-page restoration: editorial image-led layouts for UPF, Care and Brand. */
body.page-template-page-upf-50 .mp-upf-feature,
.mp-upf-page .mp-upf-feature { display: grid !important; grid-template-columns: minmax(320px, .82fr) minmax(0, 1.18fr) !important; min-height: 520px !important; max-width: 1440px !important; margin: 0 auto !important; background: #f4f9fc !important; }
.mp-upf-page .mp-upf-feature__card { order: 1 !important; align-self: center !important; width: auto !important; max-width: 470px !important; margin: 0 auto !important; padding: 56px !important; background: transparent !important; box-shadow: none !important; }
.mp-upf-page .mp-upf-feature__card,
.mp-upf-page .mp-upf-feature__media { position:static !important; inset:auto !important; transform:none !important; box-sizing:border-box !important; }
.mp-upf-page .mp-upf-feature__media { order: 2 !important; width:100% !important; min-height:520px !important; }
.mp-upf-page .mp-upf-feature__media img { width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: center !important; }
.mp-upf-page .mp-upf-feature__card h2 { margin: 0 0 16px !important; font-size: clamp(38px, 4.2vw, 62px) !important; line-height: 1 !important; color: var(--mp-primary) !important; }
.mp-upf-page .mp-upf-feature__lead { max-width: 13ch; font-size: clamp(22px, 2vw, 30px) !important; line-height: 1.25 !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 { width: min(100% - 40px, 1180px) !important; margin-inline: auto !important; }
.mp-upf-page .mp-upf-product-cta { border: 0 !important; }

.mp-editable-page .mp-care-page__hero { position: relative !important; display: flex !important; align-items: center !important; justify-content: center !important; min-height: 500px !important; padding: 64px 55% 64px 7% !important; background-color: #f4f9fc !important; background-image: linear-gradient(90deg,#f4f9fc 0%,rgba(244,249,252,.96) 38%,rgba(244,249,252,.12) 64%),image-set(url('../images/upf-flatlay.webp') type('image/webp'), url('../images/upf-flatlay.png') type('image/png')) !important; background-repeat: no-repeat !important; background-position: center, right center !important; background-size: cover, 62% 100% !important; text-align: left !important; }
.mp-editable-page .mp-care-page__hero > * { width: 100% !important; max-width: 500px !important; margin-left: 0 !important; margin-right: auto !important; text-align: left !important; }
.mp-editable-page .mp-care-page__hero .mp-page-title { margin: 8px 0 16px !important; font-size: clamp(42px, 5vw, 68px) !important; line-height: 1 !important; }
.mp-editable-page .mp-care-page__hero .mp-page-script { margin: 0 0 18px !important; font-size: clamp(25px, 2.4vw, 38px) !important; }
.mp-editable-page .mp-care-page__hero .mp-page-lead { max-width: 30ch !important; margin: 0 !important; font-size: 18px !important; line-height: 1.55 !important; }
.mp-care-page .mp-care { width: min(100% - 40px, 1180px) !important; margin-inline: auto !important; }
.mp-care-page__details { padding-top: 58px !important; }
.mp-care-page__details > .wp-block-columns { gap: 0 !important; }
.mp-care-page__details .mp-care-info-card { border-width: 1px 1px 1px 0 !important; text-align: center !important; }
.mp-care-page__details .mp-care-info-card:first-child { border-left-width: 1px !important; }

.mp-editable-page .mp-brand-hero { position: relative !important; display: flex !important; align-items: center !important; justify-content: flex-start !important; min-height: 520px !important; padding: 42px 7% 350px !important; background-color: #eef7fb !important; background-image: linear-gradient(180deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.55) 25%,rgba(255,255,255,0) 52%),url('../images/about-family-temp.jpg') !important; background-position: center, center 66% !important; background-repeat: no-repeat !important; background-size: cover !important; }
.mp-editable-page .mp-brand-hero > * { max-width: 760px !important; }
.mp-editable-page .mp-brand-hero .mp-page-title { margin: 0 0 4px !important; font-size: clamp(36px, 4vw, 58px) !important; }
.mp-editable-page .mp-brand-hero .mp-page-script { order: 2; margin: 0 !important; font-size: clamp(22px, 2.2vw, 34px) !important; }
.mp-editable-page .mp-brand-hero .mp-page-lead { display: none !important; }
.mp-brand-origin__grid { display: grid !important; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr) !important; align-items: center !important; }
.mp-brand-photo__image img { width: 100% !important; aspect-ratio: 4 / 5 !important; object-fit: cover !important; }
.mp-brand-philosophy { background: #eef7fb !important; }
.mp-brand-values__grid { display: grid !important; grid-template-columns: repeat(3,minmax(0,1fr)) !important; gap: 0 !important; }
.mp-brand-value { padding: 30px !important; border-right: 1px solid #dfe5e8 !important; text-align: center !important; }
.mp-brand-value:last-child { border-right: 0 !important; }

@media (max-width: 781px) {
  .mp-upf-page .mp-upf-feature { grid-template-columns: 1fr !important; }
  .mp-upf-page .mp-upf-feature__media { order: 1 !important; min-height: 330px !important; }
  .mp-upf-page .mp-upf-feature__card { order: 2 !important; padding: 36px 24px !important; }
  .mp-editable-page .mp-care-page__hero { min-height: 620px !important; padding: 350px 24px 42px !important; background-image: linear-gradient(180deg,rgba(244,249,252,0) 30%,#f4f9fc 60%),image-set(url('../images/upf-flatlay.webp') type('image/webp'), url('../images/upf-flatlay.png') type('image/png')) !important; background-position: center, center top !important; background-size: cover, 100% 390px !important; text-align: center !important; }
  .mp-editable-page .mp-care-page__hero > * { margin-inline: auto !important; text-align: center !important; }
  .mp-editable-page .mp-brand-hero { min-height: 500px !important; padding: 34px 20px 330px !important; background-position: center, center bottom !important; }
  .mp-brand-origin__grid,
  .mp-brand-values__grid { grid-template-columns: 1fr !important; }
  .mp-brand-value { border-right: 0 !important; border-bottom: 1px solid #dfe5e8 !important; }
}
/* 3.0 — clean page rebuilds based on the supplied reference compositions. */
.mp-reference-page { padding:0 !important; }
.mp-ref { color:#173766; background:#fff; }
.mp-ref * { box-sizing:border-box; }
.mp-ref img { display:block; max-width:100%; }
.mp-ref-section { width:min(100% - 40px,1080px); margin:auto; padding:46px 0; text-align:center; }
.mp-ref-section > h2,.mp-ref-final h2 { margin:0 0 28px; font-size:clamp(23px,2.2vw,34px); line-height:1.25; }
.mp-ref-actions { display:flex; justify-content:center; gap:18px; }
.mp-ref-actions a { width:230px; padding:14px 20px; border:1px solid #173766; color:#173766; font-size:12px; font-weight:700; text-align:center; text-decoration:none; }
.mp-ref-actions a.primary { color:#fff; background:#173766; }
.mp-ref-final { padding:38px 20px 60px; text-align:center; }

.mp-ref-care__hero { position:relative; width:100%; min-height:500px; aspect-ratio:1896/829; overflow:hidden; background:#eef6fa; }
.mp-ref-care__hero > picture,
.mp-ref-care__hero > picture > img { position:absolute; inset:0; width:100%; height:100%; }
.mp-ref-care__hero > picture > img { object-fit:cover; object-position:center center; }
.mp-ref-care__hero::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(244,249,252,.97),rgba(244,249,252,.78) 34%,transparent 62%); }
.mp-ref-care__copy { position:relative; z-index:1; display:flex; min-height:100%; flex-direction:column; justify-content:center; width:min(100% - 40px,1120px); margin:auto; padding:58px 0; }
.mp-ref-care__copy h1 { margin:0 0 16px; font-size:clamp(48px,5vw,72px); line-height:1; }
.mp-ref-care__copy p { margin:0 0 30px; color:#273b55; font-size:clamp(21px,2vw,30px); line-height:1.35; }
.mp-ref-care__copy em { font-family:var(--mp-font-script,serif); font-size:clamp(25px,2.7vw,40px); font-weight:400; }
.mp-ref-tiers { display:grid; grid-template-columns:repeat(3,1fr); margin-bottom:clamp(52px,6vw,76px); border:1px solid #e6dfd7; }
.mp-ref-tiers article { min-height:330px; padding:38px 24px; border-right:1px solid #e6dfd7; }
.mp-ref-tiers article:last-child { border-right:0; }
.mp-ref-tiers article.is-active { background:#eaf3f8; }
.mp-ref-tiers b { display:block; margin-bottom:20px; color:#c3a06a; font-size:42px; font-weight:400; }
.mp-ref-tiers h3 { margin:0 0 4px; font-size:22px; }
.mp-ref-tiers strong { display:block; font-size:42px; line-height:1.1; }
.mp-ref-tiers p { margin:8px 0 24px; font-size:13px; }
.mp-ref-tiers small { display:block; padding-top:18px; border-top:1px solid #ddd6ce; line-height:1.5; }
.mp-ref-progress { display:grid; grid-template-columns:1fr 2fr 90px; gap:32px; align-items:center; margin:34px 0 52px; padding:28px 42px; border:1px solid #ddd6ce; text-align:left; }
.mp-ref-progress span,.mp-ref-progress small { display:block; }
.mp-ref-progress > div > strong { display:block; margin:5px 0; font-size:36px; }
.mp-ref-progress i { display:block; height:16px; margin:10px 0; overflow:hidden; background:#eee; border-radius:20px; }
.mp-ref-progress i b { display:block; height:100%; background:#173766; border-radius:20px; }
.mp-ref-progress__star { color:#c3a06a; font-size:62px; text-align:center; }
.mp-ref-tiers + h2 { margin:0 0 28px; }
.mp-ref-steps { display:grid; grid-template-columns:1fr 36px 1fr 36px 1fr; align-items:center; margin:12px 0 50px; }
.mp-ref-steps article { position:relative; padding:20px; }
.mp-ref-steps article > span { position:absolute; left:28px; top:36px; display:grid; place-items:center; width:26px; height:26px; border-radius:50%; background:#e7d5c4; }
.mp-ref-steps article > b { display:block; font-size:58px; font-weight:400; }
.mp-ref-steps article > b { display:grid; place-items:center; width:58px; height:58px; margin-inline:auto; color:transparent; font-size:0; }
.mp-ref-steps article > b::before { content:''; display:block; width:52px; height:52px; background:#173766; -webkit-mask-repeat:no-repeat; mask-repeat:no-repeat; -webkit-mask-position:center; mask-position:center; -webkit-mask-size:contain; mask-size:contain; }
.mp-ref-steps article:nth-of-type(1) > b::before { -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Ccircle cx='32' cy='20' r='10' fill='none' stroke='black' stroke-width='3'/%3E%3Cpath d='M13 55c2-14 9-21 19-21s17 7 19 21' fill='none' stroke='black' stroke-width='3' stroke-linecap='round'/%3E%3Ccircle cx='48' cy='45' r='9' fill='none' stroke='black' stroke-width='3'/%3E%3Cpath d='m44 45 3 3 6-7' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Ccircle cx='32' cy='20' r='10' fill='none' stroke='black' stroke-width='3'/%3E%3Cpath d='M13 55c2-14 9-21 19-21s17 7 19 21' fill='none' stroke='black' stroke-width='3' stroke-linecap='round'/%3E%3Ccircle cx='48' cy='45' r='9' fill='none' stroke='black' stroke-width='3'/%3E%3Cpath d='m44 45 3 3 6-7' fill='none' stroke='black' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); }
.mp-ref-steps article:nth-of-type(2) > b::before { -webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M15 22h34l-3 32H18z' fill='none' stroke='black' stroke-width='3' stroke-linejoin='round'/%3E%3Cpath d='M23 24v-5c0-7 4-11 9-11s9 4 9 11v5' fill='none' stroke='black' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E"); mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M15 22h34l-3 32H18z' fill='none' stroke='black' stroke-width='3' stroke-linejoin='round'/%3E%3Cpath d='M23 24v-5c0-7 4-11 9-11s9 4 9 11v5' fill='none' stroke='black' stroke-width='3' stroke-linecap='round'/%3E%3C/svg%3E"); }
.mp-ref-steps article:nth-of-type(3) > b::before { content:'%'; display:grid; place-items:center; box-sizing:border-box; width:52px; height:52px; border:2px solid #173766; border-radius:50%; background:none; color:#173766; font-size:31px; line-height:1; -webkit-mask-image:none; mask-image:none; }
.mp-ref-steps article h3 { margin:10px 0 6px; font-size:15px; }
.mp-ref-steps article p { margin:0; font-size:12px; line-height:1.55; }
.mp-ref-steps > i { color:#d8d2ca; font-size:48px; font-style:normal; }
.mp-ref-faq { width:min(100%,880px); margin:0 auto 34px; }
.mp-ref-faq > small { display:block; text-align:center; }
.mp-ref-faq details { border-bottom:1px solid #ddd6ce; text-align:left; }
.mp-ref-faq summary { padding:15px 4px; cursor:pointer; }
.mp-ref-faq details p { margin:0 4px 16px; color:#66717a; }

.mp-ref-upf__hero { position:relative; min-height:500px; aspect-ratio:1896 / 829; overflow:hidden; }
.mp-ref-upf__hero > picture,
.mp-ref-upf__hero > picture > img { position:absolute; inset:0; width:100%; height:100%; }
.mp-ref-upf__hero > picture > img { object-fit:cover; object-position:center center; }
.mp-ref-upf__hero::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(244,249,252,.98),rgba(244,249,252,.86) 34%,transparent 65%); }
.mp-ref-upf__hero > div { position:relative; z-index:1; width:min(100% - 40px,1120px); margin:auto; padding-top:105px; }
.mp-ref-upf__hero h1 { margin:0 0 14px; font-size:clamp(52px,6vw,82px); }
.mp-ref-upf__hero p { margin:0 0 20px; font-size:clamp(25px,2.4vw,36px); line-height:1.35; }
.mp-ref-upf__hero em { font-family:var(--mp-font-script,serif); font-size:clamp(24px,2.4vw,36px); }
.mp-ref-upf__intro p { color:#65717b; line-height:1.7; }
.mp-ref-compare { display:grid; grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr); gap:18px; align-items:stretch; width:min(100% - 40px,940px); margin:0 auto 42px; }
.mp-ref-compare__card { display:grid; grid-template-columns:58px minmax(0,1fr); grid-template-rows:auto 1fr; column-gap:20px; padding:28px 30px; border:1px solid #d9e0e7; border-radius:18px; background:#fff; text-align:left; }
.mp-ref-compare__card.is-upf { border-color:#9fbed7; background:#f3f8fc; box-shadow:0 10px 30px rgba(24,58,100,.08); }
.mp-ref-compare__card > img { grid-row:1/3; width:54px; height:54px; padding:12px; border-radius:50%; background:#f3f5f7; color:#183a64; box-sizing:border-box; }
.mp-ref-compare__card.is-upf > img { background:#e7f0f7; color:#183a64; }
.mp-ref-compare__card h3 { margin:1px 0 12px; font-size:20px; text-align:left; }
.mp-ref-compare ul { margin:0; padding:0; list-style:none; }
.mp-ref-compare li { position:relative; margin:8px 0; padding-left:18px; color:#5f6f7f; font-size:13px; line-height:1.45; }
.mp-ref-compare li::before { position:absolute; left:0; content:'—'; color:#9aa6b0; }
.mp-ref-compare__card.is-upf li::before { content:'✓'; color:#183a64; font-weight:700; }
.mp-ref-compare__vs { align-self:center; display:grid; place-items:center; width:44px; height:44px; border-radius:50%; background:#183a64; color:#fff; font-size:12px; font-weight:700; letter-spacing:.08em; }
.mp-ref-upf__benefits { display:grid; grid-template-columns:repeat(3,1fr); width:min(100% - 40px,980px); margin:0 auto 50px; border-top:1px solid #ddd6ce; }
.mp-ref-upf__benefits article { padding:34px 28px; border-right:1px solid #ddd6ce; text-align:center; }
.mp-ref-upf__benefits article:last-child { border-right:0; }
.mp-ref-upf__benefits img { width:48px; height:48px; padding:10px; color:#183a64; box-sizing:border-box; }
.mp-ref-upf__benefits h3 { margin:12px 0; font-size:17px; }
.mp-ref-upf__benefits p { margin:0; color:#66717a; font-size:12px; line-height:1.55; }
.mp-ref-upf__flatlay { position:relative; width:min(100% - 40px,1120px); margin:0 auto 48px; }
.mp-ref-upf__flatlay > picture { display:block; width:100%; aspect-ratio:1896/829; }
.mp-ref-upf__flatlay > picture > img { width:100%; height:100%; object-fit:cover; object-position:center center; }
.mp-ref-upf__flatlay > div { position:absolute; right:48px; left:auto; top:50%; width:320px; padding:34px; background:#fff; transform:translateY(-50%); }
.mp-ref-upf__flatlay h2 { margin:0 0 18px; font-size:23px; line-height:1.22; text-wrap:balance; }
.mp-ref-upf__flatlay p { color:#66717a; font-size:13px; line-height:1.6; }
.mp-ref-upf__flatlay a { color:#173766; font-size:12px; text-decoration:none; }

.mp-ref-brand__hero { text-align:center; }
.mp-ref-brand__hero > div { padding:42px 20px 24px; }
.mp-ref-brand__hero h1 { margin:0; font-size:clamp(38px,4vw,58px); }
.mp-ref-brand__hero em { display:block; margin-top:4px; font-family:var(--mp-font-script,serif); font-size:clamp(24px,2.4vw,36px); }
.mp-ref-brand__hero > img { width:100%; height:430px; object-fit:cover; object-position:center 58%; }
.mp-ref-brand__story,.mp-ref-brand__safety { display:grid; grid-template-columns:1fr 1fr; width:min(100% - 40px,1040px); margin:42px auto 0; }
.mp-ref-brand__story img,.mp-ref-brand__safety img { width:100%; height:100%; min-height:430px; object-fit:cover; }
.mp-ref-brand__story > div,.mp-ref-brand__safety > div { display:flex; flex-direction:column; justify-content:center; padding:48px 54px; }
.mp-ref-brand__story h2,.mp-ref-brand__safety h2 { margin:0; font-size:clamp(25px,2.6vw,38px); line-height:1.25; }
.mp-ref-brand__story i,.mp-ref-brand__safety i { width:48px; margin:18px 0; border-top:2px solid #c6a36a; }
.mp-ref-brand__story p,.mp-ref-brand__safety p { margin:0 0 12px; color:#5f6a74; font-size:13px; line-height:1.65; }
.mp-ref-brand__quote { position:relative; margin-top:42px; padding:48px 90px; overflow:hidden; background:#eaf4fa; text-align:center; }
.mp-ref-brand__quote h2 { margin:0 0 16px; font-size:clamp(24px,2.5vw,36px); }
.mp-ref-brand__quote > b { position:absolute; top:0; color:#d6e8f3; font-size:150px; line-height:1; }
.mp-ref-brand__quote > b:first-child { left:6%; }.mp-ref-brand__quote > b:last-child { right:6%; }
.mp-ref-brand__safety { width:100%; margin:0; }
.mp-ref-brand__values { display:grid; grid-template-columns:repeat(4,1fr); width:min(100% - 40px,1120px); margin:auto; }
.mp-ref-brand__values article { padding:40px 25px; border-right:1px solid #ddd6ce; text-align:center; }
.mp-ref-brand__values article:last-child { border-right:0; }
.mp-ref-brand__values b { font-size:44px; font-weight:400; }.mp-ref-brand__values h3 { margin:12px 0 6px; }.mp-ref-brand__values p { margin:0; font-size:12px; line-height:1.55; }

@media(max-width:781px){
  .mp-ref-care__hero { display:flex; min-height:850px; aspect-ratio:auto; flex-direction:column; background:#eef6fa; }.mp-ref-care__hero > picture { position:absolute; height:560px; }.mp-ref-care__hero > picture > img { object-fit:cover; object-position:center center; }.mp-ref-care__hero::after { background:linear-gradient(180deg,transparent 34%,#eef6fa 66%); }.mp-ref-care__copy { justify-content:flex-end; min-height:850px; padding:590px 22px 38px; text-align:center; }
  .mp-ref-tiers,.mp-ref-upf__benefits,.mp-ref-brand__values { grid-template-columns:1fr; }.mp-ref-tiers article,.mp-ref-upf__benefits article,.mp-ref-brand__values article { border-right:0; border-bottom:1px solid #ddd6ce; }
  .mp-ref-progress { grid-template-columns:1fr; padding:24px; text-align:center; }.mp-ref-steps { grid-template-columns:1fr; }.mp-ref-steps > i { transform:rotate(90deg); }
  .mp-ref-upf__hero { min-height:850px; aspect-ratio:auto; }.mp-ref-upf__hero > picture { height:560px; }.mp-ref-upf__hero > picture > img { object-fit:cover; object-position:center center; }.mp-ref-upf__hero::after { background:linear-gradient(180deg,transparent 35%,#f4f9fc 66%); }.mp-ref-upf__hero > div { padding-top:590px; text-align:center; }
  .mp-ref-compare { grid-template-columns:1fr; gap:12px; width:min(100% - 32px,540px); }
  .mp-ref-compare__vs { position:relative; z-index:1; margin:-3px auto; }
  .mp-ref-compare__card { grid-template-columns:50px minmax(0,1fr); padding:24px 20px; column-gap:16px; }
  .mp-ref-compare__card > img { width:48px; height:48px; }
  .mp-ref-upf__flatlay > picture { aspect-ratio:1/1.33; }.mp-ref-upf__flatlay > picture > img { object-position:center center; }.mp-ref-upf__flatlay > div { position:relative; right:auto; left:auto; top:auto; width:auto; margin:-30px 18px 0; transform:none; }
  .mp-ref-brand__hero > img { height:330px; }.mp-ref-brand__story,.mp-ref-brand__safety { grid-template-columns:1fr; }.mp-ref-brand__story > div,.mp-ref-brand__safety > div { padding:34px 22px; }.mp-ref-brand__quote { padding:42px 24px; }
  .mp-ref-actions { flex-direction:column; align-items:center; }
}
/* ===== Consolidated from iteration-1.css: editable-page / delivery-page ===== */
/* Internal page titles start close to the breadcrumbs instead of low in the viewport. */
main.mp-editable-page { padding-top: 28px !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 { padding-top: 52px !important; padding-bottom: 48px !important; min-height: 0 !important; }
@media (max-width: 781px) {
  main.mp-editable-page { padding-top: 18px !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 { padding-top: 36px !important; padding-bottom: 36px !important; }
}

/* Delivery page uses real grids; legacy flex rules made its columns drift. */
.mp-editable-page .mp-delivery-page .mp-info-split { display: grid !important; grid-template-columns: minmax(0, 2fr) minmax(0, 3fr) !important; align-items: center !important; gap: 32px !important; }
.mp-editable-page .mp-delivery-page .mp-info-split > * { width: 100% !important; min-width: 0 !important; margin: 0 !important; }
.mp-editable-page .mp-delivery-page .mp-delivery-cards { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; align-items: stretch !important; gap: 16px !important; }
.mp-editable-page .mp-delivery-page .mp-delivery-card { width: 100% !important; min-width: 0 !important; height: 100% !important; box-sizing: border-box !important; }
.mp-editable-page .mp-delivery-page .mp-process { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)) !important; align-items: stretch !important; gap: 18px !important; }
.mp-editable-page .mp-delivery-page .mp-payment-return__grid { display: grid !important; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; align-items: stretch !important; gap: 32px !important; }
.mp-editable-page .mp-delivery-page .mp-payment-return__grid > * { width: 100% !important; min-width: 0 !important; box-sizing: border-box !important; }
@media (max-width: 781px) {
  .mp-editable-page .mp-delivery-page .mp-info-split,
  .mp-editable-page .mp-delivery-page .mp-delivery-cards,
  .mp-editable-page .mp-delivery-page .mp-process,
  .mp-editable-page .mp-delivery-page .mp-payment-return__grid { grid-template-columns: 1fr !important; }
}
/* ===== Consolidated from iteration-1.css: my-account page ===== */
/* Account page: neutralize legacy WooCommerce floats and oversized form rules. */
body.woocommerce-account .wp-block-breadcrumbs.mp-inner-title__breadcrumbs {
  display: none !important;
}

body.woocommerce-account .wp-block-post-title {
  margin: 0 !important;
  font-size: clamp(30px, 3.2vw, 44px) !important;
}

body.woocommerce-account main.main-page {
  width: min(100% - 40px, 1180px) !important;
  max-width: 1180px !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 auto !important;
  padding: 42px 0 80px !important;
}

body.woocommerce-account main.main-page > .woocommerce {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
}

body.woocommerce-account .u-columns.col2-set {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: clamp(24px, 4vw, 54px) !important;
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
}

body.woocommerce-account .u-column1,
body.woocommerce-account .u-column2 {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}

body.woocommerce-account .u-column1 > h2,
body.woocommerce-account .u-column2 > h2 {
  margin: 0 0 18px !important;
  color: #173766 !important;
  font-size: clamp(24px, 2.4vw, 34px) !important;
  text-align: left !important;
}

body.woocommerce-account form.woocommerce-form-login,
body.woocommerce-account form.woocommerce-form-register {
  box-sizing: border-box !important;
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: clamp(24px, 3vw, 38px) !important;
  border: 1px solid #ded7cf !important;
  border-radius: 0 !important;
  background: #fff !important;
}

body.woocommerce-account form .form-row {
  float: none !important;
  width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
}

body.woocommerce-account form label {
  display: block !important;
  margin: 0 0 8px !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
}

body.woocommerce-account form input.input-text {
  box-sizing: border-box !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 48px !important;
  padding: 10px 13px !important;
  border: 1px solid #cfc8c0 !important;
  border-radius: 0 !important;
  background: #fff !important;
  font-size: 16px !important;
}

body.woocommerce-account form .password-input {
  display: block !important;
  width: 100% !important;
}

body.woocommerce-account form .woocommerce-button,
body.woocommerce-account form button.button {
  min-width: 150px !important;
  min-height: 46px !important;
  padding: 12px 24px !important;
  border-radius: 0 !important;
}

body.woocommerce-account .woocommerce-privacy-policy-text,
body.woocommerce-account form p {
  max-width: none !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
  overflow-wrap: anywhere !important;
}

@media (max-width: 700px) {
  body.woocommerce-account main.main-page {
    width: min(100% - 28px, 1180px) !important;
    padding: 28px 0 72px !important;
  }
  body.woocommerce-account .u-columns.col2-set {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }
  body.woocommerce-account form.woocommerce-form-login,
  body.woocommerce-account form.woocommerce-form-register {
    padding: 22px 18px !important;
  }
}
/* 2.4 — full reference compositions for Mini Care and Brand. */
.mp-reference-page { padding: 0 !important; }
.mp-reference-page > .mp-care-page,
.mp-reference-page > .mp-brand-page { width: 100% !important; max-width: none !important; }

.mp-reference-page .mp-care-page__hero {
  box-sizing: border-box !important;
  width: min(100% - 40px, 1180px) !important;
  min-height: 520px !important;
  margin: 28px auto 48px !important;
  padding: 105px 58% 70px 70px !important;
  background: #f3f8fb image-set(url('../images/upf-flatlay.webp') type('image/webp'), url('../images/upf-flatlay.png') type('image/png')) center right/58% 100% no-repeat !important;
  text-align: left !important;
}
.mp-reference-page .mp-care-page__hero p,
.mp-reference-page .mp-care-page__hero h1 { text-align: left !important; }
.mp-reference-page .mp-care-page__hero .mp-page-title { margin: 20px 0 16px !important; font-size: clamp(48px,6vw,76px) !important; }
.mp-reference-page .mp-care-page__hero .mp-page-script { margin: 0 0 28px !important; font-size: clamp(25px,2.5vw,38px) !important; }
.mp-reference-page .mp-care-page__hero .mp-page-lead { max-width: 460px !important; margin: 0 !important; font-size: 17px !important; line-height: 1.65 !important; }
.mp-reference-page .mp-care { width: min(100% - 40px, 1080px) !important; margin: 0 auto !important; padding: 0 0 48px !important; }
.mp-reference-page .mp-care::before { content:'3 уровня заботы и преимуществ'; display:block; margin:0 0 28px; color:#173766; font-size:clamp(24px,2.6vw,36px); font-weight:700; text-align:center; }
.mp-reference-page .mp-care__inner { display:block !important; }
.mp-reference-page .mp-care__intro { display:none !important; }
.mp-reference-page .mp-care__levels { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; border:1px solid #e3dcd4 !important; }
.mp-reference-page .mp-care__level { display:flex !important; flex-direction:column !important; align-items:center !important; justify-content:center !important; min-height:270px !important; padding:36px 28px !important; border:0 !important; border-right:1px solid #e3dcd4 !important; text-align:center !important; }
.mp-reference-page .mp-care__level:nth-child(2) { background:#edf4f8 !important; }
.mp-reference-page .mp-care__level:last-child { border-right:0 !important; }
.mp-reference-page .mp-care__level strong { order:3; margin:6px 0 !important; font-size:44px !important; line-height:1 !important; }
.mp-reference-page .mp-care__level span { order:1; margin-bottom:16px; color:#c6a36a; font-size:34px !important; }
.mp-reference-page .mp-care__level em { order:2; font-size:21px !important; font-style:normal !important; }
.mp-reference-page .mp-care__level p { order:4; max-width:230px !important; margin:16px auto 0 !important; font-size:13px !important; line-height:1.55 !important; }
.mp-reference-page .mp-care-page__details { width: min(100% - 40px, 1080px) !important; margin: 0 auto !important; padding: 46px 0 38px !important; }
.mp-reference-page .mp-care-page__details .wp-block-columns { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:0 !important; }
.mp-reference-page .mp-care-info-card { min-height:220px; padding:42px 34px !important; border:1px solid #e5ded6 !important; border-radius:0 !important; text-align:center !important; }
.mp-reference-page .mp-care-info-card:nth-child(2) { background:#edf4f8 !important; }
.mp-reference-page .mp-care-progress { box-sizing:border-box; display:grid; grid-template-columns:1fr 2fr 100px; gap:32px; align-items:center; width:min(100% - 40px,1080px); margin:0 auto 56px; padding:30px 42px; border:1px solid #ddd6ce; }
.mp-care-progress__level span,.mp-care-progress__level small,.mp-care-progress__bar span,.mp-care-progress__bar small { display:block; }
.mp-care-progress__level strong { display:block; margin:7px 0; color:#173766; font-size:34px; }
.mp-care-progress__bar div { height:16px; margin:10px 0; overflow:hidden; background:#eee; border-radius:20px; }
.mp-care-progress__bar i { display:block; height:100%; background:#203e70; border-radius:20px; }
.mp-care-progress__icon { color:#c6a36a; font-size:62px; text-align:center; }
.mp-reference-page .mp-care-faq { width:min(100% - 40px,900px); margin:0 auto; padding:22px 0 80px; }
.mp-care-faq h2 { margin-bottom:24px; text-align:center; }
.mp-care-faq details { border-bottom:1px solid #ded7cf; }
.mp-care-faq summary { padding:17px 4px; cursor:pointer; }
.mp-care-faq details p { margin:0 4px 18px; color:#66717a; }
.mp-care-final { display:flex; justify-content:center; gap:18px; margin-top:38px; }
.mp-care-final a { box-sizing:border-box; width:250px; padding:15px 20px; border:1px solid #173766; color:#173766; text-align:center; text-decoration:none; }
.mp-care-final a.is-primary { color:#fff; background:#173766; }

.mp-reference-page .mp-brand-hero { width:100% !important; min-height:580px !important; margin:0 !important; padding:48px 24px 390px !important; background-image:linear-gradient(180deg,rgba(255,255,255,.94),rgba(255,255,255,.15) 40%,rgba(255,255,255,0)),url('../images/about-family-temp.jpg') !important; background-position:center,center 58% !important; background-size:cover !important; text-align:center !important; }
.mp-reference-page .mp-brand-hero h1 { font-size:clamp(42px,5vw,68px) !important; text-align:center !important; }
.mp-reference-page .mp-brand-hero .mp-page-script { text-align:center !important; }
.mp-reference-page .mp-brand-origin { width:min(100% - 40px,1120px) !important; padding:70px 0 !important; }
.mp-reference-page .mp-brand-origin__grid { align-items:center !important; }
.mp-reference-page .mp-brand-photo__image img { width:100%; aspect-ratio:4/5; object-fit:cover; object-position:center; }
.mp-reference-page .mp-brand-photo__caption { display:none !important; }
.mp-reference-page .mp-brand-story .mp-section-title { font-size:clamp(28px,3.2vw,44px) !important; }
.mp-reference-page .mp-brand-quote { margin:32px 0 !important; padding:28px 36px !important; border:0 !important; background:#edf5fa !important; text-align:center; }
.mp-reference-page .mp-brand-philosophy { width:100% !important; max-width:none !important; padding:62px max(24px,calc((100% - 940px)/2)) !important; background:#edf5fa !important; }
.mp-reference-page .mp-brand-values { width:100% !important; max-width:none !important; padding:64px max(24px,calc((100% - 1120px)/2)) 80px !important; background:#fff !important; }
.mp-reference-page .mp-brand-values__grid { display:grid !important; grid-template-columns:repeat(3,minmax(0,1fr)) !important; gap:0 !important; }
.mp-reference-page .mp-brand-value { padding:30px !important; border-right:1px solid #ded7cf; text-align:center; }
.mp-reference-page .mp-brand-value:last-child { border-right:0; }
.mp-reference-page .mp-brand-final { margin-top:52px !important; padding:44px 24px !important; background:#f3f8fb; }

/* UPF reference hero: one photographic banner with a readable text overlay. */
.mp-upf-page .mp-upf-feature { position:relative !important; display:block !important; min-height:560px !important; overflow:hidden !important; background:#eef7fb !important; }
.mp-upf-page .mp-upf-feature__media { position:absolute !important; inset:0 !important; width:100% !important; height:100% !important; min-height:0 !important; }
.mp-upf-page .mp-upf-feature__media::after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(245,250,252,.98) 0%,rgba(245,250,252,.92) 31%,rgba(245,250,252,.18) 58%,rgba(245,250,252,0) 72%); }
.mp-upf-page .mp-upf-feature__media img { object-position:center 48% !important; }
.mp-upf-page .mp-upf-feature__card { position:relative !important; z-index:2; display:flex; flex-direction:column; justify-content:center; min-height:560px !important; max-width:470px !important; margin:0 0 0 max(40px,calc((100% - 1160px)/2)) !important; padding:54px 24px !important; }
.mp-upf-page .mp-upf-feature__card h2 { font-size:clamp(46px,5vw,72px) !important; }
.mp-upf-page .mp-upf-feature__lead { max-width:14ch !important; font-size:clamp(24px,2.5vw,38px) !important; }

/* Center both logged-out account panels as a single composition. */
body.woocommerce-account .wp-block-post-title { padding-top:38px !important; }
body.woocommerce-account .mp-inner-title {
  box-sizing:border-box !important;
  min-height:0 !important;
  height:auto !important;
  padding:42px 20px 34px !important;
}
body.woocommerce-account .mp-inner-title .wp-block-post-title { padding:0 !important; }
body.woocommerce-account main.main-page { padding-top:22px !important; }
body.woocommerce-account .mp-account-shell .woocommerce:has(> .u-columns.col2-set) {
  display: block !important;
}
body.woocommerce-account .mp-account-shell .woocommerce:has(> .u-columns.col2-set) > .woocommerce-notices-wrapper:empty {
  display: none !important;
}
body.woocommerce-account .u-columns.col2-set { width:min(100%,980px) !important; margin-inline:auto !important; align-items:start !important; }
body.woocommerce-account .mp-account-intro { margin-bottom:46px !important; }
body.woocommerce-account .mp-account-shell { padding-top:38px !important; }
body.woocommerce-account .u-columns.col2-set > div { position:static !important; inset:auto !important; transform:none !important; }
body.woocommerce-account .u-columns.col2-set > .col-1 { grid-column:1 !important; grid-row:1 !important; }
body.woocommerce-account .u-columns.col2-set > .col-2 { grid-column:2 !important; grid-row:1 !important; }
body.woocommerce-account form.woocommerce-form-login,
body.woocommerce-account form.woocommerce-form-register { min-height:410px !important; }

/* Logged-out account: keep the form card clear of the intro copy. */
@media (min-width: 782px) {
  body.woocommerce-account main.mp-account-page > .mp-account-intro {
    margin: 0 auto 28px !important;
  }
  body.woocommerce-account main.mp-account-page > .mp-account-shell {
    padding-top: 32px !important;
  }
}

@media (max-width: 781px) {
  .mp-reference-page .mp-care-page__hero { display:flex !important; flex-direction:column; justify-content:flex-end; min-height:720px !important; padding:390px 24px 42px !important; background-position:center top !important; background-size:100% 350px !important; }
  .mp-reference-page .mp-care-page__hero p,.mp-reference-page .mp-care-page__hero h1 { text-align:center !important; }
  .mp-reference-page .mp-care-page__hero .mp-page-lead { margin-inline:auto !important; }
  .mp-reference-page .mp-care-page__details .wp-block-columns { grid-template-columns:1fr !important; }
  .mp-reference-page .mp-care__levels { grid-template-columns:1fr !important; }
  .mp-reference-page .mp-care__level { border-right:0 !important; border-bottom:1px solid #e3dcd4 !important; }
  .mp-reference-page .mp-care-progress { grid-template-columns:1fr; padding:28px 22px; text-align:center; }
  .mp-care-final { flex-direction:column; align-items:center; }
  .mp-reference-page .mp-brand-hero { min-height:500px !important; padding:34px 18px 350px !important; background-position:center,center bottom !important; }
  .mp-reference-page .mp-brand-origin__grid { display:block !important; }
  .mp-reference-page .mp-brand-story { padding-top:30px; }
  .mp-reference-page .mp-brand-values__grid { grid-template-columns:1fr !important; }
  .mp-reference-page .mp-brand-value { border-right:0; border-bottom:1px solid #ded7cf; }
  body.woocommerce-account .u-columns.col2-set > .col-1,
  body.woocommerce-account .u-columns.col2-set > .col-2 { grid-column:1 !important; grid-row:auto !important; }
  body.woocommerce-account .mp-account-intro { margin-bottom:30px !important; }
  body.woocommerce-account .mp-account-shell { padding-top:24px !important; }
  .mp-upf-page .mp-upf-feature { min-height:720px !important; }
  .mp-upf-page .mp-upf-feature__media { height:360px !important; }
  .mp-upf-page .mp-upf-feature__media::after { background:linear-gradient(180deg,rgba(245,250,252,0) 55%,#eef7fb 100%); }
  .mp-upf-page .mp-upf-feature__card { justify-content:flex-start; min-height:0 !important; max-width:none !important; margin:0 !important; padding:390px 24px 42px !important; text-align:center; }
  .mp-upf-page .mp-upf-feature__lead { margin-inline:auto !important; }
}
/* ===== Consolidated from iteration-1.css: care-rules / legal / return-policy templates ===== */
/* Care instructions keep their editorial copy left-aligned. */
.mp-care-rules-template .mp-page-lead,
.mp-care-rules-template .mp-document-card,
.mp-care-rules-template .mp-document-card p,
.mp-care-rules-template .mp-document-card ul,
.mp-care-rules-template .mp-document-card li {
  text-align: left !important;
}
.mp-care-rules-template .mp-document-card ul {
  padding-left: 1.35em !important;
}

/* Legal documents need a readable measure on wide desktop screens. */
.mp-legal-template > .mp-editable-page__content,
.mp-return-policy-template > .mp-editable-page__content {
  box-sizing: border-box !important;
  width: min(100% - 48px, 1120px) !important;
  max-width: 1120px !important;
  margin-inline: auto !important;
}

body .mp-return-policy-template .mp-return-page-title,
body .mp-legal-template .mp-legal-page-title {
  max-width: 1000px !important;
  margin-inline: auto !important;
  font-family: var(--mp-font-body, "Jost", sans-serif) !important;
  font-size: clamp(36px, 3.8vw, 50px) !important;
  font-weight: 700 !important;
  line-height: 1.12 !important;
  letter-spacing: -.025em !important;
  text-align: center !important;
  text-wrap: balance;
}

@media (max-width: 680px) {
  .mp-legal-template > .mp-editable-page__content,
  .mp-return-policy-template > .mp-editable-page__content {
    width: min(100% - 28px, 1120px) !important;
  }
  body .mp-return-policy-template .mp-return-page-title,
  body .mp-legal-template .mp-legal-page-title {
    font-size: clamp(30px, 9vw, 42px) !important;
    line-height: 1.14 !important;
  }
}

