/* =========================================================
   adaptive-unified.css
   Подключать ПОСЛЕ основного style.css
   Адаптив без изменения HTML-структуры
   ========================================================= */

/* ---------------------------------------------------------
   1. Reset / safe
--------------------------------------------------------- */

*,
*::before,
*::after {
	box-sizing: border-box;
}

html,
body {
	overflow-x: hidden;
}

body {
	min-width: 320px;
}

img,
svg,
video,
canvas,
iframe {
	max-width: 100%;
	height: auto;
}

table {
	max-width: 100%;
}

.content,
.header {
	max-width: 100%;
}

.popup-auth,
.popup-forgot,
.auth_page {
	max-width: 100%;
}

.new_msg input[type=text],
.new_msg input[type=password],
.new_msg textarea,
.auth_page input[type=text],
.auth_page input[type=password],
.popup-wrap input[type=text],
.popup-wrap input[type=password],
.popup-wrap textarea {
	max-width: 100%;
}

/* ---------------------------------------------------------
   2. Общие desktop-fix, чтобы шапка не съезжала
--------------------------------------------------------- */

@media (min-width: 992px) {
	.header {
		width: 970px;
		max-width: 970px;
		margin: 0 auto;
		padding-left: 10px;
		padding-right: 10px;
	}

	.content {
		width: 970px;
		max-width: 970px;
		margin: 0 auto;
		padding-left: 10px;
		padding-right: 10px;
	}

	.header .header-menu {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}

	.logo {
		float: none;
		flex: 0 0 220px;
		width: 220px;
		margin-top: 20px;
	}

	.header-nav {
		float: none;
		width: auto;
		flex: 1 1 auto;
		text-align: right;
		white-space: nowrap;
	}

	.header-nav li {
		display: inline-block;
	}

	.header-nav li a {
		padding-left: 16px;
		padding-right: 16px;
	}

	.header-nav li.activ a:before {
		left: 16px;
		width: calc(100% - 32px);
	}
}

/* ---------------------------------------------------------
   3. Универсальная адаптивная сетка
--------------------------------------------------------- */

@media (max-width: 1199px) {
	.header,
	.content {
		width: 100%;
		padding-left: 20px;
		padding-right: 20px;
	}

	.main-all,
	.main-forum,
	.main-wrap,
	.footer {
		min-width: 0;
	}

	.footer {
		min-width: 0;
	}
}

@media (max-width: 991px) {
	body {
		padding-bottom: 0;
	}

	.header,
	.content {
		width: 100%;
		padding-left: 16px;
		padding-right: 16px;
	}

	.main-all,
	.main-forum,
	.main-wrap,
	.footer {
		min-width: 0;
	}

	.left_content,
	.hot.right_content,
	.hot,
	.main-all .fresh,
	.main-article,
	.main-blog,
	.detail_header,
	.comments_block .add_comment,
	.comments_block .comment,
	.left_content.text_page,
	.left_content.list_page,
	.left_content.on_search_page {
		float: none;
		width: 100%;
	}

	.left_content {
		padding-bottom: 20px;
	}

	.hot {
		margin-top: 28px;
		margin-bottom: 20px;
	}

	.main-wrap:after,
	.footer:before,
	.footer:after {
		display: none;
	}
}

/* ---------------------------------------------------------
   4. Шапка + мобильный "бургер" без изменения HTML
--------------------------------------------------------- */

