/* EVASTAFF - componente suplimentare */

.e-breadcrumbs{ font-size:.85rem; color:var(--e-gray-500); margin-bottom:1rem; }
.e-breadcrumbs a{ color:var(--e-gray-500); }
.e-breadcrumbs a:hover{ color:var(--e-accent); }

.e-tag-list{ display:flex; flex-wrap:wrap; gap:.5rem; }
.e-tag{ background:var(--e-gray-100); border-radius:999px; padding:.35rem .9rem; font-size:.8rem; font-weight:500; }

.e-quote-only{ font-weight:600; color:var(--e-accent); }

.e-list-check{ list-style:none; padding:0; display:grid; gap:.6rem; }
.e-list-check li{ padding-left:1.6rem; position:relative; }
.e-list-check li::before{ content:"✓"; position:absolute; left:0; color:var(--e-accent); font-weight:700; }

/* Forms (folosite de Fluent Forms / shortcode-uri custom) */
.e-form input[type=text],
.e-form input[type=email],
.e-form input[type=tel],
.e-form select,
.e-form textarea{
	width:100%;
	padding:.75rem 1rem;
	border:1px solid var(--e-gray-300);
	border-radius:var(--e-radius-sm);
	font-family:var(--e-font-body);
	font-size:1rem;
	transition:border-color var(--e-transition), box-shadow var(--e-transition);
}
.e-form input:focus,
.e-form select:focus,
.e-form textarea:focus{
	outline:none;
	border-color:var(--e-accent);
	box-shadow:0 0 0 4px rgba(10,132,255,.15);
}
.e-form label{ display:block; font-weight:600; margin-bottom:.35rem; font-size:.9rem; }
.e-form .e-field{ margin-bottom:1.25rem; }

.e-btn--outline.is-active{ background:var(--e-black); color:var(--e-white); border-color:var(--e-black); }

/* Focus vizibil pentru accesibilitate WCAG AA */
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible{
	outline:3px solid var(--e-accent);
	outline-offset:2px;
}

