.zpnewsletter-partnumber textarea::placeholder {
    text-align: center;
}

/* Убедитесь, что родитель имеет относительное позиционирование */
.theme-header .zpcontainer {
  position: relative;
}

/* Блок с контактами — абсолютно по центру */
.theme-additional-info-container {
  position: absolute;
  left: 60%;
  transform: translateX(-50%);
  width: auto;
  white-space: nowrap;   /* Чтобы контакты не переносились */
  z-index: 2;
}

/* На мобильных возвращаем в поток, чтобы не было наложений */
@media (max-width: 768px) {
  .theme-additional-info-container {
    position: static;
    transform: none;
    left: auto;
  }
}

/* Исправление кнопки Submit – текст по центру */
.zpbutton.zpnewsletter-button {
    text-align: center !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Исправление выравнивания текста в кнопке формы */
.zpbutton.zpnewsletter-button {
    text-align: center !important;
    display: inline-flex;       /* если кнопка стала блочной */
    align-items: center;
    justify-content: center;
}

.theme-checkout-button {
    display: none !important;
}
a.theme-more-details {
    display: none !important;
}

#newsletter_response {
    display: none !important;
}

/* Нацеливаемся именно на эту кнопку */
.zpbutton.zpbutton-size-md.zpbutton-type-link.theme-continue-shopping-button {
    /* Скрываем оригинальный текст */
    font-size: 0 !important;
}

/* Вставляем новый текст */
.zpbutton.zpbutton-size-md.zpbutton-type-link.theme-continue-shopping-button::before {
    content: "Go back to the main page";
    font-size: 1rem !important;          /* Восстанавливаем размер шрифта */
    /* Все остальные стили (цвет, отступы, hover) унаследуются от кнопки */
}

.theme-cart-table-data[data-cart-empty-checkout-button] .theme-checkout-button,
[data-cart-empty-checkout-button] .theme-checkout-button,
.theme-checkout-button-area .theme-checkout-button {
    display: none !important;
}

/* Родительская обёртка — обрезает вылезающие тени */
.zpstorecollection-container {
  overflow: hidden;
  width: 100%;
}

/* Контейнер-сетка со сдвигом для обрезки внешних теней */
.zpstorecollection-container .zprow {
  display: grid !important;
  gap: 1px !important;
  background: transparent !important;
  margin: -1px 0 0 -1px !important;
  padding: 0 !important;
  width: calc(100% + 1px) !important;
  box-sizing: border-box;
  
  /* 2 колонки на мобильных */
  grid-template-columns: repeat(2, 1fr) !important;
}

/* Планшеты — 3 колонки */
@media (min-width: 768px) {
  .zpstorecollection-container .zprow {
    grid-template-columns: repeat(3, 1fr) !important;
  }
}

/* Десктоп — 4 колонки */
@media (min-width: 992px) {
  .zpstorecollection-container .zprow {
    grid-template-columns: repeat(4, 1fr) !important;
  }
}

/* Карточка — занимает всю ячейку, получает тени для линий */
.zpstorecollection-container .theme-prod-box {
  background: #fff !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
  box-sizing: border-box;
  width: 100% !important;
  min-width: 0 !important;   /* запрещаем переполнение */
  box-shadow: -1px 0 0 0 #e0e0e0,  /* левая линия */
              0 -1px 0 0 #e0e0e0;   /* верхняя линия */
}

/* Внутренний контейнер карточки — тоже на всю ширину */
.zpstorecollection-container .theme-product-box-content {
  width: 100% !important;
  display: flex;
  flex-direction: column;
  height: 100%;
}

/* Область изображения — чтобы картинка не сжималась */
.zpstorecollection-container .theme-product-image-area {
  width: 100%;
  text-align: center;
}
.zpstorecollection-container .theme-product-image-area img {
  max-width: 100%;
  height: auto;
  display: block;
  margin: 0 auto;
}

/* Область с названием, ценой, кнопками */
.zpstorecollection-container .theme-product-details-area {
  width: 100%;
  padding: 10px;
  box-sizing: border-box;
}

