/*
 * GS-botblocker: отличия клона от каркаса GS-product.
 * Всё общее — в родительской теме; здесь только бренд и точечные правки.
 */

/* Шапка клона: логотип BotBlocker горизонтальный. */
.gs-header__brand img {
	width: 180px;
	max-height: none;
	height: auto;
}

@media (max-width: 767px) {
	.gs-header__brand img {
		width: 140px;
	}
}

/* На планшете и мобильном оригинал показывает щит фоном в hero. */
/* hero-картинка на планшете и мобильном скрыта, как в оригинале */

/* Категории BotBlocker */
.gs-category {
	padding-top: 8px;
}

.gs-category__title {
	margin: 8px 0 16px;
	font-size: 40px;
	line-height: 48px;
	font-weight: 500;
	color: #333333;
}

.gs-category__post + .gs-category__post {
	margin-top: 14px;
}

.gs-category__post-title {
	margin: 8px 0 16px;
	font-size: 32px;
	line-height: 38.4px;
	font-weight: 500;
}

.gs-category__post-title a {
	color: #CC3366;
	text-decoration: none;
}

.gs-category__post-title a:hover,
.gs-category__post-title a:focus-visible {
	color: var(--gs-color-accent);
}

.gs-category__image-link {
	display: block;
}

.gs-category__image {
	display: block;
	width: 100%;
	height: 500px;
	object-fit: cover;
}

.gs-category__excerpt {
	margin-top: 6px;
	font-size: 16px;
	line-height: 24px;
	color: #333333;
}

.gs-category__excerpt p {
	margin: 0 0 14.4px;
}

.gs-category__pagination {
	display: flex;
	justify-content: flex-end;
	gap: 20px;
	margin: 40px 0 10px;
	font-size: 14px;
	font-weight: 600;
}

/* Статьи BotBlocker */
.gs-article-hero {
	display: flex;
	align-items: center;
	min-height: 253px;
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
}

.gs-article-hero .gs-container {
	width: 100%;
}

.gs-article-hero__title {
	margin: 0;
	font-size: 30px;
	line-height: 35px;
	font-weight: 600;
	color: #000000;
}

.gs-article-hero--docs .gs-article-hero__title {
	max-width: 380px;
}

.gs-article-layout {
	display: grid;
	grid-template-columns: 380px 760px;
	gap: 0;
	padding-top: 20px;
	padding-bottom: 50px;
}

.gs-article-sidebar {
	padding: 10px;
}

.gs-article-main {
	display: flex;
	flex-direction: column;
	gap: 20px;
	min-width: 0;
	padding: 10px;
}

.gs-article-content {
	font-size: 14px;
	line-height: 20px;
	color: #000000;
}

.gs-article-content--blog {
	line-height: 16px;
}

.gs-article-content h2 {
	margin: 30px 0 15px;
	font-size: 30px;
	line-height: 35px;
	font-weight: 600;
	color: var(--gs-color-primary);
}

.gs-article-content h3 {
	margin: 20px 0 10px;
	font-size: 20px;
	line-height: 24px;
	font-weight: 600;
	color: var(--gs-color-primary);
}

.gs-article-content p,
.gs-article-content ul,
.gs-article-content ol {
	margin: 0 0 14.4px;
}

.gs-article-content ul,
.gs-article-content ol {
	padding-left: 20px;
}

.gs-article-content a {
	color: var(--gs-color-accent);
}

.gs-article-content img {
	max-width: 100%;
	height: auto;
}

.gs-article-nav {
	display: flex;
	flex-direction: column;
}

.gs-article-nav__link {
	display: block;
	padding: 4px 0;
	font-size: 14px;
	line-height: 16px;
	font-weight: 600;
	color: #333333;
	text-decoration: none;
}

.gs-article-nav__link:hover,
.gs-article-nav__link:focus-visible {
	color: var(--gs-color-accent);
}

.gs-article-nav__link.is-active {
	color: #000000;
	font-weight: 700;
}

.gs-article-sidebar__image {
	margin: 0;
}

.gs-article-sidebar__image img {
	display: block;
	width: 100%;
	height: auto;
}

.gs-article-sidebar__divider {
	margin: 15px 0;
	border: 0;
	border-top: 1px dashed #888888;
}

.gs-article-promo {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 10px;
	min-height: 280px;
	padding: 25px;
	background-position: center;
	background-size: cover;
	color: #000000;
	text-align: center;
	text-decoration: none;
}

.gs-article-promo__title {
	margin: 0;
	font-size: 20px;
	line-height: 22px;
	font-weight: 700;
	color: #000000;
}

.gs-article-promo__text {
	margin: 0;
	font-size: 14px;
	line-height: 16px;
	color: var(--gs-color-primary);
}

.gs-article-promo__button {
	display: inline-block;
	align-self: center;
	margin-top: 10px;
	padding: 10px 20px;
	border: 1px solid var(--gs-color-primary);
	font-size: 14px;
	line-height: 16px;
	font-weight: 600;
	color: var(--gs-color-primary);
}

.gs-related {
	margin-top: 20px;
}

.gs-related__title {
	margin: 0;
	padding: 10px 0;
	font-size: 22px;
	line-height: 24px;
	font-weight: 600;
	color: var(--gs-color-primary);
}

.gs-related__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	padding: 10px;
}

