/*
 * Designul nou al site-ului (improspatare vizuala, aceleasi culori).
 * Se incarca dupa style.css pe toate paginile (wp_bootstrap_theme_styles() in functions.php);
 * partile care au nevoie de HTML/JS sunt tot in functions.php: breadcrumb, footer, antetul fix.
 */

:root {
	--djv-blue: #337ab7;        /* linkuri, etichete (Bootstrap) */
	--djv-blue-dark: #23527c;
	--djv-blue-soft: rgba(51, 122, 183, .08);
	--djv-yellow: #FEE21D;      /* bara de sus / jos */
	--djv-red: #ff0000;         /* Fresh */
	--djv-text: #2b2f33;
	--djv-muted: #5c646c;
	--djv-line: #e6e8eb;
	--djv-bg: #f4f5f7;
	--djv-radius: 10px;
	--djv-shadow: 0 1px 2px rgba(16, 24, 40, .05), 0 4px 16px rgba(16, 24, 40, .06);
}

/* ---------- baza ---------- */

body {
	background: var(--djv-bg);
	color: var(--djv-text);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	font-size: 14px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
}

a {
	transition: color .15s ease, background-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
a:hover, a:focus {
	color: var(--djv-blue-dark);
}

/* ---------- bara galbena de sus ---------- */

header .top-bar:first-child {
	padding: 3px 0;
}
/* limbile: pastile EN · RO · RU (doar CSS; pluginul afiseaza steagurile celorlalte limbi) */
.translation-bar {
	display: flex;
	align-items: center;
	gap: 4px;
	min-height: 24px;
}
.translation-bar a {
	display: inline-flex;
	align-items: center;
	margin: 0 !important;
	padding: 2px 9px;
	border-radius: 999px;
	color: var(--djv-text) !important;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .06em;
	line-height: 16px;
	text-decoration: none;
	transition: background-color .15s ease;
}
.translation-bar a:hover {
	background: rgba(0, 0, 0, .1);
}
.translation-bar a img {
	display: none;
}
/* limba linkului dupa adresa lui (fara :has(), care lipseste in Firefox 115 de pe Windows 7) */
.translation-bar a:after { content: "EN"; }
.translation-bar a[href*="/djv-ro/"]:after { content: "RO"; }
.translation-bar a[href*="/djv-ru/"]:after { content: "RU"; }
.translation-bar a { order: 1; }
.translation-bar a[href*="/djv-ro/"] { order: 2; }
.translation-bar a[href*="/djv-ru/"] { order: 3; }
/* limba curenta: pastila alba, nu e link */
.translation-bar:before {
	padding: 2px 9px;
	border-radius: 999px;
	background: #fff;
	box-shadow: 0 1px 2px rgba(0, 0, 0, .12);
	color: var(--djv-text);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .06em;
	line-height: 16px;
}
html:lang(en) .translation-bar:before { content: "EN"; order: 1; }
html:lang(ro) .translation-bar:before { content: "RO"; order: 2; }
html:lang(ru) .translation-bar:before { content: "RU"; order: 3; }
#social_menu > li > a {
	color: var(--djv-text);
	border-radius: 6px;
	padding: 2px 6px;
}
#social_menu > li > a:hover {
	background: rgba(0, 0, 0, .08);
	color: var(--djv-text);
}

/* ---------- antetul cu logo si meniul principal ---------- */

