button {
	--primary: var(--color_brand_main);
	--primary-text: var(--color_const_light);
	--secondary: var(--color_brand_soft);
	--secondary-text: var(--color_const_light);
	--neutral: var(--color_bg_extrahard);
	--neutral-text: var(--color_text_extrasoft);
	--focus-ring: var(--color_brand_main);
	outline: 0;
	border: none;
	cursor: pointer;

	&.normal {
		padding-block: calc(var(--padding_main) / 2.4);
		padding-inline: calc(var(--padding_main) / 2);
	}

	&.large {
		font-size: var(--text_size_big);
		padding-block: calc(var(--padding_main) / 1.2);
		padding-inline: var(--padding_main);
	}

	&.small {
		font-size: var(--text_size_info);
		padding-block: calc(var(--padding_soft) / 2.4);
		padding-inline: calc(var(--padding_soft) / 2);
	}

	&.primary {
		background: var(--primary) !important;
		color: var(--primary-text) !important;
		box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
		transition: box-shadow scale 100ms ease-in;

		@media (hover: hover) {
			&:hover {
				box-shadow: 0 4px 8px rgba(0, 0, 0, 0.4);
			}
		}

		&:active {
			box-shadow: 0 2px 3px rgba(0, 0, 0, 0.4);
			filter: brightness(0.9);
		}

		&:focus-visible {
			box-shadow: 0 4px 8px rgba(0, 0, 0, 0.4);
			outline: 2px dotted var(--color_brand_soft);
			outline-offset: 4px;
		}
	}

	&.primary.inverted {
		background: var(--primary-text) !important;
		color: var(--primary) !important;
	}

	&.secondary {
		background: var(--secondary) !important;
		color: var(--secondary-text) !important;
	}

	&.secondary.inverted {
		background: var(--secondary-text) !important;
		color: var(--secondary) !important;
	}

	&.neutral {
		background: var(--neutral) !important;
		color: var(--neutral-text) !important;
	}

	&.neutral.inverted {
		background: var(--neutral-text) !important;
		color: var(--neutral) !important;
	}

	&.outline {
		background: transparent !important;
	}

	&.outline.primary {
		color: var(--primary) !important;
		border: 1px solid var(--primary) !important;
	}

	&.outline.secondary {
		color: var(--secondary) !important;
		border: 1px solid var(--secondary) !important;
	}

	&.outline.neutral {
		color: var(--neutral-text) !important;
		border: 1px solid var(--neutral-text) !important;
	}

	&.flat {
		box-shadow: none !important;
	}

	&.disabled {
		opacity: 0.3 !important;
		pointer-events: none;
	}

	&.disabled:hover {
		cursor: not-allowed !important;
	}
}

.indicator_comments {
	max-width: 3rem;
	max-height: 1rem;
	font-size: var(--text_size_extrasmall);
	line-height: 1;
	position: absolute;
	inset-block-start: 0.15rem;
	right: 0;
	padding-block: 0.1rem;
	padding-inline: 0.2rem;
	color: var(--color_brand_extrasoft);
  filter: saturate(0.4);
	border-block: 0.1rem solid currentColor;
	border-inline-end: 0.1rem solid currentColor;

	&::before {
		content: "";
		position: absolute;
		inset-inline-start: 0.05rem;
		inset-block-start: 0.2rem;
		height: 60%;
		transform: rotate(90deg);
		transform-origin: top;
		border-inline-end: 0.1rem solid currentColor;
	}

	&::after {
		content: "";
		position: absolute;
		inset-inline-start: 0;
		inset-block-start: -0.1rem;
		height: 66%;
		transform: rotate(-60deg);
		transform-origin: bottom;
		border-inline-end: 0.1rem solid currentColor;
	}

	& .indicator_comments--leftborder {
		inset: 0;

		&::before {
			content: "";
			position: absolute;
			inset-inline-start: 0;
			inset-block-end: 0;
			height: 51%;
			border-inline-end: 0.1rem solid currentColor;
		}
	}

	& a {
		all: unset;
		cursor: pointer;
		&:before {
			content: '';
			position: absolute;
			top: -1rem;
			right: -1rem;
			bottom: -1rem;
			left: -1rem;
			z-index: +1; 
			cursor: pointer;
	}

		@media (hover: hover) {
			&:hover {
				font-weight: var(--font_weight_extrabold);
			}
		}

		&:focus-visible {
			font-weight: var(--font_weight_extrabold);
			outline: 1px dotted currentColor;
			outline-offset: 0.4rem;
		}
	}
}

.ad_mark {
	display: grid;
	place-items: center;

	& p {
		display: inline-block;
		color: var(--color_text_ultrasoft);
		font-weight: var(--font_weight_light);
		text-align: center;
		font-size: var(--text_size_small);
		text-transform: uppercase;
		letter-spacing: 0.4ch;
		margin-block-start: var(--padding_extrasoft);
		position: relative;
		transition: color 0.2s ease-in-out, font-weight 0.2s ease-in-out;

		&:after {
			position: absolute;
			opacity: 0;
			content: "→";
			color: var(--color_brand_main);
			font-weight: var(--font_weight_bold);
			right: 1ch;
		}
	}

	@media (hover: hover) {
		&:hover p {
			font-weight: var(--font_weight_bold);
			color: var(--color_brand_main);
			cursor: pointer;
			text-decoration: underline;
		}

		&:hover p:after {
			opacity: 1;
			right: -2ch;
			transition: all 0.3s ease-out;
		}
	}

	&:focus-within * {
		font-weight: var(--font_weight_bold);
		color: var(--color_brand_main);
		cursor: pointer;
		text-decoration: underline;

		& p:after {
			opacity: 1;
			right: -2ch;
			transition: all 0.3s ease-out;
		}
	}
}

.layout {
	min-height: 100vh;
	min-height: 100dvh;
	height: 100%;
	display: flex;
	flex-direction: column;

	& .layout_header {
		display: contents;
		position: relative;
		flex-shrink: 0;
	}

	& .layout_main {
		flex-grow: 1;
	}

	& .layout_footer {
		flex-shrink: 0;
	}
}

header {
	position: sticky;
	top: 0;
	z-index: 100000;
}

footer {
	width: 100%;
}

.banner_billboard {
	display: block;
	width: 100%;
	height: auto;

	& img {
		width: 100%;
		height: auto;
	}
}

.header_navbar {
	width: 100%;
	height: var(--header-height);
	background: var(--color_bg_main);
	border-block-end: 1px solid var(--color_separator_main);
	display: grid;
	grid-template-columns: auto min-content min-content 1fr;
	align-items: center;
	gap: 0.2rem;
	margin: 0;

	@media screen and (width > 800px) {
		gap: 1rem;
	}
}

.header_logo--wrapper {
	width: 100%;
	height: 100%;
	padding: var(--header-h-padding) var(--header-w-padding) var(--header-h-padding) 0;

	@media (hover: hover) {
		&:hover {
			background: var(--color_brand_main) !important;
			-webkit-transition: all 0.2s ease-out;
			-moz-transition: all 0.2s ease-out;
			-o-transition: all 0.2s ease-out;
			transition: all 0.2s ease-out;

			& .plnlogo--el {
				fill: var(--color_const_light) !important;
			}
		}
	}

	&:active,
	&:focus,
	&:focus-within,
	&:focus-visible {
		background: var(--color_brand_main) !important;
		-webkit-transition: all 0.2s ease-out;
		-moz-transition: all 0.2s ease-out;
		-o-transition: all 0.2s ease-out;
		transition: all 0.2s ease-out;

		& .plnlogo--el {
			fill: var(--color_const_light) !important;
		}
	}
}

.plnlogo--el {
	fill: var(--color_brand_main) !important;
}

.header_logo {
	width: calc((var(--header-height) - (var(--header-h-padding) * 2)) * 4.184);
}

.header_logo--wrapper {
	&:focus,
	&:focus-visible,
	&:target,
	&:active {
		& .plnlogo--el {
			fill: var(--color_const_light) !important;
		}
	}

	@media (hover: hover) {
		&:hover {
			& .plnlogo--el {
				fill: var(--color_const_light) !important;
			}
		}
	}
}

.header_doodle {
	width: calc(var(--header-height) * 1.7);
	height: 100%;
	position: relative;
	aspect-ratio: 200 / 115;
	overflow: hidden;

	& img {
		object-fit: contain;
		width: 100%;
		height: 100%;
		position: absolute;
		bottom: 0;
		transition: all 0.2s ease-in-out;
	}

	& .doodle_back {
		transform-origin: bottom;
	}

	@media (hover: hover) {
		&:hover > .doodle_front {
			transform: scale(1.1);
		}

		&:hover > .doodle_back {
			transform: scale(0.85);
		}
	}
}

.header_doodle--wrapper {
	& *:focus,
	& *:focus-visible,
	& *:target {
		& .doodle_front {
			transform: scale(1.1);
		}

		& .doodle_back {
			transform: scale(0.85);
		}
	}
}

@media screen and (width <= 440px) {
	.header_doodle--second {
		display: none !important;
	}
}

.header_navigation--wrapper {
	/* display: grid;
	grid-template-columns: 1fr min-content; */
	display: flex;
	gap: 2rem;
	align-items: center;
	height: 100%;
}

.header__text {
	position: relative;
	font-weight: 400;
	letter-spacing: 0.08rem;
	color: var(--color_text_softblack);
	text-transform: uppercase;
}

.nav-menubox {
	display: flex;
	flex-direction: row;
	gap: 2rem;
	height: 100%;
}

