/* Общие стили */
body {
    -webkit-word-break: break-all;
    -moz-word-break: break-all;
    word-break: break-all;
    font-family: 'Lora', 'Helvetica Neue', sans-serif;
}

/* Стили для изображений */
img {
    -webkit-width: 100%;
    -moz-width: 100%;
    width: 100%;
    -webkit-max-width: 100%;
    -moz-max-width: 100%;
    max-width: 100%;
    -webkit-object-fit: cover;
    -moz-object-fit: cover;
    object-fit: cover;
}

/* Стили для кнопок CTA (кроме header) */
main a:not(.no-cta) {
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    align-items: center;
    text-align: center;
    min-height: 70px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

@media (max-width: 767px) {
    main a:not(.no-cta) {
        -webkit-width: 100%;
        -moz-width: 100%;
        width: 100%;
    }
}

/* Плавный скролл для якорных ссылок */
a[href^="#"] {
    -webkit-scroll-behavior: smooth;
    -moz-scroll-behavior: smooth;
    scroll-behavior: smooth;
}

/* Скрытие навигации на мобильных устройствах */
@media (max-width: 991px) {
    nav {
        display: none !important;
    }
}

/* Стили для аккордеона */
.accordion button {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.accordion button:hover {
    background-color: #f0f0f0;
}

.accordion-content {
    -webkit-transition: max-height 0.3s ease;
    -moz-transition: max-height 0.3s ease;
    transition: max-height 0.3s ease;
}

/* Стили для табов */
.tab-button {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.tab-button:hover {
    background-color: #2563eb !important;
    color: white !important;
}

.tab-content {
    -webkit-transition: opacity 0.3s ease;
    -moz-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
}

/* Бегущая строка */
.marquee {
    overflow: hidden;
    white-space: nowrap;
    width: 100%;
}

.marquee span {
    display: inline-block;
    -webkit-animation: marquee 10s linear infinite;
    -moz-animation: marquee 10s linear infinite;
    animation: marquee 10s linear infinite;
}

@-webkit-keyframes marquee {
    0% { transform: translateX(100%); }
    100% { transform: translateX(-100%); }
}

@-moz-keyframes marquee {
    0% { transform: translateX(100%); }
    100% { transform: translateX(-100%); }
}

@keyframes marquee {
    0% { transform: translateX(100%); }
    100% { transform: translateX(-100%); }
}

/* Плавное появление блоков */
.fade-in {
    opacity: 0;
    -webkit-transform: translateY(20px);
    -moz-transform: translateY(20px);
    transform: translateY(20px);
    -webkit-transition: opacity 0.6s ease, transform 0.6s ease;
    -moz-transition: opacity 0.6s ease, transform 0.6s ease;
    transition: opacity 0.6s ease, transform 0.6s ease;
}

.fade-in.visible {
    opacity: 1;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    transform: translateY(0);
}

/* Адаптивная таблица (если потребуется) */
table {
    -webkit-width: 100%;
    -moz-width: 100%;
    width: 100%;
    border-collapse: collapse;
}

table th, table td {
    padding: 12px;
    text-align: left;
    border: 1px solid #ddd;
}

@media (max-width: 767px) {
    table, thead, tbody, th, td, tr {
        display: block;
    }
    table thead {
        display: none;
    }
    table td {
        position: relative;
        padding-left: 50%;
    }
    table td:before {
        content: attr(data-label);
        position: absolute;
        left: 10px;
        width: 45%;
        font-weight: bold;
    }
}