/* antet curat: fara poza de fundal, alb cu o tenta galbena foarte discreta */
.navbar_backround {
	background: radial-gradient(ellipse at 15% 0%, rgba(254, 226, 29, .16) 0%, rgba(254, 226, 29, 0) 55%),
		linear-gradient(180deg, #ffffff 0%, #fffdf3 100%);
	border-bottom: 1px solid #f1e7b0;
	box-shadow: 0 2px 10px rgba(16, 24, 40, .06);
	position: relative;
	z-index: 10;
}
.navbar_backround .navbar {
	opacity: 1;
	background: transparent;
	border: 0;
	min-height: 0;
}

/* logo: varianta vectoriala (clara pe orice ecran) + indicatie ca duce la prima pagina */
.navbar_backround .navbar-brand {
	position: relative;
	display: block;
	width: 262px;
	height: 100px;
	margin: 6px 0;
	padding: 0;
	background-image: url('images/logo.svg');
	background-size: auto 92%;
	background-position: 8px center;
	background-repeat: no-repeat;
	background-color: transparent;
	transition: opacity .2s ease;
}
.navbar_backround .navbar-brand:hover,
.navbar_backround .navbar-brand:focus {
	opacity: .8;
}

#menu-main-menu {
	padding-top: 6px;
	padding-bottom: 6px;
}
#menu-main-menu > li {
	border-radius: var(--djv-radius);
	transition: background-color .2s ease, transform .2s ease;
}
#menu-main-menu > li > a {
	color: var(--djv-text);
	font-size: 12px;
	font-weight: 500;
	line-height: 1.15;
	padding: 4px 2px 6px;
	background: transparent !important;
}
/* trecerea cu mouse-ul pe ecran mare: placa alba ridicata, iconita marita, bara galbena jos */
@media (min-width: 1300px) {
	#menu-main-menu > li {
		position: relative;
		padding-top: 5px; /* loc pentru iconita marita in placa alba */
		transition: background-color .2s ease, transform .2s ease, box-shadow .2s ease;
	}
	#menu-main-menu > li:before {
		display: inline-block;
		transform-origin: 50% 60%;
		transition: transform .25s ease;
	}
	#menu-main-menu > li:after {
		content: "";
		position: absolute;
		left: 18%;
		right: 18%;
		bottom: 0;
		height: 3px;
		border-radius: 3px;
		background: var(--djv-yellow);
		transform: scaleX(0);
		transition: transform .25s ease;
	}
	#menu-main-menu > li:hover {
		background: #fff;
		transform: translateY(-3px);
		box-shadow: 0 8px 20px rgba(16, 24, 40, .16);
	}
	#menu-main-menu > li:hover:before {
		transform: scale(1.06);
	}
	#menu-main-menu > li:hover:after,
	#menu-main-menu > li.current-menu-item:after,
	#menu-main-menu > li.current-menu-parent:after,
	#menu-main-menu > li.current-page-ancestor:after {
		transform: scaleX(1);
	}
	#menu-main-menu > li:hover > a {
		color: var(--djv-blue);
		font-weight: 600;
	}
	#menu-main-menu > li.fresh-link:hover > a {
		color: var(--djv-red);
	}
}
#menu-main-menu > li.current-menu-item,
#menu-main-menu > li.current-menu-parent,
#menu-main-menu > li.current-page-ancestor {
	background: var(--djv-blue-soft);
}
#menu-main-menu > li.fresh-link > a {
	color: var(--djv-red);
	font-weight: 600;
}

/* butonul hamburger, in tonurile antetului: galben pal, fara chenar, linii ca textul logoului */
.navbar-toggle {
	width: 44px;
	height: 44px;
	margin-top: 34px; /* centrat cu logoul (112px) */
	padding: 0;
	border: 0 !important;
	border-radius: 12px;
	background: rgba(254, 226, 29, .28) !important;
}
.navbar-toggle .icon-bar {
	margin: 0 auto;
	height: 2.5px;
	background-color: var(--djv-text) !important;
	border-radius: 2px;
}
.navbar-toggle .icon-bar + .icon-bar {
	margin-top: 4.5px;
}

/* butonul: cele 3 linii devin X cand meniul e deschis */
.navbar-toggle {
	transition: background-color .2s ease, box-shadow .2s ease;
}
.navbar-toggle:hover {
	background: rgba(254, 226, 29, .55) !important;
}
.navbar-toggle:focus-visible {
	outline: 2px solid var(--djv-blue);
	outline-offset: 2px;
}
.navbar-toggle .icon-bar {
	width: 22px;
	transition: transform .25s ease, opacity .2s ease;
}
.navbar-toggle[aria-expanded="true"],
.navbar-toggle.is-open {
	background: var(--djv-yellow) !important;
	border-color: var(--djv-yellow) !important;
}
.navbar-toggle[aria-expanded="true"] .icon-bar,
.navbar-toggle.is-open .icon-bar {
	background-color: var(--djv-text) !important;
}
.navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(1),
.navbar-toggle.is-open .icon-bar:nth-child(1) {
	transform: translateY(7px) rotate(45deg);
}
.navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(2),
.navbar-toggle.is-open .icon-bar:nth-child(2) {
	opacity: 0;
}
.navbar-toggle[aria-expanded="true"] .icon-bar:nth-child(3),
.navbar-toggle.is-open .icon-bar:nth-child(3) {
	transform: translateY(-7px) rotate(-45deg);
}

/* meniul deschis: placi cu iconita + text, pe 2-4 coloane dupa latime */
@media (max-width: 1299px) {
	.navbar_backround .navbar-collapse {
		border: 0;
		box-shadow: none;
		padding: 0;
	}
	.navbar_backround .navbar-collapse.in,
	.navbar_backround .navbar-collapse.collapsing {
		background: #fff;
		border-radius: 14px;
		box-shadow: 0 10px 30px rgba(16, 24, 40, .14);
		margin: 4px 0 14px;
	}
	#menu-main-menu {
		display: grid !important;
		grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
		gap: 6px;
		width: 100%;
		margin: 0 !important;
		padding: 10px;
	}
	#menu-main-menu:before,
	#menu-main-menu:after {
		display: none; /* clearfix-ul Bootstrap ar ocupa o casuta in grid */
	}
	#menu-main-menu > li {
		width: auto !important;
		float: none;
		border-radius: 10px;
	}
	#menu-main-menu > li:hover {
		transform: none;
	}
	#menu-main-menu > li > a {
		display: flex;
		align-items: center;
		gap: 10px;
		font-size: 14px;
		font-weight: 500;
		line-height: 1.25;
		text-align: left;
		padding: 8px 10px;
		min-height: 52px;
	}
	#menu-main-menu > li > a:before {
		flex: 0 0 32px;
		width: 32px !important;
		height: 32px !important;
		margin: 0;
	}
	#menu-main-menu > li.current-menu-item,
	#menu-main-menu > li.current-menu-parent,
	#menu-main-menu > li.current-page-ancestor {
		box-shadow: inset 3px 0 0 var(--djv-yellow);
	}
}