/* Скрываем всё лишнее внутри .zprow, кроме карточек */
.zpstorecollection-container .zprow > *:not(.theme-prod-box) {
  display: none !important;
}

* Общее центрирование, максимальная ширина и отступы как в примере (padding: 80px 20px) */
.zpform-container.zpnewsletter-input-container {
    display: block;
    max-width: 600px;
    margin: 80px auto;
    padding: 0 20px;
    box-sizing: border-box;
}

/* Поля ввода — белый фон, серый текст */
.zpform-container.zpnewsletter-input-container input {
    width: 100%;
    padding: 18px 25px !important;
    border-radius: 40px !important;
    border: none !important;
    font-size: 18px !important;
    background: #ffffff !important;           /* БЕЛЫЙ фон */
    color: #3a3a3a !important;                /* серый текст */
    box-shadow: rgba(0, 0, 0, 0.08) 0px 6px 25px !important;
    outline: none !important;
    transition: transform 0.3s, box-shadow 0.3s !important;
    transform: scale(1);
    margin-bottom: 16px;
    box-sizing: border-box;
    font-family: inherit;
}

/* Плейсхолдер — светлый серый */
.zpform-container.zpnewsletter-input-container input::placeholder {
    color: #858585;
    font-weight: 400;
    font-size: 17px;
}

/* Фокус — оранжевая тень, масштаб 1.02 (как в поиске) */
.zpform-container.zpnewsletter-input-container input:focus {
    transform: scale(1.02);
    box-shadow: 0 8px 30px rgba(233, 78, 26, 0.25) !important;
}

/* Кнопка — оранжевая (не меняется) */
.zpform-container.zpnewsletter-input-container button.zpbutton {
    width: 100%;
    padding: 18px 25px !important;
    border-radius: 40px !important;
    border: none !important;
    font-size: 18px !important;
    font-weight: 600;
    background: #E94E1A !important;
    color: white !important;
    cursor: pointer;
    box-shadow: rgba(0, 0, 0, 0.08) 0px 6px 20px !important;
    transition: all 0.25s ease !important;
    text-align: center;
    letter-spacing: 0.3px;
    font-family: inherit;
    margin-top: 4px;
}

/* Остальные стили (наведение, адаптивность, flex) — без изменений, как были у вас */
.zpform-container.zpnewsletter-input-container button.zpbutton:hover {
    background: #474747 !important;
    transform: scale(1.01);
    box-shadow: rgba(233, 78, 26, 0.3) 0px 12px 28px, rgba(0, 0, 0, 0.08) 0px 6px 20px !important;
}

.zpform-container.zpnewsletter-input-container button.zpbutton:active {
    transform: scale(0.98);
}

.zpform-container.zpnewsletter-input-container input:hover {
    box-shadow: rgba(0, 0, 0, 0.1) 0px 8px 28px !important;
}

/* Фокус-видимый для доступности */
.zpform-container.zpnewsletter-input-container input:focus-visible {
    outline: 3px solid #E94E1A;
    outline-offset: 2px;
    border-radius: 40px;
}

.zpform-container.zpnewsletter-input-container button.zpbutton:focus-visible {
    outline: 3px solid #474747;
    outline-offset: 3px;
    border-radius: 40px;
}

/* Адаптивность (оставляем как было) */
@media (max-width: 550px) {
    .zpform-container.zpnewsletter-input-container {
        margin: 60px auto;
        padding: 0 16px;
    }
    .zpform-container.zpnewsletter-input-container input,
    .zpform-container.zpnewsletter-input-container button.zpbutton {
        padding: 15px 22px !important;
        font-size: 16px !important;
    }
    .zpform-container.zpnewsletter-input-container input {
        margin-bottom: 14px;
    }
}

.zpform-container.zpnewsletter-input-container {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 12px;
    max-width: 1000px;
    margin: 80px auto;
    padding: 0 20px;
    box-sizing: border-box;
}

.zpform-container.zpnewsletter-input-container input,
.zpform-container.zpnewsletter-input-container button.zpbutton {
    flex: 1 1 0;
    min-width: 0;
    width: auto;
    margin-bottom: 0 !important;
}

