/* ==========================================================================
   Prima vizită — Figma „web-cunoaste-ne”
   Se încarcă doar pe /prima-vizita/. Conținut: template-parts/prima-vizita/.
   Textul vine din rolurile comune (assets/global/type.css), acțiunile din
   assets/global/actions.css. Aici: doar așezare și formele din Figma.
   ========================================================================== */
.elim-prima {
	--ink: #1B141A;
	--plum: #483041;
	--gold: #DAA769;
	--orange-a11y: #A65A12;
	--line: #E2D6D3;
	--sand: #E9E0DE;
	--mist: #F7F3F2;
	--mauve: #AD8E87;
	--mauve-dark: #8F6E68;   /* 4,6:1 pe alb (AA pentru text mic) */
	--ease: cubic-bezier(.22, .8, .2, 1);
	/* fotografia din rânduri (Figma: 404,7 × 364) */
	--pv-iw: 405px;
	--pv-ih: 364px;
}
.pv { font-family: "macha", sans-serif; font-synthesis: none; }
.pv *, .pv *::before, .pv *::after { box-sizing: border-box; }
/* conținutul secțiunilor full-width stă pe grila de 1280 px */
.pv-in { width: min(var(--elim-grid, 1280px), 100% - 2 * var(--elim-gutter, 20px)); margin-inline: auto; }

/* Eticheta „de confirmat” — o văd doar administratorii */
.pv-confirm {
	display: inline-block;
	margin-left: 8px;
	padding: 2px 8px;
	border: 1px dashed var(--orange-a11y);
	border-radius: 999px;
	font-family: "Montserrat", sans-serif;
	font-weight: 800;
	font-size: 10px;
	letter-spacing: 0;
	text-transform: uppercase;
	color: var(--orange-a11y);
	vertical-align: middle;
	white-space: nowrap;
}

/* =========================================================================
   DUMINICA TA, PAS CU PAS — șina cu pașii
   ========================================================================= */