/* ---------- bara galbena cu submeniuri (Gas / Water / Heat / Energy) ---------- */

#sub_menus li {
	border-right: 0 !important;
}
#sub_menus li a {
	color: var(--djv-text);
	font-weight: 500;
	padding: 6px 14px !important;
	border-radius: 999px;
	margin: 4px 2px;
}
#sub_menus li a:hover,
#sub_menus li.current-menu-item a {
	background: rgba(0, 0, 0, .08);
	color: var(--djv-text);
}

/* ---------- continutul: un "card" alb pe fundal gri deschis ---------- */

header + .container {
	margin-top: 22px;
	margin-bottom: 22px;
}
#content {
	background: #fff;
	border: 0 !important;
	border-radius: 14px;
	box-shadow: var(--djv-shadow);
	overflow: hidden;
	margin-left: 0;
	margin-right: 0;
}
#main {
	border-left: 1px solid var(--djv-line);
	padding: 20px 26px 26px;
}

/* ---------- meniul din stanga ---------- */

#left {
	background: #fafbfc;
	padding: 14px 8px;
}
#menu-left-menu > li {
	margin: 1px 0;
}
/* grupuri: Fresh + aplicatii | continut | produse si servicii | documente | companie */
#menu-left-menu > li.balance_menu,
#menu-left-menu > li.services_menu,
#menu-left-menu > li.documents_menu,
#menu-left-menu > li.links_menu {
	margin-top: 9px;
	padding-top: 9px;
	position: relative;
}
#menu-left-menu > li.balance_menu:before,
#menu-left-menu > li.services_menu:before,
#menu-left-menu > li.documents_menu:before,
#menu-left-menu > li.links_menu:before {
	content: "";
	position: absolute;
	top: 0;
	left: 10px;
	right: 10px;
	border-top: 1px solid var(--djv-line);
}
#menu-left-menu > li > a {
	color: #3d4650;
	border-radius: 8px;
	padding: 7px 10px;
	display: flex;
	align-items: center;
}
#menu-left-menu > li > a {
	white-space: nowrap;
	padding: 7px 8px;
}
#left {
	padding-left: 6px;
	padding-right: 6px;
}
#menu-left-menu i {
	color: var(--djv-blue);
	min-width: 18px;
	margin-right: 8px !important;
	text-align: center;
	white-space: nowrap;
	flex: 0 0 auto;
}
#menu-left-menu > li > a:hover,
#menu-left-menu > li > a:focus {
	background: var(--djv-blue-soft);
	color: var(--djv-blue);
}
#menu-left-menu > li.current-menu-item > a,
#menu-left-menu > li.current-menu-parent > a,
#menu-left-menu > li.current-post-ancestor > a {
	background: var(--djv-blue-soft);
	color: var(--djv-blue);
	font-weight: 600;
	box-shadow: inset 3px 0 0 var(--djv-yellow);
}
#menu-left-menu > li.fresh_menu > a,
#menu-left-menu > li.fresh_menu > a:hover {
	color: var(--djv-red);
}
.mobile_apps_menu a span {
	text-decoration: none;
	border-bottom: 1px dashed currentColor;
}

@media (max-width: 990px) {
	#left {
		padding: 10px 4px;
	}
	#menu-left-menu > li > a {
		justify-content: center;
		padding: 8px 4px;
	}
	#menu-left-menu i {
		margin-right: 0 !important;
	}
}

/* ---------- etichete (categorii) ---------- */

.label {
	border-radius: 999px;
	font-weight: 600;
	font-size: 10.5px;
	letter-spacing: .03em;
	text-transform: uppercase;
	padding: .35em .85em .3em;
	vertical-align: 2px;
}
.label-primary {
	background-color: var(--djv-blue);
}

/* ---------- lista de articole (prima pagina, categorii) ---------- */