/* desktop не трогаем */
@media (max-width: 991px) {
	.header {
		position: relative;
	}

	.header .header-menu {
		position: relative;
		padding: 12px 0 14px;
		border-bottom: 1px solid #f2f2f2;
	}

	.header .header-menu:before {
		content: "";
		position: absolute;
		top: 5px;
		right: 0;
		width: 42px;
		height: 42px;
		border: 1px solid rgba(12, 95, 159, 0.15);
		border-radius: 8px;
		background: #f5fbff;
		z-index: 6;
	}

	.header .header-menu:after {
		content: "";
		position: absolute;
		top: 25px;
		right: 11px;
		width: 20px;
		height: 2px;
		background: #0c5f9f;
		box-shadow: 0 -6px 0 #0c5f9f, 0 6px 0 #0c5f9f;
		z-index: 7;
	}

	.logo {
		float: none;
		display: inline-block;
		width: auto;
		max-width: calc(100% - 58px);
		margin-top: 0;
		padding-right: 55px;
	}

	.logo img {
		max-width: 130px;
	}

	.logo div {
		height: 32px;
		width: 44px;
		line-height: 32px;
		font-size: 14px;
	}

	.logo div:before {
		border-top: 16px solid transparent;
		border-bottom: 16px solid transparent;
	}

	.header-nav {
		position: absolute;
		top: 100%;
		right: 0;
		left: 0;
		float: none;
		width: 100%;
		margin: 0 0 0;
		padding: 8px 0;
		background: #ffffff;
		border: 1px solid #e6eff5;
		box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
		text-align: left;
		opacity: 0;
		visibility: hidden;
		transform: translateY(-8px);
		transition: 0.25s;
		z-index: 20;
	}

	.header .header-menu:hover .header-nav,
	.header .header-menu:focus-within .header-nav {
		opacity: 1;
		visibility: visible;
		transform: translateY(0);
	}

	.header-nav li {
		display: block;
		width: 100%;
	}

	.header-nav li a {
		padding: 12px 16px;
		font-size: 15px;
		line-height: 22px;
		text-align: left;
	}

	.header-nav li.activ a:before {
		display: none;
	}

	.header-nav li#login a,
	.header-nav li#exit a {
		margin: 8px 16px 0;
		width: auto;
		max-width: none;
		text-align: center;
	}

	.header-content {
		margin: 16px 0 0;
	}

	.header-content .form-search {
		margin-top: 0;
	}

	.header-content .form-search input {
		height: 52px;
		padding: 2px 54px 0 46px;
		background-position: 14px 50%;
		background-size: 17px;
		font-size: 15px;
	}

	.header-content .form-search button {
		width: 52px;
		height: 52px;
		background-position: 16px 50%;
	}
}

@media (max-width: 767px) {
	.header,
	.content {
		padding-left: 12px;
		padding-right: 12px;
	}

	.header .header-menu:before {
		top: 16px;
		width: 40px;
		height: 40px;
	}

	.header .header-menu:after {
		top: 28px;
		right: 10px;
		width: 20px;
	}

	.logo {
		max-width: calc(100% - 52px);
	}

	.logo img {
		max-width: 118px;
		margin-left: 10px;
	}

	.header-content h1 {
		font-size: 24px;
		line-height: 30px;
		max-width: 100%;
	}

	.breadcrumbs {
		padding: 14px 0 10px;
	}
}

@media (max-width: 479px) {
	.header,
	.content {
		padding-left: 10px;
		padding-right: 10px;
	}

	.header-nav li a {
		padding: 11px 14px;
		font-size: 14px;
	}

	.header-content .form-search input {
		height: 48px;
		padding-left: 42px;
		padding-right: 46px;
		font-size: 14px;
	}

	.header-content .form-search button {
		width: 46px;
		height: 48px;
		background-position: 13px 50%;
	}

	.header-content h1 {
		font-size: 22px;
		line-height: 28px;
	}
}

/* ---------------------------------------------------------
   5. Раскрывашка разделов/тем на мобильных
   CSS-only: свёрнуто по высоте, открывается hover/focus-within
--------------------------------------------------------- */