.nav-partners {
	display: flex;
	align-items: center;
	gap: var(--padding_main);

	@media screen and (width >=1024px) {
		border-inline-start: 1px solid var(--color_separator_main);
		padding-inline-start: var(--padding_main);
	}

	& * :focus,
	& * :active {
		& svg {
			transform: scale(1.15);
		}

		& svg.header_partner-logo {
			filter: url(#saturate);
		}
	}
}

.plnfmlogo--wrapper {
	width: calc((var(--header-height) - (var(--header-h-padding) * 2)) * 2.4);
	padding-block-end: 0.3rem;
}

.plntvlogo--wrapper {
	width: calc((var(--header-height) - (var(--header-h-padding) * 2)) * 2.8);
}

.cdilogo--wrapper {
	width: calc((var(--header-height) - (var(--header-h-padding) * 2)) * 2.746);
	padding-block-end: 0.2rem;
}

svg.header_partner-logo {
	filter: url(#desaturate);
}

svg.header_partner-logo {
	@media (hover: hover) {
		&:hover {
			filter: url(#saturate);
		}
	}

	&:focus-visible,
	&:target,
	&:active {
		filter: url(#saturate);
	}
}

.nav-items {
	display: grid;
	align-items: center;
}

.nav-items_links {
	margin-left: 0;
	padding-left: 0;
	list-style-type: none;
	display: flex;
	gap: 1rem;
	height: 100%;
	align-items: stretch;

	@media screen and (width >=1024px) {
		border-inline-start: 1px solid var(--color_separator_main);
		padding-inline-start: var(--padding_main);
	}
}

.nav-items_links li.menublock {
	@media screen and (width >=1024px) {
		display: grid;
		align-items: center;

		@media (hover: hover) {
			&:hover {
				text-decoration: underline;
				text-underline-offset: 0.8rem;
				text-decoration-thickness: 0.4rem;
				text-decoration-color: var(--color_brand_main);
			}
		}

		&:has(> a:focus),
		&:has(> a:focus-visible),
		&:has(> a:active) {
			text-decoration: underline;
			text-underline-offset: 0.8rem;
			text-decoration-thickness: 0.4rem;
			text-decoration-color: var(--color_brand_main);
		}
	}
}

.nav-items_links li a {
	text-decoration: none;
	text-transform: uppercase;
	font-weight: 400;
	letter-spacing: 0.08rem;
	color: var(--color_text_softblack);
	position: relative;
}

.nav-items_links ul li a {
	&::before {
		content: "";
		position: absolute;
		inset: -1rem;
	}

	&::after {
		content: "→";
		padding-inline: 0.2rem;
		opacity: 0;
		transition: all 0.3s ease-out;
	}

	@media (hover: hover) {
		&:hover {
			color: var(--color_brand_main);
			font-weight: var(--font_weight_extrabold);

			&::after {
				opacity: 1;
			}
		}
	}

	&:focus,
	&:focus-visible,
	&:active {
		color: var(--color_brand_main);
		font-weight: var(--font_weight_extrabold);
	}
}

.nav-items_links ul {
	position: absolute;
	list-style-type: square;
	background: var(--color_bg_main);
	box-shadow: var(--shadow_sm);
	padding: 1.3rem 1rem 1rem 1.1rem;
	top: 2rem;
	z-index: -1;
	opacity: 0;
	visibility: hidden;
}

.nav-items_links li:hover ul {
	opacity: 1;
	visibility: visible;
}

.nav-items_links ul li a {
	/* display: block; */
	width: 100%;
	line-height: 1rem;
}

.nav-items_links ul li::marker {
	font-size: 2rem;
}

@media screen and (width <=1024px) {
	.nav-menubox {
		overscroll-behavior: contain;
		flex-direction: column;
		position: absolute;
		background: var(--color_bg_main);
		width: 100%;
		height: calc(100dvh - var(--header-height));
		top: var(--header-height);
		left: -100%;
		padding: 1rem;
		padding-block-end: 17vh;
		overflow-y: auto;
		transition: all 0.2s ease-in-out;
	}

	.nav-menubox.menu--active {
		left: 0 !important;
	}

	.nav-partners {
		padding-bottom: 1.5rem;
		border-bottom: 1px solid var(--color_text_soft);
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(4rem, 1fr));
		gap: 1.2rem;
		align-items: center;
	}

	.nav-items_links {
		font-size: 1.2rem;
		flex-direction: column;
	}

	.plnfmlogo--wrapper,
	.plntvlogo--wrapper,
	.cdilogo--wrapper {
		margin: 0 auto;
		max-width: 8rem;
	}

	.nav-items_links ul {
		position: static;
		opacity: 1;
		visibility: visible;
		background: none;
		box-shadow: none;
		border-bottom: none;
		top: 0;
		padding: 1rem 1rem 1rem 2rem;
	}

	.nav-items_links li.menublock:hover,
	.nav-items_links li.menublock:focus,
	.nav-items_links li.menublock:active,
	.nav-items_links li.menublock:target {
		text-decoration: none;
	}

	.nav-items_links ul li a {
		font-size: 1.1rem;
	}
}

.nav-search {
	position: absolute;
	z-index: +1;
	background: var(--color_bg_main);
	border-block-end: 1px solid var(--color_separator_main);
	height: var(--header-height);
	top: 0;
	right: -100%;
	padding-inline: 0.4rem;
	display: grid;
	place-items: center;
	visibility: hidden;
	transition: all 0.2s ease-in-out;

	& .search--active {
		right: 5.5rem;
		visibility: visible;
	}

	& .nav-search--wrapper {
		width: 100%;

		& .nav-search--form {
			width: 100%;
			padding-inline-start: var(--padding_soft);
			display: grid;
			grid-template-columns: 1fr min-content;
			gap: var(--padding_soft);

			& input {
				max-width: 39vw;
				border-radius: 0;
				border: 1px solid var(--color_separator_main);
				padding: 0.3rem;
			}

			& button {
				background: var(--color_brand_main) !important;
			}
		}
	}
}

.button_icon {
	width: calc(var(--header-height) - (var(--header-h-padding) * 2.6));
	cursor: pointer;

	&:target * .button_svg,
	&:focus * .button_svg,
	&:focus-visible * .button_svg,
	&:active * .button_svg {
		stroke: var(--color_brand_main) !important;
	}

	& .button_svg {
		fill: none;
		stroke: var(--color_text_soft);
		stroke-width: var(--icon_big--stroke);
		stroke-linecap: round;
		stroke-linejoin: round;
		stroke-miterlimit: var(--icon_big--stroke);

		@media (hover: hover) {
			&:hover {
				stroke: var(--color_brand_main) !important;
			}
		}
	}
}

.buttonplace-menu,
.buttonplace-search,
.buttonplace-themetoggle {
	position: relative;
}

.button_menu,
.button_search,
.button_themetoggle {
	position: absolute;
	top: 0;
	right: 0;
}

.nav-service {
	width: auto;
	height: calc((var(--header-height) - (var(--header-h-padding) * 2.4)));
	display: grid;
	grid-template-areas: "servicearea-menu servicearea-search servicearea-themetoggle";
	gap: 2.5rem;
	align-items: stretch;
	justify-content: end;
	position: absolute;
	right: var(--header-h-padding);
}

.buttonplace-menu {
	grid-area: servicearea-menu;
}

@media screen and (width >=1024px) {
	.buttonplace-menu {
		opacity: 0;
		visibility: hidden;
	}
}

.buttonplace-search {
	grid-area: servicearea-search;
}

.buttonplace-login {
	grid-area: servicearea-themetoggle;
}

.footer--wrapper {
	color: var(--color_const_light) !important;
	background: var(--color_const_dark);
	padding: var(--padding_main);
}

.general_nav {
	border-bottom: 1px solid var(--color_separator_main);
	color: var(--color_text_main);
	font-family: var(--f_sans);
	font-size: var(--text_size_big);
	font-weight: var(--font_weight_bold);
	padding-block-start: var(--padding_ultrasoft);
	padding-inline: var(--padding_main);
	display: flex;
	justify-content: flex-start;
	flex-wrap: nowrap;
	white-space: nowrap;
	gap: var(--padding_main);
	position: relative;
	overflow: hidden;
	overflow-x: scroll;
	-webkit-overflow-scrolling: touch;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
	scroll-padding-inline: var(--padding_main);
	scrollbar-width: none;

	@media screen and (width > 900px) {
		justify-content: center;
	}

	&::-webkit-scrollbar {
		display: none;
	}

	&:last-child {
		scroll-snap-align: end;
	}

	& > * {
		position: relative;
		transition: all 100ms ease-in;
		display: inline-block;
		scroll-snap-align: start;

		&.nav_link--active {
			padding-block-end: var(--padding_ultrasoft);
			border-block-end: 0.4rem solid var(--color_text_main);
		}

		@media screen and (hover: hover) {
			&:has(~ :hover),
			:hover ~ * {
				&.nav_link--active {
					border-block-end: 0.4rem solid var(--color_bg_extrahard);
				}
			}

			&:hover {
				text-decoration: none;
				color: var(--color_brand_main);
				padding-block-end: var(--padding_ultrasoft);
				border-block-end: 0.4rem solid var(--color_brand_main);
			}
		}

		&:target,
		&:active,
		&:focus-visible {
			text-decoration: none;
			color: var(--color_brand_main);
			padding-block-end: var(--padding_ultrasoft);
			border-block-end: 0.4rem solid var(--color_brand_main);
		}
	}

	& a {
		all: unset;
		cursor: pointer;

		&::after {
			position: absolute;
			inset: -0.6rem;
			content: "";
		}
	}
}

.frontpage_general {
	position: relative;
	margin-block-start: var(--padding_main);
	margin-inline: var(--padding_main);
	display: grid;
	gap: var(--padding_main);
	grid-template-columns: 1fr;
	grid-template-rows: auto;
	grid-template-areas: "topnews" "banner" "headlines" "aside" "plnfm";
	container-type: inline-size;

	@media screen and (width > 900px) {
		grid-template-columns: 1fr 400px;
		grid-template-rows: auto;
		grid-template-areas: "topnews headlines" "banner headlines" "plnfm headlines" "aside aside";
	}

	@media screen and (width > 1300px) {
		grid-template-columns: 1fr 400px 300px;
		grid-template-rows: auto;
		grid-template-areas: "topnews headlines aside" "banner headlines aside" "plnfm headlines aside";
	}

	& .general_headlines--wrapper {
		grid-area: headlines;
		align-self: stretch;
    max-height: 100%; 
		overflow-y: auto;
		padding-inline-start: var(--padding_main);
		padding-inline-end: var(--padding_main);
		border-block-end: 1px solid var(--color_separator_main);
		scrollbar-width: 0.4rem;

		&::-webkit-scrollbar {
			width: 0.4rem;
		}

		@media screen and (width < 900px) {
			overflow: unset;
			padding-inline: 0;
			margin-inline-end: 0;
		}

		@media screen and (width >= 900px) {
			grid-row: 1 / -2;
			max-height: 140vh;
			max-height: 140dvh;
		}

		@media screen and (width >=1000px) {
			max-height: 160vh;
			max-height: 160dvh;
		}

		@media screen and (width >=1135px) {
			max-height: 112vh;
			max-height: 112dvh;
		}

		@media screen and (width >=1300px) {
			grid-row: 1 / -1;
			max-height: 160vh;
			max-height: 160dvh;
		}

		@media screen and (width >=1454px) {
			max-height: 120vh;
			max-height: 120dvh;
		}

		@media screen and (width >=1550px) {
			max-height: 127vh;
			max-height: 127dvh;
		}

		@supports (container-type: inline-size) {
			@media screen and (width >= 900px) {
				container-type: size;
				max-height: 210cqh;
			}
		}
	}

	& .general_headlines_button--wrapper {
		display: grid;
		place-items: center;
		padding-block-end: var(--padding_main);
	}

	& .frontpage_general_aside {
		grid-area: aside;
		background-color: var(--color_bg_main)!important;
	}
}

.frontpage_general_banner {
	grid-area: banner;
	aspect-ratio: 930 / 140;
	& img {
		width: 100%;
		height: auto;
		aspect-ratio: 930 / 140;
	}
}

.topnews--wrapper {
	position: relative;
	background: var(--color_const_dark);
	grid-area: topnews;

	& .button_arrow {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		z-index: +1;
		touch-action: manipulation;
  	-webkit-tap-highlight-color: transparent;
  	user-select: none;
  	-webkit-user-select: none;

		&.button--left {
			inset-inline-start: -1.2rem;
		}

		&.button--right {
			inset-inline-end: -1.2rem;
		}
	}

	& .rubric_bar {
		position: absolute;
		top: 0;
		left: 0;
		z-index: +1;
	}
}

.topnews_card--wrapper {
	container-name: topnews_card--wrapper;
	container-type: inline-size;
	width: 100%;
	height: 100%;
	display: flex;
	overflow-x: auto;
	overflow-y: hidden;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
	scroll-behavior: smooth;
	-webkit-overflow-scrolling: touch;
	/* transition: scroll 0.1s ease; */
	scrollbar-width: none;
	&::-webkit-scrollbar {
		display: none;
	}
}

.topnews_card {
	position: relative;
	flex: 0 0 auto;
	width: 100%;
	height: 100%;
	scroll-snap-align: start;
	scroll-snap-stop: always;
	color: var(--color_const_light);
	overflow: hidden;
	/* transition: all .1s ease-in-out; */
	aspect-ratio: 1/1;

	@container topnews_card--wrapper (width > 410px) {
		aspect-ratio: 4/3;
	}

	@container topnews_card--wrapper (width > 500px) {
		aspect-ratio: 3/2;
	}

	@container topnews_card--wrapper (width > 600px) {
		aspect-ratio: 16/8;
	}

	@container topnews_card--wrapper (width > 700px) {
		aspect-ratio: 16/9;
	}

	& a {
		width: 100%;
		height: 100%;
		all: unset;
		cursor: pointer;

		&:focus,
		&:focus-visible,
		&:active {
			& .topnews_titlegroup {
				text-decoration: underline;
				text-decoration-color: var(--color_brand_main);
				text-underline-offset: 0.2rem;
			}

			& .topnews_card--image {
				transform: scale(1.02);
			}
		}
	}

	@media (hover: hover) {
		&:hover .topnews_card--image {
			transform: scale(1.02);
		}
	}

	& .topnews_card--image {
		width: 100%;
		aspect-ratio: 16 / 9;
		object-fit: cover;
		object-position: center center;
		mask-image: var(--card-gradient--mask-fromtransperent);
		-webkit-mask-image: var(--card-gradient--mask-fromtransperent);
		transition: all 0.2s ease-in-out;
	}

	& .topnews_card--caption {
		position: absolute;
		inset-block-end: var(--padding_main);
		inset-inline: var(--padding_main);
		text-shadow: var(--card-text-shadow);

		& .topnews_titlegroup {
			text-wrap: pretty;

			& .topnews_title,
			.topnews_subtitle {
				padding-block-end: var(--padding_ultrasoft);
			}

			& .topnews_title {
				font-size: var(--text_size_extrabig);
				line-height: 1.1;
			}

			& .topnews_title--article {
				font-size: var(--text_size_extrabig);
				line-height: 1.1;
			}

			& .topnews_subtitle {
				font-size: var(--text_size_main);
				font-family: var(--f_serif);
				font-weight: var(--font_weight_light);
				font-style: italic;
				line-height: 1;
				opacity: 0.9;

				@container topnews_card--wrapper (width <=500px) {
					font-size: var(--text_size_secondary);
				}
			}
		}

		& .topnews_indicators {
			display: grid;
			grid-template-columns: 1fr min-content;

			& .topnews_comments--wrapper {
				z-index: +1;
				color: var(--color_brand_extrasoft);
				filter: saturate(0.4);
				position: relative;
			}
		}

		& time {
			font-size: var(--text_small);
		}

		& time .datetime_time {
			font-weight: 700;
			padding-inline-end: var(--padding_extrasoft);
			color: var(--color_brand_extrasoft);
			filter: saturate(0.4);
		}

		& time .datetime_date {
			font-weight: 300;
			padding-inline-end: var(--padding_extrasoft);
			color: var(--color_bg_extrasoft);
			opacity: 0.6;
		}
	}
}

.general_plnfm--wrapper {
	height: min-content;
	position: relative;
	background: var(--color_bg_extrahard);
	padding-block-start: var(--padding_ultrasoft);
	grid-area: plnfm;
	container-name: general_plnfm--wrapper;
	container-type: inline-size;

	&::before {
		position: absolute;
		inset: 0;
		opacity: 0.2;
		content: "";
		background: url(./src/img/backgounds/pln_squre_bg_greyscale_contrast.webp);
		background-size: cover;
		z-index: -1;
	}

	& .plnfm--topblock {
		width: 100%;
		overflow: hidden;
		position: relative;

		& .soundwawe--wrapper {
			display: none;

			@container general_plnfm--wrapper (width > 660px) {
				width: 100%;
				display: grid;
				align-items: center;
			}

			& .soundwawe {
				opacity: 0.5;
				position: relative;
				inset-inline-end: -1.2rem;
				margin-block-start: 1rem;
			}
		}
	}

	& .plnmf--bottomblock {
		display: grid;
		gap: var(--padding_main);
		grid-template-columns: 1fr;

		@container general_plnfm--wrapper (width > 660px) {
			grid-template-columns: 1fr 1fr;
		}
	}
}

.general_plnfm--logowrapper {
	padding-inline: var(--padding_main);
	margin-block-end: var(--padding_main);
	display: grid;
	grid-template-columns: min-content min-content 1fr;
	gap: var(--padding_soft);

	@container general_plnfm--wrapper (width < 460px) {
		grid-template-columns: 1fr;
	}

	& .general_plnfm--logo {
		width: 180px;
		margin-inline: auto;
		margin-block-end: var(--padding_ultrasoft);
	}

	& .general_plnfm--buttons--wrapper {
		display: grid;
		place-items: center;
		margin-block-start: 1rem;

		& .general_plnfm--buttons {
			display: flex;
			flex-direction: row;
			align-items: center;
			gap: 1.4rem;
		}
	}
}

.general_plnfm--nearest {
	@container general_plnfm--wrapper (width > 660px) {
		border-inline-end: 1px solid var(--color_separator_main);
	}
	& > .rubric_bar {
		display: inline-block;
	}

	& .plnfm_nearest--wrapper {
		padding-inline: var(--padding_main);

		&.plnfr_nearest--anounce .post_headline {
			&:first-child {
				margin-block-start: 0;
			}
		}
	}

	& .rubric_bar {
		margin-block-end: var(--padding_main);
	}

	& img {
		width: 100%;
		aspect-ratio: 16 / 9;
		background: var(--color_bg_extrahard);
	}
}

.plnfm_anounce--wrapper {
	position: relative;
	overflow: hidden;
	margin-block-end: var(--padding_main);

	& .plnfm_anounce--buttons {
		position: absolute;
		inset-block-start: 0;
		inset-inline-end: var(--padding_main);
		display: flex;
		gap: var(--padding_ultrasoft);
		z-index: +1;
	}

	& .plnfm_anounce--carousel {
		position: relative;
	}

	& .plnfm_anounce {
		margin-block-start: var(--padding_main);
		padding-inline: var(--padding_main);
		display: flex;
		gap: var(--padding_main);
		flex-wrap: nowrap;
		overflow-x: auto;
		overflow-y: hidden;
		overscroll-behavior-x: contain;
		scroll-snap-type: x mandatory;
		scroll-snap-stop: always;
		scroll-snap-align: start;
		scroll-behavior: smooth;
		scroll-padding-inline: var(--padding_main);
		scrollbar-width: none;

		@container general_plnfm--wrapper (width > 660px) {
			scroll-padding-inline: 0;
		}

		&::-webkit-scrollbar {
			display: none;
		}

		& > * {
			width: min(91%, 280px);
			flex: 0 0 auto;
			scroll-snap-align: start;
			scroll-behavior: smooth;
			padding-inline-end: var(--padding_main);

			&:not(:last-child) {
				border-inline-end: 1px solid var(--color_separator_main);
			}
		}

		& .broadcast_cover {
			aspect-ratio: 16 / 9;
			background: var(--color_bg_extrahard);

			& img {
				object-fit: cover;
			}
		}

		& .post_titlegroup {
			padding-block-start: var(--padding_extrasoft);
			margin-block-end: -0.5rem;
		}

		& .post_headline {
			margin-block-end: 0;
		}
	}
}

.plnfm_anounce--item a {
	@media (hover: hover) {
		&:hover {
			& .broadcast_cover {
				overflow: hidden;

				& img {
					transform: scale(1.05);
					transition: all 0.2s ease-in-out;
				}
			}
		}
	}
}

.headline_list {
	& > *:not(:last-child) {
		border-block-end: 1px solid var(--color_separator_main);
	}
}

.headline_list .search__results__news_link * {
	text-decoration: none !important;
}
.headline_list .search__results__news_link a {
	all: unset;
	cursor: pointer;
	display: flex;
	flex-direction: column;
}
.search__results__news_link__title {
	font-family: var(--f_sans);
	padding-bottom: var(--padding_main);
	font-size: var(--text_size_extrabig);
	letter-spacing: -0.01em;
	line-height: 1.03;
	font-weight: 800;
	white-space: normal;
	text-wrap: balance;
}
.search__results__person__title {
	font-family: var(--f_serif);
	font-size: var(--text_size_big);
	font-style: italic;
	padding-bottom: var(--padding_main);
	opacity: 0.75;
}

.general_aside--wrapper {
	margin-inline: auto;
	@media screen and (width <= 658px) {
		flex-direction: column;
	}
	@media screen and (width <= 1300px) {
		display: flex;
		column-gap: var(--padding_main);
		flex-wrap: wrap;
		gap: var(--padding_main);
		justify-content: center;
	}
	@media screen and (width > 1300px) {
		position: sticky;
		top: calc(var(--header-height) + var(--padding_main));
		left: 0;
		align-self: start;
		display: grid;
		gap: var(--padding_main);
		grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
		grid-template-rows: auto;
	}
	& *:last-child {
		margin-block-start: 0;
		padding-block-start: 0;

		@media screen and (width < 995px) {
			grid-column: 1 / -1;
		}
	}
}

.banner--wrapper {
	display: flex;
	flex-wrap: wrap;
	column-gap: (--padding_main);
	gap: var(--padding_main);
	align-items: center;
	justify-content: center;
	@media screen and (width <= 658px) {
		flex-direction: column;
	}
	& .banner {
		flex: 0 0 auto;
		background: var(--color_bg_ultrahard);
		display: block;
		width: fit-content;
		height: auto;
		&:empty {
			display: block;
		}
		&.banner_300-250 {
			aspect-ratio: 30/25;
		}
		& > img {
			width: 100% !important;
			height: auto !important;
		}
	}
}

.infobanners--wrapper {
	position: relative;

	& .button_arrow {
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		z-index: +1;

		&.button--left {
			inset-inline-start: 0;
		}

		&.button--right {
			inset-inline-end: 0;
		}
	}

	& .infobanners {
		display: flex;
		gap: var(--padding_main);
		padding-block: var(--padding_main);
		padding-inline: var(--padding_main);
		overflow-x: auto;
		overflow-y: hidden;
		overscroll-behavior-x: contain;
		scroll-snap-type: x mandatory;
		scroll-behavior: smooth;
		transition: scroll 0.5s ease;
		scroll-padding-inline: var(--padding_main);
		scrollbar-width: none;

		&::-webkit-scrollbar {
			display: none;
		}

		& .infobanner {
			min-width: 240px;
			aspect-ratio: 16 / 9;
			position: relative;
			background: var(--color_const_dark);
			scroll-snap-align: start;
			scroll-behavior: smooth;

			&:hover {
				box-shadow: 0 4px 5px var(--color_bg_extrahard);
			}

			& .infobanner_image {
				width: 100%;
				height: 100%;
				object-fit: cover;
				object-position: center center;
				position: absolute;
				mask-image: var(--infobanner-gradient--mask);
				-webkit-mask-image: var(--infobanner-gradient--mask);
			}

			& .infobanner_title {
				position: absolute;
				bottom: var(--padding_extrasoft);
				padding-inline: var(--padding_extrasoft);
				font-size: var(--text_size_info);
				font-weight: var(--font_weight_extrabold);
				line-height: 1rem;
				text-wrap: balance;
				overflow-wrap: break-word;
				color: var(--color_const_light);
				text-shadow: var(--card-text-shadow);
				/* Ãâ€”ÃÂ°Ã‘â€°ÃÂ¸Ã‘â€šÃÂ° ÃÂ¾Ã‘â€š Ã‘ÂÃÂ»Ã‘Æ’Ã‘â€¡ÃÂ°ÃÂ¹ÃÂ½ÃÂ¾ÃÂ³ÃÂ¾ ÃÂ¿ÃÂµÃ‘â‚¬ÃÂµÃÂ¿ÃÂ¾ÃÂ»ÃÂ½ÃÂµÃÂ½ÃÂ¸Ã‘Â: ÃÂ½ÃÂµ ÃÂ´ÃÂ°Ã‘ÂÃ‘â€š ÃÂ²Ã‘ÂÃ‘â€šÃÂ°ÃÂ²ÃÂ¸Ã‘â€šÃ‘Å’ ÃÂ±ÃÂ¾ÃÂ»Ã‘Å’Ã‘Ë†ÃÂµ 3 Ã‘ÂÃ‘â€šÃ‘â‚¬ÃÂ¾ÃÂº Ã‘â€šÃÂµÃÂºÃ‘ÂÃ‘â€šÃÂ° */
				display: -webkit-box;
				-webkit-line-clamp: 3;
				-webkit-box-orient: vertical;
				overflow: hidden;
			}
		}
	}
}

.frontpage_resonance--wrapper {
	padding-inline: var(--padding_main);
	margin-block-end: var(--padding_main);
}

.frontpage_resonance {
	display: grid;
	gap: var(--padding_main);
	grid-template-columns: 1fr;
	grid-template-rows: auto;
	grid-template-areas: "resonance_reactions" "resonance_voting";

	@media screen and (width >=670px) {
		grid-template-columns: 1fr 1fr;
		grid-template-rows: repeat(2, min-content);
		grid-template-areas: "resonance_reactions resonance_reactions" "resonance_voting resonance_telegram";
	}

	@media screen and (width >=1048px) {
		grid-template-columns: 1fr 1fr 1ft;
		grid-template-rows: 1fr;
		grid-template-areas: "resonance_reactions resonance_voting resonance_telegram";
	}

	@media screen and (width >=1350px) {
		grid-template-columns: 3fr 3fr 2fr;
		grid-template-rows: 1fr;
		grid-template-areas: "resonance_reactions resonance_voting resonance_telegram";
	}

	& .resonance_reactions {
		grid-area: resonance_reactions;
	}

	& .resonance_voting {
		grid-area: resonance_voting;
	}

	& .resonance_telegram {
		grid-area: resonance_telegram;
		display: grid;
		grid-template-columns: 1fr;
		grid-template-rows: min-content 1fr;
		gap: var(--padding_soft);

		& h3 {
			text-align: center;
			color: var(--color_brand_main);
		}

		@media screen and (width <=760px) {
			display: none;
		}
	}

	& > * {
		width: 100%;
		height: 100%;
		min-height: 70dvh;
	}

	& .tabs--wrapper {
		& .container--tabs {
			list-style: none;
			display: flex;
			flex-direction: row;
			justify-content: flex-start;
			gap: 0.5rem;
			align-items: stretch;
			color: var(--color_text_ultrasoft);

			& .tab {
				cursor: pointer;
				position: relative;
				display: inline-block;
				padding-inline: calc(var(--padding_ultrasoft) / 1.5);
				padding-block: calc(var(--padding_ultrasoft) / 2.5);
				background: var(--color_bg_extrahard);
				text-transform: uppercase;
				letter-spacing: 0.15rem;
				font-weight: var(--font_weight_bold);

				@media (hover: hover) {
					&:hover {
						background: var(--color_bg_ultrahard);
					}
				}

				&:focus,
				&:focus-visible {
					outline: 2px dotted var(--color_brand_soft);
					outline-offset: 0.3rem;
				}
			}

			& .tab--active {
				background: var(--color_brand_main);
				color: var(--color_const_light);
				pointer-events: none;
			}
		}

		& .container--content {
			background: var(--color_bg_hard);
			border-block-start: solid var(--color_brand_main);

			& .content {
				display: none;
				padding-inline: var(--padding_main);
				padding-block-end: var(--padding_main);
				background: var(--color_bg_hard);

				&.content--active {
					display: block;
				}

				& p {
					font-size: var(--text_size_secondary);
				}
			}
		}
	}

	& .mostview--wrapper {
		counter-reset: mostview 0;

		& > * {
			counter-increment: mostview 1;
			position: relative;

			&::before {
				content: counter(mostview);
				position: absolute;
				font-size: 5rem;
				font-weight: var(--font_weight_maximum);
				inset-block-start: -1.2rem;
				inset-inline-end: -1.2rem;
				opacity: 0.05;
			}
		}

		& > *:not(:last-child) {
			border-block-end: 1px solid var(--color_separator_main);
		}
	}

	& .mostcomments--wrapper {
		& .post_headline--wrapper > a {
			position: relative;
			display: block;

			& .comments_shadow {
				pointer-events: none;
				position: absolute;
				font-size: 5rem;
				font-weight: var(--font_weight_maximum);
				inset-block-start: -1.2rem;
				inset-inline-end: -1.2rem;
				opacity: 0.05;
			}
		}

		& > *:not(:last-child) {
			border-block-end: 1px solid var(--color_separator_main);
		}
	}
}

.resonance_voting--wrapper {
	background: var(--color_bg_hard);

	& .previouspoll {
		padding-block: var(--padding_main);

		& .previouspoll_item {
			&:not(:last-child) {
				padding-block-end: var(--padding_main);
			}

			& .previouspoll_item--link {
				all: unset;
				cursor: pointer;

				@media (hover: hover) {
					&:hover {
						& .previouspoll_item--title {
							text-decoration: underline;
							text-decoration-color: var(--color_brand_main);
							text-underline-offset: 0.2rem;

							&:after {
								opacity: 1;
								inset-inline-end: -1.2ch;
								transition: all 0.3s ease-out;
							}
						}
					}

					&:focus,
					&:focus-visible {
						& .previouspoll_item--title {
							text-decoration: underline;
							text-decoration-color: var(--color_brand_main);
							text-underline-offset: 0.2rem;

							&:after {
								opacity: 1;
								inset-inline-end: -1.2ch;
								transition: all 0.3s ease-out;
							}
						}
					}
				}
			}

			& .previouspoll_item--title {
				font-size: var(--text_size_big);
				font-weight: var(--font_weight_ultrabold);
				line-height: 1.1;
				text-wrap: balance;
				margin-block-end: var(--padding_ultrasoft);
				position: relative;
				transition: opacity 0.2s ease-in-out, transition 0.2s ease-in-out;

				&:after {
					position: absolute;
					opacity: 0;
					content: "→";
					color: var(--color_brand_main);
					font-size: var(--text_size_extrabig);
					font-weight: var(--font_weight_bold);
					inset-block-start: 0.3rem;
					inset-inline-end: 3rem;
				}
			}
		}
	}
}

.resonance_votingform {
	padding-block: var(--padding_main);
	margin-block-end: var(--padding_extrasoft);

	& .votingform_item {
		padding-block-end: var(--padding_extrasoft);

		& .votingform_item--inputlabel {
			display: grid;
			grid-template-columns: 0.7rem 1fr;

			& input {
				width: 1rem;
				height: 1rem;
				position: relative;
				inset-block-start: 0.2rem;
			}

			& label {
				padding-inline-start: 1rem;
				font-size: var(--text_size_third);
				font-weight: var(--font_weight_bold);
			}
		}

		& .votingform_item--meteroutput {
			margin-inline-start: 1.75rem;
			position: relative;

			& meter {
				width: 100%;
				height: 1rem;
				background: var(--color_bg_soft);
				border: none;
				border-radius: 0;
				margin-block-start: var(--padding_ultrasoft);

				&::-webkit-meter-bar {
					height: 1rem;
					background: var(--color_bg_soft);
					border: 0;
					border-radius: 0;
				}

				&::-webkit-meter-optimum-value {
					background: var(--color_brand_main);
				}

				&::-moz-meter-bar {
					background: var(--color_brand_main);
				}
			}

			& output {
				position: absolute;
				inset-inline-end: -0.5rem;
				inset-block-end: -0.25rem;
				font-size: var(--text_size_extrabig);
				line-height: 1;
				font-weight: var(--font_weight_ultrabold);
				opacity: 0.2;
			}
		}

		&:nth-child(3) {
			& meter {
				&::-webkit-meter-optimum-value {
					background: blueviolet;
				}

				&::-moz-meter-bar {
					background: blueviolet;
				}
			}
		}

		&:nth-child(4) {
			& meter {
				&::-webkit-meter-optimum-value {
					background: green;
				}

				&::-moz-meter-bar {
					background: green;
				}
			}
		}

		&:nth-child(5) {
			& meter {
				&::-webkit-meter-optimum-value {
					background: orange;
				}

				&::-moz-meter-bar {
					background: orange;
				}
			}
		}

		&:nth-child(6) {
			& meter {
				&::-webkit-meter-optimum-value {
					background: darkcyan;
				}

				&::-moz-meter-bar {
					background: darkcyan;
				}
			}
		}

		&:nth-child(7) {
			& meter {
				&::-webkit-meter-optimum-value {
					background: rgb(85, 40, 136);
				}

				&::-moz-meter-bar {
					background: rgb(85, 40, 136);
				}
			}
		}

		&:nth-child(8) {
			& meter {
				&::-webkit-meter-optimum-value {
					background: rgb(142, 207, 12);
				}

				&::-moz-meter-bar {
					background: rgb(142, 207, 12);
				}
			}
		}
	}

	& .votingform--submit--wrapper {
		margin-block-start: var(--padding_extrasoft);
		display: flex;
		gap: var(--padding_soft);
		align-items: center;
		justify-content: center;
	}
}

& .resonance_votingform--title {
	font-size: var(--text_size_extrabig);
	line-height: 1.1;
	font-weight: var(--font_weight_ultrabold);
	padding-block-end: var(--padding_soft);
}

.totalvotes {
	font-size: var(--text_size_info);

	& .totalvotes--number {
		font-weight: var(--font_weight_ultrabold);
	}
}

.adline_3x1 {
	width: 100%;
	display: grid;
	place-items: center;
	margin-block: var(--padding_main);
	margin-inline: 0 !important;
	padding-block: var(--padding_main);
	background: var(--color_bg_hard);
	border-block: solid 1px var(--color_bg_ultrahard);

	@media screen and (width > 600px) {
		padding-inline: var(--padding_main);
	}

	& .adline_3x1--wrapper {
		width: 100%;
		display: grid;
		grid-template-columns: 1fr;
		gap: var(--padding_main);
		max-width: 1400px;

		@media screen and (width > 600px) {
			grid-template-columns: 1fr 1fr;
		}

		& > * {
		}
	}
}

.admark_wrapper {
	display: grid;
	place-items: center;
	padding-inline: var(--padding_main);
}

.banner_3x1 {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 3/1;
	background: var(--color_bg_hard);
}

.frontpage_rubrics_headlines {
	margin-block: var(--padding_main);

	& .rubrics_headlines--wrapper {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
		grid-template-rows: auto;
		gap: 1px;
		background: var(--color_separator_main);

		@media screen and (width < 1350px) {
			grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		}

		& .rubric_headlines {
			max-width: 100%;
			overflow: hidden;
			word-wrap: break-word; 
		}

		@media screen and (width < 900px) {
			display: flex;
			flex-wrap: nowrap;
			overflow-x: auto;
			overflow-y: hidden;
			overscroll-behavior-x: contain;
			scroll-snap-type: x mandatory;
			scroll-snap-stop: always;
			scroll-padding-inline: var(--padding_main);
			scrollbar-width: none;

			&::-webkit-scrollbar {
				display: none;
			}

			& > * {
				width: min(88%, 400px);
				flex: 0 0 auto;
				scroll-snap-align: start;
				scroll-behavior: smooth;

			}
		}

		& .rubric_headlines {
			background: var(--color_bg_main);
			padding-inline: var(--padding_main);
			padding-block-start: var(--padding_main);
		}
	}
}

.rubric_headlines {
	& .rubric_headlines--item {
		& .post_textblock {
			min-height: 6rem;
		}

		& .firstpost_cover--wrapper {
			width: 100%;
			aspect-ratio: 16 / 9;
			background: var(--color_bg_extrahard);
			margin-block-end: var(--padding_soft);
			overflow: hidden;

			& .firstpost_cover {
				width: 100%;
				height: 100%;
				object-fit: cover;
				object-position: center center;
				transition: all 0.2s ease-in-out;
			}
		}

		@media (hover: hover) {
			&:hover .firstpost_cover {
				transform: scale(1.04);
			}
		}
	}

	& .post_headline--wrapper {
		&:not(:last-child) {
			border-block-end: 1px solid var(--color_separator_main);
		}
	}
}

.frontpage_columnists {
	margin-block: var(--padding_main);
}

.columnists--wrapper {
	position: relative;

	& .columnists_list--inlinegradient {
		position: absolute;
		inset-block-start: 0;
		inset-inline-end: 0;
		width: 4rem;
		height: 100%;
		background: var(--color_bg_main);
		mask-image: var(--mask_gradient_toright);
	}

	& .columnists_list--buttons {
		visibility: hidden;
		position: absolute;
		inset-block-start: 50%;
		transform: translateY(-50%);
		inset-inline-end: 0;
		display: flex;
		flex-direction: column;
		gap: var(--padding_main);

		@media screen and (width > 640px) {
			visibility: visible;
		}

		@media screen and (width > 1600px) {
			visibility: hidden;
		}
	}

	& .columnists_list--wrapper {
		position: relative;
		border-block-end: 1px solid var(--color_separator_main);

		& .columnists_list--carousel {
			padding-inline: var(--padding_main);
			display: flex;
			gap: var(--padding_main);
			flex-wrap: nowrap;
			overflow-x: auto;
			overflow-y: hidden;
			overscroll-behavior-x: contain;
			scroll-snap-type: x mandatory;
			scroll-snap-stop: always;
			scroll-padding-inline: var(--padding_main);
			scrollbar-width: none;
			scroll-behavior: smooth;

			&::-webkit-scrollbar {
				display: none;
			}

			&:not(:last-child) {
				align-items: end;
			}

			& > * {
				width: min(40%, clamp(160px, 160px + 1vw, 11.5dvw));
				flex: 1 0 auto;
				scroll-snap-align: start;
				scroll-behavior: smooth;

				&:not(:last-child) {
					&:hover,
					&:focus {
						cursor: pointer;

						& .columnists_item--name {
							color: var(--color_brand_soft);
							text-decoration: underline;
						}

						& .columnists_item--photo {
							filter: saturate(1);
							opacity: 1;
							scale: 1.07;
						}
					}
				}
			}

			& .columnists_item {
				color: var(--color_text_main);

				& .columnists_item--name {
					font-size: var(--text_size_main);
					font-weight: var(--font_weight_bold);
					line-height: 1.1;
					inline-size: min-content;
					white-space: pre-line;
					overflow-wrap: break-word;
					padding-inline-end: 0.5rem;
					text-align: left;
				}

				& .columnists_item--photo {
					width: 100%;
					aspect-ratio: 1 / 1;
					object-fit: contain;
					object-position: bottom center;
					filter: saturate(0.1);
					opacity: 0.7;
					transition: all 0.2s ease-out;
				}

				&.author_selected {
					position: relative;

					&::after {
						content: "";
						position: absolute;
						width: calc(100% + (2 * (var(--padding_main))));
						height: 1rem;
						left: -1.2rem;
						bottom: 0;
						background: var(--color_brand_main);
					}

					& .columnists_item--photo {
						filter: saturate(1);
						opacity: 1;
					}
				}
			}

			& .columnists_list--morebutton {
				display: grid;
				place-items: center;
				align-self: center;
			}
		}
	}

	& .columnist_posts--wrapper {
		padding-inline: var(--padding_main);
		margin-block: var(--padding_main);

		& .columnist_posts {
			display: none;

			&.columnist_posts--active {
				display: grid;
				grid-template-columns: 1fr;
				gap: var(--padding_main);

				@media screen and (width > 960px) {
					grid-template-columns: 2fr 2fr 1fr;
				}
			}

			& .columnist_post--cover {
				position: relative;
				aspect-ratio: 16 / 9;
				background: var(--color_const_pureblack);
				overflow: hidden;
				transition: all 0.3s ease-in-out;
			}

			& .post_headline--wrapper {
				& a {
					@media (hover: hover) {
						&:hover {
							& .columnist_post--image {
								transform: scale(1.05);
								transition: all 0.2s ease-in-out;
							}

							& .post_headline > * {
								text-decoration: underline;
								text-decoration-color: var(--color_brand_main);
							}
						}
					}

					&:focus,
					&:target {
						& .columnist_post--image {
							transform: scale(1.05);
							transition: all 0.2s ease-in-out;
						}

						& .post_headline > * {
							text-decoration: underline;
							text-decoration-color: var(--color_brand_main);
						}
					}
				}
			}
		}

		& .columnist_posts--otherposts {
			display: grid;
			place-items: center;
			text-align: center;

			& .otherposts--text {
				font-size: var(--text_size_info);
			}

			& .otherposts--quantity {
				font-size: var(--text_size_extrabig);
				font-weight: var(--font_weight_ultrabold);
				margin-block-end: var(--padding_main);
			}
		}
	}
}

.frontpage_mediablocks.frontpage_block--title {
	padding-block-end: 0 !important;
}

.mediablocks--section {
	inset-inline: var(--padding_main);
	margin-block-end: var(--padding_main);

	& .mediablocks_filterbuttons--wrapper {
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		overflow-y: hidden;
		overscroll-behavior-x: contain;
		scroll-snap-type: x mandatory;
		scroll-snap-stop: always;
		scroll-padding-inline: var(--padding_main);
		scrollbar-width: none;

		&::-webkit-scrollbar {
			display: none;
		}

		@media screen and (width > 800px) {
			justify-content: center;
		}

		&:has(:only-child) {
			justify-content: center;
		}

		& > * {
			color: var(--color_text_soft);
			text-transform: uppercase;
			letter-spacing: 0.1rem;
			text-decoration: dotted underline;
			text-underline-offset: 0.5rem;
			padding: var(--padding_soft);
			position: relative;
			cursor: pointer;

			&.mediatype_button--selected {
				color: var(--color_brand_selected);
				border-bottom: 1px solid currentColor;
				font-weight: var(--font_weight_extrabold);
				text-decoration: none;
			}

			&:not(:last-child)::after {
				content: "/";
				position: absolute;
				inset-inline-end: -0.3rem;
				inset-block-start: var(--padding_soft);
				color: var(--color_text_main);
			}
		}
	}

	& .mediablocks--wrapper {
		padding-inline: var(--padding_main);
		display: grid;
		gap: var(--padding_main);
		grid-template-columns: repeat(2, 1fr);

		@media screen and (width >=1450px) {
			grid-template-columns: repeat(3, 1fr);
		}

		@media screen and (width < 900px) {
			display: flex;
			flex-wrap: nowrap;
			overflow-x: auto;
			overflow-y: hidden;
			overscroll-behavior-x: contain;
			scroll-snap-type: x mandatory;
			scroll-snap-stop: always;
			scroll-padding-inline: var(--padding_main);
			scrollbar-width: none;

			&::-webkit-scrollbar {
				display: none;
			}

			& > * {
				width: min(91%, 535px);
				flex: 0 0 auto;
				scroll-snap-align: start;
				scroll-behavior: smooth;
			}
		}

		& .mediablock {
			display: none;

			&.mediablock--active {
				display: block;
			}
		}
	}

	& .mediablocks--morebutton {
		margin-block-start: 1rem;
		display: grid;
		place-items: center;
	}
}

.mediablock {
	position: relative;
	aspect-ratio: 16 / 9;
	background: var(--color_const_pureblack);
	overflow: hidden;
	transition: all 0.3s ease-in-out;

	& .mediablock_linkwrapper {
		display: block;
		all: unset;
		cursor: pointer;

		&:focus,
		&:focus-visible,
		&:active {
			& .mediablock_title {
				text-decoration: underline;
				text-decoration-color: var(--color_brand_main);
				text-underline-offset: 0.2rem;
			}

			& .mediablock_image {
				transform: scale(1.02);
			}

			& .mediatype_indicator_hovertext {
				opacity: 1;
			}
		}

		@media (hover: hover) {
			&:hover .mediablock_image {
				transform: scale(1.03);
			}
		}
	}

	& .mediablock_image {
		position: absolute;
		inset: 0;
		object-fit: cover;
		object-position: center center;
		transition: all 0.2s ease-in-out;
		mask-image: var(--card-gradient--mask);
		-webkit-mask-image: var(--card-gradient--mask);
	}

	& .mediablock_title {
		position: absolute;
		inset-inline: var(--padding_soft);
		inset-block-end: var(--padding_soft);
		color: var(--color_const_light);
		text-wrap: pretty;
		text-shadow: var(--card-text-shadow);
		line-height: 1.1;

		@media screen and (width < 960px) {
			font-size: var(--text_size_third);
		}
	}

	& .mediablock_mediatype_indicator {
		& .mediatype_indicator--svg {
			background: var(--color_brand_main);
			position: absolute;
			inset-inline-end: 0;
			padding: 0.4rem;

			& svg {
				width: 1.5rem;
				height: 1.5rem;
				fill: none;
				stroke: var(--color_const_light);
				stroke-linecap: round;
				stroke-linejoin: round;
				stroke-width: 1;
			}
		}

		& .mediatype_indicator_hovertext {
			position: absolute;
			inset-inline-end: 2rem;
			padding: 0.65rem;
			color: var(--color_const_light);
			font-size: var(--text_size_small);
			text-transform: uppercase;
			letter-spacing: 0.1rem;
			transition: all 0.2s ease-in-out;
		}
	}
}

.media {
	.mediablocks--wrapper {
		padding: 0;
		grid-template-columns: repeat(2, 1fr);

		@media screen and (width < 900px) {
			display: grid;
			grid-template-columns: repeat(2, 1fr);
		}

		@media (max-width: 576px) {
			grid-template-columns: 1fr;
		}

		.mediablock {
			display: block;

			@media screen and (width < 900px) {
				width: 100%;
			}
		}
	}

	.listing_pagination {
		padding: 0;
	}

	.frontpage_block--title {
		font-size: var(--text_size_extrabig);
	}
}

.photo {
	.photo-media {
		padding-block: var(--padding_ultrasoft);
		margin-inline-end: var(--padding_ultrasoft);
		background: var(--color_bg_hard);

		@media (max-width: 1024px) {
			margin-inline-end: 0;
		}
	}

	.mediablocks--section {
		margin: 0;
		/* padding-inline: var(--padding_main); */

		@media (max-width: 1024px) {
			/* margin-inline: var(--padding_main); */
		}

		.rubric_bar {
			@media screen and (width < 1300px) {
				margin-inline: var(--padding_main);
			}
		}
	}

	.mediablocks--wrapper {
		padding: 0;
		grid-template-columns: repeat(2, 1fr);

		@media screen and (width < 1300px) {
			padding-inline: var(--padding_main);
		}
	}

	.article_container {
		.rubric_bar {
			margin-block-end: var(--padding_ultrahard);
		}
	}
}

.content_wrapper {
	display: grid;
	grid-template-columns: 1fr calc(300px + calc(var(--padding_soft)) * 2);
	grid-template-areas: "main aside";
}

@media screen and (width < 1024px) {
	.content_wrapper {
		display: block;
	}
}

main {
	grid-area: main;
}

.listing_container {
	width: min(100%, 100ch);
	max-width: 100vw;
	margin-inline: auto;
	margin-block: var(--padding_main);

	& h1 {
		width: fit-content;
		text-decoration: underline;
		text-decoration-color: var(--color_brand_main);
		margin-block-end: var(--padding_extrahard);
	}

	& > * {
		&:not(.listing_pagination) {
			padding-inline: var(--padding_main);
		}
	}

	& .listing_pagination {
		margin-block-start: var(--padding_ultrahard);
	}
}

.listing_pagination {
	display: flex;
	gap: 0.4em;
	flex-wrap: wrap;
	overflow-x: auto;
	overflow-y: hidden;
	overscroll-behavior-x: contain;
	scroll-snap-type: x mandatory;
	scroll-snap-stop: always;
	scroll-snap-align: start;
	scroll-behavior: smooth;
	scroll-padding-inline: var(--padding_main);
	scrollbar-width: none;
	padding-inline: var(--padding_main);

	&::-webkit-scrollbar {
		display: none;
	}

	& a {
		all: unset;
		cursor: pointer;

		@media (hover: hover) {
			&:hover {
				font-weight: var(--font_weight_ultrabold);
				background: var(--color_brand_active);
			}
		}

		&:focus,
		&:target {
			font-weight: var(--font_weight_ultrabold);
			background: var(--color_brand_active);
		}
	}

	& .pagination_dots {
		flex: 0 0 auto;
		scroll-snap-align: start;
		scroll-behavior: smooth;
		font-size: var(--text_size_main);
		background: var(--color_brand_main);
		color: var(--color_const_light);
		padding-inline: 0.8rem;
		padding-block: 0.4em;
		letter-spacing: -0.1em;

		@media screen and (width > 940px) {
			font-size: var(--text_size_info);
		}

		&.pagination_dots--disabled {
			background: var(--color_bg_hard);
			color: var(--color_text_ultrasoft);
		}
	}
}

aside {
	background: var(--color_bg_hard);
	grid-area: aside;
}

.wrapper-bg {
	padding-block: var(--padding_soft);
	background: var(--color_bg_hard);

	& > * {
		padding-inline: var(--padding_main);
	}

	.wrapper-bg__container {
		width: min(100%, 90ch);
		max-width: 100vw;
		margin-inline: auto;
	}
}

.listing_letters {
	& .listing_letters_wrapper {
		& > * {
			padding-inline: var(--padding_main);
		}
	}

	& .listing_letters_text {
		margin-block-end: var(--padding_extrasoft);
		display: flex;
		justify-content: center;
		font-size: var(--text_size_secondary);
		line-height: 1.2;
		font-weight: var(--font_weight_bold);
		text-align: center;

		p {
			position: relative;
			padding-inline-start: 10rem;

			@media (max-width: 576px) {
				padding-inline-start: 8rem;
			}
		}
	}

	& .listing_letters_count {
		position: absolute;
		left: 0;
		width: fit-content;
		font-size: 6rem;
		line-height: 5rem;
		font-weight: var(--font_weight_maximum);
		inset-block-start: -1.8rem;
		inset-inline-end: -1.2rem;
		opacity: 0.15;

		@media (max-width: 1024px) {
			inset-block-start: -2rem;
		}

		@media (max-width: 576px) {
			font-size: 5rem;
			line-height: 4rem;
			inset-block-start: -1.8rem;
		}
	}

	& .listing_letters_list {
		position: relative;
		display: flex;
		gap: 0.4em;
		flex-wrap: wrap;
		justify-content: center;
		z-index: 2;
	}

	.letters_dots {
		padding: 0.4em;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 3rem;
		height: 3rem;
		font-size: var(--text_size_info);
		flex: 0 0 auto;
		scroll-snap-align: start;
		scroll-behavior: smooth;
		font-size: var(--text_size_main);
		font-weight: var(--font_weight_ultrabold);
		color: var(--color_text_main);
		background-color: var(--color_bg_soft);
		border: 1px solid var(--color_border_soft);
		text-decoration: none;

		&.letters_dots--active {
			background: var(--color_brand_main);
			color: var(--color_const_light);
		}

		&:hover {
			background: var(--color_brand_main);
			color: var(--color_const_light);
		}
	}
}

.listing_letter_container {
	display: flex;
	gap: 2rem;
	justify-content: center;

	@media (max-width: 576px) {
		flex-direction: column;
	}

	.listing_letter_list {
		width: 100%;
		column-count: 2;
		list-style: none;
		gap: 1.8rem;

		@media (max-width: 1024px) {
			column-count: 1;
		}
	}

	.listing_letter_header {
		font-size: var(--text-size-biggest);
		font-weight: var(--font_weight_ultrabold);
		line-height: 9rem;
		color: var(--color_brand_main);
	}

	.listing_letter_link {
		line-height: 1.5rem;
		color: var(--color_text_main);
		text-align: left;

		&:hover {
			font-weight: var(--font_weight_bold);
			color: var(--color_brand_main);
		}
	}
}

.modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 100000;

	&.open {
		display: block;
	}

	.modal__overlay {
		width: 100%;
		height: 100%;
		background-color: var(--color_bg_overlay);
	}

	.modal__window {
		display: flex;
		flex-direction: column;
		position: absolute;
		top: 50%;
		left: 50%;
		width: 75%;
		max-height: calc(90vh - var(--padding_extrahard));
		max-height: calc(100dvh - var(--padding_extrahard));
		transform: translate(-50%, -50%);
		background-color: var(--color_bg_soft);

		@media (max-width: 768px) {
			width: 94%;
		}
	}

	.modal__close {
		position: absolute;
		right: 0;
		top: 0;
		background: var(--primary) !important;
	}

	.who-modal {
		display: grid;
		grid-template-columns: 1fr 2fr;
		overflow: hidden;

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

		@media (max-width: 768px) {
			display: flex;
			flex-direction: column;
			overflow: auto;
			gap: 1rem;
			padding-block-start: var(--padding_ultrahard);
		}

		.article_header_cover {
			padding: 0;
			display: flex;
			flex-direction: column;
			height: 100%;

			@media (max-width: 1024px) {
				height: auto;
			}

			.swiper-wrapper {
				align-items: stretch;

				.swiper-slide {
					height: auto;
				}
			}

			.swiper:first-child {
				padding-block-end: var(--padding_soft);
				height: 100%;
				width: 100%;

				@media (max-width: 768px) {
					width: 60%;
				}

				@media (max-width: 460px) {
					width: 100%;
				}
			}

			.swiper-button {
				bottom: 0;
				top: auto;
			}

			.nav-slider {
				margin: 0;
				padding-inline-start: var(--padding_hard);
				padding-block-start: var(--padding_extrasoft);
				padding-block-end: var(--padding_ultrahard);

				@media (max-width: 768px) {
					padding-block-end: 0;
					padding-inline-start: 0;
					margin: 0 auto;
					width: 60%;
				}

				@media (max-width: 460px) {
					padding-inline-start: var(--padding_hard);
					padding-inline-end: var(--padding_hard);
					width: 100%;
				}
			}

			.js-mtp-gallery-item {
				box-sizing: border-box;
				height: 100%;

				.article_picture {
					width: 100%;
					height: 100%;
					object-fit: contain;
				}
			}
		}
	}

	.who-modal__left {
		min-width: 0;
		max-height: calc(100dvh - var(--padding_extrahard) * 2);

		@media (max-width: 768px) {
			max-height: 100%;
		}

		& > .article_header_cover {
			margin-bottom: 0!important;
		}
	}

	.who-modal__right {
		display: flex;
		flex-direction: column;
		overflow-y: auto;
		/* max-height: calc(100dvh - var(--padding_extrahard) * 2); */
	}

	.who-modal__header {
		padding-block: var(--padding_ultrahard);
		padding-inline: var(--padding_ultrahard);
		border-bottom: 1px solid var(--color_border_hard);

		@media (max-width: 768px) {
			padding-block: var(--padding_hard);
			padding-inline: var(--padding_soft);
		}
	}

	.who-modal__title {
		font-size: 3rem;
		font-weight: var(--font_weight_extrabold);

		@media (max-width: 768px) {
			font-size: 1.5rem;
		}
	}

	.who-modal__content {
		display: flex;
		flex-direction: column;
		gap: 1.5rem;
		padding-block: var(--padding_hard);
		padding-inline: var(--padding_ultrahard);
		overflow-y: auto;

		@media (max-width: 768px) {
			padding: var(--padding_soft);
			overflow: visible;
		}

		p:not([class]) {
			font-size: var(--text_size_third);
		}
		p.p1 {
			font-size: var(--text-size-main);
		}

		.general_headlines--wrapper {
			padding-block: var(--padding_hard);
			border-top: 1px solid var(--color_border_hard);
		}
	}

	.who-modal__top {
		display: flex;
		flex-direction: column;
		gap: 0.6rem;
		padding-block-end: var(--padding_hard);
		border-bottom: 1px solid var(--color_border_hard);

		& .serif {
			font-size: var(--text_size_big);
		}
		&:empty {
			display: none;
		}
		& *:empty {
			display: none;
		}
	}

	.who-modal__list {
		display: flex;
		flex-direction: column;
		list-style: none;
	}

	.who-modal__item {
		font-family: var(--f_serif);
		font-style: italic;
		font-size: var(--text_size_main);
		color: var(--color_text_main);
		text-decoration: none;
	}
}

.search {
	.search__text {
		margin-block-end: var(--padding_extrahard);
		font-family: var(--f_serif);
		font-style: italic;
		color: var(--color_text_extrasoft);
	}
}

.search-form {
	display: flex;
	flex-direction: column;
	gap: 1rem;

	.search-form__top {
		display: flex;
		gap: 1rem;

		@media (max-width: 576px) {
			gap: 1rem 2rem;
		}
	}

	.search-form__date {
		display: none;
		gap: 1rem;

		@media (max-width: 576px) {
			flex-direction: column;
			gap: 1rem 2rem;
		}

		&.active {
			display: flex;
		}
	}

	.form-date__label {
		display: flex;
		align-items: center;
		gap: 0.5rem;

		@media (max-width: 576px) {
			gap: 1rem;
		}
	}

	.form-date__input {
		padding: var(--padding_ultrasoft);
		border: 1px solid var(--color_border_soft);
	}

	.search-form__btn {
		padding-inline: var(--padding_extrasoft);
		padding-block: var(--padding_ultrasoft);
		border: none;
		font-weight: var(--font_weight_bold);
		background: var(--color_brand_main);
		color: var(--color_const_light);
		cursor: pointer;
	}

	.search-form__input {
		padding-inline: var(--padding_ultrasoft);
		width: 100%;
		font-size: var(--text_size_extrabig);
		font-weight: var(--font_weight_bold);
		line-height: 1rem;
		outline: none;
		border: 1px solid var(--color_border_soft);
	}

	.search-sort {
		display: flex;
		flex-wrap: wrap;
		gap: 1rem;

		@media (max-width: 576px) {
			gap: 1rem 2rem;
		}

		.search-sort__title {
			font-size: var(--text_size_small);
			letter-spacing: 2px;
			text-transform: uppercase;
			color: var(--color_text_extrasoft);
		}

		.search-sort__box {
			position: relative;
			display: flex;

			&::after {
				content: "";
				position: absolute;
				top: 50%;
				right: 2px;
				border: 6px solid transparent;
				border-top: 7px solid var(--color_brand_main);
				transform: translateY(-24%);
				pointer-events: none;
				background: var(--color_bg_hard);
			}
		}

		.search-sort__select {
			padding-inline-end: var(--padding_ultrasoft);
			width: 100%;
			font-weight: var(--font_weight_bold);
			border: none;
			background-color: transparent;
			cursor: pointer;
			/* background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="2" height="0"></svg>');
			background-position: right 5px top 50%;
			background-repeat: no-repeat; */
			/* -webkit-appearance: none;
			-moz-appearance: none;
			appearance: none; */
		}
	}

	.form-checkbox {
		display: flex;
		align-items: center;
		gap: 0.5rem;
		width: fit-content;
		cursor: pointer;

		@media (max-width: 576px) {
			gap: 1rem;
		}

		.form-checkbox__input {
			display: none;

			& ~ .form-checkbox__checkbox {
				position: relative;
				display: block;
				padding: var(--padding_ultrasoft);
				width: 20px;
				height: 20px;
				border: 2px solid var(--color_brand_main);
			}

			&:checked ~ .form-checkbox__checkbox::before {
				content: '✓';
				position: absolute;
				top: 50%;
				left: 50%;
				transform: translate(-50%, -50%);
				color: var(--color_brand_main);
			}
		}

		.form-checkbox__text {
			color: var(--color_text_ultrasoft);
		}
	}
}

.story-item {
	.article_container {
		& .rubric_bar {
			margin-block-end: 0;
		}

		.headline_list {
			padding-inline: var(--padding_soft);
		}

		.story-card {
			border-top: 2px solid var(--color_brand_main);
		}
	}
}

.story {
	.story__list {
		display: flex;
		flex-direction: column;
		gap: 1.5rem;
		list-style: none;

		.story-card {
			margin-block-end: 0;
			box-shadow: var(--card-shadow);
		}

		.story-card__text {
			padding-inline-start: 4.5rem;
			font-size: var(--text_size_third);
		}
	}
}

.story-card {
	display: grid;
	grid-template-columns: 2fr 1fr;
	margin-block-end: var(--padding_ultrahard);
	text-decoration: none;

	&:hover {
		.story-card__title.article_title {
			text-decoration: underline;
			text-decoration-color: var(--color_brand_main);
		}
	}

	@media (max-width: 768px) {
		grid-template-columns: 1fr;
	}

	.story-card__content {
		padding: var(--padding_main);
		display: flex;
		flex-direction: column;
		gap: 3rem;
		background-color: var(--color_bg_hard);
		overflow: hidden;

		@media (max-width: 768px) {
			gap: 2rem;
		}
	}

	.story-card__title.article_title {
		padding-block-end: var(--padding_main);
		font-size: clamp(2rem, 2vw + 1.5rem, 2.5rem);
		letter-spacing: -0.01em;
		line-height: 1.03;
		font-weight: 800;
		white-space: normal;
		text-wrap: balance;
		text-align: center;
		text-align: left;
		text-decoration: none;
		color: var(--color_text_main);
	}

	.story-card__text {
		position: relative;
		display: flex;
		align-items: center;
		padding-inline-start: 4rem;
		margin: 0;
		color: var(--color_text_soft);
		inset-block-start: 0.8rem;

		@media (max-width: 1024px) {
			inset-block-start: 0.6rem;
		}

		@media (max-width: 768px) {
			inset-block-start: 0;
		}
	}

	.story-card__text--count {
		position: absolute;
		left: 0;
		width: fit-content;
		font-size: 4rem;
		line-height: 3rem;
		font-weight: var(--font_weight_maximum);
		opacity: 0.15;
	}

	.story-card__img {
		height: 100% !important;
		object-fit: cover;
		background-color: var(--color_bg_hard);
	}
}

/* .storysnippet {
  padding-top: var(--padding_main);
} */

.storysnippet_list {
	display: flex;
	flex-direction: column;
	gap: var(--padding_main);
	list-style: none;
}

.storysnippet_item {
	padding-bottom: var(--padding_main);
}

.storysnippet_item:not(:last-child) {
	border-bottom: 1px solid var(--color_border_main);
}

.storysnippet_item--linkwrapper {
	text-decoration: none !important;
	position: relative;
}

@media (hover: hover) and (pointer: fine) {
	.storysnippet_item--linkwrapper:hover .storysnippet_item--title {
		text-decoration: underline !important;
		text-decoration-color: var(--color_brand_main) !important;
	}
	.storysnippet_item--linkwrapper:hover .storysnippet_item--desc {
		text-decoration: none !important;
	}
	.storysnippet_item--linkwrapper:hover .storysnippet_item--title {
		transform: scale(1.04);
		-webkit-transform: scale(1.04);
		-ms-transform: scale(1.04);
		-moz-transform: scale(1.04);
		-o-transform: scale(1.04);
	}
}
.storysnippet_item--linkwrapper:focus .storysnippet_item--title {
	text-decoration: underline !important;
	text-decoration-color: var(--color_brand_main) !important;
}

.storysnippet_item--linkwrapper:focus .storysnippet_item--desc {
	text-decoration: none !important;
}

.storysnippet_item--content {
	white-space: normal;
	text-wrap: balance;
	text-decoration: none;
	color: var(--color_text_main);
}

.storysnippet_item--title {
	padding-block-end: 0 !important;
	font-size: var(--text_size_big);
	letter-spacing: -0.01em;
	line-height: 1.03;
	font-weight: 800;
	white-space: normal;
	text-wrap: balance;
	text-align: left;
	-webkit-transition: all 0.2s ease-in-out;
	-moz-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
}

.storysnippet_item--desc {
	padding-block-end: var(--padding_main);
	font-size: 1em !important;
	letter-spacing: -0.01em;
	line-height: 1.03;
	font-weight: 300;
	white-space: normal;
	text-wrap: balance;
	text-align: left;
	position: relative;
	display: flex;
	align-items: center;
	padding-inline-start: 2.7rem;
	margin: 0;
	color: currentColor;
	opacity: 0.5;
	inset-block-start: 0.8rem;
}

.storysnippet_item--count {
	position: absolute;
	left: 0;
	width: fit-content;
	font-size: var(--text_size_big);
	line-height: 3rem;
	font-weight: var(--font_weight_maximum);
	opacity: 0.5;
}

.storysnippet_buttonwrapper {
	display: flex;
	justify-content: center;
}

.storysnippet_item--cover {
	position: relative !important;
	background: var(--color_const_dark) !important;
	padding-bottom: 0 !important;
	margin-bottom: var(--padding_ultrasoft);
	left: -1.2rem;
	width: calc(100% + (var(--padding_main) * 2));
}

.storysnippet_item--cover .storysnippet_item--content {
	position: absolute !important;
	bottom: 1rem !important;
	left: 1rem !important;
	color: var(--color_const_light) !important;
}

.storysnippet_item--cover .storysnippet_item--count {
	opacity: 0.5;
}

.storysnippet_item--cover .storysnippet_item--img {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	object-position: center center;
	mask-image: var(--card-gradient--mask-fromtransperent);
	-webkit-mask-image: var(--card-gradient--mask-fromtransperent);
	transition: all 0.2s ease-in-out;
}

.authors {
	.frontpage_block--title {
		margin-block-end: var(--padding_ultrahard);
		font-size: var(--text_size_extrabig);
	}

	.authors__list {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 3rem 1rem;
		margin-block-end: var(--padding_ultrahard);
		list-style: none;

		@media (max-width: 768px) {
			grid-template-columns: 1fr;
		}
	}

	.authors__content {
		padding: var(--padding_main);
		height: 100%;

		@media (max-width: 768px) {
			padding: var(--padding_extrasoft);
		}
	}

	.authors__link {
		position: relative;
		display: flex;
		flex-direction: column;
		height: 100%;
		background: var(--color_bg_hard);
		color: var(--color_text_main);
		text-decoration: none;
		transition: all 0.3s ease-in-out;

		&:hover {
			background-color: var(--color_brand_main);

			.authors__bottom {
				color: var(--color_text_ultrasoft);
				background-color: var(--color_bg_overlay);
			}

			.authors__text--count {
				color: var(--color_bg_extrahard);
				opacity: 0.6;
			}

			.authors__name {
				color: var(--color_const_purewhite);
			}
		}
	}

	.authors__name {
		font-size: var(--text_size_extrabig);
		letter-spacing: -0.01em;
		line-height: 1.2;
		font-weight: 700;
		white-space: normal;
		text-wrap: balance;
		text-decoration: none;
		color: var(--color_text_main);
		transition: all 0.3s ease-in-out;

		@media (max-width: 768px) {
			font-size: var(--text_size_big);
		}
	}

	.authors__name--big {
		text-transform: uppercase;
	}

	.authors__bottom {
		padding-inline: var(--padding_main);
		width: 100%;
		color: var(--color_text_extrasoft);
		background-color: var(--color_bg_overlay_light);
		transition: all 0.3s ease-in-out;

		@media (max-width: 768px) {
			padding-inline: var(--padding_extrasoft);
		}
	}

	.authors__text {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		gap: 0.5rem 1.5rem;
		width: 62%;
		font-size: var(--text_size_third);
		letter-spacing: 1px;
		text-transform: uppercase;

		@media (max-width: 768px) {
			font-size: var(--text_size_info);
			gap: 0.5rem;
		}
	}

	.authors__text--count {
		width: fit-content;
		font-size: 2.5rem;
		line-height: 2rem;
		font-weight: var(--font_weight_maximum);
		inset-block-start: -0.2rem;
		inset-inline-end: -1.2rem;
		opacity: 0.6;
		transition: all 0.3s ease-in-out;

		@media (max-width: 768px) {
			font-size: 1.5rem;
			line-height: 1.2rem;
		}
	}

	.authors__img {
		position: absolute;
		right: 6px;
		bottom: 0;
		height: 115%;
		width: auto;

		@media (max-width: 1340px) {
			width: 36%;
			height: auto;
		}

		@media (max-width: 768px) {
			width: auto;
			height: 100%;
		}
	}

	.authors__info {
		margin-block-end: var(--padding_extrahard);
		font-family: var(--f_serif);
		font-style: italic;
		font-size: var(--text_size_extrabig);
		color: var(--color_text_ultrasoft);
	}
}

.author-card {
	margin-block-end: var(--padding_main);

	.authors__img {
		@media (max-width: 1340px) {
			width: auto;
			height: 115%;
		}

		@media (max-width: 768px) {
			height: 100%;
		}
	}

	.authors__name {
		width: 70%;
	}
}

.polls {
	& .polls__container {
		display: flex;
		flex-direction: column;
		gap: 2rem;
	}

	& .polls__item {
		background: var(--color_bg_hard);
		padding-inline: var(--padding_main);
	}
}

.video-block {
	margin: 0 auto;

	iframe {
		max-width: 100%;
	}
}

.loader {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 100px;
	font-size: 18px;
	color: #333;
}

.error {
	color: red;
	padding: 20px;
	text-align: center;
}

.article_header_cover {
	.swiper {
		.js-mtp-gallery-item {
			position: relative;
			padding-bottom: calc(9 / 16 * 100%);
			height: 0;
		}

		.article_picture {
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			object-fit: cover;
		}
	}

	.nav-slider {
		.article_picture {
			padding: 0;
			width: calc(100% - 10px);
			height: calc(100% - 10px);
		}
	}
}

.pl__quote-text {
	font-family: var(--f_serif);
	font-size: var(--text_size_extrabig);
	font-style: italic;
	line-height: 1.1;
	text-wrap: pretty;
	position: relative;
	margin-bottom: var(--padding_main);
}

.pl__quote-text:before {
	content: "«";
	position: absolute;
	inset-block-start: -3rem;
	inset-inline-start: -1rem;
	opacity: 0.3;
	z-index: -1;
	color: var(--color_brand_ultrasoft);
	font-family: var(--f_sans);
	font-style: normal;
	font-size: 4em;
	font-weight: var(--font_weight_extrabold);
}

.propertiesrform--wrapper {
	width: min(100%, 100ch);
  max-width: 100vw;
  margin-inline: auto;
}

.propertiesrform--wrapper > .search-form__date {
	margin-bottom: var(--padding_soft);
}

.propertiesrform--wrapper > .search-form__date > label {
	display: flex;
  flex-wrap: wrap;
  gap: var(--padding_extrasoft);
  justify-content: center;
}

.propertiesrform--wrapper .form-date__text {
	font-size: var(--text_size_third);
}

.propertiesrform--wrapper > .search-form__top {
	display: grid;
	justify-content: center;
}
.propertiesrform--wrapper > .search-form__top > button {
	padding-inline: var(--padding_main);
}

.propertiesrform--wrapper div:not([class]){
	display: none;
}