#main article.border-row {
	border-bottom: 1px solid var(--djv-line);
	padding: 16px 10px !important;
	margin: 0 !important;
	border-radius: var(--djv-radius);
	transition: background-color .2s ease;
}
#main article.border-row:last-of-type {
	border-bottom: 0;
}
#main article.border-row:hover {
	background: #fafbfc;
}
#main article .post_content > .col-sm-2 {
	padding-left: 0;
}
#main article .post_content > .col-sm-2 img {
	width: 100%;
	height: auto;
	aspect-ratio: 5 / 3;
	object-fit: cover;
	border-radius: 8px;
	box-shadow: 0 1px 3px rgba(16, 24, 40, .12);
	background: #fff;
	transition: transform .25s ease, box-shadow .25s ease;
}
#main article.border-row:hover .post_content > .col-sm-2 img {
	transform: scale(1.03);
	box-shadow: 0 6px 18px rgba(16, 24, 40, .14);
}
#main article h4 {
	font-size: 17px;
	font-weight: 600;
	line-height: 1.35;
	margin: 0 0 6px;
}
#main article h4 a {
	color: var(--djv-text);
}
#main article h4 a:hover {
	color: var(--djv-blue);
	text-decoration: none;
}
#main article .post_content p {
	color: var(--djv-muted);
	font-size: 13px;
	line-height: 1.6;
	margin: 0;
}
#main article .post_content > .label {
	margin-top: 2px;
}
/* textul sta in coloana lui, nu mai curge pe sub imagine */
#main article.border-row .post_content {
	text-align: left;
}
#main article.border-row .post_content > h4,
#main article.border-row .post_content > p {
	display: flow-root;
}

/* ---------- telefon ---------- */

@media (max-width: 767px) {
	.navbar_backround .navbar-brand {
		width: 220px;
		height: 74px;
		margin: 4px 0;
		background-position: 4px center;
	}
	.navbar-toggle {
		margin-top: 19px; /* centrat cu logoul mic (82px) */
		margin-right: 12px;
	}
	header + .container {
		margin-top: 12px;
		padding-left: 8px;
		padding-right: 8px;
	}
	#content {
		border-radius: 12px;
	}
	#left {
		flex: 0 0 52px;
		min-width: 52px;
		max-width: 52px;
		padding: 8px 2px;
	}
	#menu-left-menu > li > a {
		justify-content: center;
		padding: 8px 2px;
	}
	#menu-left-menu > li > a span {
		position: absolute !important;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip-path: inset(50%);
		white-space: nowrap;
	}
	#menu-left-menu i {
		margin-right: 0 !important;
	}
	#main {
		flex: 1 1 auto;
		min-width: 0;
		padding: 12px 12px 16px;
	}
	#main article.border-row {
		padding: 12px 4px !important;
	}
	#main article .post_content > .col-sm-2 {
		float: left;
		width: 92px;
		margin: 0 12px 4px 0;
		padding: 0;
	}
	#main article .post_content > .col-sm-2 img {
		height: auto !important;
		width: 100% !important;
	}
	#main article h4 {
		font-size: 15px;
	}
	/* telefon: imaginea + eticheta pe un rand, apoi titlul si textul pe toata latimea */
	#main article.border-row .post_content > h4,
	#main article.border-row .post_content > p {
		display: block;
		clear: both;
		padding-top: 8px;
		overflow-wrap: anywhere;
	}
	#main article.border-row .post_content > .label {
		float: none !important;
		display: inline-block;
		margin-top: 0;
	}
	#main article .page-header .label[itemprop="headline"],
	body.page #main article > header .label-primary,
	body.category #main > .page-header .label-primary {
		font-size: 21px;
	}
}

/* ---------- pagina unui articol / pagina ---------- */

/* titlul mare (articole, pagini, categorii), subliniat cu galben */
#main article .page-header .label[itemprop="headline"],
body.page #main article > header .label-primary,
body.category #main > .page-header .label-primary {
	display: inline-block;
	background: none;
	color: var(--djv-text);
	font-size: 26px;
	font-weight: 700;
	letter-spacing: -.01em;
	line-height: 1.25;
	text-transform: none;
	white-space: normal;
	text-align: left;
	padding: 0 0 8px;
	border-radius: 0;
	box-shadow: inset 0 -4px 0 var(--djv-yellow);
}
#main article .post_content {
	font-size: 14px;
	line-height: 1.7;
}
/* articole si pagini: text aliniat la stanga pe toata latimea, paragrafe aerisite */
body.wp-singular #main article .post_content {
	text-align: left;
	font-size: 15px;
	line-height: 1.75;
	color: #33393f;
}
body.wp-singular #main article .post_content p {
	margin: 0 0 1.1em;
}
body.wp-singular #main article .post_content br + br {
	display: block;
	content: "";
	margin-top: .6em;
}
body.wp-singular #main article .post_content h2,
body.wp-singular #main article .post_content h3,
body.wp-singular #main article .post_content h4 {
	margin: 1.6em 0 .6em;
	line-height: 1.3;
	color: var(--djv-text);
}
body.wp-singular #main article .post_content ul,
body.wp-singular #main article .post_content ol {
	margin: 0 0 1.1em;
	padding-left: 1.4em;
}
body.wp-singular #main article .post_content li {
	margin-bottom: .35em;
}
#main article .post_content img {
	border-radius: 8px;
	max-width: 100%;
	height: auto;
}

