/**
 * Blog Styles
 * Стили для блога: архив, категории, одиночная запись
 */

/* ==========================================================================
   RESET WOODMART WRAPPER
   ========================================================================== */

/* Reset Woodmart's row wrapper for blog pages */
body.single-post .page-title-default {
	display: none!important;
}
.content-layout-wrapper:has(.blog-title),
.content-layout-wrapper:has(.blog-single) {
	display: block !important;
	margin: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
}

.content-layout-wrapper > .blog-title,
.content-layout-wrapper > .popular-articles,
.content-layout-wrapper > .blog-list,
.content-layout-wrapper > .blog-single,
.content-layout-wrapper > .blog-bottom,
.content-layout-wrapper > .copy-toast {
	width: 100% !important;
	max-width: 100% !important;
	flex: none !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/* Fix Swiper width calculation */
.popular-articles__slider,
.popular-articles__slider .swiper-wrapper {
	width: 100% !important;
}

.popular-articles__card.swiper-slide {
	width: auto !important;
	min-width: 300px;
}

/* ==========================================================================
   BLOG TITLE / HEADER
   ========================================================================== */

.blog-title {
	padding: 23px 0 60px;
	background: #F7F7F7;
	overflow: hidden;
}

.blog-title .programs-breadcrumb {
	margin-bottom: 10px;
}

.blog-title__text {
	max-width: 600px;
	margin: 0 auto;
	color: #3E4143;
	text-align: center;
	font-family: Manrope;
	font-size: 16px;
	font-weight: 500;
	line-height: 160%;
	margin-top: 20px;
}

.blog-title .programs-search {
	margin-top: 30px;
}

.blog-title .programs-tabs {
	flex-wrap: wrap;
	gap: 8px;
	max-width: 1300px;
}

/* Single post title */
.blog-title-single .programs__title {
	max-width: 953px;
	text-align: left;
}

.blog-title-single .blog-title__text {
	text-align: left;
	margin: 0;
	margin-top: 20px;
	max-width: 690px;
}

/* ==========================================================================
   POPULAR ARTICLES (SLIDER)
   ========================================================================== */

.popular-articles {
	padding-top: 60px;
	overflow: hidden;
}

.popular-articles__title {
	color: #2F3234;
	font-family: Manrope;
	font-size: 26px;
	font-weight: 600;
}

.popular-articles__layout {
	margin-top: 30px;
	display: grid;
	grid-template-columns: 2fr 1.5fr;
	grid-template-rows: repeat(2, 1fr);
	gap: 10px;
}

.popular-articles__layout > .popular-articles__card:nth-child(1) {
	grid-row: 1 / 3;
	grid-column: 1 / 2;
}

.popular-articles__layout > .popular-articles__card:nth-child(2) {
	grid-row: 1 / 2;
	grid-column: 2 / 3;
}

.popular-articles__layout > .popular-articles__card:nth-child(3) {
	grid-row: 2 / 3;
	grid-column: 2 / 3;
}

.popular-articles__card {
	position: relative;
	min-height: 258px;
	border-radius: 20px;
	overflow: hidden;
}

.popular-articles__card-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all .5s;
	z-index: 1;
}

.popular-articles__card:hover .popular-articles__card-bg {
	transform: scale(1.03);
}

.popular-articles__card::after {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.50);
	transition: all .3s;
	z-index: 1;
}

.popular-articles__card-content {
	position: relative;
	z-index: 2;
	padding: 20px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 100%;
}

.popular-articles__card-top {
	display: flex;
	justify-content: space-between;
}

.popular-articles__tags {
	max-width: 50%;
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}

.popular-articles__tag {
	padding: 6px 12px;
	border-radius: 10px;
	background: #FFF;
	color: #3A85FF;
	font-family: Manrope;
	font-size: 14px;
	font-weight: 500;
	line-height: normal;
	transition: all .3s;
	text-decoration: none;
}

.popular-articles__tag:hover {
	background-color: #3A85FF;
	color: #fff;
}

.popular-articles__date {
	color: #7C8184;
	font-family: Manrope;
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
	padding: 6px 12px;
	border-radius: 1000px;
	background: #FFF;
}

.popular-articles__card-bottom {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}

.popular-articles__card-bottom-left {
	max-width: 349px;
}

.popular-articles__card-title {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	font-family: Manrope;
	font-size: 18px;
	font-weight: 700;
	line-height: 23px;
	color: #fff;
	transition: all .3s;
	text-decoration: none;
}

.popular-articles__card-title:hover {
	color: #3A85FF;
}

