
/*
 * TBM Design 1.3.0
 * Scoped intentionally to .tbm-modern-* so legacy TBM layouts stay untouched.
 */
.tbm-modern-container{width:min(calc(100% - 40px),var(--tbmd-container));margin-inline:auto}
.tbm-modern-topbar{background:var(--tbmd-topbar-bg);color:var(--tbmd-topbar-text);font-size:13px;line-height:1.3;text-align:center;padding:8px 0;position:relative;z-index:1002}
.tbm-modern-topbar a{color:inherit;text-decoration:none}
.tbm-modern-header{position:relative;z-index:1000;background:var(--tbmd-header-bg);color:var(--tbmd-header-text);border-bottom:1px solid var(--tbmd-header-border);transition:background .25s ease,box-shadow .25s ease,transform .25s ease}
.tbm-modern-header.is-sticky{position:sticky;top:0}
.admin-bar .tbm-modern-header.is-sticky{top:32px}
.tbm-modern-header.is-transparent:not(.is-scrolled){background:transparent;position:absolute;left:0;right:0;border-bottom-color:transparent;color:var(--tbmd-header-text)}
.tbm-modern-header__container{min-height:calc(var(--tbmd-logo-height) + (var(--tbmd-header-padding) * 2));display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:28px;padding-top:var(--tbmd-header-padding);padding-bottom:var(--tbmd-header-padding)}
.tbm-modern-brand{display:flex;align-items:center;line-height:0;flex:none}
.tbm-modern-brand img{display:block;width:auto;height:var(--tbmd-logo-height);max-width:min(340px,32vw);object-fit:contain}
.tbm-modern-nav-stack{min-width:0;display:flex;flex-direction:column;align-items:flex-end;justify-content:center}
.tbm-modern-nav-top{min-height:28px;display:flex;align-items:center;justify-content:flex-end;margin-bottom:3px}
.tbm-modern-nav{width:100%}
.tbm-modern-menu{list-style:none;margin:0!important;padding:0!important;display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:3px var(--tbmd-menu-gap)}
.tbm-modern-menu li{list-style:none!important;margin:0!important;padding:0!important;position:relative}
.tbm-modern-menu a{display:block;color:var(--tbmd-header-text)!important;text-decoration:none!important;font-size:var(--tbmd-menu-size);font-weight:500;line-height:1.25;padding:5px 0;transition:color .2s ease}
.tbm-modern-menu--secondary a{font-size:calc(var(--tbmd-menu-size) - 2px);font-weight:400}
.tbm-modern-menu a:hover,.tbm-modern-menu .current-menu-item>a,.tbm-modern-menu .current-menu-ancestor>a{color:var(--tbmd-header-hover)!important}
.tbm-modern-menu .sub-menu{display:none;position:absolute;top:100%;left:0;min-width:220px;background:var(--tbmd-header-bg);padding:10px!important;margin:0!important;box-shadow:0 16px 40px rgba(0,0,0,.12);z-index:50}
.tbm-modern-menu li:hover>.sub-menu{display:block}
.tbm-modern-menu .sub-menu a{padding:8px 10px}
.tbm-modern-actions{display:flex;align-items:center;gap:10px}
.tbm-modern-cta{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 18px;border:1px solid var(--tbmd-accent);color:var(--tbmd-accent)!important;text-decoration:none!important;font-weight:700;text-transform:uppercase;font-size:12px;transition:.2s}
.tbm-modern-cta:hover{background:var(--tbmd-accent);color:#fff!important}
.tbm-modern-socials{display:flex;align-items:center;gap:8px}
.tbm-modern-socials a{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;color:var(--tbmd-header-text)!important;border-radius:999px;text-decoration:none!important;opacity:.7;transition:.2s}
.tbm-modern-socials a:hover{opacity:1;color:var(--tbmd-header-hover)!important}
.tbm-modern-socials svg{width:17px;height:17px;fill:currentColor}
.tbm-modern-menu-toggle{display:none!important;width:44px!important;height:44px!important;min-width:44px!important;padding:9px!important;border:1px solid var(--tbmd-header-border)!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;flex-direction:column;justify-content:center;gap:5px}
.tbm-modern-menu-toggle>span:not(.screen-reader-text){display:block;width:100%;height:2px;background:currentColor}
.tbm-modern-header--centered .tbm-modern-header__container{grid-template-columns:1fr;justify-items:center;gap:8px}
.tbm-modern-header--centered .tbm-modern-nav-stack{align-items:center}
.tbm-modern-header--centered .tbm-modern-nav-top,.tbm-modern-header--centered .tbm-modern-menu{justify-content:center}
.tbm-modern-header--centered .tbm-modern-actions{position:absolute;right:20px;top:20px}
.tbm-modern-header--compact .tbm-modern-header__container{grid-template-columns:auto 1fr auto}
.tbm-modern-header--compact .tbm-modern-nav-top{display:none}
.tbm-modern-header--compact .tbm-modern-nav-stack{flex-direction:row;align-items:center;justify-content:flex-end;gap:var(--tbmd-menu-gap)}
.tbm-modern-header--compact .tbm-modern-nav{width:auto}
.tbm-modern-header--compact .tbm-modern-menu--secondary{display:none}

.tbm-modern-mobile-panel{position:fixed;right:0;top:0;bottom:0;width:min(92vw,var(--tbmd-mobile-panel-width));background:var(--tbmd-mobile-bg);color:var(--tbmd-mobile-text);z-index:100000;box-shadow:-14px 0 45px rgba(0,0,0,.18);overflow:auto}
.tbm-modern-mobile-panel[hidden]{display:none!important}
.tbm-modern-mobile-panel__inner{padding:20px 22px 34px}
.tbm-modern-mobile-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:18px;border-bottom:1px solid rgba(127,127,127,.2)}
.tbm-modern-mobile-head img{height:var(--tbmd-mobile-logo-height);width:auto;max-width:220px}
.tbm-modern-mobile-close{background:transparent!important;border:0!important;box-shadow:none!important;color:inherit!important;font-size:34px!important;line-height:1!important;padding:4px!important;min-width:40px!important;height:40px!important}
.tbm-modern-mobile-menu{list-style:none;margin:0!important;padding:18px 0!important}
.tbm-modern-mobile-menu li{list-style:none!important;margin:0!important}
.tbm-modern-mobile-menu a{display:block;padding:10px 0;color:var(--tbmd-mobile-text)!important;text-decoration:none!important;font-size:18px;font-weight:600;border-bottom:1px solid rgba(127,127,127,.12)}
.tbm-modern-mobile-menu--secondary{padding-top:0!important}
.tbm-modern-mobile-menu--secondary a{font-size:15px;font-weight:400}
.tbm-modern-mobile-menu .sub-menu{padding-left:18px!important;margin:0!important}
.tbm-modern-socials--mobile{margin-top:15px}
.tbm-modern-socials--mobile a{color:var(--tbmd-mobile-text)!important}
.tbm-modern-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);z-index:99999}
.tbm-modern-overlay[hidden]{display:none!important}
body.tbm-mobile-menu-open{overflow:hidden}