/* ---------- butoanele de share ---------- */

#socialButtonOnPage {
	margin-top: 18px;
	padding-top: 14px;
	border-top: 1px solid var(--djv-line);
}
#socialButtonOnPage .csbwfs-sbutton-post {
	padding: 0 3px 0 0;
}
#socialButtonOnPage .csbwfs-sbutton-post a,
#socialButtonOnPage .csbwfs-sbutton-post a:hover {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: #eef0f3 !important;
	color: #5b636b;
	transition: background-color .2s ease, color .2s ease, transform .2s ease;
}
#socialButtonOnPage .csbwfs-sbutton-post a:hover {
	color: #fff;
	transform: translateY(-2px);
}
#socialButtonOnPage .csbwfs-fb a:hover  { background: #305891 !important; }
#socialButtonOnPage .csbwfs-tw a:hover  { background: #000 !important; }
#socialButtonOnPage .csbwfs-li a:hover  { background: #007BB6 !important; }
#socialButtonOnPage .csbwfs-pin a:hover { background: #ca2027 !important; }

/* iconitele: Font Awesome in loc de sprite-ul vechi; X (fost Twitter) ca SVG */
#socialButtonOnPage .csbwfs-sbutton-post a i {
	background: none !important;
	width: auto;
	height: auto;
	font: normal normal normal 16px/1 FontAwesome;
	-webkit-font-smoothing: antialiased;
}
#socialButtonOnPage i.csbwfs_facebook:before  { content: "\f09a"; }
#socialButtonOnPage i.csbwfs_linkedin:before  { content: "\f0e1"; }
#socialButtonOnPage i.csbwfs_pinterest:before { content: "\f231"; font-size: 17px; }
#socialButtonOnPage .csbwfs-sbutton-post a i.csbwfs_twitter {
	width: 14px;
	height: 14px;
	background: currentColor !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* ---------- footer pe coloane (wp_bootstrap_modern_footer) ---------- */

/* footer-ul sta mereu jos: pe paginile scurte nu mai ramane fasie gri sub el */
body {
	min-height: 100vh;
	display: flex;
	flex-direction: column;
}
body > header,
body > footer {
	flex: 0 0 auto;
	width: 100%;
}
body > .container {
	flex: 0 0 auto; /* latimea ramane cea din Bootstrap, centrata cu margin auto */
	max-width: 100%;
}
/* sub 768px Bootstrap nu da latime containerului; intr-un body flex el s-ar lati dupa continut */
@media (max-width: 767px) {
	body > .container {
		width: 100%;
	}
}
.djv-footer {
	margin-top: auto;
	background: #fff;
	border-top: 4px solid var(--djv-yellow);
	color: var(--djv-muted);
	font-size: 13px;
	line-height: 1.6;
}
.djv-footer-cols {
	display: grid;
	grid-template-columns: 1.3fr 1.2fr 1fr 1.4fr;
	gap: 32px;
	padding: 36px 0 28px;
}
.djv-footer-brand img {
	display: block;
	width: 230px;
	height: auto;
	margin: -6px 0 10px -4px;
}
.djv-footer-brand p {
	margin: 0;
	max-width: 260px;
	font-size: 12px;
	letter-spacing: .04em;
	text-transform: uppercase;
}
.djv-footer h4 {
	margin: 0 0 12px;
	color: var(--djv-text);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}
.djv-footer ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
.djv-footer li {
	margin: 0 0 6px;
}
.djv-footer a {
	color: var(--djv-muted);
}
.djv-footer a:hover {
	color: var(--djv-blue);
	text-decoration: none;
}
.djv-footer-2col {
	columns: 2;
	column-gap: 18px;
}
.djv-footer-2col li {
	break-inside: avoid;
}
.djv-footer-contact li {
	display: flex;
	gap: 10px;
	margin-bottom: 10px;
}
.djv-footer-contact .fa {
	flex: 0 0 14px;
	margin-top: 4px;
	color: var(--djv-blue);
	text-align: center;
}
/* style.css face "span a" alb; aici linkurile de telefon trebuie sa se vada */
.djv-footer .djv-footer-contact span a,
.djv-footer .djv-footer-contact span a:link,
.djv-footer .djv-footer-contact span a:visited {
	color: var(--djv-text);
	white-space: nowrap;
}
.djv-footer .djv-footer-contact span a:hover {
	color: var(--djv-blue);
}
.djv-footer-mail {
	height: 13px;
	width: auto;
	vertical-align: -1px;
	opacity: .8;
}
.djv-footer-bottom {
	background: var(--djv-yellow);
	color: var(--djv-text);
	font-size: 12px;
	padding: 9px 0;
	text-align: center;
}

@media (max-width: 990px) {
	.djv-footer-cols {
		grid-template-columns: 1fr 1fr;
		gap: 26px 24px;
	}
}
@media (max-width: 560px) {
	.djv-footer-cols {
		grid-template-columns: 1fr;
		padding: 26px 0 18px;
	}
}

