/* Ai Dar – site styles for the parts Elementor's widget controls cannot express. Colours and fonts follow the
   Elementor kit (Site Settings → Global Colors / Fonts) through its CSS variables. */
:root {
	--aidar-serif: var(--e-global-typography-primary-font-family, "Playfair Display"), Georgia, serif;
	--aidar-sans: var(--e-global-typography-text-font-family, "Inter"), system-ui, sans-serif;
	--aidar-text: var(--e-global-color-text, #575149);
	--aidar-muted: #5e5850;
	--aidar-heading: var(--e-global-color-primary, #403a34);
	--aidar-nav: #514a42;
	--aidar-bg: #f7f3ec;
	--aidar-surface: #f7f3ec;
	--aidar-card: #ffffff;
	/* Text-safe accents (>= 7:1 small text, >= 4.5:1 large text on #f7f3ec). Brand originals stay decorative. */
	--aidar-green: #187f4f;
	--aidar-green-small: #115e3b;
	--aidar-blue: #2f6fb5;
	--aidar-blue-small: #24548a;
	--aidar-gold: #906909;
	--aidar-gold-small: #694d06;
	--aidar-red: #c1121f;
	--aidar-red-small: #a60f1b;
	--aidar-gradient: linear-gradient(90deg, #2f6fb5 0%, #198754 33%, #906909 66%, #c1121f 100%);
	--aidar-radius: 28px;
	--aidar-shadow: 0 18px 50px rgba(43, 39, 34, .07);
}

body { background: var(--aidar-bg); color: var(--aidar-text); font-family: var(--aidar-sans); }
/* Reveal offsets and decorative rings may reach past the screen edge; clip them without breaking the sticky header. */
#page { overflow-x: clip; }

/* Accent words inside Elementor headings: <span class="aidar-accent-green">…</span> */
.aidar-accent-green { color: var(--aidar-green); }
.aidar-accent-blue { color: var(--aidar-blue); }
.aidar-accent-gold { color: var(--aidar-gold); }
.aidar-accent-red { color: var(--aidar-red); }
/* Multicolour accent (large text only): every stop is >= 4.5:1 on the page background. */
.aidar-accent-rainbow { background: linear-gradient(90deg, #2f6fb5, #187f4f 35%, #906909 65%, #c1121f); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
/* Video heroes: dark overlay, so accents switch to light tints. */
.aidar-on-dark .aidar-accent-green { color: #8fe0b5; }
.aidar-on-dark .aidar-accent-blue { color: #a9cdf5; }
.aidar-on-dark .aidar-accent-gold { color: #f3d27a; }
.aidar-on-dark .aidar-accent-red { color: #ffa3a8; }
.aidar-on-dark .elementor-heading-title { text-shadow: 0 2px 18px rgba(0, 0, 0, .35); }

/* Logo wordmark */
.aidar-logo-text .elementor-heading-title,
.aidar-logo-text {
	background: linear-gradient(90deg, #2f6fb5 0%, #198754 25%, #d9a520 50%, #c1121f 75%, #2f6fb5 100%) 0 0 / 300% 100%;
	-webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
	animation: aidar-logo 10s linear infinite;
}
@keyframes aidar-logo { to { background-position: 300% 0; } }
@media (prefers-reduced-motion: reduce) { .aidar-logo-text .elementor-heading-title { animation: none; } }

/* Header: sticky, translucent */
.elementor-location-header {
	position: sticky; top: 0; z-index: 50;
	background: rgba(248, 246, 240, .95);
	-webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
	border-bottom: 1px solid rgba(0, 0, 0, .06);
	box-shadow: 0 6px 24px rgba(0, 0, 0, .045);
}
body.admin-bar .elementor-location-header { top: 32px; }
@media (max-width: 782px) { body.admin-bar .elementor-location-header { top: 0; } }

/* Diamond dividers between home sections: Divider widget with CSS class aidar-diamond aidar-diamond--<colour>.
   Two 1px lines fading in and out of the brand colour, an 8px diamond between them (as on the original). */
.aidar-diamond .elementor-divider { display: flex; justify-content: center; padding: 0 !important; }
.aidar-diamond .elementor-divider-separator {
	position: relative; width: 264px !important; height: 1px; border: 0 !important;
	background: linear-gradient(90deg, transparent 0, var(--aidar-line) 21.2%, transparent 42.4%, transparent 57.6%, var(--aidar-line) 78.8%, transparent 100%);
}
.aidar-diamond .elementor-divider-separator::after {
	content: ""; position: absolute; left: 50%; top: 50%; width: 8px; height: 8px;
	transform: translate(-50%, -50%) rotate(45deg); background: var(--aidar-dot);
}
@media (max-width: 767px) { .aidar-diamond .elementor-divider-separator { width: 192px !important; } }
.aidar-diamond--green { --aidar-dot: #198754; --aidar-line: rgba(25, 135, 84, .333); }
.aidar-diamond--gold { --aidar-dot: #b8870b; --aidar-line: rgba(184, 135, 11, .333); }
.aidar-diamond--red { --aidar-dot: #c1121f; --aidar-line: rgba(193, 18, 31, .333); }
.aidar-diamond--blue { --aidar-dot: #2f6fb5; --aidar-line: rgba(47, 111, 181, .333); }

/* Rounded media */
.aidar-rounded img, .aidar-rounded video { border-radius: var(--aidar-radius); }
/* Hover zoom inside the rounded frame (split images on the home page). Elementor renders the image widget without
   an inner container, so the widget element itself is the frame. */
.elementor-widget-image.aidar-zoom { overflow: hidden; border-radius: 32px; border: 1px solid var(--aidar-frame, rgba(43, 39, 34, .06)); background: var(--aidar-frame-bg, #fff); line-height: 0; }
.aidar-zoom.aidar-zoom img { display: block; border-radius: 0; transition: transform .7s ease-out; }
.aidar-zoom.aidar-zoom:hover img { transform: scale(1.03); }
.aidar-frame-green { --aidar-frame: rgba(25, 135, 84, .1); --aidar-frame-bg: #eef6ef; }
.aidar-frame-gold { --aidar-frame: rgba(184, 135, 11, .1); --aidar-frame-bg: #fff9ea; }
.aidar-frame-red { --aidar-frame: rgba(193, 18, 31, .1); --aidar-frame-bg: #fff1f1; }
.aidar-frame-blue { --aidar-frame: rgba(47, 111, 181, .1); --aidar-frame-bg: #eef5fb; }
.aidar-shadow img { box-shadow: var(--aidar-shadow); }

/* Pill badge */
.aidar-pill {
	display: inline-block; padding: 7px 16px; border-radius: 999px; background: rgba(255, 255, 255, .92);
	color: #2b2722; font: 500 14px/1.2 var(--aidar-sans);
}

/* Buttons rendered by Ai Dar widgets (Elementor Button widgets are styled in Elementor) */
.aidar-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 12px 26px;
	border-radius: 999px; font: 600 15px/1.2 var(--aidar-sans); cursor: pointer; transition: transform .2s, box-shadow .2s, background-color .2s, color .2s;
}
.aidar-btn--gradient { border: 0; color: #fff; background: var(--aidar-gradient); box-shadow: 0 10px 26px rgba(43, 39, 34, .12); }
.aidar-btn--gradient:hover, .aidar-btn--gradient:focus-visible { transform: translateY(-2px); box-shadow: 0 14px 30px rgba(43, 39, 34, .18); color: #fff; }
.aidar-btn--gradient:active { transform: translateY(0); }
.aidar-btn--outline { border: 1px solid var(--aidar-green-small); color: var(--aidar-green-small); background: transparent; }
.aidar-btn--outline:hover, .aidar-btn--outline:focus-visible { background: var(--aidar-green-small); color: #fff; }
.aidar-btn--outline:active { transform: scale(.98); }
.aidar-btn:focus-visible, .aidar-amount:focus-visible, .aidar-card a:focus-visible { outline: 3px solid #2f6fb5; outline-offset: 3px; }

/* Cards (Loop Item "Card – …"): section aidar-card holding the inner sections aidar-card__media and aidar-card__body */
/* Inside a Loop Item, Elementor's heading defaults (kit colour and font) give way to the card's own type. */
.aidar-card .elementor-heading-title, .aidar-hero-card .aidar-pill .elementor-heading-title,
.aidar-hero-card__meta .elementor-heading-title { margin: 0; color: inherit; font: inherit; }
.elementor-section.aidar-card {
	overflow: hidden; background: var(--aidar-card); border: 1px solid rgba(193, 18, 31, .1); border-radius: 34px;
	transition: transform .5s, box-shadow .5s, border-color .5s;
}
.elementor-section.aidar-card:hover { transform: translateY(-8px); border-color: rgba(193, 18, 31, .2); box-shadow: 0 28px 60px rgba(0, 0, 0, .08); }
.elementor-section.aidar-card.aidar-accent-green { border-color: rgba(25, 135, 84, .1); }
/* The card is a column of media + body; the body grows so the links line up at the bottom of a row. */
.aidar-card > .elementor-container, .aidar-card > .elementor-container > .elementor-column { height: 100%; }
.aidar-card > .elementor-container > .elementor-column > .elementor-widget-wrap,
.aidar-card__body .elementor-widget-wrap { flex-direction: column; flex-wrap: nowrap; align-items: stretch; }
.aidar-card__body.elementor-section, .aidar-card__body > .elementor-container,
.aidar-card__body .elementor-column, .aidar-card__body .elementor-widget-wrap { flex: 1 1 auto; }
.aidar-card__media.elementor-section { position: relative; flex: none; height: 320px; overflow: hidden; background: var(--aidar-surface); }
.aidar-card__media::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(to top, rgba(0, 0, 0, .4), rgba(0, 0, 0, .1) 50%, transparent); }
.aidar-card__media > .elementor-container, .aidar-card__media .elementor-column, .aidar-card__media .elementor-widget-wrap { height: 100%; }
.aidar-card .aidar-card__img, .aidar-card .aidar-card__img a, .aidar-card .aidar-card__img .elementor-widget-container { display: block; width: 100%; height: 100%; }
.aidar-card .aidar-card__img img { width: 100%; height: 100%; max-width: none; object-fit: cover; border-radius: 0; transition: transform .7s; }
.aidar-card:hover .aidar-card__img img { transform: scale(1.05); }
.aidar-card .elementor-widget.aidar-card__badge { position: absolute; z-index: 1; left: 24px; bottom: 24px; width: auto; padding: 8px 16px; -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.aidar-loop--nobadge .aidar-card__badge { display: none; }
@media (max-width: 680px) { .aidar-card__media.elementor-section { height: 240px; } }
/* Meta parts (place • date): inline heading widgets carrying the class. */
.elementor-widget.aidar-card__meta, .elementor-widget.aidar-meta { margin: 0 0 20px; color: var(--aidar-red-small); font: 500 14px/1.4 var(--aidar-sans); }
/* Keep the spaces around "•" (only the text: the widget markup itself is full of whitespace). */
:is(.aidar-card__meta, .aidar-meta, .aidar-hero-card__meta) .elementor-heading-title { white-space: pre; }
.aidar-card__body .elementor-widget.aidar-card__meta { align-self: flex-start; }
.aidar-card__body .elementor-widget-wrap:has(> .aidar-card__meta) { flex-direction: row; flex-wrap: wrap; align-content: flex-start; }
.aidar-card__body .elementor-widget-wrap:has(> .aidar-card__meta) > :not(.aidar-card__meta) { width: 100%; }
.aidar-card.aidar-accent-green .aidar-card__meta, .aidar-card.aidar-accent-green .aidar-card__link { color: var(--aidar-green-small); }
.aidar-card .aidar-card__title { margin: 0 0 20px !important; font: 400 clamp(24px, 2.4vw, 30px)/1.25 var(--aidar-serif); color: var(--aidar-heading); }
.aidar-card a { color: inherit; text-decoration: none; }
.aidar-card .elementor-widget.aidar-card__excerpt {
	flex: 1 1 auto; margin: 0 0 32px; color: var(--aidar-muted); font: 400 16px/2 var(--aidar-sans);
}
/* Three lines at most (the widget holds the text directly: no inner wrapper in Elementor's optimized markup). */
.aidar-card .elementor-widget.aidar-card__excerpt { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; align-self: stretch; }
.aidar-card .aidar-card__excerpt * { margin: 0; color: inherit; font: inherit; }
.aidar-card .aidar-card__link { color: var(--aidar-red-small); font: 600 16px/1.4 var(--aidar-sans); transition: transform .3s; }
.aidar-card:hover .aidar-card__link { transform: translateX(4px); }
.aidar-loop .e-loop-nothing-found-message__text { margin: 0; padding: 32px; border-radius: var(--aidar-radius); background: var(--aidar-card); text-align: center; color: var(--aidar-text); }
.aidar-loop .elementor-pagination { margin-top: 40px; font: 500 15px var(--aidar-sans); }
.aidar-loop .elementor-pagination a { color: var(--aidar-blue-small); }

/* Single project / event (Theme Builder → Single: "Pagină proiect" / "Pagină eveniment") */
.aidar-hero-card .elementor-widget.aidar-pill { width: auto; }
.elementor-widget.aidar-hero-card__meta { color: #fff; font: 600 14px/1.4 var(--aidar-sans); }
.aidar-lead { font-size: 17px; line-height: 1.75; color: var(--aidar-text); }
.aidar-lead * { margin: 0; }
/* Story beside the sidebar column; the sidebar card follows the reader on desktop. */
.aidar-story-panel { min-width: 0; }
@media (min-width: 1025px) { .aidar-sidebar > .elementor-widget-wrap { position: sticky; top: 130px; align-self: flex-start; } }
.aidar-story > :first-child, .aidar-story .elementor-widget-container > :first-child { margin-top: 0; }
.aidar-story img { border-radius: 20px; }

/* Online donation */
.aidar-donate, .aidar-bank { width: 100%; text-align: center; }
.aidar-donate__title, .aidar-bank__title { margin: 0 0 10px; font: 400 clamp(28px, 2.6vw, 34px)/1.25 var(--aidar-serif); color: var(--aidar-heading); }
.aidar-donate__text, .aidar-bank__text { margin: 0 auto 26px; max-width: 380px; color: var(--aidar-text); line-height: 1.7; font-size: 15px; }
/* VSO Donații form ([vso_donatie]) in the site palette. Contrast on #fff: primary 7.8:1, text 11.2:1, muted 7.0:1;
   primary on the soft fill 7.1:1. */
.elementor-widget-html .aidar-donate__title, .elementor-widget-html .aidar-donate__text { text-align: center; }
.elementor-widget-shortcode .vso-don {
	--vd-primary: var(--aidar-green-small); --vd-primary-dark: #0c472c; --vd-accent: #d9a520;
	--vd-text: #403a34; --vd-muted: var(--aidar-muted); --vd-line: #d8e6dc; --vd-soft: #eef6ef;
	margin: 0 auto; text-align: left; font-family: var(--aidar-sans);
}
.elementor-widget-shortcode .vso-don__field input:focus, .elementor-widget-shortcode .vso-don__field select:focus { outline-color: rgba(17, 94, 59, .25); }
.aidar-donate__amounts { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.aidar-amount {
	display: inline-flex; align-items: baseline; gap: 5px; min-height: 46px; padding: 10px 20px; border-radius: 999px;
	border: 1px solid rgba(43, 39, 34, .08); background: #fff; color: var(--aidar-heading); cursor: pointer;
	box-shadow: 0 6px 18px rgba(43, 39, 34, .07); transition: border-color .2s, background-color .2s, color .2s, transform .2s;
}
.aidar-amount:hover { border-color: var(--aidar-green-small); transform: translateY(-2px); }
.aidar-amount:active { transform: translateY(0); }
.aidar-amount.is-active { border-color: var(--aidar-green-small); background: var(--aidar-green-small); color: #fff; }
.aidar-amount__value, .aidar-amount__currency { font: 600 15px/1.2 var(--aidar-sans); letter-spacing: 0; }
.aidar-donate__or { display: flex; align-items: center; gap: 14px; margin: 22px 0; color: var(--aidar-text); font-size: 12px; letter-spacing: .18em; text-transform: uppercase; }
.aidar-donate__or::before, .aidar-donate__or::after { content: ""; flex: 1; height: 1px; background: rgba(43, 39, 34, .14); }
.aidar-donate__custom {
	width: 100%; min-height: 54px; padding: 12px 20px; border-radius: 18px; border: 1px solid rgba(43, 39, 34, .12);
	background: #fff; color: var(--aidar-heading); font: 500 16px var(--aidar-sans); text-align: left;
}
.aidar-donate__custom:focus { outline: 3px solid #2f6fb5; outline-offset: 1px; }
.aidar-donate__pay { width: 100%; margin-top: 20px; min-height: 56px; font-size: 16px; }
.aidar-donate__note { display: flex; align-items: center; justify-content: center; gap: 6px; margin: 16px 0 0; font-size: 14px; color: var(--aidar-text); }

/* Bank transfer */
.aidar-bank .aidar-bank__logo { display: block; height: 44px; width: auto; max-width: 100%; margin: 0 auto 26px; }
.aidar-bank__rows { margin: 0 0 26px; text-align: left; }
.aidar-bank__row { padding: 9px 0; }
.aidar-bank__row dt { color: var(--aidar-text); font-size: 11px; font-weight: 500; letter-spacing: .16em; text-transform: uppercase; }
.aidar-bank__row dd { margin: 2px 0 0; color: var(--aidar-heading); font-size: 16px; font-weight: 600; overflow-wrap: anywhere; }
.aidar-bank .aidar-bank__copy { width: 100%; justify-content: center; }
.aidar-bank__copy.is-copied { background: var(--aidar-green-small); color: #fff; }


/* Forms (Elementor Pro Form, class aidar-form): the placeholder is the visible label, as on the original design;
   labels stay in the markup for screen readers ("Show Label" off). */
.aidar-form .elementor-field-textual { min-height: 54px; padding: 14px 20px; }
.aidar-form textarea.elementor-field-textual { min-height: 150px; }
.aidar-form .elementor-field-textual:focus { outline: 3px solid #2f6fb5; outline-offset: 1px; }
.aidar-form .elementor-field-textual::placeholder { color: #57504a; opacity: 1; }
.aidar-form.aidar-form .elementor-button[type="submit"] {
	min-height: 56px; background: linear-gradient(90deg, #24548a, #2f6fb5); cursor: pointer;
	box-shadow: 0 12px 28px rgba(47, 111, 181, .25); transition: box-shadow .2s, transform .2s;
}
.aidar-form.aidar-form .elementor-button[type="submit"]:hover, .aidar-form.aidar-form .elementor-button[type="submit"]:focus-visible { box-shadow: 0 14px 30px rgba(43, 39, 34, .18); transform: translateY(-1px); }
.aidar-form .elementor-message { font: 500 15px/1.5 var(--aidar-sans); }

/* Header: columns brand | menu | Donează. The brand keeps its size, the menu stays on one row. */
.aidar-brand .elementor-widget-image, .aidar-brand .elementor-widget-heading,
.elementor-widget-image.aidar-brand, .elementor-widget-heading.aidar-brand { width: auto !important; max-width: none; }
.aidar-brand .elementor-widget-image img, .elementor-widget-image.aidar-brand img { width: auto; height: 96px; max-width: none; }
.aidar-brand .elementor-heading-title { white-space: nowrap; }
.aidar-brand > .elementor-widget-wrap { flex-wrap: nowrap; align-items: center; }
@media (min-width: 1025px) {
	.aidar-nav .elementor-nav-menu--main > .elementor-nav-menu { flex-wrap: nowrap; }
	.aidar-nav .elementor-nav-menu--main .elementor-item { white-space: nowrap; }
}
/* 1025-1279 px: the fixed column widths let the one-row menu run under Donează (99 px at 1025). The columns size to
   content, the menu takes the rest, item padding (an Elementor per-element rule, hence !important) tightens. */
@media (min-width: 1025px) and (max-width: 1279px) {
	.aidar-header > .elementor-container > .elementor-column { width: auto !important; flex: 0 0 auto; }
	.aidar-header > .elementor-container > .elementor-column:has(.aidar-nav) { flex: 1 1 auto; min-width: 0; }
	.aidar-nav.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item { padding-left: 8px !important; padding-right: 8px !important; }
}
@media (min-width: 1025px) and (max-width: 1139px) {
	.aidar-nav.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item { padding-left: 6px !important; padding-right: 6px !important; font-size: 13px !important; }
	header .aidar-brand .elementor-widget-image img { height: 84px; }
	header .aidar-brand .aidar-logo-text .elementor-heading-title { font-size: 30px !important; }
}
@media (max-width: 1024px) { .aidar-brand .elementor-widget-image img, .elementor-widget-image.aidar-brand img { height: 64px; } }

/* Header below desktop: logo, Donează and the menu toggle on one row; the menu opens full width under it. */
@media (max-width: 1024px) {
	.aidar-header > .elementor-container { flex-wrap: nowrap; gap: 10px; }
	.aidar-header > .elementor-container > .elementor-column { width: auto !important; }
	.aidar-header > .elementor-container > .elementor-column.aidar-brand { flex: 0 1 auto; min-width: 0; }
	.aidar-header > .elementor-container > .elementor-column:has(.aidar-nav) { order: 3; flex: 0 0 auto; position: static; }
	.aidar-header > .elementor-container > .elementor-column:has(.elementor-widget-button) { order: 2; margin-left: auto; flex: 0 0 auto; }
	.aidar-nav .elementor-nav-menu--dropdown.elementor-nav-menu__container {
		background: rgba(247, 243, 236, .98); border-top: 1px solid rgba(0, 0, 0, .06); box-shadow: 0 18px 40px rgba(0, 0, 0, .08);
	}
	.aidar-nav .elementor-nav-menu--dropdown a { padding: 14px 24px; }
	.aidar-nav .elementor-nav-menu--dropdown .current-menu-item > a { color: var(--mi-text) !important; background: rgba(var(--mi-rgb), .08) !important; }
}
@media (max-width: 400px) {
	.aidar-header .aidar-brand img { max-width: 52px; }
	.aidar-header .elementor-widget-button .elementor-button { padding: 10px 16px; }
}

/* ---- Home hero (video): light veil as on the original, no dark overlay ---- */
.elementor-section.aidar-hero { position: relative; overflow: hidden; }
.elementor-section.aidar-hero::after {
	content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none;
	background:
		linear-gradient(180deg, rgba(247, 243, 236, .52) 0, rgba(247, 243, 236, .13) 69px, rgba(247, 243, 236, 0) 144px),
		radial-gradient(380px 210px at 50% 50%, rgba(0, 0, 0, .064), rgba(0, 0, 0, 0) 70%),
		linear-gradient(180deg, rgba(18, 16, 13, .16) 0%, rgba(18, 16, 13, .04) 38%, rgba(18, 16, 13, .18) 100%),
		radial-gradient(ellipse 65% 55% at 50% 48%, rgba(0, 0, 0, .03) 0%, rgba(0, 0, 0, .16) 100%);
}
.aidar-hero > .elementor-container { position: relative; z-index: 2; }
.aidar-hero .aidar-hero__title { transform: translateY(-40px); }
.aidar-hero .aidar-hero__title .elementor-heading-title { font-weight: 500; letter-spacing: -.025em; text-shadow: 0 2px 5px rgba(0, 0, 0, .2), 0 5px 20px rgba(0, 0, 0, .16); }
.aidar-hero .aidar-hero__sub { margin-top: -4px; text-shadow: 0 2px 9px rgba(0, 0, 0, .28); }
.aidar-hero .aidar-hero__sub p { margin: 0; }
.aidar-hero .aidar-glass { margin-top: 32px; }
@media (max-width: 767px) { .aidar-hero .aidar-hero__title { transform: translateY(-32px); } }

/* Frosted button on video */
.aidar-glass .elementor-button { -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); transition: all .3s; }
.aidar-glass .elementor-button:hover, .aidar-glass .elementor-button:focus-visible { transform: translateY(-2px); }
.aidar-glass .elementor-button-icon { transition: transform .3s; }
.aidar-glass .elementor-button:hover .elementor-button-icon { transform: translateY(4px); }
.aidar-glass .elementor-button:focus-visible { outline: 3px solid #f1e6c8; outline-offset: 3px; }

/* Outline buttons: fill, lift and grow on hover (as on the original) */
.aidar-btn-pop .elementor-button { transition: all .3s; }
.aidar-btn-pop .elementor-button:hover, .aidar-btn-pop .elementor-button:focus-visible {
	transform: translateY(-2px) scale(1.05); box-shadow: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);
}
.aidar-btn-pop .elementor-button:active { transform: scale(.98); }

/* Header Donează: frosted brand gradient with a soft pulse */
.aidar-frost.aidar-frost .elementor-button {
	border: 1px solid rgba(255, 255, 255, .28); color: #fff; font-size: 15px; letter-spacing: .02em;
	background: linear-gradient(90deg, rgba(47, 111, 181, .42) 0%, rgba(25, 135, 84, .4) 35%, rgba(217, 165, 32, .42) 70%, rgba(193, 18, 31, .4) 100%);
	-webkit-backdrop-filter: blur(16px); backdrop-filter: blur(16px);
	box-shadow: 0 12px 30px rgba(0, 0, 0, .28), inset 0 1px 0 rgba(255, 255, 255, .16);
	text-shadow: 0 1px 2px rgba(0, 0, 0, .55), 0 1px 6px rgba(0, 0, 0, .35);
	animation: aidar-pulse 1.5s ease-in-out infinite; transition: transform .3s;
}
.aidar-frost.aidar-frost .elementor-button:hover, .aidar-frost.aidar-frost .elementor-button:focus-visible { animation-play-state: paused; transform: translateY(-1px) scale(1.03); color: #fff; }
.aidar-frost .elementor-button:focus-visible { outline: 3px solid #2f6fb5; outline-offset: 3px; }
@keyframes aidar-pulse {
	0% { transform: scale(1); box-shadow: 0 8px 22px rgba(47, 111, 78, .3), 0 0 0 0 rgba(212, 175, 55, .55); }
	50% { transform: scale(1.045); box-shadow: 0 14px 36px rgba(47, 111, 78, .42), 0 0 0 14px rgba(212, 175, 55, 0); }
	100% { transform: scale(1); box-shadow: 0 8px 22px rgba(47, 111, 78, .3), 0 0 0 0 rgba(212, 175, 55, 0); }
}

/* Header brand: large logo, wordmark tucked into it */
header .aidar-brand .elementor-widget-image { margin: -12px 0; }
header .aidar-brand .elementor-widget-image img { height: 120px; transform: translateY(-4px); }
@media (max-width: 1024px) { header .aidar-brand .elementor-widget-image { margin: 0; } header .aidar-brand .elementor-widget-image img { height: 64px; transform: none; } }

/* Main menu: pill links; the current page sits in a bubble tinted with its colour (menu item class aidar-mi--<colour>) */
.aidar-mi { --mi: #2f6fb5; --mi-text: #24548a; --mi-rgb: 47, 111, 181; }
.aidar-mi--green { --mi: #198754; --mi-text: #115e3b; --mi-rgb: 25, 135, 84; }
.aidar-mi--gold { --mi: #d9a520; --mi-text: #694d06; --mi-rgb: 217, 165, 32; }
.aidar-mi--red { --mi: #c1121f; --mi-text: #a60f1b; --mi-rgb: 193, 18, 31; }
@media (min-width: 1025px) {
	.aidar-nav .elementor-nav-menu--main > ul > .aidar-mi > a.elementor-item {
		border: 1px solid transparent; border-radius: 999px; letter-spacing: .01em; transition: color .3s, transform .3s, background .3s, box-shadow .3s;
	}
	.aidar-nav .elementor-nav-menu--main > ul > .aidar-mi:hover > a.elementor-item { color: var(--mi-text); transform: translateY(-1px); }
	.aidar-nav .elementor-nav-menu--main > ul > .aidar-mi.current-menu-item > a.elementor-item,
	.aidar-nav .elementor-nav-menu--main > ul > .aidar-mi.current-menu-ancestor > a.elementor-item {
		color: var(--mi-text);
		background: linear-gradient(135deg, rgba(var(--mi-rgb), .1), rgba(var(--mi-rgb), .18));
		border-color: rgba(var(--mi-rgb), .145);
		box-shadow: 0 8px 24px rgba(var(--mi-rgb), .18), inset 0 1px 0 rgba(255, 255, 255, .6);
	}
	.aidar-nav .elementor-nav-menu--main > ul > .aidar-mi--home.current-menu-item > a.elementor-item {
		background: linear-gradient(90deg, rgba(47, 111, 181, .16), rgba(25, 135, 84, .14), rgba(217, 165, 32, .16), rgba(193, 18, 31, .14));
		box-shadow: 0 8px 24px rgba(47, 111, 181, .2), inset 0 1px 0 rgba(255, 255, 255, .6);
	}
	.aidar-nav .elementor-nav-menu--main > ul > .aidar-mi .sub-arrow > * { transition: transform .3s; }
	.aidar-nav .elementor-nav-menu--main > ul > .aidar-mi:hover .sub-arrow > * { transform: rotate(180deg); }
	/* Dropdown: frosted rounded panel, items with a sliding arrow in the parent's colour */
	.aidar-nav .elementor-nav-menu--main .aidar-mi > .sub-menu {
		min-width: 240px; padding: 8px; border: 1px solid rgba(var(--mi-rgb), .1); border-radius: 20px; overflow: hidden;
		background: rgba(247, 243, 236, .95) !important; -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px);
		box-shadow: 0 18px 45px rgba(0, 0, 0, .1), inset 0 1px 0 rgba(255, 255, 255, .65);
	}
	.aidar-nav .elementor-nav-menu--main .sub-menu .aidar-mi > a.elementor-sub-item {
		display: flex; justify-content: space-between; align-items: center; padding: 12px 16px; border-radius: 14px;
		font-weight: 400; transition: background-color .2s;
	}
	.aidar-nav .elementor-nav-menu--main .sub-menu .aidar-mi > a.elementor-sub-item::after {
		content: "\2192"; margin-left: 12px; color: var(--mi-text); opacity: 0; transform: translateX(-4px); transition: opacity .2s, transform .2s;
	}
	.aidar-nav .elementor-nav-menu--main .sub-menu .aidar-mi > a.elementor-sub-item:hover { background: rgba(var(--mi-rgb), .07) !important; color: var(--mi-text); }
	.aidar-nav .elementor-nav-menu--main .sub-menu .aidar-mi > a.elementor-sub-item:hover::after { opacity: 1; transform: none; }
}

/* ---- Impact cards under the hero ---- */
.aidar-impact { --c: #198754; --c-text: #187f4f; --tint: #eef6ef; --c-rgb: 25, 135, 84; transition: background-color .3s ease-out; }
.aidar-impact--gold { --c: #c49a2c; --c-text: #846719; --tint: #fff9ea; --c-rgb: 196, 154, 44; }
.aidar-impact--red { --c: #c1121f; --c-text: #c1121f; --tint: #fff1f1; --c-rgb: 193, 18, 31; }
.aidar-impact--blue { --c: #2f6fb5; --c-text: #2f6fb5; --tint: #eef5fb; --c-rgb: 47, 111, 181; }
.aidar-impact:hover, .aidar-impact:focus-within { background-color: var(--tint); }
.aidar-impact .elementor-icon-box-icon { margin-bottom: 20px !important; line-height: 0; display: flex; justify-content: center; }
.aidar-impact .elementor-icon-box-title { margin: 0 0 12px; }
.aidar-impact .elementor-icon-box-description { margin: 0; }
.aidar-impact.aidar-impact .elementor-icon {
	width: 80px; height: 80px; display: inline-flex; align-items: center; justify-content: center; padding: 0 !important;
	background: rgba(var(--c-rgb), .04) !important; color: rgba(64, 58, 52, .2) !important; transition: all .3s ease-out;
}
.aidar-impact.aidar-impact .elementor-icon svg { width: 44px; height: 44px; fill: none !important; stroke: currentColor; }
.aidar-impact--blue.aidar-impact .elementor-icon svg { width: 48px; height: 48px; }
.aidar-impact.aidar-impact:hover .elementor-icon, .aidar-impact.aidar-impact:focus-within .elementor-icon {
	background: rgba(var(--c-rgb), .1) !important; color: var(--c) !important; transform: translateY(-4px) scale(1.05);
}
.aidar-impact .elementor-icon-box-title, .aidar-impact .elementor-icon-box-title a { transition: color .3s; }
.aidar-impact:hover .elementor-icon-box-title, .aidar-impact:hover .elementor-icon-box-title a { color: var(--c-text) !important; }
.aidar-impact .elementor-icon-box-description { max-width: 235px; margin: 0 auto; }
.aidar-impact .aidar-impact__link { opacity: 0; transform: translateY(8px); transition: all .3s; }
.aidar-impact:hover .aidar-impact__link, .aidar-impact:focus-within .aidar-impact__link { opacity: 1; transform: none; }
@media (hover: none) { .aidar-impact .aidar-impact__link { opacity: 1; transform: none; } }

/* ---- Closing pane on the home page ---- */
.aidar-cta > .elementor-widget-wrap {
	position: relative; overflow: hidden;
	background:
		radial-gradient(circle at 15% 20%, rgba(47, 111, 181, .12), transparent 30%),
		radial-gradient(circle at 85% 20%, rgba(25, 135, 84, .1), transparent 28%),
		radial-gradient(circle at 50% 100%, rgba(193, 18, 31, .07), transparent 35%),
		#f9f5ee !important;
}
.aidar-cta > .elementor-widget-wrap::before, .aidar-cta > .elementor-widget-wrap::after { content: "" !important; position: absolute; border-radius: 50%; pointer-events: none; z-index: 0; opacity: 1 !important; background: none !important; }
.aidar-cta > .elementor-widget-wrap::before { width: 192px; height: 192px; top: -64px; right: -64px; left: auto; bottom: auto; border: 1px solid rgba(196, 154, 44, .15); }
.aidar-cta > .elementor-widget-wrap::after { width: 208px; height: 208px; bottom: -80px; left: -80px; border: 1px solid rgba(47, 111, 181, .1); }
.aidar-cta > .elementor-widget-wrap > * { position: relative; z-index: 1; }

/* Hand-edited cards (Ateliere): the photo runs to the rounded edge */
.aidar-static-card > .elementor-widget-wrap { overflow: hidden; }
.aidar-cta .aidar-accent-gold { color: #846719; }

/* ---- Reveal on scroll (aidar.js adds .is-in; html.aidar-rv-on is set in <head> only when motion is allowed) ---- */
html.aidar-rv-on body:not(.elementor-editor-active) .aidar-rv {
	opacity: 0; transition: opacity 1s ease-out, transform 1s cubic-bezier(.22, .61, .36, 1); transition-delay: var(--rv-delay, 0s);
}
html.aidar-rv-on body:not(.elementor-editor-active) .aidar-rv--up { transform: translateY(24px); }
html.aidar-rv-on body:not(.elementor-editor-active) .aidar-rv--left { transform: translateX(-28px); }
html.aidar-rv-on body:not(.elementor-editor-active) .aidar-rv--right { transform: translateX(28px); }
html.aidar-rv-on body:not(.elementor-editor-active) .aidar-rv--zoom { transform: scale(.97); }
html.aidar-rv-on body:not(.elementor-editor-active) .aidar-rv.is-in { opacity: 1; transform: none; }
html.aidar-rv-on body:not(.elementor-editor-active) .aidar-hero .aidar-hero__title.aidar-rv.is-in { transform: translateY(-40px); }
@media (max-width: 767px) { html.aidar-rv-on body:not(.elementor-editor-active) .aidar-hero .aidar-hero__title.aidar-rv.is-in { transform: translateY(-32px); } }
@media (prefers-reduced-motion: reduce) {
	.aidar-frost.aidar-frost .elementor-button { animation: none; }
	.aidar-zoom.aidar-zoom:hover img, .aidar-card:hover .aidar-card__img { transform: none; }
}