.zpform-container.zpnewsletter-input-container button.zpbutton {
    flex: 0.6 1 120px;
    white-space: nowrap;
}

@media (max-width: 700px) {
    .zpform-container.zpnewsletter-input-container {
        flex-wrap: wrap;
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }
    .zpform-container.zpnewsletter-input-container input,
    .zpform-container.zpnewsletter-input-container button.zpbutton {
        width: 100%;
        flex: auto;
        min-width: auto;
    }
    .zpform-container.zpnewsletter-input-container button.zpbutton {
        white-space: normal;
    }
}

.zpform-container.zpnewsletter-input-container .zpnewsletter-field {
    flex: 1 1 0;
    min-width: 0;
    margin: 0;
}

.zpform-container.zpnewsletter-input-container .zpnewsletter-field label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    border: 0;
}

.zpform-container.zpnewsletter-input-container .zpnewsletter-field input {
    width: 100%;
    margin-bottom: 0;
}


/* Выравнивание высоты строки */
[data-element-id="elm_uqRbxN6ztsqfyuLsiIm_uQ"].zprow {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: stretch !important;
}

/* Все колонки внутри строки — flex-контейнеры */
[data-element-id="elm_uqRbxN6ztsqfyuLsiIm_uQ"] > [class*="zpcol-"] {
    display: flex !important;
    flex-direction: column !important;
}

/* Боксы внутри колонок растягиваются на всю высоту */
[data-element-id="elm_uqRbxN6ztsqfyuLsiIm_uQ"] .zpelem-box {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    height: auto !important; /* убираем возможные фиксированные высоты */
    min-height: 100% !important;
}

/* Чтобы содержимое внутри бокса не ломалось */
[data-element-id="elm_uqRbxN6ztsqfyuLsiIm_uQ"] .zpelem-box > * {
    flex-shrink: 0 !important;
}

/* Нижний спейсер прижимается к низу (опционально) */
[data-element-id="elm_uqRbxN6ztsqfyuLsiIm_uQ"] .zpelem-box .zpelem-spacer:last-child {
    margin-top: auto !important;
}

.theme-product-specification-section {
    display: none !important;
}
  
h2.theme-section-heading {
    display: none !important;
}

.theme-product-image-area picture img {
    object-fit: contain !important;
    width: 100% !important;
    height: 100% !important;
    background-color: #ffffff;
}

.theme-product-box-content {
    background-color: #ffffff !important;
}

/* Стили для кнопки View all */
.theme-collection-viewall .zpbutton {
    background-color: #E94E1A !important;
    color: #FFFFFF !important;
    border-radius: 0 !important;                /* убираем скругление */
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;                        /* расстояние между иконкой и текстом */
    padding: 8px 16px !important;               /* внутренние отступы */
    text-decoration: none !important;
    font-family: inherit !important;
    font-size: 1rem !important;
    line-height: 1 !important;
    border: none !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease, color 0.2s ease !important;
}

/* Hover-эффект */
.theme-collection-viewall .zpbutton:hover {
    background-color: #474747 !important;
    color: #E94E1A !important;
}

/* Если внутри кнопки будет SVG (иконка) */
.theme-collection-viewall .zpbutton svg {
    fill: currentColor !important;
}