/* ---------- breadcrumb (Home › Gas › Meters and sensors) ---------- */

.djv-breadcrumb {
	margin: 0 0 14px;
	font-size: 12.5px;
	line-height: 1.4;
}
.djv-breadcrumb ol {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	list-style: none;
	margin: 0;
	padding: 0;
	min-width: 0;
}
.djv-breadcrumb li {
	display: flex;
	align-items: center;
	white-space: nowrap;
	color: var(--djv-muted);
	flex: 0 0 auto;
}
.djv-breadcrumb li + li:before {
	content: "\203A";
	margin: 0 8px;
	color: #b3b9bf;
	font-size: 15px;
	line-height: 1;
}
.djv-breadcrumb a {
	color: var(--djv-muted);
	text-decoration: none;
	border-radius: 4px;
}
.djv-breadcrumb a:hover {
	color: var(--djv-blue);
	text-decoration: underline;
}
.djv-breadcrumb .fa-home {
	color: var(--djv-blue);
	font-size: 14px;
	margin-right: 3px;
}
/* pagina curenta: textul lung se taie cu "…" */
.djv-breadcrumb li[aria-current] {
	flex: 0 1 auto;
	min-width: 0;
	color: var(--djv-text);
	font-weight: 500;
}
.djv-breadcrumb li[aria-current] span {
	overflow: hidden;
	text-overflow: ellipsis;
}

/* ---------- rosul pus din editor in articole (#ff0000): acelasi rosu, mai putin strident ---------- */

.post_content [style*="color: #ff0000" i],
.post_content [style*="color:#ff0000" i] {
	color: #d62828 !important;
}

/* ---------- antet fix sus; compact dupa derulare (JS din functions.php pune clasele) ---------- */

body.djv-fixed-header > header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 1000;
}
body.admin-bar.djv-fixed-header > header {
	top: var(--wp-admin--admin-bar--height, 32px);
}
html {
	scroll-padding-top: 110px; /* ancorele (#...) nu ajung sub antet */
}
.navbar_backround .navbar-brand,
.navbar-toggle {
	transition: width .25s ease, height .25s ease, margin .25s ease, opacity .2s ease, background-color .2s ease;
}

/* compact: bara galbena cu limbile ramane (mai subtire), logoul se micsoreaza, umbra devine vizibila */
body.djv-compact > header > .top-bar:first-child {
	padding: 0;
}
body.djv-compact > header > .top-bar:first-child #social_menu > li > a {
	padding-top: 1px;
	padding-bottom: 1px;
}
body.djv-compact .navbar_backround {
	box-shadow: 0 4px 18px rgba(16, 24, 40, .12);
}
body.djv-compact .navbar_backround .navbar-brand {
	width: 160px;
	height: 56px;
	margin: 4px 0;
	background-position: 4px center;
	background-size: auto 100%;
}
body.djv-compact .navbar-toggle {
	margin-top: 10px;
}

/* ecran mare, compact: iconite mici deasupra textului, in loc de cele de 64px */
@media (min-width: 1300px) {
	body.djv-compact #menu-main-menu {
		padding-top: 4px;
		padding-bottom: 4px;
	}
	body.djv-compact #menu-main-menu > li {
		padding-top: 0;
	}
	body.djv-compact #menu-main-menu > li:before {
		display: none;
	}
	body.djv-compact #menu-main-menu > li > a {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 3px;
		padding: 5px 2px 6px;
	}
	body.djv-compact #menu-main-menu > li > a:before {
		content: "";
		display: block;
		width: 26px;
		height: 26px;
		background: no-repeat center / contain;
	}
	body.djv-compact #menu-main-menu .fresh-link > a:before        { background-image: url('images/fresh-icon.png'); }
	body.djv-compact #menu-main-menu .gas-link > a:before          { background-image: url('images/gas-icon.png'); }
	body.djv-compact #menu-main-menu .water-link > a:before        { background-image: url('images/water-icon.png'); }
	body.djv-compact #menu-main-menu .heat-link > a:before         { background-image: url('images/heat-icon.png'); }
	body.djv-compact #menu-main-menu .energy-link > a:before       { background-image: url('images/energy-icon.png'); }
	body.djv-compact #menu-main-menu .construction-link > a:before { background-image: url('images/construction-icon.png'); }
	body.djv-compact #menu-main-menu .municipal-link > a:before    { background-image: url('images/municipality-icon.png'); }
	body.djv-compact #menu-main-menu .hotel-link > a:before        { background-image: url('images/hotel-icon.png'); }
	body.djv-compact #menu-main-menu .shoping-link > a:before      { background-image: url('images/shopping_networks-icon.png'); }
}