@media (max-width: 991px) {
	.subsection-list.forum_page {
		position: relative;
		margin: 0 0 18px;
		padding: 46px 0 0;
		max-height: 46px;
		overflow: hidden;
		border: 1px solid #d9e6ee;
		background: #f7fbfd;
		transition: max-height 0.35s ease;
	}

	.subsection-list.forum_page:before {
		content: "Темы и разделы";
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		height: 46px;
		padding: 0 46px 0 14px;
		font-size: 15px;
		line-height: 46px;
		color: #0c5f9f;
		font-weight: 500;
		background: #eef5f9;
		border-bottom: 1px solid #d9e6ee;
	}

	.subsection-list.forum_page:after {
		content: "";
		position: absolute;
		top: 17px;
		right: 16px;
		width: 10px;
		height: 10px;
		border-right: 2px solid #0c5f9f;
		border-bottom: 2px solid #0c5f9f;
		transform: rotate(45deg);
		transition: 0.25s;
	}

	.subsection-list.forum_page:hover,
	.subsection-list.forum_page:focus-within {
		max-height: 1000px;
	}

	.subsection-list.forum_page:hover::after,
	.subsection-list.forum_page:focus-within::after {
		transform: rotate(-135deg);
		top: 21px;
	}

	.subsection-list.forum_page li {
		margin: 0;
		display: block;
		border-top: 1px solid rgba(12, 95, 159, 0.06);
	}

	.subsection-list.forum_page li a {
		display: block;
		height: auto;
		line-height: 20px;
		padding: 12px 14px;
		font-size: 14px;
	}

	.subsection-list.forum_page li a span {
		float: right;
		margin-left: 10px;
	}

	.subsection-list.forum_page li.new_theme {
		background: #fff;
	}

	.subsection-list.forum_page li.new_theme a {
		padding-left: 34px;
		display: flex;
        align-items: center;
        height: 45px;
	}

	.subsection-list.forum_page li.new_theme a:before {
		left: 15px;
		top: 14px;
	}

	.subsection-list.forum_page li.new_theme a:after {
		left: 8px;
		top: 21px;
	}
}

@media (max-width: 479px) {
	.subsection-list.forum_page:before {
		font-size: 14px;
		padding-left: 12px;
	}
}

/* ---------------------------------------------------------
   6. Список материалов: форум / блоги / статьи / поиск
--------------------------------------------------------- */

@media (max-width: 991px) {
	.left_content .item {
		padding: 14px 0;
	}

	.item h3 {
		font-size: 16px;
		line-height: 23px;
	}

	.list_page .item.forum h3,
	.list_page .item.blogs h3,
	.list_page .item.article h3 {
		width: 100%;
	}

	.list_page .item.forum .show_author,
	.list_page .item.forum .show_date_create,
	.list_page .item.forum .comment,
	.list_page .item.forum .view,
	.list_page .item.forum .time {
		position: static;
		left: auto;
		top: auto;
		display: inline-block;
		vertical-align: middle;
		margin: 8px 14px 0 0;
		width: auto;
	}

	.list_page .item.forum .time span {
		display: inline;
		width: auto;
	}

	.left_content .item .time,
	.left_content .item .view,
	.left_content .item .comment {
		margin-right: 14px;
	}

	.search-page .item .desc {
		padding-top: 8px;
	}
}

@media (max-width: 767px) {
	h2 {
		font-size: 26px;
		line-height: 30px;
		padding: 28px 0 18px;
	}

	.left_content h2 {
		font-size: 22px;
		line-height: 26px;
		padding: 0 0 10px;
	}

	.item h3 {
		font-size: 15px;
		line-height: 22px;
	}

	.item .subsection {
		font-size: 9px;
		line-height: 12px;
	}

	.item .section,
	.item .author,
	.item .view,
	.item .comment,
	.item .source,
	.item .time {
		font-size: 11px;
		line-height: 16px;
	}

	.list_page .item.forum .show_author,
	.list_page .item.forum .show_date_create {
		font-size: 11px;
		line-height: 16px;
	}

	.left_content .item .subsection {
		margin-bottom: 10px;
	}

	.search-page .desc {
		font-size: 13px;
		line-height: 20px;
	}
}

@media (max-width: 479px) {
	h2 {
		font-size: 24px;
		line-height: 28px;
	}

	.left_content h2 {
		font-size: 20px;
		line-height: 24px;
	}

	.item h3 {
		font-size: 14px;
		line-height: 20px;
	}
}

/* ---------------------------------------------------------
   7. Главная страница
--------------------------------------------------------- */

