/* BASIC LAYOUT
----------------------------------------------- */
.wrapper {min-width: 320px; position: relative;}
.wrapper__container {max-width: var(--max-width); margin: 50px auto; position: relative; z-index: 20;border-radius: 20px;}
.wrapper__main {/*background-color: var(--bdc);*/}
.wrapper__main_bg {background-color: var(--bdc) !important;}
.wrapper__main_topborder {border-radius: 20px 20px 0 0 !important;}
.header {padding: var(--indent20); /*background-color: var(--bg);*/ position: relative; z-index: 100; min-height: 70px;border-radius: 20px 20px 0 0;}
.content {padding: 30px; position: relative; z-index: 50; background-color: var(--bdc); min-height: 80vh;}
.footer {background-color: var(--bg-footer); padding: 50px var(--indent); margin-top: 0px; border-radius: 0 0 20px 20px;}
.footer__main {gap: 40px var(--indent); padding-top: 20px;}
.footer__bottom {margin-top: 50px;}
body.has-branding {padding-top: 200px;}
.has-branding .wrapper {max-width: var(--max-width); margin: 0 auto; overflow: hidden;}
.has-branding .wrapper__main-page .header {padding-left: var(--indent); padding-right: var(--indent);}
.has-branding .bslide__desc {padding-left: var(--indent);}
.has-branding .slider {margin-left: 0; margin-right: 0;}

.scrolltop {position: fixed; width: 44px; height: 40px; right: -60px; bottom: 10px;
	z-index: 990; border-radius: 30px; font-size: 20px; opacity: 0; transition: right 0.2s, opacity 0.2s;}
.scrolltop.is-active {right: 10px; opacity: 1;}


/* HEADER
----------------------------------------------- */
.header__logo {display: block; margin-right: 30px; text-transform: uppercase; position: relative; isolation: isolate; max-width: 250px;} 
.header__logo img {width: 250px;}
/*.header__logo::before {content: attr(data-text); width: 40px; height: 40px; border-radius: 50%; background-color: var(--accent-violet); overflow: hidden; white-space: nowrap; line-height: 40px;position: absolute; left: 0; top: 50%; transform: translate(0,-50%); color: #fff;}*/
.theme-toggle {margin-left: 10px; font-size: 16px; min-width: 30px; height: 30px;}
.dt-is-active .theme-toggle::before {content:"\f186";}
.header__btn-login {height: 30px; padding: 0 30px; margin-left: 20px;}
.header__btn-search {font-size: 16px; min-width: 30px; height: 30px; margin-left: 10px;}
.header__login-img {width: 40px; height: 40px; border-radius: 50%; cursor: pointer; margin-left: 20px;}
.header__favlink {font-size: 24px; display: none;/*display: block;*/ position: relative; margin-left: 20px;}
.header__favlink span {border-radius: 3px; background: var(--btn-gradient); color: var(--tt-btn); 
	font-size: 10px; position: absolute; right: -10px; top: -1px; min-width: 20px; text-align: center;}

.header__login-panel {position: absolute; right: 0; top: 100%; width: 240px; padding-bottom: 10px;
	background-color: var(--bg); box-shadow: var(--bsh); border-radius: 6px; margin-top: 15px;}
.header__login-header {padding: 20px; color: var(--tt); font-weight: 700; gap: 20px; border-bottom: 1px solid var(--bdc);
	background-color: var(--ui-bg-darker); margin-bottom: 10px; border-radius: 6px 6px 0 0;}
.header__login-avatar {width: 40px; height: 40px; border-radius: 50%;}
.header__login-group span {font-size: 12px; font-weight: 400; margin-top: 2px; 
	display: block; color: var(--ui-tt-fade) !important;}
.header__login-menu a {display: flex; align-items: center; min-height: 30px; padding: 0 20px 0 0;}
.header__login-menu a::before {width: 40px; text-align: center; color: var(--accent-violet);}
.header__login-menu-border {border-top: 1px solid var(--bdc); margin-top: 10px; padding-top: 10px;}
.header__login-menu a span {font-size: 12px; margin-left: auto;}

.search-is-active {padding-right: var(--scrWidth,15px); overflow: hidden;}
.search-is-active .header__menu {display: none;}
.search-is-active .header__search {display: block;}
.search-is-active .header > button, .search-is-active .header ~ * {pointer-events: none;}
.search-is-active .search-block__input {box-shadow: none !important;}