/* meniul hamburger deschis intr-un antet fix: nu iese din ecran, se poate derula */
@media (max-width: 1299px) {
	body.djv-fixed-header .navbar_backround .navbar-collapse.in {
		max-height: calc(100vh - 110px);
		overflow-y: auto !important;
	}
}
@media (max-width: 767px) {
	body.djv-compact .navbar_backround .navbar-brand {
		width: 140px;
		height: 50px;
	}
	body.djv-compact .navbar-toggle {
		margin-top: 7px;
	}
}

/* ---------- accesibilitate ---------- */

/* contur vizibil la navigarea cu tastatura (Tab), nu si la click cu mouse-ul */
a:focus-visible,
button:focus-visible,
input:focus-visible,
[tabindex]:focus-visible {
	outline: 2px solid var(--djv-blue) !important;
	outline-offset: 2px;
	border-radius: 4px;
}
a:focus:not(:focus-visible),
button:focus:not(:focus-visible) {
	outline: none;
}
/* pe ecrane mici meniul stang arata doar iconite; textul ramane pentru cititoarele de ecran */
@media (max-width: 990px) {
	#menu-left-menu a span {
		display: inline !important;
		position: absolute !important;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip-path: inset(50%);
		white-space: nowrap;
	}
}
/* fara animatii pentru cine le-a dezactivat din sistem */
@media (prefers-reduced-motion: reduce) {
	*,
	*:before,
	*:after {
		transition-duration: .01ms !important;
		animation-duration: .01ms !important;
	}
	#menu-main-menu > li:hover,
	#main article.border-row:hover .post_content > .col-sm-2 img,
	#socialButtonOnPage .csbwfs-sbutton-post a:hover {
		transform: none !important;
	}
}

/* ---------- continutul articolelor nu iese din ecran pe orizontala (telefon) ---------- */

#main {
	min-width: 0;
}
#main .post_content {
	overflow-wrap: break-word; /* linkuri si cuvinte foarte lungi */
}
/* figurile WordPress (aligncenter = display:table) se latesc dupa imagine; le limitam la latimea textului */
#main .post_content figure,
#main .post_content .wp-caption,
#main .post_content .wp-block-image {
	display: block;
	max-width: 100% !important;
	width: auto !important;
	margin-left: auto;
	margin-right: auto;
}
#main .post_content img,
#main .post_content video,
#main .post_content svg {
	max-width: 100% !important;
	height: auto !important;
}
#main .post_content iframe,
#main .post_content embed,
#main .post_content object,
#main .post_content blockquote.instagram-media,
#main .post_content .instagram-media {
	max-width: 100% !important;
	min-width: 0 !important;
}
/* tabelele late se deruleaza in interiorul lor, nu impreuna cu pagina */
#main .post_content table {
	display: block;
	max-width: 100%;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}
#main .post_content pre {
	max-width: 100%;
	overflow-x: auto;
	white-space: pre-wrap;
}
/* titlurile cu cuvinte foarte lungi (ex. "ЭНЕРГОЭФФЕКТИВНОСТИ") se despart pe telefon, nu ies din coloana */
#main .label {
	max-width: 100%;
	white-space: normal;
}
#main article .page-header .label[itemprop="headline"],
body.page #main article > header .label-primary,
body.category #main > .page-header .label-primary,
#main article h4 {
	overflow-wrap: anywhere;
	-webkit-hyphens: auto;
	hyphens: auto;
}

/* ---------- paginare (wp_bootstrap_page_navi) ---------- */

#main .pagination {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 6px;
	width: 100%;
	margin: 26px 0 6px;
	padding: 0;
}
#main .pagination > li {
	display: block;
}
#main .pagination > li:empty {
	display: none;
}
#main .pagination > li > a,
#main .pagination > li > span {
	float: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 36px;
	margin: 0;
	padding: 0 12px;
	border: 0;
	border-radius: 10px !important;
	background: #eef0f3;
	color: var(--djv-text);
	font-weight: 500;
	line-height: 1;
}
#main .pagination > li > a:hover {
	background: var(--djv-blue-soft);
	color: var(--djv-blue);
}
#main .pagination > li.active > a,
#main .pagination > li.active > a:hover {
	background: var(--djv-blue);
	color: #fff;
	cursor: default;
}
#main .pagination > li.disabled > a {
	opacity: .45;
	pointer-events: none;
}
@media (max-width: 767px) {
	#main .pagination > li > a {
		min-width: 34px;
		height: 34px;
		padding: 0 10px;
	}
}

/* ---------- lista de articole: tot randul e clickabil (linkul titlului se intinde peste articol) ---------- */

#main article.border-row {
	position: relative;
}
#main article.border-row .post_content > h4 > a:after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	border-radius: var(--djv-radius);
}
/* celelalte linkuri din rand (eticheta de categorie, linkuri din text) raman separate, deasupra */
#main article.border-row .post_content a:not(h4 > a) {
	position: relative;
	z-index: 2;
}
#main article.border-row:hover .post_content > h4 > a {
	color: var(--djv-blue);
}
/* la navigarea cu tastatura se vede conturul pe tot randul */
#main article.border-row:has(h4 > a:focus-visible) {
	outline: 2px solid var(--djv-blue);
	outline-offset: 2px;
}
#main article.border-row h4 > a:focus-visible {
	outline: none !important;
}
/* toata pastila de categorie (inclusiv marginile ei) duce la categorie, nu la articol */
#main article.border-row .post_content > .label {
	position: relative;
	z-index: 2;
}
#main article.border-row .post_content > .label > a:before {
	content: "";
	position: absolute;
	inset: 0;
}

