/*
Theme Name:   Hestia — ОУ „Н. Й. Вапцаров“
Theme URI:    https://ouvaptsarov-selanovtsi.info/
Description:  Child theme на Hestia за ОУ „Никола Йонков Вапцаров“, с. Селановци.
              Административна училищна визия: плътен зелен хедър, нисък четим банер,
              бързи връзки, изравнени новинарски карти и контрастен футер.
Author:       ITSERVICE
Author URI:   https://itservice-bg.net
Template:     hestia
Version:      1.0.0
Text Domain:  hestia-vaptsarov
*/

/* ==========================================================================
   1. ТОКЕНИ
   ========================================================================== */

:root {
	--v-green-dark: #14532d;
	--v-green: #1b7a47;
	--v-green-mid: #186b3e;
	--v-green-soft: #e9f1ec;
	--v-green-line: #cfe0d5;
	--v-cream: #f7f5f0;
	--v-white: #ffffff;
	--v-ink: #2b2b2b;
	--v-muted: #55645b;
	--v-gold: #c9a227;
	--v-border: #dce4de;

	--v-header-h: 104px;
	--v-radius: 6px;
	--v-shadow: 0 2px 10px rgba(20, 83, 45, .08);
	--v-shadow-lift: 0 8px 24px rgba(20, 83, 45, .16);
}

/* ==========================================================================
   2. БАЗА И ТИПОГРАФИЯ
   ========================================================================== */

/* Сайтът е със светла палитра. Без това деклариране браузър с тъмна системна
   тема и включен auto-dark пречупва фоновете и текстовете. */
:root,
html,
body {
	color-scheme: light;
}

body {
	background-color: var(--v-cream);
	color: var(--v-ink);
	-webkit-font-smoothing: antialiased;
}

.wrapper,
.main,
.main-raised {
	background-color: transparent;
}

h1, h2, h3, h4, h5, h6,
.hestia-title, .title, .card-title {
	color: var(--v-green-dark);
	font-weight: 700;
}

p, li, td, th, .card-description, .description {
	color: var(--v-ink);
}

/* Hestia пише описанията в бледосиво (#999) — под контрастния минимум. */
.card-description,
.description,
.hestia-description,
.section .description {
	color: var(--v-muted) !important;
}

a {
	color: var(--v-green);
}

a:hover,
a:focus {
	color: var(--v-green-dark);
}

/* Видим focus за клавиатурна навигация. */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
	outline: 3px solid var(--v-gold);
	outline-offset: 2px;
}

/* Бутоните на темата — зелени вместо тюркоазени. */
.btn.btn-primary,
.button.btn-primary,
input[type="submit"].btn-primary,
.btn.btn-primary:hover,
.btn.btn-primary:focus,
.btn.btn-primary:active {
	background-color: var(--v-green) !important;
	color: var(--v-white) !important;
	box-shadow: var(--v-shadow);
	border-radius: var(--v-radius);
	text-transform: none;
	letter-spacing: .2px;
	font-weight: 600;
}

.btn.btn-primary:hover {
	background-color: var(--v-green-dark) !important;
	box-shadow: var(--v-shadow-lift);
}

/* ==========================================================================
   3. ХЕДЪР И МЕНЮ — плътен, вместо прозрачен върху снимката
   ========================================================================== */

.navbar,
.navbar.navbar-default,
.navbar.navbar-transparent,
.navbar.navbar-default.navbar-fixed-top,
.navbar.navbar-transparent.navbar-fixed-top,
.header .navbar {
	background-color: var(--v-green-dark) !important;
	box-shadow: 0 2px 12px rgba(0, 0, 0, .18) !important;
	border: 0;
	min-height: var(--v-header-h);
	padding: 0;
	transition: none;
}

@media (min-width: 992px) {
	.navbar .container {
		display: flex;
		align-items: center;
		flex-wrap: nowrap;
		min-height: var(--v-header-h);
	}
}

/* Логото — фиксирана височина, за да не разтяга хедъра. */
.navbar .navbar-header {
	display: flex;
	align-items: center;
	flex: 0 0 auto;
}

/* ⚠️ Hestia резервира `min-width: 250px` за широкото текстово лого. Гербът е
   квадратен и заема ~90px — без нулиране 160px стоят празни и изтласкват
   последния вход на менюто на втори ред. */
.navbar .title-logo-wrapper {
	max-width: none !important;
	min-width: 0 !important;
	width: auto !important;
	flex: 0 0 auto;
}

.navbar .navbar-brand {
	display: flex;
	align-items: center;
	height: auto !important;
	padding: 6px 0 !important;
	margin: 0 !important;
}

/* Bootstrap слага отстъпи по .navbar-header/.navbar-brand — при по-голямо лого
   те изяждат мястото, което трябва на менюто. */
.navbar .navbar-header,
.navbar .title-logo-wrapper {
	padding-left: 0 !important;
	padding-right: 0 !important;
	margin-left: 0 !important;
	margin-right: 12px !important;
}

.navbar .navbar-brand img,
.navbar .navbar-header .navbar-brand img {
	height: 88px !important;
	max-height: 88px !important;
	width: auto !important;
	max-width: 110px;
}

/* Менюто — на един ред, без caps (caps го прави с ~25% по-широко и по-трудно за четене). */
/* ⚠️ `display: flex !important` важи САМО за десктоп. На мобилно Bootstrap крие
   менюто с .collapse{display:none} — глобалният !important го отваря завинаги. */
@media (min-width: 992px) {
	.navbar .navbar-collapse {
		flex: 1 1 auto;
		display: flex !important;
		justify-content: flex-end;
		padding: 0;
		width: auto !important;
		max-width: none !important;
		min-width: 0;
	}
}

@media (min-width: 992px) {
	.navbar .navbar-nav {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-end;
		align-items: center;
		float: none;
		margin: 0;
	}
}

.navbar .navbar-nav > li > a,
.navbar.navbar-transparent .navbar-nav > li > a,
.navbar .navbar-nav > li > a:focus {
	color: var(--v-white) !important;
	font-size: 13.5px;
	font-weight: 600;
	text-transform: none !important;
	letter-spacing: .1px;
	padding: 9px 11px;
	margin: 0;
	white-space: nowrap;
	border-radius: var(--v-radius);
	line-height: 1.3;
	opacity: 1;
}

.navbar .navbar-nav > li > a:hover,
.navbar .navbar-nav > li.current-menu-item > a,
.navbar .navbar-nav > li.current-menu-ancestor > a,
.navbar .navbar-nav > li.current_page_item > a,
.navbar .navbar-nav > li.open > a {
	background-color: rgba(255, 255, 255, .16) !important;
	color: var(--v-white) !important;
}

/* Активният вход получава златна черта — ориентир къде си. */
.navbar .navbar-nav > li.current-menu-item > a,
.navbar .navbar-nav > li.current-menu-ancestor > a {
	box-shadow: inset 0 -3px 0 var(--v-gold);
}

.navbar .navbar-nav > li > a .caret {
	border-top-color: rgba(255, 255, 255, .7);
	margin-left: 5px;
}

/* Падащите менюта — светли карти, четим текст. */
.navbar .dropdown-menu,
.navbar .navbar-nav .dropdown-menu {
	background-color: var(--v-white) !important;
	border: 1px solid var(--v-border) !important;
	border-radius: var(--v-radius) !important;
	box-shadow: var(--v-shadow-lift) !important;
	padding: 6px 0 !important;
	min-width: 240px;
	margin-top: 4px;
}

.navbar .dropdown-menu > li > a,
.navbar .navbar-nav .dropdown-menu > li > a {
	color: var(--v-ink) !important;
	font-size: 13.5px !important;
	font-weight: 500 !important;
	text-transform: none !important;
	padding: 9px 18px !important;
	white-space: normal;
	line-height: 1.4;
	border-radius: 0;
}