/* Для контейнера изображения — белый фон и центрирование */
.theme-product-detail-image-inner {
    background-color: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Для самих картинок — вписывание целиком */
.theme-product-detail-image-inner picture,
.theme-product-detail-image-inner img {
    max-width: 100% !important;
    max-height: 100% !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain !important;
}

/* Стили для кнопки Submit в форме */
.button, .zpbutton, .theme-cart-button zpbutton zpbutton-type-primary zpbutton-size-lg {
    background-color: #E94E1A !important;
    color: #FFFFFF !important;
    border-radius: 40px !important;                /* убираем скругление */
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;                        /* расстояние между иконкой и текстом */
    padding: 8px 16px !important;               /* внутренние отступы */
    text-decoration: none !important;
    font-family: inherit !important;
    font-size: 1rem !important;
    line-height: 1 !important;
    border: none !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease, color 0.2s ease !important;
}

/* Hover-эффект */
.button:hover, .zpbutton:hover, .theme-cart-button zpbutton zpbutton-type-primary zpbutton-size-lg:hover {
    background-color: #474747 !important;
    color: #E94E1A !important;
}

/* Если внутри кнопки будет SVG (иконка) */
.button, .zpbutton, .theme-cart-button zpbutton zpbutton-type-primary zpbutton-size-lg svg {
    fill: currentColor !important;
}


.theme-product-details-area .theme-cta-area .theme-quick-view-icon {
    background-color: #E94E1A !important;
    color: #FFFFFF !important;
    border-radius: 40px !important;                /* скругление */
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;                        /* расстояние между иконкой и текстом */
    padding: 8px 16px !important;               /* внутренние отступы (при необходимости можно корректировать) */
    text-decoration: none !important;
    font-family: inherit !important;
    font-size: 1rem !important;
    line-height: 1 !important;
    border: none !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease, color 0.2s ease !important;
}

div.theme-product-details-area .theme-cta-area .theme-quick-view-icon:hover {
    background-color: #474747 !important;
    color: #E94E1A !important;
}

.theme-product-details-area .theme-cta-area .theme-quick-view-icon svg {
    fill: currentColor !important;
}

.theme-banner {
    display: none !important;
}

.hero-slide,
.zs-hero-slide {
  display: none !important;
}
section:has(.hero-slide),
section:has(.zs-hero-slide) {
  display: none !important;
}
<style>
.products-fade-wrapper {
  position: relative;
  max-height: 950px;
  overflow: hidden;
  transition: max-height 0.6s ease;
}

/* градиент как у Apple */
.products-fade-wrapper::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 120px;
  background: linear-gradient(to bottom, rgba(255,255,255,0), #fff);
  pointer-events: none;
  transition: opacity 0.4s;
}

.products-fade-wrapper.open::after {
  opacity: 0;
}

/* кнопка */
.show-more-apple {
  margin: 40px auto;
  text-align: center;
  font-family: Manrope, sans-serif;
  color: #E94E1A;
  cursor: pointer;
  font-size: 16px;
}

.show-more-apple span {
  display: inline-block;
  transition: transform 0.3s ease;
}

.show-more-apple.open span {
  transform: rotate(180deg);
}
</style>

<script>
document.addEventListener("DOMContentLoaded", function () {

  // ⚠️ ВАЖНО: ищем именно блок с товарами
  const grids = document.querySelectorAll("section");

  let productsSection = null;

  grids.forEach(el => {
    if (el.innerText.includes("$") && el.innerText.includes("Products")) {
      productsSection = el;
    }
  });

  if (!productsSection) return;

  productsSection.classList.add("products-fade-wrapper");

  const btn = document.createElement("div");
  btn.className = "show-more-apple";
  btn.innerHTML = `
    Show more<br>
    <span>↓</span>
  `;

  productsSection.after(btn);

  btn.addEventListener("click", function () {
    productsSection.classList.toggle("open");
    btn.classList.toggle("open");

    if (productsSection.classList.contains("open")) {
      productsSection.style.maxHeight = productsSection.scrollHeight + "px";
      btn.firstChild.textContent = "Show less";
    } else {
      productsSection.style.maxHeight = "950px";
      btn.firstChild.textContent = "Show more";
    }
  });

});
</script>


<style type="text/css">
  /* Уменьшаем отступы у заголовка и подзаголовка */
  [data-element-id="elm_fr87xuYgB5xCCaSrQSG5aQ"] .zpnewsletter-heading {
    margin-bottom: 8px !important;  /* было больше, ставим нужное значение */
  }
  [data-element-id="elm_fr87xuYgB5xCCaSrQSG5aQ"] .zpnewsletter-desc {
    margin-bottom: 12px !important;  /* отступ перед формой */
  }
  /* Если форма слишком высоко — можно уменьшить верхний отступ контейнера формы */
  [data-element-id="elm_fr87xuYgB5xCCaSrQSG5aQ"] .zpform-container {
    margin-top: 0 !important;
  }
</style>

/* 1. Скрываем исходные SVG иконки почты и телефона */
.theme-topbar-info-icon svg {
    display: none !important;
}

/* 2. Вставляем новую иконку почты (оранжевую) */
.theme-topbar-info:first-child .theme-topbar-info-icon::before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 513.5' fill='%23EB4F1B'%3E%3Cpath d='M48 128h16 384 16v16 256 16h-16-384-16v-16-256-16z m69 32l139 92.5 139-92.5h-278z m-37 14v210h352v-210l-167 111.5-9 5.5-9-5.5z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle;
    margin-right: 6px; /* отступ от текста, подгоните под оригинал */
}