/* meniul din stanga: textul lung (ex. RU "Мобильные приложения") trece pe al doilea rand, nu iese din coloana */
#menu-left-menu > li > a {
	white-space: normal;
}
#menu-left-menu > li > a > span {
	min-width: 0;
	line-height: 1.3;
	overflow-wrap: anywhere;
}

/* meniul de sus pe ecran mare: celule putin mai late si spatiu intre ele, ca textele lungi (RU "Муниципальным",
   "Электричество") sa nu se lipeasca de vecini; cuvintele prea lungi se despart in silabe */
@media (min-width: 1300px) {
	#menu-main-menu > li {
		width: 104px;
	}
	#menu-main-menu > li > a {
		padding-left: 4px !important;
		padding-right: 4px !important;
		font-size: 11.5px;
		-webkit-hyphens: auto;
		hyphens: auto;
		overflow-wrap: anywhere;
	}
}

/* meniul de sus pe ecran mare: iconite de 44px (in loc de 64px), ca fundal scalabil deasupra textului;
   in antetul compact (la scroll) raman de 26px, din regulile body.djv-compact de mai sus */
@media (min-width: 1300px) {
	#menu-main-menu > li:before {
		display: none !important;
	}
	#menu-main-menu > li {
		padding-top: 0;
	}
	#menu-main-menu > li > a {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 6px;
		padding-top: 9px;
		padding-bottom: 9px;
	}
	#menu-main-menu > li > a:before {
		content: "";
		display: block;
		width: 44px;
		height: 44px;
		background: no-repeat center / contain;
		transition: transform .25s ease;
	}
	#menu-main-menu > li:hover > a:before {
		transform: scale(1.08);
	}
	#menu-main-menu .fresh-link > a:before        { background-image: url('images/fresh-icon.png'); }
	#menu-main-menu .gas-link > a:before          { background-image: url('images/gas-icon.png'); }
	#menu-main-menu .water-link > a:before        { background-image: url('images/water-icon.png'); }
	#menu-main-menu .heat-link > a:before         { background-image: url('images/heat-icon.png'); }
	#menu-main-menu .energy-link > a:before       { background-image: url('images/energy-icon.png'); }
	#menu-main-menu .construction-link > a:before { background-image: url('images/construction-icon.png'); }
	#menu-main-menu .municipal-link > a:before    { background-image: url('images/municipality-icon.png'); }
	#menu-main-menu .hotel-link > a:before        { background-image: url('images/hotel-icon.png'); }
	#menu-main-menu .shoping-link > a:before      { background-image: url('images/shopping_networks-icon.png'); }
}

/* ---------- mai compact: lista de articole si footer-ul ocupa mai putin pe verticala ---------- */

#main article.border-row {
	padding: 8px 8px !important;
}
#main article .post_content > .col-sm-2 {
	width: 120px;
	padding-right: 0;
	margin-right: 16px;
}
#main article .post_content > .col-sm-2 img {
	aspect-ratio: 5 / 3;
}
#main article h4 {
	font-size: 15.5px;
	margin: 0 0 3px;
}
/* textul din lista: maxim 2 randuri (telefon: 3); tot articolul se deschide la click */
#main article.border-row .post_content > p {
	line-height: 1.5;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
}
#main > .page-header,
#main .djv-breadcrumb {
	margin-bottom: 10px;
}

.djv-footer-cols {
	padding: 22px 0 14px;
	gap: 24px;
}
.djv-footer li {
	margin-bottom: 2px;
}
.djv-footer-contact li {
	margin-bottom: 6px;
}
.djv-footer h4 {
	margin-bottom: 8px;
}
.djv-footer-brand img {
	width: 190px;
	margin-bottom: 6px;
}

@media (max-width: 767px) {
	#main article.border-row {
		padding: 10px 2px !important;
	}
	#main article .post_content > .col-sm-2 {
		width: 84px;
		margin: 0 10px 2px 0;
	}
	#main article.border-row .post_content > p {
		-webkit-line-clamp: 3;
		line-clamp: 3;
		padding-top: 4px;
	}
	#main article.border-row .post_content > h4 {
		padding-top: 6px;
	}
	.djv-footer-cols {
		gap: 18px;
	}
}

/* paginarea vine dupa articole care sunt float (col-md-12): marginea de sus s-ar pierde, deci folosim padding */
#main .pagination {
	clear: both;
	margin-top: 0;
	padding-top: 28px;
}