.popular-articles__card-text {
	margin-top: 8px;
	display: -webkit-box;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	font-family: Manrope;
	color: #FFF;
	font-size: 15px;
	font-weight: 400;
	line-height: 156%;
}

.popular-articles__views {
	display: flex;
	align-items: center;
	gap: 6px;
	color: rgba(255, 255, 255, 0.9);
	font-family: Manrope;
	font-size: 14px;
	font-weight: 500;
	line-height: 146.7%;
}

.popular-articles__layout > .popular-articles__card:nth-child(1) .popular-articles__card-title {
	font-size: 22px;
	max-width: 325px;
	line-height: 35px;
}

.popular-articles__layout > .popular-articles__card:nth-child(1) .popular-articles__card-bottom-left {
	max-width: 493px;
}

.popular-articles__layout > .popular-articles__card:nth-child(1) .popular-articles__card-text {
	-webkit-line-clamp: 2;
	white-space: wrap;
}

.popular-articles__layout > .popular-articles__card:nth-child(1) .popular-articles__card-content {
	padding: 25px;
}

.popular-articles__nav {
	display: none;
}

/* ==========================================================================
   BLOG LIST / GRID
   ========================================================================== */

.blog-list {
	padding-top: 60px;
	padding-bottom: 60px;
	overflow: hidden;
}

.blog-list-title {
	color: #2F3234;
	font-family: Manrope;
	font-size: 26px;
	font-weight: 600;
	line-height: normal;
}

.blog-grid {
	margin-top: 30px;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	transition: opacity 0.3s ease;
}

.blog-grid.loading {
	opacity: 0.5;
	pointer-events: none;
}

.blog-no-results {
	grid-column: 1 / -1;
	text-align: center;
	padding: 40px 20px;
	color: #6B7280;
	font-size: 16px;
}

/* ==========================================================================
   BLOG CARD
   ========================================================================== */

.blog-card {
	border-radius: 20px;
	display: flex;
	flex-direction: column;
}

.blog-card-media {
	display: flex;
	padding: 16px;
	aspect-ratio: 325 / 255;
	overflow: hidden;
	position: relative;
	border-radius: 20px 20px 0 0;
}

.blog-card-media-link {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.blog-card-media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: all .5s;
}

.blog-card-media-link:hover img {
	transform: scale(1.03);
}

.blog-card-tags {
	z-index: 2;
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	height: fit-content;
}

.blog-card-tag {
	color: #3A85FF;
	font-family: Manrope;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	padding: 6px 12px;
	border-radius: 10px;
	background: #FFF;
	display: flex;
	text-decoration: none;
	height: fit-content;
	transition: all .3s;
}

.blog-card-tag:hover {
	background-color: #3A85FF;
	color: #fff;
}
.programs-tab a {
	color: #7C8184;
}
.programs-tab.active a {
	color: #FFFFFF;
}

.blog-card-body {
	border-radius: 0 0 20px 20px;
	background: #FFF;
	box-shadow: 0 4px 33.3px 0 rgba(0, 0, 0, 0.08);
	padding: 20px;
	flex-grow: 1;
}

.blog-card-meta {
	display: flex;
	align-items: center;
	gap: 10px;
	justify-content: space-between;
	margin-bottom: 14px;
}

.blog-card-date {
	color: #7C8184;
	font-family: Manrope;
	font-size: 12px;
	font-weight: 600;
	line-height: normal;
	padding: 6px 12px;
	border-radius: 1000px;
	background: #F2F4F5;
}

.blog-card-views {
	display: flex;
	align-items: center;
	gap: 6px;
	color: rgba(62, 65, 67, 0.9);
	font-family: Manrope;
	font-size: 14px;
	font-weight: 500;
	line-height: 146.7%;
}

.blog-card-title {
	color: #3E4143;
	font-family: Manrope;
	font-size: 22px;
	font-weight: 700;
	line-height: 26px;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	transition: all .3s;
}

.blog-card-title:hover {
	color: #3A85FF;
}

.blog-card-text {
	margin-top: 12px;
	overflow: hidden;
	color: #3E4143;
	font-family: Manrope;
	font-size: 15px;
	font-weight: 400;
	line-height: 156%;
	height: 69px;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}

.btn--arrow {
	margin-top: 20px;
	display: flex;
	align-items: center;
	width: fit-content;
	gap: 9px;
}

.btn--arrow span {
	color: #3A85FF;
	font-family: Manrope;
	font-size: 13px;
	font-weight: 700;
	line-height: normal;
	transition: all .3s;
	border-bottom: 1px solid rgba(58, 133, 255, 0.24);
}

