/**
 * UMAN static export - shared site chrome (reset + sticky nav bar).
 * Extracted from the WordPress child theme's template-uman-standalone.css
 * reset/nav section. Load this on EVERY page, before uman-shared.css and
 * the page-specific stylesheet. No !important anywhere here since there's
 * no WordPress/Flatsome CSS left to fight in this static export.
 */

*, *::before, *::after {
	box-sizing: border-box;
}

html {
	-webkit-text-size-adjust: 100%;
}

body.uman-landing {
	margin: 0;
	font-family: "Archivo", system-ui, sans-serif;
	color: var(--uman-c-ink, #101010);
	background: var(--uman-c-bg, #fff);
}

img {
	max-width: 100%;
	display: block;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
}

/* Nav ------------------------------------------------------------------- */

.uman-nav {
	position: sticky;
	top: 0;
	z-index: 40;
	background: rgba(255, 255, 255, 0.94);
	backdrop-filter: blur(4px);
	border-bottom: 1px solid var(--uman-c-line);
}

.uman-nav__bar {
	display: flex;
	align-items: center;
	gap: 1.25rem;
	padding: 0.6rem 1.25rem;
}

.uman-nav__logo {
	display: block;
	margin-right: auto;
	line-height: 0;
}

.uman-nav__logo-img {
	height: 2.5rem;
	width: auto;
}

.uman-nav__links {
	display: none;
	gap: 1.75rem;
}

.uman-nav__links a {
	font-size: 14px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.07em;
	color: var(--uman-c-muted-on-light, #666);
	text-decoration: none;
}

.uman-nav__links a:hover,
.uman-nav__links a:focus-visible {
	color: var(--uman-c-navy, #001b54);
}

.uman-nav__links a[aria-current="page"] {
	color: var(--uman-c-navy, #001b54);
	font-weight: 700;
}

.uman-nav__lang {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	font-size: 14px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.uman-nav__lang a {
	color: var(--uman-c-muted-on-light, #666);
	text-decoration: none;
}

.uman-nav__lang a[aria-current="true"] {
	color: var(--uman-c-navy, #001b54);
}

.uman-nav__cta {
	flex: 0 0 auto;
	padding: 0.6rem 1.1rem;
	border: 1.5px solid var(--uman-c-navy, #001b54);
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: var(--uman-c-navy, #001b54);
	text-decoration: none;
	white-space: nowrap;
	transition: background-color 0.15s ease, color 0.15s ease;
}

.uman-nav__cta:hover,
.uman-nav__cta:focus-visible {
	background: var(--uman-c-navy, #001b54);
	color: #fff;
}

.uman-nav__toggle {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.75rem;
	height: 2.75rem;
	padding: 0;
	border: 1px solid var(--uman-c-ink);
	background: none;
	cursor: pointer;
}

.uman-nav__toggle-bar,
.uman-nav__toggle-bar::before,
.uman-nav__toggle-bar::after {
	display: block;
	width: 1.1rem;
	height: 1px;
	background: var(--uman-c-ink);
	position: relative;
}

.uman-nav__toggle-bar::before,
.uman-nav__toggle-bar::after {
	content: "";
	position: absolute;
	left: 0;
}

.uman-nav__toggle-bar::before {
	top: -5px;
}

.uman-nav__toggle-bar::after {
	top: 5px;
}

.uman-nav[data-nav-open="true"] .uman-nav__links {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	background: #fff;
	border-bottom: 1px solid var(--uman-c-line);
	padding: 1rem 1.25rem;
}

/* Tablet up -------------------------------------------------------------- */

@media only screen and (min-width: 48em) {
	.uman-nav__bar {
		padding: 0.75rem 2.5rem;
	}

	.uman-nav__logo-img {
		height: 3rem;
	}

	.uman-nav__links {
		display: flex;
	}

	.uman-nav__toggle {
		display: none;
	}

	.uman-nav[data-nav-open="true"] .uman-nav__links {
		position: static;
		border: 0;
		padding: 0;
		flex-direction: row;
	}
}


/* ===== STRATUL PLATFORMEI — adăugat peste exportul lor; tools/import_uman_export.py îl păstrează la reimport ===== */

/* buton „inapoi sus" — in stilul sablonului: patrat, cerneala pe hartie */
.uman-to-top {
	position: fixed;
	z-index: 60;
	right: 16px;
	bottom: calc(16px + env(safe-area-inset-bottom, 0px));
	width: 44px;
	height: 44px;
	padding: 0;
	border: 0;
	cursor: pointer;
	display: grid;
	place-items: center;
	background: var(--uman-c-ink, #111);
	color: #fff;
	opacity: 0;
	transform: translateY(10px);
	pointer-events: none;
	transition: opacity .2s ease, transform .2s ease;
}
/* sageata alba: CSS-ul lor pune culoarea cernelii pe orice <button> din .uman-landing (specificitate mai mare) */
.uman-landing .uman-to-top, .uman-landing button.uman-to-top { color: #fff; }
.uman-to-top svg { width: 20px; height: 20px; display: block; stroke: #fff; }
.uman-to-top svg path { stroke: #fff; }
.uman-to-top.is-visible { opacity: 1; transform: none; pointer-events: auto; }
.uman-to-top:focus-visible { outline: 2px solid var(--uman-c-ink, #111); outline-offset: 3px; }
@media (prefers-reduced-motion: reduce) {
	.uman-to-top { transition: opacity .2s; transform: none; }
}

/* Bannerul hero are textul „ars" în imagine: se vede ÎNTREG, pe toată lățimea ecranului, ca pe fundatiamedicis.ro
   (lățime 100%, înălțimea urmează proporția imaginii 1440×800 → nimic tăiat, nicio bandă laterală).
   Selectori cu .uman-landing în față: câștigă în fața template-uman-hero.css, încărcat după acest fișier. */
.uman-landing .uman-hero__media {
	min-height: 0;
}
.uman-landing .uman-hero__media img {
	position: static;
	width: 100%;
	height: auto;
	aspect-ratio: auto 1440 / 800;	/* rezerva locul pana se incarca (fara salt de pagina); dupa incarcare conteaza raportul real */
	object-fit: contain;
}

/* Programul cultural: evenimentele SOLD OUT (tools/import_uman_export.py -> program_cultural) — eticheta neagra, fara inscriere */
.uman-landing .uman-soldout {
	display: inline-block;
	margin: 0 0 0.6rem;
	padding: 0.3rem 0.6rem;
	background: var(--uman-c-ink, #101010);
	color: #fff !important;
	font-size: 0.7rem;
	font-weight: 700 !important;
	line-height: 1 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
}
.uman-landing .uman-cultural-day--soldout .uman-cultural-day__heading {
	max-width: min(100%, 16ch);
}

/* 16.09, cerut de user dupa capturi de pe telefon: pe ecrane mici butonul „inapoi sus" acoperea randul „Bilet”,
   iar blocul lateral (imaginea-substitut + „Informatii practice" + „Intrebari") repeta ce scrie deja in subsol. */
@media only screen and (max-width: 47.99em) {
	.uman-to-top {
		display: none !important;
	}

	.uman-landing .uman-inscriere-aside {
		display: none;
	}
}

/* Bara de consimtamant pentru cookie-uri de analiza (static/js/consimtamant.js) — stilul editorial al site-ului. */
.uman-consim {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 60;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 0.75rem 1.5rem;
	padding: 0.9rem 1.25rem;
	background: var(--uman-c-ink, #101010);
	color: #fff;
	font-size: 0.85rem;
	line-height: 1.5;
}

.uman-consim__text {
	margin: 0;
	max-width: 62ch;
	color: #fff;
}

.uman-consim__text a {
	color: #fff;
	text-decoration: underline;
}

.uman-consim__actions {
	display: flex;
	gap: 0.5rem;
	flex: 0 0 auto;
}

.uman-consim__btn {
	padding: 0.5rem 1.1rem;
	border: 1px solid #fff;
	background: transparent;
	color: #fff;
	font: inherit;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	cursor: pointer;
}

.uman-consim__btn--da {
	background: #fff;
	color: var(--uman-c-ink, #101010);
}

@media only screen and (max-width: 47.99em) {
	.uman-consim {
		flex-direction: column;
		align-items: stretch;
		text-align: left;
	}

	.uman-consim__actions {
		justify-content: flex-end;
	}
}

/* Afisele evenimentelor „UMAN Unseen” din programul cultural (tools/import_uman_export.py -> pune_afise).
   Stau sub titlul zilei, in coloana din stanga; textul ramane in dreapta. */
.uman-landing .uman-afis-col {
	flex: 0 1 auto;
	min-width: 0;
}

.uman-landing .uman-afis {
	margin: 1.5rem 0 0;
	max-width: 26rem;
}

.uman-landing .uman-afis img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	border: 1px solid var(--uman-c-line, #dcdcdc);
}

/* Prima pagina, „De ce UMAN?” si „Un oras european…”: organizatorii au pus texte lungi (mai multe paragrafe),
   iar regula lor de tableta face din intro un RAND flex -> fiecare paragraf devenea o coloana de 2-3 cuvinte.
   Cerut de ei (17-09): textele sa curga unul sub altul, nu pe un rand. Tableta: o singura coloana;
   desktop: titlul in stanga, paragrafele unul sub altul in dreapta. Pe telefon ramane regula lor (coloana). */
@media only screen and (min-width: 48em) {
	.uman-landing .uman-program__intro,
	.uman-landing .uman-city__intro {
		display: flow-root;
	}

	.uman-landing .uman-program__title,
	.uman-landing .uman-city__title {
		margin: 0 0 1.75rem;
	}

	.uman-landing .uman-program__intro > p,
	.uman-landing .uman-city__intro > p {
		max-width: 44rem;
		margin: 0 0 1rem;
	}

	.uman-landing .uman-program__intro > p:last-child,
	.uman-landing .uman-city__intro > p:last-child {
		margin-bottom: 0;
	}
}

@media only screen and (min-width: 64em) {
	.uman-landing .uman-program__title,
	.uman-landing .uman-city__title {
		float: left;
		width: 44%;
		margin: 0;
		padding-right: 2.5rem;
	}

	.uman-landing .uman-program__intro > p,
	.uman-landing .uman-city__intro > p {
		margin-left: 50%;
		max-width: 40rem;
	}

	.uman-landing .uman-program__subtitle {
		margin-bottom: 1.25rem;
	}

	.uman-landing .uman-program__tagline {
		margin-top: 1.75rem;
	}
}
