

	p { margin: 0; }
	a { text-decoration: none; color: inherit; }
	.body_copy { line-height: 135%; }

	.announcement_wrapper { overflow: hidden; width: 990px; display: flex; flex-flow: row wrap; margin: 0 auto; }
	.announcement_wrapper .level_1 { padding: 20 0 10 0; }

	.news_wrapper { overflow: hidden; width: 990px; display: flex; flex-flow: row wrap; margin: 0 auto; }
	.section_block { width: 100%; margin: 0px 3%; padding: 25 0 40 0;
					border-top: 2px solid rgb(18, 18, 18);
					display: flex; flex-direction: row; flex-wrap: wrap; overflow: hidden; }
	.section_block { border: none; /* scroll.mk modification */ }

	#top_photos_content.section_block { width: 100%; grid-template-columns: 100%; grid-template-areas: none; }

	.news_wrapper .section_block:has(.level_2):has(.level_3) { border: none; } 

	/* REQUEST (2026-08-15): the LAST item of the left column must sit flush at the
	   bottom — no bottom padding, no divider border — regardless of how many items
	   the column holds (1, 2 or 3). Only the positional .level_13 (3rd slot) was
	   zeroed before, so a 2-item column (e.g. Метео) left .level_12 with a stray
	   10px bottom padding. These :not(:has()) guards pick whichever level_1x is
	   actually last and neutralise both border and padding-bottom; when .level_13
	   is present the guards don't fire, so .level_11/.level_12 keep their dividers.
	   Base scope + (0,3,0) specificity beats the per-breakpoint .level_1x rules. */
	.section_block:not(:has(.level_13)) .level_12 { border: none; padding-bottom: 0; }
	.section_block:not(:has(.level_12)) .level_11 { border: none; padding-bottom: 0; }

	.scrolling_div_wrap { padding: 25 0 40 0; width: 100%; }

	.ad_filled_grid {	width: 100%;
						margin: 0px 3%;
						/* padding: 25 0 25 0; */
						padding: 0 0 40 0;
						display: grid;
						grid-template-columns: 1fr fit-content(33%);
						grid-template-rows: auto auto;
						grid-template-areas: 	"Article1 Ad"
												"Article2 Ad"
												"Article3 Ad";
					}

	.ad_filled_grid > div { margin: 0; }

	.ad_filled_grid:has(.ad_block:empty),
	.ad_filled_grid:has(.ad_block .ad-empty) {
		grid-template-columns: 100%;
		grid-template-areas:	"Article1"
								"Article2"
								"Article3";
	}
	.ad_filled_grid:has(.ad_block:empty) .ad_block,
	.ad_filled_grid:has(.ad_block .ad-empty) .ad_block {
		display: none;
	}

	.section_block_header { width: 100%; margin: 0; padding: 0 24 0 24;  }
	.section_block_header > a, .v2_summary .section_block_header > div { display: block; border-bottom: 3px solid rgb(80,80,80); }
	.section_block_header .title_11 {
										display: block;
										padding: 10; margin: 0px 0px -19px 0px;
										font-size: 26px;
										width: fit-content;
										background-color: white;
										padding: 0;
										margin: 0px 0px -10px 40px;
									}
	.v2_summary .section_block_header .title_11 { background: var(--inline-bg); }
	.photos_only_wrapper .section_block_header .title_11 { margin: 0px 0px -10px 0px; }
	.list_of_sources_wrapper .section_block_header .title_11 { margin: 0px 0px -10px 0px; }

	.section_block_header_emphasized > a {
										border-bottom-width: 5px;
									}
	
	.section_block_header_emphasized > a > h1{
										background-color: black !important;
										color: white !important;
										padding: 3 7 !important;
										margin: 0px 0px -11px 40px !important;
									}

	.section_subblock_1 { grid-area: section_subblock_1; display: block; width: 30%; }
	.section_subblock_2 { grid-area: section_subblock_2; display: block; width: 30%; border-left: 1px solid rgb(226, 226, 226); }
	.section_subblock_4 { grid-area: section_subblock_4; display: block; overflow: hidden; width: 40%; height: 397px; border-left: 1px solid rgb(226, 226, 226); }

	.news_block { display: flex; overflow: hidden; }

	.horizontal { display: none; }
	.vertical { display: none; }

	.level_1 { grid-area: level_1; display: block; margin: 0px 3%; padding: 25 0 25 0; width: 100%; /* background-color: rgb(200,240,240); */ border-bottom: 1px solid rgb(226, 226, 226); }
	.level_2 { grid-area: level_2; display: block; margin: 0 0 0 0; padding: 0 25 0 0; width: 60%; /* background-color: rgb(220,240,240); */ }
	.level_3 { grid-area: level_3; display: block; margin: 0 0 0 0; padding: 0 0 0 25; width: 40%; /* background-color: rgb(180,240,240); */ border-left: 1px solid rgb(226, 226, 226); }
	.level_11 { grid-area: level_11; display: block; margin: 0 0 0 0; padding: 0 25 0 0; /* background-color: rgb(200,240,240); */ }
	.level_12 { grid-area: level_12; display: block; margin: 0 0 17 0; padding: 0 25 0 25; /* background-color: rgb(220,240,240); */ }
	.level_13 { grid-area: level_13; display: block; margin: 0 0 0 0; padding: 0 25 0 25; /* background-color: rgb(180,240,240); */ }
	.level_14 { display: block; margin: 0 0 15 0; border-left: 1px solid rgb(226, 226, 226); /* background-color: rgb(240,240,180); */ }

	.level_1_tv { display: block; margin: 3%; padding: 0; border: 0; }

	.news_block_3 { width: 100%; }
	
	.level_2 .news_block { flex-flow: row wrap; }
	.level_3 .news_block { flex-flow: row wrap; }
	.level_11 .news_block { flex-flow: row wrap; }
	.level_12 .news_block { flex-flow: row wrap; }
	.level_13 .news_block { flex-flow: row wrap; }

	.image_wrapper_1 { display: flex; flex-shrink: 0; width: 41%; /* width: 410px; */ height: 300px; margin: 0; padding: 0; overflow: hidden; }
	.image_wrapper_2 { display: flex; flex-shrink: 0; width: 41%; /* width: 270px; */ height: 215px; margin: 0; padding: 0; overflow: hidden; }
	.image_wrapper_3 { display: flex; flex-shrink: 0; width: 41%; /* width: 180px; height: 215px; */ margin: 0; padding: 0; overflow: hidden; }
	.image_wrapper_4 { display: flex; flex-shrink: 0; width: 120px; height: 183px; overflow: hidden; }
	.image_wrapper_5 { display: flex; flex-shrink: 0; width: 70px; height: 95px; overflow: hidden; }
	.image_wrapper_6 { display: flex; flex-shrink: 0; margin: 40px 0px 0px 0px; width: 207px; height: 95px; overflow: hidden; }
	.image_wrapper_11 { display: flex; flex-shrink: 0; width: 220px; height: 150px; min-height: 140px; overflow: hidden; }
	.image_wrapper_12 { display: flex; flex-shrink: 0; width: 220px; height: 120px; min-height: 110px; overflow: hidden; }
	.image_wrapper_13 { display: flex; flex-shrink: 0; width: 220px; height: 120px; min-height: 110px; overflow: hidden; }
	.image_wrapper_14 { display: none; flex-shrink: 0; width: 35%; overflow: hidden; }

	.fill { display: flex; justify-content: center; align-items: center; overflow: hidden }
	.fill img { /* flex-shrink: 0; min-width: 100%; min-height: 100%; */ object-fit: cover; width: 100%; height: 100%; object-position: 45% 20%; }

	.golden_ratio_image_container { width: -webkit-fill-available;
									height: -webkit-fill-available;
									/* height: 100%; */
									display: grid;
									grid-template-columns: 23.6% 5.58% 9.02% 61.8%;
									grid-template-rows: 61.8% 9.02% 5.58% 23.6%;
									grid-template-areas: "A A A A" "C C C B" "C C C B" "C C C B";
									}
	.golden_ratio_image_container_landscape { /* width: 70vw; height: 43.2632880099vw; */ width: -webkit-fill-available; height: -webkit-fill-available; display: grid; grid-template-columns: 61.8% 9.02% 5.58% 23.6%; grid-template-rows: 61.8% 9.02% 5.58% 23.6%; grid-template-areas: "A B B B" "A C C C" "A C C C" "A C C C"; }
	.golden_ratio_image_item { position: relative; display: flex; justify-content: center; align-items: center; height: 100%; width: 100%; font-size: 13px; font-weight: 100; box-sizing: border-box; border: 2px solid white; overflow: hidden; }
	.golden_ratio_image_item_1 { grid-area: A; }
	.golden_ratio_image_item_2 { grid-area: B; }
	.golden_ratio_image_item_3 { grid-area: C; }
	.golden_ratio_image_item_4 { grid-area: D; }
	.golden_ratio_image_item_5 { grid-area: E; }
	.golden_ratio_image_item_6 { grid-area: F; }
	.golden_ratio_image_item_7 { grid-area: G; }

	.image_link_box { position: absolute; width: 7px; height: 7px; background-color: white; bottom: 4px; right: 4px; opacity: 0.4; z-index: 100; }
	.image_link_box_black { position: absolute; width: 6px; height: 6px; background-color: black; bottom: 4px; right: 4px; opacity: 0.12; z-index: 100; }
	.text_link_box { opacity: 0.12; font-size: 13px; }

	.image_wrapper_1 .golden_ratio_image_container { grid-template-columns: 61.8% 9.02% 5.58% 23.6%; grid-template-areas: "A B B B" "A C C C" "A C C C" "A C C C"; }
	.image_wrapper_2 { width: 100%; height: 180px; margin: 0 0 10 0; }
	.image_wrapper_2 .golden_ratio_image_container { grid-template-columns: 61.8% 9.02% 5.58% 23.6%; grid-template-areas: "A B B B" "A C C C" "A C C C" "A C C C"; }
	.image_wrapper_3 { width: 100%; height: 140px; margin: 0 0 10 0; }
	.image_wrapper_3 .golden_ratio_image_container { grid-template-columns: 61.8% 9.02% 5.58% 23.6%; grid-template-areas: "A B B B" "A C C C" "A C C C" "A C C C"; }
	.image_wrapper_11 { width: 100%; height: 140px; margin: 0 0 10 0; }
	.image_wrapper_11 .golden_ratio_image_container { grid-template-columns: 61.8% 9.02% 5.58% 23.6%; grid-template-areas: "A B B B" "A C C C" "A C C C" "A C C C"; }
	.image_wrapper_12 { width: 100%; height: 80px; margin: 0 0 7 0; }
	.image_wrapper_12 .golden_ratio_image_container { grid-template-columns: 61.8% 9.02% 5.58% 23.6%; grid-template-areas: "A B B B" "A C C C" "A C C C" "A C C C"; }
	.image_wrapper_13 { width: 100%; height: 80px; margin: 0 0 7 0; }
	.image_wrapper_13 .golden_ratio_image_container { grid-template-columns: 61.8% 9.02% 5.58% 23.6%; grid-template-areas: "A B B B" "A C C C" "A C C C" "A C C C"; }
	.image_wrapper_14 { height: 70px; }
	.image_wrapper_14 .golden_ratio_image_container { grid-template-columns: 61.8% 9.02% 5.58% 23.6%; grid-template-areas: "A B B B" "A C C C" "A C C C" "A C C C"; }

	.image_wrapper { grid-area: images; }

	/* Imageless clusters fall back to the site favicon in the image slot (see
	   html_favicon_fallback_image). It's a self-contained gradient tile, so
	   contain + center it and beat `.fill img { object-fit: cover }` (0,1,1)
	   with a (0,2,1) selector so it isn't stretched/cropped. REQUEST 2026-07-30. */
	.favicon_fallback { display: flex; align-items: center; justify-content: center; overflow: hidden; }
	.favicon_fallback img.favicon_fallback_img { width: 100%; height: 100%; max-width: 100%; object-fit: contain; object-position: center; padding: 4px; box-sizing: border-box; border: 0; }
	.news_block_text { grid-area: text; }
	.title { grid-area: title; }
	.subtitles_wrapper { grid-area: subtitles; }
	.related_articles_block .horizontal_slider_item .subtitles_wrapper { min-height: 0; overflow-y: auto; align-self: stretch; }
	.body_copy_wrapper { grid-area: bodycopy; }

	.the_very_title { color: rgb(35,35,35) !important; }
	.the_very_subtitle { color: rgb(100,100,100) !important; }

	.news_block_text_1 { /* height: 280px; */ height: fit-content; padding: 0px 0px 0px 20px; overflow: hidden; }
	.news_block_text_2 { /* height: 195px; */ height: fit-content; /* padding: 0px 0px 0px 15px; */ overflow: hidden; }
	.news_block_text_3 { /* height: 195px; height: fit-content; padding: 0px 20px 0px 15px; */ overflow: hidden; }
	.news_block_text_4 { height: 163px; padding: 0px 45px 20px 13px; overflow: hidden; }
	.news_block_text_5 { height: 75px; padding: 0px 40px 20px 12px; overflow: hidden; }
	.news_block_text_6 { height: 175px; margin: 0px 0px 0px -207px; padding: 0px 40px 20px 0px; overflow: hidden; }
	.news_block_text_11 { /* height: 275px; height: fit-content; padding: 0px 40px 20px 0px; */ overflow: hidden; }
	.news_block_text_12 { height: fit-content; padding: 0px 0px 0px 0px; overflow: hidden; }
	.news_block_text_13 { height: fit-content; padding: 0px 0px 0px 0px; overflow: hidden; }
	.news_block_text_14 { height: fit-content; margin: 0 0 0 10; padding: 0px 0px 0px 0px; overflow: hidden; }

	.level_1 .sources_bar { margin: 0px 0px 0px 0px; }
	.level_2 .sources_bar { margin: 0px 0px 0px 0px; }
	.level_3 .sources_bar { margin: 0px 0px 0px 0px; }
	.section_subblock_1 .sources_bar { margin: 0px 0px 0px 0px; }
	.section_subblock_2 .sources_bar { margin: 0px 0px 0px 0px; }
	.section_subblock_4 .sources_bar { margin: 0px 0px 0px 0px; }

	.title_1 { margin: 0 0 0 0; font-size: 28px; line-height: 1.1; -webkit-line-clamp: 2; }
	.title_carousel { margin: 0; font-size: 36px; line-height: 1.1; }
	.title_2 { margin: 0 0 0 0; font-size: 18px; line-height: 1.1; -webkit-line-clamp: 2; }
	.title_3 { margin: 0 0 0 0; font-size: 18px; line-height: 1.1; -webkit-line-clamp: 2; }
	.title_4 { margin: 0 0 0 0; font-size: 13px; }
	.title_5 { margin: 0 0 0 0; font-size: 13px; }
	.title_6 { margin: 0 0 0 0; font-size: 13px; }
	.title_11 { margin: 0 0 3 0; font-size: 18px; line-height: 1.1; -webkit-line-clamp: 3; }
	.title_12 { margin: 0 0 6 0; font-size: 13px; line-height: 1.1; -webkit-line-clamp: 2; }
	.title_13 { margin: 0 0 6 0; font-size: 13px; line-height: 1.1; -webkit-line-clamp: 2; }
	.title_14 { display: none; margin: 0 0 0 0; font-size: 13px; line-height: 1.2; -webkit-line-clamp: 3; }

	.title_style_1 {
						/* color: rgb(0, 124, 187); */
						/* color: #0066CC; */
					}
	.title_style_2 {
						color: rgb(161, 14, 75);
						color: #CC0066;
					}

	.subtitles_1 li:nth-of-type(3) { display: none; }
	.subtitles_2 li:nth-of-type(3) { display: none; }
	.subtitles_3 li:nth-of-type(3) { display: none; }
	.subtitles_12 li:nth-of-type(2) { display: none; }
	.subtitles_12 li:nth-of-type(3) { display: none; }
	.subtitles_13 li:nth-of-type(2) { display: none; }
	.subtitles_13 li:nth-of-type(3) { display: none; }

	.subtitles_1 { margin: 18px 0px 20px 0px; padding: 0 0 0 9; list-style-type: none; border-left: 7px solid rgb(35,35,35); }
	.subtitles_2 { margin: 13px 0px 15px 0px; padding: 0 0 0 7; font-weight: 400; list-style-type: none; border-left: 6px solid rgb(35,35,35); }
	.subtitles_3 { margin: 13px 0px 15px 0px; padding: 0 0 0 7; font-weight: 400; list-style-type: none; border-left: 6px solid rgb(35,35,35); }
	.subtitles_4 { margin: 13px 0px -5px 10px; padding: 0; font-weight: 400; list-style-type: none; border-left: 5px solid rgb(35,35,35); }
	.subtitles_5 { margin: 0px 0px -15px 10px; padding: 0; font-weight: 400; list-style-type: none; border-left: 5px solid rgb(35,35,35); }
	.subtitles_6 { margin: 107px 0px -15px 10px; padding: 0; font-weight: 400; list-style-type: none; border-left: 5px solid rgb(35,35,35); }
	.subtitles_11 { margin: 15px 0px 15px 0px; padding: 0 0 0 7; list-style-type: none; border-left: 5px solid rgb(35,35,35); }
	.subtitles_12 { margin: 0 0 7 0; padding: 0 0 0 7; font-weight: 400; list-style-type: none; border-left: 5px solid rgb(35,35,35); }
	.subtitles_13 { margin: 0 0 7 0; padding: 0 0 0 7; font-weight: 400; list-style-type: none; border-left: 5px solid rgb(35,35,35); }
	.subtitles_14 { display: none; margin: 13px 0px -5px 0px; padding: 0 0 0 7; font-weight: 400; list-style-type: none; border-left: 5px solid rgb(35,35,35); }
	/* REQUEST (2026-08-12): level-14 blocks now render up to 3 RESERVE subtitles
	   beyond the 3 visible ones, as fill material for the v2 section-block
	   balancer (subtitle adding/removing is the only legal height lever — body
	   copy is line-locked to its image). Reserves stay hidden at every
	   breakpoint; only balanceSectionRightColumns() reveals them (inline
	   display:list-item beats this rule). */
	.subtitles_14 li:nth-of-type(n+4) { display: none; }

	.subtitle_1 { margin: 3 0 0 0; }
	.subtitle_2 { margin: 3 0 0 0; }
	.subtitle_3 { margin: 3 0 0 0; }
	.subtitle_11 { margin: 3 0 0 0; }

	.subtitle_freshest { grid-area: subtitle_freshest; -webkit-line-clamp: 1; /* color: rgb(161,14,75) !important; */ }
	.level_1 .subtitle_freshest { margin: 0 0 -4 0 !important; }
	.level_2 .subtitle_freshest { margin: 0 0 -3 0 !important; }
	.level_3 .subtitle_freshest { margin: 0 0 -3 0 !important; }
	.level_11 .subtitle_freshest { margin: 0 0 -3 0; }
	.level_12 .subtitle_freshest { margin: 0 0 -3 0; }
	.level_13 .subtitle_freshest { margin: 0 0 -3 0; }
	.section_subblock_4 .subtitle_freshest { margin: 0 0 -3 0; }
	.subtitle_freshest .source_article_body { bottom: -3 !important; /* color: rgb(161,14,75) !important; */ }

	.body_copy_wrapper { width: 100%; overflow: hidden; }

	.body_copy_wrapper > .body_copy.body_copy_primary { display: flex; }	/* Added on 6.10.2024 */

	/*
	.body_copy_wrapper_1 { -webkit-line-clamp: 6; }
	.body_copy_wrapper_2 { -webkit-line-clamp: 9; }
	.body_copy_wrapper_3 { -webkit-line-clamp: 3; }
	.body_copy_wrapper_11 { -webkit-line-clamp: 6; }
	.body_copy_wrapper_12 { -webkit-line-clamp: 3; }
	.body_copy_wrapper_13 { -webkit-line-clamp: 2; }

	.body_copy_wrapper_14 { display: none; }

	.body_copy_wrapper_1 p:nth-child(5) { margin: 0 0 0 0; }
	.body_copy_wrapper_2 p:nth-child(5) { margin: 0 0 0 0; }
	.body_copy_wrapper_3 p:nth-child(5) { margin: 0 0 0 0; }

	.body_copy_wrapper_11 p:nth-child(5) { margin: 0 0 0 0; }
	.body_copy_wrapper_12 p:nth-child(1) { margin: 0 0 0 0; }
	.body_copy_wrapper_13 p:nth-child(1) { margin: 0 0 0 0; }

	.body_copy_wrapper_1 .body_copy { margin: 0 0 3 0; }
	.body_copy_wrapper_2 .body_copy { margin: 0 0 3 0; }
	.body_copy_wrapper_3 .body_copy { margin: 0 0 3 0; }
	.body_copy_wrapper_11 .body_copy { margin: 0 0 3 0; line-height: 1.3; }
	.body_copy_wrapper_12 .body_copy { line-height: 1.3; }
	.body_copy_wrapper_13 .body_copy { line-height: 1.3; }

	.body_copy_wrapper_1 .body_copy_secondary { display: none; margin: 0 0 8 0; }
	.body_copy_wrapper_2 .body_copy_secondary { display: none; margin: 0 0 8 0; }
	.body_copy_wrapper_3 .body_copy_secondary { display: none; margin: 0 0 8 0; }
	.body_copy_wrapper_11 .body_copy_secondary { display: none; }
	.body_copy_wrapper_12 .body_copy_secondary { display: none; }
	.body_copy_wrapper_13 .body_copy_secondary { display: none; }
	*/

	.body_copy_wrapper_1 .body_copy { margin: 0 0 3 0; line-height: 1.2; }
	.body_copy_wrapper_1 .body_copy_secondary { margin: 0 0 8 0; }
	.body_copy_wrapper_1 .body_copy_secondary { display: none; }
	.body_copy_wrapper_1 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 2; }
	.body_copy_wrapper_1 a:nth-of-type(2) .body_copy_primary > p { -webkit-line-clamp: 1; margin: 0; }
	.body_copy_wrapper_1 a:last-of-type .body_copy_primary { margin: 0; }
	.body_copy_wrapper_1 a:nth-of-type(n+2):nth-of-type(-n+6) { display: none; }

	.body_copy_wrapper_2 .body_copy { margin: 0 0 5 0; line-height: 1.2; }
	.body_copy_wrapper_2 .body_copy_secondary { margin: 0 0 8 0; }
	.body_copy_wrapper_2 .body_copy_secondary { display: none; }
	.body_copy_wrapper_2 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 2; }
	.body_copy_wrapper_2 a:nth-of-type(2) .body_copy_primary > p { -webkit-line-clamp: 2; margin: 0; }
	.body_copy_wrapper_2 a:last-of-type .body_copy_primary { margin: 0; }
	.body_copy_wrapper_2 a:nth-of-type(n+2):nth-of-type(-n+6) { display: none; }

	.body_copy_wrapper_3 .body_copy { margin: 0 0 5 0; line-height: 1.2; }
	.body_copy_wrapper_3 .body_copy_secondary { margin: 0 0 8 0; }
	.body_copy_wrapper_3 .body_copy_secondary { display: none; }
	.body_copy_wrapper_3 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 3; }
	.body_copy_wrapper_3 a:nth-of-type(2) .body_copy_primary > p { -webkit-line-clamp: 2; margin: 0; }
	.body_copy_wrapper_3 a:last-of-type .body_copy_primary { margin: 0; }
	.body_copy_wrapper_3 a:nth-of-type(n+2):nth-of-type(-n+6) { display: none; }

	.body_copy_wrapper_11 .body_copy { margin: 0 0 7 0; line-height: 1.2; }
	.body_copy_wrapper_11 .body_copy_secondary { display: none; }
	.body_copy_wrapper_11 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 2; }
	.body_copy_wrapper_11 a:nth-of-type(2) .body_copy_primary > p { -webkit-line-clamp: 2; margin: 0; }
	.body_copy_wrapper_11 a:last-of-type .body_copy_primary { margin: 0; }
	.body_copy_wrapper_11 a:nth-of-type(n+2):nth-of-type(-n+6) { display: none; }

	.body_copy_wrapper_12 .body_copy { line-height: 1.2; }
	.body_copy_wrapper_12 .body_copy_secondary { display: none; }
	.body_copy_wrapper_12 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 2; margin: 0; }
	.body_copy_wrapper_12 a:last-of-type .body_copy_primary { margin: 0; }
	.body_copy_wrapper_12 a:nth-of-type(n+2):nth-of-type(-n+6) { display: none; }

	.body_copy_wrapper_13 .body_copy { line-height: 1.2; }
	.body_copy_wrapper_13 .body_copy_secondary { display: none; }
	.body_copy_wrapper_13 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 2; margin: 0; }
	.body_copy_wrapper_13 a:last-of-type .body_copy_primary { margin: 0; }
	.body_copy_wrapper_13 a:nth-of-type(n+2):nth-of-type(-n+6) { display: none; }

	.body_copy_wrapper_14 a:nth-of-type(1) .body_copy.body_copy_primary { display: flex; margin: 0; }
	.body_copy_wrapper_14 .body_copy_all_bullet_inline { display: none; }
	.body_copy_wrapper_14 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 4; display: -webkit-box; margin: 0; }
	.body_copy_wrapper_14 a:nth-of-type(n+2):nth-of-type(-n+6) { display: none; }

	/* REQUEST (2026-08-10): the 2026-08-04 "bc_fill" sparse-fill was removed — the
	   body-copy paragraph stays line-locked to the fixed image beside it and never
	   grows to compensate for a low subtitle count (only subtitles are added/
	   removed to fit the right column). The .bc_fill_{N} rules are gone with it. */

	.horizontal_slider_frame { display: flex; flex-direction: column;
								height: 100%;
								height: auto;
								overflow-y: scroll; overflow-x: hidden; scroll-snap-type: y mandatory;
								margin: 5 0 0 0; padding: 0 0 0 24; }
	.horizontal_slider_frame::-webkit-scrollbar { display: none; }
	.horizontal_slider_item { display: flex; flex: 1 0 auto; flex-flow: initial; align-content: start; padding-right: 0px; margin: 0 0 20 0; scroll-snap-align: center; scroll-margin-top: 40px; width: 100%; }
	.horizontal_slider_item_icon { width: unset; margin: 0; }
	/* .horizontal_slider_frame:first-child { padding-left: 0; } */
	.horizontal_slider_frame:last-child { border-right: none; }
	.horizontal_slider_frame .news_block { padding: 0 0 0 0; }
	.section_block .horizontal_slider_item { padding: 0; }

	.phone { display: none; }
	.tablet { display: none; }
	.desktop { display: flex; }
	.all_screens { display: flex; }

	.body_copy_all_bullet_inline { display: inline-block; display: none; }

	.horizontal_slider_frame.top_keywords { display: flex; overflow-x: auto; overflow-y: hidden; scroll-snap-type: x mandatory; cursor: grab; -webkit-overflow-scrolling: touch; }
	.horizontal_slider_frame.top_keywords::-webkit-scrollbar { display: none; }
	.horizontal_slider_frame.top_keywords .horizontal_slider_item { scroll-snap-align: start; flex: 0 0 auto; margin-right: 10px; }

	.trending_icon { position: relative; height: 30px; width: 30px; margin: 0 0 0 -5; align-self: flex-end; }

	.scroll-container-wrapper > .horizontal_slider_frame.top_keywords { margin: 10 0 0 0; }
	.horizontal_slider_frame.top_keywords { flex-direction: row; padding: 0; }
	.horizontal_slider_frame.top_keywords > .horizontal_slider_item { width: unset; margin: 0 0; padding: 10 0 10 0; border: 0; background-color: rgb(230, 230, 230); }
	.horizontal_slider_frame.top_keywords > .horizontal_slider_item:has(.trending_icon) { padding: 10 0 10 10; }
	.horizontal_slider_frame.top_keywords > div:first-of-type { margin: 0 0 0 3%; }
	.horizontal_slider_frame.top_keywords > div:last-of-type > div { margin: 0 3% 0 0; }

	#top_social_content,
	#top_video_content { display: block; width: 100%; }
	.top_social_desktop { 	display: grid !important;
							grid-template-rows: 100%;
							grid-template-columns: 25% 35% 40%; grid-template-columns: 30% 35% 35%;
							grid-template-columns: 25% 25% 25% 25%; grid-template-columns: 1fr 1fr 1fr 1fr;
							gap: 30px;
						}
	.top_social_mobile { display: none; }
	.top_social_desktop .news_block {
										display: flex; flex-direction: column;
										padding-right: 30; padding: 0;
									}
	.top_social_posts { margin: 0 20 0 0; }

	.horizontal_slider_frame.top_social > .horizontal_slider_item { width: 66%; }
	.horizontal_slider_frame.top_social > .horizontal_slider_item { border: none; }
	.horizontal_slider_frame.top_social > .horizontal_slider_item:nth-of-type(1) { margin: 0 10 0 24; }
	.horizontal_slider_frame.top_social > .horizontal_slider_item:last-of-type { width: 71%; padding: 0 24 0 0; }

	.horizontal_slider_frame.top_videos > .horizontal_slider_item { width: 66%; }
	.horizontal_slider_frame.top_videos > .horizontal_slider_item { border: none; }
	.horizontal_slider_frame.top_videos > div:nth-of-type(1) { margin: 0 10 0 24; }
	.horizontal_slider_frame.top_videos > div:last-of-type { width: 71%; padding: 0 24 0 0; }

	.top_videos .video-card h1 {
								margin: 0 0 10 0;
								font-size: 13px; line-height: 1.2;
								min-height: 30px;
								-webkit-line-clamp: 2;
								}

	#top_social_content .title_11,
	#top_video_content .title_11 { margin: 0 0 10 0; }

	.top_social_desktop > .news_block:last-child { padding: 0; }
	.top_social_mobile > div.horizontal_divider:last-child { display: none; }

	#top_video_content .top_social_desktop.latest_mode { grid-template-rows: unset; grid-auto-rows: auto; align-items: start; gap: 10px; }

	#list_of_sources { grid-template-columns: 100% !important; grid-template-areas: "Sources" !important; }
	#list_of_sources > div { grid-area: Sources; }

	.news_wrapper { padding: 25 0 0 0; }
	.news_wrapper:has(.ad_filled_grid) { padding: 0 0 0 0; }

	.list_of_sources > section { margin-top: -10; column-gap: 2rem; }
	.list_of_sources .sources_group { margin: 30 0 0 0; display: flex; flex-wrap: wrap; align-items: center; }
	.sources_category_header { display: block; margin: 0 0 10 0; flex-basis: 100%; }
	.sources_group > .source_article { display: inline-flex; margin: 10 0 0 15; flex:0 0 auto; width:auto !important; white-space:nowrap; }

	.video_channel_pill { display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px 6px 0px; border-radius: 20px; background: rgba(0,0,0,0.05); text-decoration: none; color: inherit; white-space: nowrap; flex: 0 0 auto; }
	.video_channel_pill:hover { background: rgba(0,0,0,0.10); }
	.video_channel_pill_more { padding: 6px 10px; gap: 4px; opacity: 0.7; }
	.video_channel_pill_more:hover { opacity: 1; }
	.video_channel_pill_avatar { width: 28px; height: 28px; border-radius: 50%; object-fit: cover; display: block; }
	.pills_slider_wrap { position: relative; }
	.pills_slider_wrap::before, .pills_slider_wrap::after { content: ''; position: absolute; top: 0; bottom: 0; width: 68px; z-index: 1; pointer-events: none; }
	.pills_slider_wrap::before { left: 0; background: linear-gradient(to right, #fff 38px, transparent); }
	.pills_slider_wrap::after  { right: 0; background: linear-gradient(to left,  #fff 38px, transparent); }
	html[data-theme="dark"] .pills_slider_wrap::before { background: linear-gradient(to right, #1E1E1E 38px, transparent); }
	html[data-theme="dark"] .pills_slider_wrap::after  { background: linear-gradient(to left,  #1E1E1E 38px, transparent); }
	.pills_slider_wrap:has(.pills_nav_prev[data-hidden])::before { display: none; }
	.pills_slider_wrap:has(.pills_nav_next[data-hidden])::after  { display: none; }
	.pills_nav_btn { display: none; position: absolute; top: 46%; transform: translateY(-50%); z-index: 2; width: 38px; height: 38px; border-radius: 50%; background: #fff; border: none; box-shadow: 0 1px 6px rgba(32,33,36,.28); cursor: pointer; align-items: center; justify-content: center; padding: 0; transition: opacity .2s, box-shadow .15s; pointer-events: auto; }
	.pills_nav_btn:hover { box-shadow: 0 2px 8px rgba(32,33,36,.4); }
	.pills_nav_prev { left: 0; }
	.pills_nav_next { right: 0; }
	.pills_nav_btn[data-hidden] { opacity: 0; pointer-events: none; }
	@media screen and (min-width: 686px) { .pills_nav_btn { display: inline-flex; } }


	.photos_grid {
		display: grid;
		grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
		gap: 1px;
	}
	.top_videos.photos_grid { grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); gap: 30px; row-gap: 10px; }
	.videos_only_wrapper { padding: 0; }
	.videos_only_wrapper .section_block_header .title_11 { margin: 5px 0px 15px 0px; }
	.video_pills_deadend { width: 100%; flex-direction: column; margin: 10px 0 10px 0;}
	.video_pills_deadend .horizontal_slider_frame { flex-direction: row; margin: 15px 0 0 0; padding: 0; scroll-snap-type: none; }
	.video_pills_slider { margin: 0 0 0 0; padding: 0 0 0 0; gap: 0; }
	.video_pills_slider .horizontal_slider_item { width: fit-content; padding: 0; margin: 0 10px 0 0; border: none; }
	.video_pills_slider div:first-of-type { width: unset; }
	.video_pills_slider div:last-of-type { width: unset; padding-right: 10px; }

	.phone.photos_grid { display: none; }
	.tablet.photos_grid { display: none; }
	.desktop.photos_grid { display: grid; }

	.photo_tile {
		position: relative;
		/* border-radius: 10px; */
		overflow: hidden;
		cursor: pointer;
		background: rgba(0,0,0,0.03);
	}
	.photo_tile img {
		width: 100%;
		height: 220px;
		object-fit: cover;
		display: block;
	}
	/* Extra top-photos candidates held out of layout; the client promotes one
	   (removes this class) when a visible photo fails to load. */
	.photo_tile_reserve { display: none; }
	/* REQUEST (2026-07-31): on the phone slider the reserve tiles are wrapped in
	   horizontal_slider_items (2 tiles/item), so display:none-ing the tiles leaves
	   the item wrappers as empty ~400px swipe-slots. Hide any phone slider item
	   that holds no visible (non-reserve) tile. The resilience JS un-reserves a
	   tile when backfilling, which flips :has() and reveals its item automatically.
	   (Desktop/tablet is fine: reserve tiles are direct grid children there.)
	   REQUEST (2026-08-03): the last mobile photo lost its "show more" overlay.
	   Cause: this hide rule used a descendant combinator, so it also matched the
	   show-more icon's OWN nested .horizontal_slider_item (which has no .photo_tile)
	   and display:none'd it. Scope to the direct-child swipe-slots (all it ever
	   meant to hide) with `>`, so the nested show-more icon stays visible. */
	#top_photos_content .horizontal_slider_frame.phone > .horizontal_slider_item:not(:has(.photo_tile:not(.photo_tile_reserve))) { display: none; }
	.photo_title_overlay {
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		padding: 10px 10px 12px 10px;
		font-size: 13px;
		line-height: 1.2;
		background: linear-gradient(
										to top,
										rgba(0,0,0,0.8) 0%,
										rgba(0,0,0,0.35) 75%,
										rgba(0,0,0,0.0) 100%
									);
		pointer-events: none;
	}
	.photo_title_text {
		color: white;
		text-shadow: 0 1px 3px rgba(0,0,0,0.6);
		line-height: 1.1;
		opacity: 0.7;
	}
	.photo_spacer { width: 100%; }
	.photos_loading { padding: 12px 0; opacity: 0.8; font-size: 14px; }

	.photo_tile_dbg_index {
		position: absolute;
		width: unset;
		top: 6px;
		right: 6px;
		z-index: 5;
		padding: 2px 6px;
		border-radius: 10px;
		font-size: 12px;
		line-height: 1.2;
		background: rgba(0,0,0,.55);
		color: #fff;
		pointer-events: none;
	}

	.photo_tile_dbg_clicks {
		position: absolute;
		width: unset;
		top: 6px;
		left: 6px;
		z-index: 5;
		padding: 2px 6px;
		border-radius: 10px;
		font-size: 12px;
		line-height: 1.2;
		background: rgba(0,0,0,.55);
		color: #fff;
		pointer-events: none;
	}

	.photo_tile_dbg_categories {
		position: absolute;
		width: unset;
		top: 30px;
		left: 6px;
		z-index: 5;
		padding: 2px 6px;
		border-radius: 10px;
		font-size: 12px;
		line-height: 1.2;
		background: rgba(0,0,0,.55);
		color: #fff;
		pointer-events: none;
	}

	.photo_tile .horizontal_slider_item_icon { width: 100%; height: 100%; }
	.photo_tile .horizontal_slider_item_icon.fill { position:absolute; width:100%; height:100%; }
	#top_photos_content .horizontal_slider_frame .horizontal_slider_item_icon { height:100%; }

	.photo_tile.is-loading img { opacity:.15; }
	.photo_tile.is-error img { opacity:.20; filter: grayscale(1); }
	.photo_tile.is-error::after { 	content:"IMAGE ERROR"; position:absolute; inset:auto 6px 6px 6px; padding:4px 6px;
									border-radius:10px; background:rgba(180,0,0,.7); color:#fff; font-size:12px; line-height:1.2;
									pointer-events:none; }
	.photo_tile_spinner { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; pointer-events:none; }
	.photo_tile_spinner_ring {
								width:28px; height:28px;
								border-radius:50%; border:3px solid rgba(0,0,0,.15);
								border-top-color: rgba(0,0,0,.65);
								animation: photoSpin .8s linear infinite;
							}
	@keyframes photoSpin { to{ transform:rotate(360deg); } }



	/* Scroll.mk modifications START */
	/* ==============================*/

	h1 a:hover,
	h2 a:hover {	color: rgb(0,124,187);
	 				color: #0066CC;
					cursor: pointer;
				}

	.header_menu_whole > a:first-child .header_menu_item { padding-left:0; }
	.header_menu_whole > a:last-child .header_menu_item { padding-right:0; }
	.header_menu_whole a:last-of-type > .header_menu_item { padding-right: 0; }
	.header_menu_whole { 	/* border-top: 1px solid black; */ padding-top: 1px;
							width: fit-content;
							/* width: -webkit-fill-available; */
						}
	#header_menu_whole { border: 0; }
	.no_border { border: 0; }

	.horizontal_slider_item:has(> p.header_menu_info_time) { margin-left: 20px; border: 0; }
	.horizontal_slider_item:has(> p.header_menu_info_time)::before { content: none; }
	.header_menu_item:has(> p.header_menu_info_time) { margin-left: 20px; border: 0; }
	.header_menu_item:has(> p.header_menu_info_time)::before { content: none; }

	.header_menu_item.is-active-parent p { border-bottom: 2px solid green; font-weight:600; }
	.header_menu_item.is-active-leaf p { border-bottom: 2px solid red; }

	.news_wrapper { overflow: initial; }
	.news_wrapper.search_results_wrapper .level_3 { padding: 15 0 35 0;
													padding: 15 0 0 0;
													border-bottom: 1px solid rgb(226, 226, 226); }
	.news_wrapper.search_results_wrapper .ad_filled_grid { border-bottom: 1px solid rgb(226, 226, 226); }
	/* The ad_filled_grid's bottom border separates it from the result grids
	   below; when the query returns only the top block (no search_block_v2
	   follows), that border is a dangling line with nothing under it — drop it. */
	.news_wrapper.search_results_wrapper .ad_filled_grid:not(:has(~ .search_block_v2)) { border-bottom: none; }

	/* Search stream: photos-style windowed loading inside section_subblock_4.
	   Spacers are <span>s so div:first-of-type item styling stays on the first
	   real item; prop items host the reused photo_tile_spinner while a page
	   of results is being fetched. Manual scroll anchoring on prepend needs
	   the browser's own anchoring off. */
	.search_results_wrapper .section_subblock_4 .horizontal_slider_frame { overflow-anchor: none; }
	.search_stream_spacer { display: block; width: 100%; flex: 0 0 auto; padding: 0 !important; margin: 0 !important; border: 0 !important; }
	.horizontal_slider_item.search_result_prop { position: relative; min-height: 120px; }

	.ad_filled_grid { margin: 0; }
	.section_block { margin: 0; }
	.section_block_header { padding: 0; }

	.level_1,
	.level_2,
	.level_3,
	.level_11,
	.level_12,
	.level_13,
	.section_subblock_4 .horizontal_slider_item { border: none !important; }

	.section_subblock_4 .horizontal_slider_item a.horizontal_slider_item_icon {
									border-bottom: none;
									/* REQUEST (2026-07-29): no padding bottom on the section_subblock_4 item icon (was 25px). Dark override below zeroed to match. */
									padding-bottom: 0px;
								}
	.section_subblock_4 .horizontal_slider_item:has(a.horizontal_slider_item_icon){
									margin-bottom: 75px;
									margin-bottom: 1px;
									padding-bottom: 0px;
									border-bottom: 2px solid rgb(80,80,80);
								}
	
	.level_1 .news_block:not(:has(.news_block_text_1000)) {
							display: grid;
							height: fit-content;
							grid-template-columns: 30% auto;
							grid-template-rows: auto auto;
							grid-template-areas: "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "images subtitles" "images sources";
							gap: 10px;
							margin-top: -10;
						}
	.level_1 .news_block .image_wrapper { width: unset; }
	.level_1 .news_block .sources_bar { /* padding: 0px 0px 0px 20px; */ padding: 0; }

	.level_2 .news_block{
							display: grid;
							height: fit-content;
							grid-template-columns: 30% auto;
							grid-template-rows: auto auto;
							grid-template-areas: "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "images subtitles" "images sources";
							gap: 10px; /* REQUEST (2026-08-13): level_2 top margin removed (was margin-top:-10) */
						}
	.level_2 .news_block .image_wrapper { width: unset; }
	.level_2 .news_block .sources_bar { /* padding: 0px 0px 0px 20px; */ padding: 0; }

	.level_3 .news_block{
							display: grid;
							height: fit-content;
							grid-template-columns: 30% auto;
							grid-template-rows: auto auto;
							grid-template-areas: "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "images subtitles" "images sources";
							gap: 10px; /* REQUEST (2026-08-14): level_3 top margin removed (was margin-top:-10) */
						}
	.level_3 .news_block .image_wrapper { width: unset; }
	.level_3 .news_block .sources_bar { /* padding: 0px 0px 0px 20px; */ padding: 0; }

	.level_11 .news_block{
							display: grid;
							height: fit-content;
							grid-template-columns: 30% auto;
							grid-template-rows: auto auto;
							grid-template-areas: "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "images subtitles" "sources sources";
							gap: 7px;
						}
	.level_11 .news_block .image_wrapper { width: unset; }
	.level_11 .news_block .sources_bar { /* padding: 0px 0px 0px 20px; */ padding: 0; }

	.level_12 .news_block{
							display: grid;
							height: fit-content;
							grid-template-columns: 30% auto;
							grid-template-rows: auto auto;
							grid-template-areas: "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "images subtitles" "sources sources";
							gap: 7px;
						}
	.level_12 .news_block .image_wrapper { width: unset; }
	.level_12 .news_block .sources_bar { /* padding: 0px 0px 0px 20px; */ padding: 0; }

	.level_13 .news_block{
							display: grid;
							height: fit-content;
							grid-template-columns: 30% auto;
							grid-template-rows: auto auto;
							grid-template-areas: "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "images subtitles" "sources sources";
							gap: 7px;
						}
	.level_13 .news_block .image_wrapper { width: unset; }
	.level_13 .news_block .sources_bar { /* padding: 0px 0px 0px 20px; */ padding: 0; }

	.section_subblock_4	{
							/* REQUEST (2026-07-29): make the third box grow to full content height instead
							   of matching the left column with an internal vertical scroll — un-cap height +
							   drop size containment (contain:size was what kept the tall list from expanding
							   the box). Scoped frame-overflow + scroll-fade kills below. Note: the box no
							   longer height-aligns with the left column, and its content now grows the shared
							   grid rows. Mirrors the existing phone-breakpoint recipe (fit-content/contain:unset). */
							height: fit-content !important;
							contain: unset;
							display: flex;
						}
	/* Non-scrollable: turn off the frame's vertical scroll + snap (scoped, so other
	   horizontal_slider_frames keep their base overflow), and disable the scroll-fade
	   pseudo-elements (JS also skips .has-more when not scrollable, so this is belt+braces).
	   REQUEST (2026-07-30): restore mobile slider scroll-snap. This rule (from
	   8a920f1ac, "section_subblock_4 grow to full height") was unscoped, so its
	   scroll-snap-type:none (specificity 0,2,0) beat the generic mobile
	   `.horizontal_slider_frame { scroll-snap-type: x mandatory }` and killed
	   snap on phone. It only ever meant the desktop/tablet column layout, so
	   scope it to min-width:561px; phone keeps horizontal snap (as on Main). */
	@media screen and (min-width: 561px) {
		.section_subblock_4 .horizontal_slider_frame { overflow-y: visible; height: auto; scroll-snap-type: none; }
	}
	.section_subblock_4::before,
	.section_subblock_4::after { content: none !important; }

	.section_subblock_4 .news_block {
							display: grid;
							height: fit-content;
							grid-template-columns: 25% auto;
							grid-template-rows: auto auto;
							grid-template-areas: "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "subtitles subtitles" "sources sources";
							gap: 7px;
						}
	.section_subblock_4 .news_block .image_wrapper { width: unset; }
	.section_subblock_4 .news_block .sources_bar { /* padding: 0px 0px 0px 20px; */ padding: 0; }

	/* REQUEST (2026-08-11): drop the reserved "subtitle_freshest" first row on any
	   index-column news_block that did NOT render a freshest subtitle. Multi-article
	   blocks routinely suppress the freshest H2 (html_index_block gate: newest already
	   shown as the H1 / a subtitle), yet the static per-level grids above still reserve
	   that row — an empty first row that costs one row-gap (7px) of spurious top gutter,
	   visible especially in section_subblock_4 right-column blocks. This mirrors the
	   2026-08-05 search-stream rule (.search_item_v2 .news_block:not(:has(.subtitle_freshest))).
	   :not()/:has() inherit their argument's specificity, so each selector is (0,3,0) —
	   it beats the (0,2,0) base grid without !important, and the size-1
	   .single_article_cluster !important rule still owns the single-article case. */
	.level_11 .news_block:not(:has(.subtitle_freshest)),
	.level_12 .news_block:not(:has(.subtitle_freshest)),
	.level_13 .news_block:not(:has(.subtitle_freshest)) {
							grid-template-areas: "title title" "images bodycopy" "images subtitles" "sources sources";
						}
	.section_subblock_4 .news_block:not(:has(.subtitle_freshest)) {
							grid-template-areas: "title title" "images bodycopy" "subtitles subtitles" "sources sources";
						}
	/* REQUEST (2026-08-13): same freshest-row drop for the level_1/2/3 blocks
	   (dead-end / search-results top-3). They too suppress the freshest H2 on
	   multi-article clusters, leaving an empty reserved first row. Their desktop
	   canon keeps the image spanning DOWN through both the subtitles AND the
	   sources rows ("images subtitles" / "images sources" — unlike level_11/12/13
	   which drop to "sources sources"), so preserve that; drop ONLY the freshest
	   row. level_1 keeps its :not(:has(.news_block_text_1000)) guard so the giant
	   lead block (its own layout) is untouched. */
	.level_1 .news_block:not(:has(.news_block_text_1000)):not(:has(.subtitle_freshest)),
	.level_2 .news_block:not(:has(.subtitle_freshest)),
	.level_3 .news_block:not(:has(.subtitle_freshest)) {
							grid-template-areas: "title title" "images bodycopy" "images subtitles" "images sources";
						}

	/* REQUEST (2026-08-12): day-label row. When a block carries a .day_label_bar
	   (only the first index_day_labels_count clusters of an opted-in section),
	   prepend a full-width "day" row at the very TOP — the mirror of the "sources"
	   row at the bottom. Twins of the four grids above (with/without the reserved
	   subtitle_freshest row); MUST sit after them so equal/greater specificity +
	   source order win. :has(.day_label_bar) => (0,3,0) beats the (0,2,0) base;
	   the :not(:has(.subtitle_freshest)) twin => (0,4,0) beats the (0,3,0)
	   freshest-drop rule. Blocks without a .day_label_bar are untouched (no empty
	   row, no gap shift). */
	.level_11 .news_block:has(.day_label_bar),
	.level_12 .news_block:has(.day_label_bar),
	.level_13 .news_block:has(.day_label_bar) {
							grid-template-areas: "day day" "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "images subtitles" "sources sources";
						}
	.level_11 .news_block:has(.day_label_bar):not(:has(.subtitle_freshest)),
	.level_12 .news_block:has(.day_label_bar):not(:has(.subtitle_freshest)),
	.level_13 .news_block:has(.day_label_bar):not(:has(.subtitle_freshest)) {
							grid-template-areas: "day day" "title title" "images bodycopy" "images subtitles" "sources sources";
						}
	.section_subblock_4 .news_block:has(.day_label_bar) {
							grid-template-areas: "day day" "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "subtitles subtitles" "sources sources";
						}
	.section_subblock_4 .news_block:has(.day_label_bar):not(:has(.subtitle_freshest)) {
							grid-template-areas: "day day" "title title" "images bodycopy" "subtitles subtitles" "sources sources";
						}
	/* Dead-end / search-results page top-3 renders at level_1/2/3, whose desktop
	   grid keeps sources BESIDE the image ("images sources"). Day twin (with the
	   reserved freshest row) + no-freshest day twin (2026-08-13: level_1/2/3 also
	   suppress the freshest H2, so this variant now exists — (0,4,0) beats the
	   plain freshest-drop and the plain day rule). */
	.level_1 .news_block:has(.day_label_bar),
	.level_2 .news_block:has(.day_label_bar),
	.level_3 .news_block:has(.day_label_bar) {
							grid-template-areas: "day day" "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "images subtitles" "images sources";
						}
	.level_1 .news_block:has(.day_label_bar):not(:has(.subtitle_freshest)),
	.level_2 .news_block:has(.day_label_bar):not(:has(.subtitle_freshest)),
	.level_3 .news_block:has(.day_label_bar):not(:has(.subtitle_freshest)) {
							grid-template-areas: "day day" "title title" "images bodycopy" "images subtitles" "images sources";
						}

	.level_1 { padding: 25 0 15 0; }
	.level_2 { padding: 15 0 15 0; width: 100%; border-bottom: 1px solid rgb(226, 226, 226); }
	.level_3 { padding: 15 0 0 0; width: 100%; border: none; }

	.section_subblock_1 { width: 100%; }
	.section_subblock_2 { width: 100%; }
	.section_subblock_4 { width: 100%; height: 650px; position: relative; }
	.section_block {
						display: grid;
						height: fit-content;
						grid-template-columns: 55% auto;
						grid-template-rows: auto;
						grid-template-areas: 	"level_11 section_subblock_4"
												"level_12 section_subblock_4"
												"level_13 section_subblock_4";
						gap: 10px;
					}

	.announcement_wrapper .section_block { display: flex; }

	.section_block .section_subblock_1,
	.section_block .section_subblock_2 { display: contents; }

	.section_subblock_1,
	.section_subblock_2,
	.section_subblock_4 { border: 0; margin: 0; padding: 0; }

	.section_subblock_4 { border-left: 1px solid rgb(226, 226, 226); }

	.level_11 { border-bottom: 1px solid rgb(226, 226, 226); margin: 0 0 0 0; padding: 0 15 10 0; }
	.level_12 { border-bottom: 1px solid rgb(226, 226, 226); margin: 0 0 0 0; padding: 15 15 10 0; }
	.level_13 { border: 0; margin: 0 0 0 0; padding: 15 15 0 0; }
	.section_subblock_4 .horizontal_slider_item { border-bottom: 1px solid rgb(226, 226, 226); margin: 0; padding: 10 0 10 0; }
	.section_subblock_4 .horizontal_slider_frame > div:first-of-type { padding: 0 0 10 0; }
	.section_subblock_4 .horizontal_slider_frame:has(.single_article_cluster) > div:first-of-type { /* padding: 0 0 20 0; */ }
	/* REQUEST (2026-08-12): last item of the v2 right column should sit flush at
	   the bottom (aligned with the left column). The 5px bottom margin was a v1
	   leftover; in the v2 space-between flex column it pushed the last item up 5px
	   off the column's bottom edge. Zeroed. */
	.section_subblock_4 .horizontal_slider_frame:has(.single_article_cluster) > div:last-of-type { margin: 0 0 0 0; }

	.section_subblock_4 .horizontal_slider_item:has(.single_article_cluster) { /* padding: 10 0 20 0; */ }

	.title_1 { font-size: 24px; }

	.title_1,
	.title_2,
	.title_3 { margin: 0 0 -4 0; }
	.title_11,
	.title_12,
	.title_13 { margin: 0 0 -2 0; }
	.title_14 { margin: 0; }

	.subtitles_1 { /* Scroll.mk modifications */ padding: 0; border: 0; margin: 0; }
	.subtitles_2 { /* Scroll.mk modifications */ padding: 0; border: 0; margin: 0; }
	.subtitles_3 { /* Scroll.mk modifications */ padding: 0; border: 0; margin: 0; }
	.subtitles_4 { /* Scroll.mk modifications */ padding: 0; border: 0; margin: 0; }
	.subtitles_5 { /* Scroll.mk modifications */ padding: 0; border: 0; margin: 0; }
	.subtitles_6 { /* Scroll.mk modifications */ padding: 0; border: 0; margin: 0; }
	.subtitles_11 { /* Scroll.mk modifications */ padding: 0; border: 0; margin: 0; }
	.subtitles_12 { /* Scroll.mk modifications */ padding: 0; border: 0; margin: 0; }
	.subtitles_13 { /* Scroll.mk modifications */ padding: 0; border: 0; margin: 0; }
	.subtitles_14 { /* Scroll.mk modifications */ padding: 0; border: 0; margin: 0; }

	.subtitle_1 { font-size: 13px; }
	.subtitle_1,
	.subtitle_2,
	.subtitle_3,
	.subtitle_11,
	.subtitle_12,
	.subtitle_13,
	.subtitle_14 { margin: 1 0 0 0; letter-spacing: -0.025em; font-weight: 600; color: rgb(100,100,100); }

	.subtitles_1 li:nth-of-type(1) { display: list-item; }
	.subtitles_2 li:nth-of-type(1) { display: list-item; }
	.subtitles_3 li:nth-of-type(1) { display: list-item; }
	.subtitles_11 li:nth-of-type(1) { display: list-item; }
	.subtitles_12 li:nth-of-type(1) { display: list-item; }
	.subtitles_13 li:nth-of-type(1) { display: list-item; }
	.subtitles_14 li:nth-of-type(1) { display: list-item; }

	.subtitles_1 li:nth-of-type(2) { display: list-item; }
	.subtitles_2 li:nth-of-type(2) { display: list-item; }
	.subtitles_3 li:nth-of-type(2) { display: list-item; }
	.subtitles_11 li:nth-of-type(2) { display: list-item; }
	.subtitles_12 li:nth-of-type(2) { display: list-item; }
	.subtitles_13 li:nth-of-type(2) { display: list-item; }
	.subtitles_14 li:nth-of-type(2) { display: list-item; }

	.subtitles_1 li:nth-of-type(3) { display: list-item; }
	.subtitles_2 li:nth-of-type(3) { display: list-item; }
	.subtitles_3 li:nth-of-type(3) { display: list-item; }
	.subtitles_11 li:nth-of-type(3) { display: list-item; }
	.subtitles_12 li:nth-of-type(3) { display: list-item; }
	.subtitles_13 li:nth-of-type(3) { display: list-item; }
	.subtitles_14 li:nth-of-type(3) { display: list-item; }

	.image_wrapper_1 { height: 164px; min-height: 0px; margin: 0; }
	.image_wrapper_2 { height: 164px; min-height: 0px; margin: 0; }
	.image_wrapper_3 { height: 164px; min-height: 0px; margin: 0; }
	.image_wrapper_11 { height: 129px; min-height: 0px; margin: 0; }
	.image_wrapper_12 { height: 129px; min-height: 0px; margin: 0; }
	.image_wrapper_13 { height: 129px; min-height: 0px; margin: 0; }
	.image_wrapper_14 { height: 88px; min-height: 0px; margin: 0; }

	.body_copy_wrapper_11 { margin: 0px 0px 0px 0px; }
	.body_copy_wrapper_12 { margin: 0px 0px 0px 0px; }
	.body_copy_wrapper_13 { margin: 0px 0px 0px 0px; }

	.body_copy_wrapper_1 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 3; }
	.body_copy_wrapper_2 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 3; }
	.body_copy_wrapper_3 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 3; }
	.body_copy_wrapper_11 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 3; }
	.body_copy_wrapper_12 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 3; }
	.body_copy_wrapper_13 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 3; }
	.body_copy_wrapper_14 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 4; }

	.body_copy_wrapper_1 .body_copy_primary { margin: 0; }
	.body_copy_wrapper_2 .body_copy_primary { margin: 0; }
	.body_copy_wrapper_3 .body_copy_primary { margin: 0; }
	.body_copy_wrapper_11 .body_copy_primary { margin: 0; }
	.body_copy_wrapper_12 .body_copy_primary { margin: 0; }
	.body_copy_wrapper_13 .body_copy_primary { margin: 0; }
	.body_copy_wrapper_14 .body_copy_primary { margin: 0; line-height: 1.2; }

	.level_1 .sources_bar { margin: 0; }
	.level_2 .sources_bar { margin: 0; }
	.level_3 .sources_bar { margin: 0; }
	.level_11 .sources_bar { margin: 0; }
	.level_12 .sources_bar { margin: 0; }
	.level_13 .sources_bar { margin: 0; }
	.level_14 .sources_bar { margin: 0; }

	.news_block .show_source h2.subtitle_1 .source_article_body { padding: 0px 0px 0px 10px; bottom: 0; }

	.source_article_on_top_of_body_text { display: none; }
	/* Override showing of source at the end of the title, on desktop too */
	.source_article_on_top_of_body_text { 	display: block; position: relative !important;
											width: 100%; border-bottom: 1px solid #0066CC;
											padding: 0 0 5 0 !important; margin: 0 0 5 0 !important;
										}
	.source_article_on_top_of_body_text time { float: left; }
	h1 .source_article_in_title { display: none !important; }

	.article_wrapper .main_title h1 .source_article_in_title { display: inline !important; }

	/* REQUEST (2026-08-04): the empty subtitle_freshest row is now dropped from
	   the single-cluster template, so its -10px top-gutter compensation is no
	   longer needed. Zero it (must stay explicit — the per-level base grids set
	   margin-top:-10 at (0,3,0)/(0,2,0), which would otherwise re-apply here). */
	.level_1 .news_block.single_article_cluster,
	.level_2 .news_block.single_article_cluster,
	.level_3 .news_block.single_article_cluster { margin-top: 0; /* was -10px */ }
	.level_1 .news_block.single_article_cluster .body_copy > p,
	.level_2 .news_block.single_article_cluster .body_copy > p,
	.level_3 .news_block.single_article_cluster .body_copy > p { -webkit-line-clamp: 10; }
	.section_subblock_1 .news_block.single_article_cluster,
	.section_subblock_2 .news_block.single_article_cluster { /* margin-bottom: -30px; grid-template-columns: 17%; padding-right: 15px; */ }
	.section_subblock_1 .news_block.single_article_cluster .image_wrapper,
	.section_subblock_2 .news_block.single_article_cluster .image_wrapper { /* height: 65px; */ }
	.section_subblock_4 .news_block.single_article_cluster { /* margin-bottom: -10px removed 2026-07-31 */ }
	.section_subblock_4 .news_block.single_article_cluster .image_wrapper { /* height: 65px; */ }

	/* REQUEST (2026-08-04): the per-scope single-cluster grid-template-areas
	   override that used to live here is removed — a single global !important
	   rule (.news_block.single_article_cluster, further below) now owns the
	   single-cluster template for every context. */

	.level_11 .news_block.single_article_cluster,
	.level_12 .news_block.single_article_cluster { margin: 0 0 0 0; }
	.level_13 .news_block.single_article_cluster { margin: 0 0 0 0; }

	/* REQUEST (2026-08-01): level_1-3 and level_11-13, when their child is a
	   single_article_cluster, should have padding-bottom: 0 (drop the level's
	   own bottom padding for lone-article blocks).
	   REQUEST (2026-08-13): EXCLUDE level_1 — the giant lead block keeps its
	   bottom padding even for a lone article.
	   REQUEST (2026-08-14): ALSO EXCLUDE level_2 — it keeps its bottom padding
	   for a lone article too. */
	.level_3:has(.single_article_cluster),
	.level_11:has(.single_article_cluster),
	.level_12:has(.single_article_cluster),
	.level_13:has(.single_article_cluster) { padding-bottom: 0; }

	.news_block.single_article_cluster .body_copy_primary > p { -webkit-line-clamp: 4 !important; }
	/* REQUEST (2026-07-31): in related-articles, single-article blocks were
	   forced to 4 lines by the rule above (!important), overriding the related
	   3-line clamp (.body_copy_wrapper_11 a:nth-of-type(1) …). Restore 3 there
	   with a higher-specificity (0,4,1) + !important related-scoped rule. */
	.related_articles_block .news_block.single_article_cluster .body_copy_primary > p { -webkit-line-clamp: 3 !important; }
	.level_1 .news_block.single_article_cluster .body_copy_primary > p,
	.level_2 .news_block.single_article_cluster .body_copy_primary > p,
	.level_3 .news_block.single_article_cluster .body_copy_primary > p { -webkit-line-clamp: 9 !important; }
	.level_11 .news_block.single_article_cluster .body_copy_primary > p,
	.level_12 .news_block.single_article_cluster .body_copy_primary > p,
	.level_13 .news_block.single_article_cluster .body_copy_primary > p { -webkit-line-clamp: 6 !important; }

	.title_14 { display: block; font-size: 13px; -webkit-line-clamp: 2; }
	.subtitles_14  { display: block; }

	.title_12,
	.title_13 { font-size: 18px; }

	.news_box_body_copy_1,
	.news_box_body_copy_2,
	.news_box_body_copy_3,
	.news_box_body_copy_11,
	.news_box_body_copy_12,
	.news_box_body_copy_13,
	.news_box_body_copy_14 { letter-spacing: -0.2; }
	
	.horizontal_slider_frame .horizontal_slider_item:last-of-type > a { width: 100%; }

	.section_subblock_4::before {
									content:'';
									position:absolute; left:0; bottom:0;
									width:100%; height:50px;
									pointer-events:none;
									z-index:11;

									/* 2) triangle fade: transparent → grey */
									background:
										linear-gradient(
											to bottom,
											rgba(140,140,140,0),
											rgba(140,140,140,0.95)
										);

									clip-path:polygon(0 0, 100% 0, 50% 100%);
								}

	.section_subblock_4::after {
								content: '';
								position: absolute;
								bottom: 0;
								width: 100%;
								height: 50px;
								background: linear-gradient(to bottom, transparent, #fff 100%);
								pointer-events: none;
								z-index: 10;
							}

	.section_subblock_4::after {
								content:'';
								position:absolute; left:0; bottom:0;
								width:100%; height:100px;
								pointer-events:none;
								z-index:10;

								/* 1) rectangular fade: transparent → white */
								background: linear-gradient(
									to bottom,
									rgba(255,255,255,0) 0%,
									rgba(255,255,255,0.5) 30%,
									rgba(255,255,255,1) 100%
								);
								/* allow layering */
								mask: none;
							}

	/* Default: hidden (covers "no more content") */
	.section_subblock_4::before,
	.section_subblock_4::after { opacity: 0; pointer-events: none; transition: opacity 160ms ease; }

	/* Visible ONLY when there is more content and we are not at the end */
	.section_subblock_4.has-more:not(.is-at-end)::before,
	.section_subblock_4.has-more:not(.is-at-end)::after { opacity: 1; }


	.related_articles_block .news_block h1 { line-height: 1.1; margin: 5 0 5 0; min-height: calc(1.1em * 3); }
	.related_articles_block .horizontal_slider_item .news_block {
							display: grid;
							height: 100%;
							min-height: 0;
							grid-template-columns: 100%;
							grid-template-areas: "images" "title" "bodycopy" "subtitles" "sources";
							grid-template-rows: auto auto auto minmax(0, 1fr) auto;
							gap: 8px;
						}

	/* REQUEST (2026-08-04): the global !important .news_block.single_article_cluster
	   rule forces a 2-column "images bodycopy" template — correct for the index /
	   search blocks (2-col grids) but WRONG for related-article cards, which are a
	   single 100%-width column (image on top, text stacked below). That 2-col
	   template references a second column track this grid doesn't have, so the areas
	   break and the card collapses. Related cards also never carried a
	   subtitle_freshest row, so the global rule has nothing to fix here. Re-assert
	   the vertical template for single-article related cards; (0,4,0)+!important wins
	   back over the global (0,2,0)+!important rule. */
	.related_articles_block .horizontal_slider_item .news_block.single_article_cluster {
							grid-template-areas: "images" "title" "bodycopy" "subtitles" "sources" !important;
						}

	/* REQUEST (2026-08-02): related-article blocks don't grow to the tallest neighbour on
	   desktop/tablet (they do on mobile). Root cause: here .horizontal_slider_item is
	   display:block, so equalisation hinges on the grid block's `height:100%` resolving
	   against the flex-stretched item. Safari/WebKit (real tablets + desktop Safari) treat
	   a stretched flex-item's height as INDEFINITE for a %-height child, so `height:100%`
	   collapses to content and short blocks stay short. Mobile escapes this only because
	   there the item is display:flex and the block stretches as a flex child (no %).
	   Fix: mirror the mobile path — make the item a flex column and let the grid block grow
	   to the (frame-stretched) item height via flex-grow, eliminating the %-height chain.
	   Verified: reproduces the collapse when %-height is forced to auto, and this rule
	   restores equal heights with no width change. */
	.related_articles_block .horizontal_slider_item { display: flex; flex-direction: column; }
	.related_articles_block .horizontal_slider_item > .news_block { flex: 1 1 auto; }

	.ad_sections_top { margin: 10px 0px 10px 0px; }

	.list_of_sources section,
	section.list_of_sources { padding: 0 0 15px 0; }
	
	/* ==============================*/
	/* Scroll.mk modifications END */
	
	@media screen and (max-width: 1050px) {
		.display_format { --format: 1; }

		.desktop { display: none; }
		.phone { display: none; }
		.tablet { display: flex; }
		.all_screens { display: flex; }

		.phone.photos_grid { display: none; }
		.desktop.photos_grid { display: none; }
		.tablet.photos_grid { display: grid; }
		
		.announcement_wrapper { width: 100%; margin: 0 auto; }
		.announcement_wrapper .section_block { display: flex; flex-direction: row; flex-wrap: wrap; }

		.section_block { width: fit-content;
						/* height: 413px; */
						display: grid; grid-template-columns: 23.6% 5.58% 9.02% 61.8%;
						grid-template-rows: 66% 34%;
						grid-template-areas: "A A A B" "A A A C"; }
		/* .news_wrapper > div:nth-of-type(2) { height: fit-content; display: flex; flex-direction: row; flex-wrap: wrap; } */
		.news_wrapper .section_block:has(.level_2):has(.level_3) { width: 100%; height: fit-content; display: flex; flex-direction: row; flex-wrap: wrap; }
		.news_wrapper .section_block:first-of-type { height: fit-content; display: flex; flex-direction: row; flex-wrap: wrap; }

		.section_subblock_1 { grid-area: A; width: 100%; height: fit-content; }
		.section_subblock_2 { grid-area: B; height: fit-content; display: flex; flex-direction: row; flex-wrap: nowrap; width: auto; /* margin: 0 0 15 25 removed on 9.9.24; margin: 0 0 15 0; removed on 8.6.2025 */ margin: 0 0 0 0; }
		.section_subblock_4 { grid-area: C; width: 100%; height: fit-content; border-left: none; border-top: 1px solid rgb(226, 226, 226); /* margin: 0 0 0 25; removed on 9.9.24 */ margin: 0 0 0 0; padding: 20 0 0 0; }

		.section_subblock_4 .level_14:last-of-type { margin: 0; }

		.news_wrapper { width: auto; margin: 0 3%; }

		.level_2 { width: 60%; }
		.level_3 { width: 40%; }
		.level_12 { width: 54%; margin: 0 0 0 0; padding: 0 20 0 20; }
		.level_13 { width: 46%; margin: 0 0 0 0; padding: 0 0 0 20; border-left: 1px solid rgb(226, 226, 226); }
		.level_14 { margin: 0px 0px 28px 0px; padding: 0px 0px 0px 0px; width: 100%; line-height: 1.2; }

		.level_2 .news_block { flex-flow: row wrap; }
	
		.news_block_text_2 { padding: 0; }
		.news_block_text_14 { margin: 0; }

		.title_1 { -webkit-line-clamp: 3; }
		.title_2 { -webkit-line-clamp: 2; }
		.title_3 { -webkit-line-clamp: 3; }
		.title_11 { -webkit-line-clamp: 3; margin: 0 0 0 0; }
		.title_12 { -webkit-line-clamp: 3; margin: 0 0 6 0; }
		.title_13 { -webkit-line-clamp: 3; margin: 0 0 6 0; }
		.title_14 { display: -webkit-box; -webkit-line-clamp: 3; margin: 0 0 5 0; font-weight: 800; }

		.image_wrapper_2 { height: 140px; width: 100%; margin: 0 0 10 0; align-items: unset; }
		.image_wrapper_2 .golden_ratio_image_container { grid-template-columns: 61.8% 9.02% 5.58% 23.6%; grid-template-areas: "A B B B" "A C C C" "A C C C" "A C C C"; }
		.image_wrapper_3 { height: 140px; }
		.image_wrapper_11 { height: 100px; }
		.image_wrapper_12 { height: 90px; margin: 0 0 7 0; }
		.image_wrapper_13 { height: 80px; margin: 0 0 7 0; }
		.image_wrapper_14 { height: 80px; margin: 0 10 0 0; flex-shrink: 0; overflow: hidden; display: flex; }
		.image_wrapper_14 .golden_ratio_image_container { grid-template-columns: 23.6% 5.58% 9.02% 61.8%; grid-template-areas: "A A A A" "C C C B" "C C C B" "C C C B"; }

		.subtitles_14 { display: block; margin: 0 0 0 0; }

		.subtitles_2 li:nth-of-type(3) { display: none; }

		.subtitles_11 li:nth-of-type(3) { display: none; }

		.subtitles_12 li:nth-of-type(3) { display: none; }
		.subtitles_13 li:nth-of-type(3) { display: none; }

		.subtitles_14 li:nth-of-type(2),
		.subtitles_14 li:nth-of-type(3) { display: none; }

		.subtitle_14 { -webkit-line-clamp: 1; }

		.body_copy_wrapper_12,
		.body_copy_wrapper_13 { display: block; margin: 0 0 0 0; line-height: 1.3; }

		.body_copy_wrapper_1 .news_box_body_copy_greyed,
		.body_copy_wrapper_2 .news_box_body_copy_greyed,
		.body_copy_wrapper_3 .news_box_body_copy_greyed  { display: none; }

		.body_copy_wrapper_1 .body_copy { line-height: 1.2; }

		.body_copy_wrapper_2 .body_copy { line-height: 1.2; }
		.body_copy_wrapper_2 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 2; }
		.body_copy_wrapper_2 a:nth-of-type(2) .body_copy_primary > p { -webkit-line-clamp: 1; }
		.body_copy_wrapper_2 div:nth-child(5) { display: -webkit-box; }
		
		.body_copy_wrapper_3 .body_copy { margin: 0 0 5 0; line-height: 1.2; }
		.body_copy_wrapper_3 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 2; }
		.body_copy_wrapper_3 a:nth-of-type(2) .body_copy_primary > p { -webkit-line-clamp: 1; }
		.body_copy_wrapper_3 a:nth-of-type(3) .body_copy_primary > p { -webkit-line-clamp: 1; margin: 0; }
		.body_copy_wrapper_3 .body_copy_primary:nth-child(1),
		.body_copy_wrapper_3 .body_copy_primary:nth-child(2),
		.body_copy_wrapper_3 .body_copy_primary:nth-child(3) { display: -webkit-box; }

		.body_copy_wrapper_11 .body_copy { line-height: 1.2; }

		.body_copy_wrapper_12 .body_copy { line-height: 1.2; }
		.body_copy_wrapper_12 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 2; margin: 0; }
		.body_copy_wrapper_12 a:nth-of-type(n+2):nth-of-type(-n+8) .body_copy_primary > p { display: none; }

		.body_copy_wrapper_13 .body_copy { line-height: 1.2; }
		.body_copy_wrapper_13 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 2; margin: 0; }
		.body_copy_wrapper_13 a:nth-of-type(n+2):nth-of-type(-n+8) .body_copy_primary > p { display: none; }

		.body_copy_wrapper_14 { display: -webkit-box; }
		.body_copy_wrapper_14 .body_copy { margin: 0 0 5 0; line-height: 1.2; }
		.body_copy_wrapper_14 .news_box_body_copy_greyed  { display: none; } 
		.body_copy_wrapper_14 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 3; margin: 0; }
		.body_copy_wrapper_14 a:nth-of-type(n+2):nth-of-type(-n+8) .body_copy_primary > p { display: none; }

		.image_subtitle_wrapper_14 { margin: 0 0 5 0;}
		.lined_subtitles_14 { margin: 0 0 7 0;}
		.news_box_body_copy_14 { margin: 3 0 0 0; }

		
		.news_box_body_copy_1,
		.news_box_body_copy_2,
		.news_box_body_copy_3,
		.news_box_body_copy_11,
		.news_box_body_copy_12,
		.news_box_body_copy_13,
		.news_box_body_copy_14 { letter-spacing: -0.2; }


		.horizontal_slider_frame { display: flex; flex-direction: row; height: unset; overflow-x: scroll; overflow-y: hidden; scroll-snap-type: x mandatory; margin: 0 0 0 0; padding: 0 0 0 0; }
		.horizontal_slider_frame::-webkit-scrollbar { display: none; }
		.horizontal_slider_item { display: flex; border-right: 1px solid rgb(226, 226, 226); flex: 1 0 auto; padding-right: 0px; margin: 0 15 0 0; scroll-snap-align: center; scroll-margin-left: 15px; width: 82%; }
		.related_articles_block .horizontal_slider_item { border-right: none; padding: 10 15; }
		.horizontal_slider_item_icon { width: 45.5%; }
		/* .horizontal_slider_frame:first-child { padding-left: 0; } */
		.horizontal_slider_frame:last-child { border-right: none; }
		.horizontal_slider_frame .news_block { padding: 0 15 0 0; }

		.horizontal_slider_frame.top_keywords { flex-direction: row ; }

		.horizontal_slider_frame.top_keywords > div:first-of-type { padding: 0 0 0 10; margin: 0; }

		.top_social_desktop { display: grid !important; /* grid-template-columns: 30% 35% 35%; */ }
		.top_social_mobile { display: none; }

		/* Scroll.mk modifications START */
		/* ============================= */

		.ad_filled_grid { padding: 0 0 40 0; }
		
		.level_2 { width: 100%; }
		.level_3 { width: 100%; }
		.level_12 { width: 100%; }
		.level_13 { width: 100%; }

		.section_subblock_1 { width: 100%; }
		.section_subblock_2 { width: 100%; }
		.section_subblock_4 { width: 100%; height: 650px; position: relative; }
		.section_block {
					display: grid;
					height: fit-content;
					grid-template-columns: 55% 44%;
					grid-template-rows: auto;
					grid-template-areas: 	"level_11 section_subblock_4"
											"level_12 section_subblock_4"
											"level_13 section_subblock_4";
					gap: 10px;
				}

		.announcement_wrapper .section_block { display: flex; }

		.section_block .section_subblock_1,
		.section_block .section_subblock_2 { display: contents; }

		.section_subblock_1,
		.section_subblock_2,
		.section_subblock_4 { border: 0; margin: 0; padding: 0; }

		.section_subblock_4 { grid-area: section_subblock_4; border-left: 1px solid rgb(226, 226, 226); }
		
		.level_11 { border-bottom: 1px solid rgb(226, 226, 226); margin: 0 0 0 0; padding: 0 15 10 0; }
		.level_12 { border-bottom: 1px solid rgb(226, 226, 226); margin: 0 0 0 0; padding: 15 15 10 0; }
		.level_13 { border: 0; margin: 0 0 0 0; padding: 15 15 0 0; }
		.section_subblock_4 .horizontal_slider_item { border-bottom: 1px solid rgb(226, 226, 226); border-right: 0; margin: 0; padding: 15 0 15 0; }
		.section_subblock_4 .horizontal_slider_frame > div:first-of-type { padding: 0 0 15 0; }
		.section_subblock_4 .horizontal_slider_frame:has(.single_article_cluster) > div:first-of-type { /* padding: 0 0 20 0; */ }

		.image_wrapper_1 { height: 158px; margin: 0; }
		.image_wrapper_2 { height: 158px; margin: 0; }
		.image_wrapper_3 { height: 158px; margin: 0; }
		.image_wrapper_11 { height: 127px; margin: 0; }
		.image_wrapper_12 { height: 127px; margin: 0; }
		.image_wrapper_13 { height: 127px; margin: 0; }
		.image_wrapper_14 { height: 73px; margin: 0; }

		.title_1 { font-size: 22px; }

		.title_1,
		.title_2,
		.title_3,
		.title_11,
		.title_12,
		.title_13,
		.title_14 { margin: 0; }

		.subtitles_1 { /* Scroll.mk modifications */ padding: 0; border: 0; margin: -5 0 0 0; }
		.subtitles_2 { /* Scroll.mk modifications */ padding: 0; border: 0; margin: -5 0 0 0; }
		.subtitles_3 { /* Scroll.mk modifications */ padding: 0; border: 0; margin: -5 0 0 0; }
		.subtitles_11 { /* Scroll.mk modifications */ padding: 0; border: 0; margin: -2 0 0 0; }
		.subtitles_12 { /* Scroll.mk modifications */ padding: 0; border: 0; margin: -2 0 0 0; }
		.subtitles_13 { /* Scroll.mk modifications */ padding: 0; border: 0; margin: -2 0 0 0; }
		.subtitles_14 { /* Scroll.mk modifications */ padding: 0; border: 0; margin: 0 0 0 0; }

		.subtitle_1 { margin: 1 0 0 0; }
		.subtitle_2 { margin: 1 0 0 0; }
		.subtitle_3 { margin: 1 0 0 0; }
		.subtitle_11 { margin: 1 0 0 0; }
		.subtitle_12 { margin: 1 0 0 0; }
		.subtitle_13 { margin: 1 0 0 0; }
		.subtitle_14 { margin: 1 0 0 0; }

		.subtitles_1 li:nth-of-type(1) { display: list-item; }
		.subtitles_2 li:nth-of-type(1) { display: list-item; }
		.subtitles_3 li:nth-of-type(1) { display: list-item; }
		.subtitles_11 li:nth-of-type(1) { display: list-item; }
		.subtitles_12 li:nth-of-type(1) { display: list-item; }
		.subtitles_13 li:nth-of-type(1) { display: list-item; }
		.subtitles_14 li:nth-of-type(1) { display: list-item; }

		.subtitles_1 li:nth-of-type(2) { display: list-item; }
		.subtitles_2 li:nth-of-type(2) { display: list-item; }
		.subtitles_3 li:nth-of-type(2) { display: list-item; }
		.subtitles_11 li:nth-of-type(2) { display: list-item; }
		.subtitles_12 li:nth-of-type(2) { display: list-item; }
		.subtitles_13 li:nth-of-type(2) { display: list-item; }
		.subtitles_14 li:nth-of-type(2) { display: list-item; }

		.subtitles_1 li:nth-of-type(3) { display: list-item; }
		.subtitles_2 li:nth-of-type(3) { display: list-item; }
		.subtitles_3 li:nth-of-type(3) { display: list-item; }
		.subtitles_11 li:nth-of-type(3) { display: list-item; }
		.subtitles_12 li:nth-of-type(3) { display: list-item; }
		.subtitles_13 li:nth-of-type(3) { display: list-item; }
		.subtitles_14 li:nth-of-type(3) { display: list-item; }

		.body_copy_wrapper_1 .body_copy_primary { margin: 0; }
		.body_copy_wrapper_2 .body_copy_primary { margin: 0; }
		.body_copy_wrapper_3 .body_copy_primary { margin: 0; }
		.body_copy_wrapper_11 .body_copy_primary { margin: 0; }
		.body_copy_wrapper_12 .body_copy_primary { margin: 0; }
		.body_copy_wrapper_13 .body_copy_primary { margin: 0; }
		.body_copy_wrapper_14 .body_copy_primary { margin: 0; }

		.body_copy_wrapper_11 { margin: 0px 0px 0px 0px;}
		.body_copy_wrapper_12 { margin: 0px 0px 0px 0px;}
		.body_copy_wrapper_13 { margin: 0px 0px 0px 0px;}
		.body_copy_wrapper_14 { margin: 0px 0px 0px 0px;}

		.body_copy_wrapper_1 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 3; }
		.body_copy_wrapper_2 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 3; }
		.body_copy_wrapper_3 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 3; }
		.body_copy_wrapper_11 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 3; }
		.body_copy_wrapper_12 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 3; }
		.body_copy_wrapper_13 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 3; }
		.body_copy_wrapper_14 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 3; }

		.news_block .show_source h1.title_1 .source_article_body { padding: 4px 0px 0px 10px; bottom: 0; }
		.news_block .show_source h1.title_2 .source_article_body { padding: 2px 0px 0px 10px; bottom: 0; }
		.news_block .show_source h1.title_3 .source_article_body { padding: 2px 0px 0px 10px; bottom: 0; }
		.news_block .show_source h1.title_11 .source_article_body { padding: 2px 0px 0px 10px; bottom: 0; }
		.news_block .show_source h2.subtitle_1 .source_article_body { padding: 0px 0px 0px 10px; bottom: 0; }
		.news_block .show_source h2 .source_article_body { }

		.section_subblock_4 .news_block.single_article_cluster .body_copy_primary > p { -webkit-line-clamp: 3 !important; }

		.horizontal_slider_frame { display: flex; flex-direction: column;
									height: 100%;
									height: auto;
									overflow-y: scroll; overflow-x: hidden; scroll-snap-type: y mandatory;
									margin: 5 0 0 0; padding: 0 0 0 24; }

		.horizontal_slider_frame::-webkit-scrollbar { display: none; }
		.horizontal_slider_item { display: flex; flex: 1 0 auto; flex-flow: initial; align-content: start; padding-right: 0px; margin: 0 0 20 0; scroll-snap-align: center; scroll-margin-top: 40px; width: 100%; }
		.horizontal_slider_item_icon { width: unset; margin: 0; }
		.horizontal_slider_frame:last-child { border-right: none; }
		.horizontal_slider_frame .news_block { padding: 0 0 0 0; }

		.body_remaining_titles_grid { margin: 0px 0px 25px 25px; }

		/* ============================= */
		/* Scroll.mk modifications END */

	} 

	@media screen and (max-width: 685px) {
			.nav-tabs .nav-item { font-size: 13px; font-weight: 700; }
	}

	@media screen and (max-width: 560px) {
		.display_format { --format: 2; }

		.desktop { display: none; }
		.tablet { display: none; }
		.phone { display: flex; }
		.all_screens { display: flex; }

		.phone.photos_grid { display: grid; }
		.desktop.photos_grid { display: none; }
		.tablet.photos_grid { display: none; }

		.manual_ad_top { display: none;}
		.ad_own_top.phone { padding: 0 24; margin: 0 auto 25 auto; }

		.ad_header_top.phone { display: flex; margin: 25 auto; }
		.ad_sections_top.phone { width: 100%; margin: 15 0 15 0; }
		.ad_sections_top.phone { width: 100%; margin: 0 0 25 0; }

		.horizontal_divider_hard { display: none !important; }

		.horizontal_divider { margin: 8px 24px 24px 24px; background: none; }

		.section_block { height: unset; border-top: none; margin: 0; padding: 30 0 30 0; display: flex; flex-wrap: wrap; }

		.section_subblock_1 { width: 100%; }
		.section_subblock_2 { display: block; width: 100%; margin: 0; border: none; }
		.section_subblock_4 { width: 100%; margin: 0; padding: 0; border: none; }

		.section_subblock_4 .news_block { display: flex; flex-flow: row wrap; }

		.news_block { padding: 0px 24px 0px 24px; }
		
		.news_block_text_14 { margin: 0; padding: 0; }

		.fill img { flex-shrink: 1; }

		.subtitle { /* letter-spacing: 0.2; */ }

		.body_copy { /* margin: 0 0 5 0; */ line-height: 1.3; }

		.announcement_wrapper { width: 100%; margin: 0 auto; padding: 0; }

		.news_wrapper { margin: 0 auto; padding: 25 0 0 0; }
		.news_wrapper:has(.ad_filled_grid) { width: 100%; margin: 0 auto; padding: 0; }
		.news_wrapper:has(.ad_filled_grid) { padding-top: 10px; }

		.ad_filled_grid {	margin: 0 auto;
							grid-template-columns: 100%;
							grid-template-areas:	"Article1"
													"Article2"
													"Article3";
		}
		.ad_filled_grid .ad_block {
			display: none;
		}

		.level_1 { margin: 0; padding: 10 0 0; border: 0; }
		.level_2, .level_3 { margin: 0; padding: 0; border: 0;  width: 100%; }
		.level_11 { margin: 0; padding: 0; border: 0; width: 100%; }
		.level_12,
		.level_13 { margin: 0; padding: 0; border: 0; width: 100%; }
		.level_14 { margin: 0px 0px 28px 0px; border-top: 0; border-bottom: 0; padding: 0px 0px 0px 0px; width: 100%; line-height: 1.2; }

		.level_1 .news_block:not(:has(.news_block_text_1000)) { flex-wrap: wrap; }
		.level_2 .news_block,
		.level_3 .news_block { flex-wrap: wrap; }

		.level_1 .news_block:not(:has(.news_block_text_1000)) { display: flex; }
		.section_subblock_4 .news_block { display: flex; }

		.level_1 .news_block:not(:has(.news_block_text_1000)) .image_wrapper { width: 100%; }
		.level_1 .news_block:not(:has(.news_block_text_1000)) .sources_bar { padding: 0; }
		.section_subblock_4 .news_block .image_wrapper { width: 100%; }

		.level_1 .news_block:not(:has(.news_block_text_1000)) {
								grid-template-columns: 30% auto;
								grid-template-rows: auto auto;
								grid-template-areas: "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "subtitles subtitles" "sources sources";
								gap: 7px;
							}

		.level_2 .news_block{
								grid-template-columns: 30% auto;
								grid-template-rows: auto auto;
								grid-template-areas: "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "subtitles subtitles" "sources sources";
								gap: 7px;
							}

		.level_3 .news_block{
								grid-template-columns: 30% auto;
								grid-template-rows: auto auto;
								grid-template-areas: "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "subtitles subtitles" "sources sources";
								gap: 7px;
							}

		.level_11 .news_block{
								grid-template-columns: 30% auto;
								grid-template-rows: auto auto;
								grid-template-areas: "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "subtitles subtitles" "sources sources";
								gap: 7px;
							}

		.level_12 .news_block{
								grid-template-columns: 30% auto;
								grid-template-rows: auto auto;
								grid-template-areas: "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "subtitles subtitles" "sources sources";
								gap: 7px;
							}

		.level_13 .news_block{
								grid-template-columns: 30% auto;
								grid-template-rows: auto auto;
								grid-template-areas: "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "subtitles subtitles" "sources sources";
								gap: 7px;
							}

		.section_subblock_4 .news_block {
								grid-template-columns: 30% auto;
								grid-template-rows: auto auto;
								grid-template-areas: "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "subtitles subtitles" "sources sources";
								gap: 7px;
							}

		/* REQUEST (2026-08-12): mobile twin of the 2026-08-11 freshest-row drop.
		   The desktop .level_11/12/13 .news_block:not(:has(.subtitle_freshest)) rule
		   above uses the DESKTOP area string ("images subtitles" — subtitles beside
		   the image). :not()/:has() give it (0,3,0), and media queries add no
		   specificity, so at <=560px that (0,3,0) desktop rule BEATS this block's
		   (0,2,0) mobile base and drags subtitles back into the side column —
		   overriding the mobile layout, which deliberately runs subtitles full-width
		   ("subtitles subtitles") below the image+bodycopy. We can't just drop the
		   reserved row here; we must re-assert the mobile area string at matching
		   (0,3,0) so it wins inside this media query. (section_subblock_4's :not
		   variant already uses "subtitles subtitles", so it needs no mobile twin.) */
		.level_11 .news_block:not(:has(.subtitle_freshest)),
		.level_12 .news_block:not(:has(.subtitle_freshest)),
		.level_13 .news_block:not(:has(.subtitle_freshest)) {
								grid-template-areas: "title title" "images bodycopy" "subtitles subtitles" "sources sources";
							}
		/* Mobile twin of the 2026-08-13 level_1/2/3 freshest-row drop: the desktop
		   variant uses "images subtitles"/"images sources" and would leak in at
		   <=560px, so re-assert the mobile full-width string here. */
		.level_1 .news_block:not(:has(.news_block_text_1000)):not(:has(.subtitle_freshest)),
		.level_2 .news_block:not(:has(.subtitle_freshest)),
		.level_3 .news_block:not(:has(.subtitle_freshest)) {
								grid-template-areas: "title title" "images bodycopy" "subtitles subtitles" "sources sources";
							}

		/* REQUEST (2026-08-12): mobile twin of the day-label row overrides. The
		   desktop day rules (outside any @media) carry the DESKTOP area string
		   ("images subtitles"); like the freshest-drop rule above they'd leak in at
		   <=560px, so re-assert the mobile string ("subtitles subtitles") at
		   matching specificity here — later source order wins inside the query. */
		.level_1 .news_block:has(.day_label_bar),
		.level_2 .news_block:has(.day_label_bar),
		.level_3 .news_block:has(.day_label_bar),
		.level_11 .news_block:has(.day_label_bar),
		.level_12 .news_block:has(.day_label_bar),
		.level_13 .news_block:has(.day_label_bar),
		.section_subblock_4 .news_block:has(.day_label_bar) {
								grid-template-areas: "day day" "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "subtitles subtitles" "sources sources";
							}
		.level_1 .news_block:has(.day_label_bar):not(:has(.subtitle_freshest)),
		.level_2 .news_block:has(.day_label_bar):not(:has(.subtitle_freshest)),
		.level_3 .news_block:has(.day_label_bar):not(:has(.subtitle_freshest)),
		.level_11 .news_block:has(.day_label_bar):not(:has(.subtitle_freshest)),
		.level_12 .news_block:has(.day_label_bar):not(:has(.subtitle_freshest)),
		.level_13 .news_block:has(.day_label_bar):not(:has(.subtitle_freshest)),
		.section_subblock_4 .news_block:has(.day_label_bar):not(:has(.subtitle_freshest)) {
								grid-template-areas: "day day" "title title" "images bodycopy" "subtitles subtitles" "sources sources";
							}
		/* Slider cards (section_subblock_4 .news_block) go display:flex at <=560px,
		   where grid-template-areas is inert — pin the bar first + full-width so it
		   still leads the card. */
		.section_subblock_4 .news_block .day_label_bar { width: 100%; order: -1; }

		.body_copy_wrapper_1 .body_copy { margin: 0 0 5 0; line-height: 1.3; }
		.body_copy_wrapper_2 .body_copy { margin: 0 0 5 0; line-height: 1.3; }
		.body_copy_wrapper_3 .body_copy { margin: 0 0 5 0; line-height: 1.3; }
		.body_copy_wrapper_11 .body_copy { margin: 0 0 5 0; line-height: 1.3; }
		.body_copy_wrapper_12 .body_copy { margin: 0 0 5 0; line-height: 1.3; }
		.body_copy_wrapper_13 .body_copy { margin: 0 0 5 0; line-height: 1.3; }
		.body_copy_wrapper_14 .body_copy { margin: 0 0 5 0; line-height: 1.3; }

		.title_1 { line-height: 1.1; -webkit-line-clamp: 3; font-size: 18px; }
		.title_2,
		.title_3 { line-height: 1.1; -webkit-line-clamp: 2; font-size: 18px; padding: 0 0 0 0; max-height: none; }
		.title_11 { line-height: 1.1; -webkit-line-clamp: 2; font-size: 18px; }
		.title_12 { line-height: 1.1; -webkit-line-clamp: 3; margin: 0 0 10 0; }
		.title_13 { line-height: 1.1; -webkit-line-clamp: 3; margin: 0 0 10 0; }
		.title_14 { line-height: 1.1; -webkit-line-clamp: 3; }

		.image_wrapper_1 { height: 130px; order: unset; padding: 0; width: 100%; margin: 0 0 10 0; align-items: unset; }
		.image_wrapper_1 .golden_ratio_image_container { grid-template-columns: 61.8% 9.02% 5.58% 23.6%; /* grid-template-areas: "A B B B" "A C C C" "A C C C" "A C C C"; */ grid-template-areas: "A B B B" "A D D C" "A D D C" "A D D C"; }
		.image_wrapper_2,
		.image_wrapper_3 { height: 100px; order: unset; width: 100%; margin: 0 0 10 0; padding: 0; align-items: unset; }
		.image_wrapper_2 .golden_ratio_image_container,
		.image_wrapper_3 .golden_ratio_image_container,
		.image_wrapper_11 .golden_ratio_image_container { grid-template-columns: 61.8% 9.02% 5.58% 23.6%; grid-template-areas: "A B B B" "A D D C" "A D D C" "A D D C"; }
		.image_wrapper_11 { height: 100px; width: 100%; }
		.image_wrapper_12,
		.image_wrapper_13 { height: 80px; /* width: 40%; margin: 0 0 0 0; */ margin: 0 0 10 0; }
		.image_wrapper_12 .golden_ratio_image_container,
		.image_wrapper_13 .golden_ratio_image_container { grid-template-columns: 61.8% 9.02% 5.58% 23.6%; grid-template-areas: "A B B B" "A D D C" "A D D C" "A D D C"; }
		.image_wrapper_14 { display: flex; width: 100%; height: 80px; margin: 0 0 10 0; flex-shrink: 0; overflow: hidden; }		
		.image_wrapper_14 .golden_ratio_image_container { /* grid-template-columns: 23.6% 5.58% 9.02% 61.8%; grid-template-areas: "A A A A" "C C C B" "C C C B" "C C C B"; */
														grid-template-columns: 61.8% 9.02% 5.58% 23.6%; grid-template-areas: "A B B B" "A D D C" "A D D C" "A D D C"; }

		.title_4 { font-size: 14px; }
		.title_5 { font-size: 14px; }
		.title_6 { font-size: 14px; }
		.news_wrapper.search_results_wrapper .title_11 { font-size: 14px; }
		.title_12 { font-size: 14px; }
		.title_13 { font-size: 14px; }
		.title_14 { font-size: 14px; }

		.subtitles_1 { margin: 8px 0px 8px 0px; }
		.subtitles_2,
		.subtitles_3 { margin: 8px 0px 8px 0px; padding: 0px 0px 0px 8px; }
		.subtitles_11 { margin: 8px 0px 8px 0px; padding: 0px 0px 0px 8px; }
		.subtitles_12,
		.subtitles_13  { display: block; margin: 0 0 12 0; }
		.subtitles_14 { display: block; margin: 0 0 0 0; line-height: 1.3; }

		.subtitles_11 li:nth-of-type(2) { display: list-item; }
		.subtitles_11 li:nth-of-type(3) { display: none; }
		.subtitles_12 li:nth-of-type(2),
		.subtitles_13 li:nth-of-type(2) { display: list-item; }
		.subtitles_12 li:nth-of-type(3),
		.subtitles_13 li:nth-of-type(3) { display: none; }
		.subtitles_14 li:nth-of-type(2),
		.subtitles_14 li:nth-of-type(3) { display: none; }

		.subtitle_1,
		.subtitle_2,
		.subtitle_3,
		.subtitle_11,
		.subtitle_12,
		.subtitle_13,
		.subtitle_14 { font-size: 14px; line-height: 1.25; }
		
		.subtitle_11 { /* -webkit-line-clamp: 1; */ }
		.subtitle_14 { -webkit-line-clamp: 2; }

		.vertical_line_1 { margin: 14 0 14 0; }
		.vertical_line_2,
		.vertical_line_3 { margin: 3 0 13 0; width: 8px; }
		.vertical_line_11 { margin: 5px 0px 13px 0px; width: 6px; }
		.vertical_line_12,
		.vertical_line_13 { margin: 3 0 15 0; width: 8px; }
		.vertical_line_14 { margin: 5 5 2 0; width: 8px; }

		.news_block_text_1 { padding: 0px 0px 0px 0px; }
		.body_copy_wrapper_1 a:nth-of-type(1) .body_copy_primary { -webkit-line-clamp: 2; }
		.body_copy_wrapper_1 a:nth-of-type(2) .body_copy_primary { -webkit-line-clamp: 1; }
		.body_copy_wrapper_1 a:nth-of-type(3) .body_copy_primary { -webkit-line-clamp: 1; }
		.body_copy_wrapper_1 :nth-child(5) { margin: 0 0 0 0; }
		.news_block_text_1 :nth-child(6),
		.news_block_text_1 :nth-child(7),
		.news_block_text_1 :nth-child(8) { display: none; }

		.news_block_text_2,
		.news_block_text_3 { height: auto; padding: 0 0 0 0;}
		.news_block_text_2 .title_2,
		.news_block_text_3 .title_3 { margin: 0 0 0 0;}

		.level_1 .sources_bar { margin: 0px 0px 0px 0px; }
		.level_2 .sources_bar { margin: 0px 0px 0px 0px; }
		.level_3 .sources_bar { margin: 0px 0px 0px 0px; }
		.section_subblock_1 .sources_bar { margin: 0px 0px 0px 0px; }
		.section_subblock_2 .sources_bar { margin: 0px 0px 0px 0px; }
		.section_subblock_4 .sources_bar { margin: 0px 0px 0px 0px; }

		.body_copy_wrapper_1 .news_box_body_copy_greyed,
		.body_copy_wrapper_2 .news_box_body_copy_greyed,
		.body_copy_wrapper_3 .news_box_body_copy_greyed  { display: none; }

		.body_copy_wrapper_2 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 2; }
		.body_copy_wrapper_2 a:nth-of-type(2) .body_copy_primary > p { -webkit-line-clamp: 1; display: -webkit-box; margin: 0; }
		.body_copy_wrapper_2 a:nth-of-type(n+3):nth-of-type(-n+8) { display: none; }

		.body_copy_wrapper_3 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 2; }
		.body_copy_wrapper_3 a:nth-of-type(2) .body_copy_primary > p { -webkit-line-clamp: 1; display: -webkit-box; margin: 0; }
		.body_copy_wrapper_3 a:nth-of-type(n+3):nth-of-type(-n+8) { display: none; }

		.body_copy_wrapper_11 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 2; }
		.body_copy_wrapper_11 a:nth-of-type(2) .body_copy_primary > p { -webkit-line-clamp: 1; margin: 0; }
		.body_copy_wrapper_11 a:nth-of-type(n+3):nth-of-type(-n+8) { display: none; }

		.body_copy_wrapper_12,
		.body_copy_wrapper_13 { display: revert; }
		.body_copy_wrapper_12 div:nth-child(1).body_copy,
		.body_copy_wrapper_13 div:nth-child(1).body_copy { margin: 0 0 8 0; }
		.body_copy_wrapper_12 .news_box_body_copy_greyed,
		.body_copy_wrapper_13 .news_box_body_copy_greyed { display: none; }
		.body_copy_wrapper_12 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 2; display: -webkit-box; }
		.body_copy_wrapper_12 a:nth-of-type(2) .body_copy_primary > p { -webkit-line-clamp: 1; display: -webkit-box; margin: 0; }
		.body_copy_wrapper_12 a:nth-of-type(n+3):nth-of-type(-n+8) .body_copy_primary > p { display: none; }
		
		.body_copy_wrapper_13 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 2; display: -webkit-box; }
		.body_copy_wrapper_13 a:nth-of-type(2) .body_copy_primary > p { -webkit-line-clamp: 1; display: -webkit-box; margin: 0; }
		.body_copy_wrapper_13 a:nth-of-type(n+3):nth-of-type(-n+8) .body_copy_primary > p { display: none; }

		.body_copy_wrapper_14 { display: -webkit-box; }
		.body_copy_wrapper_14 .news_box_body_copy_greyed  { display: none; } 
		.body_copy_wrapper_14 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 2; margin: 0; }
		.body_copy_wrapper_14 a:nth-of-type(n+2):nth-of-type(-n+8) .body_copy_primary > p { display: none; }

		.news_block_text_11,
		.news_block_text_12,
		.news_block_text_13 { padding: 0; overflow: hidden; }

		/* .news_block_text_12,
		.news_block_text_13 { width: 60%; 	padding: 0px 0px 0px 13px; }
		.level_12 .body_copy, .level_13 .body_copy { margin: 0 0 3 0; } */

		.section_subblock_4 .level_14:last-of-type { margin: 0; }
		.title_14 { margin: 0 0 7 0; font-weight: 800; line-height: 1.2; }
		.image_subtitle_wrapper_14 { margin: 0 0 5 0;}
		.news_block_text_14 { }
		.lined_subtitles_14 { margin: 0 0 10 0;}
		.news_box_body_copy_14 { margin: 3 0 0 0; }

		.horizontal_slider_frame { display: flex; flex-direction: row; height: unset; overflow-x: scroll; overflow-y: hidden; scroll-snap-type: x mandatory; margin: 0 0 0 0; padding: 0 0 0 0 /* padding 0 on 9.9.24 */; }
		.horizontal_slider_frame::-webkit-scrollbar { display: none; }
		.horizontal_slider_item { 	display: flex; border-right: 1px solid rgb(226, 226, 226); flex: 1 0 auto; padding: 0;
									margin: 0 15 0 0; scroll-snap-align: center; scroll-margin-left: 15px;
									width: 80%; background-color: unset; }
		.horizontal_slider_item:nth-of-type(1) { /* margin: 0 0 0 24; Replaced on 4.8.2025 */ margin: 0 15 0 24; width: 80%; }

		/* .horizontal_slider_item:last-of-type:not(.news_block) { width: 60%; } */
		.horizontal_slider_item:last-of-type { width: 60%; }
		.horizontal_slider_item:last-of-type:has(.news_block) { width: 80%; }
		.horizontal_slider_item:last-of-type:has(.body_copy_timeline_single) { width: 80%; }
		.horizontal_slider_item_icon { width: 100%; }

		.horizontal_slider_frame .horizontal_slider_item:last-of-type > a.horizontal_slider_item_icon { border: none; padding: 0; }

		/* .horizontal_slider_frame:first-child { padding-left: 0; } */
		.horizontal_slider_frame:last-child { border-right: none; }
		.horizontal_slider_frame .news_block { padding: 0 15 0 0; }

		.scroll-container-wrapper > .horizontal_slider_frame.top_keywords { margin: 0 0 0 0; }

		.horizontal_slider_frame.top_keywords { padding: 15 0 10 24; }
		.horizontal_slider_frame.top_keywords > .horizontal_slider_item { width: unset; margin: 0 0 0 0; }
		.horizontal_slider_frame.top_keywords > div:first-of-type { margin: 0 0 0 0; }
		.horizontal_slider_frame.top_keywords > div:last-of-type { margin: 0 0 0 0; }

		.horizontal_slider_frame.top_keywords > .horizontal_slider_item:first-of-type > div { margin-left: 0; }
		.horizontal_slider_frame.top_keywords > .horizontal_slider_item:last-of-type > div { margin-right: 20; }

		.top_social_desktop { display: none !important; }
		.top_social_mobile { display: block !important; width: 100%; }

		#top_video_content .horizontal_divider { margin: 0px 24px 0px 24px; }
	
		.photos_grid { grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 1px; }
		.photo_tile img { height: 200px; }
		/* Show-more tile has no <img>, so it can't inherit the image height the way
		   photo tiles do; the desktop grid stretches it to the row height but the
		   mobile flex-column slide can't, so give it the image height explicitly. */
		#top_photos_content .horizontal_slider_frame .photo_tile_show_more { min-height: 200px; }
		.photo_title_overlay { padding: 8px 8px 10px 8px; font-size: 12px; }

		#top_photos_content .horizontal_slider_frame .horizontal_slider_item {
				display: flex;
				flex-direction: column;
				margin-right: 0px;
		}
		
		.top_videos.photos_grid { grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 5px 5px; }

		
		/* Scroll.mk modifications START */
		/* ==============================*/
		.ad_filled_grid { padding: 5 0 35 0; }

		.news_wrapper.search_results_wrapper .ad_filled_grid { /* border: none; */  padding: 5 0 5 0; }

		.manual_ad_top_right { display: none; }

		.section_block { gap: 0; }
		.section_block_header { padding: 0 24; }

		.level_1 .news_block:not(:has(.news_block_text_1000)) { display: grid; }
		.level_3 { margin: 0 0 15 0; }
		.section_subblock_4 .news_block { display: grid; }
	
		.section_subblock_4 { height: fit-content !important; contain: unset; display: grid; }
		.section_subblock_4::before { content: none !important; }
		.section_subblock_4::after { content: none !important; }
		.section_subblock_4 .horizontal_slider_item { border-bottom: 0; margin: 0 15 0 0; padding: 0; }
		.horizontal_slider_item:nth-of-type(1) { margin: 0 15 0 24; width: 75%; }
		.section_subblock_4 .horizontal_slider_frame:has(.single_article_cluster) > div:first-of-type { margin: 0 24; }
		.section_subblock_4 .sources_bar { margin: 0px 0px 0px 0px; }

		.news_wrapper.search_results_wrapper .level_3 { padding: 0 0 24 0; }
		.search_results_wrapper .section_block { padding: 0 0 30 0; }
		.search_results_wrapper .section_block .horizontal_divider { margin: 0px 24px 24px 24px; }
		.search_results_wrapper .section_subblock_4 { display: block; height: unset !important; }
		.search_results_wrapper .section_subblock_4 .horizontal_slider_frame {
								display: flex; flex-direction: column; height: unset; overflow: hidden;
								margin: 5 0 0 0; padding: 0 24 0 24;
							}
		.search_results_wrapper .section_subblock_4 .horizontal_slider_frame .horizontal_slider_item {
								width: 100%; border-top: 1px solid rgb(226, 226, 226);
								margin: 0 0 0 0; padding: 24 0 0 0;
							}
		.search_results_wrapper .section_subblock_4 .horizontal_slider_frame > div:first-of-type {
								margin: 0; padding: 0; width: 100%; border: 0;
							}
		.search_results_wrapper .section_subblock_4 .horizontal_slider_frame .news_block { padding: 0; }

		.title_1 { font-size: 18px; }

		.title_1,
		.title_2,
		.title_3,
		.title_11,
		.title_12,
		.title_13,
		.title_14 { margin: 0; }

		.source_article_on_top_of_body_text { 	display: block; position: relative !important;
												width: 100%; border-bottom: 1px solid #0066CC;
												padding: 0 0 5 0 !important; margin: 0 0 5 0 !important;
											}
		.source_article_on_top_of_body_text time { float: left; }
		h1 .source_article_in_title { display: none !important; }
		

		.body_copy_wrapper { margin: 0px 0px 0px 0px; /* was 2px */ }

		.news_block.single_article_cluster body_copy_wrapper body_copy_wrapper_1 .body_copy_primary > p,
		.news_block.single_article_cluster body_copy_wrapper body_copy_wrapper_2 .body_copy_primary > p,
		.news_block.single_article_cluster body_copy_wrapper body_copy_wrapper_3 .body_copy_primary > p { -webkit-line-clamp: 5 !important; }

		.subtitle_freshest { -webkit-line-clamp: 2; }

		.subtitles_1,
		.subtitles_2,
		.subtitles_3 { padding: 0; border: 0; margin: -8 0 0 0; }
		.subtitles_11,
		.subtitles_12,
		.subtitles_13 { padding: 0; border: 0; margin: -8 0 0 0; }
		.subtitles_14 { padding: 0; border: 0; margin: -5 0 0 0; }

		.subtitles_14 { /* display: flex; */ }

		.subtitle_1 { margin: 0 0 0 0; }
		.subtitle_2 { margin: 0 0 0 0; }
		.subtitle_3 { margin: 0 0 0 0; }
		.subtitle_11 { margin: 0 0 0 0; }
		.subtitle_12 { margin: 0 0 0 0; }
		.subtitle_13 { margin: 0 0 0 0; }
		.subtitle_14 { margin: 0 0 0 0; }

		.subtitle_14 { -webkit-line-clamp: 1; }

		.subtitles_1 li:nth-of-type(1) { display: list-item; }
		.subtitles_2 li:nth-of-type(1) { display: list-item; }
		.subtitles_3 li:nth-of-type(1) { display: list-item; }
		.subtitles_11 li:nth-of-type(1) { display: list-item; }
		.subtitles_12 li:nth-of-type(1) { display: list-item; }
		.subtitles_13 li:nth-of-type(1) { display: list-item; }
		.subtitles_14 li:nth-of-type(1) { display: list-item; }

		.subtitles_1 li:nth-of-type(2) { display: list-item; }
		.subtitles_2 li:nth-of-type(2) { display: list-item; }
		.subtitles_3 li:nth-of-type(2) { display: list-item; }
		.subtitles_11 li:nth-of-type(2) { display: list-item; }
		.subtitles_12 li:nth-of-type(2) { display: list-item; }
		.subtitles_13 li:nth-of-type(2) { display: list-item; }
		.subtitles_14 li:nth-of-type(2) { display: list-item; }

		.subtitles_1 li:nth-of-type(3) { display: list-item; }
		.subtitles_2 li:nth-of-type(3) { display: list-item; }
		.subtitles_3 li:nth-of-type(3) { display: list-item; }
		.subtitles_11 li:nth-of-type(3) { display: list-item; }
		.subtitles_12 li:nth-of-type(3) { display: list-item; }
		.subtitles_13 li:nth-of-type(3) { display: list-item; }
		.subtitles_14 li:nth-of-type(3) { display: list-item; }

		.body_copy_wrapper_1 .body_copy { margin: 0 0 5 0; line-height: 1.2; }
		.body_copy_wrapper_2 .body_copy { margin: 0 0 5 0; line-height: 1.2; }
		.body_copy_wrapper_3 .body_copy { margin: 0 0 5 0; line-height: 1.2; }
		.body_copy_wrapper_11 .body_copy { margin: 0 0 5 0; line-height: 1.2; }
		.body_copy_wrapper_12 .body_copy { margin: 0 0 5 0; line-height: 1.2; }
		.body_copy_wrapper_13 .body_copy { margin: 0 0 5 0; line-height: 1.2; }
		.body_copy_wrapper_14 .body_copy { margin: 0 0 5 0; line-height: 1.2; }

		.image_wrapper_1 { height: 93px; margin: 0; }
		.image_wrapper_2 { height: 93px; margin: 0; }
		.image_wrapper_3 { height: 93px; margin: 0; }
		.image_wrapper_11 { height: 92px; margin: 0; }
		.image_wrapper_12 { height: 92px; margin: 0; }
		.image_wrapper_13 { height: 92px; margin: 0; }
		.image_wrapper_14 { height: 93px; margin: 0; }

		.body_copy_wrapper_1 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 4; }
		.body_copy_wrapper_2 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 4; }
		.body_copy_wrapper_3 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 4; }
		.body_copy_wrapper_11 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 4; }
		.body_copy_wrapper_12 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 4; }
		.body_copy_wrapper_13 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 4; }
		.body_copy_wrapper_14 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 4; }

		.level_1 .sources_bar { margin: 0px 0px 0px 0px; }
		.level_2 .sources_bar { margin: 0px 0px 0px 0px; }
		.level_3 .sources_bar { margin: 0px 0px 0px 0px; }
		.level_11 .sources_bar { margin: 0px 0px 0px 0px; }
		.level_12 .sources_bar { margin: 0px 0px 0px 0px; }
		.level_13 .sources_bar { margin: 0px 0px 0px 0px; }

		.section_subblock_1 .news_block.single_article_cluster { /* margin-bottom: -15 removed 2026-07-31 */ }
		.section_subblock_2 .news_block.single_article_cluster { /* margin-bottom: -15 removed 2026-07-31 */ }
		.section_subblock_1 .news_block.single_article_cluster .image_wrapper { height: 97px; }
		.section_subblock_2 .news_block.single_article_cluster .image_wrapper { height: 97px; }

		.search_results_wrapper .section_subblock_4 .news_block.single_article_cluster .body_copy_primary > p { -webkit-line-clamp: 3 !important; }
		.search_results_wrapper .single_article_cluster .image_wrapper_14 { height: 68px; height: 77px; }

		.section_subblock_1 .news_block.single_article_cluster .body_copy_primary > p,
		.section_subblock_2 .news_block.single_article_cluster .body_copy_primary > p { -webkit-line-clamp: 4 !important; }
		.section_subblock_4 .news_block.single_article_cluster .body_copy_primary > p { -webkit-line-clamp: 4 !important; }
		/* Phone: cap single-article body copy at 4 lines (base rule is 6). Keyed
		   on .level_1x so it also hits the v2 col_left blocks, which the
		   .section_subblock_1/2 selectors above don't reach. REQUEST 2026-07-31. */
		.level_1 .news_block.single_article_cluster .body_copy_primary > p,
		.level_2 .news_block.single_article_cluster .body_copy_primary > p,
		.level_3 .news_block.single_article_cluster .body_copy_primary > p,
		.level_11 .news_block.single_article_cluster .body_copy_primary > p,
		.level_12 .news_block.single_article_cluster .body_copy_primary > p,
		.level_13 .news_block.single_article_cluster .body_copy_primary > p { -webkit-line-clamp: 4 !important; }

		.news_block .show_source h1.title_1 .source_article_body {	padding: 0px 0px 0px 10px;
																	/* bottom: 3px; Was too high for index page 1st title*/ bottom: 0px; }
		.news_block .show_source h1.title_1::after { 				height: 20px; }
		.news_block .show_source h1.title_2 .source_article_body {	padding: 0px 0px 0px 10px;
																	/* bottom: 1px; Was too high for index page 1st title*/ bottom: 0px; }
		.news_block .show_source h1.title_2::after { 				height: 20px; }
		.news_block .show_source h1.title_3 .source_article_body { 	padding: 0px 0px 0px 10px;
																	/* bottom: 3px; Was too high for index page 1st title*/ bottom: 0px; }
		.news_block .show_source h1.title_3::after { 				height: 20px; }
		.news_block .show_source h1.title_11 .source_article_body { padding: 0px 0px 0px 10px;
																	/* bottom: 2px; Was too high for index page 1st title*/ bottom: 0px; }
		.news_block .show_source h1.title_11::after { 				height: 20px; }

		.news_block .show_source h2.subtitle_1 .source_article_body { padding: 0px 0px 0px 10px; bottom: 0px !important; }
		.news_block .show_source h2.subtitle_1::after { height: 16px; }

		.news_block .show_source h2 .source_article_body { padding: 0px 0px 0px 10px; bottom: 0px; }
		.news_block .show_source h2::after { height: 16px; }
		
		.list_of_sources section,
		section.list_of_sources { padding: 0 24px 15px 24px; width: 100%; overflow: hidden; }
		
		/* ==============================*/
		/* Scroll.mk modifications END */

	}

	/* ============================================================== */
	/* Search results layout v2 (config search_results_layout: 'v2').
	   Page-scrolling grid blocks after the ad_filled_grid: first block
	   2 cols x 3 rows, every next one 3 cols x 3 rows; the whole page
	   scrolls -- no internal section_subblock_4 scroller. Late in the
	   sheet + compound selectors so the legacy .section_block grid rules
	   (level_11 / section_subblock_4 areas) cannot leak in. */

	/* The streams do their own scroll anchoring on trim/prepend; the
	   browser's native anchoring (absent in Safari) must not double-adjust */
	.news_wrapper.search_results_wrapper { overflow-anchor: none; }

	/* Search filter menus (period + sort): the videos-pages
	   section_block_header structure. Self-contained styling — the
	   header-menu horizontal rules live in style.css, which the search
	   page swaps out for index.css. */
	.section_block_header.search_filters_header {	width: 100%;
													margin: 0;
													padding: 25 0 0 0;
													border: 0;
												}
	.search_filters_header .header_menu_whole {	display: flex;
												flex-wrap: nowrap;
												width: fit-content;
												margin: 0 0 6px 0;
												padding: 0;
												border: 0;
											}
	.search_filters_header .header_menu_item {	width: fit-content;
												margin: 0;
												padding: 3px 10px;
												line-height: 1.3;
												white-space: nowrap;
												border-right: 1px solid rgb(226, 226, 226);
												cursor: pointer;
											}
	.search_filters_header .header_menu_whole > a:first-child .header_menu_item { padding-left: 0; }
	.search_filters_header .header_menu_whole > a:last-child .header_menu_item { padding-right: 0; border-right: none; }
	.search_filters_header .header_menu_item_active { font-weight: 600; }
	.search_filters_header .header_menu_item p { margin: 0; }
	.search_filters_header .title_11 { margin: 0px 0px 15px 0px; }

	.section_block.search_block_v2 {	display: grid;
										grid-template-columns: repeat(3, minmax(0, 1fr));
										grid-template-rows: none;
										grid-template-areas: none;
										column-gap: 0;
										row-gap: 0;
										/* news_wrapper is flex row-wrap: without an explicit width a
										   grid flex-item shrinks to its content, and an all-props
										   block has none — it collapsed narrow and squashed the
										   spinner rings into "needles". */
										width: 100%;
										height: fit-content;
										margin: 0;
										padding: 0;
										border: 0;
										/* Between-blocks rule as border-TOP: the trailing edge of
										   the page stays clean automatically — the "last" block
										   changes constantly while the stream appends. The first
										   block drops its own top border below. */
										border-top: 1px solid rgb(226, 226, 226);
									}
	.section_block.search_block_v2.search_block_v2_first { grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: none; padding-bottom: 10px; }

	.search_item_v2 { min-width: 0; padding: 12px 0; }

	.search_item_v2 .news_block {	display: grid;
									height: fit-content;
									grid-template-columns: 25% auto;
									grid-template-rows: auto auto;
									grid-template-areas: "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "subtitles subtitles" "sources sources";
									gap: 7px;
								}
	.search_block_v2_first .search_item_v2 .news_block { grid-template-columns: 30% auto; }
	/* REQUEST (2026-08-13): search-stream level_11 (first-block) cells must render
	   with the SAME grid as the index's level_11 blocks. The index canon puts the
	   subtitles BESIDE the image ("images subtitles" — image column spans down)
	   on desktop/tablet, and only runs subtitles full-width ("subtitles subtitles")
	   on phone. These search rules used to force "subtitles subtitles" at ALL widths,
	   which flattened the desktop layout inconsistently vs the main page. Mirror the
	   index: "images subtitles" here (all-screens = desktop/tablet), restored to
	   "subtitles subtitles" in the max-width:560 block below. level_14 3-col cells
	   (base rule above) and section_subblock_4 legitimately stay full-width. */
	.search_item_v2 .level_11 .news_block { grid-template-areas: "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "images subtitles" "sources sources"; }
	/* REQUEST (2026-08-05): generalize the freshest-row drop beyond single-article
	   clusters. ANY v2 stream cell whose news_block didn't render a freshest
	   subtitle carries an empty first row that still costs one row-gap (7px) of
	   spurious top gutter. Drop just that row wherever .subtitle_freshest is
	   absent, keeping title/images/bodycopy/subtitles/sources intact. This is
	   additive to the single_article_cluster rule below, which still owns the
	   size-1 case (it also drops the subtitles/sources rows) via !important.
	   :has()/:not() take the specificity of their argument, so this is (0,3,0) —
	   it beats the base (0,2,0) grid and ties the level_11 rule above, winning on
	   source order for level_11 cells that likewise lack a freshest subtitle. */
	.search_item_v2 .news_block:not(:has(.subtitle_freshest)) { grid-template-areas: "title title" "images bodycopy" "subtitles subtitles" "sources sources"; }
	/* level_11 (first-block) without a freshest subtitle: the general rule above
	   would drop the freshest row but ALSO flatten "images subtitles" -> "subtitles
	   subtitles". Re-assert the index level_11 :not layout (see 2026-08-13 note
	   above) at (0,4,0) so only the freshest row is removed and the image keeps
	   spanning the subtitles row on desktop/tablet. */
	.search_item_v2 .level_11 .news_block:not(:has(.subtitle_freshest)) { grid-template-areas: "title title" "images bodycopy" "images subtitles" "sources sources"; }
	/* REQUEST (2026-08-14, Bojan): search-stream MULTI-article cells misplaced the
	   day-label bar. The bar (grid-area:day) had no "day" area in any of the
	   .search_item_v2 grids above, so it auto-flowed into an implicit row at the
	   BOTTOM of the cell; only single_article_cluster cells placed it (their own
	   :has(.day_label_bar) !important rule below). Same twin pattern as the index
	   level_11-13 day rules: prepend a full-width "day" row at the very TOP.
	   MUST sit after the four grids above — :has(.day_label_bar) lifts each twin
	   one specificity step over its day-less original ((0,3,0)/(0,4,0)/(0,5,0)),
	   and source order settles the ties. Cells without a bar are untouched. */
	.search_item_v2 .news_block:has(.day_label_bar) { grid-template-areas: "day day" "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "subtitles subtitles" "sources sources"; }
	.search_item_v2 .level_11 .news_block:has(.day_label_bar) { grid-template-areas: "day day" "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "images subtitles" "sources sources"; }
	.search_item_v2 .news_block:has(.day_label_bar):not(:has(.subtitle_freshest)) { grid-template-areas: "day day" "title title" "images bodycopy" "subtitles subtitles" "sources sources"; }
	.search_item_v2 .level_11 .news_block:has(.day_label_bar):not(:has(.subtitle_freshest)) { grid-template-areas: "day day" "title title" "images bodycopy" "images subtitles" "sources sources"; }
	/* Single-article clusters have no sibling subtitles and no multi-source
	   bar, AND never emit a freshest-subtitle: for size-1 the lone article is
	   the main title, so html_index_block's freshness block is skipped and the
	   subtitle_freshest element is never rendered. That row (like subtitles /
	   sources) is therefore always empty, and an empty first row still adds one
	   spurious top gutter (= the grid's row gap). Drop it, leaving just
	   title + images/bodycopy, everywhere.
	   REQUEST (2026-08-04): collapse to a single global rule made !important so
	   it beats the per-level base grids — .level_1 .news_block:not(:has(...)) is
	   (0,3,0), higher than this (0,2,0) — and supersedes the old per-scope
	   override (the per-level and section_subblock copies removed above). The paired
	   margin-top:-10px that cancelled the empty row is zeroed there too. */
	.news_block.single_article_cluster { grid-template-areas: "title title" "images bodycopy" !important; }
	/* REQUEST (2026-08-14): a single_article_cluster can still carry a .day_label_bar
	   (day/period badges) when it's among the first clusters of a day-label-opted-in
	   section. The global !important collapse rule above shrinks its grid to
	   title + images/bodycopy, leaving the bar's grid-area:day unplaced — it auto-flowed
	   out of the top. Re-add the full-width "day day" row at the very TOP (the mirror of
	   the multi-article index-block day row) for EVERY position a lone-article block
	   appears in. :has(.day_label_bar) => (0,3,0) + !important beats the (0,2,0) rule above. */
	.news_block.single_article_cluster:has(.day_label_bar) { grid-template-areas: "day day" "title title" "images bodycopy" !important; }
	/* REQUEST (2026-08-12): single_article_cluster showed two phantom 7px gaps at the
	   bottom (grid rendered as: title | gap | images/bodycopy | gap | gap), so the
	   block couldn't bottom-align with the left column. Cause: the !important rule
	   above shrinks grid-template-areas to 2 rows, but .news_block_text is
	   display:contents, so its still-present EMPTY subtitles <ul> (grid-area:subtitles)
	   survives as a grid item. With no "subtitles" area left in the 2-row template it
	   auto-flows into implicit rows below "images bodycopy"; those tracks are 0px, but
	   the grid's gap:7px still inserts a row-gap before each (measured live: rows
	   "15.6 90.3 0 0", height 126.9 vs 112.9 of real content = 14px dead space). :empty
	   can't catch it (the <ul> holds a whitespace text node), so drop it when it has no
	   <li>. Collapses the grid back to exactly its 2 real tracks. */
	.news_block.single_article_cluster ul.subtitles_wrapper:not(:has(li)) { display: none; }
	/* level_11 wrapper inside first-block cells: keep the level-11 inner
	   format but let the cell stay the layout unit (no index-page box) */
	.search_block_v2_first .search_item_v2 > .level_11 { border: 0; margin: 0; padding: 0; width: auto; }
	.search_item_v2 .news_block .image_wrapper { width: unset; }
	.search_item_v2 .news_block .sources_bar { padding: 0; margin: 0; }
	.search_item_v2 .body_copy { line-height: 1.3; }
	.search_item_v2 .image_wrapper_14 { height: 75px; }
	.search_item_v2 .body_copy_wrapper_14 a:nth-of-type(1) .body_copy_primary > p { -webkit-line-clamp: 3; }
	/* Max 2 subtitles in the 3x3 stream cells: lower height variance across
	   the grid rows. The 2-col first block and the ad_filled_grid keep their
	   full subtitle count. */
	.search_block_v2:not(.search_block_v2_first) .search_item_v2 .subtitles_wrapper li:nth-of-type(n+3) { display: none; }
	/* Single-article clusters in the search stream: 3 lines of body copy.
	   Beats the base .news_block.single_article_cluster .body_copy_primary > p
	   {4 !important} via higher specificity (extra .search_item_v2 + .body_copy_wrapper_14 classes). */
	.search_item_v2 .single_article_cluster .body_copy_wrapper_14 .body_copy_primary > p { -webkit-line-clamp: 3 !important; }

	.search_item_v2.search_result_prop { position: relative; min-height: 120px; }

	/* One spinner per contiguous run of loading slots: a block full of props
	   showed 9 tiny spinners at once, reading as a field of spinning needles.
	   Props keep their size (layout stays put); only the first of a run spins. */
	.search_result_prop + .search_result_prop .photo_tile_spinner { display: none; }

	/* "More from this category" overlay on the last top-photos tile: photo
	   fully visible at the left edge, chevron/text fully visible at the
	   right; the two-stop gradient 0% -> 50% puts 50% opacity exactly at
	   25% of the width. Only the right side is clickable (pointer-events),
	   so the photo's own article click survives on the left. */
	.photo_tile .photo_tile_more_overlay {	position: absolute; inset: 0; z-index: 2;
											pointer-events: none;
											display: flex; align-items: center; justify-content: flex-end;
											background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 50%); }
	.photo_tile_more_overlay .horizontal_slider_item { pointer-events: auto; width: 60%; height: 100%; margin: 0; padding: 0; }
	.photo_tile_more_overlay .horizontal_slider_item_icon.fill { position: relative; display: flex; flex-direction: row; align-items: center; justify-content: flex-end; width: 90%; height: 100%; }

	/* Same overlay on the last category news item in section_subblock_4 (the
	   show-more is injected into it instead of being a separate scrolling
	   item — see inject_show_more_overlay). Reuses the gradient/ratio above. */
	.section_subblock_4 .horizontal_slider_item:has(> .photo_tile_more_overlay) { position: relative; }
	.section_subblock_4 .horizontal_slider_item > .photo_tile_more_overlay {
											position: absolute; inset: 0; z-index: 2; pointer-events: none;
											display: flex; align-items: center; justify-content: flex-end;
											/* REQUEST (2026-07-29): stretch this overlay's white fade to reach opaque at 66%, so more of the category item stays visible under the show-more gradient. */
											background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 66%); }

	/* Tic-tac-toe grid lines between v2 cells: inner lines only, never toward
	   the outside. Spacing is a BLOCK-level knob: tune the two gap variables
	   on .section_block.search_block_v2 and nothing else — cells pad exactly
	   half the gap on each inner side, so the 1px line on the cell edge
	   always sits centered between neighbors regardless of the values.
	   Scoped to desktop/tablet -- on phone the blocks stack in one column. */
	@media screen and (min-width: 561px) {
		.section_block.search_block_v2 {	--search-cell-gap-x: 30px;
											--search-cell-gap-y: 30px;
										}
		.search_block_v2 .search_item_v2 {	padding: calc(var(--search-cell-gap-y) / 2) calc(var(--search-cell-gap-x) / 2);
											border-right: 1px solid rgb(226, 226, 226);
											border-bottom: 1px solid rgb(226, 226, 226);
										}
		.search_block_v2 .search_item_v2:last-child { border-right: none; }
		/* REQUEST (2026-08-04): search v2 stream titles (title_14) clamp to a
		   single line on desktop and tablet (>=561px). Scoped (0,2,0) so it beats
		   the global .title_14 rules; display:-webkit-box is needed because the
		   desktop .title_14 rule sets display:block, which -webkit-line-clamp
		   ignores. Phone gets 2 lines in the max-width:560 block below. */
		.search_item_v2 .title_14 { display: -webkit-box; -webkit-line-clamp: 1; }
		/* 3-column blocks */
		.search_block_v2:not(.search_block_v2_first) .search_item_v2:nth-child(3n+1) { padding-left: 0; }
		.search_block_v2:not(.search_block_v2_first) .search_item_v2:nth-child(3n) { padding-right: 0; border-right: none; }
		.search_block_v2:not(.search_block_v2_first) .search_item_v2:nth-child(3n+1):nth-last-child(-n+3),
		.search_block_v2:not(.search_block_v2_first) .search_item_v2:nth-child(3n+1):nth-last-child(-n+3) ~ .search_item_v2 { border-bottom: none; }
		/* 2-column first block */
		.search_block_v2_first .search_item_v2:nth-child(2n+1) { padding-left: 0; }
		.search_block_v2_first .search_item_v2:nth-child(2n) { padding-right: 0; border-right: none; }
		.search_block_v2_first .search_item_v2:nth-child(2n+1):nth-last-child(-n+2),
		.search_block_v2_first .search_item_v2:nth-child(2n+1):nth-last-child(-n+2) ~ .search_item_v2 { border-bottom: none; }
	}

	@media screen and (max-width: 560px) {
		.section_block.search_block_v2,
		.section_block.search_block_v2.search_block_v2_first { display: block; }
		/* Phone only: restore the block's previous bottom padding (removed on
		   desktop/tablet where the tic-tac-toe cell padding handles spacing). */
		.section_block.search_block_v2 { padding: 0 0 15px 0; }
		.search_item_v2 { padding: 15px 0 10px 0; }
		.search_item_v2 .image_wrapper_14 { height: 76px; }
		/* Phone: match the body-copy line-height and the level_11-13 image
		   height to the index's level 1-3 blocks (1.2 / 93px) so search rows
		   read the same as the main page. */
		.search_item_v2 .body_copy { line-height: 1.2; }
		.search_item_v2 .image_wrapper_11,
		.search_item_v2 .image_wrapper_12,
		.search_item_v2 .image_wrapper_13 { height: 93px; }
		/* Phone twin of the 2026-08-13 search level_11 fix: the index's level_11
		   blocks run subtitles FULL-WIDTH ("subtitles subtitles") on phone, so the
		   search level_11 cells must too (the all-screens rules above set the
		   desktop/tablet "images subtitles"). Same specificity as those rules, later
		   in source, so it wins inside this media query. */
		.search_item_v2 .level_11 .news_block { grid-template-areas: "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "subtitles subtitles" "sources sources"; }
		.search_item_v2 .level_11 .news_block:not(:has(.subtitle_freshest)) { grid-template-areas: "title title" "images bodycopy" "subtitles subtitles" "sources sources"; }
		/* Phone twin of the 2026-08-14 search day-label row: the desktop level_11
		   day twins above carry "images subtitles" and would leak in at <=560px;
		   re-assert the phone "subtitles subtitles" string at the same specificity,
		   later in source so it wins inside this query. The non-level_11 day twins
		   already use "subtitles subtitles" at all widths — no phone copy needed. */
		.search_item_v2 .level_11 .news_block:has(.day_label_bar) { grid-template-areas: "day day" "subtitle_freshest subtitle_freshest" "title title" "images bodycopy" "subtitles subtitles" "sources sources"; }
		.search_item_v2 .level_11 .news_block:has(.day_label_bar):not(:has(.subtitle_freshest)) { grid-template-areas: "day day" "title title" "images bodycopy" "subtitles subtitles" "sources sources"; }
		/* REQUEST (2026-08-04): on phone the search stream title (title_14) gets
		   2 lines, vs the single line on desktop/tablet (min-width:561 block).
		   display:-webkit-box already holds here via the global max-width:1050
		   .title_14 rule; scoped (0,2,0) beats the global clamp:3. */
		.search_item_v2 .title_14 { -webkit-line-clamp: 2; }
		/* First-block single-article body copy: 4 lines on phone. Same
		   specificity (0,4,1)+!important as the base level_11 single rule,
		   later in source so it wins. */
		.search_item_v2 .single_article_cluster .body_copy_wrapper_11 .body_copy_primary > p { -webkit-line-clamp: 4 !important; }
		/* REQUEST (2026-08-13, Bojan): the two gaps this -20px compensated for were
		   removed, so the negative pull is no longer needed. */
		.search_block_v2 .search_item_v2 .single_article_cluster { margin: 0 0 0 0; }
		.news_wrapper.search_results_wrapper { padding: 25px 0px 0 0px; }
		/* Phone: wrapper is full-bleed (result rows to the edge); only the
		   header text keeps a 24px side gutter. */
		.section_block_header.search_filters_header { padding: 0 24px; }
		.search_filters_header .title_11 { font-size: 18px; }
		/* No per-item divider on phone: the layout collapses to a single
		   column, so the tic-tac-toe grid lines (desktop-only) don't apply
		   and a plain list separator isn't needed — card spacing separates
		   results; block boundaries are marked by the between-block border
		   and the ad. */
	}

	/* --- section_block layout v2 (desktop/tablet) -----------------------
	   Two flex columns: .col_left (level_11/12/13) and .col_right (the
	   section_subblock_4 slider) on a 55/auto grid whose row equalizes both.
	   .right_scrollable (added from index_page__section_block__right_side__
	   scrollable): the right column follows the LEFT column's height, items
	   packed tight at the top, scrolling if taller. Otherwise the right
	   space-betweens so both columns are equal-height with aligned top/bottom
	   edges and the gaps (not the items) absorbing the difference. */
	@media screen and (min-width: 561px) {
		.section_block_v2 { display: grid; grid-template-columns: 55% auto; grid-template-areas: none; grid-template-rows: auto; gap: 10px; align-items: stretch; height: fit-content; }
		.section_block_v2 .col_left { display: flex; flex-direction: column; justify-content: space-between; }
		/* col_right still carries grid-area:section_subblock_4 from the base
		   rule; with areas:none that names a nonexistent line and drops it into
		   a phantom row. Pin it (and col_left) explicitly to the single row. */
		.section_block_v2 .col_left { grid-area: 1 / 1 / 2 / 2; }
		.section_block_v2 .col_right { grid-area: 1 / 2 / 2 / 3; border-left: 1px solid rgb(226, 226, 226); }

		/* REQUEST (2026-08-03): the v2 right column renders shorter than the left
		   column. Cause: the legacy `.section_subblock_4 { height: fit-content
		   !important }` (added 2026-07-29 for the v1 "third box grows to full
		   content height" layout) also matches col_right and, being !important,
		   beats these unscoped `height: auto` rules — fit-content sizes the box to
		   its content and so defeats the grid's align-items:stretch. Re-assert
		   auto with !important here (scoped to v2's col_right only, so v1's
		   grow-to-content behavior is untouched) to restore equal-height columns. */
		.section_block_v2:not(.right_scrollable) .col_right { height: auto !important; overflow: visible; }
		.section_block_v2:not(.right_scrollable) .col_right .horizontal_slider_frame:not(.phone) { display: flex; flex-direction: column; justify-content: space-between; height: 100%; overflow: visible; scroll-snap-type: none; padding: 0 0 0 24px; }
		/* REQUEST (2026-08-11): the right column sat ~6 subtitle-lines short and
		   the balancer did nothing. Cause: the base `.horizontal_slider_item
		   { flex: 1 0 auto }` makes these items GROW into the column's slack, so
		   (a) the space-between above never gets any gap to absorb — contradicting
		   the v2 design note — and (b) balanceSectionRightColumns() measures the
		   stretched items and always sees right ≈ left (gap ≈ 0), blinding both
		   its trim tolerance and the new fill phase. Pin grow to 0 so items keep
		   their natural height: gaps absorb residual slack and the JS measures
		   true content heights. */
		.section_block_v2:not(.right_scrollable) .col_right .horizontal_slider_frame:not(.phone) > .horizontal_slider_item { flex-grow: 0; }
		/* REQUEST (2026-08-12): RESERVE item(s) — a whole extra article emitted
		   after the visible cap — sit hidden by default (like reserve subtitles'
		   nth-of-type(n+4)); balanceSectionRightColumns() reveals one as a COARSE
		   fill when the right column renders shorter than the left, before the
		   subtitle fine-fill. Reveal is an inline style.display (wins over this
		   class rule); a reverted/unused reserve stays hidden. Desktop/tablet
		   non-scrollable only — the balancer skips phone + scrollable columns. */
		.section_block_v2:not(.right_scrollable) .col_right .horizontal_slider_frame:not(.phone) > .horizontal_slider_item.balance_reserve_item { display: none; }

		.section_block_v2.right_scrollable .col_right { position: relative; overflow: hidden; height: auto !important; }
		.section_block_v2.right_scrollable .col_right .horizontal_slider_frame:not(.phone) { position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: flex-start; overflow-y: auto; scroll-snap-type: none; padding: 0 0 0 24px; }
		/* REQUEST (2026-08-13): drop the base slider frame's blanket top margin
		   (`.horizontal_slider_frame { margin: 5 0 0 0 }`) when the frame is the v2
		   section-block right column, on desktop AND tablet — the first stacked row
		   should sit flush against the column top. Scoped to col_right (both the
		   right_scrollable and non-scrollable variants), inside min-width:561px so
		   the phone slider is untouched. */
		.section_block_v2 .col_right .horizontal_slider_frame:not(.phone) { margin-top: 0; }
		/* REQUEST (2026-08-13): the LAST row in the v2 right column must sit flush
		   with the column bottom (aligned to col_left) — zero the trailing per-row
		   vertical padding + 1px divider border on the final item, since the
		   `.section_subblock_4 .horizontal_slider_item { padding: 15/10 0; border-
		   bottom: 1px }` row-rhythm rule otherwise leaves a stray gap + separator
		   under the last story with nothing below it. Excludes the "Повеќе" more-
		   tile (:has(a.horizontal_slider_item_icon)), which already zeros its own
		   padding via index.css:646 and carries a deliberate accent border. */
		.section_block_v2 .col_right .horizontal_slider_frame:not(.phone) > .horizontal_slider_item:last-child:not(:has(a.horizontal_slider_item_icon)) { padding-bottom: 0; border-bottom: 0; }
	}
	/* Phone: single column — col_left stacks its three articles, col_right
	   (still .section_subblock_4) renders the horizontal phone slider via the
	   existing section_subblock_4 phone rules. */
	@media screen and (max-width: 560px) {
		.section_block_v2 { display: block; }
		.section_block_v2 .col_left { display: block; }
		/* REQUEST (2026-07-30): suspend the phone divider between the stacked
		   articles and the slider (border-top kept here, commented, for easy
		   restore — it mirrors Main/v1's section_subblock_4 mobile border-top). */
		.section_block_v2 .col_right { display: block; width: 100%; border-left: none; /* border-top: 1px solid rgb(226, 226, 226); */ }
	}

	