/*
 * Qplaze Studio Custom Styles
 * Стили для основного сайта Qplaze Studio
 * Основан на оригинальном дизайне из public/old_qplaze/css/qplaze.css
 */

/* ============================
   HEADER SECTION
   Стили для шапки сайта
   ============================ */

/* Основная секция шапки */
.header_section {
    height: 203px;
    background-image: url('../images/backgrounds/header_section_ground.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* Текст в шапке */
.header_text {
    font-family: 'Roboto', sans-serif;
    font-weight: 100;
    color: #fff;
    font-size: 22px;
    line-height: 28px;
}

/* Жирный текст в шапке */
.header_text_bold {
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    color: #fff;
    font-size: 22px;
}

/* Главное меню */
.main-menu {
    background-color: #fff;
    border-radius: 0 0 30px 30px;
    font-family: 'Roboto', sans-serif;
    font-weight: 400;
    font-size: 22px;
    line-height: 22px;
}

/* Ссылки в главном меню */
.main-menu a {
    color: black;
}

.main-menu a:hover {
    color: #354a82;
}

.main-menu .nav-link {
    padding-right: 1.3rem !important;
    padding-left: 1.3rem !important;
}

/* Голубая полоска под шапкой */
.header_section_strip {
    height: 34px;
    background-color: #f2f7ff;
}

/* ============================
   RESPONSIVE STYLES FOR HEADER
   Адаптивные стили для шапки
   ============================ */

/* Мобильные устройства */
@media only screen and (min-width: 0px) and (max-width: 767px) {
    .header_section {
        height: 250px;
        background-image: url('../images/backgrounds/header_section_ground.png');
        background-size: cover;
    }

    .header_text {
        font-family: 'Roboto', sans-serif;
        font-weight: 100;
        color: #fff;
        font-size: 22px;
        line-height: 28px;
        text-align: center;
    }
}

/* ============================
   STUDIO SECTION
   Стили для секции Studio
   ============================ */

/* Основной контейнер секции */
.studio_section {
    background-color: #fff;
}

/* Заголовок секции STUDIO */
.studio-section-title {
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    font-size: 36px;
    line-height: 65px;
}

/* Основной текст секции */
.studio-text {
    font-family: 'montserrat', sans-serif;
    font-weight: 500;
    font-size: 17px;
    line-height: 33px;
    text-indent: 1.5em;
}

/* Круглая метка с количеством игр */
.studio-label {
    width: 155px;
    height: 155px;
    border-radius: 50%;
    background-color: #f2f7ff;
    padding-top: 30px;
    margin-top: -15px;
}

/* Число в метке */
.studio-label-count {
    padding-left: 8px;
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    font-size: 48px;
    line-height: 60px;
    color: #234786;
    width: 155px;
    text-align: center;
}

/* Текст под числом в метке */
.studio-label-text {
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    font-size: 13px;
    line-height: 17px;
    color: #000;
    text-transform: uppercase;
    width: 155px;
    text-align: center;
}

/* Заголовок карусели */
.studio-section-carousel-title {
    padding-top: 20px;
    font-family: 'montserrat', sans-serif;
    font-weight: 500;
    font-size: 24px;
    line-height: 55px;
}

/* Ссылка на каталоги */
.studio-link-to-catalogues {
    padding-top: 20px;
    font-family: 'montserrat', sans-serif;
    font-weight: 700;
    font-size: 24px;
    line-height: 55px;
}

.studio-link-to-catalogues a {
    font-size: 30px;
    color: #316dd5;
    text-decoration: none;
}

.studio-link-to-catalogues a:hover {
    text-decoration: underline;
}

/* Контейнер карусели */
.carousel-container {
    padding-left: 20px;
    padding-right: 20px;
}

/* ============================
   RESPONSIVE STYLES FOR STUDIO
   Адаптивные стили для секции Studio
   ============================ */

@media (max-width: 767px) {
    .carousel-container {
        padding-left: 25px;
        padding-right: 25px;
    }
}

@media (min-width: 991px) {
    .carousel-container {
        padding-left: 60px;
        padding-right: 60px;
    }
}

@media (min-width: 1199px) {
    .carousel-container {
        padding-left: 100px;
        padding-right: 100px;
    }
}

@media (max-width: 767px) {
    .studio-section-carousel-title {
        padding-top: 20px;
        font-family: 'montserrat', sans-serif;
        font-weight: 500;
        font-size: 20px;
        line-height: 55px;
    }
    
    .studio-link-to-catalogues {
        padding-top: 16px;
        font-family: 'montserrat', sans-serif;
        font-weight: 700;
        font-size: 16px;
        line-height: 55px;
    }
    
    .studio-link-to-catalogues a {
        font-size: 18px;
        color: #316dd5;
    }
}

/* ============================
   STORES SECTION
   Стили для секции Game Stores
   ============================ */

/* Основной контейнер секции */
.stores-section {
    background-color: #00478d !important;
    background-image: url('../images/backgrounds/room.jpg') !important;
    background-size: cover !important;
    padding: 40px 0 !important;
}

/* Заголовок секции GAME STORES */
.stores-section-title {
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    font-size: 36px;
    line-height: 100px;
    color: #FFF;
}

/* Основной текст секции */
.stores-text {
    text-align: center;
    font-family: 'montserrat', sans-serif;
    font-weight: 500;
    font-size: 20px;
    line-height: 33px;
    color: #FFF;
}

/* Карточки с преимуществами */
.stores-card {
    width: 205px;
    height: 269px;
    background-color: #FFF;
    border-radius: 17px;
    text-align: center;
    font-family: 'montserrat', sans-serif;
    font-weight: 500;
    font-size: 18px;
    line-height: 33px;
    color: #000;
    animation-duration: 0.4s;
}

/* Иконки в карточках */
.stores-card-icon {
    margin-top: 20px;
}

/* Текст в карточках */
.stores-card-text {
    font-weight: 600;
    line-height: 22px;
    font-size: 18px;
}

/* Нижний текст секции */
.stores-bottom-text {
    padding-top: 20px;
    font-family: 'montserrat', sans-serif;
    font-weight: 400;
    font-size: 24px;
    line-height: 45px;
    color: white;
    text-align: center;
}

.stores-bottom-text a {
    font-weight: 700;
    font-size: 30px;
    color: #FFF;
}

.stores-bottom-text-container {
    margin-bottom: 30px;
}

/* ============================
   RESPONSIVE STYLES FOR STORES
   Адаптивные стили для секции Stores
   ============================ */

@media (max-width: 1200px) {
    .stores-card {
        width: 170px;
        height: 269px;
        background-color: #FFF;
        border-radius: 17px;
        text-align: center;
        font-family: 'montserrat', sans-serif;
        font-weight: 500;
        font-size: 18px;
        line-height: 33px;
        color: #000;
        animation-duration: 0.4s;
    }
}

@media (max-width: 991px) {
    .stores-card {
        width: 100%;
        height: 80px;
        background-color: #FFF;
        border-radius: 17px;
        text-align: left;
        font-family: 'montserrat', sans-serif;
        font-weight: 500;
        font-size: 18px;
        line-height: 40px;
        color: #000;
        animation-duration: 0.4s;
    }

    .stores-card-icon {
        margin-top: 15px;
    }

    .stores-card-icon img {
        height: 50px;
    }
    
    .stores-card-text {
        font-weight: 600;
        line-height: 20px;
        font-size: 16px;
    }
    
    .stores-bottom-text {
        padding-top: 20px;
        font-family: 'montserrat', sans-serif;
        font-weight: 400;
        font-size: 20px;
        line-height: 30px;
        color: white;
        text-align: center;
    }

    .stores-bottom-text a {
        font-weight: 700;
        font-size: 24px;
        color: #FFF;
    }
}

/* ============================
   PUBLISHING SECTION
   Стили для секции Publishing
   ============================ */

/* Основной контейнер секции */
.publishing-section {
    background-color: #FFF !important;
    background-image: url('../images/backgrounds/arrows_down.png') !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    padding: 40px 0 !important;
}

/* Заголовок секции PUBLISHING */
.publishing-section-title {
    margin-top: 20px;
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    font-size: 36px;
    line-height: 80px;
    color: #000;
}

/* Подзаголовок */
.publishing-subtitle {
    font-family: 'montserrat', sans-serif;
    font-weight: 600;
    font-size: 24px;
    line-height: 30px;
    color: #000;
    text-align: center;
    margin-bottom: 35px;
}

/* Основной текст */
.publishing-text {
    font-family: 'montserrat', sans-serif;
    font-weight: 500;
    font-size: 17px;
    line-height: 33px;
    text-indent: 1.5em;
}

/* Заголовки опций */
.publishing-options-title {
    font-family: 'montserrat', sans-serif;
    font-weight: 600;
    font-size: 24px;
    line-height: 80px;
    color: #000;
    text-align: center;
}

/* Контейнеры карточек */
.publishing-card-container {
    padding: 25px;
}

/* Карточки с услугами */
.publishing-card {
    background-color: #234786;
    border-radius: 18px;
    height: 133px;
    font-size: 20px;
    color: #FFF;
    text-align: center;
    padding: 15px;
}

/* Секция со шагами (десктоп) */
.publishing-steps-section {
    background-color: #e4eeff !important;
    height: 226px !important;
    padding: 0 !important;
}

.publishing-step {
    height: 226px;
    background: #e4eeff url('../images/backgrounds/step_ground.png') no-repeat right;
}

.publishing-step-1 {
    height: 226px;
    background-image: url('../images/icons/step_1.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left;
}

.publishing-step-2 {
    height: 226px;
    background-image: url('../images/icons/step_2.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left;
}

.publishing-step-3 {
    height: 226px;
    background-image: url('../images/icons/step_3.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left;
}

/* Секция со шагами (мобильная) */
.publishing-steps-section-small {
    background-color: #ffffff !important;
    margin-bottom: 50px !important;
    font-weight: 600;
    padding: 20px 0 !important;
}

.publishing-step-small {
    height: 60px;
    background: #e4eeff url('../images/backgrounds/step_ground.png') no-repeat right;
    border-radius: 18px;
    padding-left: 50px;
    margin-bottom: 6px;
    font-size: 16px;
}

.publishing-step-1-small {
    background-image: url('../images/icons/step_1.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left;
    background-position-x: 10px;
}

.publishing-step-2-small {
    background-image: url('../images/icons/step_2.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left;
    background-position-x: 10px;
}

.publishing-step-3-small {
    background-image: url('../images/icons/step_3.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left;
    background-position-x: 10px;
}

.publishing-step-text {
    font-size: 20px;
    font-weight: 600;
    text-align: center;
    padding-left: 120px;
}

/* ============================
   RESPONSIVE STYLES FOR PUBLISHING
   Адаптивные стили для секции Publishing
   ============================ */

@media (max-width: 1200px) {
    .publishing-card-container {
        padding: 10px;
    }
    
    .publishing-card {
        font-size: 18px;
    }
    
    .publishing-step-text {
        font-size: 16px;
        padding-left: 70px;
    }
}

@media (max-width: 767px) {
    .publishing-options-title {
        font-family: 'montserrat', sans-serif;
        font-weight: 600;
        font-size: 20px;
        line-height: 80px;
        color: #000;
        text-align: center;
    }

    .publishing-card-container {
        padding: 5px;
    }

    .publishing-card {
        background-color: #234786;
        border-radius: 18px;
        height: 80px;
        font-size: 18px;
        color: #FFF;
        text-align: center;
        padding: 10px;
    }
}

/* ============================
   CATALOGUES SECTION
   Стили для секции Catalogues
   ============================ */

/* Основной контейнер секции */
.catalogues-section {
    background-color: #00478d !important;
    background-image: url('../images/backgrounds/chars_bg.jpg') !important;
    background-position: center !important;
    background-size: cover !important;
    padding-bottom: 40px !important;
}

/* Заголовок секции CATALOGUES */
.catalogues-section-title {
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    font-size: 36px;
    line-height: 100px;
    color: #FFF;
}

/* Основной текст секции */
.catalogues-text {
    text-align: center;
    font-family: 'montserrat', sans-serif;
    font-weight: 500;
    font-size: 20px;
    line-height: 33px;
    color: #FFF;
}

/* Карточки каталогов */
.catalogue-card {
    width: 488px;
    height: 428px;
    background-color: #FFF;
    border-radius: 18px;
}

/* Убираем подчеркивание у ссылок на карточки */
a[href*="catalog"] {
    text-decoration: none !important;
    color: inherit !important;
}

a[href*="catalog"]:hover {
    text-decoration: none !important;
    color: inherit !important;
}

a[href*="catalog"]:focus {
    text-decoration: none !important;
    color: inherit !important;
}

a[href*="catalog"]:visited {
    text-decoration: none !important;
    color: inherit !important;
}

.catalogue-card,
.catalogue-card-small {
    text-decoration: none !important;
}

.catalogue-card *,
.catalogue-card-small * {
    text-decoration: none !important;
}

/* Заголовки карточек каталогов */
.catalogue-card-title {
    padding-top: 30px;
    font-size: 34px;
    font-weight: 400;
    text-align: center;
    line-height: 40px;
    color: #244888;
    text-decoration: none !important;
}

.catalogue-card-title b {
    font-size: 42px;
    font-weight: 700;
    text-decoration: none !important;
}

/* Фоновые изображения для карточек */
.catalogue_android_ground {
    background-image: url('../images/backgrounds/android_catalog_ground.png');
    background-repeat: no-repeat;
    background-position: right bottom;
    animation: fadeInLeft;
    animation-duration: 1s;
}

.catalogue_html5_ground {
    background-image: url('../images/backgrounds/html5_catalog_ground.png');
    background-repeat: no-repeat;
    background-position: right bottom;
    animation: fadeInRight;
    animation-duration: 1s;
}

/* Иконки в карточках */
.catalogue-card-icon {
    padding-top: 30px;
    text-align: center;
}

/* Дата обновления */
.catalogue-card-updated {
    font-size: 21px;
    font-weight: 700;
    padding-top: 30px;
    text-align: center;
    color: #000;
}

/* Мобильные карточки каталогов */
.catalogue-card-small {
    width: 100%;
    height: 428px;
    background-color: #FFF;
    border-radius: 18px;
    margin-bottom: 20px;
}

/* ============================
   RESPONSIVE STYLES FOR CATALOGUES
   Адаптивные стили для секции Catalogues
   ============================ */

@media (max-width: 1200px) {
    .catalogue-card {
        width: 420px;
        height: 428px;
        background-color: #FFF;
        border-radius: 18px;
    }
}

@media (max-width: 991px) {
    .catalogue-card {
        width: 300px;
        height: 460px;
        background-color: #FFF;
        border-radius: 18px;
    }
}

@media (max-width: 767px) {
    .catalogue-card {
        width: 100%;
        height: 428px;
        background-color: #FFF;
        border-radius: 18px;
        margin-bottom: 30px;
    }
    
    .catalogue_html5_ground {
        animation: fadeInLeft;
        animation-duration: 1s;
    }
}

/* ============================
   TV AND CAR SECTION
   Стили для секции TV AND CAR GAMES
   ============================ */

/* Основной контейнер секции */
.tv-car-section {
    background-color: #FFF;
    background-image: url('../images/backgrounds/arrows_down.png');
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    padding-bottom: 40px;
}

/* Контейнер для центрирования карточек */
.tv-car-container {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Карточки TV и CAR */
.tv-car {
    background-color: #daeefb;
    border-radius: 18px;
    font-size: 20px;
    color: #000;
    text-align: center;
    overflow: hidden;
    width: 488px;
}

/* Контейнер изображения */
.tv-car-image-container {
    width: 100%;
}

.tv-car-image-container img {
    width: 100%;
    height: auto;
    display: block;
}

/* Контейнер текста */
.tv-car-text-container {
    padding: 15px;
}

/* ============================
   RESPONSIVE STYLES FOR TV AND CAR
   Адаптивные стили для секции TV AND CAR
   ============================ */

@media (max-width: 1200px) {
    .tv-car {
        width: 420px;
        height: 350px;
        background-color: #daeefb;
        border-radius: 18px;
    }
}

@media (max-width: 991px) {
    .tv-car {
        width: 300px;
        height: 360px;
        background-color: #daeefb;
        border-radius: 18px;
    }
}

@media (max-width: 767px) {
    .tv-car {
        width: 100%;
        height: 350px;
        background-color: #daeefb;
        border-radius: 18px;
        margin-bottom: 30px;
    }
}

/* ============================
   WATCHES SECTION
   Стили для секции GAMES FOR SMARTWATCHES
   ============================ */

/* Основной контейнер секции */
.watches-section {
    background-color: #00478d;
    background-image: url('../images/backgrounds/watches_bg.jpg');
    background-position: center;
    background-size: cover;
    padding: 20px 0;
    text-align: center;
    overflow: hidden;
}

/* Убираем лишние отступы между строками */
.watches-section .row {
    margin-bottom: 0;
}

/* Заголовок секции */
.watches-section-title {
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    font-size: 36px;
    line-height: 1.2;
    color: #FFF;
    margin: 0 auto 10px;
    display: inline-block;
}

/* Стили для изображения часов */
.watches-section img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}

/* Основные стили для изображения часов */
.watches-image {
    margin-top: -80px;
    margin-bottom: -80px;
}

/* ============================
   RESPONSIVE STYLES FOR WATCHES
   Адаптивные стили для секции Watches
   ============================ */

/* Для больших экранов */
@media (min-width: 1200px) {
    .watches-image {
        margin-top: -90px !important;
        margin-bottom: -90px !important;
    }
    
    .watches-section .stores-text {
        margin-top: 0;
    }
}

/* Для средних экранов */
@media (min-width: 992px) and (max-width: 1199px) {
    .watches-image {
        margin-top: -70px !important;
        margin-bottom: -70px !important;
    }
    
    .watches-section .stores-text {
        margin-top: 5px;
    }
}

@media (max-width: 992px) {
    .watches-image {
        margin-top: -40px !important;
        margin-bottom: -40px !important;
        max-width: 400px;
    }
    
    .watches-section-title {
        margin-bottom: 15px;
    }
    
    /* Оптимизируем отступы для текста */
    .watches-section .stores-text {
        margin-top: 10px;
        padding: 0 15px;
    }
}

@media (max-width: 768px) {
    .watches-section-title {
        font-size: 28px;
        line-height: 1.3;
    }
    
    .watches-image {
        width: 100%;
        max-width: 300px;
        margin-top: -30px !important;
        margin-bottom: -30px !important;
    }
}

@media (max-width: 480px) {
    .watches-section-title {
        font-size: 22px;
        line-height: 1.4;
    }
    
    .watches-image {
        width: 100%;
        max-width: 250px;
        margin-top: -20px !important;
        margin-bottom: -20px !important;
    }
}

/* ============================
   CONTACTS SECTION
   Стили для секции Contact Us
   ============================ */

/* Основной контейнер секции */
.contact-us-section {
    background-color: #00478d !important;
    background-image: url('../images/backgrounds/contact_us_section_ground.png') !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    padding: 40px 0 0 0 !important;
    margin-bottom: 0 !important;
}

/* Заголовок секции CONTACT US */
.contact-us-section-title {
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    font-size: 36px;
    line-height: 100px;
    color: #FFF;
}

/* Блок контактов для небольших экранов */
.contact-us-block-small {
    width: 100%;
}

/* Лейблы полей формы */
.contact-us-label {
    color: #FFF;
    font-size: 16px;
    line-height: 30px;
    padding-left: 25px;
}

/* Поля ввода формы */
.contact-us-input-field {
    font-size: 20px;
    font-weight: 500;
    color: #000;
    width: 100%;
    border: 0px;
    border-radius: 18px;
    padding: 10px;
    margin-bottom: 10px;
    background-color: #eaeef9;
}

/* Текстовая область */
.contact-us-textarea {
    font-size: 20px;
    font-weight: 500;
    color: #000;
    width: 100%;
    border: 0px;
    border-radius: 18px;
    padding: 10px;
    margin-bottom: 10px;
    height: 254px;
    background-color: #eaeef9;
    resize: vertical;
}

/* Кнопка отправки */
.contact-us-submit-button {
    font-size: 20px;
    font-weight: 500;
    color: #FFF;
    width: 100%;
    border: 0px;
    border-radius: 18px;
    padding: 10px;
    margin-bottom: 40px;
    background-color: #32467a;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

/* Убираем отступы у формы контактов */
form#contactForm {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

.contact-us-submit-button:hover {
    background-color: #2a3a68;
}

/* Стили для сообщений об ошибках */
.help-block {
    font-size: 14px;
    margin-left: 10px;
}

/* ============================
   FOOTER SECTION
   Стили для подвала сайта
   ============================ */

/* Основной контейнер подвала */
.footer-section {
    background-color: #030b18;
    line-height: 60px;
    padding: 20px 0;
}

/* Ссылки в подвале */
.footer-section a {
    font-size: 15px;
    color: #b5c0de;
    display: inline-block;
    padding-right: 20px;
    text-decoration: none;
}

.footer-section a:hover {
    color: #fff;
    text-decoration: underline;
}

/* Текст копирайта */
.copyright {
    font-size: 15px;
    color: #FFF;
    display: inline-block;
}

/* ============================
   PRIVACY POLICY SECTION
   Стили для страницы Privacy Policy
   ============================ */

/* Основной контейнер секции */
.privacy-policy-section {
    background-color: #fff;
    padding: 40px 0;
}

/* Заголовок страницы */
.privacy-policy-section-title {
    font-family: 'Roboto', sans-serif;
    font-weight: 500;
    font-size: 36px;
    line-height: 100px;
    color: #000;
}

/* Подзаголовки h3 */
.privacy-policy-section h3 {
    font-weight: 500;
    font-size: 16px;
    line-height: 18px;
    color: #000;
    padding-bottom: 30px;
    text-align: center;
}

/* Заголовки h5 */
.privacy-policy-section h5 {
    padding-top: 24px;
    font-weight: 600;
    font-size: 16px;
    line-height: 18px;
    color: #000;
    padding-bottom: 10px;
    text-align: center;
}

/* Параграфы */
.privacy-policy-section p {
    text-indent: 1.5em;
    font-weight: 400;
    font-size: 16px;
    line-height: 30px;
    color: #000;
}

/* Контейнер текста */
.privacy-policy-text {
    padding-bottom: 150px;
}

/* ============================
   INTERACTIVE CARD EFFECTS
   Интерактивные эффекты для карточек
   ============================ */

/* Базовые переходы для всех карточек */
.stores-card,
.tv-car {
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    transform: translateZ(0); /* Включаем аппаратное ускорение */
}

/* Publishing карточки - убираем тени */
.publishing-card {
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    transform: translateZ(0);
}

/* Каталоги кликабельные - отдельные переходы для плавного движения */
.catalogue-card,
.catalogue-card-small {
    transition: transform 0.5s cubic-bezier(0.25, 0.1, 0.25, 1),
                box-shadow 0.5s cubic-bezier(0.25, 0.1, 0.25, 1);
    transform: translateZ(0);
    box-shadow: 0 2px 6px rgba(36, 72, 136, 0.08); /* Базовая тень */
    will-change: transform, box-shadow; /* Оптимизация для анимации */
}

/* Курсор указатель только для кликабельных каталогов */
a .catalogue-card,
a .catalogue-card-small {
    cursor: pointer;
}

/* Hover эффекты для stores-card */
.stores-card:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 12px 40px rgba(52, 72, 130, 0.25);
}

.stores-card:hover .stores-card-icon img {
    transform: scale(1.1) rotate(5deg);
    transition: transform 0.3s ease;
}

.stores-card:hover .stores-card-text {
    color: #354a82;
    transform: translateY(-2px);
    transition: all 0.3s ease;
}

/* Hover эффекты для publishing-card */
.publishing-card:hover {
    transform: translateY(-6px) scale(1.03);
}


/* Hover эффекты для catalogue-card */
.catalogue-card:hover,
.catalogue-card-small:hover {
    /* Убираем смещение - только внутренние эффекты */
}

/* Увеличение фонового изображения при hover (легкое и плавное) */
.catalogue_android_ground:hover,
.catalogue_html5_ground:hover {
    background-size: 103%;
    transition: background-size 0.6s ease;
}

.catalogue-card:hover .catalogue-card-title,
.catalogue-card-small:hover .catalogue-card-title {
    color: #1a5490;
    transition: color 0.3s ease;
}

.catalogue-card:hover .catalogue-card-icon img,
.catalogue-card-small:hover .catalogue-card-icon img {
    transform: scale(1.1);
    transition: transform 0.3s ease;
}

.catalogue-card:hover .catalogue-card-updated,
.catalogue-card-small:hover .catalogue-card-updated {
    color: #354a82;
    font-weight: 700;
    transition: all 0.3s ease;
}

/* Hover эффекты для tv-car (уменьшенные в 3 раза) */
.tv-car:hover {
    transform: translateY(-3px) scale(1.007);
    box-shadow: 0 8px 15px rgba(218, 238, 251, 0.4);
}

.tv-car:hover .tv-car-image-container img {
    transform: scale(1.025);
    transition: transform 0.4s ease;
}

.tv-car:hover .tv-car-text-container {
    color: #2a4a8a;
    transform: translateY(-1px);
    transition: all 0.3s ease;
}

/* Специальные эффекты для мобильных устройств */
@media (max-width: 767px) {
    /* Уменьшаем эффекты на мобильных для лучшей производительности */
    .stores-card:hover,
    .publishing-card:hover,
    .catalogue-card:hover,
    .catalogue-card-small:hover {
        transform: translateY(-4px) scale(1.01);
    }
    
    .tv-car:hover {
        transform: translateY(-2px) scale(1.005);
    }
    
    /* Отключаем сложные анимации на мобильных */
    .publishing-card:hover {
        animation: none;
    }
}

/* Добавляем базовые стили для фоновых изображений каталогов */
.catalogue_android_ground,
.catalogue_html5_ground {
    background-size: 100%;
    transition: background-size 0.6s ease;
}

/* Smooth переходы для всех элементов */
.stores-card *,
.publishing-card *,
.catalogue-card *,
.catalogue-card-small *,
.tv-car * {
    transition: all 0.3s ease;
}