.btn--arrow:hover span {
	border-bottom: 1px solid rgba(58, 133, 255, 1);
}

.btn--arrow path,
.btn--arrow rect {
	transition: all .3s;
}

.btn--arrow:hover rect {
	fill: #3A85FF;
}

.btn--arrow:hover path {
	stroke: #fff;
}

/* Show More Button */
.blog__show-more {
	padding: 20px 27px;
	width: 100%;
	display: flex;
	margin-top: 30px;
	border-radius: 9px;
	background: rgba(230, 239, 246, 0.50);
	color: #3A85FF;
	font-family: Manrope;
	font-size: 14px;
	font-weight: 600;
	line-height: normal;
	text-align: center;
	min-height: auto;
	transition: all .3s;
	justify-content: center;
	border: none;
	cursor: pointer;
}

.blog__show-more:hover {
	background: #3A85FF;
	color: #fff;
}

/* ==========================================================================
   SINGLE POST
   ========================================================================== */

.blog-single {
	padding-top: 60px;
	padding-bottom: 15px;
	overflow: hidden;
}

.blog-single__layout {
	display: flex;
	gap: 20px;
}

.blog-single__article {
	flex: 1;
}

.blog-single__cover {
	max-height: 525px;
	border-radius: 18px;
	overflow: hidden;
}