@media (max-width: 991px) {
	.main-all {
		padding-bottom: 40px;
	}

	.main-all .content {
		display: block;
	}

	.main-all .fresh {
		float: none;
		width: 100%;
	}

	.main-all .fresh .item {
		float: none;
		width: 100% !important;
		height: auto;
		margin: 0 0 16px 0 !important;
		padding: 14px 16px 48px;
	}

	.main-all .fresh .item h3,
	.main-all .fresh .item:nth-of-type(4n) h3,
	.main-all .fresh .item:nth-of-type(4n + 1) h3 {
		font-size: 19px;
		line-height: 26px;
	}

	.main-all .fresh .item .comment {
		left: 16px;
		bottom: 14px;
	}

	.main-all .fresh .item .time {
		right: 16px;
		bottom: 14px;
	}

	.main-all .fresh #show-more {
		height: 42px;
		line-height: 42px;
	}

	.main-all .hot {
		float: none;
		width: 100%;
		margin-top: 28px;
		margin-bottom: 0;
	}
}

@media (max-width: 767px) {
	.main-all .fresh .item {
		padding: 12px 14px 46px;
	}

	.main-all .fresh .item h3,
	.main-all .fresh .item:nth-of-type(4n) h3,
	.main-all .fresh .item:nth-of-type(4n + 1) h3 {
		font-size: 17px;
		line-height: 24px;
	}
}

/* ---------------------------------------------------------
   8. Горячие темы / sidebar
--------------------------------------------------------- */

@media (max-width: 991px) {
	.hot h2,
	.right_content h2 {
		padding: 0 0 12px 28px;
		font-size: 18px;
		line-height: 22px;
	}

	.hot .item {
		padding: 10px 0 40px;
	}

	.hot .item h3 {
		font-size: 14px;
		line-height: 20px;
	}
}

@media (max-width: 767px) {
	.hot h2,
	.right_content h2 {
		padding-left: 24px;
	}

	.hot h2:before {
		width: 16px;
		height: 24px;
		background-size: contain;
		background-repeat: no-repeat;
	}
}

/* ---------------------------------------------------------
   9. Текстовые страницы: правила, о проекте и т.д.
--------------------------------------------------------- */

@media (max-width: 991px) {
	.text_page {
		padding-bottom: 20px;
	}

	.text_page + .hot.right_content,
	.detail_header + .text_page.detail_page + .hot.right_content {
		margin-top: 24px;
	}
}

@media (max-width: 767px) {
	.text_page,
	.text_page p {
		font-size: 14px;
		line-height: 22px;
	}

	.text_page h2 {
		font-size: 18px;
		line-height: 26px;
		padding-top: 18px;
		margin-bottom: 12px;
	}

	.text_page ul li {
		padding-left: 16px;
	}

	.text_page ul li:before {
		top: 10px;
	}

	.footer_sign_up {
		padding: 24px 18px 90px;
		margin-bottom: 30px;
	}

	.footer_sign_up .title {
		font-size: 22px;
		line-height: 28px;
	}

	.footer_sign_up .text {
		width: 100%;
	}

	.footer_sign_up .btn {
		left: 18px;
		right: 18px;
		top: auto;
		bottom: 20px;
		width: auto;
		height: 44px;
		line-height: 44px;
		font-size: 17px;
	}
}

@media (max-width: 479px) {
	.text_page,
	.text_page p {
		font-size: 14px;
		line-height: 21px;
	}

	.footer_sign_up {
		padding: 20px 14px 82px;
	}

	.footer_sign_up .title {
		font-size: 20px;
		line-height: 25px;
	}

	.footer_sign_up .btn {
		left: 14px;
		right: 14px;
		bottom: 16px;
	}
}

/* ---------------------------------------------------------
   10. Детальная страница
--------------------------------------------------------- */

@media (max-width: 991px) {
	.detail_header {
		width: 100%;
		margin: 16px 0 20px;
	}

	.detail_header .img {
		width: 64px;
		height: 64px;
		margin-right: 18px;
		border-radius: 64px;
	}

	.detail_header .img img {
		max-width: 64px;
		max-height: 64px;
	}

	.detail_header .right_block {
		width: calc(100% - 82px);
	}

	.detail_header h1 {
		width: auto;
		max-width: 100%;
		font-size: 22px;
		line-height: 30px;
	}

	.detail_quotes {
		padding-left: 70px;
		background-position: 12px 4px;
		background-size: 38px auto;
	}
}

