/* Header and footer custom styles */
.header-logo {
    height: 60px !important;
}
@media (max-width: 991.98px) {
    .header-logo {
        height: 40px !important;
    }
}
.header-contact-link:hover {
    color: var(--bs-success) !important;
}
@media (min-width: 992px) and (max-width: 1199.98px) {
    .d-none.d-lg-block .row.align-items-center .fw-bold {
        font-size: 0.875rem !important;
    }
}
/* Offcanvas menu links styling */
.offcanvas-body .nav-link,
.offcanvas-body .dropdown-item {
    color: var(--bs-dark) !important;
}
.offcanvas-body .nav-link:hover,
.offcanvas-body .dropdown-item:hover {
    color: var(--bs-success) !important;
}
/* Desktop header nav */
@media (min-width: 1200px) {
    .navbar-nav.small {
        font-size: 1rem !important;
    }
}
.navbar-nav .nav-link {
    color: var(--bs-dark) !important;
}
.navbar-nav .nav-link:hover {
    color: var(--bs-success) !important;
}
.nav .nav-link.text-dark:hover {
    color: var(--bs-success) !important;
}
/* Dropdown menu styling */
.dropdown-menu {
    border: none !important;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}
/* Header title font size */
.header-title-font-size {
    font-size: 12px !important;
}
/* Header contact link styling */
.header-contact-link {
    text-decoration: none !important;
    color: var(--bs-dark) !important;
}
.header-contact-link:hover {
    color: var(--bs-success) !important;
}
/* Rotate collapse arrows in offcanvas */
.offcanvas-body .btn[data-bs-toggle='collapse'] i.bi-chevron-down {
    transition: transform 0.3s ease;
}
.offcanvas-body .btn[data-bs-toggle='collapse'].collapsed i.bi-chevron-down {
    transform: rotate(0deg);
}
.offcanvas-body
    .btn[data-bs-toggle='collapse']:not(.collapsed)
    i.bi-chevron-down {
    transform: rotate(180deg);
}
/* Footer nav hover styling */
footer .nav-link:hover,
footer a.text-dark:hover,
footer a:hover {
    color: var(--bs-success) !important;
    text-decoration: none !important;
}
/* Mobile header wrapper z-index */
.mobile-menu-wrapper {
    z-index: 1030;
}

/* Step circle sizes */
.step-circle {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
}

/* Центрирование правого столбца прайс-листа */
#price table tbody td:nth-child(2) {
    text-align: center !important;
}

/* Полужирное начертание для левого столбца прайс-листа */
#price table tbody td:nth-child(1) {
    font-weight: 600 !important;
}

/* Маленький текст для прайс-листа на экранах < lg */
@media (max-width: 991.98px) {
    #price table th,
    #price table td {
        font-size: 0.875rem !important;
    }
}

/* Hover-тень для блока «Как мы работаем» */
#process .card {
    transition: box-shadow 0.3s ease;
}
#process .card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* Убираем нижний отступ (margin-bottom) у таблицы прайс-листа */
#price table {
    margin-bottom: 0px !important;
}

/* Scroll indicator */
#scrollIndicator {
    position: fixed;
    top: 0;
    left: 0;
    height: 4px;
    width: 0%;
    background: var(--bs-success);
    z-index: 9999;
}

/* Company hero background-overlay moved inline via gradient; remove if needed */

/* Plisse slider styles */
.plisse-slider {
    position: relative;
}
.plisse-track {
    scroll-behavior: smooth;
    overflow-x: hidden !important;
    overflow-y: visible !important;
    padding-bottom: 1.5rem;
}
.plisse-card {
    width: 25%;
    box-sizing: border-box;
}
.plisse-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    border: none !important;
}
.plisse-nav:disabled {
    opacity: 0.5;
    pointer-events: none;
}
.plisse-prev {
    left: 1rem !important;
}
.plisse-next {
    right: 1rem !important;
}
@media (min-width: 1200px) {
    .plisse-card {
        width: 25%; /* 4 карточки */
    }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
    .plisse-card {
        width: 33.333%; /* 3 карточки */
    }
}
@media (min-width: 768px) and (max-width: 991.98px) {
    .plisse-card {
        width: 50%; /* 2 карточки */
    }
}
@media (max-width: 767.98px) {
    .plisse-card {
        width: 100%; /* 1 карточка */
    }
}
@media (max-width: 576px) {
    .plisse-card {
        width: 100%;
    }
}
.plisse-card .card {
    transition: box-shadow 0.3s ease;
}
.plisse-card:hover .card {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* Portfolio slider styles */
.portfolio-slider {
    position: relative;
}
.portfolio-track {
    scroll-behavior: smooth;
    overflow-x: hidden !important;
    overflow-y: visible !important;
    padding-bottom: 1.5rem;
}
.portfolio-card {
    width: 33.333%;
    box-sizing: border-box;
}
.portfolio-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    border: none !important;
}
.portfolio-nav:disabled {
    opacity: 0.5;
    pointer-events: none;
}
.portfolio-prev {
    left: 1rem !important;
}
.portfolio-next {
    right: 1rem !important;
}
@media (min-width: 1200px) {
    .portfolio-card {
        width: 33.333%; /* 3 карточки */
    }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
    .portfolio-card {
        width: 50%; /* 2 карточки */
    }
}
@media (max-width: 991.98px) {
    .portfolio-card {
        width: 100%; /* 1 карточка */
    }
}
.portfolio-card .card {
    transition: box-shadow 0.3s ease;
}
.portfolio-card:hover .card {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* Calculator card hover styles */
#calc .card {
    transition: box-shadow 0.3s ease;
}
#calc .card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* Изменение цвета фокуса в форме калькулятора на зеленый (success) */
#calc .form-control:focus,
#calc .form-select:focus {
    border-color: var(--bs-success);
    box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}

