/* iVstore legal pages: long-form statutory text.
   Headings inside a text-editor widget inherit the kit's bare h2 rule, which
   maps to the 56px display style, so they are restated here. Measure is capped
   near 70 characters for readability. */

.iv-legal h2{margin:36px 0 12px;font:700 22px/1.3 Onest,sans-serif;letter-spacing:-.2px;
  color:var(--e-global-color-text,#EDF2F8)}
.iv-legal h2:first-child{margin-top:0}
.iv-legal p{margin:0 0 14px;font:400 17px/1.8 Onest,sans-serif;
  color:var(--e-global-color-muted,#93A0B2)}
.iv-legal ul{margin:0 0 16px;padding-left:22px}
.iv-legal li{margin:0 0 8px;font:400 17px/1.8 Onest,sans-serif;
  color:var(--e-global-color-muted,#93A0B2)}
.iv-legal li::marker{color:var(--e-global-color-primary,#A5D400)}
.iv-legal a[href]{color:var(--e-global-color-primary,#A5D400);text-decoration:none}
.iv-legal a[href]:hover{text-decoration:underline}
.iv-legal strong{color:var(--e-global-color-text,#EDF2F8);font-weight:700}
@media(max-width:767px){
  .iv-legal h2{font-size:20px;margin-top:28px}
  .iv-legal p,.iv-legal li{font-size:16px;line-height:1.75}
}

/* --- реквизиты block (footer + contacts) ------------------------------ */
.iv-req{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;
  font:400 15px/1.6 Onest,sans-serif;color:var(--e-global-color-muted,#93A0B2)}
.iv-req dt{color:var(--e-global-color-dimtx,#8A94A6);white-space:nowrap}
.iv-req dd{margin:0;color:var(--e-global-color-text,#EDF2F8)}
.iv-req .iv-req__name{grid-column:1 / -1;font-weight:700;
  color:var(--e-global-color-text,#EDF2F8);margin-bottom:2px}
@media(max-width:767px){
  .iv-req{grid-template-columns:1fr;gap:2px}
  .iv-req dt{margin-top:8px}
}

/* legal link row in the footer */
.iv-legal-links{display:flex;flex-wrap:wrap;gap:8px 18px;
  font:400 15px/1.6 Onest,sans-serif}
nav.iv-legal-links a{color:var(--e-global-color-muted,#93A0B2);text-decoration:none;
  transition:color .2s ease}
nav.iv-legal-links a:hover{color:var(--e-global-color-primary,#A5D400)}
nav.iv-legal-links a:focus-visible{outline:3px solid var(--e-global-color-primary,#A5D400);outline-offset:2px}

/* footer variant: one dot-separated line */
.iv-req--inline{display:flex;flex-wrap:wrap;gap:4px 10px;font:400 15px/1.6 Onest,sans-serif;
  color:var(--e-global-color-dimtx,#8A94A6)}
.iv-req--inline span+span::before{content:'·';margin-right:10px;opacity:.55}

dl.iv-req dd a{color:var(--e-global-color-primary,#A5D400);text-decoration:none}
dl.iv-req dd a:hover{text-decoration:underline}

/* Логотип и надпись iVStore ведут на главную.
   `.iv-home-link a` (0,1,1) сравнялось бы с `.elementor-kit-210 a` и проиграло
   по порядку, поэтому селектор усилен до (0,2,1). */
.elementor-widget.iv-home-link a{color:inherit;text-decoration:none;transition:opacity .2s ease}
.elementor-widget.iv-home-link a:hover,
.elementor-widget.iv-home-link a:focus,
.elementor-widget.iv-home-link a:visited{color:inherit}
.elementor-widget.iv-home-link a:hover{opacity:.82}
.elementor-widget.iv-home-link a:focus-visible{outline:3px solid var(--e-global-color-primary,#A5D400);
  outline-offset:3px;border-radius:4px}
@media(prefers-reduced-motion:reduce){.elementor-widget.iv-home-link a{transition:none}}

/* Надпись iVStore в шапке/подвале.
   Заголовок выводится как <span display:inline> с кеглем 32px внутри строки,
   унаследовавшей line-height 28px от тела. Распорка строки сажает
   глифы на 6px ниже оси шапки, хотя сами контейнеры отцентрованы. */
.elementor-widget.iv-home-link .elementor-heading-title{display:block;line-height:1}
.elementor-widget.iv-home-link{line-height:0}

/* Значки мессенджеров в шапке: текста нет, поэтому ширину задаём явно —
   иначе кнопки получатся разными: глифы Telegram и Discord разной ширины. */
.elementor-widget.iv-hdr-icon .elementor-button{width:46px;height:46px;padding:0;
  display:inline-flex;align-items:center;justify-content:center}
.elementor-widget.iv-hdr-icon .elementor-button-content-wrapper{gap:0;margin:0}
.elementor-widget.iv-hdr-icon .elementor-button-icon{margin:0;width:auto}
.elementor-widget.iv-hdr-icon .elementor-button-text{display:none}

/* Активный пункт меню (iv-active-underline).
   На десктопе текущая страница отличалась только цветом — при дальтонизме
   и на тусклом экране признак теряется. Добавлена подчёркивающая линия. */
.elementor-nav-menu--main .elementor-item.elementor-item-active{position:relative}
.elementor-nav-menu--main .elementor-item.elementor-item-active::after{
  content:'';position:absolute;left:0;right:0;bottom:4px;height:2px;border-radius:2px;
  background:var(--e-global-color-primary,#A5D400)}

/* Выпадающие списки форм.
   Сам список рисует браузер, а не страница: по умолчанию он белый, тогда как
   цвет текста наследуется от тёмного поля — белое по белому в раскрытом виде.
   color-scheme переводит нативный виджет в тёмную тему, явные цвета на option —
   запасной вариант для браузеров, которые его не поддерживают. */
select,.wpforms-container select,.woocommerce select,.iv-form select{color-scheme:dark}
select option,select optgroup,
.wpforms-container select option,.wpforms-container select optgroup{
  background-color:var(--e-global-color-surf1,#141922);
  color:var(--e-global-color-text,#EDF2F8)}
select option:checked,select option:hover{
  background-color:var(--e-global-color-primary,#A5D400);
  color:var(--e-global-color-ongrn,#0B1400)}

/* Наведение в шапке (iv-hdr-hover) — без анимации.
   Отдельной transition-delay тут нет — задержкой ощущалась сама длительность
   перехода плюс подъём кнопки. В шапке всё переведено в мгновенный отклик.
   Elementor Pro даёт пунктам меню (0,2,1), поэтому селекторы ниже — (0,3,1). */
[class*='ivhdrwrap'] .elementor-nav-menu--main .elementor-nav-menu a.elementor-item,
[class*='ivhdrwrap'] .elementor-button,
[class*='ivhdrwrap'] .iv-home-link a{transition:none}
[class*='ivhdrwrap'] .elementor-button:hover,
[class*='ivhdrwrap'] .elementor-button:focus{filter:none;transform:none}
[class*='ivhdrwrap'] .iv-home-link a:hover{transition:none}


/* Плашки платформ: фирменный цвет, мягкое свечение и градиент на слове.
   Каноничные оттенки (PS #0070D1, Xbox #107C10) на фоне #0F131A дают 3.76 и 3.47:
   формально порог для крупного текста пройден, но читается тускло, поэтому
   взяты осветлённые фирменные тона — 6.42 и 8.53. */
.iv-plat-word--pc{--iv-plat-ink:#A5D400;--iv-plat-top:#D2F14E}
.iv-plat-word--ps{--iv-plat-ink:#2E9BFF;--iv-plat-top:#8FCBFF}
.iv-plat-word--xbox{--iv-plat-ink:#3EC93E;--iv-plat-top:#8BE88B}
/* градиентная заливка убрана: -webkit-text-fill-color делал текст
   прозрачным, а градиент перебивался — слово исчезало целиком */


/* Свечение вокруг начертания платформы.
   Сначала свечение делалось фоном медиа-блока, но Elementor не выводит
   _css_classes на этом вложенном контейнере — класс есть в данных, но не в DOM.
   text-shadow рисуется позади глифов, не трогает раскладку и не гасит текст. */
.iv-plat-word .elementor-heading-title{transition:none}
.iv-plat-word--pc .elementor-heading-title{text-shadow:0 0 26px rgba(165,212,0,.34)}
.iv-plat-word--ps .elementor-heading-title{text-shadow:0 0 26px rgba(46,155,255,.45)}
.iv-plat-word--xbox .elementor-heading-title{text-shadow:0 0 26px rgba(62,201,62,.40)}
@media(max-width:767px){
  .iv-plat-word .elementor-heading-title{text-shadow:0 0 18px rgba(0,0,0,0)}
  .iv-plat-word--pc .elementor-heading-title{text-shadow:0 0 18px rgba(165,212,0,.30)}
  .iv-plat-word--ps .elementor-heading-title{text-shadow:0 0 18px rgba(46,155,255,.40)}
  .iv-plat-word--xbox .elementor-heading-title{text-shadow:0 0 18px rgba(62,201,62,.36)}
}

/* Названия платформ в карточках — главный ориентир после удаления заголовка */
.iv-plat-desc strong{color:var(--e-global-color-text,#EDF2F8);font-weight:700}

/* Пометка об активном фильтре каталога. */
.iv-catfilter{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;
  margin:0 0 22px;padding:12px 16px;border-radius:12px;
  background:var(--e-global-color-surf1,#141922);
  border-left:3px solid var(--e-global-color-primary,#A5D400);
  font:400 15px/1.4 Onest,sans-serif;color:var(--e-global-color-muted,#93A0B2)}
.iv-catfilter strong{color:var(--e-global-color-text,#EDF2F8);font-weight:700}
a.iv-catfilter__reset{margin-left:auto;color:var(--e-global-color-primary,#A5D400);
  font-weight:700;text-decoration:none}
a.iv-catfilter__reset:hover{text-decoration:underline}

/* Значковые панели товаров — тот же язык, что у карточек платформ. */
.iv-ppanel{display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:clamp(6px,2.4%,12px);
  width:100%;aspect-ratio:16/10;background:var(--e-global-color-bgalt,#0F131A);
  border-radius:inherit;overflow:hidden;position:relative;
  padding-inline:clamp(8px,5%,14px)}
.iv-ppanel__row{display:flex;align-items:center;justify-content:center;
  gap:clamp(8px,5%,22px);width:100%}
/* Подпись всегда две строки — иначе карточки в ряду расходятся по высоте. */
.iv-ppanel__sub{display:flex;flex-direction:column;align-items:center;gap:2px;
  font:600 17px/1.5 Onest,sans-serif;letter-spacing:.2px;color:#AEB9C9;text-align:center;
  max-width:100%}
.iv-ppanel__sub > span{display:block;white-space:nowrap}
.iv-ppanel__sub > .iv-ppanel__subrow{display:flex;align-items:center;justify-content:center;gap:.7em}
.iv-ppanel__sep{display:block;width:1px;height:1.05em;flex:0 0 auto;
  background:currentColor;opacity:.45}
/* Потолок подобран под самую длинную надпись (XBOX ONE) на самой узкой
   панели (каталог, 265px). container-type здесь нельзя: contain:inline-size
   обнуляет вклад содержимого и галерея товара схлопывается на мобильном. */
.iv-ppanel__plat{font:800 clamp(18px,3.4vw,26px)/1.1 Onest,sans-serif;letter-spacing:-1px;
  white-space:nowrap;color:var(--iv-pp-ink)}
/* равные боксы: у значков Font Awesome разная ширина,
   без фиксации надпись уезжает из центра панели */
.iv-ppanel__ico{display:inline-flex;align-items:center;justify-content:center;
  width:1.45em;flex:0 0 auto;font-size:clamp(15px,3vw,24px);
  color:#AEB9C9;opacity:.95}
/* Цвет значка подобран под то, что на нём изображено,
   и не зависит от консоли. */
.iv-ppanel__ico--cash{color:#3FC77A}
.iv-ppanel__ico--power{color:#FF4D4D}
.iv-ppanel__ico--acc{color:#F0A868}
.iv-ppanel__ico i{line-height:1}
.iv-ppanel__svg{width:1.25em;height:1.25em;display:block}
.iv-ppanel--pc{--iv-pp-ink:#A5D400}
.iv-ppanel--ps4{--iv-pp-ink:#2E9BFF}
.iv-ppanel--ps5{--iv-pp-ink:#2E9BFF}
.iv-ppanel--xbone{--iv-pp-ink:#3EC93E}
.iv-ppanel--xbsx{--iv-pp-ink:#3EC93E}
/* Панель — div, а не <img>, поэтому у неё нет собственной ширины.
   На мобильном колонка галереи становится display:contents, виджет падает
   в flex-ряд напрямую и ужимается по содержимому до ~175px вместо 299. */
@media (max-width:767px){
  .elementor-widget-woocommerce-product-images{width:100%}
}
/* Крупные панели — страница товара (465px) и карточки хитов (350px).
   Потолки общего правила подобраны под узкую карточку каталога (265px),
   здесь места больше. container-type применять нельзя — см. выше. */
/* 44px — размер из секции «Выберите свою платформу». */
.woocommerce-product-gallery .iv-ppanel__plat,
.elementor-widget-shortcode .iv-ppanel__plat{font-size:44px}
.woocommerce-product-gallery .iv-ppanel__ico,
.elementor-widget-shortcode .iv-ppanel__ico{font-size:34px}
/* «XBOX ONE» на 44px шире 224px — с двумя значками ряд требует ~366px,
   что влезает только в панель страницы товара (437px внутри). */
.elementor-widget-shortcode .iv-ppanel--wide .iv-ppanel__plat{font-size:30px}
@media (max-width:767px){
  .woocommerce-product-gallery .iv-ppanel--wide .iv-ppanel__plat,
  .elementor-widget-shortcode .iv-ppanel--wide .iv-ppanel__plat{font-size:26px}
  /* Узкая карточка каталога в две колонки — всего ~142px внутри. */
  .products .iv-ppanel__sub{font-size:15px}
  .products .iv-ppanel__subrow{gap:.3em}
  .products .iv-ppanel{padding-inline:6px}
  .woocommerce-product-gallery .iv-ppanel--wide .iv-ppanel__ico,
  .elementor-widget-shortcode .iv-ppanel--wide .iv-ppanel__ico{font-size:22px}
}
.woocommerce-product-gallery .iv-ppanel__sub,
.elementor-widget-shortcode .iv-ppanel__sub{font-size:20px}
.woocommerce-product-gallery .iv-ppanel,
.elementor-widget-shortcode .iv-ppanel{gap:clamp(12px,5%,22px)}

/* Полоса под картинкой. WooCommerce ставит .woocommerce-product-gallery
   margin-bottom:3.706325903em — на этом шаблоне 34px. В колонке товара сразу
   за галереей идут ячейки преимуществ, а между собой они стоят вплотную
   (gap:0), поэтому эти 34px читались как пустая полоса внизу коробки
   изображения — и у панелей, и у фотографий фигурок.
   Пропорция панели специально не переопределяется: базовые 16:10 и
   кегли 44/30/20px из правил выше — 3:4 оказался слишком крупным. */
.woocommerce-product-gallery,
body.woocommerce-js div.product div.images.woocommerce-product-gallery,
.woocommerce div.product div.images.woocommerce-product-gallery{margin-bottom:0}

/* Сдвиг макета в аккордеоне (CLS). Elementor отдаёт все панели закрытыми
   (aria-expanded="false" у всех шести, ни одного .elementor-active), а потом JS
   открывает первую — и 136px внезапно раздвигают всё, что ниже. Открываем
   первую панель сразу в CSS: конечное состояние то же самое, но высота
   зарезервирована с первого кадра. Клики работают как раньше: jQuery пишет
   inline-стиль, который перебивает это правило. */
.elementor-accordion .elementor-accordion-item:first-child > .elementor-tab-content{display:block}

/* Пустота под ответом. Тема ставит <p> margin-bottom 28.9px, а у самой
   панели ещё padding-bottom 22px — они складываются, и под последней
   строкой оставалось 56px ничего против 25px между вопросом и ответом.
   Снимаем хвостовой отступ последнего блока — остаётся 27px, симметрично
   верху. Между абзацами отступ сохраняется — правило только для last-child. */
.elementor-accordion .elementor-tab-content > *:last-child{margin-bottom:0}

/* Центрирование текста в панелях. Значок у Elementor — float:right, и один
   text-align:center центрировал бы строку в остатке ширины рядом с флоатом,
   то есть со сдвигом влево на половину значка (~13px). Поэтому значок
   выводится из потока и прижимается вправо абсолютно — тогда текст
   центрируется по всей ширине строки. */
/* padding-inline:54px — значок абсолютен и больше не занимает места в потоке,
   поэтому на 375px центрированный вопрос в две строки заезжал под него.
   Значок занимает 26px при right:24px, то есть до 50px от правого края —
   54px дают его ширину плюс зазор, а симметричное значение слева
   сохраняет честный центр. */
/* Класс удвоен: отступы заданы в post-239.css селектором вида
   .elementor-239 .elementor-element-XXX .elementor-tab-title — это (0,3,0),
   и одинарный .elementor-accordion .elementor-tab-title (0,2,0) ему проигрывает.
   Удвоение даёт такую же (0,3,0), а legal.css подключается позже — побеждает порядок. */
.elementor-accordion .elementor-tab-title.elementor-tab-title{
  position:relative;text-align:center;
  /* !important — Elementor пишет отступы селектором вида
     .elementor-239 .elementor-element-XXX .elementor-accordion .elementor-tab-title,
     это (0,4,0) и бьёт любой разумный селектор отсюда. Остальные
     свойства в этом же правиле применяются без него. */
  padding-left:54px !important;padding-right:54px !important}
.elementor-accordion .elementor-tab-title .elementor-accordion-icon{
  float:none;position:absolute;right:24px;top:50%;
  transform:translateY(-50%);margin:0}
.elementor-accordion .elementor-tab-content{text-align:center}
/* если ответ упрётся в меру 880px — центрируем сам блок, иначе он прижмётся влево */
.elementor-accordion .elementor-tab-content p{margin-inline:auto}

/* На 375px 54px с каждой стороны съедают 108px из ~327px ширины, и часть
   вопросов переходит на три строки — ряды расходятся по высоте (77 и 95).
   На мобильном прижимаем значок ближе к краю и сокращаем отступ: значок
   26px при right:12px занимает до 38px, так что 40px его перекрывают с запасом. */
@media(max-width:767px){
  .elementor-accordion .elementor-tab-title.elementor-tab-title{
    padding-left:40px !important;padding-right:40px !important}
  .elementor-accordion .elementor-tab-title .elementor-accordion-icon{right:12px}
}

/* Мера строки. В боксовом контейнере 1240px текст растягивался на всю
   ширину: измерено 77–100 знаков в строке (/pc/ FAQ — 100, /about/ — 90,
   /guarantees/ — 77) при комфортном диапазоне 45–75. На такой длине глаз
   теряет начало следующей строки на возврате.
   880px — та же мера, что уже используется на правовых страницах, так что
   сайт остаётся на одной шкале. margin-inline не трогаем: весь затронутый
   текст выровнен влево (центрованных абзацев шире 880px на сайте нет),
   поэтому абзацы остаются вровень со своими заголовками. max-width только
   сужает, поэтому узкие абзацы в карточках не затрагиваются. */
/* 880px оказались велики: длинный абзац набирал до 96–118 знаков
   в строке — вдвое больше комфортной меры. 680px держит строку в районе
   79 знаков и совпадает с шириной текстовых колонок в двухколонниках (614px),
   поэтому шапка и тело страницы больше не расходятся. */
.elementor-widget-text-editor p,
.elementor-accordion .elementor-tab-content p{max-width:680px}

/* Фото товара сняты на тёмном фоне, почти совпадающем с фоном сайта
   (#0B0E13), поэтому край картинки не читался: на странице товара
   изображение лежит прямо на фоне без карточки. Фирменная зелёная
   рамка в 1px даёт границу, радиус смягчает углы. 18px — чуть мягче
   карточек (14px), чтобы фото читалось как отдельный объект.
   box-sizing:border-box — flexslider задаёт ширину инлайном в px, и без
   него рамка добавила бы 2px к каждому слайду. */
.woocommerce-product-gallery__image,
.woocommerce-product-gallery__image img{
  border-radius:18px;
  box-sizing:border-box}
.woocommerce-product-gallery__image{overflow:hidden}
.woocommerce-product-gallery__image img{
  border:1px solid var(--e-global-color-primary,#A5D400)}

/* Миниатюры — тот же язык, но радиус меньше: на 113px квадрате 18px
   съедают угол целиком. Неактивные приглушены, активная — в полный цвет. */
.flex-control-thumbs img{
  border-radius:12px;
  box-sizing:border-box;
  border:1px solid rgba(165,212,0,.35)}
.flex-control-thumbs img.flex-active,
.flex-control-thumbs img:hover{
  border-color:var(--e-global-color-primary,#A5D400)}

/* Значковые панели — это и есть картинка товара для услуг, так что
   обработка та же — и на странице товара, и в каталоге, и на Главной.
   У .iv-ppanel в legal.css стоит border-radius:inherit — явное значение его перекрывает. */
.iv-ppanel{
  border-radius:18px;
  box-sizing:border-box}
/* Зелёная рамка — только там, где панель заменяет фото товара: страница
   товара и плитка каталога. На Главной панели вставлены шорткодом
   в собственную секцию — там рамка лишняя. Скругление остаётся везде. */
.woocommerce-product-gallery .iv-ppanel,
.woocommerce-LoopProduct-link .iv-ppanel{
  border:1px solid var(--e-global-color-primary,#A5D400)}

/* Ритм текста в карточке товара. Astra даёт категории margin-bottom 7.5px,
   а заголовку — ноль, поэтому цена прилипает к названию вплотную:
   измеренные зазоры были 12 / 0 / 16px — три строки с разным дыханием.
   Ровные 12 между текстовыми строками и больший отступ перед кнопкой читаются
   как один блок текста плюс действие. */
.astra-shop-summary-wrap .ast-loop-product__link,
.astra-shop-summary-wrap .woocommerce-loop-product__title{margin-bottom:12px}

/* FAQ-аккордеоны (Главная, PC, PlayStation, Xbox).
   Строка была блочной: значок и текст сходились на базовой линии,
   а не центрировались — отсюда расхождение по высоте. */
body .elementor-widget-accordion .elementor-tab-title{
  display:flex;align-items:center;gap:18px;text-align:left!important;line-height:1.35}
body .elementor-widget-accordion .elementor-accordion-title{
  flex:1 1 auto;min-width:0;text-align:left!important}
.elementor-widget-accordion .elementor-tab-title .elementor-accordion-icon{
  flex:0 0 auto;display:flex;align-items:center;justify-content:center;
  width:auto;float:none;margin:0;line-height:1;align-self:center}
.elementor-widget-accordion .elementor-accordion-icon svg,
.elementor-widget-accordion .elementor-accordion-icon i{display:block;line-height:1}
/* значок в DOM идёт первым — в flex его нужно переставить явно */
.elementor-widget-accordion .elementor-accordion-icon-right{order:2}
.elementor-widget-accordion .elementor-accordion-icon-left{order:0}
/* У Elementor верхний отступ ответа равен нулю, а нижний — 22px:
   текст прижимается к разделительной линии. Уравниваем. */
body .elementor-widget-accordion .elementor-tab-content{
  text-align:left!important;padding-left:54px!important;padding-right:54px!important;
  padding-top:22px!important;padding-bottom:22px!important}
@media (max-width:767px){
  body .elementor-widget-accordion .elementor-tab-content{padding-left:40px!important;padding-right:40px!important}
}

/* Контактный ряд под CTA: три контейнера размером по содержимому,
   поэтому на планшете кнопки получаются разной ширины (153/142/129).
   Elementor на этой сборке не выводит flex-grow, поэтому равняем их здесь. */
@media (min-width:768px) and (max-width:1024px){
  .elementor-element-8cd8502 > .e-con{flex:1 1 0;min-width:0;max-width:240px}
}

/* Растяжка обёрток кнопок на узких экранах.
   У этих шести кнопок родительский контейнер стоит в align-items:center
   или flex-start, поэтому обёртка виджета ужимается по тексту, и выравнивание
   justify считает 100% от этой ужатой обёртки, а не от колонки. */
@media (max-width:1024px){
  .elementor-element-5234634,
  .elementor-element-81bce35,
  .elementor-element-899aae1,
  .elementor-element-208a05b,
  .elementor-element-cef128d,
  .elementor-element-ed6dc18,
  .elementor-element-1081935,
  .elementor-element-5a928a5,
  .elementor-element-fdf7e76{align-self:stretch;width:100%;max-width:100%}
}

/* Колонка героя держит padding-right:13px вместо настоящего gap — на десктопе
   это зазор между двумя кнопками, но когда они встают друг под другом,
   первая кнопка оказывается на 13px уже второй. */
@media (max-width:1024px){
  .elementor-element-c9da780,
  .elementor-element-9a35d55{padding-right:0!important}
}

/* Потолок ширины кнопки на планшете.
   Выравнивание justify даёт симметрию, но в широкой одиночной колонке
   растягивает кнопку до 700px. Ограничиваем и центрируем:
   в узких колонках (240-350px) потолок не срабатывает и кнопка заполняет колонку. */
@media (min-width:768px) and (max-width:1024px){
  .elementor-element-5234634 .elementor-button,
  .elementor-element-81bce35 .elementor-button,
  .elementor-element-899aae1 .elementor-button,
  .elementor-element-208a05b .elementor-button,
  .elementor-element-cef128d .elementor-button,
  .elementor-element-ed6dc18 .elementor-button,
  .elementor-element-c0f0474 .elementor-button,
  .elementor-element-a04c816 .elementor-button,
  .elementor-element-f5d3b9c .elementor-button,
  .elementor-element-e5bf963 .elementor-button,
  .elementor-element-fad17b2 .elementor-button,
  .elementor-element-b25cdb9 .elementor-button,
  .elementor-element-d1e4ab2 .elementor-button,
  .elementor-element-b92927b .elementor-button,
  .elementor-element-9f188e2 .elementor-button,
  .elementor-element-ffe7d08 .elementor-button,
  .elementor-element-a5ce547 .elementor-button,
  .elementor-element-80a14b5 .elementor-button,
  .elementor-element-8f57595 .elementor-button,
  .elementor-element-e6e2ecf .elementor-button,
  .elementor-element-7675e40 .elementor-button,
  .elementor-element-dea86a8 .elementor-button,
  .elementor-element-cbf2043 .elementor-button,
  .elementor-element-1081935 .elementor-button,
  .elementor-element-5a928a5 .elementor-button,
  .elementor-element-fdf7e76 .elementor-button{max-width:340px;margin-inline:auto;display:block}
}

/* Галерея фигурки: главное фото и миниатюры. */
.ivfg{display:flex;flex-direction:column;gap:12px}
.ivfg__main{display:block;border-radius:14px;overflow:hidden;background:var(--e-global-color-bgalt,#0F131A);
  aspect-ratio:3/4;line-height:0}
.ivfg__img{width:100%;height:100%;object-fit:cover;display:block}
.ivfg__thumbs{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,1fr));gap:8px}
.ivfg__thumb{padding:0;border:2px solid transparent;border-radius:10px;overflow:hidden;
  background:none;cursor:pointer;line-height:0;transition:none;aspect-ratio:1/1}
.ivfg__thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ivfg__thumb:hover,.ivfg__thumb:focus-visible{border-color:var(--e-global-color-primary,#A5D400);outline:none}
.ivfg__thumb.is-active{border-color:var(--e-global-color-primary,#A5D400)}
@media (max-width:767px){
  .ivfg__thumbs{grid-template-columns:repeat(auto-fill,minmax(56px,1fr));gap:6px}
}

/* Галка согласия на обработку ПДн.
   Штатный чекбокс WPForms рисуется псевдоэлементом с рамкой #232B38 —
   на тёмном фоне это 1.36:1, поле практически не видно, а в отмеченном
   состоянии заливка не меняется и галочки нет. Для обязательного юридического
   поля это недопустимо, поэтому перерисовываем его здесь. */
.iv-consent input[type=checkbox]{position:relative}
.iv-consent input[type=checkbox]::before{
  background:#141922!important;border:1.5px solid #6B7A90!important;border-radius:5px!important}
.iv-consent input[type=checkbox]:hover::before{border-color:#8C99AC!important}
.iv-consent input[type=checkbox]:checked::before{
  background:#A5D400!important;border-color:#A5D400!important}
/* сама галочка — две грани повёрнутого прямоугольника */
.iv-consent input[type=checkbox]:checked::after{
  content:'';position:absolute;left:5px;top:1px;width:4px;height:9px;
  border-style:solid!important;border-color:#0B1400!important;
  border-width:0 2px 2px 0!important;transform:rotate(45deg);
  background:none!important;border-radius:0!important}
.iv-consent input[type=checkbox]:focus-visible::before{
  outline:2px solid #A5D400!important;outline-offset:2px}
/* подпись и ссылки под ней */
.iv-consent .wpforms-field-description{margin-top:6px}

/* Равные колонки в карточных сетках Главной.
   Жёлоб был сделан односторонними отступами: крайние карточки теряли 13px,
   средние — 26px. При равной внешней ширине поле под текст отличалось,
   и одинаковый по длине текст ломался на разное число строк.
   gap здесь нельзя: ширины фиксированные и сумма почти равна ряду — карточки бы перенеслись. */
.elementor-element-cb0af3d > .e-con,
.elementor-element-4b96dbd > .e-con,
.elementor-element-3fcccf6 > .e-con,
.elementor-element-4ea3cf2 > .e-con,
.elementor-element-6588592 > .e-con,
.elementor-element-205090e > .e-con{padding-left:13px!important;padding-right:13px!important}

/* Фигурки → «Как мы делаем»: кадры процесса в карточках.
   Снимки с телефона могут прийти с разными пропорциями, поэтому кадр жёстко 4:5 —
   иначе карточки в ряду разойдутся по высоте медиаблока.
   Класс висит на виджете изображения, а не на контейнере: Elementor в этой
   сборке не выводит _css_classes для контейнеров. */
.ivproc__img .elementor-widget-container,
.ivproc__img figure,
.ivproc__img .elementor-image{margin:0;line-height:0}
.ivproc__img img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:0}


/* Свечение вокруг названия платформы на карточках товара — то же, что
   в секции «Выберите свою платформу». Радиус в em, а не в px: одна и та ж
   панель набирается от 18px в каталоге до 44px на странице товара,
   и фиксированный радиус на мелком тексте расползался бы в пятно.
   0.6em даёт те же 26px на 44px начертании, что и на главной. */
.iv-ppanel--pc .iv-ppanel__plat{text-shadow:0 0 .6em rgba(165,212,0,.34)}
.iv-ppanel--ps4 .iv-ppanel__plat,
.iv-ppanel--ps5 .iv-ppanel__plat{text-shadow:0 0 .6em rgba(46,155,255,.45)}
.iv-ppanel--xbone .iv-ppanel__plat,
.iv-ppanel--xbsx .iv-ppanel__plat{text-shadow:0 0 .6em rgba(62,201,62,.40)}


/* Вводный абзац в шапке — во всю колонку, как блок ниже.
   Общая мера в 680px для остального текста остаётся. */
.iv-lead-wide p{max-width:none}


/* Полоса преимуществ на мобильном.
   На широком экране ячейки стоят в четырёх колонках и перекоса не видно.
   На узком они вытягиваются в столбик, и вылезает расхождение: текст внутри
   выровнен по центру своего блока в 281px, а иконка прибита к левому краю.
   Сжимаем блок до содержимого, но группу оставляем у левого края:
   иконки должны стоять по одной линии, как на широком экране. При центровании
   каждая пара вставала по своей ширине текста, и левый край шёл лесенкой.
   Цепляемся за data-id, а не за свой класс: Elementor не выводит _css_classes
   на вложенных контейнерах — класс остаётся в данных, но в DOM не попадает.
   Нижний отступ ячейки переезжает в gap полосы: иначе коробка ячейки
   на 20px выше своего содержимого, и иконка читается как смещённая вверх. */
@media(max-width:767px){
  [data-id="232b0e5"]{row-gap:20px}
  [data-id="232b0e5"] > .e-con{justify-content:flex-start;padding-bottom:0}
  [data-id="232b0e5"] > .e-con > .e-con,
  [data-id="232b0e5"] > .e-con > .elementor-widget{width:auto;flex:0 1 auto}
}


/* Колонки подвала на мобильном.
   На широком экране они стоят в ряд, и междустрочный зазор не нужен.
   На узком колонки переносятся в столбик и слипаются: заголовок следующей
   группы встаёт вплотную к последней ссылке предыдущей — границы групп теряются.
   Цепляемся за data-id: Elementor не выводит _css_classes на вложенных контейнерах. */
@media(max-width:767px){
  [data-id="34e5fd3"]{row-gap:34px}
}


/* ————————— Сведения об оплате и знаки приёма —————————
   Заголовки удвоены: набор Elementor задаёт h2 селектором весом 0-1-1
   и перебивает одиночный класс — тот же капкан, что на страницах возврата. */
.iv-payinfo{max-width:720px;font:400 17px/1.65 Onest,sans-serif;
  color:var(--e-global-color-muted,#93A0B2)}
.iv-payinfo > :first-child{margin-top:0}
.iv-payinfo p{margin:0 0 14px}
.iv-payinfo a{color:var(--e-global-color-primary,#A5D400)}
.iv-payinfo__warn{margin:0 0 28px;padding:16px 20px;border-radius:12px;
  background:rgba(255,144,97,.10);border:1px solid var(--e-global-color-hotac,#FF9061);
  color:var(--e-global-color-text,#EDF2F8);font-size:16px}
.iv-payinfo__h.iv-payinfo__h{margin:36px 0 14px;font-family:Onest,sans-serif;
  font-size:20px;font-weight:700;line-height:1.3;color:var(--e-global-color-text,#EDF2F8)}
.iv-payinfo__methods{display:flex;flex-wrap:wrap;gap:14px;margin:0 0 8px}
.iv-payinfo__m{flex:1 1 260px;display:grid;grid-template-columns:72px 1fr;
  gap:4px 16px;padding:16px 18px;border-radius:12px;
  background:var(--e-global-color-surf1,#141922);
  border:1px solid var(--e-global-color-bordr,#232B38)}
.iv-payinfo__m img,.iv-payinfo__word{grid-row:1 / 3;align-self:center;
  width:72px;height:72px}
.iv-payinfo__m img{object-fit:contain}
.iv-payinfo__word{display:flex;align-items:center;justify-content:center;
  border-radius:10px;background:var(--e-global-color-surf2,#1A202B);
  font:800 18px/1 Onest,sans-serif;color:var(--e-global-color-text,#EDF2F8)}
.iv-payinfo__m b{align-self:end;font:700 17px/1.3 Onest,sans-serif;
  color:var(--e-global-color-text,#EDF2F8)}
.iv-payinfo__m span:last-child{align-self:start;font-size:15px;line-height:1.5}
.iv-payinfo__m--nologo{grid-template-columns:1fr;align-content:center}
.iv-payinfo__steps{margin:0;padding-left:22px;font-size:17px}
.iv-payinfo__steps li{margin-bottom:10px}

/* Знаки приёма в подвале. Знак МИР — готовое белое начертание из
   фирменного пакета НСПК: перекрашивать или фильтровать его нельзя. */
.iv-marks{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;margin-top:16px}
.iv-marks__label{font:400 15px/1.4 Onest,sans-serif;color:var(--e-global-color-dimtx,#8A94A6)}
.iv-marks__item{display:inline-flex;line-height:0}
.iv-marks__item img{width:56px;height:56px;object-fit:contain}
.iv-marks__note{font:400 15px/1.4 Onest,sans-serif;color:var(--e-global-color-hotac,#FF9061)}
@media(max-width:600px){
  .iv-payinfo__m{grid-template-columns:56px 1fr}
  .iv-payinfo__m img,.iv-payinfo__word{width:56px;height:56px}
}


/* Знаки платёжных систем — размер по высоте.
   МИР — широкое начертание 400×114, СБП — почти квадратная эмблема 42×49.
   В общем квадратном боксе они читались бы разным весом, поэтому
   высоты подобраны отдельно. Перекрашивать знаки нельзя. */
/* Ширина задана через родителя: прежние правила вида
   `.iv-marks__item img` весят 0-1-1 и перебивают одиночный класс. */
.iv-mark{object-fit:contain;flex:0 0 auto}
.iv-marks .iv-mark{width:auto}
.iv-payinfo__m .iv-mark{width:auto}
.iv-marks .iv-mark--mir{height:24px}
.iv-marks .iv-mark--sbp{height:30px}
.iv-payinfo__m .iv-mark--mir{height:34px}
.iv-payinfo__m .iv-mark--sbp{height:44px}
.iv-payinfo__m{grid-template-columns:104px 1fr}
.iv-payinfo__m .iv-mark{justify-self:start}
@media(max-width:600px){.iv-payinfo__m{grid-template-columns:88px 1fr}}

/* Шапка: логотип и надпись iVStore это одна ссылка, а не три.
   Раньше картинка, «iV» и «Store» были тремя отдельными <a> на главную:
   PageSpeed справедливо ругался на мелкие и слипшиеся области нажатия —
   между «iV» и «Store» зазор был нулевой. Теперь ссылкой стал сам контейнер
   (html_tag=a у a875e50), поэтому цель одна и её размер 191×56.
   Селектор (0,2,0) перебивает `.elementor-kit-210 a` (0,1,1) по числу
   классов, иначе тема перекрасила бы всю связку в цвет ссылок. */
.e-con.iv-home-link-wrap{color:inherit;text-decoration:none;transition:opacity .2s ease}
.e-con.iv-home-link-wrap:hover,
.e-con.iv-home-link-wrap:focus,
.e-con.iv-home-link-wrap:visited{color:inherit}
.e-con.iv-home-link-wrap:hover{opacity:.82}
.e-con.iv-home-link-wrap:focus-visible{outline:3px solid var(--e-global-color-primary,#A5D400);
  outline-offset:3px;border-radius:4px}
@media(prefers-reduced-motion:reduce){.e-con.iv-home-link-wrap{transition:none}}
