/* Theme-specific layout adjustments. Removing the root attribute restores the theme. */
html[data-pp-a11y=on] body.redesign {
    --color-text: var(--pp-a11y-fg); --color-heading: var(--pp-a11y-fg); --color-text-muted: var(--pp-a11y-muted);
    --color-page: var(--pp-a11y-bg); --color-surface: var(--pp-a11y-surface); --color-surface-2: var(--pp-a11y-soft);
    --color-border: var(--pp-a11y-border); --color-accent: var(--pp-a11y-accent); --hero-dark: none;
}
html[data-pp-a11y=on] body.redesign :is(section,header,footer,nav,article,aside,main,.btn,.btn-default,.header__title,.topmenu__nav) { background-image: none !important; }
html[data-pp-a11y=on] body.redesign :is(.header,.header.fixed) { position: relative !important; top: auto !important; }
html[data-pp-a11y=on] body.redesign { padding-top: 0 !important; }
html[data-pp-a11y=on] body.redesign :is(.header_desktop.fixed,.header__burger.fixed) { position: relative !important; top: auto !important; }
html[data-pp-a11y=on] body.redesign .header-mobile.fixed { position: absolute !important; top: 100% !important; }
html[data-pp-a11y=on] body.redesign :is(.header__inner,.header__top-row,.header__brand,.topmenu__nav,.topmenu,.topmenu__inner,.header__burger-inner,.header__burger-right) { flex-wrap: wrap !important; gap: 16px; height: auto !important; }
html[data-pp-a11y=on] body.redesign .header-right { margin-left: 0; min-width: 0; }
html[data-pp-a11y=on] body.redesign :is(.header-right__phone,.header__city,.header__title,.topmenu>li>a) { white-space: normal !important; }
html[data-pp-a11y=on] body.redesign .header__title { padding-inline: 16px; }
html[data-pp-a11y=on] body.redesign :is(.header__brand,.header__items,.header-right) { max-width: 100%; }
html[data-pp-a11y=on] body.redesign .header__brand { flex-shrink: 1; }
html[data-pp-a11y=on] body.redesign .topmenu { flex: 1 1 100%; }
html[data-pp-a11y=on] body.redesign .topmenu > li { height: auto; }
html[data-pp-a11y=on] body.redesign :is(.topmenu__log,.header__burger-log,.topmenu__basket,.topmenu__fav) { min-width: 44px; min-height: 44px; }
html[data-pp-a11y=on] body.redesign :is(.topmenu__log,.header__burger-log,.topmenu__basket) img { filter: none; }
html[data-pp-a11y=on][data-pp-a11y-palette=white] body.redesign :is(.topmenu__log,.header__burger-log,.topmenu__basket) img,
html[data-pp-a11y=on][data-pp-a11y-palette=blue] body.redesign :is(.topmenu__log,.header__burger-log,.topmenu__basket) img,
html[data-pp-a11y=on][data-pp-a11y-palette=beige] body.redesign :is(.topmenu__log,.header__burger-log,.topmenu__basket) img { filter: brightness(0); }
html[data-pp-a11y=on] body.redesign .topmenu__fav::before,
html[data-pp-a11y=on] body.redesign .pp-soc-i { background-color: currentColor !important; }
html[data-pp-a11y=on] body.redesign :is(.ham7 path,.header__city svg) { stroke: var(--pp-a11y-fg) !important; }
html[data-pp-a11y=on] body.redesign .header-mobile { max-height: 75vh; overflow-y: auto; }
html[data-pp-a11y=on] body.redesign .topmenu li:focus-within > .sub-menu { display: block; opacity: 1; visibility: visible; pointer-events: auto; }
html[data-pp-a11y=on] body.redesign .topmenu .sub-menu { max-width: calc(100vw - 32px); white-space: normal; }
/* Preserve each theme container's max-width; 100% here stretched the catalog to the viewport. */
html[data-pp-a11y=on] body.redesign :is(.container-main,.container,.header-container,.hero-block,.hero-left,.hero-right) { min-width: 0; }
html[data-pp-a11y=on] body.redesign :is(.hero-block,.hero-left,.hero-right) { height: auto !important; min-height: 0 !important; }
html[data-pp-a11y=on] body.redesign [data-pp-a11y-grid] { grid-template-columns: repeat(auto-fit, minmax(min(100%, calc(280px * var(--pp-a11y-scale))), 1fr)) !important; }
html[data-pp-a11y=on] body.redesign [data-pp-a11y-grid] > * { min-width: 0; max-width: 100%; }
/* Catalogs (including AJAX component results): fewer columns as text grows. */
html[data-pp-a11y=on] body.redesign .shop-list { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
html[data-pp-a11y=on]:is([data-pp-a11y-size="125"],[data-pp-a11y-size="150"]) body.redesign .shop-list { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
html[data-pp-a11y=on][data-pp-a11y-size="200"] body.redesign .shop-list { grid-template-columns: minmax(0, 1fr) !important; }
html[data-pp-a11y=on] body.redesign .product__item .product-single__item {
    display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; gap: 4px;
}
html[data-pp-a11y=on] body.redesign .product__item .product-single__item :is(strong,span) {
    min-width: 0; width: 100%; text-align: left !important;
}
html[data-pp-a11y=on] body.redesign .product__item .product-single__item strong { font-weight: 700; }
html[data-pp-a11y=on][data-pp-a11y-images=hidden] body.redesign .product__image {
    height: auto !important; min-height: 68px; padding: 12px;
    /* Reserve space for the 44px favorite control above the image link. */
    padding-right: 68px;
}
@media (max-width: 1140px) {
    html[data-pp-a11y=on][data-pp-a11y-size="100"] body.redesign .shop-list { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 768px) {
    html[data-pp-a11y=on][data-pp-a11y-size] body.redesign .shop-list { grid-template-columns: minmax(0, 1fr) !important; }
}
html[data-pp-a11y=on] body.redesign :is(.coockie,.coockie-wrap) { max-width: calc(100vw - 32px); }
html[data-pp-a11y=on] body.redesign .coockie { max-height: 60vh; overflow-y: auto; }
html[data-pp-a11y=on] body.redesign :is(.modal__content,.thanks-modal__content) { max-height: 90vh; max-height: 90dvh; overflow-y: auto; }
html[data-pp-a11y=on] body.redesign :is(.product-card__title,.product-card__name) { overflow: visible !important; -webkit-line-clamp: unset !important; }
html[data-pp-a11y=on] body.redesign .product__favorite { width: 44px !important; height: 44px !important; min-width: 44px; min-height: 44px; }
html[data-pp-a11y=on] body.redesign :is(.swiper-wrapper,.swiper-slide) { height: auto; }
/* Restore native focusable controls that the theme visually replaces with cards. */
html[data-pp-a11y=on] body.redesign :is(input[type=radio],input[type=checkbox]):not([hidden],#pp-a11y *) {
    appearance: auto !important; display: inline-block !important; position: static !important; opacity: 1 !important;
    width: 28px !important; height: 28px !important; min-width: 28px !important; min-height: 28px !important;
    flex: 0 0 28px; clip: auto !important; clip-path: none !important; margin: 6px; transform: none !important;
}
html[data-pp-a11y=on] body.redesign :is(.checkbox__box,.checkout-page__pickup-recipient-switch) { display: none !important; }
html[data-pp-a11y=on] body.redesign label:not(#pp-a11y *):has(> input:focus-visible) { outline: 3px solid var(--pp-a11y-fg); outline-offset: 4px; }
html[data-pp-a11y=on] body.redesign :is(.checkout-page__delivery-option,.checkout-page__payment-option):has(input:checked) { outline: 3px solid var(--pp-a11y-fg); outline-offset: 2px; }
@media (max-width: 1200px) {
    html[data-pp-a11y=on] body.redesign .header__inner { align-items: flex-start; }
    html[data-pp-a11y=on] body.redesign .header-right { width: 100%; }
}

/* Surface hierarchy: text inherits its actual surface instead of receiving a box. */
html[data-pp-a11y=on] body.redesign :is(.header,.header__burger,.header-mobile,.product__item,.filter,.components-picker,.catalog-directions__item,.cart-page__item,.cart-page__summary,.checkout-page__section,.checkout-page__summary,.product-hero__summary,.product-tabs,.modal__content,.coockie,.mini-basket,.search-results,.sub-menu) {
    background-color: var(--pp-a11y-surface) !important; color: var(--pp-a11y-fg) !important;
}
html[data-pp-a11y=on] body.redesign :is(.header__title,.header_desktop,.main__inner,.insert,.footer,.cta-banner--dark) {
    background-color: var(--pp-a11y-band) !important; color: var(--pp-a11y-on-band) !important;
}
html[data-pp-a11y=on] body.redesign .header__title { text-align: center; padding-block: 10px; }
html[data-pp-a11y=on] body.redesign .topmenu__nav { padding-block: 8px; }
html[data-pp-a11y=on] body.redesign .topmenu { flex: 1 1 720px; gap: 4px !important; }
html[data-pp-a11y=on] body.redesign .topmenu > li > a { padding: 10px 12px; border-radius: 6px; min-height: 44px; }
html[data-pp-a11y=on] body.redesign .topmenu > li > a:hover { text-decoration-thickness: .14em !important; }
html[data-pp-a11y=on] body.redesign .header__items { flex-basis: 360px; }
html[data-pp-a11y=on] body.redesign .header__text,
html[data-pp-a11y=on] body.redesign .header__working-hours { color: var(--pp-a11y-muted) !important; }
html[data-pp-a11y=on] body.redesign .header__icons a { width: 44px; height: 44px; flex-basis: 44px; background-color: var(--pp-a11y-soft) !important; }
html[data-pp-a11y=on] body.redesign .main__inner { padding: clamp(24px, 4vw, 48px); border: 1px solid var(--pp-a11y-border); }
html[data-pp-a11y=on] body.redesign .main-right__img { filter: none !important; box-shadow: none !important; }
html[data-pp-a11y=on] body.redesign :is(.main-right,.main-left,.main-left-mobile) { min-width: 0; max-width: 100%; }
html[data-pp-a11y=on][data-pp-a11y-palette=brand] body.redesign :is(.main-left__title,.main-left-mobile__title) span { color: #ffb3b8 !important; }
html[data-pp-a11y=on] body.redesign :is(.main-left__text,.main-left-mobile__text) { max-width: 62ch; }
html[data-pp-a11y=on] body.redesign :is(.main-fact,.advantages__text,.brands__item a) { border: 1px solid var(--pp-a11y-border); }
html[data-pp-a11y=on] body.redesign .product__item { border-radius: 16px; border: 1px solid var(--pp-a11y-border); }
html[data-pp-a11y=on] body.redesign .product__item:hover { transform: none; }
html[data-pp-a11y=on] body.redesign .product__image { background-color: var(--pp-a11y-surface) !important; }
html[data-pp-a11y=on] body.redesign .product__image[data-pp-a11y-media-unavailable] { height: auto !important; min-height: 100px; padding: 24px 68px 24px 20px; background-color: var(--pp-a11y-soft) !important; }
html[data-pp-a11y=on] body.redesign [data-pp-a11y-media-unavailable] img { display: none !important; }
[data-pp-a11y-media-fallback] { display: none; }
html[data-pp-a11y=on] body.redesign [data-pp-a11y-media-fallback] { display: block; font-size: calc(18px * var(--pp-a11y-scale)); line-height: var(--pp-a11y-line); color: var(--pp-a11y-muted) !important; }
html[data-pp-a11y=on][data-pp-a11y-images=hidden] body.redesign [data-pp-a11y-media-fallback] { display: none; }
html[data-pp-a11y=on] body.redesign .product__button { padding: 20px; }
html[data-pp-a11y=on] body.redesign .product_title { font-weight: 700; margin-bottom: 16px; }
html[data-pp-a11y=on] body.redesign .product__item .product-single__item { padding-block: 8px; border-bottom-style: solid; }
html[data-pp-a11y=on] body.redesign .product__item .product-single__item strong { color: var(--pp-a11y-muted) !important; }
html[data-pp-a11y=on] body.redesign .product__favorite { color: var(--pp-a11y-fg) !important; background-color: var(--pp-a11y-surface) !important; }
html[data-pp-a11y=on] body.redesign .product__price { font-weight: 700; }
html[data-pp-a11y=on] body.redesign :is(.btn-default,.btn-more,.product__cart,.checkout-page__next,.checkout-page__submit,button[type=submit],input[type=submit]):not(#pp-a11y *) {
    color: var(--pp-a11y-on-accent) !important; background-color: var(--pp-a11y-accent) !important; border: 2px solid var(--pp-a11y-accent) !important;
    border-radius: 8px; min-height: 48px; height: auto; padding: 12px 20px; font-weight: 700;
    min-width: 0; max-width: 100%; box-sizing: border-box;
}
html[data-pp-a11y=on] body.redesign :is(.btn-default,.btn-more,.product__cart):not(#pp-a11y *) p { color: inherit !important; background: transparent !important; }
html[data-pp-a11y=on] body.redesign :is(input:not([type=radio],[type=checkbox],[type=hidden],[type=submit]),select,textarea):not(#pp-a11y *) {
    background-color: var(--pp-a11y-surface) !important; color: var(--pp-a11y-fg) !important; border: 2px solid var(--pp-a11y-border) !important; border-radius: 8px; padding: 12px 16px;
}
html[data-pp-a11y=on] body.redesign .header__search { border: 0 !important; padding: 0; background: transparent !important; }
html[data-pp-a11y=on] body.redesign .header__search input { padding-right: 48px; }
html[data-pp-a11y=on] body.redesign .header__search-icon { right: 16px; }
html[data-pp-a11y=on] body.redesign :is(.cart-page__sidebar-card,.checkout-page__sidebar-card,.checkout-page__step,.product-single-right) { background: var(--pp-a11y-surface) !important; color: var(--pp-a11y-fg) !important; border: 1px solid var(--pp-a11y-border); border-radius: 16px; }
html[data-pp-a11y=on] body.redesign .product-single__favorite { width: 48px !important; height: 48px !important; min-width: 48px; border-radius: 50%; }
html[data-pp-a11y=on] body.redesign :is(.checkout-page__delivery-option,.checkout-page__payment-option):not([hidden]) { display: flex; align-items: center; gap: 12px; padding: 16px; border: 1px solid var(--pp-a11y-border); border-radius: 12px; background: var(--pp-a11y-surface) !important; }
html[data-pp-a11y=on] body.redesign :is(.checkout-page__delivery-card,.checkout-page__payment-card) { flex: 1; min-width: 0; padding: 0; border: 0 !important; }
html[data-pp-a11y=on] body.redesign :is(.checkout-page__delivery-info,.checkout-page__payment-info) { min-width: 0; }
html[data-pp-a11y=on] body.redesign .slick-arrow { font-size: 0 !important; line-height: 1 !important; width: 48px !important; height: 48px !important; min-width: 48px; padding: 0; overflow: hidden; background: var(--pp-a11y-surface) !important; color: var(--pp-a11y-fg) !important; border-radius: 50%; }
/* Preserve the theme's directional masks; the base adapter colors them with currentColor. */
html[data-pp-a11y=on] body.redesign .slick-arrow::before { color: inherit !important; opacity: 1; }
html[data-pp-a11y=on] body.redesign .slick-arrow:not(.slick-disabled) { opacity: 1; }
html[data-pp-a11y=on] body.redesign :is(.filter,.components-picker,.catalog-directions__item,.product-tabs) { border: 1px solid var(--pp-a11y-border); border-radius: 16px; }
html[data-pp-a11y=on] body.redesign :is(.product-tabs__btn.is-active,.catalog-directions__item.is-active) { border-color: var(--pp-a11y-accent) !important; box-shadow: inset 0 -3px var(--pp-a11y-accent) !important; font-weight: 700; }
html[data-pp-a11y=on] body.redesign :is(.product-tabs__btn,.btn-more,.custom-select__option--value) { min-height: 48px; }
html[data-pp-a11y=on] body.redesign :is(.custom-select__dropdown,.custom-select__options,.select2-dropdown) { background-color: var(--pp-a11y-surface) !important; color: var(--pp-a11y-fg) !important; }
html[data-pp-a11y=on][data-pp-a11y-palette=brand] body.redesign .header_desktop :is(.topmenu__log,.topmenu__basket,.topmenu__fav) img { filter: brightness(0) invert(1); }
html[data-pp-a11y=on][data-pp-a11y-palette=brand] body.redesign :is(.header__burger-log,.header__burger-basket) img { filter: brightness(0); }
html[data-pp-a11y=on] body.redesign .topmenu__fav::before { background-color: currentColor !important; }
html[data-pp-a11y=on][data-pp-a11y-images=hidden] body.redesign :is(.main-right,.catalog-directions__visual,.components-banner__visual) { display: none; }
html[data-pp-a11y=on] body.redesign .vacancies-page__filters { flex-wrap: wrap; overflow: visible; }
html[data-pp-a11y=on] body.redesign .vacancies-page__filters button { flex: 1 1 220px; min-width: 0; max-width: 100%; }
/* The complete document gallery remains in normal flow at every text size. */
html[data-pp-a11y=on] body.redesign .certificates__slider { display: none !important; }
html[data-pp-a11y=on] body.redesign .certificates__items { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(min(100%, calc(280px * var(--pp-a11y-scale))), 1fr)); gap: 24px; }
html[data-pp-a11y=on] body.redesign .certificates__grid { display: block; height: auto; min-width: 0; padding: 16px; background: var(--pp-a11y-surface) !important; border: 1px solid var(--pp-a11y-border); border-radius: 12px; }
html[data-pp-a11y=on] body.redesign .certificates__grid img { display: block; width: 100%; height: auto; object-fit: contain; }
html[data-pp-a11y=on] body.redesign .certificates__grid::after { content: attr(aria-label); display: block; margin-top: 12px; font-size: calc(18px * var(--pp-a11y-scale)); line-height: var(--pp-a11y-line); color: inherit; overflow-wrap: anywhere; }
@media (max-width: 768px) {
    html[data-pp-a11y=on] body.redesign .product__button { padding: 16px; }
    html[data-pp-a11y=on] body.redesign .main__inner { padding: 24px; }
}
