/* header */
.header {border-bottom:1px solid #151f30}
.section--head {border-top:none}

/* modal_auth */
.modal_auth {position:fixed;top:0;left:0;display:flex;align-items:center;justify-content:center;height:0;background-color:transparent;overflow:hidden;transition:background-color .25s ease;z-index:9999}
.modal_auth.open {position:fixed;width:100%;height:100vh;background-color:rgba(0,0,0,.5);transition:background-color .25s}
.modal_auth.open>.content-wrapper {transform:scale(1)}
.modal_auth .content-wrapper {position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;width:100%; max-width:400px;transform:scale(0);transition:transform .25s;transition-delay:.15s}
.modal_auth .content-wrapper .close {position:absolute;top:.5rem;right:.5rem;display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border:none;background-color:transparent;font-size:1.5rem;transition:.25s linear; z-index: 1;}
.modal_auth .content-wrapper .close:before,
.modal_auth .content-wrapper .close:after {position:absolute;content:"";width:1.25rem;height:.125rem;background-color:#2f80ed}
.modal_auth .content-wrapper .close:before {transform:rotate(-45deg)}
.modal_auth .content-wrapper .close:after {transform:rotate(45deg)}
.modal_auth .content-wrapper .close:hover {transform:rotate(360deg)}
.modal_auth .content-wrapper .close:hover:before,
.modal_auth .content-wrapper .close:hover:after {background-color:#df4a32}
.modal_auth .content-wrapper .modal-header {position:relative;display:flex;flex-direction:row;align-items:center;justify-content:space-between;width:100%;margin:0;padding:0 0 1.25rem}
.modal_auth .content-wrapper .modal-header h2 {font-size:1.5rem;font-weight:bold}
.modal_auth .content-wrapper .content {position:relative;display:flex}
.modal_auth .content-wrapper .content p {font-size:.875rem;line-height:1.75}
.modal_auth .content-wrapper .modal-footer {position:relative;display:flex;align-items:center;justify-content:flex-end;width:100%;margin:0;padding:1.875rem 0 0}
.modal_auth .content-wrapper .modal-footer .action {position:relative;margin-left:.625rem;padding:.625rem 1.25rem;border:none;background-color:slategray;border-radius:.25rem;color:white;font-size:.87rem;font-weight:300;overflow:hidden;z-index:1}
.modal_auth .content-wrapper .modal-footer .action:before {position:absolute;content:"";top:0;left:0;width:0;height:100%;background-color:rgba(255,255,255,.2);transition:width .25s;z-index:0}
.modal_auth .content-wrapper .modal-footer .action:first-child {background-color:#2ecc71}
.modal_auth .content-wrapper .modal-footer .action:last-child {background-color:#e74c3c}
.modal_auth .content-wrapper .modal-footer .action:hover:before {width:100%}
.header__user {cursor: pointer;}

/* pagination */
.catalog__paginator-wrap {margin:60px 0 0}
.catalog__paginator .pages {display:inline-flex;flex-wrap:wrap}
.catalog__paginator .pages a {margin-right:15px; width: auto; min-width: 30px;}
.catalog__paginator .pages span {color:#2f80ed;cursor:default;display:flex;flex-direction:row;justify-content:center;align-items:center;width:30px;height:30px;border-radius:12px;background-color:#131720;font-size:14px;font-weight:500;margin-right:15px}

/* user_panel */
.content-wrapper.user_panel {max-width:300px}
.avatar img {border-radius:15px}
.login_pane__menu {display:flex;flex-wrap:wrap}
.login_pane__menu li {position:relative;margin-bottom:15px;flex:0 0 100%}
.login_pane__menu li:last-child {margin-bottom:0}
.login_pane__menu a {color:#e0e0e0;font-size:14px;font-weight:400;transition:.5s;position:relative;width:100%;display:block}
.login_pane__menu a:hover {color:#2f80ed}
.login_pane__menu a svg {margin-right:10px;fill:#2f80ed;width:20px;height:auto}
.login_pane__menu a span {float:right}

/* home__carousel */
.home__card {width: 100%; height: 380px;}
.home__card img {height: 100%; width: 100%; display: block; object-fit: cover;}
.home__carousel .owl-item {pointer-events:inherit}
.home__card div h2 {font-size:20px}
.home__add, .card__add {padding:5px;fill:#2f80ed}
.del_fav {fill:#fff;background:#0056b3}
.home__card div ul.info_home__card {width: 100%;justify-content:space-between}
.home__carousel .owl-dots {justify-content:center}

/* section_main_carousel */
.card__cover img {height: 280px; display: block; width: 100%; object-fit: cover;}

/* interview_main_carousel */
.interview__cover img {height:260px;object-fit:cover}

/* fullstory */
.fullstory {padding-top:30px}
.full_poster {margin-top:40px}
.full_poster img {width:100%;border-radius:16px}
.full_descr {display:block;font-size:16px;line-height:26px;font-weight:400;color:#e0e0e0;margin-top:30px;width: 100%;hyphens:auto}
.article__content h1 {margin-bottom: 0;}
.article__content ul.categories li {margin-right:20px;display:flex;flex-direction:row;justify-content:flex-start;align-items:center;font-size:0}
.article__content ul.categories li::before {display:none}
.article__content ul.categories li:first-child {padding-left:0}
.article__content .categories a {display:inline-flex;flex-direction:row;justify-content:center;align-items:center;height:30px;min-width:60px;width:auto;color:#e0e0e0;font-size:14px;background-color:#151f30;border-radius:12px;padding:0 12px;margin-top:10px;margin-right:10px}
.full_info_section {display:flex;flex:1;justify-content:space-between;align-items:center;flex-wrap:wrap;margin-top:30px}
.article__download {margin-top:30px;width:auto;background:#151f30;padding:20px;margin-right:30px;border-radius:16px;justify-content:space-between;margin-bottom:0}
.full_info .list {display:flex;flex-direction:row;justify-content:flex-start;align-items:center;flex-wrap:wrap;width:100%}
.full_info .list li {font-size:16px;line-height:28px;font-weight:400;color:#e0e0e0;padding-left:20px;position:relative}
.full_info .list li::before {content:'';position:absolute;display:block;width:4px;height:4px;border-radius:50%;background-color:#2f80ed;left:-2px;top:50%;margin-top:-3px}
.full_info .list li:first-child {padding-left:0}
.full_info .list li:first-child::before {display:none}
.full_info .list li {margin-right:20px;display:flex;flex-direction:row;justify-content:flex-start;align-items:center}
.full_info .list li svg {width:18px;height:auto;fill:#2f80ed;transition:fill .5s;margin-right:5px}
.full_details .article__download {margin-top: 0;}
.edit_news {float: right;}
.edit_news svg {fill:#2f80ed;width:21px}
.article__content {padding-right:0}
.series-wrap__title {font-size:28px}
.share__title svg {width:22px;height:auto;margin-right:10px;fill:#2f80ed}
.article__actions--details .article__favorites {margin-top: 0;}
.editdate {border-radius:16px;border:1px solid #152235;font-size:12px;color:#728195;padding:5px 20px;text-align:right;margin-top: 30px;}

/* rating */
.rate a {margin: 0;}
.rate a::before {display: none;}
.unit-rating,
.unit-rating li a:hover,
.unit-rating li.current-rating {background-image:url(../images/stars.png)}
.rate svg.like,
.rate svg.dislike {margin: 0;}
.rate svg.like {fill:#29b474}
.rate svg.dislike {fill:#eb5757}
[id*="ratig-layer"],
.ratingtypeplusminus {display:inline-block;padding:0 7px}
.ratingplus {color:#29b474}
.ratingminus {color:#eb5757}


/* comments */
.no_comments {text-align: center;border: 1px solid rgba(47,128,237,.1);}
.comments_subscribe {color: #fff;}
.comments_subscribe input {margin-right:10px}
/* .comments_subscribe {display: none;}
.bb-editor + br {display: none;} */
.mass_comments_action {display: none;}
.comments__rate .rate_like a, 
.comments__rate .rate_like-dislike {display:flex;flex-direction:row;justify-content:center;align-items:center;color:#e0e0e0;font-size:14px;position:relative;height:20px}
.comments__rate .rate_like a {margin-right:24px;}
.comments__rate .rate_like a svg {stroke:#29b474;margin-right:5px;width:16px;height:auto;opacity:.7;transition:.5s}
.comments__rate .rate_like a:hover svg {opacity:1}
.comments__rate .rate_like-dislike a {margin-right: 0;line-height: 1;}
.comments__rate .rate_like-dislike a svg.comm_like {stroke:#29b474;width:16px;height:auto;opacity:.7;transition:.5s}
.comments__rate .rate_like-dislike a svg.comm_dislike {stroke:#eb5757;margin-right:5px;width:16px;height:auto;opacity:.7;transition:.5s}
.comments__rate .rate_like-dislike a:hover svg {opacity:1}
.comments__item .moder_panel {display:flex;flex-direction:row;justify-content:flex-end;align-items:center;position:relative}
.comments__item .moder_panel a {display:flex;flex-direction:row;justify-content:flex-start;align-items:center;margin-right:20px;height:20px}
.comments__item .moder_panel a:last-child {margin-right: 0;}
.comments__item .moder_panel a span {font-size:10px}
.form_submit {margin-top: 20px;}
.comments__form .form_fields {display:flex;flex-wrap:wrap;margin-bottom:20px;justify-content:space-between}
.comments__form .form_fields .combo_field {flex:0 0 calc(50% - 10px)}
.comments__actions button svg {fill:#2f80ed;stroke:none}
.form_submit .c-captcha {float:none;display:inline-flex;margin-bottom:20px;width:100%;align-items:center}
.c-captcha > a {float:none;margin-right:20px;border-radius:16px}
.c-captcha img {border-radius:16px}


/* Default styles sistem */
.speedbar img {display:inline-block;margin:0 10px}

#dropmenudiv {background-color:#151f30;border-radius:16px;color:#fff}
#dropmenudiv a {color:#fff;padding:5px 20px}
#dropmenudiv a:hover {color:#2f80ed;background-color:#151f30}

.ui-dialog {background-color:#151f30;border-radius:16px;color:#fff}
.ui-dialog-content {background:#151d2d;border:0;border-top:1px solid #233046;border-bottom:1px solid #233046}
.ui-dialog-title {font-weight:500}
.ui-dialog label {color:#fff}

textarea,
input,
select {background:#151f30;border:1px solid transparent;border-radius:16px;color:#fff;font-size:14px;padding:15px 20px!important;resize:none;width:100%!important}
.bb-editor textarea {border:1px solid transparent;box-shadow:none!important}
textarea:focus,
input:focus,
select:focus,
.bb-editor textarea:focus {border-color:#2764b7!important}
input[type="checkbox"],
input[type="radio"] {width:15px!important;height:15px!important}

#searchsuggestions {background:#151f30;border-radius:16px;border:none;top:80px!important}
#searchsuggestions a {color:#fff!important;border-bottom:1px solid #233046}
#searchsuggestions span.searchheading {color:#2f80ed;font-weight:500}
#searchsuggestions a:hover {background-color:#13172080}
#searchsuggestions span.seperator {background:#2f80ed;border-radius:0 0 16px 16px}

.quote,
.title_quote {font-style:normal;color:#e0e0e0;background-color:#131720;border:none}
.title_quote {margin-top:0;padding:15px 20px;border-bottom:1px solid #1c212d!important;border-radius:16px 16px 0 0}
.title_quote + .quote {border-radius:0 0 16px 16px;}
.quote {border-radius:16px; padding: 20px;}

.dlepopupnewsedit form input {border: 1px solid #172943;}
.uploadedfile {display:inline-block;width:auto!important;height:auto!important;text-align:center;background:#151f30!important;border-radius:16px;border:1px solid #172943;padding:10px}
.uploadedfile .info {text-align:center;font-size:12px;color:#8a8a8a}
.uploadedfile .info a {font-size: 12px;}
.xfieldsrow {color: #fff;}
.xfieldsrow [type="checkbox"] {margin-right: 10px;}
.wseditor {border-top:5px solid #2f80ed}

.row.row--grid form {width:100%}
.m0 {margin: 0 !important;}
.mt_-30 {margin-top: -30px !important;}
.sign__group {color:#fff}
.berrors {background:#151f30;color:#fff;border-radius:16px;padding:15px 20px}
.berrors b {font-weight: 500; color: #2f80ed;}
.box.story {color: #fff;}
#dle-captcha img {height:52px;border-radius:16px}
.profile__tabs a {text-transform:capitalize}
.quick-edit-text, #pm_text {margin-bottom:20px;border:1px solid #172943}
.pm_outbox_copy [type="checkbox"] {margin-right: 10px;}
.main__table-text {padding: 0;}
[style="color:red"] {color:#eb5757!important}
.settings_account {background:#151f30;border:1px solid transparent;border-radius:16px;color:#fff;font-size:14px;padding:15px 20px!important;resize:none;width:100%!important}
.settings_account input {margin-right: 10px; cursor: pointer;}
.settings_account label {margin-bottom:0;cursor:pointer}
input.bbcodes {padding:7px 22px!important;width:auto!important}
.regtext {color:#fff;margin-bottom:30px}
.search_result_num {padding: 15px 20px;}
select#catlist {min-height: 455px;}
td.search select {margin-bottom: 20px;}
#pm-menu {display:flex;flex-wrap:wrap}
#pm-menu a {margin-right:20px}
#pm-menu a span {padding:0 20px;}
.pm_status{background:#151f30;border:1px solid transparent;border-radius:16px;color:#fff;font-size:14px;padding:15px 20px!important;resize:none;width:100%!important;font-size:12px;text-align:center}
.pm_progress_bar {background:#131720;border-radius:16px; overflow: hidden;height: 20px;margin-bottom: 15px;}
.pm_progress_bar span {background:#eb5757;font-size:12px;height:100%;display:flex;justify-content:center;align-items:center;font-weight:500}
table.pm,
table.userstop {margin-top:30px;background:#151f30;border-radius:16px}
table.pm td {padding: 20px;}
table.pm select {background:#131720;margin-bottom:20px}


/* MEDIA REQ */
@media (min-width: 1440px) {
    .home--title .home__nav {height:380px}
}
@media (max-width: 1024px) {
    .header__form-input {width:calc(100% - 40px)!important}
    .header__search {margin-right:43px}
}



/* === Кинотрип custom fixes === */

/* === КАРТОЧКИ ФИЛЬМОВ — единая высота через aspect-ratio === */
.card { 
    margin-bottom: 30px; 
}
.card__cover {
    position: relative;
    display: block;
    width: 100%;
    aspect-ratio: 2 / 3;
    overflow: hidden;
    border-radius: 8px;
    background: #1a1d24;
    box-shadow: 0 4px 15px rgba(0,0,0,.3);
    transition: transform .25s ease, box-shadow .25s ease;
}
.card__cover:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 25px rgba(0,0,0,.5);
}
.card__cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    display: block;
}
.card__title {
    margin-top: 12px;
    font-size: 14px;
    line-height: 1.3;
    min-height: 36px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.card__title a { color: #fff; }
.card__title a:hover { color: #2f80ed; }
.card__list {
    margin-top: 6px;
    display: flex;
    gap: 10px;
    list-style: none;
    padding: 0;
    color: #888;
    font-size: 12px;
}
.card__list li:not(:last-child)::after {
    content: "•";
    margin-left: 10px;
    color: #555;
}

/* === ГЛАВНАЯ — собственная grid-сетка (НЕТ обёрток col-*) === */
/* Применяется только когда внутри row--grid НЕТ Bootstrap col-* колонок */
.row--grid:not(:has(> [class*="col-"])) {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 24px;
}
.row--grid:not(:has(> [class*="col-"])) > .col-12 {
    grid-column: 1 / -1;
}
@media (max-width: 1399px) {
    .row--grid:not(:has(> [class*="col-"])) { grid-template-columns: repeat(5, 1fr); }
}
@media (max-width: 1199px) {
    .row--grid:not(:has(> [class*="col-"])) { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 991px)  {
    .row--grid:not(:has(> [class*="col-"])) { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 767px)  {
    .row--grid:not(:has(> [class*="col-"])) { grid-template-columns: repeat(2, 1fr); gap: 16px; }
}

/* === КАТЕГОРИИ — bootstrap-grid с col-* остаётся как есть === */
/* НО подкручиваю отступы и spacing  */
.row--grid > [class*="col-"] {
    padding-left: 12px;
    padding-right: 12px;
    margin-bottom: 8px;
}

/* На XL ширина col-xl-2 — это 16.66% (6 в ряд) */
@media (min-width: 1200px) {
    .col-xl-2 {
        flex: 0 0 16.6666%;
        max-width: 16.6666%;
    }
}

/* === ШАПКА СЕКЦИИ === */
.section__header {
    margin-bottom: 30px;
}
.section__title {
    font-size: 28px;
    margin-bottom: 12px;
    color: #fff;
}
.section__text {
    color: #888;
    margin-bottom: 30px;
    font-size: 15px;
    line-height: 1.5;
}

/* === ПАГИНАЦИЯ === */
.navigation {
    margin: 30px 0;
    text-align: center;
    width: 100%;
    grid-column: 1 / -1;
}
.navigation a, .navigation span {
    display: inline-block;
    padding: 8px 14px;
    margin: 0 3px;
    background: rgba(255,255,255,0.05);
    border-radius: 6px;
    color: #ddd;
    text-decoration: none;
}
.navigation a:hover { background: #2f80ed; color: #fff; }
.navigation span.current,
.navigation .pages_current {
    background: #2f80ed;
    color: #fff;
}

/* === СТРАНИЦА ФИЛЬМА === */
.full_poster {
    max-width: 280px;
    margin: 0 auto 20px;
}
.full_poster img {
    width: 100%;
    aspect-ratio: 2 / 3;
    object-fit: cover;
    height: auto;
    display: block;
    border-radius: 10px;
    box-shadow: 0 8px 30px rgba(0,0,0,.5);
}
@media (min-width: 1200px) {
    .full_poster { max-width: 100%; margin: 0; }
}
.movie-info { margin-bottom: 20px; }
.movie-info p { line-height: 1.7; color: #ddd; }
.movie-info .movie-meta {
    background: rgba(255,255,255,0.04);
    border-radius: 8px;
    padding: 16px 20px;
    margin: 20px 0 0 0;
}
.movie-table { width: 100%; border-collapse: collapse; }
.movie-table td { padding: 6px 12px 6px 0; color: #ddd; font-size: 14px; vertical-align: top; }
.movie-table td:first-child { color: #888; width: 180px; white-space: nowrap; font-weight: 500; }
.full_descr h2 { margin-top: 30px; margin-bottom: 15px; font-size: 22px; color: #fff; }
.full_descr 

/* Скрываем мои служебные <img> для DLE {image-1} */
.full_descr > img:first-child,
.movie-info > img:first-child {
    display: none !important;
}
.article__download .download_text { display: none; }

/* Скрыть карточки без картинок (no_image fallback) */
.card:has(img[src*="no_image"]) {
    display: none;
}

/* === конец Кинотрип fixes === */


/* Главная: первая секция должна быть НИЖЕ фиксированной шапки (80-100px) */
.section--head {
    padding-top: 95px !important;
}
@media (max-width: 1199px) {
    .section--head {
        padding-top: 80px !important;
    }
}

/* Заголовок и текст хорошо видны на первом экране */
.section--head .section__header {
    margin-top: 0;
    margin-bottom: 30px;
}
.section--head h1.section__title {
    font-size: 32px;
    line-height: 1.2;
    margin-bottom: 14px;
    color: #fff;
}


/* === Плеер VideoHub — всегда корректные пропорции 16:9 === */



/* H2 «Смотреть … онлайн» — компактный отступ */
.full_descr h2.film-watch-heading,
.full_descr h2 {
    margin-top: 24px;
    margin-bottom: 16px;
    font-size: 22px;
    color: #fff;
    font-weight: 500;
}


/* === Мобильные доработки === */
@media (max-width: 767px) {
    /* Заголовок главной чуть меньше */
    .section--head h1.section__title { font-size: 22px !important; line-height: 1.25; }
    .section--head .section__text { font-size: 13px; }
    .section--head { padding-top: 80px !important; }

    /* Карточки — тоже компактнее */
    .card__title { font-size: 13px; min-height: 32px; }
    .card__list { font-size: 11px; gap: 6px; }
    .card__list li:not(:last-child)::after { margin-left: 6px; }

    /* Подвал */
    .footer__logo { font-size: 20px; }

    /* Страница фильма — постер и плеер один под другим */
    .article .col-xl-8, .article .col-xl-4 { width: 100%; max-width: 100%; flex: 0 0 100%; }
    .full_poster { max-width: 220px !important; margin: 0 auto 20px !important; }
    
    /* Метаданные на странице фильма */
    .article__actions .full_info ul.list { flex-wrap: wrap; gap: 10px; font-size: 13px; }
    .article__download .download_text { font-size: 13px; }

    /* Скрыть ненужные на мобиле блоки */
    .breadcrumb { display: none !important; }
}

/* === Форма комментариев — тёмная тема === */
.comments__form,
.add-comment-form,
form#dofollow,
.dle-comments-form {
    background: rgba(255,255,255,0.03);
    border-radius: 8px;
    padding: 20px;
    margin: 20px 0;
}
.comments__form textarea,
.comments__form input[type="text"],
.comments__form input[type="email"],
form#dofollow textarea,
form#dofollow input[type="text"],
form#dofollow input[type="email"],
.comments__form .form-control,
form#dofollow .form-control {
    background: #1a1d24 !important;
    color: #fff !important;
    border: 1px solid #2a2d34 !important;
    border-radius: 6px !important;
    padding: 10px 12px !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    width: 100% !important;
    box-shadow: none !important;
}
.comments__form textarea:focus,
.comments__form input:focus,
form#dofollow textarea:focus,
form#dofollow input:focus,
.comments__form .form-control:focus,
form#dofollow .form-control:focus {
    border-color: #2f80ed !important;
    outline: none !important;
}
.comments__form textarea,
form#dofollow textarea {
    min-height: 120px !important;
    resize: vertical;
}
.comments__form button,
.comments__form input[type="submit"],
form#dofollow button,
form#dofollow input[type="submit"] {
    background: #2f80ed !important;
    color: #fff !important;
    border: none !important;
    padding: 10px 24px !important;
    border-radius: 6px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
}
.comments__form button:hover,
form#dofollow button:hover {
    background: #e63e4d !important;
}

/* WYSIWYG editor если всё-таки появится */
.bbcode-wrapper,
.bbcode-toolbar,
.bbcode-controls,
.iframe-comments,
iframe.dle_editor,
#editor_panel_comments {
    background: #1a1d24 !important;
    color: #fff !important;
    border: 1px solid #2a2d34 !important;
}
.bbcode-toolbar a {
    color: #ddd !important;
    background: rgba(255,255,255,0.04) !important;
    border-radius: 4px !important;
}

/* Капча — тёмный фон */
img[src*="antibot"] {
    border-radius: 6px;
    background: #1a1d24;
}

/* Метки полей формы */
.comments__form label,
form#dofollow label,
.comments__form .control-label,
form#dofollow .control-label {
    color: #aaa !important;
    font-size: 13px !important;
}

/* === BB-редактор DLE — тёмная тема === */
.bb-editor {
    background: #1a1d24 !important;
    border: 1px solid #2a2d34 !important;
    border-radius: 8px !important;
    padding: 0 !important;
    overflow: hidden !important;
}
.bb-pane {
    background: #131720 !important;
    border-bottom: 1px solid #2a2d34 !important;
    padding: 8px 10px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 4px !important;
}
.bb-pane .bb-btn,
.bb-pane b.bb-btn {
    background: rgba(255,255,255,0.05) !important;
    color: #ddd !important;
    border-radius: 4px !important;
    width: 28px !important;
    height: 28px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: background .2s !important;
    font-style: normal !important;
}
.bb-pane .bb-btn:hover,
.bb-pane b.bb-btn:hover {
    background: #2f80ed !important;
    color: #fff !important;
}
.bb-pane select,
.bb-pane input {
    background: rgba(255,255,255,0.05) !important;
    color: #ddd !important;
    border: 1px solid #2a2d34 !important;
    border-radius: 4px !important;
    padding: 4px 8px !important;
}
.bb-editor textarea#comments {
    background: #1a1d24 !important;
    color: #fff !important;
    border: none !important;
    padding: 12px 14px !important;
    min-height: 120px !important;
    width: 100% !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    resize: vertical !important;
}
.bb-editor textarea#comments:focus {
    outline: none !important;
}

/* Sign-btn (отправить) — на нашу красную */
.sign__btn {
    background: #2f80ed !important;
    color: #fff !important;
    border: none !important;
    padding: 12px 28px !important;
    border-radius: 6px !important;
    font-weight: 500 !important;
    cursor: pointer !important;
    transition: background .2s !important;
}
.sign__btn:hover {
    background: #e63e4d !important;
}

/* Капча контейнер */
.c-captcha {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 14px;
}
.c-captcha img {
    border-radius: 6px;
    background: #1a1d24;
}

/* === HERO SLIDER (Новинки кино) === */
.section--hero {
    padding-top: 80px !important;
    padding-bottom: 30px;
}
.section--hero .section__title {
    font-size: 32px;
    margin-bottom: 8px;
    color: #fff;
    font-weight: 600;
}
.section--hero .section__text {
    color: #888;
    margin-bottom: 24px;
    font-size: 15px;
}


















/* Owl Carousel — кнопки и точки */









/* На мобильных — упрощаем */
@media (max-width: 767px) {
    .section--hero { padding-top: 80px !important; }
    .section--hero .section__title { font-size: 22px; }
    
    
    
    
    
}




/* Рейтинг — компактный значок в углу постера */
.home__rating {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 3;
    background: rgba(0,0,0,0.75) !important;
    color: #ffc312 !important;
    padding: 4px 8px !important;
    border-radius: 6px !important;
    font-size: 12px !important;
    font-weight: 500;
    height: auto !important;
    transform: none !important;
    opacity: 1 !important;
    pointer-events: none;
}
.home__rating svg {
    fill: #ffc312;
    width: 14px !important;
    margin-right: 4px;
}

/* Заголовок и навигация слайдера */
.home__title {
    padding: 0 15px 20px;
    color: #fff;
    font-size: 28px;
    font-weight: 300;
    margin: 0;
}
.home__title b {
    font-weight: 600;
    color: #2f80ed;
}

/* Owl карусель — отступы и точки */
.home__carousel {
    padding: 0 15px;
}
.home__carousel .owl-stage-outer {
    overflow: visible;
}
.home__carousel.owl-carousel .owl-stage {
    display: flex;
}
.home__carousel.owl-carousel .owl-item {
    display: flex;
}
.home__carousel .owl-dots {
    margin-top: 30px;
    padding-left: 15px;
}
.home__carousel .owl-dot span {
    background-color: rgba(255,255,255,0.3) !important;
    width: 10px !important;
    height: 4px !important;
    border-radius: 3px !important;
}
.home__carousel .owl-dot.active span,
.home__carousel .owl-dot:hover span {
    background-color: #2f80ed !important;
    width: 20px !important;
}

/* Стрелки навигации — справа и слева внизу слайдера */
.home__nav {
    background: rgba(255,255,255,0.05);
    color: #fff;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: none;
    align-items: center;
    justify-content: center;
    transition: background .2s;
    border: none;
    cursor: pointer;
    position: absolute;
    top: 50%;
    margin-top: -100px;
    z-index: 10;
}
.home__nav:hover {
    background: #2f80ed;
}
.home__nav svg { stroke: #fff; }
.home__nav--prev { left: -8px; }
.home__nav--next { right: -8px; }

@media (min-width: 1200px) {
    .home__nav { display: flex; }
}

/* На мобильных — простая карусель без излишеств */
@media (max-width: 767px) {
    .home { margin-top: 80px; padding-bottom: 20px; }
    .home__title { font-size: 22px; padding: 0 15px 16px; }
    .home__card div h2 { font-size: 13px; min-height: 32px; }
    .home__card div ul li { font-size: 11px; }
    .home__card div ul li:not(:last-child)::after { margin-left: 6px; }
}


/* === Кинотрип: страница фильма (lordfilm-style) === */
.fullstory { padding-top: 30px; padding-bottom: 60px; }
.fullstory .breadcrumbs {
    list-style: none; margin: 0 0 20px; padding: 0;
    color: #888; font-size: 13px;
}
.fullstory .breadcrumbs li a { color: #2f80ed; }
.fullstory .breadcrumbs li a:hover { text-decoration: underline; }

/* TOP block: poster + meta */
.movie-top { margin-bottom: 40px; }
.movie-poster {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 8px 24px rgba(0,0,0,0.4);
    aspect-ratio: 2/3;
    background: #1a1f2e;
}
.movie-poster img {
    width: 100%; height: 100%; object-fit: cover; display: block;
}


.movie-title {
    color: #fff; font-size: 32px; font-weight: 600;
    margin: 0 0 8px; line-height: 1.2;
}
.movie-original {
    color: #888; font-size: 16px; font-style: italic;
    margin-bottom: 20px;
}
.movie-description {
    color: #d0d0d0; font-size: 15px; line-height: 1.6;
    margin-bottom: 24px; padding: 16px 20px;
    background: rgba(255,255,255,0.03); border-left: 3px solid #2f80ed;
    border-radius: 6px;
}
.movie-description p { margin: 0 0 10px; }
.movie-description p:last-child { margin-bottom: 0; }
.movie-description img { display: none !important; }

/* meta */
.movie-meta {
    list-style: none; padding: 0; margin: 0 0 24px;
    display: grid; grid-template-columns: 1fr 1fr; gap: 8px 24px;
}
.movie-meta li {
    color: #ccc; font-size: 14px;
    padding: 6px 0;
    border-bottom: 1px solid rgba(255,255,255,0.06);
}
.movie-meta__key { color: #888; margin-right: 6px; }
.movie-meta__val { color: #fff; }
.movie-meta__val a { color: #2f80ed; }
.movie-meta__val a:hover { text-decoration: underline; }
.movie-meta__val--quality {
    background: #2f80ed; color: #fff !important;
    padding: 2px 8px; border-radius: 4px;
    font-weight: 600; font-size: 12px;
    text-transform: uppercase;
}

/* ratings */
.movie-ratings {
    display: flex; gap: 20px; margin: 0 0 24px;
}
.movie-rating {
    background: rgba(255,255,255,0.04);
    padding: 12px 18px; border-radius: 8px; min-width: 100px;
    text-align: center;
}
.movie-rating__val {
    color: #ffc312; font-size: 22px; font-weight: 600;
    line-height: 1;
}
.movie-rating__src {
    color: #888; font-size: 12px; margin-top: 4px;
    text-transform: uppercase;
}

/* CTA button */
.movie-cta {
    display: inline-block;
    background: #2f80ed; color: #fff !important;
    padding: 14px 32px; border-radius: 8px;
    font-size: 16px; font-weight: 600;
    text-decoration: none;
    transition: background .2s, transform .2s;
}
.movie-cta:hover {
    background: #1e6cc4; transform: translateY(-1px);
    text-decoration: none; color: #fff !important;
}

/* section titles */
.fullstory .section-title {
    color: #fff; font-size: 24px; font-weight: 500;
    margin: 30px 0 20px;
    padding-bottom: 12px;
    border-bottom: 2px solid rgba(47,128,237,0.3);
}

/* player */



/* player actions row */










/* responsive */
@media (max-width: 767px) {
    .movie-title { font-size: 24px; }
    .movie-meta { grid-template-columns: 1fr; gap: 0; }
    .movie-ratings { flex-wrap: wrap; }
    .fullstory .section-title { font-size: 20px; }
}


/* === Кинотрип: movie-tags v3, карточка фильма с метаданными === */

/* breadcrumbs */
.fullstory .breadcrumbs {
    list-style: none; margin: 0 0 18px; padding: 0;
    color: #888; font-size: 13px;
    display: flex; flex-wrap: wrap; gap: 6px 0;
}
.fullstory .breadcrumbs li { display: inline; }
.fullstory .breadcrumbs li:not(:last-child)::after {
    content: '›';
    margin: 0 8px;
    color: #555;
}
.fullstory .breadcrumbs li a { color: #2f80ed; }
.fullstory .breadcrumbs li a:hover { text-decoration: underline; }
.fullstory .breadcrumbs li:last-child { color: #aaa; }

/* poster: добавим quality-бейдж */
.movie-poster__quality {
    position: absolute; bottom: 12px; left: 12px;
    background: #2f80ed; color: #fff;
    padding: 4px 10px; border-radius: 6px;
    font-size: 11px; font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* movie-tags row (под заголовком) */
.movie-tags {
    display: flex; flex-wrap: wrap; gap: 8px;
    margin: 0 0 16px;
}
.movie-tag {
    display: inline-flex;
    align-items: center;
    padding: 4px 10px;
    background: rgba(255,255,255,0.06);
    color: #ccc;
    border-radius: 14px;
    font-size: 13px;
    text-decoration: none;
    transition: all .15s;
}
.movie-tag--year { background: rgba(47,128,237,0.15); color: #2f80ed; font-weight: 500; }
.movie-tag--year:hover { background: #2f80ed; color: #fff; text-decoration: none; }
.movie-tag--age { background: rgba(255,193,18,0.12); color: #ffc312; }
.movie-tag--time { color: #aaa; }
.movie-tag--series { background: rgba(47,128,237,0.15); color: #2f80ed; }

/* кликабельные значения в meta — режиссёр, жанр, страна, актёры */
.movie-tag-link {
    display: inline-block;
    color: #2f80ed;
    text-decoration: none;
    transition: color .15s;
}
.movie-tag-link:hover {
    color: #fff;
    text-decoration: underline;
}
.movie-meta__val--links {
    line-height: 1.7;
}

/* quality badge внутри meta-таблицы */
.movie-quality-badge {
    background: #2f80ed; color: #fff;
    padding: 2px 8px; border-radius: 4px;
    font-weight: 600; font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* facts */
.movie-facts {
    background: rgba(255,255,255,0.03);
    border-left: 3px solid #2f80ed;
    border-radius: 6px;
    padding: 16px 22px;
    margin: 0 0 30px;
    color: #d0d0d0;
    line-height: 1.7;
    font-size: 14px;
}
.movie-facts ul { padding-left: 20px; margin: 0; }
.movie-facts li { margin: 8px 0; }
.movie-facts a {
    color: #2f80ed;
    text-decoration: none;
    pointer-events: none; /* убираем устаревшие KP-ссылки */
}

@media (max-width: 767px) {
    .movie-tags { gap: 6px; }
    .movie-tag { font-size: 12px; padding: 3px 8px; }
    .movie-tag-link { font-size: 13px; }
}


/* верхняя часть постера обычно лучше для wide-формата */
    filter: blur(0.5px) brightness(0.65);
    transition: filter .2s, transform .3s;
    border-radius: 12px;
}

















/* Лоадер на момент пока VideoHub поднимается после клика */


@keyframes kt-pulse {
    0%, 100% { transform: scale(1); opacity: 1; }
    50% { transform: scale(0.95); opacity: 0.7; }
}

/* На мобильных — компактнее */
@media (max-width: 767px) {
    
    
    
    
    
}


/* === Кинотрип: рейтинги на постере (КП + IMDb) === */
.movie-poster {
    /* убираем box-shadow чтобы бейджи не обрезались */
    overflow: visible !important;
}
.movie-poster img {
    border-radius: 12px;
}

/* Контейнер двух рейтингов — снизу слева на постере */
.movie-poster__ratings {
    position: absolute;
    bottom: 12px;
    right: 12px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    z-index: 4;
    pointer-events: none;
}

.movie-poster__rating {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 56px;
    padding: 6px 10px;
    border-radius: 10px;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    box-shadow: 0 4px 14px rgba(0,0,0,0.5);
    text-align: center;
    line-height: 1;
}

.movie-poster__rating--kp {
    background: rgba(47, 128, 237, 0.92);  /* красный (наш бренд) */
    color: #fff;
}
.movie-poster__rating--imdb {
    background: rgba(245, 197, 24, 0.92);  /* жёлтый IMDb */
    color: #1a1a1a;
}

.movie-poster__rating-val {
    font-size: 18px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 2px;
    font-family: 'Rubik', sans-serif;
}

.movie-poster__rating-src {
    font-size: 9px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    opacity: 0.85;
}

/* Quality бейдж — переносим наверх слева чтобы не пересекать рейтинги */
.movie-poster__quality {
    position: absolute;
    top: 12px;
    left: 12px;
    bottom: auto;
    right: auto;
    background: #2f80ed;
    color: #fff;
    padding: 4px 10px;
    border-radius: 6px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    z-index: 4;
    box-shadow: 0 4px 12px rgba(0,0,0,0.4);
}

/* Скрываем старый блок рейтингов под мета-таблицей и CTA-кнопку (мы их убрали из шаблона) */
.movie-ratings, .movie-cta { display: none !important; }

@media (max-width: 767px) {
    .movie-poster__rating { min-width: 48px; padding: 5px 8px; }
    .movie-poster__rating-val { font-size: 16px; }
    .movie-poster__rating-src { font-size: 8px; }
}


/* === Кинотрип: уменьшить отступ сверху на fullstory === */
.fullstory.section--head-fixed {
    margin-top: 80px !important;  /* высота фиксированной шапки, не больше */
    padding-top: 20px !important;
    padding-bottom: 0 !important;
}
.fullstory.section--head {
    margin-top: 0 !important;
}
.fullstory .breadcrumbs {
    margin-top: 0 !important;
}
@media (min-width: 1200px) {
    .fullstory.section--head-fixed {
        margin-top: 100px !important;  /* 100px = высота .header__content на десктопе */
        padding-top: 24px !important;
    }
}
@media (max-width: 767px) {
    .fullstory.section--head-fixed {
        margin-top: 70px !important;
        padding-top: 16px !important;
    }
}




/* === Кинотрип: H1 — единый шрифт для названия, года и суффикса === */
.movie-title__year,
.movie-title__suffix {
    color: inherit;
    font-weight: inherit;
    font-size: inherit;
    text-transform: none;
    margin-left: 6px;
    letter-spacing: inherit;
    display: inline;
}


/* === Кинотрип: smart-picks (умная подборка) === */
.smart-picks {
    margin-top: 30px;
    padding-top: 20px;
}
.smart-picks__title {
    margin-bottom: 20px;
}
.smart-picks__loading,
.smart-picks__empty {
    color: #888;
    padding: 30px 15px;
    text-align: center;
    font-size: 14px;
    width: 100%;
}
.smart-picks__grid > [class*="col-"] {
    margin-bottom: 25px;
}
.smart-picks__card {
    display: block;
    text-decoration: none;
    color: inherit;
    transition: transform .2s;
}
.smart-picks__card:hover {
    transform: translateY(-4px);
    text-decoration: none;
    color: inherit;
}
.smart-picks__cover {
    position: relative;
    aspect-ratio: 2/3;
    border-radius: 10px;
    overflow: hidden;
    background: #1a1f2e;
    box-shadow: 0 4px 16px rgba(0,0,0,0.3);
    margin-bottom: 10px;
}
.smart-picks__cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .3s;
}
.smart-picks__card:hover .smart-picks__cover img {
    transform: scale(1.04);
}
.smart-picks__rating {
    position: absolute;
    top: 8px;
    right: 8px;
    background: rgba(0,0,0,0.75);
    color: #ffc312;
    padding: 3px 8px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}
.smart-picks__quality {
    position: absolute;
    top: 8px;
    left: 8px;
    background: #2f80ed;
    color: #fff;
    padding: 3px 8px;
    border-radius: 5px;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}
.smart-picks__caption {
    padding: 0 4px;
}
.smart-picks__name {
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 4px;
    transition: color .15s;
}
.smart-picks__card:hover .smart-picks__name {
    color: #2f80ed;
}
.smart-picks__meta {
    color: #888;
    font-size: 12px;
}

@media (max-width: 767px) {
    .smart-picks__name { font-size: 13px; }
    .smart-picks__meta { font-size: 11px; }
    .smart-picks__rating, .smart-picks__quality { font-size: 10px; padding: 2px 6px; }
}


/* На мобильных вернёмся к 16:9 — иначе плеер совсем вытянется */
@media (max-width: 767px) {
    
}


/* === Кинотрип: kt-fav (избранное) и player-actions === */
.player-actions {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    gap: 12px;
    margin: 0 0 24px;
    flex-wrap: wrap;
}

.kt-fav-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 18px;
    border: 1px solid rgba(47, 128, 237, 0.4);
    background: rgba(47, 128, 237, 0.08);
    color: #2f80ed;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all .15s;
    font-family: inherit;
}
.kt-fav-btn:hover {
    background: rgba(47, 128, 237, 0.18);
    border-color: rgba(47, 128, 237, 0.6);
    transform: translateY(-1px);
}
.kt-fav-btn__icon {
    transition: fill .2s, transform .2s;
    fill: none;
    stroke: currentColor;
}
.kt-fav-btn--active {
    background: #2f80ed;
    color: #fff;
    border-color: #2f80ed;
}
.kt-fav-btn--active .kt-fav-btn__icon {
    fill: #fff;
    stroke: #fff;
    animation: kt-heart-pop .35s ease;
}
@keyframes kt-heart-pop {
    0% { transform: scale(1); }
    50% { transform: scale(1.4); }
    100% { transform: scale(1); }
}

/* === Кинотрип: smart-picks отступы (ближе к плееру) === */
.smart-picks {
    margin-top: 8px !important;
    padding-top: 0 !important;
}
.smart-picks__title {
    margin-top: 10px !important;
    margin-bottom: 16px !important;
    padding-bottom: 10px !important;
}

/* Поджимаем форму добавления комментария */
.kt-comments .comments__form,
.kt-comments form[name="addcomments"] {
    margin-top: 24px !important;
    padding: 16px !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, 0.025) !important;
    border: 1px solid rgba(47, 128, 237, 0.15) !important;
}

/* Уменьшаем редактор bbcodes — по умолчанию он огромный */
.kt-comments .bb-editor,
.kt-comments .bb-pane,
.kt-comments textarea[name="comments"],
.kt-comments .sign__textarea {
    min-height: 100px !important;
    max-height: 150px !important;
    height: 110px !important;
    font-size: 14px !important;
    padding: 12px !important;
    border-radius: 8px !important;
}
.kt-comments .bb-pane {
    padding: 6px !important;
    margin-bottom: 6px !important;
}
.kt-comments .bb-pane button,
.kt-comments .bb-pane .bb-icon {
    padding: 4px 6px !important;
    margin: 0 1px !important;
    font-size: 13px !important;
}

/* Кнопка отправки коммента — компактная и в нашем синем */
.kt-comments .sign__btn,
.kt-comments input[type="submit"][name="comm"],
.kt-comments button[type="submit"] {
    height: 40px !important;
    padding: 0 24px !important;
    font-size: 13px !important;
    margin: 12px 0 0 !important;
    background: #2f80ed !important;
    border-radius: 8px !important;
    color: #fff !important;
    width: auto !important;
    min-width: 160px !important;
}
.kt-comments .sign__btn:hover {
    background: #1e6cc4 !important;
}

/* Поля ввода имени/email — компактнее */
.kt-comments .sign__input,
.kt-comments input[type="text"],
.kt-comments input[type="email"] {
    height: 38px !important;
    font-size: 13px !important;
    padding: 0 14px !important;
    border-radius: 8px !important;
}

/* Чекбокс "согласен с правилами" */
.kt-comments .sign__group--checkbox {
    margin-bottom: 8px !important;
    margin-top: 4px !important;
}
.kt-comments .sign__group--checkbox label {
    font-size: 12px !important;
}

/* Сами комментарии — компактнее */
.kt-comments .comments__item {
    padding: 14px !important;
    margin-bottom: 12px !important;
    border-radius: 10px !important;
}
.kt-comments .comments__autor {
    margin-bottom: 10px !important;
    padding-left: 50px !important;
}
.kt-comments .comments__avatar {
    width: 36px !important;
}
.kt-comments .comments__name { font-size: 14px !important; }
.kt-comments .comments__time { font-size: 11px !important; }
.kt-comments .comments__text { font-size: 14px !important; padding: 12px 0 !important; }
.kt-comments .comments__actions { padding-top: 12px !important; }

@media (max-width: 767px) {
    .kt-comments .comments__form,
    .kt-comments form[name="addcomments"] {
        padding: 12px !important;
    }
    .kt-comments .bb-editor { height: 90px !important; }
}


/* без blur, без brightness — постер виден как есть */
}

















@media (max-width: 767px) {
    
    
    
    
    
}


/* === Кинотрип: kt-preview обёртка плеера (с !important чтобы не перебивалось) === */

.kt-preview {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 100% !important;
    cursor: pointer;
    overflow: hidden;
    background: #0a0d14;
    z-index: 5 !important;
    border-radius: 12px;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.kt-preview__bg {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center 30% !important;
    transition: transform .3s !important;
    border-radius: 12px !important;
    display: block !important;
    z-index: 1;
}
.kt-preview:hover .kt-preview__bg {
    transform: scale(1.03);
}

.kt-preview__overlay {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.05) 0%,
        rgba(0,0,0,0.30) 60%,
        rgba(10,13,20,0.78) 100%
    ) !important;
    z-index: 2 !important;
    pointer-events: none;
    border-radius: 12px;
}

.kt-preview__content {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    z-index: 3 !important;
    padding: 20px;
    text-align: center;
}

.kt-preview__play {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 88px;
    height: 88px;
    border-radius: 50%;
    background: rgba(47, 128, 237, 0.95);
    color: #fff;
    border: 3px solid rgba(255, 255, 255, 0.9);
    cursor: pointer;
    transition: all .2s;
    box-shadow: 0 8px 32px rgba(47, 128, 237, 0.5), 0 0 0 8px rgba(47,128,237,0.18);
    margin-bottom: 16px;
    padding: 0 0 0 6px;
}
.kt-preview:hover .kt-preview__play {
    background: #2f80ed;
    transform: scale(1.08);
    box-shadow: 0 12px 40px rgba(47, 128, 237, 0.6), 0 0 0 12px rgba(47,128,237,0.20);
}
.kt-preview__play svg { width: 36px; height: 36px; }

.kt-preview__caption {
    color: rgba(255,255,255,0.92);
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 14px;
    text-shadow: 0 2px 8px rgba(0,0,0,0.85);
    font-weight: 500;
}

.kt-preview__title {
    color: #fff;
    font-size: 26px;
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 10px;
    text-shadow: 0 2px 16px rgba(0,0,0,0.85);
    max-width: 700px;
    font-family: 'Rubik', sans-serif;
}

.kt-preview__meta {
    list-style: none;
    margin: 0; padding: 0;
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    justify-content: center;
}
.kt-preview__meta li {
    color: #fff;
    font-size: 13px;
    padding: 4px 10px;
    background: rgba(0,0,0,0.5);
    border: 1px solid rgba(255,255,255,0.18);
    border-radius: 12px;
    text-shadow: 0 1px 4px rgba(0,0,0,0.7);
}

/* Правило только для video-player (после клика) — чтобы он растягивался на весь wrap */
.player-wrap > video-player,
.player-wrap > iframe {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    border: none !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
}

@media (max-width: 767px) {
    .kt-preview__play { width: 64px; height: 64px; }
    .kt-preview__play svg { width: 28px; height: 28px; }
    .kt-preview__title { font-size: 18px; }
    .kt-preview__caption { font-size: 11px; letter-spacing: 1px; }
    .kt-preview__meta li { font-size: 11px; padding: 3px 8px; }
}


/* === Кинотрип: H2 + плеер БЕЗ разрыва, с явной высотой === */

/* На странице фильма — отступ сверху ОТКЛЮЧАЕМ (внутри fullstory) */
.fullstory .player-col {
    margin-top: 20px;
    padding-top: 0 !important;
}

/* H2 над плеером — компактный, без огромных отступов */
.fullstory .player-col .section-title {
    margin: 0 0 14px 0 !important;
    padding-bottom: 10px !important;
    color: #fff;
    font-size: 22px;
    font-weight: 500;
    border-bottom: 2px solid rgba(47, 128, 237, 0.25);
}

/* Плеер: full-width, низкий cinemascope 21:9 + ФОЛЛБЭК через padding-top */
.player-wrap {
    width: 100%;
    background: #000;
    border-radius: 12px;
    overflow: hidden;
    margin: 0 0 16px 0;
    position: relative;
    /* Современные браузеры: aspect-ratio */
    aspect-ratio: 21 / 9;
    /* Фоллбэк через padding-trick (на случай если aspect-ratio не сработает) */
    min-height: 400px;
}

/* Современный браузер с aspect-ratio: убираем min-height чтобы aspect-ratio решал */
@supports (aspect-ratio: 21 / 9) {
    .player-wrap {
        min-height: 0;
    }
}

/* Узкий селектор: только video-player и iframe — НЕ ТРОГАЕМ kt-preview */
.player-wrap > video-player,
.player-wrap > iframe {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    border: none !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
}

/* Мобильные: 16:9 — иначе слишком плоско */
@media (max-width: 767px) {
    .player-wrap {
        aspect-ratio: 16 / 9;
        min-height: 220px;
    }
    .fullstory .player-col .section-title {
        font-size: 18px;
    }
}


/* Mega-dropdown */
.kt-mega {
    position: absolute;
    top: 100%;
    left: -20px;
    width: 540px;
    padding: 24px;
    background: #151f30;
    border-radius: 14px;
    box-shadow: 0 16px 48px rgba(0,0,0,0.6), 0 0 0 1px rgba(47,128,237,0.18);
    display: none;
    grid-template-columns: 1fr 1fr auto;
    gap: 24px;
    z-index: 1000;
}
@media (min-width: 1200px) {
    .kt-nav-item--mega:hover .kt-mega {
        display: grid;
    }
}

.kt-mega__col {
    min-width: 0;
}
.kt-mega__col--cta {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}

.kt-mega__title {
    color: #888;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 12px;
}

.kt-mega ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 4px 12px;
}
.kt-mega__years {
    grid-template-columns: 1fr 1fr 1fr !important;
}
.kt-mega ul li a {
    display: block;
    color: #ccc;
    font-size: 13px;
    line-height: 1.6;
    padding: 4px 6px;
    border-radius: 6px;
    text-decoration: none;
    transition: all .12s;
    white-space: nowrap;
}
.kt-mega ul li a:hover {
    color: #fff;
    background: rgba(47,128,237,0.18);
    text-decoration: none;
}

.kt-mega__cta {
    display: inline-flex;
    align-items: center;
    padding: 8px 14px;
    background: #2f80ed;
    color: #fff !important;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    transition: background .15s;
    white-space: nowrap;
}
.kt-mega__cta:hover {
    background: #1e6cc4;
    color: #fff !important;
}

/* На мобильных mega-menu превращается в обычный список */
@media (max-width: 1199px) {
    .kt-mega {
        position: static;
        width: 100%;
        background: rgba(255,255,255,0.04);
        padding: 14px;
        margin: 8px 0 12px;
        border-radius: 10px;
        box-shadow: none;
        display: none;
        grid-template-columns: 1fr 1fr;
    }
    .kt-nav-item--mega.kt-nav-item--open .kt-mega {
        display: grid;
    }
    .kt-mega__col--cta { grid-column: 1 / -1; justify-content: stretch; }
    .kt-mega__cta { width: 100%; justify-content: center; }
    .kt-mega ul { grid-template-columns: 1fr 1fr; }
    .kt-mega__years { grid-template-columns: 1fr 1fr 1fr !important; }
}

/* Подборки landing page */
.kt-podborki {
    padding: 30px 0 60px;
}
.kt-podborki h1 {
    color: #fff; font-size: 32px; margin-bottom: 30px;
}
.kt-podborki__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 16px;
}
.kt-podborki__card {
    background: #151f30;
    border-radius: 12px;
    padding: 24px 20px;
    text-decoration: none;
    color: #fff;
    transition: transform .15s, background .15s;
    border: 1px solid rgba(47,128,237,0.15);
}
.kt-podborki__card:hover {
    background: rgba(47,128,237,0.12);
    transform: translateY(-2px);
    text-decoration: none;
    color: #fff;
}
.kt-podborki__name {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 6px;
}
.kt-podborki__desc {
    font-size: 13px;
    color: #aaa;
    line-height: 1.4;
}


/* === Кинотрип: kt-home-cat (категории на главной) === */
.kt-home-cats {
    padding: 30px 0 40px;
}
.kt-home-cat {
    margin-bottom: 50px;
}
.kt-home-cat:last-child {
    margin-bottom: 0;
}

.kt-home-cat__head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    margin: 0 0 20px;
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(47, 128, 237, 0.18);
}

.kt-home-cat__title {
    font-family: 'Rubik', sans-serif;
    font-size: 24px;
    font-weight: 500;
    margin: 0;
    color: #fff;
}
.kt-home-cat__title a {
    color: #fff;
    text-decoration: none;
    transition: color .15s;
}
.kt-home-cat__title a:hover {
    color: #2f80ed;
    text-decoration: none;
}

.kt-home-cat__more {
    font-size: 13px;
    color: #888;
    text-decoration: none;
    transition: color .15s;
    font-weight: 500;
}
.kt-home-cat__more:hover {
    color: #2f80ed;
    text-decoration: none;
}

.kt-home-cat__grid {
    min-height: 100px;
}
.kt-home-cat__grid > [class*="col-"] {
    margin-bottom: 22px;
}
.kt-home-cat__loading,
.kt-home-cat__empty {
    color: #666;
    padding: 30px 15px;
    text-align: center;
    width: 100%;
    font-size: 14px;
}

/* === Кинотрип: kt-card-mini (карточка в секциях главной) === */
.kt-card-mini {
    display: block;
    text-decoration: none;
    color: inherit;
    transition: transform .2s;
}
.kt-card-mini:hover {
    transform: translateY(-3px);
    text-decoration: none;
    color: inherit;
}
.kt-card-mini__cover {
    position: relative;
    aspect-ratio: 2 / 3;
    border-radius: 10px;
    overflow: hidden;
    background: #1a1f2e;
    box-shadow: 0 4px 16px rgba(0,0,0,0.3);
    margin-bottom: 10px;
}
.kt-card-mini__cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .3s;
}
.kt-card-mini:hover .kt-card-mini__cover img {
    transform: scale(1.04);
}
.kt-card-mini__rating {
    position: absolute;
    top: 8px;
    right: 8px;
    background: rgba(0,0,0,0.78);
    color: #ffc312;
    padding: 3px 8px;
    border-radius: 6px;
    font-size: 12px;
    font-weight: 600;
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
}
.kt-card-mini__quality {
    position: absolute;
    top: 8px;
    left: 8px;
    background: #2f80ed;
    color: #fff;
    padding: 3px 8px;
    border-radius: 5px;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.4px;
}
.kt-card-mini__name {
    color: #fff;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    margin-bottom: 4px;
    transition: color .15s;
    padding: 0 4px;
}
.kt-card-mini:hover .kt-card-mini__name {
    color: #2f80ed;
}
.kt-card-mini__meta {
    color: #888;
    font-size: 12px;
    padding: 0 4px;
}

@media (max-width: 767px) {
    .kt-home-cat { margin-bottom: 36px; }
    .kt-home-cat__title { font-size: 20px; }
    .kt-card-mini__name { font-size: 13px; }
    .kt-card-mini__meta { font-size: 11px; }
    .kt-card-mini__rating, .kt-card-mini__quality { font-size: 10px; padding: 2px 6px; }
}


/* Шапка слайдер-секции — заголовок + стрелки навигации справа */
.kt-slider-section .kt-home-cat__head {
    margin-bottom: 18px;
}

.kt-slider-nav {
    display: flex;
    gap: 8px;
}
.kt-slider-nav__btn {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: rgba(47, 128, 237, 0.10);
    border: 1px solid rgba(47, 128, 237, 0.25);
    color: #2f80ed;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all .15s;
    padding: 0;
}
.kt-slider-nav__btn:hover {
    background: #2f80ed;
    color: #fff;
    border-color: #2f80ed;
}

/* Сама карусель — точные стили обнуления */
.kt-slider {
    width: 100%;
}
.kt-slider .owl-stage-outer {
    overflow: hidden;
}
.kt-slider.owl-carousel .owl-stage {
    display: flex;
}
.kt-slider.owl-carousel .owl-item {
    display: flex;
}

.kt-slider .owl-dots {
    display: flex;
    justify-content: center;
    margin-top: 16px;
    gap: 6px;
}
.kt-slider .owl-dot span {
    display: block;
    width: 18px;
    height: 4px;
    border-radius: 3px;
    background: rgba(255,255,255,0.18);
    transition: all .2s;
}
.kt-slider .owl-dot.active span,
.kt-slider .owl-dot:hover span {
    background: #2f80ed;
    width: 28px;
}

/* Карточка слайдера — наследует .kt-card-mini, без переопределений */
.kt-slider .kt-card-mini {
    width: 100%;
    margin: 0;
}

/* Скрываем старые home__nav (они стояли absolute по краям страницы) */
.home__nav,
.home {
    display: none !important;
}

@media (max-width: 767px) {
    .kt-slider-section { padding: 20px 0 0 !important; }
    .kt-slider-nav__btn { width: 32px; height: 32px; }
}


/* === Кинотрип: kt-slider (новинки 2026) с круглыми боковыми стрелками === */

.kt-slider-section {
    padding: 30px 0 10px !important;
    border: none;
    background: transparent;
}

/* Заголовок-H1 над слайдером */
.kt-slider-head {
    margin-bottom: 18px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(47, 128, 237, 0.18);
}
.kt-slider-h1 {
    font-family: 'Rubik', sans-serif;
    font-size: 28px;
    font-weight: 500;
    margin: 0;
    color: #fff;
    line-height: 1.2;
}
.kt-slider-h1 a {
    color: #fff;
    text-decoration: none;
    transition: color .15s;
}
.kt-slider-h1 a:hover {
    color: #2f80ed;
    text-decoration: none;
}

/* Обёртка для слайдера + стрелки */
.kt-slider-wrap {
    position: relative;
}

/* Круглые синие стрелки по бокам */
.kt-slider-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #2f80ed;
    color: #fff;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    box-shadow: 0 4px 16px rgba(47, 128, 237, 0.4);
    transition: all .15s;
    padding: 0;
}
.kt-slider-arrow:hover {
    background: #1e6cc4;
    transform: translateY(-50%) scale(1.08);
    box-shadow: 0 6px 24px rgba(47, 128, 237, 0.55);
}
.kt-slider-arrow:active {
    transform: translateY(-50%) scale(0.95);
}
.kt-slider-arrow svg {
    width: 18px;
    height: 18px;
}

/* Позиционирование стрелок: чуть выходят за границы карточек */
.kt-slider-arrow--prev {
    left: -20px;
}
.kt-slider-arrow--next {
    right: -20px;
}

/* На малых экранах — стрелки внутри слайдера, чтобы не вылезали за экран */
@media (max-width: 1199px) {
    .kt-slider-arrow--prev { left: 6px; }
    .kt-slider-arrow--next { right: 6px; }
    .kt-slider-arrow {
        background: rgba(47, 128, 237, 0.92);
        backdrop-filter: blur(6px);
        -webkit-backdrop-filter: blur(6px);
    }
}

/* На совсем мобильных — скрываем стрелки, остаётся свайп */
@media (max-width: 480px) {
    .kt-slider-arrow {
        display: none;
    }
}

/* Сама карусель */
.kt-slider {
    width: 100%;
    min-height: 280px;
}
.kt-slider .owl-stage-outer {
    overflow: hidden;
    border-radius: 8px;
}
.kt-slider.owl-carousel .owl-stage {
    display: flex;
}
.kt-slider.owl-carousel .owl-item {
    display: flex;
}

.kt-slider__loading,
.kt-slider__empty {
    color: #888;
    text-align: center;
    padding: 80px 20px;
    width: 100%;
    font-size: 14px;
}

.kt-slider .owl-dots {
    display: flex;
    justify-content: center;
    margin-top: 16px;
    gap: 6px;
}
.kt-slider .owl-dot span {
    display: block;
    width: 18px;
    height: 4px;
    border-radius: 3px;
    background: rgba(255,255,255,0.18);
    transition: all .2s;
}
.kt-slider .owl-dot.active span,
.kt-slider .owl-dot:hover span {
    background: #2f80ed;
    width: 28px;
}

.kt-slider .kt-card-mini {
    width: 100%;
    margin: 0;
}

/* Скрываем старый FlixTV home (если где-то ещё рендерится) */
.home, .home__nav { display: none !important; }

@media (max-width: 767px) {
    .kt-slider-section { padding: 20px 0 0 !important; }
    .kt-slider-h1 { font-size: 22px; }
}


/* Логотип: выровнен по левой границе .container (как меню Фильмы/Сериалы) */
.header__logo {
    margin-left: 15px !important;  /* стандартный bootstrap padding контейнера */
}
@media (min-width: 1200px) {
    .header__logo {
        margin-left: 0 !important;
    }
}

/* Слайдер на главной: учитываем высоту фиксированной шапки чтобы H1 был виден */
.kt-slider-section {
    padding-top: 80px !important;  /* 80-100px шапка + ~20px воздух */
}
@media (min-width: 1200px) {
    .kt-slider-section {
        padding-top: 130px !important;
    }
}
@media (max-width: 767px) {
    .kt-slider-section {
        padding-top: 95px !important;
    }
}

/* Mega-меню: больше gap между колонками «Жанры» и «По годам» */
.kt-mega {
    gap: 40px !important;
}
@media (max-width: 1199px) {
    .kt-mega {
        gap: 16px !important;
    }
}

/* Также увеличим внутренний gap между ссылками в колонках */
.kt-mega ul {
    gap: 4px 24px !important;
}

/* Login modal — убираем элементы регистрации/восстановления пароля если CSS их зацепил */
.sign__text:has(a[href*="registration"]),
.sign__text:has(a[href*="lostpassword"]) {
    display: none !important;
}
.sign__social {
    display: none !important;
}
.sign__delimiter {
    display: none !important;
}


/* === Кинотрип: kt-nav mega-menu (v2 — широкий popup, без слипания) === */

.kt-nav .header__nav-link {
    display: inline-flex !important;
    align-items: center;
    gap: 6px;
    font-weight: 500;
    transition: color .15s;
}
.kt-nav .header__nav-link svg {
    width: 8px;
    height: 5px;
    fill: currentColor;
    opacity: 0.6;
    transition: transform .2s;
}
.kt-nav-item--mega:hover .header__nav-link svg {
    transform: rotate(180deg);
}
.kt-nav .header__nav-link:hover {
    color: #2f80ed;
}

/* Mega-dropdown — 3 чёткие колонки с большими промежутками */
.kt-mega {
    position: absolute;
    top: 100%;
    left: -20px;
    width: 720px;            /* было 540px — расширили */
    padding: 28px;
    background: #151f30;
    border-radius: 14px;
    box-shadow: 0 16px 48px rgba(0,0,0,0.6), 0 0 0 1px rgba(47,128,237,0.18);
    display: none;
    grid-template-columns: 220px 1fr 130px;  /* Жанры 220px | Годы flex | CTA 130px */
    gap: 36px;                /* большой промежуток между колонками */
    z-index: 1000;
}
@media (min-width: 1200px) {
    .kt-nav-item--mega:hover .kt-mega {
        display: grid;
    }
}

.kt-mega__col {
    min-width: 0;
}
.kt-mega__col--cta {
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}

.kt-mega__title {
    color: #888;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 14px;
    padding-bottom: 8px;
    border-bottom: 1px solid rgba(47,128,237,0.15);
}

/* Жанры — 1 колонка, 7 пунктов слева + 7 справа делает каждая колонка узкая.
   Лучше 2 колонки внутри жанров. */
.kt-mega ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2px 16px;
}

/* Годы — 4 колонки (4×4=16, ~17 годов 2010-2026) */
.kt-mega__years {
    grid-template-columns: 1fr 1fr 1fr 1fr !important;
    gap: 2px 12px !important;
}

.kt-mega ul li a {
    display: block;
    color: #ccc;
    font-size: 13px;
    line-height: 1.5;
    padding: 5px 8px;
    border-radius: 6px;
    text-decoration: none;
    transition: all .12s;
    white-space: nowrap;
}
.kt-mega ul li a:hover {
    color: #fff;
    background: rgba(47,128,237,0.18);
    text-decoration: none;
}

.kt-mega__cta {
    display: inline-flex;
    align-items: center;
    padding: 10px 18px;
    background: #2f80ed;
    color: #fff !important;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 500;
    text-decoration: none;
    transition: background .15s;
    white-space: nowrap;
}
.kt-mega__cta:hover {
    background: #1e6cc4;
    color: #fff !important;
}

/* На мобильных — обычный список */
@media (max-width: 1199px) {
    .kt-mega {
        position: static;
        width: 100%;
        background: rgba(255,255,255,0.04);
        padding: 14px;
        margin: 8px 0 12px;
        border-radius: 10px;
        box-shadow: none;
        display: none;
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .kt-nav-item--mega.kt-nav-item--open .kt-mega {
        display: grid;
    }
    .kt-mega__col--cta { justify-content: stretch; }
    .kt-mega__cta { width: 100%; justify-content: center; }
    .kt-mega ul { grid-template-columns: 1fr 1fr; gap: 2px 12px; }
    .kt-mega__years { grid-template-columns: 1fr 1fr 1fr 1fr !important; }
}

/* Подборки landing page (без изменений) */
.kt-podborki {
    padding: 30px 0 60px;
}
.kt-podborki h1 {
    color: #fff; font-size: 32px; margin-bottom: 30px;
}
.kt-podborki__grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 16px;
}
.kt-podborki__card {
    background: #151f30;
    border-radius: 12px;
    padding: 24px 20px;
    text-decoration: none;
    color: #fff;
    transition: transform .15s, background .15s;
    border: 1px solid rgba(47,128,237,0.15);
}
.kt-podborki__card:hover {
    background: rgba(47,128,237,0.12);
    transform: translateY(-2px);
    text-decoration: none;
    color: #fff;
}
.kt-podborki__name {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 6px;
}
.kt-podborki__desc {
    font-size: 13px;
    color: #aaa;
    line-height: 1.4;
}

/* === Header layout fixes (logo + slider top padding) === */

/* Логотип: выровнен по левой границе .container */
.header__logo {
    margin-left: 15px !important;
}
@media (min-width: 1200px) {
    .header__logo {
        margin-left: 0 !important;
    }
}

/* Слайдер: учитываем фиксированную шапку */
.kt-slider-section {
    padding-top: 80px !important;
}
@media (min-width: 1200px) {
    .kt-slider-section {
        padding-top: 130px !important;
    }
}
@media (max-width: 767px) {
    .kt-slider-section {
        padding-top: 95px !important;
    }
}

/* Login modal cleanup */
.sign__text:has(a[href*="registration"]),
.sign__text:has(a[href*="lostpassword"]) { display: none !important; }
.sign__social { display: none !important; }
.sign__delimiter { display: none !important; }


/* === Кинотрип: cat/xfsearch landing top fix === */

/* H1 на категориях/xfsearch — компактный отступ сверху */
.section--head .section__title.section__title--head {
    margin-top: 0 !important;
    padding-top: 0 !important;
    margin-bottom: 16px !important;
    font-size: 28px !important;
    font-weight: 500 !important;
    line-height: 1.2 !important;
}

/* Сама секция head на категориях — компактный padding (но шапка не должна накрывать) */
body:not(.is-home) .section--head {
    padding-top: 80px !important;     /* шапка ~80-100px + 10-30px воздух */
    padding-bottom: 16px !important;
}

@media (min-width: 1200px) {
    body:not(.is-home) .section--head {
        padding-top: 95px !important;
    }
}

@media (max-width: 767px) {
    body:not(.is-home) .section--head {
        padding-top: 80px !important;
    }
    .section--head .section__title.section__title--head {
        font-size: 22px !important;
    }
}

/* Проще: применим ко всем .section--head (на главной у нас своя kt-slider-section) */
.section--head {
    padding-top: 80px !important;
    padding-bottom: 16px !important;
}
@media (min-width: 1200px) {
    .section--head {
        padding-top: 95px !important;
    }
}
@media (max-width: 767px) {
    .section--head {
        padding-top: 80px !important;
    }
}

/* Описание категории — компактнее */
.section--head .section__text {
    font-size: 14px !important;
    margin-top: 4px !important;
    line-height: 1.5;
    color: #aaa !important;
}


/* === Кинотрип: kill gap между H1 и сеткой на категориях/xfsearch === */

/* .catalog — родитель сетки постеров на категориях */
.catalog,
.catalog--page {
    padding-top: 0 !important;
    padding-bottom: 30px !important;
    margin-top: 0 !important;
}
.catalog .container > .row,
.catalog--page .container > .row {
    margin-top: 0 !important;
}

/* Первая карточка/article в листинге — не должна иметь огромный margin-top */
.catalog .card,
.catalog--page .card {
    margin-top: 16px !important;
}
@media (min-width: 768px) {
    .catalog .card,
    .catalog--page .card {
        margin-top: 20px !important;
    }
}

/* section--head после H1 — padding-bottom = 0 */
.section--head {
    padding-bottom: 0 !important;
}

/* Если breadcrumbs выводятся отдельным блоком — нет нижнего отступа */
.section--head .breadcrumb {
    margin-bottom: 0 !important;
    margin-top: 4px !important;
}

/* Чистим speedbar если он висит между */
.speedbar {
    margin: 0 !important;
    padding: 0 !important;
    font-size: 13px;
    color: #888;
}
.speedbar a {
    color: #2f80ed;
}


/* === Кинотрип: kt-comments (свой модуль с фильтрами) === */

.kt-comments {
    margin-top: 30px;
    padding-top: 28px;
    border-top: 1px solid rgba(47, 128, 237, 0.12);
}
.kt-comments__title {
    color: #fff;
    font-size: 22px;
    font-weight: 500;
    margin: 0 0 18px;
    padding-bottom: 10px;
    border-bottom: 2px solid rgba(47, 128, 237, 0.25);
}

/* === Форма === */
.kt-comments__form {
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(47, 128, 237, 0.15);
    border-radius: 12px;
    padding: 18px;
    margin-bottom: 24px;
}
.kt-comments__row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
    margin-bottom: 10px;
}
@media (max-width: 575px) {
    .kt-comments__row {
        grid-template-columns: 1fr;
    }
}
.kt-comments__input,
.kt-comments__textarea {
    width: 100%;
    background: rgba(0,0,0,0.25);
    border: 1px solid rgba(47, 128, 237, 0.2);
    color: #fff;
    border-radius: 8px;
    padding: 10px 14px;
    font-size: 14px;
    font-family: inherit;
    transition: border-color .15s, background .15s;
}
.kt-comments__input:focus,
.kt-comments__textarea:focus {
    outline: none;
    border-color: #2f80ed;
    background: rgba(0,0,0,0.4);
}
.kt-comments__textarea {
    min-height: 90px;
    resize: vertical;
    line-height: 1.5;
}
.kt-comments__textarea::placeholder,
.kt-comments__input::placeholder {
    color: rgba(255,255,255,0.35);
}

/* Honeypot — невидимое поле для ботов */
.kt-comments__honeypot {
    position: absolute;
    left: -9999px;
    top: -9999px;
    height: 0;
    width: 0;
    overflow: hidden;
    opacity: 0;
    pointer-events: none;
}

/* Капча */
.kt-comments__captcha {
    display: flex;
    align-items: center;
    gap: 12px;
    margin: 12px 0;
    flex-wrap: wrap;
}
.kt-comments__captcha-q {
    color: #ccc;
    font-size: 14px;
}
.kt-comments__captcha-q b {
    color: #2f80ed;
    font-weight: 600;
    font-size: 16px;
}
.kt-comments__captcha-input {
    width: 80px;
    background: rgba(0,0,0,0.25);
    border: 1px solid rgba(47, 128, 237, 0.2);
    color: #fff;
    border-radius: 8px;
    padding: 8px 12px;
    font-size: 14px;
    text-align: center;
}
.kt-comments__captcha-input:focus {
    outline: none;
    border-color: #2f80ed;
}

/* Кнопка отправки + правила */
.kt-comments__actions {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
    margin-top: 8px;
}
.kt-comments__submit {
    background: #2f80ed;
    color: #fff;
    border: none;
    padding: 10px 24px;
    border-radius: 8px;
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: background .15s, transform .1s;
    font-family: inherit;
}
.kt-comments__submit:hover:not(:disabled) {
    background: #1e6cc4;
}
.kt-comments__submit:active:not(:disabled) {
    transform: scale(0.97);
}
.kt-comments__submit:disabled {
    opacity: 0.6;
    cursor: wait;
}
.kt-comments__rules {
    color: #777;
    font-size: 12px;
    flex: 1;
    line-height: 1.4;
}

/* Сообщение после отправки */
.kt-comments__msg {
    margin-top: 12px;
    padding: 10px 14px;
    border-radius: 8px;
    font-size: 14px;
    line-height: 1.4;
}
.kt-comments__msg--ok {
    background: rgba(46, 213, 115, 0.12);
    border: 1px solid rgba(46, 213, 115, 0.3);
    color: #2ed573;
}
.kt-comments__msg--err {
    background: rgba(255, 71, 87, 0.12);
    border: 1px solid rgba(255, 71, 87, 0.3);
    color: #ff6b7a;
}
.kt-comments__msg--info {
    background: rgba(47, 128, 237, 0.12);
    border: 1px solid rgba(47, 128, 237, 0.3);
    color: #5a9af0;
}

/* === Список комментариев === */
.kt-comments__list {
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.kt-comments__loading,
.kt-comments__empty {
    color: #777;
    text-align: center;
    padding: 28px 16px;
    font-size: 14px;
}

.kt-comment {
    display: flex;
    gap: 14px;
    padding: 14px;
    background: rgba(255,255,255,0.025);
    border-radius: 10px;
    border-left: 2px solid rgba(47, 128, 237, 0.25);
}
.kt-comment__avatar {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2f80ed, #1e6cc4);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 14px;
    text-transform: uppercase;
}
.kt-comment__main {
    flex: 1;
    min-width: 0;
}
.kt-comment__head {
    display: flex;
    align-items: baseline;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 6px;
}
.kt-comment__name {
    color: #fff;
    font-size: 14px;
    font-weight: 500;
}
.kt-comment__time {
    color: #777;
    font-size: 12px;
}
.kt-comment__body {
    color: #d8d8d8;
    font-size: 14px;
    line-height: 1.55;
    word-wrap: break-word;
    overflow-wrap: anywhere;
}

@media (max-width: 575px) {
    .kt-comments__form { padding: 14px; }
    .kt-comments__title { font-size: 18px; }
    .kt-comment { padding: 12px; gap: 10px; }
    .kt-comment__avatar { width: 32px; height: 32px; font-size: 13px; }
    .kt-comment__rules { width: 100%; }
}

/* === Уменьшаем gap шапка → H1 / H1 → сетка === */
.catalog--page { padding-top: 16px !important; padding-bottom: 40px !important; }
@media (min-width: 768px) { .catalog--page { padding-top: 16px !important; } }
@media (min-width: 1200px) { .catalog--page { padding-top: 18px !important; } }

/* gap между описанием категории и сеткой постеров — было слишком много */
.section--head .section__text { margin-bottom: 0 !important; }
.section--head { padding-bottom: 8px !important; }

/* Главная: kt-slider-section тоже не отступает гигантски */
body.is-home .kt-slider-section,
.kt-slider-section { padding-top: 95px !important; padding-bottom: 20px !important; }
@media (max-width: 767px) {
    body.is-home .kt-slider-section,
    .kt-slider-section { padding-top: 80px !important; }
}

/* Страница фильма — тоже */
.fullstory.section--head-fixed { margin-top: 0 !important; padding-top: 95px !important; }
@media (max-width: 767px) { .fullstory.section--head-fixed { padding-top: 80px !important; } }