/* Company hero inline styles moved to CSS if desired */
.company-hero {
    background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
        url('../../images/pages/paru-slov-o-nashey-company.webp') center/cover
            no-repeat;
    position: relative;
}
.company-hero > .container {
    position: relative;
}

/* Hover-тень для карточек в why-choose (Доставка/Оплата, Idro, Warranty) */
.why-choose .card {
    transition: box-shadow 0.3s ease;
}
.why-choose .card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}
/* Hover-тень для блоков в секции «Пару слов о нашей компании» - УБРАНА */

/* Стиль для обычных ссылок при наведении */
a:not(.btn):not(.nav-link):not(.dropdown-item):not(.header-contact-link):not(
        .plisse-card a
    ):not(footer a):not(.breadcrumb-link):not(.portfolio-card a):hover {
    color: var(--bs-success) !important;
    text-decoration: underline !important;
    transition: color 0.3s ease;
}

/* Стиль для элементов выпадающего меню при наведении */
.dropdown-item:hover {
    color: #fff !important;
    background-color: var(--bs-success) !important;
}

/* Стили для блока "Куда можно установить москитные сетки плиссе?" */
.plisse-card .card-body .card-title {
    color: var(--bs-dark);
    transition: color 0.3s ease;
}

.plisse-card:hover .card-body .card-title {
    color: var(--bs-success) !important;
}

/* Убираем подчеркивание у ссылок при наведении в plisse-card */
.plisse-card a:hover {
    text-decoration: none !important;
}

/* Стили для ссылок в блоке "Получите бесплатный замер уже сегодня" */
#cta-contact .link-light:hover {
    color: #fff !important;
    text-decoration: none !important;
}

/* Стили для блока "Ответы на популярные вопросы" */
#faq .accordion-button:not(.collapsed) {
    color: var(--bs-success);
    background-color: rgba(25, 135, 84, 0.1);
}

#faq .accordion-button:focus {
    border-color: rgba(25, 135, 84, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}

#faq .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e") !important;
}

/* Hover-эффекты для карточек страницы "О нас" */
.o-nas .card {
    transition: box-shadow 0.3s ease;
}
.o-nas .card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* Hover-эффекты для карточек страницы "Оплата" */
.oplata .card {
    transition: box-shadow 0.3s ease;
}
.oplata .card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* Hover-эффекты для карточек страницы "Доставка" */
.dostavka .card {
    transition: box-shadow 0.3s ease;
}
.dostavka .card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* Hover-эффекты для карточек страницы "Гарантия" */
.garantiya .card {
    transition: box-shadow 0.3s ease;
}
.garantiya .card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* Hover-эффекты для карточек страницы "FAQ" */
.faq .card {
    transition: box-shadow 0.3s ease;
}
.faq .card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* Hover-эффекты для карточек страницы "Контакты" */
.kontakty .card {
    transition: box-shadow 0.3s ease;
}
.kontakty .card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* Стили для аккордеонов на новых страницах (зеленые как на главной) */
/* Страница контактов */
.kontakty .accordion-button:not(.collapsed) {
    color: var(--bs-success);
    background-color: rgba(25, 135, 84, 0.1);
}

