/* =============================================================================
   vidwidget.ru: свои стили поверх замороженного elementor.css.

   elementor.css сгенерирован из CSS прежнего сайта и руками не правится.
   Всё, что сайту понадобилось сверх него, живёт здесь: шрифты с собственного
   домена, состояния, которые раньше ставили скрипты SmartMenus и Elementor
   (подменю), ловушка для ботов в формах и кнопка регистрации партнёров.
   ========================================================================== */

/* --- Шрифты -----------------------------------------------------------------
   PT Sans и PT Serif прежде шли с Google Fonts. Теперь свои файлы, те же
   наборы знаков (unicode-range) и начертания 400/700 с курсивом: без
   внешнего запроса на каждой странице и без передачи IP посетителя в Google.
   ⚠ Имена файлов обязаны совпадать с preload в inc/layout.php. */

@font-face {
    font-family: 'PT Sans';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/pt-sans-400-cyrillic-ext.woff2') format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
    font-family: 'PT Sans';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/pt-sans-400-cyrillic.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: 'PT Sans';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/pt-sans-400-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'PT Sans';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/pt-sans-400-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'PT Sans';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/pt-sans-700-cyrillic-ext.woff2') format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
    font-family: 'PT Sans';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/pt-sans-700-cyrillic.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: 'PT Sans';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/pt-sans-700-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'PT Sans';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/pt-sans-700-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'PT Sans';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/pt-sans-400-italic-cyrillic-ext.woff2') format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
    font-family: 'PT Sans';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/pt-sans-400-italic-cyrillic.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: 'PT Sans';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/pt-sans-400-italic-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'PT Sans';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/pt-sans-400-italic-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'PT Sans';
    font-style: italic;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/pt-sans-700-italic-cyrillic-ext.woff2') format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
    font-family: 'PT Sans';
    font-style: italic;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/pt-sans-700-italic-cyrillic.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: 'PT Sans';
    font-style: italic;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/pt-sans-700-italic-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'PT Sans';
    font-style: italic;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/pt-sans-700-italic-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'PT Serif';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/pt-serif-400-cyrillic-ext.woff2') format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
    font-family: 'PT Serif';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/pt-serif-400-cyrillic.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: 'PT Serif';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/pt-serif-400-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'PT Serif';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/pt-serif-400-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'PT Serif';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/pt-serif-700-cyrillic-ext.woff2') format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
    font-family: 'PT Serif';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/pt-serif-700-cyrillic.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: 'PT Serif';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/pt-serif-700-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'PT Serif';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/pt-serif-700-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'PT Serif';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/pt-serif-400-italic-cyrillic-ext.woff2') format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
    font-family: 'PT Serif';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/pt-serif-400-italic-cyrillic.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: 'PT Serif';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/pt-serif-400-italic-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'PT Serif';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/pt-serif-400-italic-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'PT Serif';
    font-style: italic;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/pt-serif-700-italic-cyrillic-ext.woff2') format('woff2');
    unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
@font-face {
    font-family: 'PT Serif';
    font-style: italic;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/pt-serif-700-italic-cyrillic.woff2') format('woff2');
    unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
@font-face {
    font-family: 'PT Serif';
    font-style: italic;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/pt-serif-700-italic-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'PT Serif';
    font-style: italic;
    font-weight: 700;
    font-display: swap;
    src: url('../fonts/pt-serif-700-italic-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* Иконки: Font Awesome 5 (solid) и eicons Elementor, урезанные до знаков,
   которые есть на сайте (галочки, стрелки, календарь, плюс, бургер и
   крестик меню). Добавили на страницу новую иконку: пересоберите шрифт из
   полного файла плагина, иначе на её месте будет пусто.
   Font Awesome Free: шрифт по лицензии SIL OFL 1.1. block: пока шрифт не
   пришёл, вместо иконки пусто, а не символ из чужого шрифта. */
@font-face {
    font-family: 'Font Awesome 5 Free';
    font-style: normal;
    font-weight: 900;
    font-display: block;
    src: url('../fonts/fa-solid-900-subset.woff2') format('woff2');
}
@font-face {
    font-family: 'eicons';
    font-style: normal;
    font-weight: 400;
    font-display: block;
    src: url('../fonts/eicons-subset.woff2') format('woff2');
}

/* --- Меню шапки (замена SmartMenus) -----------------------------------------
   Подменю открывает site.js классом highlighted на ссылке-родителе. Размеры и
   положение: то, что SmartMenus писал подменю в атрибут style. Вложенное
   подменю («Применение») стоит справа от пункта, вровень с ним; если не
   помещается в окно, site.js переносит его влево (vw-sub-left). */

.elementor-nav-menu a.highlighted + .sub-menu {
    display: block;
}
.elementor-nav-menu--main .elementor-nav-menu .sub-menu {
    width: auto;
    min-width: 10em;
    max-width: 1000px;
    top: auto;
    left: 0;
    margin-left: 0;
    margin-top: 0;
}
.elementor-nav-menu--main .elementor-nav-menu .sub-menu .sub-menu {
    top: 0;
    left: 100%;
}
.elementor-nav-menu--main .elementor-nav-menu .sub-menu .sub-menu.vw-sub-left {
    left: auto;
    right: 100%;
}
/* Пункты-раскрыватели без адреса: курсор как у ссылки (SmartMenus вешал обработчик). */
.elementor-nav-menu a.has-submenu {
    cursor: pointer;
}
/* «Применение» в шапке был ссылкой без адреса и без tabindex, и правило темы
   a:not([href]):not([tabindex]) красило его в цвет родителя. Теперь у него
   tabindex (до него можно дойти с клавиатуры): цвет задан явно, как был.
   Наведение и раскрытие по-прежнему перекрашивают его правилами шапки. */
.elementor-nav-menu--main .sub-menu a.has-submenu:not([href]) {
    color: inherit;
}
.elementor-menu-toggle:focus-visible {
    outline: 2px solid #fff;
    outline-offset: -4px;
}

/* --- Анимации появления -----------------------------------------------------
   Кто просил систему меньше движения, видит блоки сразу, без «въезда». */

@media (prefers-reduced-motion: reduce) {
    .animated {
        animation: none !important;
    }
}

/* --- Карусели ---------------------------------------------------------------- */

.jet-arrow:focus-visible,
.jet-slick-dots span:focus-visible,
.swiper-pagination-bullet:focus-visible,
.plus-tab-header:focus-visible {
    outline: 2px solid #a34af4;
    outline-offset: 2px;
}

/* --- Формы ------------------------------------------------------------------
   Ловушка для ботов: поле есть в разметке, но человек его не видит. Не
   display:none: часть ботов такие поля пропускает. */

.vw-hp {
    position: absolute !important;
    left: -10000px !important;
    top: auto !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

/* --- /affiliate/: регистрация вместо формы с паролем ------------------------
   Вид кнопки «Отправить» прежней формы: белая рамка и текст на фиолетовой
   колонке, при наведении белая заливка. */

.vw-signup p {
    color: #fff;
    margin-bottom: 20px;
}
.vw-signup__btn,
.vw-signup__btn:visited {
    display: inline-block;
    padding: .5rem 1rem;
    border: 1px solid #fff;
    border-radius: 3px;
    color: #fff;
    background-color: transparent;
    font-size: 1rem;
    line-height: 1.5;
    text-decoration: none;
    transition: all .3s;
}
.vw-signup__btn:hover,
.vw-signup__btn:focus {
    background-color: #fff;
    color: #a34af4;
    text-decoration: none;
}

/* --- Уровни заголовков (SEO) ------------------------------------------------
   На /stories/ «Beta-тест» и «Настройка» были лишними <h1>, на /ref/ заголовок
   страницы был <h2> (h1 не было вовсе). Теги исправлены; тема задаёт h1 и h2
   разные межстрочный интервал и размер, поэтому прежние значения закреплены. */

.elementor-1804 .elementor-element.elementor-element-670f606 h2.elementor-heading-title,
.elementor-1804 .elementor-element.elementor-element-1c021a1 h2.elementor-heading-title {
    line-height: 1.1em;
}
.elementor-1286 .elementor-element.elementor-element-8480ae4 h1.elementor-heading-title {
    line-height: 1;
}
@media (min-width: 768px) {
    .elementor-1286 .elementor-element.elementor-element-8480ae4 h1.elementor-heading-title {
        font-size: 48px;
    }
}

/* --- Примеры кода в инструкциях и статьях -----------------------------------
   На прежнем сайте код показывался только плагином подсветки (/faq/custom-js/).
   В новых инструкциях строка кода виджета: без переноса, с прокруткой, чтобы
   длинный адрес не ломал ширину страницы на телефоне. */

.elementor-widget-theme-post-content pre {
    margin: 0 0 20px;
    padding: 12px 16px;
    border-radius: 6px;
    background: #f4effd;
    color: #33174d;
    font-size: 14px;
    line-height: 1.5;
    white-space: pre;
    overflow-x: auto;
}