.navbar .dropdown-menu > li > a:hover,
.navbar .dropdown-menu > li > a:focus,
.navbar .dropdown-menu > li.current-menu-item > a {
	background-color: var(--v-green-soft) !important;
	color: var(--v-green-dark) !important;
	box-shadow: inset 3px 0 0 var(--v-green);
}

/* Търсачката в менюто. */
.navbar .hestia-toggle-search,
.navbar .nav > li > a.hestia-toggle-search {
	color: var(--v-white) !important;
}

.navbar .navbar-toggle {
	border-color: rgba(255, 255, 255, .5);
}

.navbar .navbar-toggle .icon-bar {
	background-color: var(--v-white);
}

/* Под 1200px менюто е тясно — намаляваме отстоянията, преди да падне на хамбургер. */
@media (min-width: 992px) and (max-width: 1199px) {
	.navbar .navbar-nav > li > a {
		font-size: 12.5px;
		padding: 8px 7px;
	}

	.navbar .navbar-brand img,
	.navbar .navbar-header .navbar-brand img {
		height: 70px !important;
		max-height: 70px !important;
		max-width: 90px;
	}
}

/* Мобилно меню — тъмнозелен панел, а не прозрачен. */
@media (max-width: 991px) {
	:root {
		--v-header-h: 70px;
	}

	.navbar .navbar-collapse {
		background-color: var(--v-green-dark) !important;
		border-top: 1px solid rgba(255, 255, 255, .18);
		max-height: calc(100vh - var(--v-header-h));
		overflow-y: auto;
	}

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

	.navbar .navbar-nav > li {
		width: 100%;
	}

	.navbar .navbar-nav > li > a {
		display: block;
		padding: 13px 16px;
		font-size: 15px;
		border-radius: 0;
		border-bottom: 1px solid rgba(255, 255, 255, .1);
	}

	.navbar .dropdown-menu {
		background-color: rgba(255, 255, 255, .06) !important;
		border: 0 !important;
		box-shadow: none !important;
		margin: 0 !important;
		border-radius: 0 !important;
	}

	.navbar .dropdown-menu > li > a {
		color: rgba(255, 255, 255, .92) !important;
		padding: 11px 16px 11px 34px !important;
		font-size: 14px !important;
	}

	.navbar .dropdown-menu > li > a:hover {
		background-color: rgba(255, 255, 255, .12) !important;
		color: var(--v-white) !important;
		box-shadow: none;
	}

	.navbar .navbar-brand img,
	.navbar .navbar-header .navbar-brand img {
		height: 56px !important;
		max-height: 56px !important;
		max-width: 72px;
	}
}

/* ==========================================================================
   4. БАНЕР — нисък, затъмнен, с плътна лента под текста
   ========================================================================== */

/* Височината: 420px на десктоп. !important, защото parallax скриптът пише inline. */
.home .carousel,
.home .carousel .carousel-inner,
.home .carousel .item,
.home .carousel .page-header,
.home #carousel-hestia-generic,
.home #carousel-hestia-generic .carousel,
.home .page-header.header-filter,
.home #parallax_move,
.home #parallax_move .layer {
	height: 420px !important;
	min-height: 420px !important;
	max-height: 420px !important;
}

.home .carousel .page-header,
.home .page-header.header-filter {
	display: flex !important;
	align-items: center;
	justify-content: center;
	background-position: center 35% !important;
	background-size: cover !important;
	padding-top: var(--v-header-h);
	overflow: hidden;
}

/* Затъмнение върху снимката — без него белият текст плува. */
.home .carousel .page-header::before,
.home .page-header.header-filter::before,
.home .header-filter::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: linear-gradient(180deg, rgba(9, 38, 22, .74) 0%, rgba(9, 38, 22, .62) 100%) !important;
	opacity: 1 !important;
	z-index: 1;
}

.home .carousel .page-header .container,
.home .page-header.header-filter .container {
	position: relative;
	z-index: 3;
}

/* Плътната лента, върху която сяда текстът. */
.home .big-title-slider-content,
.home .hestia-big-title-content > div {
	background: rgba(9, 38, 22, .55);
	border-left: 5px solid var(--v-gold);
	border-radius: var(--v-radius);
	padding: 26px 34px !important;
	backdrop-filter: blur(2px);
	-webkit-backdrop-filter: blur(2px);
	text-align: left !important;
	max-width: 720px;
	float: none !important;
	margin: 0 auto !important;
}

.home .carousel .hestia-title,
.home .page-header .hestia-title,
.home h1.hestia-title {
	color: var(--v-white) !important;
	font-size: 40px !important;
	line-height: 1.2 !important;
	font-weight: 700 !important;
	margin: 0 0 8px !important;
	text-shadow: 0 2px 8px rgba(0, 0, 0, .45);
	text-align: left;
}

.home .carousel .sub-title,
.home .page-header .sub-title,
.home .carousel .hestia-description {
	color: rgba(255, 255, 255, .95) !important;
	font-size: 18px !important;
	line-height: 1.5 !important;
	font-weight: 400 !important;
	display: block;
	margin: 0 !important;
	text-shadow: 0 1px 5px rgba(0, 0, 0, .45);
	text-align: left;
}

.home .carousel .buttons,
.home .page-header .buttons {
	margin-top: 18px;
	text-align: left;
}

@media (max-width: 991px) {
	.home .carousel,
	.home .carousel .carousel-inner,
	.home .carousel .item,
	.home .carousel .page-header,
	.home #carousel-hestia-generic,
	.home #carousel-hestia-generic .carousel,
	.home .page-header.header-filter,
	.home #parallax_move,
	.home #parallax_move .layer {
		height: 340px !important;
		min-height: 340px !important;
		max-height: 340px !important;
	}

	.home .big-title-slider-content,
	.home .hestia-big-title-content > div {
		padding: 18px 20px !important;
	}

	.home .carousel .hestia-title,
	.home h1.hestia-title {
		font-size: 26px !important;
	}

	.home .carousel .sub-title,
	.home .carousel .hestia-description {
		font-size: 15px !important;
	}
}

/* Вътрешните страници: ниска зелена заглавна лента вместо полуекранна снимка.
   ⚠️ Височината идва от .container (Hestia му дава голям min-height), не от
   самия .page-header — затова се нулира и той. */
body:not(.home) .page-header.header-small,
body:not(.home) .page-header.header-filter {
	background-color: var(--v-green-dark) !important;
	min-height: 0 !important;
	height: auto !important;
	max-height: none !important;
	padding: calc(var(--v-header-h) + 30px) 0 34px !important;
	display: block;
}

body:not(.home) .page-header.header-small > .container,
body:not(.home) .page-header.header-filter > .container {
	min-height: 0 !important;
	height: auto !important;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	display: block !important;
}

/* ⚠️ Без `content` псевдоелементът изобщо не се създава — само background не стига. */
body:not(.home) .page-header.header-small .header-filter::before,
body:not(.home) .page-header.header-filter::before,
body:not(.home) .page-header .header-filter::before {
	content: "" !important;
	display: block !important;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: linear-gradient(180deg, rgba(9, 38, 22, .78) 0%, rgba(9, 38, 22, .86) 100%) !important;
	opacity: 1 !important;
	z-index: 1;
}

body:not(.home) .page-header .container {
	position: relative;
	z-index: 3;
}

body:not(.home) .page-header .hestia-title,
body:not(.home) .page-header h1,
body:not(.home) .page-header .title {
	color: var(--v-white) !important;
	font-size: 32px !important;
	text-shadow: 0 2px 8px rgba(0, 0, 0, .4);
}

