/* TC Engage — culorile și fonturile site-ului. Fără grid minmax() (LiteSpeed îl strică la minificare). */
.tce-sub, .tce-end, .tce-float, .tce-mbar, .tce-modal {
	--tce-navy: #00092A;
	--tce-blue: #004BA8;
	--tce-blue-h: #0058C6;
	--tce-green: #1FAB89;
	--tce-text: #4A5068;
	--tce-muted: #7A7F93;
	--tce-line: #E6EAF2;
	--tce-soft: #F4F7FC;
	font-family: "Poppins", system-ui, sans-serif;
	box-sizing: border-box;
}
.tce-sub *, .tce-end *, .tce-float *, .tce-mbar *, .tce-modal * { box-sizing: border-box; }
.tce-ico { display: block; flex: 0 0 auto; }
.tce-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.tce-hp { position: absolute !important; left: -9999px; top: auto; width: 1px; height: 1px; overflow: hidden; }

/* ---------- Formular de abonare ---------- */
.tce-sub { color: var(--tce-text); }
.tce-sub--inline, .tce-sub--end {
	background: var(--tce-soft);
	border: 1px solid var(--tce-line);
	border-left: 4px solid var(--tce-blue);
	border-radius: 16px;
	padding: 26px 28px;
	margin: 36px 0;
}
.tce-sub--end { border-left-width: 1px; background: #fff; box-shadow: 0 10px 40px rgba(0, 9, 42, .07); margin-top: 28px; }

.tce-sub__head { display: flex; gap: 16px; align-items: flex-start; margin-bottom: 16px; }
.tce-sub__icon {
	flex: 0 0 46px; height: 46px; border-radius: 12px;
	background: var(--tce-blue); color: #fff;
	display: flex; align-items: center; justify-content: center;
}
.tce-sub .tce-sub__title {
	font-family: "Kanit", "Poppins", sans-serif; font-weight: 600;
	color: var(--tce-navy); font-size: 22px; line-height: 1.25; margin: 0 0 4px;
}
.tce-sub .tce-sub__text { font-size: 15px; line-height: 1.6; margin: 0; color: var(--tce-text); }

.tce-sub__form { margin: 0; }
.tce-sub .tce-sub__profiles { border: 0; padding: 0; margin: 0 0 14px; display: flex; flex-wrap: wrap; gap: 8px; align-items: center; min-width: 0; }
.tce-sub .tce-sub__profiles legend { float: left; font-size: 14px; font-weight: 500; color: var(--tce-navy); margin: 0 6px 0 0; padding: 0; line-height: 36px; }
.tce-sub .tce-sub__profiles legend span { color: var(--tce-muted); font-weight: 400; }
.tce-sub .tce-sub__profiles label { position: relative; margin: 0; cursor: pointer; }
.tce-sub .tce-sub__profiles input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.tce-sub .tce-sub__profiles label span {
	display: inline-block; font-size: 14px; line-height: 1; padding: 10px 14px;
	border: 1px solid var(--tce-line); border-radius: 999px; background: #fff; color: var(--tce-navy);
	transition: all .15s;
}
.tce-sub .tce-sub__profiles label:hover span { border-color: var(--tce-blue); }
.tce-sub .tce-sub__profiles input:checked + span { background: var(--tce-blue); border-color: var(--tce-blue); color: #fff; }
.tce-sub .tce-sub__profiles input:focus-visible + span { outline: 2px solid var(--tce-blue); outline-offset: 2px; }

.tce-sub__row { display: flex; flex-wrap: wrap; gap: 10px; }
.tce-sub .tce-sub__email {
	flex: 1 1 240px; min-width: 0; height: 50px; margin: 0;
	padding: 0 16px; font: inherit; font-size: 15px; color: var(--tce-navy);
	background: #fff; border: 1px solid #CBD3E3; border-radius: 6px; box-shadow: none;
}
.tce-sub .tce-sub__email:focus { outline: none; border-color: var(--tce-blue); box-shadow: 0 0 0 3px rgba(0, 75, 168, .15); }
.tce-sub .tce-sub__btn {
	flex: 0 0 auto; height: 50px; margin: 0; padding: 0 26px;
	font: inherit; font-size: 15px; font-weight: 500; line-height: 50px; letter-spacing: 0; text-transform: none;
	color: #fff; background: var(--tce-blue); border: 0; border-radius: 6px; cursor: pointer;
	transition: background .15s;
}
.tce-sub .tce-sub__btn:hover, .tce-sub .tce-sub__btn:focus { background: var(--tce-blue-h); color: #fff; }
.tce-sub .tce-sub__btn:disabled { opacity: .6; cursor: wait; }

.tce-sub .tce-sub__consent { font-size: 12.5px; line-height: 1.55; color: var(--tce-muted); margin: 12px 0 0; }
.tce-sub .tce-sub__consent a { color: var(--tce-blue); text-decoration: underline; }
.tce-sub .tce-sub__msg { font-size: 14px; margin: 10px 0 0; min-height: 0; }
.tce-sub .tce-sub__msg:empty { display: none; }
.tce-sub .tce-sub__msg.is-error { color: #C0392B; }
.tce-sub .tce-sub__msg.is-success {
	color: #0E6B55; background: #EAF7F3; border: 1px solid #BFE7DA; border-radius: 10px;
	padding: 14px 16px; font-size: 15px; font-weight: 500;
}
.tce-sub__form.is-done .tce-sub__row,
.tce-sub__form.is-done .tce-sub__profiles,
.tce-sub__form.is-done .tce-sub__consent { display: none; }

/* Footer: doar câmpul și butonul, titlul e deja în footer-ul Elementor. */
.tce-sub--footer { max-width: 620px; margin: 0 auto; }
.tce-sub--footer .tce-sub__consent { font-size: 12px; text-align: center; }
.tce-sub--footer .tce-sub__msg { text-align: center; }

/* ---------- Final de articol: share ---------- */
.tce-end { margin: 48px 0 0; }
.tce-end__share { padding: 26px 0; border-top: 1px solid var(--tce-line); }
.tce-end .tce-end__title { font-family: "Kanit", "Poppins", sans-serif; font-weight: 600; color: var(--tce-navy); font-size: 22px; line-height: 1.25; margin: 0 0 4px; }
.tce-end .tce-end__text { font-size: 15px; color: var(--tce-text); margin: 0 0 16px; }

.tce-share { display: flex; flex-wrap: wrap; gap: 10px; }
.tce-share .tce-share__btn {
	display: inline-flex; align-items: center; gap: 8px; margin: 0;
	height: 44px; padding: 0 16px; border-radius: 999px;
	font: inherit; font-size: 14px; font-weight: 500; line-height: 1; letter-spacing: 0; text-transform: none;
	text-decoration: none; cursor: pointer; border: 1px solid transparent;
	color: #fff; transition: transform .15s, filter .15s, background .15s;
}
.tce-share .tce-share__btn:hover { transform: translateY(-1px); filter: brightness(1.08); color: #fff; }
.tce-share .tce-share__btn--whatsapp { background: #25D366; }
.tce-share .tce-share__btn--facebook { background: #1877F2; }
.tce-share .tce-share__btn--linkedin { background: #0A66C2; }
.tce-share .tce-share__btn--email { background: var(--tce-navy); }
.tce-share .tce-share__btn--copy,
.tce-share .tce-share__btn--native { background: #fff; color: var(--tce-navy); border-color: var(--tce-line); }
.tce-share .tce-share__btn--copy:hover,
.tce-share .tce-share__btn--native:hover { color: var(--tce-navy); background: var(--tce-soft); filter: none; }
.tce-share .tce-share__btn--copy.is-copied { background: #EAF7F3; border-color: #BFE7DA; color: #0E6B55; }
.tce-share .tce-share__btn[hidden] { display: none; }

/* ---------- Bara plutitoare, desktop ---------- */
.tce-float {
	position: fixed; left: 20px; top: 50%; z-index: 9980;
	transform: translate(-80px, -50%); opacity: 0; pointer-events: none;
	transition: transform .3s, opacity .3s;
	background: #fff; border: 1px solid var(--tce-line); border-radius: 999px;
	padding: 8px; box-shadow: 0 10px 30px rgba(0, 9, 42, .10);
}
.tce-float.is-visible { transform: translate(0, -50%); opacity: 1; pointer-events: auto; }
.tce-float .tce-share { flex-direction: column; gap: 6px; }
.tce-float .tce-share__btn { width: 44px; padding: 0; justify-content: center; }
.tce-float .tce-share__btn span { display: none; }
.tce-float .tce-share__btn--copy, .tce-float .tce-share__btn--native { border-color: transparent; }
@media (max-width: 1279px) { .tce-float { display: none; } }

/* ---------- Bara de jos, mobil ---------- */
.tce-mbar { display: none; }
@media (max-width: 767px) {
	.tce-mbar {
		display: flex; align-items: center; gap: 6px;
		position: fixed; left: 0; right: 0; bottom: 0; z-index: 9980;
		padding: 10px 12px calc(10px + env(safe-area-inset-bottom));
		background: #fff; border-top: 1px solid var(--tce-line);
		box-shadow: 0 -8px 24px rgba(0, 9, 42, .08);
		transform: translateY(110%); transition: transform .3s;
	}
	.tce-mbar.is-visible { transform: translateY(0); }
	.tce-mbar .tce-share { flex: 1 1 auto; flex-wrap: nowrap; gap: 6px; }
	.tce-mbar .tce-share__btn { width: 42px; height: 42px; padding: 0; justify-content: center; }
	.tce-mbar .tce-share__btn span,
	.tce-mbar .tce-share__btn--linkedin,
	.tce-mbar .tce-share__btn--email { display: none; }
	.tce-mbar .tce-mbar__sub {
		flex: 0 0 auto; display: inline-flex; align-items: center; gap: 6px; margin: 0;
		height: 42px; padding: 0 14px; border: 0; border-radius: 999px;
		background: var(--tce-blue); color: #fff; font: inherit; font-size: 14px; font-weight: 500; line-height: 1; cursor: pointer;
	}
	.tce-is-subscribed .tce-mbar .tce-mbar__sub { display: none; }
	html.tce-mbar-on .wpr-stt-btn { bottom: 80px !important; }

	.tce-sub--inline, .tce-sub--end { padding: 22px 18px; }
	.tce-sub .tce-sub__btn { flex: 1 1 100%; }
	.tce-sub .tce-sub__profiles legend { float: none; width: 100%; line-height: 1.4; margin-bottom: 2px; }
}

/* ---------- Modal ---------- */
.tce-modal { position: fixed; inset: 0; z-index: 99990; display: flex; align-items: center; justify-content: center; padding: 16px; }
.tce-modal[hidden] { display: none; }
.tce-modal__backdrop { position: absolute; inset: 0; background: rgba(0, 9, 42, .62); }
.tce-modal__box {
	position: relative; width: 100%; max-width: 540px; max-height: calc(100vh - 32px); overflow: auto;
	background: #fff; border-radius: 20px; padding: 34px 32px 28px;
	box-shadow: 0 30px 80px rgba(0, 9, 42, .35);
	animation: tce-pop .25s ease-out;
}
.tce-modal .tce-modal__close {
	position: absolute; top: 12px; right: 12px; width: 38px; height: 38px; margin: 0; padding: 0;
	border: 0; border-radius: 50%; background: var(--tce-soft); color: var(--tce-navy);
	font-size: 24px; line-height: 38px; cursor: pointer;
}
.tce-modal .tce-modal__close:hover { background: var(--tce-line); color: var(--tce-navy); }
.tce-modal .tce-sub__title { font-size: 26px; padding-right: 30px; }
html.tce-modal-open { overflow: hidden; }
@keyframes tce-pop { from { transform: translateY(12px); opacity: 0; } to { transform: none; opacity: 1; } }
@media (max-width: 767px) {
	.tce-modal__box { padding: 28px 20px 22px; }
	.tce-modal .tce-sub__head { flex-direction: column; gap: 12px; }
	.tce-modal .tce-sub__title { font-size: 22px; }
}

@media (prefers-reduced-motion: reduce) {
	.tce-float, .tce-mbar, .tce-share .tce-share__btn { transition: none; }
	.tce-modal__box { animation: none; }
}

/* ---------- Tipografia articolelor ----------
   Articolele sunt construite în Elementor și moștenesc gri #7A7A7A / Roboto din kit.
   !important e necesar: Elementor pune stiluri per-element cu specificitate mare.
   Casetele TC Engage din interiorul articolului sunt excluse. */
.tce-typo .wpr-post-content { --tce-navy: #00092A; --tce-blue: #004BA8; --tce-green: #1FAB89; --tce-body: #3E4459; }

.tce-typo .wpr-post-content :is(h2, h3, h4, h5, .elementor-heading-title):not(.tce-sub *):not(.tce-end *) {
	font-family: "Kanit", "Poppins", sans-serif !important;
	color: var(--tce-navy) !important;
	font-weight: 600 !important;
	letter-spacing: -.005em;
}
.tce-typo .wpr-post-content h2:not(.tce-sub *):not(.tce-end *),
.tce-typo .wpr-post-content h2.elementor-heading-title { font-size: 32px !important; line-height: 1.2 !important; margin: 44px 0 16px !important; }
.tce-typo .wpr-post-content h3:not(.tce-sub *):not(.tce-end *),
.tce-typo .wpr-post-content h3.elementor-heading-title { font-size: 25px !important; line-height: 1.25 !important; margin: 34px 0 12px !important; }
.tce-typo .wpr-post-content :is(h4, h5, h4.elementor-heading-title, h5.elementor-heading-title):not(.tce-sub *):not(.tce-end *) {
	font-size: 20px !important; line-height: 1.3 !important; margin: 26px 0 10px !important;
	color: var(--tce-blue) !important;
}

.tce-typo .wpr-post-content :is(p, li, figcaption, td, th):not(.tce-sub *):not(.tce-end *) {
	font-family: "Poppins", system-ui, sans-serif !important;
	font-size: 16.5px !important;
	line-height: 1.8 !important;
	color: var(--tce-body) !important;
}
.tce-typo .wpr-post-content p:not(.tce-sub *):not(.tce-end *) { margin: 0 0 18px !important; }
.tce-typo .wpr-post-content :is(strong, b):not(.tce-sub *):not(.tce-end *) { color: var(--tce-navy) !important; font-weight: 600 !important; }
.tce-typo .wpr-post-content a:not(.tce-sub *):not(.tce-end *) {
	color: var(--tce-blue) !important; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px;
}
.tce-typo .wpr-post-content a:not(.tce-sub *):not(.tce-end *):hover { color: var(--tce-navy) !important; }

/* Liste cu puncte albastre */
.tce-typo .wpr-post-content ul:not(.tce-sub *):not(.tce-end *) { list-style: none !important; padding-left: 4px !important; margin: 0 0 20px !important; }
.tce-typo .wpr-post-content ul:not(.tce-sub *):not(.tce-end *) > li { position: relative; padding-left: 26px !important; margin: 0 0 8px !important; }
.tce-typo .wpr-post-content ul:not(.tce-sub *):not(.tce-end *) > li::before {
	content: ""; position: absolute; left: 4px; top: .72em;
	width: 8px; height: 8px; border-radius: 50%; background: var(--tce-blue);
}
.tce-typo .wpr-post-content ol:not(.tce-sub *):not(.tce-end *) { padding-left: 24px !important; margin: 0 0 20px !important; }
.tce-typo .wpr-post-content ol:not(.tce-sub *):not(.tce-end *) > li { margin: 0 0 8px !important; padding-left: 4px; }
.tce-typo .wpr-post-content ol:not(.tce-sub *):not(.tce-end *) > li::marker { color: var(--tce-blue); font-weight: 600; }

.tce-typo .wpr-post-content blockquote:not(.tce-sub *) {
	margin: 28px 0 !important; padding: 20px 24px !important;
	background: #EAF7F3; border: 0; border-left: 4px solid var(--tce-green); border-radius: 12px;
}
.tce-typo .wpr-post-content blockquote p { margin: 0 !important; color: #0E4D3F !important; font-style: normal; }
.tce-typo .wpr-post-content .elementor-widget-image img,
.tce-typo .wpr-post-content figure img { border-radius: 14px; }

@media (max-width: 767px) {
	.tce-typo .wpr-post-content h2:not(.tce-sub *):not(.tce-end *),
	.tce-typo .wpr-post-content h2.elementor-heading-title { font-size: 26px !important; margin-top: 34px !important; }
	.tce-typo .wpr-post-content h3:not(.tce-sub *):not(.tce-end *),
	.tce-typo .wpr-post-content h3.elementor-heading-title { font-size: 21px !important; }
	.tce-typo .wpr-post-content :is(h4, h5):not(.tce-sub *):not(.tce-end *) { font-size: 18px !important; }
	.tce-typo .wpr-post-content :is(p, li, figcaption, td, th):not(.tce-sub *):not(.tce-end *) { font-size: 16px !important; line-height: 1.75 !important; }
}