.tbm-modern-newsletter{background:#f5f5f5;color:#222;padding:46px 0}
.tbm-modern-newsletter__inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,520px);gap:50px;align-items:center}
.tbm-modern-newsletter h2{margin:0 0 6px!important;color:var(--tbmd-footer-accent);font-size:28px}
.tbm-modern-newsletter p{margin:0;max-width:620px}
.tbm-modern-newsletter form{display:flex;gap:8px}
.tbm-modern-newsletter input[type=email]{min-width:0;flex:1;height:48px;padding:0 15px;border:1px solid #ccc;background:#fff}
.tbm-modern-newsletter button{height:48px!important;padding:0 22px!important;border:1px solid var(--tbmd-footer-accent)!important;background:var(--tbmd-footer-accent)!important;color:#fff!important;font-weight:700!important}
.tbm-modern-footer{background:var(--tbmd-footer-bg);color:var(--tbmd-footer-text);padding:52px 0 24px}
.tbm-modern-footer__grid{display:grid;gap:40px}
.tbm-modern-footer__grid.cols-1{grid-template-columns:1fr}
.tbm-modern-footer__grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.tbm-modern-footer__grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.tbm-modern-footer__grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.tbm-modern-footer__col{min-width:0}
.tbm-modern-footer__col h1,.tbm-modern-footer__col h2,.tbm-modern-footer__col h3,.tbm-modern-footer__col h4{color:var(--tbmd-footer-heading);margin:0 0 16px;font-size:18px}
.tbm-modern-footer__col p{color:inherit;margin:0 0 13px;line-height:1.7}
.tbm-modern-footer a{color:var(--tbmd-footer-accent)!important}
.tbm-modern-footer__institutional{max-width:980px;margin:36px auto 0!important;padding-top:24px;border-top:1px solid rgba(255,255,255,.12);text-align:center;font-size:13px;line-height:1.7;opacity:.78}
.tbm-modern-footer__bottom{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:28px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12);font-size:12px}
.tbm-modern-footer-menu{display:flex;gap:18px;list-style:none!important;margin:0!important;padding:0!important}
.tbm-modern-footer-menu li{list-style:none!important;margin:0!important}
.tbm-modern-socials--footer a{color:var(--tbmd-footer-text)!important}
.tbm-modern-socials--footer a:hover{color:var(--tbmd-footer-accent)!important}

@media(max-width:1024px){
	.tbm-modern-header__container{grid-template-columns:1fr auto;min-height:calc(var(--tbmd-mobile-logo-height) + 26px);padding-top:10px;padding-bottom:10px}
	.tbm-modern-brand img{height:var(--tbmd-mobile-logo-height);max-width:240px}
	.tbm-modern-nav-stack,.tbm-modern-actions>.tbm-modern-cta,.tbm-modern-socials--desktop{display:none!important}
	.tbm-modern-menu-toggle{display:flex!important}
	.tbm-modern-header--centered .tbm-modern-actions{position:static}
}
@media(max-width:782px){
	.admin-bar .tbm-modern-header.is-sticky{top:46px}
	.tbm-modern-container{width:min(calc(100% - 28px),var(--tbmd-container))}
	.tbm-modern-newsletter__inner{grid-template-columns:1fr;gap:22px}
	.tbm-modern-newsletter form{flex-direction:column}
	.tbm-modern-footer__grid.cols-3,.tbm-modern-footer__grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}
	.tbm-modern-footer__bottom{align-items:flex-start;flex-direction:column}
}
@media(max-width:520px){
	.tbm-modern-footer__grid.cols-2,.tbm-modern-footer__grid.cols-3,.tbm-modern-footer__grid.cols-4{grid-template-columns:1fr}
}