@media (max-width: 767px) {
	.detail_header {
		padding-bottom: 14px;
	}

	.detail_header .img {
		display: block;
		margin: 0 0 12px;
	}

	.detail_header .right_block {
		display: block;
		width: 100%;
	}

	.detail_header .right_block .author {
		font-size: 14px;
		line-height: 20px;
		height: auto;
		padding: 2px 8px;
	}

	.detail_header h1 {
		font-size: 20px;
		line-height: 28px;
		margin-bottom: 10px;
	}

	.detail_header .right_block .subsection-list {
		display: block;
		margin: 0 0 8px;
		padding-top: 0;
		max-height: none;
		overflow: visible;
		border: 0;
		background: none;
	}

	.detail_header .right_block .subsection-list:before,
	.detail_header .right_block .subsection-list:after {
		display: none;
	}

	.detail_header .right_block .subsection-list li {
		display: inline-block;
		border-top: 0;
	}

	.detail_header .right_block .subsection-list li a {
		padding: 0 10px;
		height: 28px;
		line-height: 28px;
		background: #eef5f9;
	}

	.detail_header .right_block .comment,
	.detail_header .right_block .time {
		margin-top: 4px;
		margin-right: 16px;
	}

	.detail_quotes {
		padding-left: 0;
		padding-top: 40px;
		background-position: 0 0;
		background-size: 30px auto;
		font-size: 15px;
		line-height: 24px;
	}
}

@media (max-width: 479px) {
	.detail_header h1 {
		font-size: 18px;
		line-height: 25px;
	}
}

/* ---------------------------------------------------------
   11. Комментарии
--------------------------------------------------------- */

@media (max-width: 991px) {
	.comments_block {
		padding-top: 24px;
		margin-top: 20px;
	}

	.comments_block .add_comment,
	.comments_block .comment {
		width: 100%;
	}

	.comments_block .add_comment .img,
	.comments_block .comment .img {
		width: 64px;
		height: 64px;
		margin-right: 18px;
		border-radius: 64px;
	}

	.comments_block .add_comment .img img,
	.comments_block .comment .img img {
		max-width: 64px;
		max-height: 64px;
	}

	.comments_block .add_comment .right_block,
	.comments_block .comment .right_block {
		width: calc(100% - 82px);
	}

	.comments_block .comment .delete {
		right: 0;
	}
}

@media (max-width: 767px) {
	.comments_block .title,
	.comments_block .no_comments {
		font-size: 18px;
		line-height: 24px;
		margin-bottom: 16px;
	}

	.comments_block .needAuth {
		font-size: 14px;
		line-height: 22px;
	}

	.comments_block .add_comment .img,
	.comments_block .comment .img {
		display: block;
		margin: 0 0 12px;
	}

	.comments_block .add_comment .right_block,
	.comments_block .comment .right_block {
		display: block;
		width: 100%;
	}

	.comments_block .comment .right_block .author {
		font-size: 14px;
		line-height: 20px;
		height: auto;
		margin-bottom: 6px;
	}

	.comments_block .comment .right_block .text {
		font-size: 14px;
		line-height: 22px;
	}

	.comments_block .add_comment textarea {
		height: 110px;
		padding: 10px 14px;
		font-size: 14px;
		line-height: 22px;
	}

	.comments_block .add_comment input[type=submit] {
		float: none;
		width: 100%;
		height: 42px;
		line-height: 42px;
	}
}

/* ---------------------------------------------------------
   12. Новое сообщение / формы / auth / edit profile
--------------------------------------------------------- */