.kontakty .accordion-button:focus {
    border-color: rgba(25, 135, 84, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}

.kontakty .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23198754'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

/* Страница оплаты */
.oplata .accordion-button:not(.collapsed) {
    color: var(--bs-success);
    background-color: rgba(25, 135, 84, 0.1);
}

.oplata .accordion-button:focus {
    border-color: rgba(25, 135, 84, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}

.oplata .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23198754'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

/* Страница доставки */
.dostavka .accordion-button:not(.collapsed) {
    color: var(--bs-success);
    background-color: rgba(25, 135, 84, 0.1);
}

.dostavka .accordion-button:focus {
    border-color: rgba(25, 135, 84, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}

.dostavka .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23198754'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

/* Страница гарантии */
.garantiya .accordion-button:not(.collapsed) {
    color: var(--bs-success);
    background-color: rgba(25, 135, 84, 0.1);
}

.garantiya .accordion-button:focus {
    border-color: rgba(25, 135, 84, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}

.garantiya .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23198754'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

/* Дополнительные стили для страницы FAQ */
.faq .accordion-button:not(.collapsed) {
    color: var(--bs-success);
    background-color: rgba(25, 135, 84, 0.1);
}

.faq .accordion-button:focus {
    border-color: rgba(25, 135, 84, 0.5);
    box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);
}

.faq .accordion-button:not(.collapsed)::after {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e") !important;
}

/* Portfolio page card hover effects */
.portfolio-card-hover {
    transition: box-shadow 0.3s ease;
}
.portfolio-card-hover:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* Portfolio page statistics cards hover effects */
.portfolio .card {
    transition: box-shadow 0.3s ease;
}
.portfolio .card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* Breadcrumb link styles */
.breadcrumb-link {
    cursor: pointer;
    transition: color 0.2s ease;
    text-decoration: none !important;
}

.breadcrumb-link:hover {
    text-decoration: none !important;
}

.breadcrumb-link:focus,
.breadcrumb-link:active {
    text-decoration: none !important;
}

/* More aggressive rules for breadcrumb links */
.breadcrumb .breadcrumb-link,
.breadcrumb a.breadcrumb-link {
    text-decoration: none !important;
    border-bottom: none !important;
}

.breadcrumb .breadcrumb-link:hover,
.breadcrumb a.breadcrumb-link:hover {
    text-decoration: none !important;
    border-bottom: none !important;
}

.breadcrumb .breadcrumb-link:focus,
.breadcrumb .breadcrumb-link:active,
.breadcrumb a.breadcrumb-link:focus,
.breadcrumb a.breadcrumb-link:active {
    text-decoration: none !important;
    border-bottom: none !important;
    outline: none !important;
}

/* Hover-эффекты для карточек страницы проекта portfolio-project */
.portfolio-project .card {
    transition: box-shadow 0.3s ease;
}
.portfolio-project .card:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* Portfolio card title link styling */
.portfolio-card .card-body .fw-semibold a,
.portfolio-card .card-body .fw-semibold a:hover {
    text-decoration: none !important;
}

.portfolio-card .card-body .fw-semibold a:hover {
    color: var(--bs-success) !important;
}

/* Убираем отступ под видео плеером в портфолио */
.portfolio-project video {
    display: block !important;
    margin-bottom: 0 !important;
    vertical-align: top !important;
}

/* Убираем отступы у карточки с видео */
.portfolio-project .card-body.p-0 {
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 300px !important;
}

/* Убрано - теперь используется .video-carousel */

/* Стили для видео-карусели (отдельно от портфолио слайдера) */
.video-carousel {
    position: relative;
}

.video-track {
    scroll-behavior: smooth;
    overflow-x: hidden !important;
    overflow-y: visible !important;
    padding-bottom: 1.5rem;
}

.video-card {
    width: 33.333%;
    box-sizing: border-box;
}

.video-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
    border: none !important;
}

.video-nav:disabled {
    opacity: 0.5;
    pointer-events: none;
}

.video-prev {
    left: 1rem !important;
}

.video-next {
    right: 1rem !important;
}

/* Адаптивные размеры для видео-карусели */
@media (min-width: 1200px) {
    .video-card {
        width: 33.333%; /* 3 карточки */
    }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .video-card {
        width: 50%; /* 2 карточки */
    }
}

@media (max-width: 991.98px) {
    .video-card {
        width: 100%; /* 1 карточка */
    }
}

/* Центрирование видео в карточках видео-карусели */
.video-carousel .video-card .card-body.p-0 {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 400px !important;
    background-color: #000 !important;
    border-radius: 0.375rem !important;
    overflow: hidden !important;
}

/* Правильное отображение видео в видео-карточках */
.video-carousel .video-card video {
    max-width: 100% !important;
    max-height: 90vh !important;
    object-fit: contain !important;
}

/* Hover-эффекты для видео-карточек */
.video-card .card {
    transition: box-shadow 0.3s ease;
}

.video-card:hover .card {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* Контейнер для видео с иконкой play/pause */
.video-container {
    position: relative !important;
    display: inline-block !important;
}

/* Иконка play/pause поверх видео */
.video-play-icon {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    background-color: var(--bs-success) !important;
    color: white !important;
    border-radius: 50% !important;
    width: 80px !important;
    height: 80px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 2rem !important;
    cursor: pointer !important;
    opacity: 0.9 !important;
    transition: all 0.3s ease !important;
    z-index: 10 !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
}

.video-play-icon:hover {
    opacity: 1 !important;
    transform: translate(-50%, -50%) scale(1.1) !important;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.4) !important;
}

/* Скрываем иконку когда видео воспроизводится */
.video-playing .video-play-icon {
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Показываем иконку при наведении на воспроизводящееся видео */
.video-container:hover .video-play-icon {
    opacity: 0.7 !important;
    pointer-events: auto !important;
}

/* Стили для одиночного видео без белого контейнера */
.video-single {
    display: block !important;
    margin: 0 auto !important;
    border-radius: 0.375rem !important;
    overflow: hidden !important;
    box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
    transition: box-shadow 0.3s ease !important;
    width: fit-content !important;
}

.video-single:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

/* Убираем дополнительные отступы и границы у одиночного видео */
.video-single video {
    display: block !important;
    margin: 0 !important;
    border: none !important;
}