body:not(.home) .page-header .subtitle,
body:not(.home) .page-header .sub-title {
	color: rgba(255, 255, 255, .9) !important;
}

/* ==========================================================================
   5. БЪРЗИ ВРЪЗКИ — секцията с иконите става редица плочки-линкове
   ========================================================================== */

#features.hestia-features {
	background-color: var(--v-white);
	padding: 34px 0 40px !important;
	border-bottom: 1px solid var(--v-border);
	margin-top: 0 !important;
}

#features .hestia-title,
#features h2.hestia-title {
	font-size: 22px !important;
	margin: 0 0 4px !important;
	color: var(--v-green-dark) !important;
}

#features .description,
#features .hestia-features .description {
	font-size: 15px !important;
	margin-bottom: 22px !important;
}

/* Пет равни плочки на един ред вместо трите тесни колони на Bootstrap.
   ⚠️ Само вътрешният .row става flex контейнер — ако и .hestia-features-content
   стане flex, редът се свива до широчината на съдържанието си. */
#features .hestia-features-content > .row {
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	justify-content: center;
	align-items: stretch;
	margin-left: 0;
	margin-right: 0;
	width: 100%;
}

#features .feature-box {
	flex: 1 1 0;
	min-width: 178px;
	max-width: 232px;
	width: auto !important;
	padding: 0 !important;
	float: none !important;
	display: flex;
}

#features .hestia-info,
#features .info {
	background-color: var(--v-green-soft);
	border: 1px solid var(--v-green-line);
	border-radius: var(--v-radius);
	padding: 22px 14px !important;
	margin: 0 !important;
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	transition: transform .15s ease, box-shadow .15s ease, background-color .15s ease;
	text-align: center;
}

#features .hestia-info:hover,
#features .info:hover {
	background-color: var(--v-white);
	transform: translateY(-3px);
	box-shadow: var(--v-shadow-lift);
	border-color: var(--v-green);
}

/* Плочката е кликаема — Orbit Fox обвива иконата и заглавието в <a>,
   щом полето „link“ е попълнено. */
#features .hestia-info {
	position: relative;
}

#features .hestia-info a,
#features .info a {
	color: inherit !important;
	text-decoration: none !important;
	display: block;
}

#features .hestia-info a::after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
}

#features .icon,
#features .hestia-info .icon {
	margin-bottom: 10px;
}

#features .icon i,
#features .hestia-info .icon i,
#features .icon .fa,
#features .icon .fas,
#features .icon .far {
	color: var(--v-green) !important;
	font-size: 34px !important;
	line-height: 1;
}

#features .info-title,
#features h4.info-title {
	color: var(--v-green-dark) !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	margin: 0 0 4px !important;
	text-transform: none;
}

#features .hestia-info p,
#features .info p {
	color: var(--v-muted) !important;
	font-size: 13px !important;
	line-height: 1.45 !important;
	margin: 0 !important;
}

@media (max-width: 991px) {
	#features .feature-box {
		flex: 1 1 calc(33.333% - 14px);
		min-width: 160px;
		max-width: calc(33.333% - 14px);
	}
}

@media (max-width: 600px) {
	#features .feature-box {
		flex: 1 1 calc(50% - 14px);
		min-width: 0;
		max-width: calc(50% - 14px);
	}
}

/* ==========================================================================
   6. „ЗА УЧИЛИЩЕТО“ — от тъмна снимка на светъл, четим фон
   ========================================================================== */

#about.hestia-about,
#about.section-image {
	background-image: none !important;
	background-color: var(--v-cream) !important;
	padding: 52px 0 !important;
}

#about.hestia-about::before,
#about.hestia-about::after,
#about .header-filter::before,
#about .header-filter::after {
	display: none !important;
	background: none !important;
}

#about .hestia-title,
#about h2 {
	color: var(--v-green-dark) !important;
	font-size: 28px !important;
	margin-bottom: 6px !important;
}

#about .description,
#about p,
#about li,
#about .hestia-about-content,
#about .hestia-about-content * {
	color: var(--v-ink) !important;
	font-size: 16px !important;
	line-height: 1.7 !important;
	text-shadow: none !important;
}

#about strong,
#about b {
	color: var(--v-green-dark) !important;
}

/* Мисията в края на текста — открояваме я като цитат, а не като поредния получер ред. */
#about .hestia-about-content p:last-of-type strong {
	display: block;
	background: var(--v-green-soft);
	border-left: 4px solid var(--v-gold);
	border-radius: var(--v-radius);
	padding: 16px 20px;
	margin-top: 18px;
	font-size: 16px;
	line-height: 1.6;
}

/* ==========================================================================
   7. ЛОГА НА ПАРТНЬОРИ
   ========================================================================== */

#clients.hestia-clients-bar {
	background-color: var(--v-white) !important;
	padding: 30px 0 !important;
	border-top: 1px solid var(--v-border);
	border-bottom: 1px solid var(--v-border);
}

#clients img {
	max-height: 74px;
	width: auto;
	filter: grayscale(35%);
	opacity: .9;
	transition: filter .2s ease, opacity .2s ease;
}

#clients img:hover {
	filter: none;
	opacity: 1;
}

/* ==========================================================================
   8. НОВИНИ — изравнени карти с еднаква височина
   ========================================================================== */

#blog.hestia-blogs {
	background-color: var(--v-cream) !important;
	padding: 52px 0 !important;
}

#blog .hestia-title,
#blog h2.hestia-title {
	color: var(--v-green-dark) !important;
	font-size: 28px !important;
}

#blog .description {
	margin-bottom: 30px !important;
}

/* Редът от карти на flex, за да не се разкривява при различна дължина.
   ⚠️ Картите живеят в .hestia-blog-content > .row, а не директно в .container,
   и article-ите нямат клас .hestia-blog-item — таргетираме самите <article>. */
#blog .hestia-blog-content > .row,
#blog .row.hestia-blogs-content {
	display: flex !important;
	flex-wrap: wrap;
	align-items: stretch;
}

#blog .hestia-blog-content > .row > article,
#blog article.hestia-blog-item,
#blog .hestia-blog-item {
	display: flex !important;
	margin-bottom: 26px;
	float: none !important;
	vertical-align: top;
}

#blog .card.card-blog,
#blog .card-plain.card-blog {
	background-color: var(--v-white) !important;
	border: 1px solid var(--v-border);
	border-radius: var(--v-radius);
	box-shadow: var(--v-shadow);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	width: 100%;
	margin: 0;
	transition: transform .15s ease, box-shadow .15s ease;
}

#blog .card.card-blog:hover {
	transform: translateY(-3px);
	box-shadow: var(--v-shadow-lift);
	border-color: var(--v-green-line);
}

#blog .card-blog .card-image,
#blog .card-blog .card-image a {
	display: block;
	width: 100%;
	height: 190px;
	margin: 0;
	border-radius: 0;
	box-shadow: none;
	overflow: hidden;
}

#blog .card-blog .card-image img {
	width: 100%;
	height: 190px;
	object-fit: cover;
	display: block;
	border-radius: 0;
	box-shadow: none;
	transform: none;
}

/* Постове без картинка получават зелена лента, за да не пропадне редът. */
#blog .v-no-image .card-blog .content::before,
.archive .v-no-image .card-blog .content::before,
.blog .v-no-image .card-blog .content::before {
	content: "";
	display: block;
	height: 6px;
	background: linear-gradient(90deg, var(--v-green) 0%, var(--v-gold) 100%);
	margin: -22px -22px 18px;
}

#blog .card-blog .content,
#blog .card-blog .card-body {
	padding: 22px !important;
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
}