.blog-single__cover img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.blog-single__meta {
	margin-top: 20px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.blog-single__meta time {
	color: #7C8184;
	font-family: Manrope;
	font-size: 12px;
	font-weight: 600;
	line-height: normal;
	padding: 6px 12px;
	border-radius: 1000px;
	background: #F2F4F5;
}

.blog-single__meta-view {
	display: flex;
	gap: 6px;
	align-items: center;
	color: rgba(124, 129, 132, 0.9);
	font-family: Manrope;
	font-size: 16px;
	font-weight: 500;
	line-height: 160%;
}

.blog-single__author {
	margin-top: 18px;
	display: flex;
	gap: 18px;
	align-items: center;
}

.blog-single__author img {
	width: 60px;
	height: 60px;
	aspect-ratio: 1/1;
	border-radius: 999px;
	object-fit: cover;
}

.blog-single__author-name {
	color: #3E4143;
	font-size: 16px;
	font-weight: 500;
	line-height: 160%;
}

.blog-single__author-work {
	color: rgba(62, 65, 67, 0.5);
	font-size: 14px;
	font-weight: 500;
	line-height: 146.7%;
}

/* ==========================================================================
   SINGLE POST - TABLE OF CONTENTS
   ========================================================================== */

.blog-single__toc-wrapper {
	flex: 1;
	max-width: 325px;
	align-self: flex-start;
	position: sticky;
	top: 20px;
}

.blog-single__toc {
	padding: 24px 22px;
	border-radius: 20px;
	background: #FFF;
	box-shadow: 0 4px 33.3px 0 rgba(0, 0, 0, 0.08);
	height: fit-content;
	max-height: calc(100vh - 40px);
	overflow: auto;
}

.blog-single__toc-title {
	color: #2F3234;
	font-family: Manrope;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.2;
	margin-bottom: 30px;
	padding-bottom: 22px;
	border-bottom: 1px solid #E6EFF6;
}

.blog-single__toc-list {
	list-style: none;
	margin: 0;
	padding: 0;
	counter-reset: toc;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.blog-single__toc-list li {
	counter-increment: toc;
	display: flex;
	align-items: flex-start;
	gap: 13px;
}

.blog-single__toc-list li::before {
	content: counter(toc);
	width: 20px;
	height: 20px;
	min-width: 20px;
	border: 1px solid #3A85FF;
	border-radius: 50%;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #3A85FF;
	font-family: Manrope;
	font-size: 13px;
	font-weight: 500;
	line-height: 1;
}

.blog-single__toc-list a {
	color: #3E4143;
	font-family: Manrope;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.35;
	text-decoration: none;
	transition: color .2s;
	display: -webkit-box;
	width: 235px;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}

.blog-single__toc-list a:hover,
.blog-single__toc-list a.active,
.blog-single__toc-list a[aria-current="true"] {
	color: #3A85FF;
}

/* ==========================================================================
   SINGLE POST - CONTENT STYLES
   ========================================================================== */

.blog-single__content {
	margin-top: 40px;
	max-width: 785px;
}

.blog-single__content h2 {
	color: #3E4143;
	font-family: Manrope;
	font-size: 26px;
	font-weight: 600;
	margin-top: 50px;
}

.blog-single__content h2:first-child {
	margin-top: 0;
}

.blog-single__content blockquote {
	margin-top: 20px;
	color: #3E4143;
	font-family: Manrope;
	font-size: 16px;
	font-weight: 500;
	line-height: 160%;
	padding: 15px 25px;
	border-radius: 10px;
	border-left: 3px solid #3A85FF;
	background: #F6F9FC;
}

.blog-single__content p {
	margin-top: 20px;
	color: #3E4143;
	font-family: Manrope;
	font-size: 16px;
	font-weight: 500;
	line-height: 160%;
}

.blog-single__content ul {
	display: flex;
	flex-direction: column;
	gap: 10px;
	padding-left: 26px;
	margin-bottom: 30px;
	margin-top: 30px;
}

.blog-single__content ul li {
	color: #3E4143;
	font-size: 15px;
	font-weight: 600;
	line-height: 171%;
	position: relative;
}

.blog-single__content ul li::before {
	content: '';
	position: absolute;
	top: 50%;
	left: -26px;
	transform: translateY(-50%);
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #3A85FF;
}

.blog-single__content img {
	width: 100%;
	border-radius: 18px;
	height: 100%;
	object-fit: cover;
}

/* ==========================================================================
   GUTENBERG BLOCK: BANNER
   ========================================================================== */

.blog-single__banner {
	margin-top: 30px;
	margin-bottom: 30px;
	position: relative;
	padding: 32px 25px;
	border-radius: 10px;
	overflow: hidden;
}

.blog-single__banner-img {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
}

.blog-single__banner-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.blog-single__banner-content {
	display: flex;
	align-items: center;
	justify-content: space-between;
	z-index: 2;
	position: relative;
}

.blog-single__banner-title {
	color: #FFF;
	font-family: Manrope;
	font-size: 18px;
	font-weight: 700;
	line-height: 130%;
	max-width: 295px;
}

.blog-single__banner-code {
	padding: 12px 18px;
	border-radius: 900px;
	background: #FFF;
	display: flex;
	align-items: center;
	gap: 10px;
	color: #3A85FF;
	font-family: Manrope;
	font-size: 18px;
	font-weight: 800;
	line-height: 130%;
	cursor: pointer;
	user-select: none;
	transition: transform .2s ease, box-shadow .2s ease;
}

.blog-single__banner-code:focus-visible {
	outline: 2px solid #3A85FF;
	outline-offset: 2px;
}

.blog-single__banner-code:hover {
	box-shadow: 0 6px 20px rgba(58, 133, 255, 0.18);
}

.blog-single__banner-code.is-copied {
	transform: translateY(-1px);
	box-shadow: 0 8px 22px rgba(58, 133, 255, 0.25);
}

/* ==========================================================================
   GUTENBERG BLOCK: STEP
   ========================================================================== */

.step {
	padding: 13px 14px;
	border-radius: 10px;
	border: 1px solid #3A85FF;
	background: #FFF;
	display: flex;
	align-items: flex-start;
	gap: 14px;
	margin-top: 20px;
	margin-bottom: 15px;
}

.step--first {
	margin-top: 30px;
}

.spep-number {
	min-width: 30px;
	width: 30px;
	height: 30px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 900px;
	background: #3A85FF;
	color: #FFF;
	text-align: center;
	font-size: 16px;
	font-style: normal;
	font-weight: 500;
	line-height: 160%;
}

.step__info-title {
	color: #3E4143;
	font-size: 16px;
	font-weight: 500;
	line-height: 160%;
}

.step__info-value {
	color: rgb(62, 65, 67, 0.5);
	font-size: 15px;
	font-weight: 600;
	line-height: 171%;
}

/* ==========================================================================
   GUTENBERG BLOCK: PRODUCT SLIDER
   ========================================================================== */

.product-blog {
	margin-top: 20px;
	margin-bottom: 30px;
}

.product-blog__slider {
	width: 100%;
	overflow: visible;
}

.product-blog__list {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.product-blog__item {
	padding: 20px;
	border-radius: 20px;
	background: #FFF;
	box-shadow: 0 4px 33.3px 0 rgba(0, 0, 0, 0.08);
	display: flex;
	align-items: center;
	gap: 30px;
}

.product-blog__media-wrap {
	height: 159px;
	width: 142px;
	min-width: 142px;
	position: relative;
	border-radius: 10px;
	overflow: hidden;
}

.product-blog__media {
	display: block;
	width: 100%;
	height: 100%;
}

.product-blog__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.product-blog__hit {
	color: #FFF;
	font-family: Manrope;
	font-size: 11px;
	font-weight: 700;
	line-height: 130%;
	padding: 3px 7px 4px 7px;
	border-radius: 900px;
	background: #ED8713;
	position: absolute;
	bottom: 10px;
	left: 10px;
}

.product-blog__favorite {
	width: 28px;
	height: 28px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2;
	background: none;
	border: none;
	cursor: pointer;
}

.product-blog__favorite--active g path {
	fill: #3A85FF;
	stroke: #3A85FF;
}

.product-blog__body {
	max-width: 256px;
}

.product-blog__badge {
	padding: 5px 10px;
	border-radius: 1000px;
	background: #3A85FF;
	color: #FFF;
	font-family: Manrope;
	font-size: 13px;
	font-weight: 600;
	line-height: 156%;
	margin-bottom: 11px;
	display: inline-block;
}

.product-blog__meta {
	display: flex;
	align-items: center;
	gap: 13px;
	margin-top: 11px;
	margin-bottom: 10px;
}

.product-blog__rating {
	display: flex;
	align-items: center;
	gap: 4px;
	color: #5B6166;
	font-family: Manrope;
	font-size: 12px;
	font-weight: 600;
	line-height: 130%;
}

.product-blog__reviews {
	display: flex;
	align-items: center;
	gap: 4px;
	color: #5B6166;
	font-size: 12px;
	font-style: normal;
	font-weight: 600;
	line-height: 130%;
}

.product-blog__reviews span {
	border-bottom: 1px dashed #5B6166;
}

.product-blog__title {
	color: #3E4143;
	font-size: 16px;
	font-weight: 600;
	line-height: 130%;
	transition: all .3s;
}

.product-blog__title:hover {
	color: #3A85FF;
}

.product-blog__price-row {
	margin-top: 10px;
	display: flex;
	align-items: center;
	gap: 12px;
}

.product-blog__price-wrap {
	display: flex;
	align-items: center;
	gap: 10px;
}

.product-blog__price {
	color: #50883C;
	font-size: 17px;
	font-weight: 800;
	line-height: 130%;
}

.product-blog__old-price {
	color: #72787E;
	font-size: 14px;
	font-weight: 600;
	line-height: 130%;
	position: relative;
}

.product-blog__old-price::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: 1px;
	background: #72787E;
	transform: rotate(-12deg);
}

.product-blog__discount {
	color: #FFF;
	text-align: center;
	font-family: Manrope;
	font-size: 13px;
	font-weight: 700;
	line-height: 16.9px;
	text-transform: uppercase;
	padding: 3px 10.068px 4px 11px;
	border-radius: 900px;
	background: #DD1F4F;
}

.product-blog__actions {
	max-width: 259px;
	width: 259px;
	margin-left: auto;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.product-blog__button {
	display: flex;
	align-items: center;
	width: 100%;
	padding: 16px;
	text-align: center;
	justify-content: center;
	gap: 9px;
	border: none;
	cursor: pointer;
}

.product-blog__button--primary {
	border-radius: 10px;
	background: #3A85FF;
	color: #FFF;
	font-family: Manrope;
	font-size: 14px;
	font-weight: 700;
	line-height: 16.8px;
	transition: all .3s;
	height: 53px;
}

.product-blog__button--primary:hover {
	background: #2760BC;
}

.product-blog__button--ghost {
	color: #3A85FF;
	font-family: Manrope;
	font-size: 14px;
	font-weight: 700;
	border-radius: 10px;
	border: 1px solid #E6EFF6;
	background: #FFF;
	transition: all .3s;
	height: 43px;
}

.product-blog__button--ghost:hover {
	border: 1px solid #3A85FF;
	color: #fff;
	background: #3A85FF;
}

.product-blog__navigation {
	display: none;
}

.swiper-button-disabled {
	opacity: 0.4;
}

/* ==========================================================================
   SINGLE POST - BOTTOM (TAGS, SHARE)
   ========================================================================== */

.blog-single__bottom {
	margin-top: 50px;
	padding-top: 20px;
	border-top: 1px solid #E6EFF6;
}

.blog-single__tags {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
}

.blog-single__tag {
	color: #7C8184;
	font-family: Manrope;
	font-size: 16px;
	font-weight: 500;
	padding: 8px 16px;
	border-radius: 10px;
	border: 1px solid rgba(124, 129, 132, 0.80);
	transition: all .3s;
}

.blog-single__tag:hover {
	border: 1px solid #3A85FF;
	color: #3A85FF;
}

.blog-single__share {
	margin-top: 20px;
	display: flex;
	align-items: center;
	gap: 8px;
}

.blog-single__share-title {
	color: #7C8184;
	font-family: Manrope;
	font-size: 13px;
	font-weight: 700;
	line-height: 136%;
}

.blog-single__share-items {
	display: flex;
	align-items: center;
	gap: 8px;
}

.blog-single__share-item {
	width: 27px;
	height: 27px;
	display: block;
	border-radius: 50%;
	overflow: hidden;
	background: none;
	border: none;
	cursor: pointer;
	padding: 0;
}

.blog-single__share-item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* ==========================================================================
   MORE POSTS (RELATED)
   ========================================================================== */

.blog-bottom {
	padding: 60px 0;
	background: #F7F7F7;
	overflow: hidden;
}

.more-posts {
	padding: 40px;
}

.more-posts__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 10px;
}

.more-posts__title {
	color: #2F3234;
	font-size: 26px;
	font-weight: 600;
	line-height: normal;
}

.more-posts__items {
	margin-top: 30px;
	display: flex;
	gap: 20px;
}

/* ==========================================================================
   COPY TOAST NOTIFICATION
   ========================================================================== */

.copy-toast {
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 1200;
	padding: 10px 14px;
	border-radius: 10px;
	background: rgba(47, 50, 52, 0.94);
	color: #FFF;
	font-family: Manrope;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.2;
	opacity: 0;
	transform: translateY(8px);
	pointer-events: none;
	transition: opacity .22s ease, transform .22s ease;
}

.copy-toast.is-visible {
	opacity: 1;
	transform: translateY(0);
}

.copy-toast.is-error {
	background: rgba(176, 44, 44, 0.94);
}

.blog-card-more {
	margin-top: auto;
}

/* ==========================================================================
   RESPONSIVE STYLES
   ========================================================================== */

@media (max-width: 1150px) {
	.blog-title {
		padding: 34px 0 40px;
		background: #F7F7F7;
	}

	.blog-title__text {
		max-width: 516px;
		font-size: 14px;
	}

	.blog-title .programs-search {
		margin-top: 40px;
	}

	.blog-title .programs-breadcrumb {
		margin-bottom: 15px;
	}

	.popular-articles__card {
		min-height: 252px;
		border-radius: 10px;
	}

	.popular-articles__layout > .popular-articles__card:nth-child(1) {
		grid-row: 1;
		grid-column: span 2;
		border-radius: 20px;
	}

	.popular-articles__layout > .popular-articles__card:nth-child(2) {
		grid-row: auto;
		grid-column: auto;
	}

	.popular-articles__layout > .popular-articles__card:nth-child(3) {
		grid-row: auto;
		grid-column: auto;
	}

	.popular-articles__layout {
		margin-top: 15px;
		grid-template-columns: 1fr 1fr;
		grid-template-rows: 1fr 1fr;
		gap: 16px 12px;
	}

	.popular-articles {
		padding-top: 40px;
	}

	.popular-articles__title {
		font-size: 25px;
	}

	.popular-articles__card-content {
		padding: 10px;
	}

	.popular-articles__card-title {
		-webkit-line-clamp: 1;
		font-size: 22px;
		max-width: 291px;
	}

	.popular-articles__layout > .popular-articles__card:nth-child(1) .popular-articles__card-title {
		-webkit-line-clamp: 2;
		max-width: 364px;
	}

	.popular-articles__card-text {
		margin-top: 2px;
		max-width: 253px;
	}

	.popular-articles__layout > .popular-articles__card:nth-child(1) .popular-articles__card-content {
		padding: 20px;
	}

	.popular-articles__tag {
		font-size: 12px;
	}

	.popular-articles__layout > .popular-articles__card:nth-child(1) .popular-articles__card-bottom-left {
		max-width: 390px;
	}

	.popular-articles__layout > .popular-articles__card:nth-child(1) .popular-articles__card-text {
		max-width: 390px;
	}

	.popular-articles__card-bottom {
		flex-direction: column;
		align-items: flex-start;
	}

	.popular-articles__card-bottom-right {
		margin-left: auto;
	}

	.popular-articles__layout > .popular-articles__card:nth-child(1) .popular-articles__card-bottom {
		flex-direction: row;
		align-items: flex-end;
	}

	.blog-list {
		padding-top: 40px;
		padding-bottom: 40px;
	}

	.blog-list-title {
		font-size: 25px;
	}

	.blog-grid {
		margin-top: 15px;
		grid-template-columns: repeat(3, 1fr);
		gap: 12px;
	}

	.blog-card-media {
		padding: 12px;
		aspect-ratio: 232 / 169;
		border-radius: 10px 10px 0 0;
	}

	.blog-card-tag {
		font-size: 12px;
		padding: 6px 10px;
	}

	.blog-card-body {
		border-radius: 0 0 10px 10px;
		padding: 16px;
	}

	.blog-card-meta {
		margin-bottom: 10px;
	}

	.blog-card-title {
		font-size: 16px;
		line-height: 1.2em;
	}

	.blog-card-text {
		margin-top: 3px;
		font-size: 14px;
		line-height: 137%;
		height: 59px;
	}

	.blog-card-more {
		margin-top: 14px;
	}

	.blog__show-more {
		margin-top: 20px;
	}

	.blog-title-single {
		padding-top: 20px;
		padding-bottom: 40px;
	}

	.blog-title-single .blog-title__text {
		margin-top: 8px;
		max-width: 583px;
	}

	.blog-title-single .programs__title {
		max-width: 720px;
		text-align: left;
	}

	.blog-single__toc-wrapper {
		max-width: 240px;
	}

	.blog-single {
		padding-top: 40px;
		padding-bottom: 20px;
	}

	.blog-single__cover {
		max-height: 296px;
		height: 296px;
		border-radius: 10px;
	}

	.blog-single__meta {
		margin-top: 12px;
	}

	.blog-single__meta-view {
		font-size: 14px;
	}

	.blog-single__author {
		margin-top: 16px;
		gap: 14px;
	}

	.blog-single__author img {
		width: 50px;
		height: 50px;
	}

	.blog-single__author-name {
		font-size: 14px;
	}

	.blog-single__author-work {
		font-size: 12px;
	}

	.blog-single__content {
		margin-top: 35px;
		max-width: 100%;
	}

	.blog-single__content h2 {
		font-size: 25px;
		margin-top: 35px;
	}

	.blog-single__content blockquote {
		margin-top: 25px;
		font-size: 16px;
		padding: 12px 20px;
	}

	.blog-single__content p {
		margin-top: 12px;
		font-size: 14px;
	}

	.blog-single__banner {
		margin-top: 25px;
		margin-bottom: 25px;
		padding: 24px;
	}

	.blog-single__banner-content {
		flex-direction: column;
		align-items: flex-start;
		gap: 18px;
	}

	.blog-single__banner-code {
		padding: 10px 16px;
		font-size: 16px;
	}

	.blog-single__content .blog-single__banner-img img {
		object-fit: cover;
		object-position: 25%;
	}

	.blog-single__content ul {
		gap: 8px;
		padding-left: 19px;
		margin-bottom: 20px;
		margin-top: 25px;
	}

	.blog-single__content ul li::before {
		top: 7px;
		left: -19px;
		transform: none;
		width: 10px;
		height: 10px;
	}

	.blog-single__content ul li {
		font-size: 13px;
	}

	.step--first {
		margin-top: 25px;
	}

	.step {
		padding: 12px;
		margin-top: 22px;
		margin-bottom: 12px;
	}

	.spep-number {
		min-width: 20px;
		width: 20px;
		height: 20px;
		font-size: 12px;
	}

	.step__info-title {
		font-size: 14px;
	}

	.step__info-value {
		font-size: 14px;
	}

	.blog-single__content img {
		border-radius: 10px;
	}

	.blog-single__bottom {
		margin-top: 30px;
		padding-top: 20px;
	}

	.blog-single__tag {
		font-size: 15px;
		padding: 8px 12px;
	}

	.blog-single__toc {
		padding: 14px;
		border-radius: 10px;
	}

	.product-blog__actions {
		width: 100%;
		max-width: 100%;
	}

	.product-blog__item {
		flex-wrap: wrap;
		gap: 24px 30px;
		box-shadow: none;
		border: 1px solid #E6EFF6;
	}

	.product-blog {
		margin-top: 25px;
		margin-bottom: 25px;
	}

	.product-blog__body {
		max-width: calc(100% - 173px);
	}

	.product-blog__navigation {
		display: flex;
		justify-content: center;
		margin-top: 20px;
		gap: 10px;
		align-self: center;
	}

	.blog-single__article {
		max-width: calc(100% - 260px);
	}

	.more-posts {
		overflow: visible !important;
		padding: 0;
	}

	.blog-bottom {
		overflow: hidden !important;
		padding: 20px 0 40px;
	}

	.more-posts__title {
		font-size: 21px;
	}

	.more-posts__items {
		margin-top: 20px;
	}
}

@media (max-width: 768px) {
	.blog-grid {
		margin-top: 15px;
		grid-template-columns: repeat(2, 1fr);
		gap: 12px;
	}

	.blog-title {
		padding: 14px 0 40px;
	}

	.blog-title .programs-search {
		margin-top: 30px;
	}

	.popular-articles {
		padding-top: 30px;
	}

	.popular-articles__title {
		font-size: 21px;
	}

	.popular-articles__slider .popular-articles__layout {
		margin-top: 20px;
		display: flex;
		gap: 0;
		grid-template-columns: none;
		grid-template-rows: none;
	}

	.popular-articles__slider .popular-articles__layout > .popular-articles__card {
		grid-column: auto;
		grid-row: auto;
		min-height: auto;
		aspect-ratio: 1 / 1.01;
		height: auto;
	}

	.popular-articles__slider {
		overflow: visible;
	}

	.popular-articles__nav {
		display: flex;
		margin-top: 20px;
		justify-content: center;
		gap: 10px;
	}

	.popular-articles__tags {
		max-width: max-content;
	}

	.popular-articles__card-top {
		display: flex;
		justify-content: space-between;
		gap: 5px;
	}

	.popular-articles__card-title {
		font-size: 19px;
		max-width: 265px;
		line-height: 28px;
		-webkit-line-clamp: 2;
	}

	.popular-articles__card-text {
		margin-top: 6px;
		-webkit-line-clamp: 1;
	}

	.popular-articles__layout > .popular-articles__card:nth-child(1) .popular-articles__card-bottom {
		flex-direction: column;
		align-items: flex-start;
	}

	.popular-articles__card-bottom-right {
		margin-top: 18px;
	}

	.popular-articles__layout > .popular-articles__card:nth-child(1) .popular-articles__card-text {
		max-width: 262px;
		-webkit-line-clamp: 1;
	}

	.popular-articles__layout > .popular-articles__card:nth-child(1) .popular-articles__card-title {
		max-width: 325px;
		font-size: 19px;
		line-height: 28px;
	}

	.popular-articles__layout > .popular-articles__card:nth-child(1) .popular-articles__card-content {
		padding: 10px;
	}

	.popular-articles__layout > .popular-articles__card:nth-child(1),
	.popular-articles__card {
		border-radius: 16px;
	}

	.blog-list {
		padding-top: 30px;
		padding-bottom: 30px;
	}

	.blog-list-title {
		font-size: 21px;
	}

	.blog-card-media {
		aspect-ratio: 332 / 208;
		padding: 16px;
	}

	.blog-card-body {
		padding: 18px;
	}

	.blog-card-text {
		height: 38px;
		-webkit-line-clamp: 2;
	}

	.blog-single__toc-wrapper {
		position: static;
		top: auto;
	}

	.blog-single__toc {
		max-height: none;
		overflow: visible;
		padding: 20px;
	}

	.blog-single__layout {
		gap: 30px;
		flex-direction: column;
	}

	.blog-single__toc-wrapper {
		order: -1;
		width: 100%;
		max-width: 100%;
	}

	.blog-single__toc-title {
		margin-bottom: 20px;
		padding-bottom: 14px;
	}

	.blog-single__toc-list {
		gap: 10px;
	}

	.blog-single__cover {
		max-height: 230px;
		height: 230px;
	}

	.blog-single__author {
		margin-top: 14px;
	}

	.blog-single__content h2 {
		font-size: 21px;
		margin-top: 30px;
	}

	.blog-single__content p {
		margin-top: 16px;
	}

	.product-blog__item {
		gap: 20px 12px;
		padding: 14px;
		border: none !important;
		box-shadow: 0 4px 33.3px 0 rgba(0, 0, 0, 0.08);
	}

	.product-blog__media-wrap {
		height: 138px;
		width: 114px;
		min-width: 114px;
	}

	.product-blog__body {
		max-width: calc(100% - 128px);
	}

	.product-blog__title {
		font-size: 15px;
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		align-self: stretch;
		overflow: hidden;
	}

	.product-blog__price-row {
		margin-top: 15px;
	}

	.product-blog__slider {
		overflow: visible !important;
	}

	.blog-single__article {
		max-width: 100%;
	}

	.copy-toast {
		left: 14px;
		right: 14px;
		bottom: 14px;
		text-align: center;
	}
}

@media (max-width: 580px) {
	.blog-title .programs-tabs {
		flex-wrap: nowrap !important;
	}

	.blog-grid {
		margin-top: 20px;
		grid-template-columns: 1fr;
		gap: 18px;
	}
}