@media (max-width: 767px) {
	.new_msg {
		padding-top: 12px;
	}

	.new_msg .select div {
		display: block;
		width: 100%;
		height: auto;
		min-height: 40px;
		line-height: 20px;
		padding: 10px 12px;
		margin-right: 0;
		margin-bottom: 10px;
	}

	.new_msg .wrap-field,
	.auth_page .wrap-field,
	.popup-wrap .wrap-field {
		margin-bottom: 12px;
	}

	.new_msg input[type=text],
	.new_msg input[type=password],
	.auth_page input[type=text],
	.auth_page input[type=password],
	.popup-wrap input[type=text],
	.popup-wrap input[type=password] {
		height: 42px;
		padding: 10px 12px;
	}

	.new_msg textarea {
		height: 120px;
		padding: 10px 12px;
	}

	.new_msg input[type=submit],
	.auth_page input[type=submit],
	.popup-wrap button {
		height: 42px;
	}

	.auth_page {
		width: 100%;
		margin-bottom: 30px;
	}

	.link_register,
	.link_forgot {
		float: none;
		display: block;
		margin: 10px 0 0;
	}
}

.policy_personal_data label {
	max-width: 100%;
}

@media (max-width: 767px) {
	.policy_personal_data {
		font-size: 12px;
		line-height: 17px;
	}

	.policy_personal_data label {
		display: block;
		padding: 4px 0 4px 26px;
		font-size: 12px;
		line-height: 18px;
	}

	.policy_personal_data input {
		top: 4px;
	}
}

/* ---------------------------------------------------------
   13. Popup
--------------------------------------------------------- */

@media (max-width: 767px) {
	.popup-wrap {
		padding: 15px 10px;
		white-space: normal;
	}

	.popup-wrap:after {
		display: none;
	}

	.popup-auth,
	.popup-forgot {
		width: 100%;
		max-width: 420px;
	}

	.popup-auth .login-btn,
	.popup-auth .reg-btn {
		height: 50px;
		line-height: 50px;
		font-size: 14px;
	}

	.popup-auth .body-login,
	.popup-auth .body-reg,
	.popup-forgot .body-popup {
		padding: 20px 14px 24px;
	}
}

/* ---------------------------------------------------------
   14. Пагинация
--------------------------------------------------------- */

.newPagination {
	max-width: 100%;
}

@media (max-width: 767px) {
	.newPagination {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		padding-bottom: 4px;
	}

	.newPagination ul {
		white-space: nowrap;
		min-width: max-content;
	}

	.newPagination li {
		display: inline-block;
		vertical-align: middle;
	}
}

/* ---------------------------------------------------------
   15. Footer
--------------------------------------------------------- */

@media (max-width: 991px) {
	.footer {
		position: static;
		width: 100%;
		min-width: 0;
	}

	.footer .content {
		padding-top: 28px;
		padding-bottom: 28px;
	}

	.footer .footer-left-wrap,
	.footer .footer-right-wrap {
		float: none;
		width: 100%;
		height: auto;
		padding: 0;
	}

	.footer .footer-right-wrap {
		margin-top: 20px;
	}

	.footer-nav-club {
		float: none;
		width: 100%;
		margin-top: 0;
	}

	.footer-club {
		float: none;
		margin-top: 14px;
		text-align: left;
	}
}

@media (max-width: 767px) {
	.footer-nav-b24,
	.footer-nav-club {
		border-top: 0;
	}

	.footer-nav-b24 li,
	.footer-nav-club li {
		display: block;
	}

	.footer-nav-b24 li a,
	.footer-nav-club li a {
		margin-right: 0;
		padding: 6px 0;
	}
}

/* ---------------------------------------------------------
   16. Кнопка наверх / баннер
--------------------------------------------------------- */

@media (max-width: 767px) {
	.fixb24 {
		position: static;
		height: 56px;
		background-size: contain;
	}

	.content {
		padding-bottom: 30px;
	}

	.to_top {
		right: 8px;
		bottom: 8px;
		width: 34px;
		height: 34px;
		padding: 6px;
		transform: scale(0.95);
		transform-origin: bottom right;
	}

	.to_top:before {
		width: 34px;
		height: 34px;
	}

	.to_top:after {
		top: 29px;
		left: 27px;
		width: 8px;
		height: 8px;
	}
}

/* ---------------------------------------------------------
   17. Bitrix editor
--------------------------------------------------------- */

.bxlhe-frame,
.bxlhe-frame-table,
.bxlhe-editor-cell,
.lha-source-div,
.lha-textarea,
.lha-iframe {
	max-width: 100% !important;
}