/* Категориите бяха с произволен цвят всяка — един стил за всички. */
#blog .card-blog .category,
#blog .card-blog .category a,
#blog .card-blog .card-category,
#blog .card-blog .card-category a {
	color: var(--v-green) !important;
	font-size: 11.5px !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: .5px;
	margin: 0 0 8px !important;
}

#blog .card-blog .card-title,
#blog .card-blog h4.card-title {
	font-size: 17px !important;
	line-height: 1.35 !important;
	margin: 0 0 10px !important;
	font-weight: 700;
}

#blog .card-blog .card-title a,
#blog .card-blog .blog-item-title-link {
	color: var(--v-green-dark) !important;
}

#blog .card-blog .card-title a:hover {
	color: var(--v-green) !important;
}

#blog .card-blog .card-description {
	font-size: 14px !important;
	line-height: 1.6 !important;
	flex: 1 1 auto;
	margin-bottom: 14px !important;
}

#blog .card-blog .card-description a,
#blog .card-blog .moretag,
#blog .card-blog .more-link {
	color: var(--v-green) !important;
	font-weight: 600;
	white-space: nowrap;
}

#blog .card-blog .card-footer,
#blog .card-blog .footer {
	margin-top: auto;
	padding-top: 12px;
	border-top: 1px solid var(--v-border);
	font-size: 12.5px;
	color: var(--v-muted);
}

/* ==========================================================================
   9. КОНТАКТИ — краят на моноширинния <pre>
   ========================================================================== */

#contact.hestia-contact,
#contact.contactus {
	background-image: none !important;
	background-color: var(--v-green-dark) !important;
	padding: 48px 0 !important;
}

/* Hestia затъмнява секцията с ::after (rgba(0,0,0,.7)) заради фоновата снимка.
   Снимката е махната — затъмнението прави зеленото почти черно. */
#contact::before,
#contact::after,
#contact .header-filter::before,
#contact .header-filter::after {
	display: none !important;
	background: none !important;
}

#contact .hestia-title,
#contact h2,
#contact .title {
	color: var(--v-white) !important;
	font-size: 28px !important;
}

#contact .description,
#contact .subtitle {
	color: rgba(255, 255, 255, .85) !important;
}

/* ⚠️ Бялата карта обхваща САМО данните за контакт. Ако легне върху цялата
   колона, заглавието „Контакти“ (бяло) става невидимо върху белия фон. */
#contact .row {
	display: flex;
	justify-content: center;
}

#contact .hestia-contact-title-area,
#contact .col-md-5 {
	float: none !important;
	width: auto !important;
	max-width: 620px;
	padding: 0 15px !important;
	background: none !important;
	box-shadow: none !important;
	text-align: center;
}

#contact .hestia-description,
#contact .hestia-contact-content,
#contact .contact-form {
	background-color: var(--v-white);
	border-radius: var(--v-radius);
	box-shadow: var(--v-shadow-lift);
	padding: 24px 30px !important;
	margin-top: 20px;
	text-align: left;
	display: inline-block;
	min-width: 100%;
}

/* Ключово: <pre> в контактите вече не се рендира като код. */
#contact pre,
#contact .hestia-contact-content pre {
	background: none !important;
	border: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	font-family: inherit !important;
	font-size: 16px !important;
	line-height: 1.85 !important;
	color: var(--v-ink) !important;
	white-space: normal !important;
	word-wrap: break-word;
	overflow: visible !important;
	border-radius: 0 !important;
}

#contact .hestia-contact-content,
#contact .hestia-contact-content p,
#contact .hestia-contact-content li {
	color: var(--v-ink) !important;
	font-size: 16px !important;
	line-height: 1.85 !important;
}

#contact .hestia-contact-content strong {
	color: var(--v-green-dark) !important;
	font-weight: 700;
	min-width: 92px;
	display: inline-block;
}

#contact .hestia-contact-content em {
	font-style: normal;
	color: var(--v-ink) !important;
}

#contact .hestia-contact-content a {
	color: var(--v-green) !important;
	font-weight: 600;
}

/* ==========================================================================
   10. ФУТЕР — сивият текст върху тъмносиво изчезваше
   ========================================================================== */

footer.footer,
.footer,
footer {
	background-color: var(--v-green-dark) !important;
	color: rgba(255, 255, 255, .88) !important;
	padding: 40px 0 22px !important;
	border-top: 4px solid var(--v-gold);
}

footer.footer *,
.footer * {
	text-shadow: none !important;
}

footer .widget-title,
footer h1, footer h2, footer h3, footer h4, footer h5,
.footer .widget-title {
	color: var(--v-white) !important;
	font-size: 17px !important;
	font-weight: 700 !important;
	text-transform: none !important;
	letter-spacing: .2px;
	margin-bottom: 12px !important;
	padding-bottom: 8px;
	border-bottom: 2px solid rgba(255, 255, 255, .18);
}

footer p,
footer li,
footer td,
footer span,
footer div,
footer em,
footer i,
.footer p,
.footer li {
	color: rgba(255, 255, 255, .88) !important;
	font-style: normal !important;
	font-size: 14.5px !important;
	line-height: 1.7 !important;
}

footer a,
.footer a {
	color: #b9e3c8 !important;
	text-decoration: none;
}

footer a:hover,
.footer a:hover {
	color: var(--v-white) !important;
	text-decoration: underline;
}

footer .copyright,
.footer .copyright {
	color: rgba(255, 255, 255, .75) !important;
	border-top: 1px solid rgba(255, 255, 255, .16);
	margin-top: 26px;
	padding-top: 16px;
	font-size: 13.5px !important;
}

footer .copyright a,
.footer .copyright a {
	color: #b9e3c8 !important;
	font-weight: 600;
}

/* ==========================================================================
   11. ВЪТРЕШНИ СТРАНИЦИ, АРХИВИ, ЕДИНИЧНА ПУБЛИКАЦИЯ
   ========================================================================== */

.main.main-raised,
.blog .main,
.archive .main,
.single .main,
.page .main {
	background-color: var(--v-white);
	border-radius: var(--v-radius);
	box-shadow: var(--v-shadow);
	margin-top: -28px;
}

.single .entry-content,
.single .page-content-wrap,
.page .entry-content,
.page .page-content-wrap,
.single-post .entry-content,
.single-post .page-content-wrap {
	font-size: 16.5px;
	line-height: 1.75;
	color: var(--v-ink);
}

.single .entry-content h2,
.single .page-content-wrap h2,
.page .entry-content h2,
.page .page-content-wrap h2 {
	font-size: 24px;
	margin-top: 30px;
	padding-bottom: 8px;
	border-bottom: 2px solid var(--v-green-soft);
}

.single .entry-content h3,
.single .page-content-wrap h3,
.page .entry-content h3,
.page .page-content-wrap h3 {
	font-size: 20px;
	margin-top: 24px;
}