/* ==========================================================
   TBM 1.3.1 — Preset "TBM Original Modern"
   Reproduce geometria headerului original folosind markup-ul
   modern TBM Design. Scope strict: numai presetul original.
   ========================================================== */
@media (min-width:768px){
	.tbm-modern-header--preset-original_modern{
		background:var(--tbmd-header-bg);
		color:var(--tbmd-header-text);
		border-bottom:1px solid var(--tbmd-header-border);
		box-shadow:none;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-header__container{
		display:block;
		position:relative;
		width:min(calc(100% - 40px),var(--tbmd-container));
		max-width:none;
		height:auto;
		min-height:var(--tbmd-logo-height);
		margin:0 auto;
		padding:var(--tbmd-header-padding) 30px;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-brand{
		position:absolute;
		left:50px;
		top:50%;
		transform:translateY(-50%);
		width:auto;
		height:var(--tbmd-logo-height);
		display:block;
		z-index:3;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-brand picture,
	.tbm-modern-header--preset-original_modern .tbm-modern-brand img{
		display:block;
		width:auto;
		height:var(--tbmd-logo-height);
		max-width:min(360px,32vw);
		max-height:none;
		object-fit:contain;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-nav-stack{
		display:block;
		position:relative;
		height:auto;
		min-height:var(--tbmd-logo-height);
		margin:0 0 0 330px;
		border-left:1px solid var(--tbmd-header-border);
		border-right:1px solid var(--tbmd-header-border);
		min-width:0;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-nav-top{
		display:flex;
		align-items:center;
		justify-content:flex-end;
		gap:8px;
		overflow:visible;
		height:var(--tbmd-social-height);
		min-height:var(--tbmd-social-height);
		margin:0;
		padding:3px 20px;
		font-size:12px;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-socials--desktop{
		display:inline-flex;
		gap:6px;
		height:25px;
		flex:0 0 auto;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-socials--legacy-icons a{
		display:block;
		width:25px;
		height:25px;
		padding:0;
		margin:0;
		border-radius:0;
		opacity:1;
		color:inherit!important;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-socials--legacy-icons a:hover{
		opacity:.8;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-socials--legacy-icons img{
		display:block;
		width:24px;
		height:25px;
		object-fit:contain;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-nav{
		width:auto;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-nav--primary{
		border-top:1px solid var(--tbmd-header-border);
		padding:var(--tbmd-primary-top) 20px 0;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-nav--secondary{
		padding:var(--tbmd-secondary-top) 20px 0;
		clear:both;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-menu{
		display:flex;
		justify-content:flex-start;
		align-items:center;
		flex-wrap:nowrap;
		gap:var(--tbmd-menu-gap);
		margin:0!important;
		padding:0!important;
		list-style:none;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-menu li{
		display:block;
		float:none;
		flex:0 0 auto;
		margin:0!important;
		padding:0!important;
		white-space:nowrap;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-menu li:first-child{
		margin-left:0!important;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-menu a{
		display:block;
		padding:0;
		color:var(--tbmd-header-text)!important;
		font-size:var(--tbmd-menu-size);
		font-weight:400;
		line-height:1;
		text-transform:uppercase;
		text-decoration:none!important;
		transition:color .5s ease;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-menu--secondary a{
		font-size:max(10px,calc(var(--tbmd-menu-size) - 3px));
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-menu a:hover,
	.tbm-modern-header--preset-original_modern .tbm-modern-menu .current-menu-item>a,
	.tbm-modern-header--preset-original_modern .tbm-modern-menu .current-menu-ancestor>a{
		color:var(--tbmd-header-hover)!important;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-menu .fiipregatit>a{
		font-weight:700;
		color:var(--tbmd-accent)!important;
		text-transform:none;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-menu .fiipregatit>a:hover{
		text-decoration:underline!important;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-menu .sub-menu{
		top:100%;
		margin-top:12px!important;
		background:var(--tbmd-header-bg);
		border:1px solid var(--tbmd-header-border);
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-actions{
		position:absolute;
		right:30px;
		top:46px;
		z-index:10;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-actions:empty{
		display:none;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-menu-toggle{
		display:none!important;
	}

	/* Sticky rămâne disponibil din TBM Design fără să schimbe geometria. */
	.tbm-modern-header--preset-original_modern.is-sticky{
		position:sticky;
		top:0;
	}
	.admin-bar .tbm-modern-header--preset-original_modern.is-sticky{
		top:32px;
	}
}

/* Pe mobil folosim drawer-ul modern din 1.3.0, nu vechiul meniu fragil. */
@media(max-width:767px){
	.tbm-modern-header--preset-original_modern .tbm-modern-header__container{
		min-height:78px;
	}
}


/* TBM 1.3.3 — Elementor footer.
   Wrapper neutru: designul rămâne controlat integral din Elementor. */
.tbm-elementor-footer{
	width:100%;
	margin:0;
	padding:0;
	position:relative;
	clear:both;
}
.tbm-elementor-footer > .elementor{
	width:100%;
}


/* TBM 1.3.4 — Custom social icons */
.tbm-modern-socials--custom a{
	overflow:hidden;
}
.tbm-modern-socials--custom img{
	display:block;
	width:20px;
	height:20px;
	object-fit:contain;
}
.tbm-modern-header--preset-original_modern .tbm-modern-socials--custom img{
	width:24px;
	height:24px;
}
.tbm-modern-socials--custom .tbm-social-initial{
	display:flex;
	align-items:center;
	justify-content:center;
	width:22px;
	height:22px;
	border:1px solid currentColor;
	border-radius:50%;
	font-size:11px;
	font-weight:700;
	line-height:1;
}


/* TBM 1.3.5 — CTA funcțional în presetul TBM Original Modern */
@media (min-width:1025px){
	.tbm-modern-header--preset-original_modern .tbm-modern-cta--top{
		display:inline-flex!important;
		min-height:24px;
		height:24px;
		padding:3px 10px;
		border:1px solid var(--tbmd-accent);
		color:var(--tbmd-accent)!important;
		background:transparent;
		font-size:11px;
		line-height:1;
		font-weight:700;
		text-transform:uppercase;
		white-space:nowrap;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-cta--top:hover{
		background:var(--tbmd-accent);
		color:#fff!important;
	}
}

/* În mod normal CTA este ascuns pe layout mobil ca să rămână loc pentru hamburger.
   Dacă opțiunea "CTA și pe mobil" este activă, îl afișăm lângă hamburger. */
@media(max-width:1024px){
	.tbm-modern-header.tbm-cta-mobile-enabled .tbm-modern-actions>.tbm-modern-cta{
		display:inline-flex!important;
		min-height:36px;
		height:36px;
		padding:6px 12px;
		font-size:11px;
	}
}


/* TBM 1.3.6 — CTA mobil pentru presetul TBM Original Modern */
@media (min-width:1025px){
	.tbm-modern-header--preset-original_modern .tbm-modern-actions .tbm-modern-cta--mobile{
		display:none!important;
	}
}
@media(max-width:1024px){
	.tbm-modern-header--preset-original_modern.tbm-cta-mobile-enabled .tbm-modern-actions{
		display:flex!important;
		align-items:center;
		gap:8px;
	}
	.tbm-modern-header--preset-original_modern.tbm-cta-mobile-enabled .tbm-modern-actions>.tbm-modern-cta--mobile{
		display:inline-flex!important;
		align-items:center;
		justify-content:center;
		min-height:36px;
		height:36px;
		padding:6px 12px;
		border:1px solid var(--tbmd-accent);
		background:transparent;
		color:var(--tbmd-accent)!important;
		font-size:11px;
		line-height:1;
		font-weight:700;
		text-transform:uppercase;
		white-space:nowrap;
		text-decoration:none!important;
	}
	.tbm-modern-header--preset-original_modern.tbm-cta-mobile-enabled .tbm-modern-actions>.tbm-modern-cta--mobile:hover{
		background:var(--tbmd-accent);
		color:#fff!important;
	}
}


/* ==========================================================
   TBM 1.4.1 FINAL — Tablet UX safety, default 1024px
   Breakpoint-ul personalizat este aplicat dinamic ulterior.
   ========================================================== */
@media (min-width:768px) and (max-width:1024px){
	.tbm-modern-header--preset-original_modern .tbm-modern-header__container{
		display:grid!important;
		grid-template-columns:1fr auto!important;
		position:relative!important;
		width:min(calc(100% - 40px),var(--tbmd-container))!important;
		max-width:none!important;
		height:auto!important;
		min-height:calc(var(--tbmd-mobile-logo-height) + 26px)!important;
		margin-inline:auto!important;
		padding:10px 0!important;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-brand{
		position:static!important;
		width:auto!important;
		height:auto!important;
		display:flex!important;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-brand picture,
	.tbm-modern-header--preset-original_modern .tbm-modern-brand img{
		width:auto!important;
		height:var(--tbmd-mobile-logo-height)!important;
		max-width:240px!important;
		max-height:none!important;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-nav-stack,
	.tbm-modern-header--preset-original_modern .tbm-modern-socials--desktop{
		display:none!important;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-actions{
		position:static!important;
		display:flex!important;
		align-items:center!important;
		gap:8px!important;
	}
	.tbm-modern-header--preset-original_modern .tbm-modern-menu-toggle{
		display:flex!important;
	}
}