.search-block {width: 100%; position: relative; margin-right: 50px;}
.search-block__input, .search-block__input:focus {border-radius: 8px; padding: 0 50px 0 20px; 
	border: 1px solid #ffffff38; box-shadow: none; background-color: #ffffff12; color: #ffffff;}
.search-block__input:not(:focus)::placeholder {color: var(--tt-fade); opacity: 1; font-size: 14px;}
.search-block__btn {position: absolute; right: 0; top: 0; width: 50px; border-radius: 0px; font-size: 16px; color: #ffffff9e;}

/* SEARCH RESPONSIVE
   - >= 1221px: форма видна, кнопка вызова скрыта
   - <= 1220px: форма скрыта и показывается только при search-is-active
----------------------------------------------- */
@media screen and (min-width: 1221px) {
	body.search-is-active {overflow: auto;}
	body.search-is-active::before {content: none;}
	.header__btn-search {display: none;}
	.header__search {max-width: 300px;}
	.search-block {margin-right: 0px;}

	/* если пользователь открыл поиск на мобильном и расширил окно */
	body.search-is-active {padding-right: 0; overflow: visible;}
	body.search-is-active .header__menu {display: flex;}
	body.search-is-active .header > button, body.search-is-active .header ~ * {pointer-events: auto;}
	body.search-is-active .search-block__input {box-shadow: none !important;}
}

.wrapper__main-page .header {background-color: transparent; padding: 20px;}
.wrapper__main-page .header__logo, .wrapper__main-page .header__menu > li > a, 
.wrapper__main-page .header > button, .wrapper__main-page .header__login, .wrapper__main-page .header__favlink {color: #fff;}


/* NAV
----------------------------------------------- */
.header__menu {gap: 20px; position: relative;}
.header__menu > li > a {font-weight: 800; height: 60px; display: flex; align-items: center; 
	font-size: 16px; text-transform: uppercase; gap: 10px;}
.header__menu-submenu {position: absolute; top: 100%; left: 0; z-index: 100; border-radius: 6px;
	background-color: var(--bg); box-shadow: var(--bsh); width: 100%; padding: 30px 35px; 
	display: grid; gap: 5px 20px; grid-template-columns: repeat(auto-fill,minmax(150px,1fr)); display: none;}
.header__menu-submenu a {display: block; padding: 5px 10px; border-radius: var(--bdrs);}
.header__menu-has-submenu > a::after {content:"\f078"; font-weight: 300; font-family:'Font Awesome 5 Pro';}
.header__menu > li:hover .header__menu-submenu {display: grid;}
.header__menu-hidden a:hover, .theme-toggle:hover {background: var(--btn-gradient); color: var(--tt-btn);}


/* SLIDER
----------------------------------------------- */
@media screen and (max-width: 760px) {
.main-slider-thumbs {display: none;}
#main-slider-thumbs {display: none;}
.slide__logo {max-width:200px;}
}
.slide__logo {max-width:350px;}
.slider {background-color: #000; max-width: var(--max-width); margin: 0 auto; margin-top: -110px; border-radius: 20px 20px 0 0; position: relative; overflow: hidden;}
.bslide {padding:20px;height: 600px; position: relative; color: #fff; --tt: rgba(255,255,255,0.7);}
.bslide__img {position: absolute; inset: 0; bottom: -250px;}
.bslide__img::before, .mslide__img::before {position: absolute; inset: 0; z-index: 1;background: linear-gradient(90deg,rgba(20, 23, 34, 0.15) 0%, rgba(20, 23, 34, 0.5) 50%, rgba(20, 23, 34, 1) 100%);/*background-color: rgba(20, 23, 34,0.7);*/ content: ''; backdrop-filter: blur(0px) grayscale(0.20);}
.bslide__img::after {position: absolute; inset: 0; z-index: 2; content: ''; 
	background: linear-gradient(to top, #000 0%, transparent 200px);;}
.bslide__desc {position: relative; z-index: 5; padding-top: 180px; max-width: var(--max-width); margin: 0 auto;}
.bslide__info {gap: 40px;}
.bslide__title {font-size: 50px; height: 150px; max-width: 870px; line-height: 1; position: relative; top: -10px;}
.bslide__info-item {max-width: 700px; font-size: 14px; color: rgba(255,255,255,0.7); line-height: 1.8;}
.bslide__info-item-title {font-weight: 700; margin-bottom: 10px;}
.bslide__btn {height: 48px; padding: 0 40px; font-size: 14px; font-weight: 700;}
.bslide__info-item-accent {color: #fff; margin-top: -10px; font-weight: 700; text-transform: uppercase;}
.bslide__btn-trailer {width: 80px; height: 80px; position: absolute; right: 340px; top: 100px;
	border-radius: 50%; background-color: #fff; color: #000; font-size: 18px; padding: 0; padding-left: 3px;}
.bslide__btn-trailer::after {content: attr(data-text); color: transparent; font-size: 70px; position: absolute; 
	-webkit-text-stroke: 1px rgba(255,255,255,0.7); left: 100%; top: 50%; transform: translate(0,-50%); 
	letter-spacing: 2px; text-transform: none; margin-left: 40px;}
.mslide {color: #fff; cursor: pointer;}
.mslide__img {width: 250px; height: 141px; margin: 20px;}
.mslide__img img {border-radius: 8px;}
.mslide__img::before {opacity: 0.4; backdrop-filter: none;}
.mslide__title {position: relative; z-index: 5; margin-right: 40px; 
	width: 200px; text-align: right; transition: transform 0.2s; word-wrap: break-word;}
.mslide__title div {font-family: 'Manrope'; font-size: 12px; text-transform: uppercase; 
	color: rgba(255,255,255,0.7); margin-bottom: 5px;}
.mslide::after {content: "\f178"; font-family: "Font Awesome 5 Pro"; font-weight: 300; 
	position: absolute; left: 210px; top: 50%; transform: translate(0,-50%); margin-top: -2px;
	color: #fff; font-size: 50px; z-index: 5; transition: transform 0.2s;}
.main-slider-thumbs {max-width: var(--max-width); margin: 0 auto; position: relative; z-index: 5;}
#main-slider-thumbs {width: 540px; position: absolute; right: 0; bottom: 0;}
#main-slider-thumbs:not(.owl-carousel), #main-slider:not(.owl-carousel), 
.carousel__content:not(.owl-carousel) {display: flex; overflow: hidden;}
#main-slider-thumbs:not(.owl-carousel) .mslide, #main-slider:not(.owl-carousel) .bslide {flex-shrink: 0; width: 100%;}
.carousel__content:not(.owl-carousel) > .carou {width: calc((100% - 120px)/7); margin-right: 20px; flex-shrink: 0;}

.slider--poster .bslide__img::before {backdrop-filter: blur(10px) grayscale(0.66);}
.slider--poster #main-slider-thumbs {width: 440px;}
.slider--poster .mslide__img {width: 200px; height: 300px;}


/* CAROUSEL
----------------------------------------------- */
.carousel {background-color: var(--bdc); padding: 20px var(--indent);border-radius: 20px 20px 0 0;}
.carousel__title {margin-bottom: 20px; gap: 20px;}
.carou__img {padding-top: 150%;}
.carou__desc {position: absolute; left: 0; bottom: 0; z-index: 5; color: #fff; padding: 20px; font-size: 14px;}
.carousel__title a {font-size: 12px; font-weight: 700; text-transform: uppercase; color: var(--accent-violet);}


/* SECTION
----------------------------------------------- */
.sect:not(:last-child) {margin-bottom: 30px;}
.sect--border-top {padding-top: 30px; border-top: 1px solid var(--bdc);}
.sect__header {margin-bottom: 20px; gap: 10px;}
.sect__title {font-size: 40px; font-weight: 700;}
.sect__link {font-size: 12px; text-transform: uppercase; font-weight: 700; color: var(--accent-violet);}

.speedbar {color: var(--tt-fade); font-size: 14px; margin-bottom: 15px;}
.descr {display: grid; grid-gap: 20px; line-height: 1.7; font-size: 14px;}
.descr h1, .descr h2, .descr h3 {font-size: 24px; color: var(--tt); line-height: 1.3;}
.descr a {text-decoration: none; color: var(--link);}
.descr ul li {position: relative; padding-left: 25px; margin-left: 25px;}
.descr ul li::before {content:"\f00c"; font-weight: 300; font-family:'Font Awesome 5 Pro'; 
	color: var(--accent-violet); position: absolute; left: 0; top: 0;}


/* POSTER SHORT STORY
----------------------------------------------- */
.poster__img {padding-top: 146%; margin-bottom: 16px; box-shadow: var(--bsh-poster); /*border: 5px solid var(--bg);*/ border-radius: var(--bdrs-poster);}
.poster__series {position: absolute; left: 0px; bottom: 0px; z-index: 1; padding: 5px 10px; font-size: 16px; 
	background-color: var(--p3); color: var(--tt); border-radius: var(--bdrs-series);}
.poster__quality {position: absolute; right: 5px; top: 5px; z-index: 1; font-size: 12px; border-radius: 2px; 
	background: var(--btn-gradient); color: var(--tt-btn); padding: 3px 10px; text-transform: uppercase; font-weight: 600;}
.poster__title {font-size: 18px; font-weight: 700; margin-right: 20px; font-family: inherit;}
.poster__meta {margin-top: 6px; font-size: 12px; text-transform: uppercase; color: var(--tt-fade);}
.poster__meta > span {margin: 0 6px; font-size: 14px; vertical-align: middle;}
.poster__fav a {position: absolute; right: 0; top: 0; color: var(--tt-fade); z-index: 11;}
.poster__fav a .poster__fav-added {color: var(--accent-red);}
.poster__info-btn {min-width: auto; font-size: 34px; margin: -5px 0 -20px 0; color: var(--tt-fade); 
	position: relative; z-index: 11; transition: none;}
.has-overlay-on-img__trg {position: absolute; inset: 0; z-index: 3; opacity: 0;
	background-color: rgba(0,0,0,0.66); color: #fff; border-radius: inherit;}
.has-overlay-on-img__trg::before {display: grid; place-items: center; width: 50px; height: 50px; box-sizing: border-box;
	border-radius: 50%; background-color: #fff; color: #000; font-size: 14px; padding-left: 3px;}

.trl {background-color: rgba(0,0,0,0.9); position: fixed; z-index: 990; left: 0; top: 0; 
	width: 100%; height: 100%; overflow-x: hidden; overflow-y: auto; backdrop-filter: blur(10px);}
.trl__close {position: absolute; right: 20px; top: 20px; font-size: 40px; color: #fff;}
.trl__inner {width: 100%; max-width: 700px; margin: 0 auto; color: #fff; padding: 80px 20px 20px 20px;}
.trl__btn {height: 60px; padding: 0 40px; margin-top: 15px; width: 100%;}
.trl h1 {margin-bottom: 15px; margin-top: 20px; font-size: 24px;}
.trl .page__text, .sinfo .page__list li, .sinfo .page__text {display: -webkit-box; -webkit-line-clamp: 8; -webkit-box-orient: vertical; overflow: hidden;}
.trl-is-opened {overflow: hidden;}
.sinfo {background-color: var(--bdc); border-radius: 8px; position: fixed; left: 50%; top: 50%; z-index: 999; 
	transform: translate(-50%,-50%); padding: 20px; padding-right: 140px; width: 860px; box-shadow: var(--bsh);}
.sinfo__close {font-size: 40px; position: absolute; right: -40px; top: -40px; z-index: 5; color: #fff;}
.sinfo__left {width: 200px;	margin-right: 20px;}
.sinfo__right {width: 120px; background-color: var(--bdc); border-radius: 0 8px 8px 0;
	position: absolute; right: 0; top: 0; bottom: 0; padding: 10px; padding-top: 20px;}
.sinfo .page__poster {width: 200px; height: 300px; border-radius: var(--bdrs);}
.sinfo .page__rating-score {padding: 0; width: 100%; height: auto; background-color: transparent;}
.sinfo .page__header-info h1 {font-size: 24px; margin: 10px 0 5px 0;}
.sinfo .page__caption, .sinfo .not-shown-ajax, .sinfo .page__btn-watch, .trl h1 a, .sinfo h1 a {display: none !important;}
@media screen and (min-width: 950px) {
	.sinfo .page__meta-rating {position: absolute; right: 0; top: 130px; width: 120px; z-index: 5; margin: 0; 
		text-align: center; padding: 0; padding-top: 30px; background-position: center 0;}
	.sinfo .page__meta-rating--imdb {top: 190px; padding-top: 40px;}
}
.sinfo .page__list {padding: 0;}
.sinfo .page__btn-trailer:not(:hover) {background-color: var(--bg-darker);}
.sinfo .page__list li {-webkit-line-clamp: 2;}
.sinfo .page__text {-webkit-line-clamp: 5; margin-top: 12px; font-size: 13px;}


/* FOOTER, PAGINATION
----------------------------------------------- */
/*.footer__main::before {width: 120px; height: 120px; border-radius: 50%; background-color: var(--accent-violet); content:"\f8a9"; font-family:'Font Awesome 5 Pro'; font-weight: 300; display: grid; place-items: center; font-size: 50px; color: #fff;} */
.footer__menu {display: grid; gap: 10px 30px; grid-template-columns: repeat(auto-fill,minmax(120px,1fr)); 
	font-size: 12px; text-transform: uppercase; font-weight: 600; --tt: var(--tt-fade);}
.footer__subscribe {width: 200px;}
.footer__subscribe input {margin: 10px 0; background-color: transparent; box-shadow: none; padding: 0; 
	border: 0; border-bottom: 1px solid var(--bdc); border-radius: 0;}
.footer__subscribe button {color: var(--accent-violet); font-weight: 700;}
.footer__copyright {font-size: 16px; line-height: 2; --tt: var(--tt-fade); color: var(--tt-fade); text-align: center;}
.footer__copyright span {margin: 0 10px;}
.footer__soc {gap: 20px;}
.footer__soc a img {display: block; height: 20px; opacity: 0.3;}

.pagination {gap: 20px 60px; padding-top: 10px;}
.pagination a, .pagination span {display: grid; place-items: center; 
	height: 36px; min-width: 36px; padding: 0 10px; border-radius: var(--bdrs); border: 1px solid var(--bdc);}
.pagination__btn-loader {width: 100%;}
.pagination__btn-loader a, .pagination__btn-loader span {height: 40px; border-radius: var(--bdrs); 
	background-color: var(--bg-darker); border: 0; color: var(--tt-fade); width: 370px;}
.pagination__pages {gap: 10px 10px; font-size: 18px;}
.pagination__pages span:not(.nav_ext) {background: var(--btn-gradient); color: var(--tt-btn); border-color: var(--accent-violet);}


/* INNER PAGE
----------------------------------------------- */
.page__header {margin-bottom: 40px; /*background-color: var(--bg-darker); position: relative; padding: 40px var(--indent); margin: 0 var(--indent-negative); margin-top: -50px;*/}
.page__header-left {width: 340px; margin-right: 40px; border-radius: var(--bdrs); 
	box-shadow: var(--bsh); overflow: hidden; position: relative; z-index: 5; align-self: start;} 
.page__header-right {position: absolute; right: var(--indent); bottom: 40px;}
.page__poster {height: 510px;}
/*.page__header::before {position: absolute; left: 0; bottom: 0; top: 0; content: ''; z-index: 3; background-color: var(--accent-violet); width: calc(var(--indent) + 120px);}*/
.page__rating-likes {background-color: var(--bg);}
.page__rating-likes a {display: flex; justify-content: center; align-items: center; height: 40px; width: 50%; gap: 10px; font-size: 12px;}
.page__rating-likes .fal {color: var(--accent-green); font-size: 18px;}
.page__rating-likes a:last-child .fal {color: var(--accent-red);}
.page__rating-score {width: 120px; height: 120px; border-radius: var(--bdrs); 
	background-color: var(--bg); text-align: center; padding: 15px 20px; border-bottom-left-radius: 0px;}
.page__rating-score-caption {font-size: 10px; text-transform: uppercase; font-weight: 600;}
.page__rating-score-value {width: 60px; height: 60px; border-radius: 50%; display: grid; place-items: center;
	position: relative; isolation: isolate; font-size: 24px; margin: 0 auto; margin-top: 13px;}
.page__rating-score-value::before {content: ''; position: absolute; z-index: -2; inset: 0; border-radius: 50%; 
	background: conic-gradient(from 0deg, var(--accent-green) 0%, var(--accent-green) var(--p), var(--bg-darker)  var(--p));}
.page__rating-score-value::after {content: ''; position: absolute; z-index: -1; 
	background-color: var(--bg); inset: 5px; border-radius: 50%;}
.page__fav {position: absolute; right: 100%; bottom: 0;}
.page__fav a {display: grid; place-items: center; width: 40px; height: 40px; 
	border: 3px solid var(--bg); border-radius: 4px 0 0 4px; font-size: 18px; color: var(--tt-fade);}
.page__fav a .page__fav-added {color: var(--accent-red);}

.page__meta {gap: 10px;}
.page__meta-item {display: flex; align-items: center; height: 30px; border-radius: var(--bdrs); 
	padding: 0 10px; border: 1px solid var(--tt-fade); color: var(--tt-fade); font-size: 14px;}
.page__meta-rating {margin-left: 30px; padding-left: 35px; line-height: 30px;
	background: url(../images/kp.svg) 0 center / 30px 30px no-repeat;}
.page__meta-rating--imdb {background: url(../images/imdb.svg) 0 center / 50px 50px no-repeat; padding-left: 58px; margin-left: 10px;}
.page__header h1 {font-size: 44px; margin: 21px 0 16px 0;}
.page__header h1 a {font-size: 14px; margin-left: 10px;}
.page__list {line-height: 1.5; font-size: 16px; margin-top: 20px; padding-right: 140px;}
.page__list li {position: relative; padding-left: 190px;}
.page__list li + li {margin-top: 6px;}
.page__list li > span:first-child {font-weight: 600; position: absolute; left: 0; top: 0;}
.page__list li a {color: var(--tt) !important; text-decoration: none;}
.page__list li a:hover {color: var(--p3) !important; text-decoration: none;}
.page__btns {gap: 20px; margin-top: 20px;}
.page__btn-trailer {background-color: var(--bg); color: var(--tt);}

.page__cols {margin-bottom: 40px;}
.page__cols-right {width: 450px; margin-left: 40px;}
.page__subtitle {margin-bottom: 20px;}
.page__screens ul {display: grid; gap: 5px; grid-template-columns: repeat(auto-fill,minmax(100px,1fr));}
.page__screens a {display: block; border-radius: var(--bdrs);}
.page__screens img {display: block; width: 100%; object-fit: cover; aspect-ratio: 3/2; border-radius: inherit;}
.sb__grid {display: grid; grid-template-columns: repeat(auto-fill,minmax(230px,1fr)); gap: 10px; counter-reset: num;}
.ftop-item {border-radius: var(--bdrs); background-color: var(--bg-darker); position: relative;}
.ftop-item:hover {background: #242c2e;}
.ftop-item__img {width: 62px; height: 91px; border-radius: var(--bdrs); margin-right: 15px; z-index: 5;}
/*.ftop-item::before {content: counter(num); counter-increment: num; color: var(--tt-fade); opacity: 0.3; position: absolute; right: 15px; top: 50%; transform: translateY(-50%); font-size: 40px; font-weight: 700;}*/
.ftop-item::before {content: counter(num);counter-increment: num;color: var(--p3);opacity: 0.9;position: absolute;right: -5px;top: 50%;transform: translateY(-50%);font-size: 100px;font-weight: 700;font-style: italic;}
.ftop-item .poster__title, .ftop-item .poster__meta {margin-right: 50px;color: var(--tt);}

.page__player {position: relative;}
.tabs-block__select {gap: 10px; margin-bottom: 10px;}
.tabs-block__select button {height: 30px; padding: 0 10px; background-color: var(--bg-darker); color: var(--tt-fade);}
.tabs-block__select button.is-active, .tabs-block__select button:hover {background: var(--btn-gradient); color: var(--tt-btn);}
.page__complaint a {position: absolute; right: 0; top: 0; display: flex; align-items: center; height: 30px; 
	border-radius: var(--bdrs); padding: 0 10px; gap: 10px; background-color: var(--bg-darker);}
.video-responsive1 {background-color: #000;}
.video-responsive1::before {position: absolute; z-index: 10; inset: 0; cursor: pointer; display: grid; place-items: center; 
	background-color: rgba(0,0,0,0.5); backdrop-filter: blur(6px); font-size: 80px; color: #fff; 
	content:"\f04b"; font-weight: 900; font-family:'Font Awesome 5 Pro';}
.page__related .poster__title {margin-right: 0;}
.page__fulldesc {margin-bottom: 30px;}
.page__fulldesc h2 {margin-top: 10px; margin-bottom: 10px;}
.page__fulldesc p {margin-bottom: 10px;}


/* TEXT BLOCK, TYPOGRAPHY, VIDEO BLOCK
----------------------------------------------- */
.page__title {margin-bottom: 30px; font-size: 24px;}
.full-text {line-height: 1.6; font-size: 16px; word-wrap: break-word;}
.full-text a {text-decoration: none; color: var(--link);}
.full-text img:not(.emoji), .full-text p, .full-text h1, .full-text h2, .full-text h3, .full-text h4, .full-text h5, 
.full-text > ul, .full-text > ol, .full-text table {margin-bottom: 25px;}
.full-text > img[style*="left"], .full-text > .highslide img[style*="left"] {margin:0 10px 10px 0;}
.full-text > img[style*="right"], .full-text > .highslide img[style*="right"] {margin:0 0 10px 10px;}
.full-text > ul li, .full-text > ol li {padding-left: 60px; position: relative;}
.full-text > ul li:before {content: ''; width: 8px; height: 8px; border-radius: 50%; 
	border: 3px solid #fcc506; position: absolute; top: 6px; left: 34px;}
.full-text > ol {counter-reset: num;}
.full-text > ol li:before {content: counter(num); counter-increment: num; background-color: #fcc506; color: #000; 
	position: absolute; top: -3px; left: 17px; width: 24px; height: 30px; font-size: 14px; font-weight: 600;
	display: flex; justify-content: flex-end; align-items: center; padding-right: 6px; box-sizing: border-box;}
.full-text > ol li:after {content: ''; border: 10px solid transparent; border-left-color: #fcc506; 
	position: absolute; left: 41px; top: -3px; transform: scale(0.66,1.5); transform-origin: 0 0;}
.full-text > ul li + li, .full-text > ol li + li {margin-top: 10px;}
.full-text table, .video-inside > * {width:100%;}
.full-text > *:last-child {margin-bottom: 0;}
.video-responsive {padding-top: 60%; position: relative;}
.video-responsive > iframe, .video-responsive > video {position: absolute; left: 0; top: 0; width: 100%; height: 100%;}
.full-text h1, .full-text h2, .full-text h3, .full-text h4, .full-text h5 {font-size: 21px; margin-bottom: 20px;}


/* COMMENTS
----------------------------------------------- */
.page__comments {margin-top: 0px; max-width: 760px;}
.page__comments-title {font-size: 24px; margin-bottom: 20px;}
.page__comments-info {color: var(--tt-fade); display: block; margin: -5px 0 20px; font-size: 14px; padding-left: 23px; position: relative;}
.page__comments-info::before {color: var(--ui-red); position: absolute; left: 0; top: 2px;}
.ac-form {margin-bottom: 30px; position: relative;}
.ac-form__header, .ac-form__editor, .ac-form .message-info {gap: 10px; margin-bottom: 10px;}
.ac-form__btn {padding: 0 60px;}
.ac-form__bottom {gap: 25px;}
.confidential-check {font-size: 14px;}
.ac-form__header > span {margin-left: 15px;}
.ac-form .comments_subscribe {margin-top: 0px;}

.ac-toggle.ac-form {cursor: pointer;}
.ac-form__header input, .ac-toggle .ac-form__editor textarea {height: 50px; line-height: 50px; border-radius: 8px;}
.ac-toggle, .ac-toggle .ac-form__editor {position: relative;}
.ac-toggle .ac-form__bottom button {position: absolute; bottom: 20px; right: 10px; z-index: 10; pointer-events: none;}
.ac-form .bb-btn {display: none;}
.ac-form .bb-pane {background: none; box-shadow: none; border: 0; position: absolute; left: 0; bottom: 0; right: 0;}
.ac-form #b_emo, .ac-form #b_leech, .ac-form #b_quote, .ac-form #b_spoiler, 
.ac-form #b_b, .ac-form #b_u, .ac-form #b_s, .ac-form #b_color, .ac-form #b_hide {display: grid;}
.ac-toggle .bb-btn {pointer-events: none;}
.ac-toggle .ac-form__editor .bb-editor textarea {height: 140px; resize: none;}
.ac-form__editor .bb-editor textarea {height: 140px; line-height: 1.4;}
.comments_subscribe + br, .ac-form .bb-editor + br {display: none;}
.ac-toggle .has-checkbox {display: none;}

.mass_comments_action {display: flex; align-items: center; flex-wrap: wrap; gap: 10px;}
.mass_comments_action select {flex: 1 1 0; margin: 0 -28px 0 0; border-radius: 0; box-shadow: none; min-width: 60%;}
.mass_comments_action .bbcodes {border-radius: 0; padding: 0 10px;}

.comm__title {font-size: 18px; margin-bottom: 20px;}

.comm {margin-bottom: 30px; position: relative;}
.comm__img {width: 40px; height: 40px; border-radius: 50%;}
.comm__img::before {content: ''; width: 8px; height: 8px; border-radius: 50%; background-color: var(--ui-red); 
	position: absolute; right: -1px; top: -1px; z-index: 5; border: 2px solid var(--bg);}
.comm--online .comm__img::before {background-color: var(--ui-green);}
.comm__letter {width: 100%; height: 100%; text-transform: uppercase; border-radius: inherit;
	position: absolute; left: 0; top: 0; color: #fff; font-size: 18px; font-weight: var(--ui-fw-bolder);}
.comm__author, .comm__author a {color: var(--tt-colored); font-weight: 600; font-size: 12px;}
.comm__date {color: var(--tt-fade); font-size: 12px; margin-top: 2px;}
.comm__main {margin: 6px 0 0 0; padding: 10px 10px 10px 40px; border: 1px solid var(--bg-darker); border-bottom: 0;}
.comm__action {gap: 20px; font-size: 12px;} 
.comm__footer {padding: 10px 10px 10px 40px; background-color: var(--bg-darker); border-radius: 0 0 4px 4px;}
.comm__action li, .comm__action li a {color: var(--tt-fade); cursor: pointer; gap: 8px; display: flex; align-items: center;}
.comm__ctrl, .comm__ctrl a {font-size: 15px; gap: 10px 15px; color: var(--tt-fade);}
.comm__ctrl li.has-checkbox {transform: scale(0.8,0.8); margin: 0 -10px 0 -5px;}
.comm__ctrl li.has-checkbox input {border-color: var(--tt-fade);}
.comm__rating {gap: 1px; font-size: 12px;margin-bottom: -10px;}
.comm__rating > * {display: flex; gap: 5px; height: 20px; align-items: center; 
	background-color: var(--bg-darker); padding: 0 10px;}
.comm__rating > * .fal {color: var(--accent-green);}
.comm__rating > * + * .fal  {color: var(--accent-red);}
.comm__meta {display: flex; align-items: center; gap: 20px;}
.comm__header {padding-left: 40px;}
.comm__img {position: absolute; left: -20px; top: 0px; width: 50px; height: 50px;}


/* LOGIN
----------------------------------------------- */
.login {position: fixed; z-index: 999; left: 50%; top: 50%; transform: translate(-50%,-50%);
	background-color: var(--ui-bg); width: 440px; border: 10px solid var(--ui-bg-darker); 
	box-shadow: 0 15px 45px rgba(0,0,0,1); overflow-y: auto;
	 max-width: calc(100vw - 40px); max-height: calc(100vh - 40px);}
.login__header {padding: 20px 50px 25px 50px; border-bottom: 1px solid var(--ui-bdc); position: relative;}
.login__title {font-size: 24px; font-weight: var(--ui-fw-bolder);}
.login__caption {font-size: 13px; color: var(--ui-tt-fade); margin-top: 3px;}
.login__close {font-size: 23px; position: absolute; right: 10px; top: 10px; padding: 0; width: 40px; height: 40px;}
.login__content {display: grid; gap: 20px; padding: 25px 50px; padding-bottom: 50px; position: relative;}
.login__row, .login__row.fal, .login__row.fas {position: relative; display: grid; gap: 10px; justify-content: stretch;}
.login__row-caption a, .login__caption a {margin-left: 10px;}
.login__row::before {position: absolute; left: 2px; bottom: 0; width: 40px; height: 50px; 
	display: grid; place-items: center; opacity: 0.4; font-size: 18px;}
.login__input input {padding-left: 40px; border-radius: var(--ui-bdrs); height: 50px; line-height: 48px;}
.login__row button {width: 100%; height: 40px; border-radius: var(--ui-bdrs);}
.login__social {padding-top: 10px; text-align: center; gap: 10px; margin-bottom: -20px;}
.login__social-caption {font-size: 13px; color: var(--ui-tt-fade); width: 100%;}
.login__social a {padding: 0 10px; border-radius: 20px; position: relative; width: 40px; height: 40px; 
	overflow: hidden; color: #fff; display: flex; align-items: center; justify-content: center;}
.login__social a::before {content: ''; width: 40px; background: rgba(0,0,0,0); position: absolute; left: 0; top: 0; height: 100%;}
.login__social a img {position: absolute; left: 10px; top: 50%; height: 20px; width: 20px; z-index: 1; 
	display: block; filter: invert(1); transform: translateY(-50%);}
.login__social-vk {background-color: #587ba1;}
.login__social-ok {background-color: #ff9800;}
.login__social-fb {background-color: #3b5998;}
.login__social-ml {background-color: #2196f3;}
.login__social-gg {background-color: #f44336;}
.login__social-ya {background-color: #fc3f1d;}


/* ADAPTIVE, MOBILE MENU
----------------------------------------------- */
.overlay {position: fixed; z-index: 998; left: 0; top: 0; width: 100%; height: 100%; 
	opacity: 0.6; background-color: #000; cursor: pointer; display: none;}
.mobile-menu {width: 280px; height: 100%; overflow-x: hidden; overflow-y: auto;
	z-index: 999; position: fixed; left: -360px; top: 0; transition: left 0.4s; background-color: var(--bg);}
.mobile-menu.is-active {left: 0;}
body.mobile-menu-is-opened {overflow: hidden; width: 100%; height: 100%;}
.mobile-menu__header {padding: 15px 20px; gap: 10px; background-color: var(--bg-darker);}
.mobile-menu__btn-close {font-size: 24px; width: 40px; height: 40px; margin-right: -10px;}
.mobile-menu__content .header__menu {margin: 0; padding: 20px 0; display: block;}
.mobile-menu__content .header__menu > li > a {height: 40px; line-height: 40px; padding: 0 20px;}
.mobile-menu__content .header__menu-submenu {width: 100%; height: auto; position: static; display: none;
	border-radius: 0; padding: 20px 20px; background-color: var(--bg-darker);
	opacity: 1; visibility: visible; transform: none; box-shadow: none; font-size: 13px; 
	gap: 12px 20px; grid-template-columns: repeat(2,minmax(0,1fr));}
.mobile-menu__content .header__menu-submenu a {padding: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.mobile-menu__content .header__menu-has-submenu > a::after {content:"\f067"; font-size: 18px; margin-left: auto; font-weight: 300;}
.mobile-menu__content .header__menu-has-submenu.is-active .header__menu-submenu {display: grid;}
.mobile-menu__content .header__menu-has-submenu.is-active > a::after {content:"\f068";}

@media screen and (max-width: 1220px) {
	:root {--indent-negative: -20px; --indent: 20px;}
	.wrapper {padding: 0; overflow: hidden;}
	.wrapper__container {max-width:1000px;}
	.header .header__menu {display: none;}
	.wrapper__main-page .header {padding-left: var(--indent); padding-right: var(--indent);}
	.header__login-panel {right: 0;}
	.header__logo {flex: 1 1 0; max-width: 100%; min-width: 60px; margin-right: 0;}
	.header__btn-login {background-color: var(--bg-darker); color: var(--tt); padding: 0 10px; font-weight: 400;}
	.wrapper__main-page .header__btn-login {background-color: rgba(255,255,255,0.15); color: #fff;}
	.header__btn-menu {display: flex; margin-left: 20px; padding: 0; width: 40px; font-size: 18px;}
	.carousel__content:not(.owl-carousel) > .carou {width: calc((100% - 100px)/6);}
	.carousel {padding: 20px 40px;}
	.carousel .owl-prev {left: -40px; background-color: transparent; color: var(--tt);}
	.carousel .owl-next {right: -40px; background-color: transparent; color: var(--tt);}
	.d-grid-items {gap: 20px; grid-template-columns: repeat(auto-fill,minmax(200px,1fr));}
	.poster__title {font-size: 14px;}
	.footer {padding-top: 20px; padding-bottom: 20px;} 
	.footer__menu {min-width: 100%; order: 10;}
	.footer__subscribe {flex-grow: 1;}
	.header__search {display: none; position: fixed; left: clamp(20px, 3vw, 30px); right: clamp(20px, 3vw, 30px); top: 90px; transform: none; margin: 0; width: auto; max-width: none;}


	/* Search overlay (<=1220px)
	   ВАЖНО: .wrapper__container имеет z-index (создает stacking context).
	   Если делать оверлей на body — он перекроет всю wrapper__container и поле поиска исчезнет.
	   Поэтому оверлей рисуем внутри wrapper__container, а саму форму поднимаем выше него.
	*/
	body.search-is-active {overflow: hidden;}
	/* на всякий случай отключаем прежний body-оверлей */
	body.search-is-active::before {content: none;}
	/* поднимаем контейнер над служебными fixed-элементами (mobile overlay/scrolltop) */
	body.search-is-active .wrapper__container {z-index: 10000;}
	/* затемнение всей видимой области */
	body.search-is-active .wrapper__container::before {
		content: '';
		position: fixed;
		inset: 0;
		background: rgba(0,0,0,0.70);
		backdrop-filter: blur(6px);
		pointer-events: auto;
		z-index: 9990;
	}
	/* снимаем stacking-context у .header, чтобы .header__search мог быть поверх оверлея */
	body.search-is-active .header {z-index: auto;}
	body.search-is-active .header::after {content: none !important;}
	body.search-is-active .header__search {display: block !important; z-index: 10000;}
	body.search-is-active .search-block {margin-right: 0;}
	body.search-is-active .search-block__input {width: 100%;}
	
	
	.bslide {height: 360px;}
	.bslide__desc {padding: 80px var(--indent) 20px var(--indent);}
	.bslide__info {gap: 10px 20px;}
	.bslide__title {font-size: 40px; height: 120px; max-width: calc(100% - 230px); top: 0;}
	.bslide__btn {height: 40px; padding: 0 20px;}
	.bslide__btn-trailer {width: 40px; height: 40px; position: absolute; right: 200px; top: 118px;}
	.bslide__btn-trailer::after {margin-left: 20px; font-size: 40px;}
	.mslide {color: #fff; cursor: pointer;}
	.mslide__img {width: 240px; height: 140px;}
	.mslide__title {position: absolute; width: 100%; left: 0; bottom: 0; margin: 0; text-align: left; padding: 20px;}
	.mslide::after {left: auto; right: 20px; top: -10px; transform: none; margin: 0;}
	#main-slider-thumbs {width: 240px;}
	#main-slider-thumbs .owl-dots {display: none;}
	.slider--poster .mslide__img {height: 140px; width: 100px; flex: 0 0 100px;}
	.slider--poster .mslide {justify-content: flex-end;}
	.slider--poster #main-slider-thumbs {width: 240px;}
	.slide__logo {max-width:300px;}
	.page__header {padding: 20px var(--indent); margin-bottom: 30px;}
	.page__header-left {margin-right: 20px;}
	.page__cols-right {width: 100%; margin: 0; margin-top: 30px;}
	.page .sect__header {margin-bottom: 30px;}
	.page__header-right {bottom: 20px;}
}

@media screen and (max-width: 1220px) and (min-width: 590px) {
	.sb__grid, .page__screens ul {display: flex; flex-wrap: wrap;}
	.ftop-item {flex: 1 0 240px; min-width: 240px;}
	.page__screens ul li {flex: 1 0 13%;}
}

@media screen and (max-width: 950px) {
	.wrapper__container {max-width:768px;}
	.carousel__content:not(.owl-carousel) > .carou {width: calc((100% - 80px)/5);}
	.pagination {gap: 10px;}
	.pagination__btn-loader a, .pagination__btn-loader span {width: 100%;}
	.pagination > a, .pagination > span {flex-grow: 1; order: 10;}
	.pagination__pages {width: 100%;}
	.pagination__pages a, .pagination__pages span {flex-grow: 1;}

	.bslide__btn-trailer {top: 95px; right: 146px;}
	.bslide__btn-trailer::after {margin-left: 10px; font-size: 30px;}
	.sinfo {border-radius: 0; overflow-x: hidden; overflow-y: auto; width: 100%; height: 100%; padding: 120px 20px 20px 20px;}
	.sinfo__close {top: 10px; right: 10px; color: var(--tt);}
	.sinfo__left {display: none;}
	.sinfo h1 {text-align: center;}
	.sinfo__right {width: 100%; left: 0; bottom: auto; padding: 10px; border-radius: 0;}
	.sinfo-is-opened {overflow: hidden;}
	.slide__logo {max-width:250px;}
	.page__meta-rating {margin: 0;}
	.page__header h1 {font-size: 34px;}
	.page__header {display: block;}
	.page__header-left {margin: 0 auto; width: 200px; margin-bottom: 30px;}
	.page__poster {width: 200px; height: 300px;}
	.page__header::before {width: 100%; bottom: auto; height: 160px;}
	.page__meta {justify-content: center;}
	.page__header h1, .page__caption {text-align: center;}
	.page__caption {display: block; font-size: 14px;}
	.page__header-info {display: block;}
}

@media screen and (max-width: 760px) {
	.wrapper__container {max-width:640px;}
	.login__header, .login__content {padding: 20px;}
	.login__social {margin-bottom: 0;}
	.login__row::before {height: 40px;}
	.login__input input {height: 40px; line-height: 40px; box-shadow: none; border: 0; background-color: var(--bg-darker);}
	.login__social a {border-radius: var(--bdrs); height: 30px; flex: 1 0 30%;}
	.login__social a img {left: 50%; margin-left: -10px;}
	.carousel__content:not(.owl-carousel) > .carou {width: calc((100% - 40px)/3);}
	.sect__title {font-size: 28px; line-height: 1.2;}
	.footer__bottom {justify-content: center;}
	.footer__copyright {min-width: 100%; text-align: center; padding-bottom: 20px;}

	.bslide__info-item, .bslide__btn, .bslide__title {width: 100%; max-width: 100%;}
	.bslide {height: 455px;}
	.bslide__title {font-size: 40px; height: 100px;}
	.bslide__bottom {margin-right: 240px;}
	.slide__logo {max-width:200px;}
	.page__complaint a {top: 100%; margin-top: 10px;}
	.tabs-block__select button {flex-grow: 1;}

	.page__title {font-size: 24px;}
	.full-text h1, .full-text h2, .full-text h3, .full-text h4, .full-text h5 {font-size: 20px;}
	.page__intro, .page__text .quote {margin-left: var(--indent-negative); margin-right: var(--indent-negative); padding-right: var(--indent);}
	.full-text h1, .full-text h2, .full-text h3, .full-text h4, .full-text h5 {font-size: 18px;}
	
	.ac-form__bottom {gap: 10px;}
	.ac-form__bottom button {padding: 0 20px; width: 100%;}
	.ac-form__header input + input {min-width: 100%; order: 10;}
	.ac-form__header > span, .comm__rating::before {display: none;}
	.ac-form #b_color {display: none;}
	.ac-toggle .ac-form__bottom button {position: static; width: 100%;}
	.comm__meta {display: block;}
	.comm__img {position: relative; left: 0; top: 0; margin-right: 10px; width: 40px; height: 40px;}
	.comm__main, .comm__footer {padding-left: 10px;}
	.comm__header {padding-left: 0;}
	.comm__rating > * {padding: 0 6px;}
}

@media screen and (max-width: 590px) {
	.wrapper__container {max-width:480px;}
	.page__list {padding: 0;}
	.page__btn-trailer {flex-grow: 1; padding: 0;}
	.page__header-right {bottom: auto; top: 20px; z-index: 5;}
	.page__header-left {margin: 0 auto; margin-bottom: 30px; width: 180px;}
	.page__poster {width: 180px; height: 270px;}
	.page__fav a {background-color: var(--bg-darker);}
	.page__fav {left: 0; right: 0%; bottom: auto; top: 100%; margin-top: -3px;}
	.page__fav a {width: 100%; border-radius: 0 0 4px 4px;}
	.page__rating-score {width: calc(100vw - 240px);}
	.slide__logo {max-width:150px;}
}

@media screen and (max-width: 470px) {
	.wrapper__container123 {max-width:360px;}
	.header__favlink {display: none;}
	.carousel__content:not(.owl-carousel) > .carou {width: calc((100% - 20px)/2);}
	.header__btn-menu {margin-left: 10px;}
	.content {padding-top: 20px; padding-bottom: 20px;}
	.sect__header {margin-bottom: 20px;}
	.pagination {padding: 0;}
	.footer__main::before {width: 80px; height: 80px; font-size: 30px;}
	.mslide__img {width: 140px; height: 140px;}
	#main-slider-thumbs {width: 140px;}
	.bslide__bottom {margin-right: 140px;}
	.bslide__btn {margin-bottom: 15px;}
	.slider--poster .mslide__img {width: 140px; flex: 0 0 140px;}
	.slider--poster #main-slider-thumbs {width: 140px;}
	.slide__logo {max-width:120px;}
	.page__header {margin-top: -20px;}
	.page__list li {padding-left: 130px;}
	.page__related .poster:nth-child(5n) {display: none;}
	
	.ac-form__bottom .comments_subscribe {font-size: 13px;}
	.full-text iframe {width: calc(100% + 40px); max-width: calc(100% + 40px); height: 260px; margin-left: -20px; margin-right: -20px;}
}


.filter-block {margin-bottom: 50px; margin-top: -20px;}
.filter-block__form {display: flex; flex-wrap: wrap; gap: 10px 30px;}
.filter-block__cell {flex: 1 1 0; max-width: 100%; min-width: 50px;}
.filter-block__cell--full-width {grid-column: 1 / -1;}
.filter-block__cell-caption {margin-bottom: 10px;}
.filter-block__cell-content > * {width: 100%; display: block;}
.filter-block__cell-content--two-columns {display: flex; justify-content: space-between;}
.filter-block__cell-content--two-columns > * {width: calc((100% - 10px)/2) !important;}
.filter-block__cell-content select, .filter-block__cell-content input[type="text"], 
.filter-block__cell-content--check-group {height: 40px; line-height: 40px; background-position: right 0 top 54%;
	background-color: transparent; color: var(--tt); border: 0; border-bottom: 1px solid var(--bdc); border-radius: 0px; 
	box-shadow: none; font-size: 14px;  padding: 0 15px 0 0; background-size: 10px; display: block; cursor: pointer;
	white-space: nowrap; overflow: hidden; text-overflow: ellipsis; width: 100%; box-sizing: border-box;}
.filter-block__cell-content select {padding: 0 30px 0 0;}
.filter-block__cell-content input[type="text"]::placeholder {opacity: 1; color: var(--tt); font-size: 14px;}
.filter-block__cell-content input[type="text"]:focus::placeholder {opacity: 0;}
.filter-block__cell--btns .filter-block__cell-content {gap: 10px;}
.filter-block__cell--btns button {width: 40px; border-radius: var(--bdrs); padding: 0; font-size: 18px; flex-grow: 1;}
@media screen and (max-width: 1220px) {
	.filter-block {margin-bottom: 30px; margin-top: -40px;}
	.filter-block__form {gap: 10px;}
	.filter-block__cell {flex: 1 0 200px;}
	.filter-block__cell:first-child {flex: 1 0 100%;}
}
@media screen and (max-width: 470px) {
	.filter-block {margin-bottom: 25px; margin-top: -15px;}
	.filter-block__cell {flex: 1 0 140px;}
}


/**
 * Owl Carousel v2.3.4
 * Copyright 2013-2018 David Deutsch
 * Licensed under: SEE LICENSE IN https://github.com/OwlCarousel2/OwlCarousel2/blob/master/LICENSE
 */
.owl-carousel {width: 100%; position: relative; z-index: 1;}
.owl-stage {position: relative; display:flex; justify-content:flex-start;}
.owl-stage-outer {position: relative; overflow: hidden; transform: translate3d(0px, 0px, 0px);}
.owl-item {position: relative; min-height: 10px;}
.owl-nav.disabled,.owl-dots.disabled, .owl-carousel.owl-refresh .owl-item {display: none;}
.owl-carousel.owl-drag .owl-item {user-select: none;}
.owl-carousel.owl-grab {cursor: move; cursor: grab;}
.owl-carousel .animated {animation-duration: 1000ms; animation-fill-mode: both;}
.owl-animated-in {z-index: 0;}
.owl-animated-out {z-index: 1;}
.fadeOut {animation-name: fadeOut;}
.fadeIn {animation-name: fadeIn;}
@keyframes fadeOut { from {opacity: 1;} to {opacity: 0;} }
@keyframes fadeIn { from {opacity: 0;} to {opacity: 1;} }
.scaleIn {animation-name: scaleIn;}
.scaleOut {animation-name: scaleOut;}
@keyframes scaleIn { from {opacity: 0; transform: scale(0.66,0.66); transform-origin: center top;} to {opacity: 1; transform: scale(1,1); transform-origin: center top;} }
@keyframes scaleOut { from {opacity: 1; transform: scale(1,1);} to {opacity: 0; transform: scale(0.66,0.66);} }
.slideOutDown {animation-name: slideOutDown;}
.slideInDown {animation-name: slideInDown;}
@keyframes slideOutDown { from {transform: translate3d(0, 0, 0);} to {visibility: hidden; transform: translate3d(0, 100%, 0);} }
@keyframes slideInDown { from {transform: translate3d(0, -100%, 0); visibility: visible;} to {transform: translate3d(0, 0, 0);} }
.rollOut {animation-name: rollOut;}
@keyframes rollOut { from {opacity: 1;} to {opacity: 0; transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);} }
.owl-nav {position: absolute; left: 0; right: 0; top: 50%;}
.owl-prev, .owl-next {cursor: pointer; width: 40px; height: 40px; border-radius: var(--bdrs); display: grid; place-items: center; 
	position: absolute; top: 0; margin-top: -40px; font-size: 18px; background-color: var(--accent-violet);}
.owl-prev {left: calc(var(--indent-negative) + 20px);}
.owl-next {right: calc(var(--indent-negative) + 20px);}
.owl-prev:hover, .owl-next:hover {background-color: var(--bg); color: #000;}
.owl-dots {display: flex; flex-direction: column; gap: 12px; flex-wrap:wrap; 
	position: absolute; right: -40px; bottom: 50%; transform: translateY(50%);}
.owl-dot {display: block; width: 12px; height: 12px; border-radius: 50%; cursor: pointer; 
	background-color: transparent; border: 1px solid #fff;}
.owl-dot.active, .owl-dot:hover {background: #fff;}
.main-slider .owl-stage-outer {overflow: visible;}


.margin-top-50 {margin-top:50px;}
.margin-top-20 {margin-top:20px;}
.margin-top-30 {margin-top:30px;}
.margin-bottom-20 {margin-bottom:20px;}
.poster__link {color: var(--tt);}
.line-clamp a {color: var(--tt)}
.page__meta-item a {color: var(--tt)}
.header__menu > li > a {color: var(--tt)}
.page__anons {font-size: 26px;font-weight: 800;margin-bottom: 10px;color: #FF2D6D;}
.anons-short {font-weight: 800;color: #FF2D6D;}
.fullpageblur {position: absolute; left: 0px; top: -100px; z-index: -100; width: 100%; height: 950px; overflow: hidden; opacity: 0.35;border-radius: 20px 20px 0 0;}
.fullpageblur img {width: 100%; height: 100%; object-fit: cover; object-position: center top; filter: grayscale(0.4) blur(0.5px);}
.fullpageblur::after {content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 100%; background: linear-gradient(0deg, #1C2426, transparent);}

.geo-hero { position: relative; box-sizing: border-box; width: 100%; /*min-height: 100vh;  можно заменить на min-height: 600px; при необходимости  padding: 48px 24px 40px;*/ overflow: hidden; color: #ffffff; }
.geo-hero__overlay { position: absolute; inset: 0; pointer-events: none; }

.geo-hero__inner { position: relative; z-index: 1; /*max-width: 1600px;*/ margin: 0 auto; display: flex; flex-direction: column; gap: 32px; }

.geo-hero__header { max-width: 980px; }
.geo-hero__badge { display: inline-flex; align-items: center; justify-content: center; padding: 8px 18px; margin-bottom: 14px; border-radius: 999px; background: rgba(255, 255, 255, 0.12); border: 1px solid rgba(255, 255, 255, 0.35); backdrop-filter: blur(6px); font-size: 12px; font-weight: 600; letter-spacing: 0.12em; text-transform: uppercase; }
.geo-hero__title { margin: 0 0 16px; font-size: 36px; line-height: 1.3; font-weight: 800; text-shadow: 0 4px 20px rgba(0, 0, 0, 0.7); }
.geo-hero__lead { margin: 0 0 14px; font-size: 18px; line-height: 1.8; color: #fff8ff; }

.geo-hero__tags { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 6px; }
.geo-hero__tag { padding: 7px 12px; border-radius: 999px; font-size: 16px; line-height: 1.4; background: rgba(0, 0, 0, 0.25); border: 1px solid rgba(255, 255, 255, 0.25); white-space: nowrap; }

.geo-hero__grid { display: grid; grid-template-columns: minmax(0, 1.3fr); /* одна широкая колонка */ gap: 24px; }

.geo-hero__panel { box-sizing: border-box; padding: 22px 22px 24px; border-radius: 20px; border: 3px solid var(--bg-btn); box-shadow: var(--bsh); }
.geo-hero__panel-title { margin: 0 0 10px; font-size: 26px; font-weight: 700; }
.geo-hero__text { margin: 10px 0 10px; font-size: 20px; line-height: 1.8; color: var(--tt-btn); }

.geo-hero__list { margin: 8px 0 10px 20px; padding: 0; font-size: 18px; line-height: 1.7; color: var(--tt-btn); }
.geo-hero__list li { margin-bottom: 5px; }

.geo-hero__footer { margin-top: 4px; max-width: 900px; }
.geo-hero__note { margin: 0; font-size: 14px; line-height: 1.7; color: var(--tt-btn); border-top: 1px solid rgba(255, 255, 255, 0.35); padding-top: 12px; }

@media (max-width: 1024px) {
  .geo-hero { padding: 40px 18px 32px; }
  .geo-hero__title { font-size: 32px; }
  .geo-hero__lead { font-size: 17px; }
}

@media (max-width: 820px) {
  .geo-hero { padding: 34px 16px 28px; min-height: 560px; }
  .geo-hero__panel { padding: 18px 16px 20px; }
  .geo-hero__title { font-size: 28px; }
  .geo-hero__lead { font-size: 16px; }
  .geo-hero__text { font-size: 15px; }
  .geo-hero__list { font-size: 14px; }
  .geo-hero__note { font-size: 13px; }
}

@media (max-width: 520px) {
  .geo-hero { padding: 26px 12px 24px; }
  .geo-hero__badge { font-size: 11px; padding: 6px 12px; }
  .geo-hero__title { font-size: 22px; }
  .geo-hero__lead { font-size: 15px; }
  .geo-hero__tag { font-size: 11px; }
  .geo-hero__panel-title { font-size: 17px; }
  .geo-hero__text { font-size: 14px; }
  .geo-hero__list { font-size: 13px; }
  .geo-hero__note { font-size: 12px; }
}

/* ============================= */
/* Collections Main Page        */
/* ============================= */

.collections-page {
    margin-top: 30px;
}
.collection-news-list {
display: grid;
    gap: 30px 25px;
    grid-template-columns: repeat(auto-fill, minmax(270px, 1fr));
    margin-bottom: 50px;
    }
    
.collections-header {
    margin-bottom: 30px;
}

.collections-title {
    font-size: 28px;
    font-weight: 700;
}

.collections-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    margin-bottom: 50px;
}

.collection-card {
    transition: transform .2s ease;
}

.collection-card:hover {
    transform: translateY(-4px);
}

.collection-card__link {
    display: block;
    text-decoration: none;
}

.collection-poster {
    position: relative;
    width: 100%;
    aspect-ratio: 16/9;
    overflow: hidden;
    border-radius: 8px;
    box-shadow: var(--bsh-poster);
}

.collection-poster img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.collection-card__body {
    margin-top: 10px;
}

.collection-name {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 5px;
    margin-top: 15px;
}

.collection-card__count {
    font-size: 14px;
    opacity: 0.7;
}

/* ============================= */
/* Collection Single Page       */
/* ============================= */

.collection-single-page {
    margin-top: 30px;
}

.collection-single-header {
    margin-bottom: 30px;
}

.collection-single-title {
    font-size: 28px;
    font-weight: 700;
}

.collection-single-news {
    margin-bottom: 40px;
}

.collection-single-description {
    font-size: 15px;
    line-height: 1.6;
    opacity: 0.85;
}
.collection-count {
      position: absolute;
    left: 0px;
    bottom: 0px;
    z-index: 1;
    padding: 5px 10px;
    font-size: 16px;
    background-color: var(--p3);
    color: var(--tt);
    border-radius: var(--bdrs-series);
  }
.collect_fullpage {color: var(--p1);}
/* ============================= */
/* Responsive                   */
/* ============================= */

@media (max-width: 1600px) {
    .collections-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (max-width: 1200px) {
    .collections-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .collections-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .collections-grid {
        grid-template-columns: 1fr;
    }
}
.goshows-fillstory-main-text2026 {
    display: block;
    padding: 20px;
    border-radius: 8px;
    border: 3px solid var(--p1);
    margin-bottom: 30px;
    line-height: 40px;
    font-size: 18px;
  }
  