.single .entry-content a,
.single .page-content-wrap a,
.page .entry-content a,
.page .page-content-wrap a {
	color: var(--v-green);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.single .entry-content img,
.single .page-content-wrap img,
.page .entry-content img,
.page .page-content-wrap img {
	border-radius: var(--v-radius);
	max-width: 100%;
	height: auto;
}

/* Прикачените документи (PDF/DOC) са гръбнакът на училищния сайт — правим ги видими. */
.entry-content a[href$=".pdf"],
.page-content-wrap a[href$=".pdf"],
.entry-content a[href$=".PDF"],
.page-content-wrap a[href$=".PDF"],
.entry-content a[href$=".doc"],
.page-content-wrap a[href$=".doc"],
.entry-content a[href$=".docx"],
.page-content-wrap a[href$=".docx"],
.entry-content a[href$=".xls"],
.page-content-wrap a[href$=".xls"],
.entry-content a[href$=".xlsx"],
.page-content-wrap a[href$=".xlsx"] {
	display: inline-block;
	background-color: var(--v-green-soft);
	border: 1px solid var(--v-green-line);
	border-left: 4px solid var(--v-green);
	border-radius: var(--v-radius);
	padding: 9px 14px;
	margin: 4px 6px 4px 0;
	color: var(--v-green-dark) !important;
	font-weight: 600;
	text-decoration: none !important;
	line-height: 1.4;
}

.entry-content a[href$=".pdf"]:hover,
.page-content-wrap a[href$=".pdf"]:hover,
.entry-content a[href$=".doc"]:hover,
.page-content-wrap a[href$=".doc"]:hover,
.entry-content a[href$=".docx"]:hover,
.page-content-wrap a[href$=".docx"]:hover {
	background-color: var(--v-white);
	box-shadow: var(--v-shadow);
}

/* Типът на файла — текстов бадж вместо иконен шрифт: FontAwesome не се
   рендира надеждно в ::before на произволна връзка. */
.entry-content a[href$=".pdf"]::before,
.page-content-wrap a[href$=".pdf"]::before,
.entry-content a[href$=".PDF"]::before,
.page-content-wrap a[href$=".PDF"]::before,
.entry-content a[href$=".doc"]::before,
.page-content-wrap a[href$=".doc"]::before,
.entry-content a[href$=".docx"]::before,
.page-content-wrap a[href$=".docx"]::before,
.entry-content a[href$=".xls"]::before,
.page-content-wrap a[href$=".xls"]::before,
.entry-content a[href$=".xlsx"]::before,
.page-content-wrap a[href$=".xlsx"]::before {
	display: inline-block;
	margin-right: 9px;
	padding: 1px 6px;
	border-radius: 3px;
	font-size: 10.5px;
	font-weight: 700;
	letter-spacing: .5px;
	color: #fff;
	vertical-align: 1px;
}

.entry-content a[href$=".pdf"]::before,
.page-content-wrap a[href$=".pdf"]::before,
.entry-content a[href$=".PDF"]::before,
.page-content-wrap a[href$=".PDF"]::before {
	content: "PDF";
	background-color: #b3352c;
}

.entry-content a[href$=".doc"]::before,
.page-content-wrap a[href$=".doc"]::before,
.entry-content a[href$=".docx"]::before,
.page-content-wrap a[href$=".docx"]::before {
	content: "DOC";
	background-color: #1e63a8;
}

.entry-content a[href$=".xls"]::before,
.page-content-wrap a[href$=".xls"]::before,
.entry-content a[href$=".xlsx"]::before,
.page-content-wrap a[href$=".xlsx"]::before {
	content: "XLS";
	background-color: var(--v-green);
}

/* Архивните карти — същият вид като новинарските. */
.archive .card.card-blog,
.blog .card.card-blog,
.search .card.card-blog {
	background-color: var(--v-white) !important;
	border: 1px solid var(--v-border);
	border-radius: var(--v-radius);
	box-shadow: var(--v-shadow);
	padding: 4px;
	margin-bottom: 26px;
}

.archive .card-blog .card-title a,
.blog .card-blog .card-title a {
	color: var(--v-green-dark) !important;
}

.archive .card-blog .category a,
.blog .card-blog .category a {
	color: var(--v-green) !important;
}

/* Странична лента и джаджи. */
.sidebar .widget,
.blog-sidebar .widget,
#secondary .widget {
	background-color: var(--v-white);
	border: 1px solid var(--v-border);
	border-radius: var(--v-radius);
	padding: 20px;
	margin-bottom: 22px;
}

.sidebar .widget-title,
#secondary .widget-title {
	color: var(--v-green-dark) !important;
	font-size: 17px;
	padding-bottom: 9px;
	border-bottom: 2px solid var(--v-green-soft);
	margin-bottom: 12px;
}

/* Пагинация. */
.pagination > li > a,
.pagination > li > span,
.page-numbers {
	color: var(--v-green) !important;
	border-radius: var(--v-radius);
}

.pagination > .active > a,
.pagination > .active > span,
.page-numbers.current {
	background-color: var(--v-green) !important;
	border-color: var(--v-green) !important;
	color: var(--v-white) !important;
}

/* Бутонът „нагоре“. */
.hestia-scroll-to-top,
#hestia-scroll-to-top {
	background-color: var(--v-green-dark) !important;
	color: var(--v-white) !important;
	border-radius: var(--v-radius);
}

/* Таблици (учебни разписания). */
.entry-content table,
.page-content-wrap table {
	width: 100%;
	border-collapse: collapse;
	margin: 18px 0;
	font-size: 15px;
}

.entry-content table th,
.page-content-wrap table th {
	background-color: var(--v-green-dark);
	color: var(--v-white);
	font-weight: 700;
	padding: 10px 12px;
	text-align: left;
	border: 1px solid var(--v-green-mid);
}

.entry-content table td,
.page-content-wrap table td {
	padding: 9px 12px;
	border: 1px solid var(--v-border);
}

.entry-content table tr:nth-child(even) td,
.page-content-wrap table tr:nth-child(even) td {
	background-color: var(--v-green-soft);
}

/* Широките таблици скролват в себе си, а не изкривяват страницата. */
.entry-content .v-table-scroll,
.page-content-wrap .v-table-scroll,
.entry-content .wp-block-table,
.page-content-wrap .wp-block-table {
	overflow-x: auto;
	max-width: 100%;
}

/* Дългите заглавия на публикации (типични за административните текстове)
   разтягат заглавната лента на телефон — по-малък кегел там. */
@media (max-width: 767px) {
	body:not(.home) .page-header.header-small,
	body:not(.home) .page-header.header-filter {
		padding: calc(var(--v-header-h) + 22px) 0 26px !important;
	}

	body:not(.home) .page-header .hestia-title,
	body:not(.home) .page-header h1,
	body:not(.home) .page-header .title {
		font-size: 21px !important;
		line-height: 1.3 !important;
	}

	.single .entry-content,
	.single .page-content-wrap,
	.page .entry-content,
	.page .page-content-wrap {
		font-size: 16px;
	}

	.single .entry-content h2,
	.single .page-content-wrap h2,
	.page .entry-content h2,
	.page .page-content-wrap h2 {
		font-size: 20px;
	}
}

/* ==========================================================================
   12. ДРЕБНИ ПОПРАВКИ
   ========================================================================== */

/* Плаващите бутони на плъгините не бива да закриват футера. */
body {
	--v-fab-clearance: 0;
}

/* Скриваме автора — сайтът е институционален, не блог. (Наследено от Customizer.) */
.single-post .hestia-title + .author,
.author {
	display: none;
}

/* Печат: без хедър, без банер. */
@media print {
	.navbar,
	.carousel,
	#features,
	#clients,
	footer,
	.hestia-scroll-to-top {
		display: none !important;
	}

	.main.main-raised {
		box-shadow: none;
		margin-top: 0;
	}
}

/* ==========================================================================
   13. РАЗДЕЛИТЕЛИ В ПОДМЕНЮТАТА И СТРАНИЦА „КОНТАКТИ“
   ========================================================================== */

/* Елемент с клас `v-sep` получава черта над себе си — отделя администрацията
   от училищния живот, и „Всички проекти“ от отделните програми. */
.navbar .dropdown-menu > li.v-sep {
	border-top: 1px solid var(--v-border);
	margin-top: 7px;
	padding-top: 7px;
}

@media (max-width: 991px) {
	.navbar .dropdown-menu > li.v-sep {
		border-top-color: rgba(255, 255, 255, .22);
	}
}

/* Контактите като списък от плочки, не като голи редове. */
.entry-content ul.v-contacts,
.page-content-wrap ul.v-contacts {
	list-style: none;
	padding: 0;
	margin: 20px 0 26px;
	max-width: 720px;
}