.pv-rail { margin-bottom: 64px; }
/* etichetele: rolul comun .elim-t-label (assets/global/type.css) */
.pv-rail__label { margin: 0 0 8px; }
.pv-rail ol { display: flex; flex-wrap: wrap; gap: 22px 14px; list-style: none; margin: 0; padding: 0; }
.pv-rail li { margin: 0; padding: 0; }
/* aceeași formă ca etichetele de an din Istoric: 10 px + vârf curbat */
.pv-rail a {
	position: relative;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	height: 36px;
	padding: 0 14px;
	border-radius: 10px;
	background: var(--mauve);
	font-family: "macha", sans-serif;
	font-weight: 700;
	font-size: 16px;
	line-height: 1;
	color: #F3ECEA;
	text-decoration: none;
	white-space: nowrap;
	transition: background-color .3s var(--ease);
}
.pv-rail a::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -12px;
	width: 34px;
	height: 13px;
	margin-left: -17px;
	background: inherit;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 39 13'%3E%3Cpath d='M39 0C19.554 0 19.5 12.933 19.5 13C19.5 12.933 19.446 0 0 0Z'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
	        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 39 13'%3E%3Cpath d='M39 0C19.554 0 19.5 12.933 19.5 13C19.5 12.933 19.446 0 0 0Z'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
}
.pv-rail__n { font-variant-numeric: tabular-nums; opacity: .75; }
.pv-rail a:hover, .pv-rail a:focus-visible { background: var(--mauve-dark); color: #fff; outline: none; }
.pv-rail a.is-active { background: var(--ink); color: #fff; }

/* =========================================================================
   RÂNDURILE (Figma): fotografie tăiată oblic + bloc nisipiu din marginea ecranului
   ========================================================================= */
.pv-rows { list-style: none; margin: 0; padding: 0; }
.pv-row {
	position: relative;
	display: flex;
	align-items: center;
	min-height: var(--pv-ih);
	margin: 0;
	padding: 0;
	scroll-margin-top: 32px;
}
.pv-row__in {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: var(--pv-iw) minmax(0, 1fr);
	column-gap: 48px;
	align-items: center;
}
.pv-row--right .pv-row__in { grid-template-columns: minmax(0, 1fr) var(--pv-iw); }
.pv-row--right .pv-row__img { order: 2; }
.pv-row--right .pv-row__text { text-align: right; justify-self: end; }

/* fotografia: masca exactă din Figma (Rectangle 140 / 139) */
.pv-row__img {
	width: var(--pv-iw);
	height: var(--pv-ih);
	margin: 0;
	overflow: hidden;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 404.664 364' preserveAspectRatio='none'%3E%3Cpath d='M84.6055 22.0527C88.1838 9.02746 100.026 0 113.534 0H374.664C391.232 0 404.664 13.4315 404.664 30V334C404.664 350.569 391.232 364 374.664 364H30.0172C10.2128 364 -4.15739 345.149 1.08898 326.053L84.6055 22.0527Z'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
	        mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 404.664 364' preserveAspectRatio='none'%3E%3Cpath d='M84.6055 22.0527C88.1838 9.02746 100.026 0 113.534 0H374.664C391.232 0 404.664 13.4315 404.664 30V334C404.664 350.569 391.232 364 374.664 364H30.0172C10.2128 364 -4.15739 345.149 1.08898 326.053L84.6055 22.0527Z'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
}
.pv-row--right .pv-row__img {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 404.664 364' preserveAspectRatio='none'%3E%3Cpath d='M0 30C0 13.4315 13.4315 0 30 0H291.13C304.638 0 316.48 9.02747 320.058 22.0527L403.575 326.053C408.821 345.149 394.451 364 374.647 364H30C13.4315 364 0 350.569 0 334V30Z'/%3E%3C/svg%3E");
	        mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 404.664 364' preserveAspectRatio='none'%3E%3Cpath d='M0 30C0 13.4315 13.4315 0 30 0H291.13C304.638 0 316.48 9.02747 320.058 22.0527L403.575 326.053C408.821 345.149 394.451 364 374.647 364H30C13.4315 364 0 350.569 0 334V30Z'/%3E%3C/svg%3E");
}
.pv-row__img img { display: block; width: 100%; height: 100%; object-fit: cover; }

/* blocul nisipiu: din marginea ecranului până sub fotografie, cu latura oblică paralelă (Figma „Union”) */
.pv-row__deco {
	position: absolute;
	top: 50%;
	left: 0;
	height: var(--pv-ih);
	width: calc(max(var(--elim-gutter, 20px), (100% - var(--elim-grid, 1280px)) / 2) + 51px);
	transform: translateY(-50%);
	display: flex;
	pointer-events: none;
}
.pv-row__deco::before { content: ""; flex: 1 1 auto; background: var(--mist); }
.pv-row__deco::after {
	content: "";
	flex: 0 0 120px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 364' preserveAspectRatio='none'%3E%3Cpath fill='%23F7F3F2' d='M89.982 0C109.787 0 124.157 18.851 118.911 37.947L35.395 341.947C31.816 354.973 19.974 364 6.466 364H0V0Z'/%3E%3C/svg%3E") 0 0 / 100% 100% no-repeat;
}
.pv-row--right .pv-row__deco { left: auto; right: 0; transform: translateY(-50%) scaleX(-1); }

/* textul rândului */
.pv-row__text { max-width: 760px; padding: 24px 0; }
.pv-row--right .pv-row__text { max-width: 710px; }
.pv-row__step { margin: 0 0 8px; }
/* titlul: rolul comun .elim-t-title--l (Macha 700 · 25 / 1.3 · #1B141A) */
.pv-row__title { margin: 0 0 16px; }
.pv-row__text .elim-t-text p { margin: 0 0 .7em; }
.pv-row__text .elim-t-text p:last-child { margin-bottom: 0; }
.pv-row__text .elim-act { margin-top: 18px; }

/* =========================================================================
   ÎNTREBĂRI SINCERE — același obiect ca acordeonul de pe „În ce credem”
   (cutie #E9E0DE · 16 px · 26 / 30 px; deschis = transparent), pe două coloane
   ========================================================================= */
.pv-faq { display: grid; grid-template-columns: 1fr 1fr; column-gap: 32px; align-items: start; }
.pv-faq__col { min-width: 0; }
.pv-faq__item { margin: 0 0 22px; }
.pv-faq__q {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	padding: 26px 30px;
	border-radius: 16px;
	background: var(--sand);
	cursor: pointer;
	list-style: none;
	transition: background-color .3s;
}
.pv-faq__q::-webkit-details-marker { display: none; }
.pv-faq__q:focus { outline: none; }
.pv-faq__item.is-open .pv-faq__q { background: transparent; }
.pv-faq__head { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
/* titlul: rolul comun .elim-t-title (Macha 700 · 22 / 1.3 · #1B141A) */
.pv-faq__q:focus-visible .pv-faq__t { text-decoration: underline; text-decoration-color: var(--gold); text-underline-offset: 5px; }
/* versetul: aceeași etichetă ca pe „În ce credem” */
.pv-faq .elim-accordion-ref { margin-top: 0; font-family: "macha", sans-serif; font-size: 18px; }
/* chevron Haicon line (ca în meniu) */
.pv-faq__chev {
	flex: 0 0 24px;
	width: 24px;
	height: 24px;
	background: var(--ink);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 9.5L12 15.5L18 9.5' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%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' fill='none'%3E%3Cpath d='M6 9.5L12 15.5L18 9.5' stroke='black' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / contain no-repeat;
	transition: transform .35s var(--ease);
}
.pv-faq__item.is-open .pv-faq__chev { transform: scaleY(-1); }
/* răspunsul se deschide lin (grid rows) */
.pv-faq__a { display: grid; grid-template-rows: 0fr; transition: grid-template-rows .45s var(--ease); }
.pv-faq__item.is-open .pv-faq__a { grid-template-rows: 1fr; }
.pv-faq__a > div { min-height: 0; overflow: hidden; padding: 0 30px; }
.pv-faq__a .elim-t-text p { margin: 0; max-width: 62ch; }
.pv-faq__bible { margin: 16px 0 0; }
.pv-faq__a > div > :last-child { margin-bottom: 20px; }

/* =========================================================================
   TE AȘTEPTĂM — unde, când, live
   ========================================================================= */
.pv-visit { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 48px; }
.pv-visit__col { display: flex; flex-direction: column; align-items: flex-start; border-top: 1px solid var(--line); padding-top: 20px; }
.pv-visit__k { margin: 0 0 8px; }
.pv-visit__big { margin: 0 0 12px; }
.pv-visit .elim-t-note { margin: 0 0 20px; }
.pv-visit .elim-t-note a { color: var(--plum); text-decoration: underline; text-decoration-color: var(--gold); text-underline-offset: 4px; }
.pv-visit .elim-act { margin-top: auto; }
.pv-visit__prog { list-style: none; margin: 0; padding: 0; }
.pv-visit__prog li { margin: 0 0 14px; padding: 0; }
.pv-visit__day { display: block; }
.pv-visit__prog .elim-t-note { margin: 0; }

/* =========================================================================
   RESPONSIVE
   ========================================================================= */
@media (max-width: 1199px) {
	.elim-prima { --pv-iw: 340px; --pv-ih: 306px; }
	.pv-row__in { column-gap: 40px; }
}
@media (max-width: 991px) {
	.elim-prima { --pv-iw: 300px; --pv-ih: 270px; }
	.pv-faq { grid-template-columns: 1fr; }
	.pv-visit { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 767px) {
	.pv-rail { margin-bottom: 40px; }
	.pv-rail a { font-size: 15px; padding: 0 12px; }
	/* rândurile se așază unul sub altul: fotografia pe toată lățimea, apoi textul */
	.pv-row { display: block; min-height: 0; margin-bottom: 48px; }
	.pv-row__deco { display: none; }
	.pv-row__in, .pv-row--right .pv-row__in { grid-template-columns: 1fr; }
	.pv-row--right .pv-row__img { order: 0; }
	.pv-row__img { width: 100%; height: auto; aspect-ratio: 404.664 / 364; }
	.pv-row--right .pv-row__text { text-align: left; justify-self: start; }
	.pv-row__text { padding: 20px 0 0; }
	.pv-faq__q { padding: 20px 22px; }
	.pv-faq__a > div { padding: 0 22px; }
	.pv-faq .elim-accordion-ref { font-size: 16px; }
	.pv-visit { grid-template-columns: 1fr; gap: 32px; }
}
@media (prefers-reduced-motion: reduce) {
	.pv *, .pv *::before, .pv *::after { transition: none !important; }
}
