/* ============================================================================
   NIMR CONTENT PAGES  —  site-wide visual polish for Elementor-built
   content pages (About / History / Regulations / etc).
   Purely presentational: typography, spacing, colour, list & image treatment.
   No page's text, order, structure, or widget data is altered.
   ========================================================================== */

/* ---- Section rhythm: let content breathe ---------------------------------- */
.elementor-widget-heading { margin-top: var(--space-s); }
.elementor-widget-text-editor { margin-bottom: var(--space-s); }

/* ---- Headings: brand colour + a clean full-width section rule ------------- */
/* A bottom border (not a left-anchored pseudo-underline) so it reads correctly
   whether the heading is left-aligned or centred. */
.elementor-widget-heading .elementor-heading-title {
	font-family: var(--font-display);
	color: var(--nimr-700);
	font-weight: 700;
	letter-spacing: 0.005em;
	line-height: 1.25;
	padding-bottom: 0.35em;
	margin-bottom: 0.6em;
	border-bottom: 2px solid var(--nimr-100);
}
.elementor-widget-heading h1.elementor-heading-title,
.elementor-widget-heading h2.elementor-heading-title { font-size: clamp(1.45rem, 1.15rem + 1.3vw, 2.05rem); }
.elementor-widget-heading h3.elementor-heading-title { font-size: clamp(1.2rem, 1.05rem + 0.6vw, 1.5rem); }
.elementor-widget-heading h4.elementor-heading-title { font-size: clamp(1.05rem, 0.98rem + 0.4vw, 1.25rem); }

/* ---- Body copy: comfortable, readable, professional ---------------------- */
.elementor-widget-text-editor .elementor-widget-container {
	font-family: var(--font-body);
	color: var(--color-text);
	font-size: 1.05rem;
	line-height: 1.8;
	max-width: 72ch; /* comfortable measure even inside full-width columns */
}
.elementor-widget-text-editor p { margin: 0 0 1.15em; }
.elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.elementor-widget-text-editor strong { color: var(--color-heading); }
.elementor-widget-text-editor a {
	color: var(--nimr-700); font-weight: 600;
	text-decoration: underline; text-decoration-color: var(--nimr-300); text-underline-offset: 2px;
}
.elementor-widget-text-editor a:hover { color: var(--nimr-800); text-decoration-color: var(--nimr-600); }

/* Lists inside body copy */
.elementor-widget-text-editor ul,
.elementor-widget-text-editor ol { margin: 0 0 1.15em; padding-left: 1.4em; }
.elementor-widget-text-editor li { margin-bottom: 0.45em; }
.elementor-widget-text-editor ul { list-style: none; padding-left: 0; }
.elementor-widget-text-editor ul > li { position: relative; padding-left: 1.5em; }
.elementor-widget-text-editor ul > li::before {
	content: ""; position: absolute; left: 0; top: 0.62em;
	width: 7px; height: 7px; border-radius: 50%; background: var(--nimr-500);
}

/* Tables */
.elementor-widget-text-editor table { width: 100%; border-collapse: collapse; margin: 0 0 1.15em; max-width: none; }
.elementor-widget-text-editor table th,
.elementor-widget-text-editor table td { padding: 0.65em 0.85em; border: 1px solid var(--border-subtle); text-align: left; vertical-align: top; }
.elementor-widget-text-editor table th { background: var(--surface-subtle); font-weight: 700; color: var(--color-heading); }
.elementor-widget-text-editor table tr:nth-child(even) td { background: var(--nimr-100); }

/* ---- Images: consistent, softly framed ----------------------------------- */
.elementor-widget-image img {
	border-radius: var(--radius-md);
	box-shadow: var(--shadow-sm);
}

/* ---- Document / link lists → tidy download rows -------------------------- */
/* Turns Elementor's plain icon-list of PDF links into bordered, tappable rows
   with a badge on the left and a download affordance on the right. */
.elementor-widget-icon-list .elementor-icon-list-items { display: flex; flex-direction: column; gap: 0.5rem; }
.elementor-widget-icon-list .elementor-icon-list-item { margin: 0 !important; }
.elementor-widget-icon-list .elementor-icon-list-item > a {
	display: flex; align-items: center; gap: 0.85rem;
	padding: 0.85rem 1rem;
	background: #fff;
	border: 1px solid var(--border-subtle);
	border-left: 3px solid var(--nimr-500);
	border-radius: var(--radius-md);
	transition: border-color var(--dur) var(--ease-out), transform var(--dur) var(--ease-out), box-shadow var(--dur) var(--ease-out), background-color var(--dur) var(--ease-out);
}
.elementor-widget-icon-list .elementor-icon-list-item > a:hover {
	transform: translateX(3px);
	box-shadow: var(--shadow-sm);
	background: var(--nimr-100);
	border-left-color: var(--nimr-700);
}
.elementor-widget-icon-list .elementor-icon-list-icon {
	flex: none; display: grid; place-items: center; width: 2rem; height: 2rem;
	border-radius: 50%; background: var(--nimr-100); color: var(--nimr-700);
}
.elementor-widget-icon-list .elementor-icon-list-icon svg { width: 0.8em; height: 0.8em; fill: currentColor; }
.elementor-widget-icon-list .elementor-icon-list-text {
	color: var(--color-heading); font-weight: 600; line-height: 1.35;
}
/* Download affordance pinned to the right of each row */
.elementor-widget-icon-list .elementor-icon-list-item > a::after {
	content: "\2913"; /* ⤓ download glyph */
	margin-left: auto; flex: none;
	color: var(--nimr-600); font-size: 1.1rem;
	opacity: 0.55; transition: opacity var(--dur) var(--ease-out);
}
.elementor-widget-icon-list .elementor-icon-list-item > a:hover::after { opacity: 1; }