.entry-content ul.v-contacts li,
.page-content-wrap ul.v-contacts li {
	background-color: var(--v-green-soft);
	border: 1px solid var(--v-green-line);
	border-left: 4px solid var(--v-green);
	border-radius: var(--v-radius);
	padding: 13px 18px;
	margin: 0 0 10px;
	font-size: 16.5px;
	line-height: 1.5;
}

.entry-content ul.v-contacts li strong,
.page-content-wrap ul.v-contacts li strong {
	color: var(--v-green-dark);
	display: inline-block;
	min-width: 172px;
}

.entry-content ul.v-contacts li a,
.page-content-wrap ul.v-contacts li a {
	font-weight: 600;
	text-decoration: none;
}

@media (max-width: 600px) {
	.entry-content ul.v-contacts li strong,
	.page-content-wrap ul.v-contacts li strong {
		display: block;
		min-width: 0;
		margin-bottom: 2px;
	}
}

/* Футерът вече носи само кредита — да не зее празен. */
footer.footer .container > .row:empty,
.footer .container > .row:empty {
	display: none;
}

/* ==========================================================================
   14. АРХИВИ — списък: една новина на ред
   ==========================================================================
   Мрежата от три колони режеше заглавията на къси парчета. Списъкът дава на
   заглавието цяла ширина, а окото слиза право надолу.

   ⚠️ Структурата не е това, което изглежда:
     .blog-posts-wrap
       article.card.card-blog        ← самият <article> носи класа .card
         .row
           .col-ms-5 → .card-image   (липсва, ако публикацията няма картинка)
           .col-ms-7 → текст         (става .col-sm-12 без картинка)
   Затова <article> е само обвивка, а вътрешният .row е визуалната карта. */

/* ⚠️ Bootstrap-овият `col-md-offset-1` слага `margin-left: 8.33%`, което бие
   `margin: 0 auto` — колоната увисваше 143px вляво от центъра. Плаването и
   отстъпът се нулират изрично. Сайдбар няма никъде, съдържанието е центрирано. */
.archive .blog-posts-wrap,
.blog .blog-posts-wrap,
.search .blog-posts-wrap,
.category .blog-posts-wrap {
	display: block;
	float: none !important;
	max-width: 900px;
	width: 100% !important;
	margin-left: auto !important;
	margin-right: auto !important;
	left: auto !important;
	right: auto !important;
}

.archive .blog-posts-wrap > article,
.blog .blog-posts-wrap > article,
.search .blog-posts-wrap > article,
.category .blog-posts-wrap > article {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	padding: 0 !important;
	margin: 0 0 20px !important;
	background: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
}

/* Вътрешният .row е самата карта — картинка вляво, текст вдясно. */
.archive .blog-posts-wrap > article > .row,
.blog .blog-posts-wrap > article > .row,
.search .blog-posts-wrap > article > .row,
.category .blog-posts-wrap > article > .row {
	display: flex;
	flex-direction: row;
	align-items: stretch;
	width: 100%;
	margin: 0 !important;
	min-height: 186px;
	background-color: var(--v-white);
	border: 1px solid var(--v-border);
	border-radius: var(--v-radius);
	box-shadow: var(--v-shadow);
	overflow: hidden;
	transition: box-shadow .15s ease, border-color .15s ease;
}

.archive .blog-posts-wrap > article > .row:hover,
.blog .blog-posts-wrap > article > .row:hover,
.category .blog-posts-wrap > article > .row:hover {
	box-shadow: var(--v-shadow-lift);
	border-color: var(--v-green-line);
}

/* Картинката — фиксирана колона вляво, на цялата височина на реда. */
.archive .blog-posts-wrap > article > .row > .col-ms-5,
.blog .blog-posts-wrap > article > .row > .col-ms-5,
.category .blog-posts-wrap > article > .row > .col-ms-5 {
	flex: 0 0 268px;
	width: 268px !important;
	max-width: 268px !important;
	float: none !important;
	padding: 0 !important;
	overflow: hidden;
}

.archive .blog-posts-wrap .card-image,
.blog .blog-posts-wrap .card-image,
.category .blog-posts-wrap .card-image,
.archive .blog-posts-wrap .card-image a,
.blog .blog-posts-wrap .card-image a,
.category .blog-posts-wrap .card-image a {
	display: block;
	width: 100% !important;
	height: 100%;
	min-height: 186px;
	margin: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	overflow: hidden;
	transform: none !important;
	max-width: none !important;
}

.archive .blog-posts-wrap .card-image img,
.blog .blog-posts-wrap .card-image img,
.category .blog-posts-wrap .card-image img {
	width: 100% !important;
	height: 100% !important;
	min-height: 186px;
	object-fit: cover;
	display: block;
	border-radius: 0 !important;
	box-shadow: none !important;
	transform: none !important;
	max-width: none !important;
}

/* Текстовата колона — и в двата ѝ вида (със и без картинка). */
.archive .blog-posts-wrap > article > .row > .col-ms-7,
.blog .blog-posts-wrap > article > .row > .col-ms-7,
.category .blog-posts-wrap > article > .row > .col-ms-7,
.archive .blog-posts-wrap > article > .row > .col-sm-12,
.blog .blog-posts-wrap > article > .row > .col-sm-12,
.category .blog-posts-wrap > article > .row > .col-sm-12 {
	flex: 1 1 auto;
	width: auto !important;
	max-width: none !important;
	float: none !important;
	padding: 22px 26px !important;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: left !important;
	min-width: 0;
}

/* Мета ред: категория вляво, дата вдясно на същия ред. */
.archive .blog-posts-wrap .category,
.blog .blog-posts-wrap .category,
.category .blog-posts-wrap .category,
.archive .blog-posts-wrap .category a,
.blog .blog-posts-wrap .category a,
.category .blog-posts-wrap .category a {
	color: var(--v-green) !important;
	font-size: 11.5px !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: .5px;
	line-height: 1.3;
}

.archive .blog-posts-wrap .category,
.blog .blog-posts-wrap .category,
.category .blog-posts-wrap .category {
	order: 1;
	margin: 0 0 7px !important;
	padding-right: 130px;
}

/* Датата идва от филтъра hestia_blog_post_meta; в DOM-а е последна, затова
   се вдига на реда на категорията. */
.archive .blog-posts-wrap .posted-by,
.blog .blog-posts-wrap .posted-by,
.category .blog-posts-wrap .posted-by {
	display: block !important;
	position: absolute;
	top: 22px;
	right: 26px;
	margin: 0 !important;
	padding: 0 !important;
	font-size: 12.5px !important;
	color: var(--v-muted) !important;
	font-style: normal;
	line-height: 1.3;
}

.archive .blog-posts-wrap > article > .row > .col-ms-7,
.blog .blog-posts-wrap > article > .row > .col-ms-7,
.category .blog-posts-wrap > article > .row > .col-ms-7,
.archive .blog-posts-wrap > article > .row > .col-sm-12,
.blog .blog-posts-wrap > article > .row > .col-sm-12,
.category .blog-posts-wrap > article > .row > .col-sm-12 {
	position: relative;
}

.archive .blog-posts-wrap .posted-by a,
.blog .blog-posts-wrap .posted-by a,
.category .blog-posts-wrap .posted-by a {
	color: var(--v-muted) !important;
	text-decoration: none;
}