/* Page hero cu imagine de fundal (CCTV, IDSAI, Control Acces, IoT&Cyber, Despre EVA, EVACAD) */
.e-page-hero{ position:relative; min-height:52vh; display:flex; align-items:flex-end; color:#fff; overflow:hidden; }
.e-page-hero img.e-hero-bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }
.e-page-hero::after{ content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,.35) 0%, rgba(0,0,0,.75) 100%); z-index:1; }
.e-page-hero .e-container{ position:relative; z-index:2; padding-bottom:3rem; }
.e-page-hero .e-eyebrow{ color:#7fc0ff; }
.e-page-hero h1{ font-size:clamp(2rem, 4.5vw, 3.4rem); max-width:20ch; color:#fff; }
.e-page-hero p{ max-width:56ch; color:rgba(255,255,255,.85); font-size:1.05rem; }

/* Hero cu wordmark EVASTAFF ca fundal (CCTV, IoT & Cyber Security, Contact) */
.e-page-hero--brand{ background:var(--e-gradient-hero); min-height:46vh; }
.e-page-hero--brand::after{ display:none; } /* fara overlay foto - fundalul e deja degradeul de brand */
.e-hero-brand-mark{
	position:absolute;
	top:50%; left:50%;
	transform:translate(-50%,-50%);
	width:min(900px, 85vw);
	z-index:0;
	pointer-events:none;
}
.e-hero-brand-mark img{
	width:100%;
	height:auto;
	opacity:.32;
	filter:brightness(0) invert(1); /* wordmark negru -> alb, vizibil peste degradeul inchis */
}
@media (max-width:880px){
	.e-hero-brand-mark{ width:90vw; opacity:.9; }
}

/* Timeline (Despre EVA) */
.e-timeline{ position:relative; margin:2.5rem 0; padding-left:2rem; border-left:2px solid var(--e-gray-300); display:grid; gap:2rem; }
.e-timeline-item{ position:relative; }
.e-timeline-item::before{ content:""; position:absolute; left:-2.55rem; top:.35rem; width:14px; height:14px; border-radius:50%; background:var(--e-accent); border:3px solid var(--e-white); box-shadow:0 0 0 2px var(--e-accent); }
.e-timeline-year{ font-family:var(--e-font-display); font-weight:700; color:var(--e-accent); font-size:1.1rem; }

/* Team cards (Despre EVA) */
.e-team-card{ text-align:center; }
.e-team-card img{ width:100%; aspect-ratio:1; object-fit:cover; border-radius:var(--e-radius-md); margin-bottom:1rem; }
.e-team-card h4{ margin-bottom:.15rem; }
.e-team-card span{ color:var(--e-gray-500); font-size:.9rem; }

/* Values grid */
.e-value-card{ text-align:left; }
.e-value-card .e-value-icon{ width:44px; height:44px; border-radius:10px; background:rgba(10,132,255,.08); display:flex; align-items:center; justify-content:center; margin-bottom:.85rem; }

/* Card cu fotografie banner (evastaff_card cu $photo) */
.e-card--photo{ padding:0; overflow:hidden; }
.e-card-photo{ width:100%; height:180px; object-fit:cover; display:block; }
.e-card-photo-body{ padding:1.5rem; }

/* Pagina de Login */
.e-login-page{
	min-height:100vh;
	display:grid;
	grid-template-columns:1fr 1fr;
}
.e-login-visual{
	background:var(--e-gradient-hero);
	color:#fff;
	display:flex;
	flex-direction:column;
	justify-content:center;
	padding:clamp(2rem, 6vw, 6rem);
	padding-top:calc(84px + clamp(2rem, 6vw, 6rem));
}
.e-login-logo{ width:64px; height:64px; border-radius:16px; margin-bottom:2rem; }
.e-login-visual h2{ font-size:clamp(1.8rem, 3vw, 2.6rem); max-width:14ch; }
.e-login-visual p{ color:rgba(255,255,255,.8); max-width:38ch; }
.e-login-visual .e-iot-qr-card{ margin-top:2rem; border:1px solid rgba(255,255,255,.12); max-width:26rem; }

.e-login-form-wrap{
	display:flex;
	align-items:center;
	justify-content:center;
	padding:2rem;
	padding-top:calc(84px + 2rem);
}
.e-login-card{ width:100%; max-width:400px; }
.e-login-card h1{ margin-bottom:.3rem; }
.e-login-subtitle{ color:var(--e-gray-500); margin-bottom:1.75rem; }

.e-login-alert{
	background:#fde8e8;
	color:#c81e1e;
	padding:.85rem 1rem;
	border-radius:var(--e-radius-sm);
	font-size:.9rem;
	margin-bottom:1.25rem;
}
.e-login-alert--success{
	background:#dcfce7;
	color:#166534;
}

.e-login-row{
	display:flex;
	align-items:center;
	justify-content:space-between;
	margin-bottom:1.5rem;
	font-size:.85rem;
}
.e-login-remember{ display:flex; align-items:center; gap:.4rem; color:var(--e-gray-700); cursor:pointer; }
.e-login-remember input{ width:auto; margin:0; }
.e-login-row a{ color:var(--e-accent); font-weight:500; }
.e-login-row a:hover{ text-decoration:underline; }

.e-login-submit{ width:100%; }
.e-login-footer-text{ margin-top:1.75rem; text-align:center; font-size:.9rem; color:var(--e-gray-500); }
.e-login-footer-text a{ color:var(--e-accent); font-weight:600; }

@media (max-width:880px){
	.e-login-page{ grid-template-columns:1fr; }
	.e-login-visual{ padding-top:calc(84px + 2rem); padding-bottom:2rem; }
}

/* Blog: carduri + modal "Află mai mult" */
.e-blog-card{ display:flex; flex-direction:column; }
.e-blog-card p{ flex-grow:1; }

.e-modal-overlay{
	position:fixed; inset:0; z-index:2000;
	background:rgba(13,15,18,.6);
	backdrop-filter:blur(4px);
	display:flex; align-items:center; justify-content:center;
	padding:1.5rem;
	animation:e-modal-fade .2s ease;
}
.e-modal-overlay[hidden]{ display:none; }
.e-modal{
	position:relative;
	background:var(--e-white);
	border-radius:var(--e-radius-lg);
	max-width:680px; width:100%;
	max-height:85vh; overflow-y:auto;
	padding:2.5rem;
	box-shadow:0 24px 60px rgba(0,0,0,.35);
	animation:e-modal-rise .25s cubic-bezier(.2,.8,.2,1);
}
.e-modal-close{
	position:absolute; top:1.25rem; right:1.25rem;
	width:36px; height:36px; border-radius:50%;
	background:var(--e-gray-100); border:none; cursor:pointer;
	font-size:1.4rem; line-height:1; color:var(--e-gray-700);
	display:flex; align-items:center; justify-content:center;
	transition:background var(--e-transition);
}
.e-modal-close:hover{ background:var(--e-gray-300); }
.e-modal-body p{ color:var(--e-gray-700); margin-bottom:1.1rem; }
@keyframes e-modal-fade{ from{ opacity:0; } to{ opacity:1; } }
@keyframes e-modal-rise{ from{ opacity:0; transform:translateY(16px) scale(.98); } to{ opacity:1; transform:translateY(0) scale(1); } }

/* Utilitate standard WordPress: text prezent pentru cititoare de ecran, invizibil vizual */
.screen-reader-text{
	border:0; clip:rect(1px,1px,1px,1px); clip-path:inset(50%);
	height:1px; margin:-1px; overflow:hidden; padding:0; position:absolute;
	width:1px; word-wrap:normal !important;
}

/* Hero cu banner promotional (CCTV, Control Acces) - overlay foarte usor,
   ca textul/graficele deja existente in banner sa ramana lizibile. */
.e-page-hero--banner{ min-height:38vh; }
.e-page-hero--banner::after{ background:linear-gradient(180deg, rgba(0,0,0,0) 60%, rgba(0,0,0,.35) 100%); }
.e-page-hero--banner .e-container{ padding-bottom:1.5rem; }

/* Banner publicitar clicabil (pagina Proiecte) */
.e-ad-banner{ display:block; border-radius:14px; overflow:hidden; box-shadow:0 2px 10px rgba(13,15,18,.08); transition:transform .2s ease, box-shadow .2s ease; }
.e-ad-banner:hover{ transform:translateY(-3px); box-shadow:0 10px 24px rgba(13,15,18,.14); }
.e-ad-banner img{ width:100%; height:auto; display:block; }

/* Imagine "sub header", intre hero si continut (IoT/Cyber Security, Control Acces) */
.e-subhero-image{
	position:relative;
	width:100%;
	max-height:520px;
	overflow:hidden;
}
.e-subhero-image > img:first-child{
	width:100%; height:100%;
	object-fit:cover;
	display:block;
	max-height:520px;
}
.e-subhero-caption{
	position:absolute;
	left:0; right:0; bottom:0;
	padding:1.5rem 2rem;
	background:linear-gradient(0deg, rgba(0,0,0,.65) 0%, transparent 100%);
	color:#fff;
}
.e-subhero-caption span{
	font-family:var(--e-font-display);
	font-size:clamp(1rem, 2vw, 1.3rem);
	font-weight:600;
}

/* Insigna EVASTAFF, pozitionata peste echipamentul din fotografie (Control Acces) */
.e-subhero-badge{
	position:absolute;
	top:50%; left:50%;
	transform:translate(-50%,-50%);
	width:clamp(70px, 9vw, 108px);
	height:clamp(70px, 9vw, 108px);
	border-radius:50%;
	background:rgba(255,255,255,.94);
	padding:10px;
	box-shadow:0 6px 24px rgba(0,0,0,.35), 0 0 0 3px rgba(10,132,255,.5);
}

@media (max-width:640px){
	.e-subhero-image{ max-height:280px; }
	.e-subhero-image > img:first-child{ max-height:280px; }
	.e-subhero-caption{ padding:1rem 1.25rem; }
}