.gs-related__card {
	display: flex;
	flex-direction: column;
	gap: 20px;
	padding: 25px;
	border: 1px solid #C7C7C7;
	border-radius: 2px;
	background: #F4FAFF;
	color: var(--gs-color-text);
	text-decoration: none;
}

.gs-related__card-title {
	margin: 0;
	font-size: 16px;
	line-height: 22px;
	font-weight: 500;
	color: var(--gs-color-text);
}

.gs-related__more {
	color: var(--gs-color-accent);
	font-size: 16px;
	line-height: 18px;
	font-weight: 600;
}

@media (max-width: 1024px) {
	.gs-article-layout {
		grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
	}
}

@media (max-width: 767px) {
	.gs-category__image {
		height: auto;
	}

	.gs-category__title {
		font-size: 40px;
		line-height: 48px;
	}

	.gs-category__post-title {
		font-size: 32px;
		line-height: 38.4px;
	}

	.gs-article-hero {
		min-height: 130px;
	}

	.gs-article-hero__title {
		font-size: 20px;
		line-height: 20px;
	}

	.gs-article-hero--docs .gs-article-hero__title {
		max-width: none;
	}

	.gs-article-layout {
		display: flex;
		flex-direction: column;
		padding-top: 0;
		padding-bottom: 10px;
	}

	.gs-article-main {
		order: 1;
		padding: 10px;
	}

	.gs-article-sidebar {
		order: 2;
		padding: 10px;
	}

	.gs-article-content--blog {
		font-size: 14px;
		line-height: 16px;
	}

	.gs-related__grid {
		grid-template-columns: minmax(0, 1fr);
	}
}

/* Дочерние категории документации: сайдбар + карточки + промо */
.gs-category-docs {
	display: grid;
	grid-template-columns: 285px 855px;
	gap: 0;
	padding-top: 60px;
	padding-bottom: 50px;
}

.gs-category-docs__sidebar {
	padding: 0;
}

.gs-category-docs__main {
	display: flex;
	flex-direction: column;
	gap: 20px;
	min-width: 0;
	padding: 10px;
}

.gs-category-docs__title-wrap {
	padding: 10px;
}

.gs-category-docs__title {
	margin: 0;
	font-size: 22px;
	line-height: 35px;
	font-weight: 500;
	color: var(--gs-color-primary);
}

.gs-category-docs__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	padding: 10px;
}

.gs-category-docs__card {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 10px;
	min-height: 142px;
	padding: 25px;
	border: 1px solid #C7C7C7;
	border-radius: 2px;
	background: #F4FAFF;
	color: var(--gs-color-text);
	text-decoration: none;
}

.gs-category-docs__card-title {
	margin: 0;
	font-size: 16px;
	line-height: 22px;
	font-weight: 500;
	color: var(--gs-color-text);
}

.gs-category-docs__more {
	color: var(--gs-color-accent);
	font-size: 16px;
	line-height: 18px;
	font-weight: 600;
}

.gs-category-docs__promo {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 10px;
	min-height: 280px;
	padding: 25px;
	background-position: center;
	background-size: cover;
	color: #000000;
	text-align: center;
	text-decoration: none;
}

.gs-category-docs__promo-title {
	margin: 0;
	font-size: 30px;
	line-height: 35px;
	font-weight: 700;
	color: #000000;
}

.gs-category-docs__promo-text {
	margin: 0;
	font-size: 14px;
	line-height: 16px;
	color: var(--gs-color-primary);
}

.gs-category-docs__promo-button {
	display: inline-block;
	margin-top: 10px;
	padding: 10px 20px;
	border: 1px solid var(--gs-color-primary);
	font-size: 14px;
	line-height: 16px;
	font-weight: 600;
	color: var(--gs-color-primary);
}

.gs-category-docs__info {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 20px;
	padding: 10px;
}

.gs-category-docs__info-card {
	display: flex;
	flex-direction: column;
	gap: 20px;
	min-height: 177px;
	padding: 30px;
	border: 1px solid #C7C7C7;
	border-radius: 2px;
	background: transparent;
	color: var(--gs-color-primary);
	text-decoration: none;
}

.gs-category-docs__info-card h3 {
	margin: 0;
	font-size: 16px;
	line-height: 18px;
	font-weight: 600;
	color: var(--gs-color-primary);
}

.gs-category-docs__info-card p {
	margin: 0;
	font-size: 14px;
	line-height: 20px;
	color: var(--gs-color-primary);
}

@media (max-width: 1024px) {
	.gs-category-docs {
		grid-template-columns: minmax(0, 1fr) minmax(0, 3fr);
	}
}

@media (max-width: 767px) {
	.gs-category-docs {
		display: flex;
		flex-direction: column;
		padding: 20px 10px 0;
	}

	.gs-category-docs__sidebar {
		order: 0;
	}

	.gs-category-docs__main {
		order: 1;
		padding: 0;
	}

	.gs-category-docs .gs-article-nav {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 10px;
	}

	.gs-category-docs__title-wrap {
		padding: 10px 0;
	}

	.gs-category-docs__grid {
		grid-template-columns: minmax(0, 1fr);
		padding: 0;
	}

	.gs-category-docs__info {
		grid-template-columns: minmax(0, 1fr);
		padding: 0;
	}
}