/* Заглавието — вече има цяла ширина, затова е по-едро. */
.archive .blog-posts-wrap .card-title,
.blog .blog-posts-wrap .card-title,
.category .blog-posts-wrap .card-title {
	order: 2;
	font-size: 20px !important;
	line-height: 1.32 !important;
	margin: 0 0 9px !important;
	font-weight: 700;
	text-align: left !important;
	overflow-wrap: break-word;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.archive .blog-posts-wrap .card-title a,
.blog .blog-posts-wrap .card-title a,
.category .blog-posts-wrap .card-title a {
	color: var(--v-green-dark) !important;
	display: block;
}

.archive .blog-posts-wrap .card-title a:hover,
.blog .blog-posts-wrap .card-title a:hover,
.category .blog-posts-wrap .card-title a:hover {
	color: var(--v-green) !important;
}

.archive .blog-posts-wrap .card-description,
.blog .blog-posts-wrap .card-description,
.category .blog-posts-wrap .card-description {
	order: 3;
	font-size: 14.5px !important;
	line-height: 1.62 !important;
	color: var(--v-muted) !important;
	text-align: left !important;
	margin: 0 !important;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Публикация без никаква картинка получава тънка цветна лента вляво,
   за да не изглежда редът осакатен до съседите си със снимка. */
.archive .blog-posts-wrap > article > .row > .col-sm-12,
.blog .blog-posts-wrap > article > .row > .col-sm-12,
.category .blog-posts-wrap > article > .row > .col-sm-12 {
	border-left: 5px solid var(--v-green-line);
}

/* Ако откъсът носи <img>, тя не бива да излиза втори път. */
.archive .blog-posts-wrap .card-description img,
.blog .blog-posts-wrap .card-description img,
.category .blog-posts-wrap .card-description img {
	display: none !important;
}

.archive .blog-posts-wrap .card-description a,
.blog .blog-posts-wrap .card-description a,
.category .blog-posts-wrap .card-description a {
	color: var(--v-green) !important;
	font-weight: 600;
	white-space: nowrap;
}

/* Телефон и таблет: картинката минава отгоре, датата се връща в потока. */
@media (max-width: 767px) {
	.archive .blog-posts-wrap > article > .row,
	.blog .blog-posts-wrap > article > .row,
	.search .blog-posts-wrap > article > .row,
	.category .blog-posts-wrap > article > .row {
		flex-direction: column;
	}

	.archive .blog-posts-wrap > article > .row > .col-ms-5,
	.blog .blog-posts-wrap > article > .row > .col-ms-5,
	.category .blog-posts-wrap > article > .row > .col-ms-5 {
		flex: 0 0 auto;
		width: 100% !important;
		max-width: 100% !important;
	}

	.archive .blog-posts-wrap .card-image,
	.blog .blog-posts-wrap .card-image,
	.category .blog-posts-wrap .card-image,
	.archive .blog-posts-wrap .card-image a,
	.blog .blog-posts-wrap .card-image a,
	.category .blog-posts-wrap .card-image a,
	.archive .blog-posts-wrap .card-image img,
	.blog .blog-posts-wrap .card-image img,
	.category .blog-posts-wrap .card-image img {
		height: 190px !important;
		min-height: 190px;
	}

	.archive .blog-posts-wrap > article > .row > .col-ms-7,
	.blog .blog-posts-wrap > article > .row > .col-ms-7,
	.category .blog-posts-wrap > article > .row > .col-ms-7,
	.archive .blog-posts-wrap > article > .row > .col-sm-12,
	.blog .blog-posts-wrap > article > .row > .col-sm-12,
	.category .blog-posts-wrap > article > .row > .col-sm-12 {
		padding: 18px 20px !important;
	}

	.archive .blog-posts-wrap .posted-by,
	.blog .blog-posts-wrap .posted-by,
	.category .blog-posts-wrap .posted-by {
		position: static;
		order: 0;
		margin: 0 0 6px !important;
	}

	.archive .blog-posts-wrap .category,
	.blog .blog-posts-wrap .category,
	.category .blog-posts-wrap .category {
		padding-right: 0;
	}

	.archive .blog-posts-wrap .card-title,
	.blog .blog-posts-wrap .card-title,
	.category .blog-posts-wrap .card-title {
		font-size: 18px !important;
		-webkit-line-clamp: 3;
	}
}

/* ==========================================================================
   15. ТАБЛИЦИ С ХОРА — „Екип“ и „Обществен съвет“
   ========================================================================== */

.entry-content table.v-staff,
.page-content-wrap table.v-staff {
	width: 100%;
	max-width: 820px;
	border-collapse: separate;
	border-spacing: 0;
	margin: 22px 0 30px;
	font-size: 15.5px;
	background-color: var(--v-white);
	border: 1px solid var(--v-border);
	border-radius: var(--v-radius);
	overflow: hidden;
	box-shadow: var(--v-shadow);
}

.entry-content table.v-staff caption,
.page-content-wrap table.v-staff caption {
	caption-side: top;
	text-align: left;
	padding: 0 0 10px;
	font-size: 14px;
	color: var(--v-muted);
	font-style: normal;
}

/* Заглавен ред. */
.entry-content table.v-staff thead th,
.page-content-wrap table.v-staff thead th {
	background-color: var(--v-green-dark);
	color: var(--v-white);
	font-weight: 700;
	font-size: 13px;
	letter-spacing: .4px;
	text-transform: uppercase;
	text-align: left;
	padding: 12px 18px;
	border: 0;
}

.entry-content table.v-staff thead th:last-child,
.page-content-wrap table.v-staff thead th:last-child {
	width: 52%;
}

/* Групиращ ред („Начален етап“, „Администрация“ …). */
.entry-content table.v-staff tr.v-group th,
.page-content-wrap table.v-staff tr.v-group th {
	background-color: var(--v-green-soft);
	color: var(--v-green-dark) !important;
	font-size: 12.5px;
	font-weight: 700;
	letter-spacing: .5px;
	text-transform: uppercase;
	text-align: left;
	padding: 11px 18px;
	border: 0;
	border-top: 1px solid var(--v-green-line);
	border-bottom: 1px solid var(--v-green-line);
}

.entry-content table.v-staff tr.v-group:first-child th,
.page-content-wrap table.v-staff tr.v-group:first-child th {
	border-top: 0;
}

/* Брояч в скоба вдясно на групата. */
.entry-content table.v-staff .v-count,
.page-content-wrap table.v-staff .v-count {
	display: inline-block;
	margin-left: 8px;
	padding: 1px 8px;
	border-radius: 10px;
	background-color: var(--v-green);
	color: var(--v-white);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0;
	vertical-align: 1px;
}

/* Редове с хора. */
.entry-content table.v-staff tbody th[scope="row"],
.page-content-wrap table.v-staff tbody th[scope="row"] {
	font-weight: 600;
	color: var(--v-ink);
	text-align: left;
	padding: 11px 18px;
	border: 0;
	border-bottom: 1px solid var(--v-border);
	background: none;
	white-space: nowrap;
}

.entry-content table.v-staff tbody td,
.page-content-wrap table.v-staff tbody td {
	color: var(--v-muted);
	padding: 11px 18px;
	border: 0;
	border-bottom: 1px solid var(--v-border);
	background: none;
	line-height: 1.45;
}

.entry-content table.v-staff tbody tr:last-child th,
.entry-content table.v-staff tbody tr:last-child td,
.page-content-wrap table.v-staff tbody tr:last-child th,
.page-content-wrap table.v-staff tbody tr:last-child td {
	border-bottom: 0;
}

.entry-content table.v-staff tbody tr:not(.v-group):hover th,
.entry-content table.v-staff tbody tr:not(.v-group):hover td,
.page-content-wrap table.v-staff tbody tr:not(.v-group):hover th,
.page-content-wrap table.v-staff tbody tr:not(.v-group):hover td {
	background-color: #fafbfa;
}

/* Председателят на обществения съвет се откроява. */
.entry-content table.v-staff tr.v-chair th,
.entry-content table.v-staff tr.v-chair td,
.page-content-wrap table.v-staff tr.v-chair th,
.page-content-wrap table.v-staff tr.v-chair td {
	background-color: var(--v-green-soft);
	color: var(--v-green-dark) !important;
	font-weight: 700;
}

.entry-content table.v-staff tr.v-chair th,
.page-content-wrap table.v-staff tr.v-chair th {
	box-shadow: inset 4px 0 0 var(--v-gold);
}

/* Телефон: името и длъжността един под друг, вместо смачкани колони. */
@media (max-width: 600px) {
	.entry-content table.v-staff,
	.page-content-wrap table.v-staff {
		font-size: 15px;
	}

	.entry-content table.v-staff thead,
	.page-content-wrap table.v-staff thead {
		display: none;
	}

	.entry-content table.v-staff tbody tr:not(.v-group),
	.page-content-wrap table.v-staff tbody tr:not(.v-group) {
		display: block;
		padding: 10px 16px;
		border-bottom: 1px solid var(--v-border);
	}

	.entry-content table.v-staff tbody tr:not(.v-group) th[scope="row"],
	.entry-content table.v-staff tbody tr:not(.v-group) td,
	.page-content-wrap table.v-staff tbody tr:not(.v-group) th[scope="row"],
	.page-content-wrap table.v-staff tbody tr:not(.v-group) td {
		display: block;
		padding: 0;
		border: 0;
		white-space: normal;
	}

	.entry-content table.v-staff tbody tr:not(.v-group) td,
	.page-content-wrap table.v-staff tbody tr:not(.v-group) td {
		font-size: 13.5px;
		margin-top: 2px;
	}

	.entry-content table.v-staff tr.v-group th,
	.page-content-wrap table.v-staff tr.v-group th {
		display: block;
	}

	.entry-content table.v-staff tr.v-chair th,
	.page-content-wrap table.v-staff tr.v-chair th {
		box-shadow: none;
	}

	.entry-content table.v-staff tr.v-chair,
	.page-content-wrap table.v-staff tr.v-chair {
		border-left: 4px solid var(--v-gold);
	}
}

/* ==========================================================================
   16. ГАЛЕРИЯ — мрежа от снимки + преглед на цял екран
   ==========================================================================
   Публикациите носят снимките като поредица голи <img> (най-богатата има 56).
   JS-ът (assets/gallery.js) ги групира в мрежа и добавя прегледа; тук е видът. */

.v-gallery {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
	gap: 10px;
	margin: 22px 0 26px;
}

.v-gallery-item {
	margin: 0;
	padding: 0;
	overflow: hidden;
	border-radius: var(--v-radius);
	background-color: var(--v-green-soft);
	line-height: 0;
}

.v-gallery-item img {
	width: 100% !important;
	height: 150px !important;
	object-fit: cover;
	display: block;
	margin: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	transition: transform .25s ease;
}

.v-gallery-item:hover img {
	transform: scale(1.05);
}

/* Всяка снимка в съдържанието се отваря — показваме го с курсора. */
.entry-content img.v-zoomable,
.page-content-wrap img.v-zoomable {
	cursor: zoom-in;
}

.entry-content img.v-zoomable:focus-visible,
.page-content-wrap img.v-zoomable:focus-visible {
	outline: 3px solid var(--v-gold);
	outline-offset: 3px;
}

/* --- Прегледът на цял екран --- */

body.v-lb-open {
	overflow: hidden;
}

.v-lb {
	position: fixed;
	inset: 0;
	z-index: 99999;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: rgba(8, 26, 16, .94);
	padding: 56px 68px;
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
}

.v-lb[hidden] {
	display: none !important;
}

.v-lb-stage {
	display: flex;
	align-items: center;
	justify-content: center;
	max-width: 100%;
	max-height: 100%;
	position: relative;
}

.v-lb-img {
	max-width: 100%;
	max-height: calc(100vh - 112px);
	width: auto;
	height: auto;
	display: block;
	border-radius: var(--v-radius);
	box-shadow: 0 12px 44px rgba(0, 0, 0, .5);
	transition: opacity .18s ease;
	background-color: rgba(255, 255, 255, .04);
}

.v-lb-spin {
	position: absolute;
	width: 34px;
	height: 34px;
	border: 3px solid rgba(255, 255, 255, .25);
	border-top-color: var(--v-white);
	border-radius: 50%;
	animation: v-spin .7s linear infinite;
}

@keyframes v-spin {
	to {
		transform: rotate(360deg);
	}
}

.v-lb-nav,
.v-lb-close {
	position: absolute;
	background-color: rgba(255, 255, 255, .12);
	color: var(--v-white);
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: 50%;
	cursor: pointer;
	line-height: 1;
	transition: background-color .15s ease, transform .15s ease;
	padding: 0;
}

.v-lb-nav:hover,
.v-lb-close:hover {
	background-color: rgba(255, 255, 255, .26);
}

.v-lb-nav:focus-visible,
.v-lb-close:focus-visible {
	outline: 3px solid var(--v-gold);
	outline-offset: 2px;
}

.v-lb-nav {
	top: 50%;
	transform: translateY(-50%);
	width: 52px;
	height: 52px;
	font-size: 34px;
}

.v-lb-nav:hover {
	transform: translateY(-50%) scale(1.06);
}

.v-lb-prev {
	left: 14px;
}

.v-lb-next {
	right: 14px;
}

.v-lb-close {
	top: 14px;
	right: 14px;
	width: 44px;
	height: 44px;
	font-size: 28px;
}

.v-lb-count {
	position: absolute;
	bottom: 16px;
	left: 50%;
	transform: translateX(-50%);
	margin: 0;
	padding: 6px 16px;
	border-radius: 20px;
	background-color: rgba(0, 0, 0, .45);
	color: rgba(255, 255, 255, .92) !important;
	font-size: 13.5px;
	letter-spacing: .3px;
}

.v-lb-count[hidden] {
	display: none;
}

@media (max-width: 767px) {
	.v-lb {
		padding: 52px 10px 64px;
	}

	.v-lb-img {
		max-height: calc(100vh - 116px);
	}

	.v-lb-nav {
		width: 44px;
		height: 44px;
		font-size: 28px;
		top: auto;
		bottom: 14px;
		transform: none;
	}

	.v-lb-nav:hover {
		transform: none;
	}

	.v-lb-prev {
		left: 16px;
	}

	.v-lb-next {
		right: 16px;
	}

	.v-lb-count {
		bottom: 26px;
	}

	.v-gallery {
		grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
		gap: 8px;
	}

	.v-gallery-item img {
		height: 118px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	.v-gallery-item img,
	.v-lb-img,
	.v-lb-nav,
	.v-lb-close {
		transition: none;
	}

	.v-gallery-item:hover img {
		transform: none;
	}
}

/* ==========================================================================
   17. ЦЕНТРИРАНЕ БЕЗ САЙДБАР
   ==========================================================================
   Сайдбар няма никъде (hestia_blog_sidebar_layout = full-width), затова
   съдържателните колони се центрират, вместо да плават вляво с Bootstrap
   отстъп, който при по-тясно съдържание изкривява центъра. */

.single .single-post-container,
.single .col-md-8.col-md-offset-2,
.page .page-content-wrap,
.page .col-md-8.col-md-offset-2,
.archive .col-md-8.col-md-offset-2,
.search .col-md-8.col-md-offset-2,
.error404 .col-md-8.col-md-offset-2 {
	float: none !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* Заглавните ленти на вътрешните страници също. */
body:not(.home) .page-header .col-md-10.col-md-offset-1,
body:not(.home) .page-header .col-md-8.col-md-offset-2 {
	float: none !important;
	margin-left: auto !important;
	margin-right: auto !important;
}