@media (max-width: 991px) {
	.bxlhe-frame {
		height: auto !important;
	}

	.bxlhe-frame-table {
		width: 100% !important;
		table-layout: fixed;
	}

	.bxlhe-editor-cell {
		height: 220px !important;
	}

	.lha-iframe,
	.lha-textarea {
		width: 100% !important;
		height: 220px !important;
	}
}

@media (max-width: 767px) {
	.bxlhe-editor-buttons {
		overflow-x: auto;
		overflow-y: hidden;
		white-space: nowrap;
	}

	.lhe-stat-toolbar-cont {
		display: inline-block;
		min-width: max-content;
	}

	.bxlhe-editor-cell {
		height: 180px !important;
	}

	.lha-iframe,
	.lha-textarea {
		height: 180px !important;
	}
}

/* ---------------------------------------------------------
   18. Главная: article/blog split blocks
--------------------------------------------------------- */

@media (max-width: 991px) {
	.main-article,
	.main-blog {
		float: none;
		width: 100%;
		padding-left: 0;
		padding-right: 0;
	}

	.main-blog {
		margin-top: 24px;
	}
}

/* ---------------------------------------------------------
   19. Поиск
--------------------------------------------------------- */

@media (max-width: 991px) {
	.left_content.on_search_page .item .section,
	.right_content.on_search_page .item .section {
		display: inline;
	}
}

/* ---------------------------------------------------------
   20. Личный кабинет
--------------------------------------------------------- */

/* Базовые Bootstrap-like классы, разметка их использует */
.row {
	display: flex;
	flex-wrap: wrap;
	margin-left: -10px;
	margin-right: -10px;
}

.row > [class*="col-"] {
	padding-left: 10px;
	padding-right: 10px;
}

.col-12 {
	width: 100%;
}

.col-auto {
	width: auto;
	flex: 0 0 auto;
}

.mb-2 {
	margin-bottom: 12px;
}

.mb-5 {
	margin-bottom: 32px;
}

.w-100 {
	width: 100%;
}

.mw-100 {
	max-width: 100%;
}

.text-center {
	text-align: center;
}

@media (min-width: 768px) {
	.col-md-3 {
		width: 25%;
	}

	.col-md-4 {
		width: 33.3333%;
	}

	.col-md-6 {
		width: 50%;
	}

	.col-md-8 {
		width: 66.6667%;
	}
}

@media (max-width: 767px) {
	.row {
		margin-left: -8px;
		margin-right: -8px;
	}

	.row > [class*="col-"] {
		padding-left: 8px;
		padding-right: 8px;
	}
}

/* Стили блока профиля */
.top-block-info,
.block-new-part-inf,
.news-list {
	background: #f7fbfd;
	border: 1px solid #e6eff5;
	padding: 18px;
}

.top-block-info h2 {
	padding: 0;
	margin: 0;
	font-size: 28px;
	line-height: 34px;
}

.top-block-info h5 {
	margin: 0 0 6px;
	font-size: 12px;
	line-height: 16px;
	color: #777;
	font-weight: 400;
}

.gr-big {
	font-size: 28px;
	line-height: 32px;
	color: #0c5f9f;
}

.gr {
	color: #777;
}

.Info-lq {
	color: #09a0e9;
	word-break: break-word;
}

.Info-lq:hover {
	color: #0c5f9f;
}

.top_block {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 18px;
}

.link_info_personal {
	display: inline-block;
	padding: 8px 14px;
	background: #eef5f9;
	color: #0c5f9f;
}

.link_info_personal.active_info {
	background: #0c5f9f;
	color: #fff;
}

.count_info_section {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	margin-bottom: 18px;
}

.block_count_personal {
	display: inline-block;
	padding: 6px 12px;
	background: #f3f7fa;
	color: #275f9f;
}

.count_block_section {
	font-weight: 700;
}

.block_blog_info {
	padding: 16px 0;
	border-bottom: 1px solid #e5e5e5;
}

.strelka_info {
	font-size: 12px;
	line-height: 18px;
	color: #999;
	margin-bottom: 8px;
}