/* 3. Вставляем новую иконку телефона (оранжевую) */
.theme-topbar-info:last-child .theme-topbar-info-icon::before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 513.5' fill='%23EB4F1B'%3E%3Cpath d='M138.5 48c8.376 0 16.6562 3.0244 23.5 8.5l1 0.5 0.5 0.5 64 66 1.5 1.5-0.5 0.5c14.1738 13.2119 13.9678 35.5322 0.5 49l-32 32c4.9189 11.2773 18.3291 40.0186 44.5 65 26.3584 25.1602 53.9316 39.4668 65.5 45l31.5-31.5 0.5-0.5c13.2793-13.2793 36.7207-13.2793 50 0l0.5 1 65 65c13.2793 13.2793 13.2793 36.2207 0 49.5l-49.5 49.5-0.5 0.5-0.5 0.5c-15.0107 12.8672-36.04 17.4863-55.5 11h-0.5c-37.5488-14.6934-113.509-48.0088-181.5-116-67.7266-67.7266-102.448-142.659-116-181.5-0.0352-0.0996 0.0342-0.4004 0-0.5-6.7031-18.4336-1.915-39.7383 13.5-54l-0.5-0.5 50-51.5 0.5-0.5 1-0.5c6.8438-5.4756 15.124-8.5 23.5-8.5z m0 32c-1.1719 0-2.3438 0.5752-3.5 1.5l-48.5 49.5-0.5 0.5-0.5 0.5c-5.6738 4.8633-7.4394 14.4932-5 21 12.1201 34.8467 45.1992 106.699 108.5 170 62.7842 62.7842 133.224 93.7607 169.5 108 9.3408 3.1133 17.1113 1.833 24.5-4.5l49-49c2.7207-2.7207 2.7207-1.7793 0-4.5l-65.5-65.5c-2.7207-2.7207-2.2793-2.7207-5 0l-40 40-7.5 7.5-10-4.5s-43.8311-18.5518-81-52.5l-3.5-3c-38.5947-36.8408-57-86-57-86l-3.5-10 7.5-7 40-40c1.9658-1.9658 0.874-3.6006 1-3.5l-0.5-0.5-1-1-64-65.5c-1.1563-0.9248-2.3281-1.5-3.5-1.5z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle;
    margin-right: 6px;
}

/* 4. Убираем лишние отступы у родительского span, чтобы не нарушить вёрстку */
.theme-topbar-info-icon {
    display: inline-flex !important;
    align-items: center;
}

/* 5. Если у исходной иконки был фиксированный размер — подстроим */
.theme-topbar-info-icon::before {
    width: 16px !important;
    height: 16px !important;
}

/* 6. Корзина и счётчик (уже работают, оставляем) */
.theme-mini-cart svg path,
[data-zs-cart-icon] svg path {
    fill: #EB4F1B !important;
}
.theme-mini-cart-count {
    background-color: #EB4F1B !important;
    color: #ffffff !important;
}

/* Только одна линия сверху секции */
[data-element-id="elm_w4NvpgejiixAmS2oKrW0rA"].zpsection {
    border-end: 1px solid #e2e2e2;
}

/* Серая линия внизу секции */
[data-element-id="elm_NzAp6J-FFs0eaQsKiZE7_g"].zpsection {
    border-bottom: 1px solid #e2e2e2;
}