/* Page primitives shared by every inner page: PageHero, Eyebrow, Tag, CTABand, Pagination, notes (COMPONENTS 12-17). */

.sheet {
	position: relative;
	background: var(--bg);
	color: var(--fg);
}

.sheet::before {
	content: "";
	position: absolute;
	inset: 0 var(--rail);
	border-inline: var(--hairline) solid var(--ln);
	pointer-events: none;
}

.eyebrow {
	display: flex;
	align-items: center;
	gap: 14px;
	color: var(--fg2);
}

.eyebrow::before {
	content: "";
	width: 42px;
	height: var(--hairline);
	background: var(--hi);
}

.eyebrow b {
	color: var(--hi);
	font-weight: 500;
}

.d2 {
	font-size: var(--fs-d2);
	line-height: 0.98;
	font-weight: 300;
	letter-spacing: -0.035em;
}

.d2 strong {
	font-weight: 800;
}

.lead {
	max-width: 56ch;
	color: var(--fg2);
	font-size: var(--fs-lead);
}

.cta-row {
	display: flex;
	gap: 14px;
	flex-wrap: wrap;
}

/* PageHero, compact */
.ph {
	position: relative;
	min-height: 50svh;
	display: flex;
	align-items: flex-end;
	overflow: clip;
	padding-block: calc(var(--hdr-h) + var(--sp-32)) var(--sp-48);
	background:
		radial-gradient(60% 55% at 80% 6%, color-mix(in srgb, var(--blue-500) 30%, transparent), transparent 70%),
		radial-gradient(40% 40% at 4% 100%, color-mix(in srgb, var(--gold-500) 14%, transparent), transparent 70%),
		var(--ink-950);
	color: var(--white);
}

.ph::before {
	content: "";
	position: absolute;
	inset: 0 var(--rail);
	border-inline: var(--hairline) solid var(--ln);
	pointer-events: none;
}

.ph .wrap {
	z-index: 1;
	width: min(100% - 2 * var(--margin), var(--container));
}

.ph-in {
	display: grid;
	gap: 26px;
	justify-items: start;
}

.ph .d2 {
	font-size: clamp(40px, 6.4vw, 104px);
	margin-block-start: 14px;
}

.ph .lead {
	color: var(--gray-100);
}

.ph .eyebrow {
	color: var(--gray-100);
}

.ph-tags {
	display: flex;
	gap: 8px;
	flex-wrap: wrap;
}

/* Tag */
.tag {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 3px 10px;
	border: var(--hairline) solid var(--gold-500);
	color: var(--gold-300);
	font-family: var(--font-mono);
	font-size: var(--fs-label);
	font-weight: 500;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	white-space: nowrap;
}

:lang(ar) .tag {
	font-family: var(--font-ar);
	letter-spacing: 0;
	text-transform: none;
	font-size: var(--fs-s-ar);
}

.tag-own {
	border-color: var(--blue-300);
	color: var(--blue-300);
}

/* a note with a gold diamond bullet */
.fnote {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	max-width: 70ch;
	margin-block-start: var(--sp-24);
	color: var(--fg2);
}

.fnote::before {
	content: "";
	flex: none;
	width: 8px;
	height: 8px;
	margin-block-start: 8px;
	background: var(--hi);
	transform: rotate(45deg);
}

/* CTABand: closing call to action, one primary */
.band {
	--pa: var(--gold-500);
	position: relative;
	overflow: clip;
	padding-block: calc(var(--sec) - 20px);
	text-align: center;
	color: var(--white);
	background:
		radial-gradient(60% 70% at 50% 100%, color-mix(in srgb, var(--pa) 34%, transparent), transparent 70%),
		var(--ink-950);
}

.band .d2 {
	margin-block: 14px 30px;
}

.band .cta-row,
.band .eyebrow {
	justify-content: center;
}

/* Pagination */
.pag {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: var(--sp-8);
	margin-block-start: var(--sp-48);
}

.pag a,
.pag span {
	display: inline-grid;
	place-items: center;
	min-width: 44px;
	min-height: 44px;
	padding-inline: var(--sp-8);
	border: var(--hairline) solid var(--ln-ctl);
	font-family: var(--font-mono);
	font-size: var(--fs-m);
	transition: border-color var(--d-fast) var(--ease);
}

.pag a:hover {
	border-color: var(--hi);
}

.pag [aria-current="page"] {
	background: var(--hi-wash);
	border-color: var(--acc);
	box-shadow: inset 0 0 0 1px var(--acc);
}

.pag [aria-disabled="true"] {
	color: var(--fg2);
	border-style: dashed;
}

.pag .arr {
	width: 18px;
	height: 18px;
}

.pag .pv .arr {
	transform: scaleX(-1);
}

html[dir="rtl"] .pag .pv .arr {
	transform: none;
}

html[dir="rtl"] .pag .nx .arr {
	transform: scaleX(-1);
}