.block_blog_info_title {
	margin: 0 0 10px;
	padding: 0;
	font-size: 22px;
	line-height: 28px;
	border: 0;
}

.block_blog_info_title a {
	color: #000;
}

.block_blog_info_title a:hover {
	color: #14609d;
}

.name_section_info {
	display: inline-block;
	margin-bottom: 12px;
	padding: 3px 7px;
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: 2px;
	font-family: Arial, sans-serif;
	font-size: 10px;
	line-height: 12px;
	text-transform: uppercase;
	color: #999;
}

.block_info_info {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
}

.block_info_info_time {
	position: relative;
	font-size: 11px;
	line-height: 16px;
	color: #999;
	font-family: Arial, sans-serif;
}

.block_info_info_tags {
	margin-top: 10px;
	font-size: 12px;
	line-height: 18px;
	color: #999;
}

/* custom select */
.custom-select-wrapper {
	position: relative;
	min-width: 220px;
}

.custom-select {
	position: relative;
	display: inline-block;
	width: 100%;
	cursor: pointer;
}

.custom-select-trigger {
	display: block;
	padding: 10px 14px;
	background: #fff;
	border: 1px solid #d9e6ee;
	color: #0c5f9f;
}

.custom-select .custom-options {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	background: #fff;
	border: 1px solid #d9e6ee;
	z-index: 5;
}

.custom-select.opened .custom-options {
	display: block;
}

.custom-option {
	display: block;
	padding: 10px 14px;
	color: #333;
}

.custom-option:hover,
.custom-option.selection {
	background: #eef5f9;
}

.block-new-part-inf span {
	display: block;
	margin-bottom: 8px;
}

.block-new-part-inf p {
	margin: 0 0 8px;
}

@media (max-width: 767px) {
	.top-block-info h2 {
		font-size: 24px;
		line-height: 30px;
	}

	.gr-big {
		font-size: 22px;
		line-height: 28px;
	}

	.top-block-info,
	.block-new-part-inf,
	.news-list {
		padding: 14px;
	}

	.block_blog_info_title {
		font-size: 18px;
		line-height: 24px;
	}

	.count_info_section {
		flex-direction: column;
		align-items: stretch;
	}

	.custom-select-wrapper {
		min-width: 0;
		width: 100%;
	}
}

/* ---------------------------------------------------------
   21. Редактирование профиля
--------------------------------------------------------- */

.bx-auth-profile {
	width: 100%;
}

.bx-auth-profile .soc-serv-title {
	margin-top: 20px;
	margin-bottom: 12px;
	font-size: 15px;
	line-height: 22px;
	color: #333;
}

.soc-serv-accounts {
	overflow-x: auto;
}

.soc-serv-accounts table {
	width: 100%;
	border-collapse: collapse;
	min-width: 320px;
}

.soc-serv-accounts td {
	border: 1px solid #e5e5e5;
	font-size: 13px;
	line-height: 18px;
	padding: 8px;
}

.soc-serv-header td {
	background: #f7fbfd;
	font-weight: 700;
}

@media (max-width: 767px) {
	.auth_page {
		width: 100%;
	}
}

/* ---------------------------------------------------------
   22. Небольшие правки для одинакового поведения
--------------------------------------------------------- */

@media (max-width: 991px) {
	.main-page .header-content .header-title,
	.header-content .header-title {
		width: 100%;
		float: none;
	}

	.main-page .header-content .form-search {
		float: none;
		width: 100%;
	}

	.footer-nav-b24,
	.footer-nav-club {
		width: 100%;
	}
}

/* ---------------------------------------------------------
   23. Для hover-less touch устройств:
   оставляем меню и разделы открытыми постоянно,
   чтобы пользователь точно мог пользоваться без JS
--------------------------------------------------------- */

@media (hover: none) and (max-width: 991px) {
	.header-nav {
		position: static;
		opacity: 1;
		visibility: visible;
		transform: none;
		margin-top: 12px;
	}

	.header .header-menu:before,
	.header .header-menu:after {
		display: none;
	}

	.subsection-list.forum_page {
		max-height: none;
		overflow: visible;
	}
}