/* =========================================================================
   Punjab File — Archive design system (v3.0.2)
   Parchment ground · ink · sepia. Source Serif 4 interface; Anek Gurmukhi
   for Punjabi headlines; Mukta Mahee for Punjabi body copy.
   One stylesheet for the whole site: tokens → base → components → templates
   → responsive.
   ========================================================================= */

/* ---------- 1. Tokens ---------- */
:root {
	--pf-parchment: #f6f1e7;
	--pf-parchment-deep: #ede4d3;
	--pf-ink: #241f18;
	--pf-ink-soft: #4a4237;
	--pf-body: #2e2820;
	--pf-sepia: #7c4a21;
	--pf-sepia-dark: #5e3717;
	--pf-faded: #c9b79a;
	--pf-muted: #6b6252;
	--pf-meta: #8a8070;
	--pf-hair: rgba(46, 36, 20, 0.14);
	--pf-hair-soft: rgba(46, 36, 20, 0.10);
	--pf-hair-mid: rgba(46, 36, 20, 0.20);
	--pf-hair-strong: rgba(46, 36, 20, 0.35);
	--pf-footer-bg: #201c15;
	--pf-footer-text: #cfc4ad;
	--pf-footer-muted: #a99e87;
	--pf-footer-link: #e5dcc8;
	--pf-footer-pa: #b08d5f;
	--pf-footer-kicker: #8a8070;
	--pf-header-bg: #faf6ed;
	--pf-font-ui: "Source Serif 4", Georgia, "Times New Roman", serif;
	--pf-font-head-pa: "Anek Gurmukhi", "Mukta Mahee", "Noto Sans Gurmukhi", sans-serif;
	--pf-font-body-pa: "Mukta Mahee", "Noto Sans Gurmukhi", "Anek Gurmukhi", sans-serif;
	--pf-wrap-pad: 72px;
	--pf-focus: 2px solid var(--pf-sepia);
}

/* ---------- 2. Base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
	margin: 0;
	background: var(--pf-parchment);
	color: var(--pf-ink);
	font: 400 16px/1.6 var(--pf-font-ui);
	overflow-x: hidden;
	-webkit-font-smoothing: antialiased;
}
img, svg, video { max-width: 100%; height: auto; }
a { color: var(--pf-sepia); text-decoration: none; }
a:hover { color: var(--pf-sepia-dark); text-decoration: underline; }
button { font: inherit; }
:focus-visible { outline: var(--pf-focus); outline-offset: 2px; }
::selection { background: rgba(124, 74, 33, 0.2); }
.pf-wrap { max-width: 1440px; margin: 0 auto; padding: 0 var(--pf-wrap-pad); }
.screen-reader-text { border: 0; clip: rect(1px, 1px, 1px, 1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important; }
.screen-reader-text:focus { background: var(--pf-sepia); color: var(--pf-parchment); clip: auto !important; clip-path: none; height: auto; left: 16px; top: 16px; padding: 12px 18px; width: auto; z-index: 100000; text-decoration: none; }
[hidden] { display: none !important; }

/* Type helpers: Punjabi editorial text vs. serif interface. */
[lang="pa"], .pf-pa { font-family: var(--pf-font-body-pa); }
.pf-kicker {
	display: inline-block;
	font: 600 11px/1.3 var(--pf-font-ui);
	letter-spacing: 0.26em;
	text-transform: uppercase;
	color: var(--pf-sepia);
}
.pf-kicker--muted { color: var(--pf-muted); }
.pf-date { white-space: nowrap; }
.pf-byline { margin: 0; font: 400 13px/1.6 var(--pf-font-ui); color: var(--pf-muted); }
.pf-byline b { font-weight: 600; color: var(--pf-ink); }
.pf-byline time { white-space: nowrap; }

/* Buttons */
.pf-btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 8px;
	min-height: 44px; padding: 12px 24px;
	background: var(--pf-sepia); color: var(--pf-parchment);
	border: 1px solid var(--pf-sepia);
	font: 600 13.5px/1.2 var(--pf-font-ui); letter-spacing: 0.03em;
	text-decoration: none; cursor: pointer; white-space: nowrap;
	transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}
.pf-btn:hover { background: var(--pf-sepia-dark); border-color: var(--pf-sepia-dark); color: var(--pf-parchment); text-decoration: none; }
.pf-btn { transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease, transform 0.15s ease; }
.pf-btn:active { transform: scale(0.97); }
.pf-btn--ghost { background: transparent; color: var(--pf-ink); border-color: var(--pf-ink); }
.pf-btn--ghost:hover { background: rgba(36, 31, 24, 0.06); color: var(--pf-ink); border-color: var(--pf-ink); }
.pf-btn--small { min-height: 40px; padding: 9px 16px; font-size: 12.5px; }
.pf-chip {
	display: inline-block; border: 1px solid rgba(46, 36, 20, 0.3); color: var(--pf-ink-soft);
	font: 600 12px/1.2 var(--pf-font-ui); padding: 10px 14px; text-decoration: none; min-height: 40px;
}
.pf-chip:hover { border-color: var(--pf-ink); color: var(--pf-ink); text-decoration: none; }

/* Section scaffolding */
.pf-section { padding-top: 72px; }
.pf-section__head {
	display: flex; justify-content: space-between; align-items: baseline; gap: 24px; flex-wrap: wrap;
	padding-bottom: 14px; border-bottom: 1px solid rgba(46, 36, 20, 0.25);
}
.pf-section__title { margin: 0; font: 600 28px/1.25 var(--pf-font-ui); color: var(--pf-ink); }
.pf-section__note { margin: 0 0 0 auto; font: italic 400 14px/1.4 var(--pf-font-ui); color: var(--pf-meta); }
.pf-section__more { font: 600 13px/1.2 var(--pf-font-ui); color: var(--pf-sepia); white-space: nowrap; }
.pf-section__more:hover { text-decoration: underline; }
.pf-grid { display: grid; gap: 36px; padding-top: 30px; }
.pf-grid--4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.pf-grid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 44px 40px; padding-top: 38px; }

/* Media frame */
.pf-media {
	display: block; position: relative; width: 100%; aspect-ratio: 16 / 9;
	background: var(--pf-parchment-deep); overflow: hidden;
}
.pf-media--1x1 { aspect-ratio: 1 / 1; }
.pf-media--4x3 { aspect-ratio: 4 / 3; }
.pf-media__img {
	position: absolute; inset: 0; width: 100%; height: 100%;
	object-fit: cover; object-position: 50% 25%;
	filter: sepia(0.18) contrast(0.98);
	transition: transform 0.25s ease;
}
.pf-media__img--fallback { opacity: 0.5; filter: sepia(0.6) contrast(0.9); }
.pf-media__mark {
	position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
	font: 600 14px/1 var(--pf-font-head-pa); letter-spacing: 0.08em; color: var(--pf-faded);
}

/* ---------- 3. Header ---------- */
.pf-header { background: var(--pf-header-bg); position: relative; z-index: 20; box-shadow: 0 6px 18px -12px rgba(36, 31, 24, 0.3); }
.pf-header__utility {
	display: flex; justify-content: space-between; align-items: baseline; gap: 20px;
	padding: 11px 0; border-bottom: 1px solid var(--pf-hair);
	font: 400 12px/1.4 var(--pf-font-ui); color: var(--pf-muted);
}
.pf-header__dateline { margin: 0; letter-spacing: 0.02em; }
.pf-header__utility-sep { margin: 0 8px; }
.pf-header__utility-end { display: flex; align-items: baseline; gap: 22px; }
.pf-lang { display: inline-flex; align-items: baseline; gap: 8px; font: 400 12px/1.4 var(--pf-font-ui); color: var(--pf-muted); }
.pf-lang a { color: var(--pf-muted); text-decoration: none; padding: 8px 2px; margin: -8px 0; }
.pf-lang a[data-gt-lang="pa"] { font-family: var(--pf-font-body-pa); font-size: 13px; }
.pf-lang a.gt-current-lang { color: var(--pf-ink); font-weight: 700; }
.pf-lang a:hover { color: var(--pf-ink); }
.pf-lang__sep { color: var(--pf-meta); }
.gtranslate_wrapper { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

.pf-header__brandrow { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 30px 0 26px; }
.pf-header__menu-toggle, .pf-header__search-toggle { display: none; }
.pf-brand { min-width: 0; }
.pf-brand__link { display: flex; align-items: center; gap: 16px; color: inherit; text-decoration: none; }
.pf-brand__link:hover { text-decoration: none; color: inherit; }
.pf-brand__logo { width: 46px; height: 46px; border-radius: 50%; object-fit: cover; flex: none; }
.pf-brand__text { display: block; min-width: 0; }
.pf-brand__names { display: flex; align-items: baseline; gap: 14px; }
.pf-brand__name { font: 700 42px/1 var(--pf-font-ui); color: var(--pf-ink); letter-spacing: -0.01em; }
.pf-brand__pa { font: 600 17px/1 var(--pf-font-head-pa); color: var(--pf-sepia); }
.pf-brand__tag { display: block; margin-top: 9px; font: 500 10.5px/1.3 var(--pf-font-ui); letter-spacing: 0.34em; text-transform: uppercase; color: var(--pf-meta); }
.pf-brand__tag.pf-brand__tag--short { display: none; }
.pf-header__tools { display: flex; align-items: center; gap: 14px; }
.pf-search-form { position: relative; }
.pf-search-form--header {
	display: flex; align-items: center; gap: 10px; min-width: 230px;
	border-bottom: 1px solid rgba(46, 36, 20, 0.3); padding: 4px 4px 6px; color: var(--pf-meta);
}
.pf-search-form__icon { display: inline-flex; color: var(--pf-muted); flex: none; }
.pf-search-form__input {
	flex: 1; min-width: 0; width: 100%; border: 0; background: transparent; padding: 6px 0;
	font: italic 400 13.5px/1.3 var(--pf-font-ui); color: var(--pf-ink);
}
.pf-search-form__input::placeholder { color: var(--pf-meta); opacity: 1; }
.pf-search-form__input:focus { outline: none; }
.pf-search-form:focus-within { border-color: var(--pf-sepia); }
.pf-search-form__input::-webkit-search-cancel-button { -webkit-appearance: none; }
.pf-search-form__submit { background: none; border: 0; color: var(--pf-sepia); cursor: pointer; padding: 6px 4px; font: 600 16px/1 var(--pf-font-ui); }
.pf-search-form__submit.pf-btn { font-size: 12.5px; }
.pf-header__support { padding: 11px 22px; font-size: 13px; min-height: 40px; }

.pf-nav { border-top: 2px solid var(--pf-ink); border-bottom: 1px solid var(--pf-hair-strong); }
.pf-nav__list { display: flex; gap: 34px; list-style: none; margin: 0; padding: 0; font: 600 13.5px/1.2 var(--pf-font-ui); letter-spacing: 0.02em; }
.pf-nav__link { position: relative; display: inline-block; padding: 12px 0 10px; color: var(--pf-ink); text-decoration: none; border-bottom: 2px solid transparent; }
.pf-nav__link::after { content: ""; position: absolute; left: 0; right: 0; bottom: -2px; height: 2px; background: var(--pf-sepia); transform: scaleX(0); transform-origin: left; transition: transform 0.2s ease; }
.pf-nav__link:hover { color: var(--pf-sepia); text-decoration: none; }
.pf-nav__link:hover::after { transform: scaleX(1); }
.pf-nav__item.is-current .pf-nav__link { border-bottom-color: var(--pf-sepia); }
.pf-nav__item.is-current .pf-nav__link::after { display: none; }
.pf-nav__item--end { margin-left: auto; }
.pf-nav__item--end .pf-nav__link { color: var(--pf-muted); font-weight: 400; }
.pf-header__mobile-search { display: none; }

/* Mobile menu panel */
.pf-mobile-menu { position: fixed; inset: 0; z-index: 1000; background: rgba(36, 31, 24, 0.45); }
.pf-mobile-menu__panel {
	position: absolute; top: 0; left: 0; bottom: 0; width: min(360px, 88vw);
	background: var(--pf-parchment); overflow-y: auto; padding: 16px 22px 32px;
	box-shadow: 8px 0 30px rgba(36, 31, 24, 0.18); outline: none;
}
.pf-mobile-menu__top { display: flex; justify-content: space-between; align-items: center; padding-bottom: 12px; border-bottom: 2px solid var(--pf-ink); }
.pf-mobile-menu__brand { font: 700 20px/1 var(--pf-font-ui); color: var(--pf-ink); }
.pf-mobile-menu__brand span { font: 600 12px/1 var(--pf-font-head-pa); color: var(--pf-sepia); margin-left: 8px; }
.pf-mobile-menu__close { width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; background: none; border: 0; color: var(--pf-ink); cursor: pointer; margin-right: -10px; }
.pf-search-form--panel { display: flex; align-items: center; gap: 10px; margin: 16px 0 6px; border-bottom: 1px solid var(--pf-hair-strong); padding: 4px 2px; }
.pf-search-form--panel .pf-search-form__input { font-size: 15px; }
.pf-mobile-menu__list { list-style: none; margin: 0; padding: 0; }
.pf-mobile-menu__list a { display: block; padding: 13px 0; font: 600 17px/1.3 var(--pf-font-ui); color: var(--pf-ink); text-decoration: none; border-bottom: 1px solid var(--pf-hair); }
.pf-mobile-menu__list li.is-current a, .pf-mobile-menu__list a[aria-current] { color: var(--pf-sepia); }
.pf-mobile-menu__secondary { margin-top: 18px; }
.pf-mobile-menu__list--secondary a { font-weight: 400; font-size: 15px; color: var(--pf-ink-soft); padding: 11px 0; }
.pf-mobile-menu__actions { margin-top: 22px; }
.pf-mobile-menu__actions .pf-btn { width: 100%; }
body.pf-menu-open { overflow: hidden; }

/* ---------- 4. Records ---------- */
.pf-record { display: flex; flex-direction: column; min-width: 0; transition: transform 0.2s ease, box-shadow 0.2s ease; }
.pf-record:hover { transform: translateY(-2px); box-shadow: 0 10px 22px rgba(36, 31, 24, 0.12); }
.pf-record--row:hover, .pf-record--related:hover { box-shadow: none; }
.pf-record__media { display: block; color: inherit; }
.pf-record:hover .pf-media__img { transform: scale(1.03); }
.pf-record__body { padding-top: 16px; min-width: 0; }
.pf-record__labels { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; margin-bottom: 9px; }
.pf-record__kicker { font-size: 10.5px; letter-spacing: 0.22em; }
.pf-record__ref { font: 400 11px/1 ui-monospace, Menlo, Consolas, monospace; color: var(--pf-faded); white-space: nowrap; }
.pf-record__title { margin: 0; font: 600 16.5px/1.46 var(--pf-font-ui); color: var(--pf-ink); overflow-wrap: anywhere; }
.pf-record__title[lang="pa"] { font-family: var(--pf-font-head-pa); font-size: 17px; }
.pf-record__title a { color: inherit; text-decoration: none; }
.pf-record__title a:hover { color: var(--pf-sepia); text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.pf-record__excerpt { margin: 9px 0 0; font: 400 14px/1.62 var(--pf-font-ui); color: var(--pf-muted); }
.pf-record__excerpt[lang="pa"] { font-family: var(--pf-font-body-pa); font-size: 13.5px; }
.pf-record__meta { margin-top: 9px; font: 400 12px/1.4 var(--pf-font-ui); color: var(--pf-meta); }
.pf-record--row { flex-direction: row; gap: 16px; padding: 22px 0; border-bottom: 1px solid var(--pf-hair-soft); }
.pf-record--row .pf-record__media { width: 96px; flex: none; }
.pf-record--row .pf-record__body { padding-top: 0; }
.pf-record--row .pf-record__title { font-size: 16px; line-height: 1.42; }
.pf-record--row .pf-record__meta { margin-top: 7px; }

/* ---------- 5. Homepage ---------- */
.pf-hero { padding-top: 44px; }
.pf-hero__grid { display: grid; grid-template-columns: minmax(0, 1fr) 356px; gap: 60px; }
.pf-hero__main { min-width: 0; }
.pf-hero__media { display: block; }
.pf-hero__labels { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; margin: 24px 0 12px; }
.pf-hero__flag { font: 400 12px/1.3 var(--pf-font-ui); letter-spacing: 0.08em; text-transform: uppercase; color: var(--pf-meta); white-space: nowrap; }
.pf-hero__title { margin: 0; max-width: 760px; font: 700 40px/1.22 var(--pf-font-ui); color: var(--pf-ink); letter-spacing: -0.005em; overflow-wrap: anywhere; }
.pf-hero__title[lang="pa"] { font-family: var(--pf-font-head-pa); font-size: 46px; line-height: 1.24; letter-spacing: 0; }
.pf-hero__title a { color: inherit; text-decoration: none; }
.pf-hero__title a:hover { color: var(--pf-sepia); }
.pf-hero__standfirst { margin: 16px 0 0; max-width: 630px; font: 400 17px/1.68 var(--pf-font-ui); color: var(--pf-ink-soft); }
.pf-hero__standfirst[lang="pa"] { font-family: var(--pf-font-body-pa); }
.pf-hero__foot { display: flex; align-items: baseline; gap: 22px; margin-top: 18px; flex-wrap: wrap; }
.pf-hero__byline { font-style: italic; color: var(--pf-meta); }
.pf-hero__byline b { font-weight: 600; color: var(--pf-ink-soft); }
.pf-hero__read { font: 600 13.5px/1.2 var(--pf-font-ui); color: var(--pf-sepia); white-space: nowrap; }
.pf-hero__rail { display: flex; flex-direction: column; min-width: 0; }
.pf-rail__heading {
	margin: 0; padding-bottom: 16px; border-bottom: 1px solid var(--pf-hair-mid);
	font: 600 11px/1.3 var(--pf-font-ui); letter-spacing: 0.26em; text-transform: uppercase; color: var(--pf-muted);
}
.pf-rail__list .pf-record--row:last-child { border-bottom: 0; }
.pf-rank { margin-top: 18px; padding-top: 18px; border-top: 2px solid var(--pf-ink); }
.pf-rank__head { display: flex; justify-content: space-between; align-items: baseline; }
.pf-rank__heading { border-bottom: 0; padding-bottom: 0; }
.pf-rank__all { font: 600 12px/1.2 var(--pf-font-ui); color: var(--pf-sepia); }
.pf-rank__list { list-style: none; margin: 0; padding: 0; }
.pf-rank__item { display: flex; gap: 14px; align-items: baseline; padding: 14px 0; border-bottom: 1px solid var(--pf-hair-soft); }
.pf-rank__item:last-child { border-bottom: 0; }
.pf-rank__num { flex: none; min-width: 28px; font: 400 22px/1 var(--pf-font-ui); color: var(--pf-faded); }
.pf-rank__title { margin: 0; font: 600 14.5px/1.42 var(--pf-font-ui); color: var(--pf-ink); overflow-wrap: anywhere; }
.pf-rank__title[lang="pa"] { font-family: var(--pf-font-head-pa); font-size: 15px; }
.pf-rank__title a { color: inherit; text-decoration: none; }
.pf-rank__title a:hover { color: var(--pf-sepia); }
.pf-rank__meta { margin-top: 4px; font: 400 11.5px/1.4 var(--pf-font-ui); color: var(--pf-meta); }

.pf-latest__grid .pf-record__title { font-size: 16.5px; }
.pf-topics .pf-section__head { border-bottom: 0; padding-bottom: 0; }
.pf-topics__all { display: none; }
.pf-topics__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 36px; padding-top: 26px; }
.pf-topic { border-top: 1px solid rgba(46, 36, 20, 0.3); padding-top: 18px; }
.pf-topic__name { margin: 0; font: 600 19px/1.3 var(--pf-font-ui); }
.pf-topic__name a { color: var(--pf-ink); text-decoration: none; }
.pf-topic__name a:hover { color: var(--pf-sepia); }
.pf-topic__desc { margin: 8px 0 12px; font: 400 13px/1.6 var(--pf-font-ui); color: var(--pf-muted); }
.pf-topic__link { font: 600 12.5px/1.2 var(--pf-font-ui); color: var(--pf-sepia); }

/* Explore History (five destinations: Sikh History · 1947 · 1973–1978 ·
   1984–1995 · Present). Box cards throughout; 1984–1995 carries the
   restrained oxblood archival-paper treatment. */
.pf-era { margin-top: 78px; background: var(--pf-parchment-deep); padding: 56px 0 52px; }
.pf-era .pf-section__head { border-bottom: 0; padding-bottom: 0; }
.pf-era__scroller { position: relative; margin-top: 34px; }
.pf-era__list { list-style: none; margin: 0; padding: 0; display: flex; gap: 16px; align-items: stretch; }
.pf-era__item { flex: 1 1 0; min-width: 0; }
.pf-era__item--strong { flex: 1.3 1 0; }
.pf-era__link {
	display: flex; flex-direction: column; height: 100%; min-height: 168px;
	background: var(--pf-parchment); border: 1px solid var(--pf-hair-mid);
	padding: 24px 22px 22px; color: inherit; text-decoration: none;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.pf-era__link:hover { text-decoration: none; color: inherit; transform: translateY(-2px); box-shadow: 0 10px 24px rgba(36, 31, 24, 0.14); }
.pf-era__year { display: block; font: 600 20px/1.25 var(--pf-font-ui); color: var(--pf-ink); }
.pf-era__desc { display: block; margin-top: 10px; font: 400 12.5px/1.6 var(--pf-font-ui); color: var(--pf-muted); flex: 1; }
.pf-era__count { display: block; margin-top: 14px; font: 600 11px/1.3 var(--pf-font-ui); color: var(--pf-sepia); }
.pf-era__count--none { font-weight: 400; font-style: italic; color: var(--pf-meta); }
.pf-era__here { display: block; margin-top: 2px; font: italic 400 11px/1.3 var(--pf-font-ui); color: #e5d5c0; }
.pf-era__hint { display: none; margin: 10px 0 0; font: italic 400 10.5px/1.3 var(--pf-font-ui); color: var(--pf-meta); }
/* 1984–1995: restrained oxblood archival-paper card (dried-blood tone, not alert red) */
.pf-era__item--strong .pf-era__link {
	background-color: #8a3d30;
	background-image:
		linear-gradient(rgba(138, 61, 48, 0.86), rgba(138, 61, 48, 0.86)),
		url("images/blood-paper.jpg"),
		radial-gradient(ellipse 55% 45% at 20% 15%, rgba(0, 0, 0, 0.2), transparent 60%),
		radial-gradient(ellipse 50% 40% at 85% 80%, rgba(0, 0, 0, 0.14), transparent 55%);
	background-size: cover, cover, auto, auto;
	background-position: center;
	background-repeat: no-repeat;
	border-color: #8a3d30;
}
.pf-era__item--strong .pf-era__year, .pf-era__item--strong .pf-era__count { color: #f8ede0; }
.pf-era__item--strong .pf-era__desc { color: #ecd3c2; }
.pf-era__item--strong .pf-era__link:hover { box-shadow: 0 12px 26px rgba(20, 8, 5, 0.32); }
/* Active / "You are here" (collection pages) */
.pf-era__item.is-active .pf-era__link { background: var(--pf-sepia); border-color: var(--pf-sepia); }
.pf-era__item.is-active .pf-era__year, .pf-era__item.is-active .pf-era__count { color: var(--pf-parchment); }
.pf-era__item.is-active .pf-era__desc { color: rgba(246, 241, 231, 0.85); }
.pf-era__item--strong.is-active .pf-era__link {
	background-color: #4e1912;
	background-image:
		linear-gradient(rgba(78, 25, 18, 0.9), rgba(78, 25, 18, 0.9)),
		url("images/blood-paper.jpg"),
		radial-gradient(ellipse 60% 50% at 22% 18%, rgba(0, 0, 0, 0.32), transparent 60%),
		radial-gradient(ellipse 55% 45% at 82% 78%, rgba(0, 0, 0, 0.24), transparent 58%);
	background-size: cover, cover, auto, auto;
	background-position: center;
	background-repeat: no-repeat;
	border-color: #4e1912;
}
/* Compact variant (collection pages): smaller cards, same visual language */
.pf-era--compact { margin-top: 56px; padding: 40px 0 38px; }
.pf-era--compact .pf-section__title { font-size: 22px; }
.pf-era--compact .pf-section__note { font-size: 13px; }
.pf-era--compact .pf-era__scroller { margin-top: 22px; }
.pf-era--compact .pf-era__link { min-height: 0; padding: 14px 16px 12px; }
.pf-era--compact .pf-era__year { font-size: 18px; }
.pf-era--compact .pf-era__count { margin-top: 6px; font-size: 10.5px; }

/* Punjab 1984 / Sikh History homepage showcases */
.pf-showcase__head { align-items: flex-end; border-bottom: 1px solid var(--pf-ink); padding-bottom: 14px; }
.pf-showcase__title { margin: 8px 0 0; font: 600 30px/1.2 var(--pf-font-ui); color: var(--pf-ink); }
.pf-showcase__pa { font: 600 18px/1.2 var(--pf-font-head-pa); color: var(--pf-sepia); margin-left: 6px; }
.pf-showcase__desc { margin: 18px 0 0; max-width: 680px; font: 400 15px/1.7 var(--pf-font-ui); color: var(--pf-ink-soft); }
.pf-showcase--deep { margin-top: 70px; background: var(--pf-parchment-deep); padding: 64px 0 60px; }
.pf-showcase--deep .pf-showcase__head { border-bottom-color: var(--pf-hair-strong); }

/* Homepage Video section */
.pf-video-home__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; padding-top: 30px; }
.pf-video-home__card { display: flex; flex-direction: column; }
.pf-video-home__card .pf-ytlite { display: block; }
.pf-video-home__kicker { display: block; margin: 16px 0 8px; font: 600 10.5px/1.3 var(--pf-font-ui); letter-spacing: 0.22em; text-transform: uppercase; color: var(--pf-sepia); }
.pf-video-home__title { display: block; font: 600 18px/1.42 var(--pf-font-ui); color: var(--pf-ink); overflow-wrap: anywhere; }
.pf-video-home__title[lang="pa"] { font-family: var(--pf-font-head-pa); }

/* Mission + Support */
.pf-mission { padding: 72px 0 80px; }
.pf-mission__grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: 72px; }
.pf-mission__title { margin: 0; max-width: 560px; font: 600 32px/1.3 var(--pf-font-ui); color: var(--pf-ink); }
.pf-mission__lead { margin: 18px 0 0; max-width: 560px; font: 400 15.5px/1.72 var(--pf-font-ui); color: var(--pf-ink-soft); }
.pf-mission__link { display: inline-block; margin-top: 16px; font: 600 13.5px/1.2 var(--pf-font-ui); color: var(--pf-sepia); }
.pf-mission__support { border-left: 1px solid rgba(46, 36, 20, 0.16); padding-left: 44px; display: flex; flex-direction: column; justify-content: center; }
.pf-mission__support-text { margin: 14px 0 20px; font: 400 14px/1.68 var(--pf-font-ui); color: var(--pf-ink-soft); }
.pf-support__actions { display: flex; gap: 12px; flex-wrap: wrap; }
.pf-support { display: grid; grid-template-columns: 1.4fr 1fr; gap: 72px; align-items: center; }
.pf-support__title { margin: 0; max-width: 560px; font: 600 28px/1.35 var(--pf-font-ui); color: var(--pf-ink); }
.pf-support__lead { margin: 14px 0 0; max-width: 540px; font: 400 15px/1.7 var(--pf-font-ui); color: var(--pf-ink-soft); }
.pf-support--collection { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; border-left: 1px solid rgba(46, 36, 20, 0.16); padding-left: 56px; }
.pf-support--collection .pf-support__title { font-size: 26px; }
.pf-support--collection .pf-support__lead { font-size: 14.5px; max-width: 420px; margin: 12px 0 20px; }
.pf-article__support, .pf-about-support, .pf-contact__support { padding: 72px 0 76px; }

/* ---------- 6. Footer (compact final refinement) ---------- */
.pf-footer { background: var(--pf-footer-bg); color: #fff; padding: 26px 0; }
.pf-footer__row { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 28px; }
.pf-footer__copy { margin: 0; font: 400 13px/1.5 var(--pf-font-ui); color: #fff; }
.pf-footer__legal-links { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; font: 400 13px/1.5 var(--pf-font-ui); }
.pf-footer__legal-links li + li::before { content: "·"; margin: 0 8px; color: #fff; }
.pf-footer__legal-links a { color: #fff; text-decoration: none; padding: 4px 0; }
.pf-footer__legal-links a:hover { text-decoration: underline; }
.pf-footer__social { display: flex; gap: 10px; align-items: center; }
.pf-footer__social a { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; color: #fff; }
.pf-footer__social svg { width: 24px; height: 24px; }
.pf-footer__social a:hover { opacity: 0.75; }
.pf-footer a:focus-visible { outline-color: #fff; }

/* ---------- 7. Article ---------- */
.pf-article__head { padding-top: 52px; }
.pf-article__head-inner { max-width: calc(920px + 2 * var(--pf-wrap-pad)); }
.pf-breadcrumbs ol { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; font: 400 12px/1.6 var(--pf-font-ui); color: var(--pf-meta); }
.pf-breadcrumbs li + li::before { content: "/"; margin: 0 8px; color: var(--pf-meta); }
.pf-breadcrumbs a { color: var(--pf-meta); text-decoration: none; }
.pf-breadcrumbs a:hover { color: var(--pf-sepia); text-decoration: underline; }
.pf-breadcrumbs [aria-current] { color: var(--pf-ink-soft); }
.pf-article__kicker { display: block; margin: 26px 0 14px; }
.pf-article__title { margin: 0; max-width: 880px; font: 700 46px/1.18 var(--pf-font-ui); color: var(--pf-ink); letter-spacing: -0.01em; overflow-wrap: anywhere; }
.pf-article__title[lang="pa"] { font-family: var(--pf-font-head-pa); font-size: 54px; line-height: 1.22; letter-spacing: 0; }
.pf-article__standfirst { margin: 20px 0 0; max-width: 800px; font: 400 19px/1.7 var(--pf-font-ui); color: var(--pf-ink-soft); }
.pf-article__standfirst[lang="pa"] { font-family: var(--pf-font-body-pa); }
.pf-article__metarow { display: flex; justify-content: space-between; align-items: baseline; gap: 24px; flex-wrap: wrap; max-width: 880px; margin-top: 26px; padding-top: 18px; border-top: 1px solid var(--pf-hair-mid); }
.pf-article__meta { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; font: 400 13px/1.6 var(--pf-font-ui); color: var(--pf-muted); }
.pf-article__updated { font-style: italic; }
.pf-article__updated::before { content: "· "; font-style: normal; }
.pf-share { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; font: 400 12.5px/1.6 var(--pf-font-ui); color: var(--pf-muted); }
.pf-share__link { padding: 0; background: none; border: 0; cursor: pointer; font: 600 12.5px/1.6 var(--pf-font-ui); color: var(--pf-sepia); text-decoration: none; }
.pf-share__link:hover { text-decoration: underline; color: var(--pf-sepia-dark); }
.pf-share__link.is-copied { color: var(--pf-ink); }
.pf-share__sep { color: var(--pf-meta); }
.pf-plate { margin: 34px 0 0; }
.pf-plate__frame { max-width: 1030px; margin: 0 auto; background: var(--pf-parchment-deep); }
.pf-plate__img { display: block; width: 100%; height: auto; filter: sepia(0.15) contrast(0.98); }
.pf-plate__caption { max-width: 1030px; margin: 0 auto; display: flex; justify-content: space-between; align-items: baseline; gap: 24px; flex-wrap: wrap; padding: 12px 0; border-bottom: 1px solid var(--pf-hair); font: italic 400 13px/1.55 var(--pf-font-ui); color: var(--pf-muted); }
.pf-plate__text[lang="pa"] { font-family: var(--pf-font-body-pa); font-style: normal; }
.pf-plate__source { margin-left: auto; font: 400 11.5px/1.5 var(--pf-font-ui); font-style: normal; color: var(--pf-meta); white-space: nowrap; }
.pf-article__grid { max-width: 1160px; margin: 0 auto; display: grid; grid-template-columns: 720px minmax(0, 1fr); gap: 56px; padding-top: 44px; }
.pf-article__column { min-width: 0; }

/* Prose (article + pages) */
.pf-prose { font: 400 17px/1.85 var(--pf-font-ui); color: var(--pf-body); }
html[lang^="pa"] .pf-prose, .pf-prose[lang="pa"], .pf-prose [lang="pa"] { font-family: var(--pf-font-body-pa); }
.pf-prose > *:first-child { margin-top: 0; }
.pf-prose p { margin: 0 0 26px; }
.pf-prose h2, .pf-prose h3, .pf-prose h4 { color: var(--pf-ink); font-family: var(--pf-font-ui); scroll-margin-top: 24px; overflow-wrap: anywhere; }
html[lang^="pa"] .pf-prose h2, html[lang^="pa"] .pf-prose h3, html[lang^="pa"] .pf-prose h4 { font-family: var(--pf-font-head-pa); }
.pf-prose h2 { margin: 38px 0 16px; font-size: 27px; line-height: 1.35; font-weight: 700; }
.pf-prose h3 { margin: 32px 0 12px; font-size: 22px; line-height: 1.4; font-weight: 700; }
.pf-prose h4 { margin: 26px 0 10px; font-size: 18px; line-height: 1.45; font-weight: 600; }
.pf-prose strong { font-weight: 600; color: var(--pf-ink); }
.pf-prose a { color: var(--pf-sepia); text-decoration: underline; text-decoration-color: rgba(124, 74, 33, 0.45); text-underline-offset: 3px; }
.pf-prose a:hover { color: var(--pf-sepia-dark); text-decoration-color: currentColor; }
.pf-prose blockquote { margin: 36px 0; padding: 4px 0 4px 28px; border-left: 2px solid var(--pf-sepia); font: 600 21px/1.55 var(--pf-font-ui); color: var(--pf-ink); }
html[lang^="pa"] .pf-prose blockquote { font-family: var(--pf-font-head-pa); }
.pf-prose blockquote p { margin: 0 0 10px; font: inherit; }
.pf-prose blockquote cite, .pf-prose blockquote footer { display: block; margin-top: 10px; font: italic 400 12.5px/1.5 var(--pf-font-ui); color: var(--pf-meta); }
.pf-prose ul, .pf-prose ol { margin: 0 0 26px; padding-left: 22px; }
.pf-prose li { margin: 0 0 10px; line-height: 1.7; }
.pf-prose li > ul, .pf-prose li > ol { margin: 10px 0 0; }
.pf-prose hr { border: 0; border-top: 1px solid var(--pf-hair-mid); margin: 36px 0; }
.pf-prose img { display: block; max-width: 100%; height: auto; }
.pf-prose figure { margin: 36px 0; }
.pf-prose figcaption { margin-top: 10px; padding-bottom: 10px; border-bottom: 1px solid var(--pf-hair-soft); font: italic 400 12.5px/1.55 var(--pf-font-ui); color: var(--pf-muted); }
.pf-prose .wp-block-image img { width: 100%; }
.pf-prose .wp-block-embed__wrapper, .pf-prose .wp-block-embed { max-width: 100%; }
.pf-prose .wp-block-embed iframe, .pf-prose iframe[src*="youtube"], .pf-prose iframe[data-litespeed-src*="youtube"] { width: 100%; aspect-ratio: 16 / 9; height: auto; border: 0; }
.pf-prose .wp-block-embed__wrapper::before { display: none !important; }
.pf-table-scroll { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 0 0 26px; }
.pf-table-scroll > table { margin-bottom: 0; }
.pf-prose table { width: 100%; border-collapse: collapse; margin: 0 0 26px; font-size: 15px; line-height: 1.55; }
.pf-prose th, .pf-prose td { padding: 10px 12px; border-bottom: 1px solid var(--pf-hair); text-align: left; vertical-align: top; }
.pf-prose th { font-weight: 600; color: var(--pf-ink); border-bottom: 2px solid var(--pf-ink); }
.pf-prose tr:last-child td { border-bottom: 0; }
.pf-prose .wp-block-table { margin: 0 0 26px; }
.pf-prose .wp-block-separator { max-width: 100%; }
.pf-prose code, .pf-prose pre { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 0.9em; background: var(--pf-parchment-deep); }
.pf-prose pre { padding: 16px; overflow-x: auto; }
.pf-pagelinks { margin: 20px 0; font-size: 14px; }

/* Historical Context */
.pf-context { margin: 44px 0 0; background: var(--pf-parchment-deep); padding: 32px 36px; }
.pf-context__heading { margin: 0; font: 600 11px/1.3 var(--pf-font-ui); letter-spacing: 0.26em; text-transform: uppercase; color: var(--pf-muted); }
.pf-context__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 22px 40px; margin: 20px 0 0; }
.pf-context__grid dt { font: 600 11.5px/1.3 var(--pf-font-ui); letter-spacing: 0.06em; text-transform: uppercase; color: var(--pf-meta); }
.pf-context__grid dd { margin: 5px 0 0; font: 500 15px/1.5 var(--pf-font-ui); color: var(--pf-ink); }
.pf-context__grid dd[lang="pa"] { font-family: var(--pf-font-body-pa); }
.pf-context__grid dd a { color: var(--pf-ink); }
.pf-context__grid dd a:hover { color: var(--pf-sepia); }

/* Sources & References */
.pf-sources { margin: 52px 0 0; border-top: 2px solid var(--pf-ink); padding-top: 22px; scroll-margin-top: 24px; }
.pf-sources__head { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; flex-wrap: wrap; }
.pf-sources__title { margin: 0; font: 600 22px/1.3 var(--pf-font-ui); color: var(--pf-ink); }
.pf-sources__policy { font: 600 12px/1.3 var(--pf-font-ui); color: var(--pf-sepia); }
.pf-sources__list { list-style: none; margin: 18px 0 0; padding: 0; }
.pf-sources__item { display: flex; gap: 16px; padding: 12px 0; border-bottom: 1px solid var(--pf-hair-soft); font: 400 14px/1.6 var(--pf-font-ui); color: var(--pf-ink-soft); }
.pf-sources__item:last-child { border-bottom: 0; }
.pf-sources__num { flex: none; min-width: 24px; font-weight: 600; color: var(--pf-faded); }
.pf-sources__body[lang="pa"] { font-family: var(--pf-font-body-pa); font-size: 14.5px; }
.pf-sources__type { color: var(--pf-meta); font-family: var(--pf-font-ui); }
.pf-sources__only-link { margin: 40px 0 0; font: 600 13px/1.5 var(--pf-font-ui); }
.pf-transparency { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; flex-wrap: wrap; margin: 28px 0 0; padding: 16px 0; border-top: 1px solid var(--pf-hair); border-bottom: 1px solid var(--pf-hair); }
.pf-transparency__note { margin: 0; font: italic 400 12.5px/1.6 var(--pf-font-ui); color: var(--pf-muted); }
.pf-transparency__note a { color: var(--pf-muted); text-decoration: underline; }
.pf-transparency__report { font: 600 12.5px/1.6 var(--pf-font-ui); color: var(--pf-sepia); white-space: nowrap; }
.pf-article__share-foot { margin-top: 14px; }
.pf-article__tags { margin: 18px 0 0; font: 400 12.5px/1.9 var(--pf-font-ui); color: var(--pf-meta); }
.pf-article__tags a { color: var(--pf-muted); }
.pf-article__tags a:hover { color: var(--pf-sepia); }

/* Article rail */
.pf-rail { min-width: 0; padding-top: 6px; }
.pf-rail__sticky { position: sticky; top: 24px; }
.pf-rail__block { margin-top: 36px; }
.pf-rail__block:first-child { margin-top: 0; }
.pf-rail__toc-list { list-style: none; margin: 0; padding: 16px 0 0; display: flex; flex-direction: column; gap: 12px; }
.pf-rail__toc-list a { font: 500 13.5px/1.45 var(--pf-font-ui); color: var(--pf-ink-soft); text-decoration: none; }
.pf-rail__toc-list a[lang="pa"] { font-family: var(--pf-font-body-pa); }
.pf-rail__toc-list a:hover, .pf-rail__toc-list li.is-active > a { color: var(--pf-sepia); }
.pf-rail__toc-list li.is-sub { padding-left: 14px; }
.pf-rail__dl { margin: 16px 0 0; display: flex; flex-direction: column; gap: 13px; font: 400 13px/1.5 var(--pf-font-ui); color: var(--pf-ink-soft); }
.pf-rail__dl > div { display: flex; justify-content: space-between; gap: 16px; }
.pf-rail__dl dt { color: var(--pf-meta); }
.pf-rail__dl dd { margin: 0; text-align: right; }
.pf-rail__dl dd a { color: var(--pf-ink-soft); }
.pf-rail__dl dd a:hover { color: var(--pf-sepia); }
.pf-rail__dl dd.is-strong { font-weight: 600; color: var(--pf-ink); }
.pf-rail__dl dd.is-mono { font: 400 12px/1.5 ui-monospace, Menlo, Consolas, monospace; }
.pf-rail__dates-list { list-style: none; margin: 0; padding: 16px 0 0; display: flex; flex-direction: column; gap: 14px; }
.pf-rail__dates-list li { display: flex; gap: 14px; }
.pf-rail__date { flex: none; width: 84px; font: 600 13px/1.55 var(--pf-font-ui); color: var(--pf-sepia); }
.pf-rail__date-text { font: 400 13px/1.55 var(--pf-font-ui); color: var(--pf-ink-soft); }
.pf-rail__date-text[lang="pa"] { font-family: var(--pf-font-body-pa); }
.pf-rail__explore { background: var(--pf-parchment-deep); padding: 22px 24px; }
.pf-rail__explore .pf-rail__heading { border-bottom: 0; padding-bottom: 0; }
.pf-rail__explore-list { list-style: none; margin: 14px 0 0; padding: 0; display: flex; flex-direction: column; gap: 10px; font: 600 13.5px/1.4 var(--pf-font-ui); }
.pf-rail__explore-list a { color: var(--pf-sepia); }

/* Related records */
.pf-related .pf-grid--3 { gap: 40px; padding-top: 28px; }
.pf-related__explore { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 28px; }
.pf-comments { max-width: 680px; padding: 24px 0 48px; }
.pf-comments__title { font: 600 20px/1.3 var(--pf-font-ui); }
.pf-comments__items { list-style: none; padding: 0; }

/* ---------- 8. Collections (category / archive / explorer / search) ---------- */
.pf-collection__head { padding-top: 52px; }
.pf-collection__head-grid { display: flex; justify-content: space-between; align-items: flex-end; gap: 40px; }
.pf-collection__intro { max-width: 720px; min-width: 0; }
.pf-collection__title { margin: 20px 0 0; font: 700 58px/1.08 var(--pf-font-ui); color: var(--pf-ink); letter-spacing: -0.01em; overflow-wrap: anywhere; }
.pf-collection__title[lang="pa"] { font-family: var(--pf-font-head-pa); font-size: 48px; line-height: 1.2; letter-spacing: 0; }
.pf-collection__desc { margin: 18px 0 0; max-width: 640px; font: 400 16.5px/1.7 var(--pf-font-ui); color: var(--pf-ink-soft); }
.pf-collection__desc p { margin: 0 0 10px; }
.pf-collection__desc p:last-child { margin-bottom: 0; }
.pf-collection__count { flex: none; text-align: right; padding-left: 40px; }
.pf-collection__num { display: block; font: 400 52px/1 var(--pf-font-ui); color: var(--pf-faded); }
.pf-collection__num-label { display: block; margin-top: 8px; font: 600 11px/1.3 var(--pf-font-ui); letter-spacing: 0.24em; text-transform: uppercase; color: var(--pf-muted); }
.pf-collection__note { display: block; margin-top: 6px; font: italic 400 12px/1.4 var(--pf-font-ui); color: var(--pf-meta); }
.pf-collection__search { margin-top: 20px; max-width: 520px; }
.pf-search-form--inline { display: flex; align-items: center; gap: 10px; border: 1px solid var(--pf-hair-strong); padding: 4px 6px 4px 12px; background: var(--pf-parchment); }
.pf-search-form--inline .pf-search-form__input { font-style: normal; font-size: 15px; }

.pf-featured { margin-top: 40px; }
.pf-featured__inner { display: grid; grid-template-columns: 560px minmax(0, 1fr); gap: 52px; align-items: center; background: var(--pf-parchment-deep); padding: 44px 48px; }
.pf-featured__media { display: block; }
.pf-featured__title { margin: 14px 0 0; font: 700 30px/1.28 var(--pf-font-ui); color: var(--pf-ink); overflow-wrap: anywhere; }
.pf-featured__title[lang="pa"] { font-family: var(--pf-font-head-pa); font-size: 36px; }
.pf-featured__title a { color: inherit; text-decoration: none; }
.pf-featured__title a:hover { color: var(--pf-sepia); }
.pf-featured__excerpt { margin: 14px 0 0; max-width: 560px; font: 400 15.5px/1.72 var(--pf-font-ui); color: var(--pf-ink-soft); }
.pf-featured__excerpt[lang="pa"] { font-family: var(--pf-font-body-pa); }
.pf-featured__foot { display: flex; align-items: baseline; gap: 22px; flex-wrap: wrap; margin-top: 18px; }
.pf-featured__foot .pf-byline { font-style: italic; color: var(--pf-meta); }
.pf-featured__read { font: 600 13.5px/1.2 var(--pf-font-ui); color: var(--pf-sepia); white-space: nowrap; }

.pf-filters { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; flex-wrap: wrap; padding-top: 48px; border-bottom: 1px solid rgba(46, 36, 20, 0.25); scroll-margin-top: 16px; }
.pf-filters__tabs { min-width: 0; }
.pf-tabs { list-style: none; margin: 0; padding: 0; display: flex; gap: 6px; flex-wrap: wrap; }
.pf-tab { display: inline-block; padding: 9px 18px 11px; margin-bottom: -1px; font: 600 13px/1.2 var(--pf-font-ui); color: var(--pf-ink-soft); text-decoration: none; }
.pf-tab:hover { color: var(--pf-ink); text-decoration: none; background: rgba(36, 31, 24, 0.05); }
.pf-tab.is-active { background: var(--pf-ink); color: var(--pf-parchment); }
.pf-filters__controls { display: flex; align-items: center; gap: 26px; padding-bottom: 11px; font: 400 13px/1.3 var(--pf-font-ui); color: var(--pf-muted); }
.pf-filters__field { display: inline-flex; align-items: center; gap: 6px; }
.pf-filters__label { font: 400 13px/1.3 var(--pf-font-ui); color: var(--pf-muted); }
.pf-select {
	appearance: none; -webkit-appearance: none; max-width: 100%;
	background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23241f18' stroke-width='1.4'/%3E%3C/svg%3E") no-repeat right 4px center;
	border: 0; border-bottom: 1px solid transparent; padding: 8px 20px 8px 2px;
	font: 600 13px/1.3 var(--pf-font-ui); color: var(--pf-ink); cursor: pointer;
}
.pf-select:hover { border-bottom-color: var(--pf-hair-strong); }
.pf-js .pf-filters__apply { display: none; }
.pf-records__count { margin: 18px 0 0; font: italic 400 12.5px/1.4 var(--pf-font-ui); color: var(--pf-meta); }

.pf-pagination { margin-top: 52px; text-align: center; }
.pf-pagination__list { list-style: none; margin: 0; padding: 0; display: flex; justify-content: center; align-items: center; gap: 8px; flex-wrap: wrap; }
.pf-pagination .page-numbers { display: inline-block; min-width: 44px; padding: 10px 15px; font: 600 13px/1.3 var(--pf-font-ui); color: var(--pf-ink); text-decoration: none; }
.pf-pagination .page-numbers:hover { color: var(--pf-sepia); }
.pf-pagination .page-numbers.current { background: var(--pf-ink); color: var(--pf-parchment); }
.pf-pagination .page-numbers.dots { color: var(--pf-meta); font-weight: 400; padding: 10px 8px; min-width: 0; }
.pf-pagination .page-numbers.prev { color: var(--pf-meta); }
.pf-pagination .page-numbers.next { color: var(--pf-sepia); }
.pf-pagination__status { margin: 8px 0 0; font: italic 400 12px/1.4 var(--pf-font-ui); color: var(--pf-meta); }
.pf-pagination__more { display: none; }
.pf-pagination__mobile-status { margin: 9px 0 0; font: italic 400 11px/1.4 var(--pf-font-ui); color: var(--pf-meta); }

.pf-collection__foot { padding: 64px 0 72px; }
.pf-collection__foot-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 72px; }
.pf-related-collections__title { margin: 0; padding-bottom: 14px; border-bottom: 1px solid rgba(46, 36, 20, 0.25); font: 600 22px/1.3 var(--pf-font-ui); color: var(--pf-ink); }
.pf-related-collections__list { list-style: none; margin: 0; padding: 0; }
.pf-related-collections__list a { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; padding: 16px 0; border-bottom: 1px solid var(--pf-hair-soft); text-decoration: none; }
.pf-related-collections__list li:last-child a { border-bottom: 0; }
.pf-related-collections__name { font: 600 16px/1.3 var(--pf-font-ui); color: var(--pf-ink); }
.pf-related-collections__count { font: 600 12.5px/1.3 var(--pf-font-ui); color: var(--pf-sepia); white-space: nowrap; }
.pf-related-collections__list a:hover .pf-related-collections__name { color: var(--pf-sepia); }

/* Explorer filter bar */
.pf-explorer { display: grid; grid-template-columns: minmax(240px, 1.1fr) 2.2fr auto; gap: 20px 28px; align-items: end; padding: 40px 0 18px; border-bottom: 1px solid rgba(46, 36, 20, 0.25); }
.pf-explorer__keyword { display: flex; align-items: center; gap: 10px; border-bottom: 1px solid rgba(46, 36, 20, 0.3); padding: 8px 4px; color: var(--pf-meta); }
.pf-explorer__input { flex: 1; min-width: 0; border: 0; background: transparent; font: italic 400 14px/1.3 var(--pf-font-ui); color: var(--pf-ink); }
.pf-explorer__input:focus { outline: none; }
.pf-explorer__keyword:focus-within { border-bottom-color: var(--pf-sepia); }
.pf-explorer__selects { display: flex; gap: 24px; flex-wrap: wrap; }
.pf-explorer__field { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.pf-explorer__field .pf-filters__label { font-size: 11.5px; letter-spacing: 0.02em; }
.pf-explorer__field .pf-select { max-width: 240px; text-overflow: ellipsis; overflow: hidden; white-space: nowrap; }
.pf-explorer__actions { display: flex; align-items: center; gap: 14px; }
.pf-explorer__reset { font: 600 12.5px/1.3 var(--pf-font-ui); color: var(--pf-muted); }

/* Empty states / 404 */
.pf-empty { max-width: 640px; padding: 48px 0 24px; }
.pf-empty__title { margin: 0; font: 600 26px/1.3 var(--pf-font-ui); color: var(--pf-ink); }
.pf-empty__text { margin: 12px 0 20px; font: 400 15px/1.7 var(--pf-font-ui); color: var(--pf-ink-soft); }
.pf-empty__links { margin: 18px 0 0; font: 600 13px/1.8 var(--pf-font-ui); color: var(--pf-meta); }
.pf-404 { padding: 80px 0 100px; }
.pf-404__inner { max-width: 720px; }
.pf-404__title { margin: 16px 0 0; font: 700 46px/1.15 var(--pf-font-ui); color: var(--pf-ink); }
.pf-404__text { margin: 16px 0 24px; font: 400 16.5px/1.7 var(--pf-font-ui); color: var(--pf-ink-soft); }
.pf-404__links { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }

/* ---------- 9. Pages ---------- */
.pf-page__head { padding-top: 52px; }
.pf-page__head-inner { max-width: calc(860px + 2 * var(--pf-wrap-pad)); }
.pf-page__head-inner .pf-kicker { display: block; margin: 26px 0 14px; }
.pf-page__title { margin: 20px 0 0; font: 700 48px/1.1 var(--pf-font-ui); color: var(--pf-ink); letter-spacing: -0.01em; overflow-wrap: anywhere; }
.pf-page__head-inner .pf-kicker + .pf-page__title { margin-top: 0; }
.pf-page__title[lang="pa"] { font-family: var(--pf-font-head-pa); font-size: 42px; line-height: 1.2; letter-spacing: 0; }
.pf-page__lead { margin: 18px 0 0; max-width: 760px; font: 400 18px/1.7 var(--pf-font-ui); color: var(--pf-ink-soft); }
.pf-page__media { margin: 34px 0 0; }
.pf-page__body { max-width: 760px; padding: 34px 0 72px; }
.pf-page__body.pf-prose { font-size: 17px; line-height: 1.75; }
.pf-page__body.pf-prose h2 { font-size: 26px; margin: 34px 0 14px; }
.pf-page__body.pf-prose h3 { font-size: 21px; margin: 30px 0 12px; }

/* About */
.pf-about-hero { padding-top: 52px; }
.pf-about-hero__grid { display: grid; grid-template-columns: 1.15fr 1fr; gap: 60px; align-items: center; }
.pf-about-hero__kicker { display: block; margin: 26px 0 14px; }
.pf-about-hero__title { margin: 0; font: 700 44px/1.18 var(--pf-font-ui); color: var(--pf-ink); letter-spacing: -0.01em; }
.pf-about-hero__lead { margin: 20px 0 0; max-width: 600px; font: 400 17px/1.7 var(--pf-font-ui); color: var(--pf-ink-soft); }
.pf-about-hero__actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 26px; }
.pf-about-hero__media { margin: 0; background: var(--pf-parchment-deep); }
.pf-about-hero__media img { display: block; width: 100%; height: auto; filter: sepia(0.15) contrast(0.98); }
.pf-about-identity { margin-top: 72px; background: var(--pf-parchment-deep); padding: 56px 0; }
.pf-about-identity__panel { max-width: 820px; }
.pf-about-identity__title { margin: 0; font: 700 32px/1.3 var(--pf-font-head-pa); color: var(--pf-ink); }
.pf-about-identity__lead { margin: 18px 0 0; font: 600 18.5px/1.75 var(--pf-font-body-pa); color: var(--pf-ink); }
.pf-about-identity__body { margin-top: 22px; font-family: var(--pf-font-body-pa); }
.pf-about-identity__body p { margin: 0 0 22px; }
.pf-about-identity__body p:last-child { margin-bottom: 0; }

/* Contact */
.pf-contact__grid { display: grid; grid-template-columns: 1fr 1.1fr; gap: 72px; padding-top: 44px; }
.pf-contact__title { margin: 0; font: 600 28px/1.3 var(--pf-font-ui); color: var(--pf-ink); }
.pf-contact__lead { margin: 16px 0 0; font: 400 16px/1.7 var(--pf-font-ui); color: var(--pf-ink-soft); }
.pf-contact__email { margin-top: 28px; display: flex; flex-direction: column; gap: 6px; }
.pf-contact__address { font: 600 20px/1.3 var(--pf-font-ui); color: var(--pf-sepia); overflow-wrap: anywhere; }
.pf-contact__actions { margin-top: 22px; }
.pf-contact__channels { list-style: none; margin: 32px 0 0; padding: 22px 0 0; border-top: 1px solid var(--pf-hair-mid); display: flex; flex-wrap: wrap; gap: 8px; }
.pf-contact__form-panel { background: var(--pf-parchment-deep); padding: 36px; }
.pf-contact__form-title { margin: 0; font: 600 22px/1.3 var(--pf-font-ui); color: var(--pf-ink); }
.pf-contact__form-lead { margin: 8px 0 22px; font: 400 14px/1.6 var(--pf-font-ui); color: var(--pf-muted); }
.pf-contact-form p { margin: 0 0 16px; }
.pf-contact-form label { display: block; font: 600 13px/1.4 var(--pf-font-ui); color: var(--pf-ink); }
.pf-contact-form .wpcf7-form-control-wrap { display: block; margin-top: 6px; }
.pf-contact-form input[type="text"], .pf-contact-form input[type="email"], .pf-contact-form input[type="tel"], .pf-contact-form input[type="url"], .pf-contact-form input[type="number"], .pf-contact-form select, .pf-contact-form textarea {
	width: 100%; padding: 12px 14px; background: var(--pf-parchment); border: 1px solid var(--pf-hair-strong);
	font: 400 16px/1.5 var(--pf-font-ui); color: var(--pf-ink); -webkit-appearance: none; appearance: none; border-radius: 0;
}
.pf-contact-form textarea { min-height: 150px; resize: vertical; }
.pf-contact-form input:focus, .pf-contact-form textarea:focus, .pf-contact-form select:focus { outline: var(--pf-focus); outline-offset: 1px; border-color: var(--pf-sepia); }
.pf-contact-form input[type="submit"], .pf-contact-form button[type="submit"] {
	display: inline-flex; align-items: center; min-height: 44px; padding: 12px 24px; background: var(--pf-sepia); color: var(--pf-parchment);
	border: 1px solid var(--pf-sepia); font: 600 13.5px/1.2 var(--pf-font-ui); letter-spacing: 0.03em; cursor: pointer; border-radius: 0; -webkit-appearance: none; appearance: none;
}
.pf-contact-form input[type="submit"]:hover { background: var(--pf-sepia-dark); }
.pf-contact-form .wpcf7-spinner { margin: 0 0 0 12px; }
.pf-contact-form .wpcf7-not-valid-tip { display: block; margin-top: 6px; font: 400 12.5px/1.4 var(--pf-font-ui); color: #8a2c1d; }
.pf-contact-form .wpcf7-response-output { margin: 16px 0 0; padding: 12px 14px; border: 1px solid var(--pf-sepia); font: 400 14px/1.5 var(--pf-font-ui); color: var(--pf-ink); }
.pf-contact-form .wpcf7 form.sent .wpcf7-response-output { border-color: #4a6b3a; }
.pf-contact-form .wpcf7 form.invalid .wpcf7-response-output, .pf-contact-form .wpcf7 form.failed .wpcf7-response-output, .pf-contact-form .wpcf7 form.aborted .wpcf7-response-output, .pf-contact-form .wpcf7 form.spam .wpcf7-response-output, .pf-contact-form .wpcf7 form.unaccepted .wpcf7-response-output { border-color: #8a2c1d; }
.pf-contact-form__placeholder { font: 400 14px/1.6 var(--pf-font-ui); color: var(--pf-ink-soft); }
.pf-contact__cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 36px; padding-top: 26px; }
.pf-contact__card { border-top: 1px solid rgba(46, 36, 20, 0.3); padding-top: 18px; }
.pf-contact__card h3 { margin: 0; font: 600 18px/1.35 var(--pf-font-ui); color: var(--pf-ink); }
.pf-contact__card p { margin: 10px 0 0; font: 400 14px/1.65 var(--pf-font-ui); color: var(--pf-muted); }

/* Video page */
.pf-video-page .pf-page__head-inner { max-width: none; }
.pf-video-content { padding: 34px 0 72px; }
.pf-video-content .wp-block-heading, .pf-video-content h2, .pf-video-content h3 { font-size: 18px; margin: 30px 0 10px; }
.pf-video-content figure.wp-block-embed { margin: 0 0 32px; }
.pf-video-content.is-grid > *:not(.pf-video-tools):not(.pf-video-grid):not(.pf-video-empty) { max-width: 760px; }
.pf-video-tools { display: flex; justify-content: space-between; align-items: center; gap: 20px; flex-wrap: wrap; margin-top: 8px; padding-bottom: 14px; border-bottom: 1px solid rgba(46, 36, 20, 0.25); }
.pf-video-search { display: flex; align-items: center; gap: 10px; min-width: 300px; border-bottom: 1px solid rgba(46, 36, 20, 0.3); padding: 6px 4px; color: var(--pf-meta); }
.pf-video-search__input { flex: 1; border: 0; background: transparent; font: italic 400 14px/1.3 var(--pf-font-ui); color: var(--pf-ink); }
.pf-video-search__input:focus { outline: none; }
.pf-video-search__input::-webkit-search-cancel-button { -webkit-appearance: none; }
.pf-video-count { margin: 0; font: italic 400 12.5px/1.4 var(--pf-font-ui); color: var(--pf-meta); }
.pf-video-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 36px 32px; padding-top: 30px; }
.pf-video-card { display: flex; flex-direction: column; min-width: 0; }
.pf-ytlite { position: relative; aspect-ratio: 16 / 9; background: var(--pf-parchment-deep); overflow: hidden; }
.pf-ytlite__play { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; padding: 0; background-color: var(--pf-parchment-deep); background-size: cover; background-position: center; cursor: pointer; filter: sepia(0.12); }
.pf-ytlite__play::after { content: ""; position: absolute; inset: 0; background: rgba(36, 31, 24, 0.22); transition: background-color 0.15s ease; }
.pf-ytlite__play:hover::after { background: rgba(36, 31, 24, 0.32); }
.pf-ytlite__icon { position: absolute; left: 50%; top: 50%; width: 56px; height: 56px; margin: -28px 0 0 -28px; border-radius: 50%; background: var(--pf-sepia); z-index: 1; }
.pf-ytlite__icon::before { content: ""; position: absolute; left: 22px; top: 17px; border-style: solid; border-width: 11px 0 11px 18px; border-color: transparent transparent transparent var(--pf-parchment); }
.pf-ytlite.is-playing .pf-ytlite__play { display: none; }
.pf-ytlite__iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.pf-video-card__title { margin: 14px 0 0; font: 600 15.5px/1.45 var(--pf-font-ui); color: var(--pf-ink); overflow-wrap: anywhere; }
.pf-video-card__title[lang="pa"] { font-family: var(--pf-font-head-pa); }
.pf-video-card__title--fallback { font-weight: 400; font-style: italic; color: var(--pf-muted); }
.pf-video-empty { padding: 40px 0; font: italic 400 15px/1.5 var(--pf-font-ui); color: var(--pf-muted); }

/* GTranslate: hide Google's banner frame if it ever appears */
.skiptranslate iframe.goog-te-banner-frame { display: none; }

/* ---------- 10. Responsive ---------- */
@media (max-width: 1199px) {
	:root { --pf-wrap-pad: 40px; }
	.pf-hero__grid { grid-template-columns: minmax(0, 1fr) 300px; gap: 40px; }
	.pf-hero__title { font-size: 36px; }
	.pf-hero__title[lang="pa"] { font-size: 40px; }
	.pf-article__grid { grid-template-columns: minmax(0, 1fr); gap: 48px; }
	.pf-article__column { max-width: 760px; }
	.pf-rail__sticky { position: static; display: grid; grid-template-columns: 1fr 1fr; gap: 36px 48px; align-items: start; }
	.pf-rail__block, .pf-rail__block:first-child { margin-top: 0; }
	.pf-rail__toc { display: none; }
	.pf-featured__inner { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 36px; padding: 32px; }
	.pf-explorer { grid-template-columns: 1fr; gap: 18px; }
	.pf-collection__title { font-size: 48px; }
	.pf-mission__grid, .pf-support, .pf-collection__foot-grid { gap: 48px; }
	.pf-mission__support, .pf-support--collection { padding-left: 32px; }
}

@media (max-width: 1023px) {
	/* Mobile header — sticky, compact, centred brand lockup. */
	html { scroll-padding-top: 96px; }
	.pf-header { position: sticky; top: 0; z-index: 50; box-shadow: 0 8px 20px -14px rgba(36, 31, 24, 0.45); }
	.pf-header__utility { padding: 6px 0; font-size: 11px; align-items: center; }
	.pf-header__dateline { display: none; }
	.pf-header__utility-end { width: 100%; justify-content: center; }
	.pf-header__brandrow { padding: 5px 0; gap: 8px; border-bottom: 2px solid var(--pf-ink); box-shadow: 0 3px 0 var(--pf-parchment), 0 4px 0 var(--pf-hair-strong); }
	.pf-header__menu-toggle, .pf-header__search-toggle { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; flex: none; background: none; border: 0; padding: 0; color: var(--pf-ink); cursor: pointer; }
	.pf-header__menu-toggle { margin-left: -10px; }
	.pf-header__search-toggle { margin-right: -10px; }
	.pf-brand { flex: 1; text-align: center; }
	/* Align the mark to the wordmark line, not the two-line block, so the
	   logo and "Punjab File" read as a single lockup. */
	.pf-brand__link { display: inline-flex; align-items: flex-start; gap: 10px; }
	.pf-brand__logo { width: 28px; height: 28px; margin-top: -2px; }
	.pf-brand__name { font-size: 26px; }
	.pf-brand__pa { display: none; }
	.pf-brand__tag { font-size: 8px; letter-spacing: 0.3em; margin-top: 4px; }
	.pf-brand__tag.pf-brand__tag--long { display: none; }
	.pf-brand__tag.pf-brand__tag--short { display: block; }
	.pf-header__tools, .pf-nav { display: none; }
	.pf-header__mobile-search { display: block; padding: 12px 0 4px; }
	.pf-search-form--mobile { display: flex; align-items: center; gap: 10px; border: 1px solid var(--pf-hair-strong); padding: 4px 6px 4px 12px; background: var(--pf-parchment); }
	.pf-search-form--mobile .pf-search-form__input { font-style: normal; font-size: 15px; }

	.pf-section { padding-top: 48px; }
	.pf-grid--4, .pf-grid--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 28px; }
	.pf-hero { padding-top: 28px; }
	.pf-hero__grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
	.pf-topics__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.pf-era__scroller, .pf-era--compact .pf-era__scroller { margin-left: calc(-1 * var(--pf-wrap-pad)); margin-right: calc(-1 * var(--pf-wrap-pad)); overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; scroll-snap-type: x proximity; }
	.pf-era__scroller::-webkit-scrollbar { display: none; }
	.pf-era__list, .pf-era--compact .pf-era__list { width: max-content; padding: 0 var(--pf-wrap-pad); }
	.pf-era__item, .pf-era--compact .pf-era__item, .pf-era--compact .pf-era__item.is-active { flex: none; width: 158px; scroll-snap-align: start; }
	.pf-era__item--strong, .pf-era--compact .pf-era__item--strong { width: 172px; }
	.pf-era__link { min-height: 0; padding: 16px 15px 14px; }
	.pf-era__year { font-size: 20px; }
	.pf-era__desc { font-size: 11px; margin-top: 6px; }
	.pf-era__count { font-size: 10px; margin-top: 8px; }
	.pf-era__hint { display: block; }
	.pf-era__scroller.is-scrolled + .pf-era__hint { visibility: hidden; }
	.pf-mission { padding: 48px 0 56px; }
	.pf-mission__grid, .pf-support, .pf-collection__foot-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
	.pf-mission__support, .pf-support--collection { border-left: 0; padding-left: 0; border-top: 1px solid rgba(46, 36, 20, 0.16); padding-top: 28px; }
	.pf-featured__inner { grid-template-columns: minmax(0, 1fr); padding: 24px; gap: 22px; }
	.pf-collection__head-grid { flex-wrap: wrap; }
	.pf-collection__count { text-align: left; padding-left: 0; }
	.pf-contact__grid { grid-template-columns: minmax(0, 1fr); gap: 40px; }
	.pf-contact__cards { grid-template-columns: minmax(0, 1fr); gap: 24px; }
	.pf-about-hero__grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
	.pf-about-hero__media { max-width: 640px; }
	.pf-video-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.pf-rail__sticky { grid-template-columns: minmax(0, 1fr); }
	.pf-article__title { font-size: 38px; }
	.pf-article__title[lang="pa"] { font-size: 42px; }
	.pf-collection__title { font-size: 42px; }
	.pf-collection__title[lang="pa"] { font-size: 38px; }
}

@media (max-width: 767px) {
	:root { --pf-wrap-pad: 22px; }
	body { font-size: 15px; }
	.pf-section { padding-top: 30px; }
	.pf-section__title { font-size: 20px; }
	.pf-section__note { display: none; }
	.pf-section__more { font-size: 12px; }
	.pf-grid, .pf-grid--3, .pf-grid--4 { grid-template-columns: minmax(0, 1fr); gap: 22px; padding-top: 20px; }
	.pf-latest__grid > .pf-record:nth-child(n+4) { display: none; }
	.pf-hero { padding-top: 24px; }
	.pf-hero__labels { margin: 18px 0 9px; }
	.pf-hero__flag { display: none; }
	.pf-hero__title { font-size: 26px; }
	.pf-hero__title[lang="pa"] { font-size: 27px; line-height: 1.32; }
	.pf-hero__standfirst { margin-top: 11px; font-size: 14.5px; }
	.pf-hero__foot { justify-content: space-between; margin-top: 12px; }
	.pf-hero__byline { font-size: 11.5px; }
	.pf-hero__byline .pf-byline__reading { display: none; }
	.pf-hero__byline .pf-byline__reading + .pf-byline__sep, .pf-hero__byline .pf-byline__sep:last-of-type { display: none; }
	.pf-hero__read { font-size: 12px; }
	.pf-record--row { gap: 14px; padding: 16px 0; }
	.pf-record--row .pf-record__media { width: 74px; }
	.pf-record--row .pf-record__title { font-size: 14.5px; }
	.pf-record--row .pf-record__meta { font-size: 11px; margin-top: 5px; }
	.pf-rank { margin-top: 8px; }
	.pf-record__title, .pf-record__title[lang="pa"] { font-size: 16px; line-height: 1.44; }
	.pf-record__body { padding-top: 13px; }
	.pf-topics .pf-section__head { border-bottom: 1px solid rgba(46, 36, 20, 0.25); padding-bottom: 10px; }
	.pf-topics__all { display: inline; }
	.pf-topics__grid { gap: 20px; padding-top: 18px; }
	.pf-topic { padding-top: 12px; }
	.pf-topic__name { margin-top: 0; font-size: 15px; }
	.pf-topic__desc { display: none; }
	.pf-topic__link { display: inline-block; margin-top: 6px; font-size: 11px; }
	.pf-showcase__title { font-size: 22px; margin-top: 6px; }
	.pf-showcase__pa { font-size: 15px; }
	.pf-showcase__desc { font-size: 13.5px; margin-top: 12px; }
	.pf-showcase--deep { margin-top: 28px; padding: 26px 0 24px; }
	.pf-video-home__grid { grid-template-columns: minmax(0, 1fr); gap: 26px; padding-top: 20px; }
	.pf-video-home__title { font-size: 16px; }
	.pf-era, .pf-era--compact { margin-top: 28px; padding: 26px 0 24px; }
	.pf-era .pf-section__title, .pf-era--compact .pf-section__title { font-size: 20px; }
	.pf-era__scroller, .pf-era--compact .pf-era__scroller { margin-top: 16px; }
	.pf-era__item, .pf-era--compact .pf-era__item, .pf-era--compact .pf-era__item.is-active { width: 124px; }
	.pf-era__item--strong, .pf-era--compact .pf-era__item--strong { width: 136px; }
	.pf-mission { padding: 28px 0 32px; }
	.pf-mission__title { font-size: 21px; line-height: 1.38; }
	.pf-mission__lead { margin-top: 10px; font-size: 13px; }
	.pf-mission__support { padding-top: 20px; }
	.pf-mission__support-text { font-size: 13px; margin: 10px 0 14px; }
	.pf-support__actions { gap: 10px; }
	.pf-btn { padding: 12px 18px; font-size: 12.5px; }
	.pf-support__title { font-size: 19px; line-height: 1.4; }
	.pf-support__lead { font-size: 14px; margin-top: 10px; }
	.pf-article__support, .pf-about-support, .pf-contact__support { padding: 28px 0 32px; }
	.pf-footer { padding: 22px 0 26px; }
	.pf-footer__row { flex-direction: column; align-items: center; text-align: center; gap: 12px; }
	.pf-footer__legal-links { justify-content: center; }
	.pf-footer__legal-links a { padding: 6px 0; display: inline-block; }
	.pf-footer__legal-links li + li::before { margin: 0 6px; }

	/* Article */
	.pf-article__head { padding-top: 24px; }
	.pf-article__kicker { margin: 16px 0 10px; }
	.pf-article__title { font-size: 27px; line-height: 1.25; }
	.pf-article__title[lang="pa"] { font-size: 29px; line-height: 1.32; }
	.pf-article__standfirst { margin-top: 12px; font-size: 15px; line-height: 1.7; }
	.pf-article__metarow { margin-top: 16px; padding-top: 14px; gap: 12px; }
	.pf-article__meta { font-size: 12px; }
	.pf-article__share { width: 100%; }
	.pf-plate { margin-top: 20px; }
	.pf-plate__caption { font-size: 11.5px; gap: 6px 16px; padding: 9px 0 10px; }
	.pf-plate__source { margin-left: 0; white-space: normal; }
	.pf-article__grid { padding-top: 22px; gap: 32px; }
	.pf-prose { font-size: 15.5px; }
	.pf-prose p, .pf-prose ul, .pf-prose ol, .pf-prose table { margin-bottom: 22px; }
	.pf-prose h2 { font-size: 21px; margin: 30px 0 12px; }
	.pf-prose h3 { font-size: 18.5px; margin: 26px 0 10px; }
	.pf-prose blockquote { margin: 26px 0; padding-left: 20px; font-size: 17px; }
	.pf-prose figure { margin: 26px 0; }
	.pf-prose table { font-size: 14px; }
	.pf-prose th, .pf-prose td { padding: 8px 10px; }
	.pf-context { margin-top: 26px; padding: 22px; }
	.pf-context__grid { grid-template-columns: minmax(0, 1fr); gap: 14px; margin-top: 14px; }
	.pf-context__grid dd { font-size: 14px; }
	.pf-sources { margin-top: 30px; padding-top: 16px; }
	.pf-sources__title { font-size: 18px; }
	.pf-sources__item { font-size: 12.5px; gap: 12px; padding: 10px 0; }
	.pf-transparency { margin-top: 14px; padding: 12px 0; }
	.pf-transparency__note, .pf-transparency__report { font-size: 11px; }
	.pf-related .pf-grid--3 { gap: 0; padding-top: 0; display: flex; flex-direction: column; }
	.pf-related .pf-record--card { flex-direction: row; gap: 14px; padding: 16px 0; border-bottom: 1px solid var(--pf-hair-soft); }
	.pf-related .pf-record--card:last-child { border-bottom: 0; }
	.pf-related .pf-record--card .pf-record__media { width: 74px; flex: none; }
	.pf-related .pf-record--card .pf-media { aspect-ratio: 1 / 1; }
	.pf-related .pf-record--card .pf-record__body { padding-top: 0; }
	.pf-related .pf-record--card .pf-record__labels, .pf-related .pf-record--card .pf-record__excerpt { display: none; }
	.pf-related .pf-record--card .pf-record__title { font-size: 14.5px; line-height: 1.42; }
	.pf-related .pf-record--card .pf-record__meta { font-size: 11px; margin-top: 5px; }
	.pf-related__explore { margin-top: 6px; }
	.pf-rail__sticky { gap: 28px; }
	.pf-rail__block { margin-top: 0; }

	/* Collections */
	.pf-collection__head { padding-top: 24px; }
	.pf-collection__head-grid { flex-direction: column; align-items: stretch; gap: 12px; }
	.pf-collection__title { margin-top: 12px; font-size: 34px; line-height: 1.1; }
	.pf-collection__title[lang="pa"] { font-size: 30px; }
	.pf-collection__desc { margin-top: 12px; font-size: 13.5px; line-height: 1.65; }
	.pf-collection__count { text-align: left; padding-left: 0; display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; }
	.pf-collection__num { font-size: 26px; }
	.pf-collection__num-label { margin-top: 0; font-size: 8.5px; letter-spacing: 0.18em; }
	.pf-collection__note { margin-top: 0; width: 100%; }
	.pf-featured { margin-top: 22px; }
	.pf-featured__inner { padding: 20px; gap: 14px; }
	.pf-featured__title { margin-top: 8px; font-size: 20px; line-height: 1.36; }
	.pf-featured__title[lang="pa"] { font-size: 21px; }
	.pf-featured__excerpt { display: none; }
	.pf-featured__foot { margin-top: 10px; justify-content: space-between; }
	.pf-filters { padding-top: 24px; border-bottom: 0; gap: 12px; }
	.pf-filters__tabs { width: 100%; margin: 0 calc(-1 * var(--pf-wrap-pad)); overflow-x: auto; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
	.pf-filters__tabs::-webkit-scrollbar { display: none; }
	.pf-tabs { flex-wrap: nowrap; width: max-content; gap: 8px; padding: 0 var(--pf-wrap-pad); }
	.pf-tab { border: 1px solid rgba(46, 36, 20, 0.3); padding: 9px 15px; margin-bottom: 0; font-size: 12px; }
	.pf-tab.is-active { border-color: var(--pf-ink); }
	.pf-filters__controls { width: 100%; justify-content: space-between; padding-bottom: 0; font-size: 12px; gap: 16px; }
	.pf-records__count { margin-top: 12px; font-size: 11.5px; }
	.pf-records__grid { padding-top: 20px; gap: 24px; }
	.pf-pagination { margin-top: 26px; }
	.pf-pagination__list, .pf-pagination__status { display: none; }
	.pf-pagination__more { display: block; }
	.pf-pagination__more .pf-btn { padding: 13px 28px; font-size: 13px; }
	.pf-collection__foot { padding: 26px 0 32px; }
	.pf-related-collections__title { font-size: 17px; padding-bottom: 10px; }
	.pf-related-collections__list a { padding: 13px 0; }
	.pf-related-collections__name { font-size: 14px; }
	.pf-related-collections__count { font-size: 11.5px; }
	.pf-explorer { padding: 24px 0 14px; gap: 14px; }
	.pf-explorer__selects { gap: 14px 20px; }
	.pf-explorer__field .pf-select { max-width: 100%; }
	.pf-empty { padding: 32px 0 16px; }
	.pf-empty__title { font-size: 21px; }
	.pf-404 { padding: 40px 0 56px; }
	.pf-404__title { font-size: 32px; }
	.pf-404__text { font-size: 15px; }

	/* Pages */
	.pf-page__head { padding-top: 24px; }
	.pf-page__head-inner .pf-kicker, .pf-about-hero__kicker { margin: 16px 0 10px; }
	.pf-page__title { margin-top: 12px; font-size: 30px; }
	.pf-page__title[lang="pa"] { font-size: 28px; }
	.pf-page__lead { font-size: 16px; margin-top: 12px; }
	.pf-page__body { padding: 22px 0 40px; }
	.pf-page__body.pf-prose { font-size: 16px; }
	.pf-about-hero { padding-top: 24px; }
	.pf-about-hero__title { font-size: 28px; line-height: 1.25; }
	.pf-about-hero__lead { font-size: 15.5px; margin-top: 14px; }
	.pf-about-identity { margin-top: 32px; padding: 30px 0; }
	.pf-about-identity__title { font-size: 24px; }
	.pf-about-identity__lead { font-size: 16.5px; }
	.pf-contact__grid { padding-top: 24px; gap: 28px; }
	.pf-contact__title { font-size: 22px; }
	.pf-contact__lead { font-size: 15px; }
	.pf-contact__address { font-size: 17px; }
	.pf-contact__form-panel { padding: 22px; }
	.pf-video-content { padding: 22px 0 40px; }
	.pf-video-search { min-width: 0; width: 100%; }
	.pf-video-grid { grid-template-columns: minmax(0, 1fr); gap: 28px; padding-top: 20px; }
	.pf-comments { padding: 16px 0 32px; }
}

@media (max-width: 479px) {
	.pf-brand__name { font-size: 23px; }
	.pf-hero__title { font-size: 24px; }
	.pf-hero__title[lang="pa"] { font-size: 25px; }
	.pf-article__title { font-size: 25px; }
	.pf-article__title[lang="pa"] { font-size: 27px; }
	.pf-collection__title { font-size: 30px; }
	.pf-support__actions .pf-btn { flex: 1 1 auto; }
	.pf-mobile-menu__panel { width: 100vw; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { transition: none !important; animation: none !important; }
}

/* ---------- 11. Gurmukhi readability pass (sizes only) ----------
   Mukta Mahee and Anek Gurmukhi render optically smaller than Source Serif 4 at
   the same pixel size, so Gurmukhi text takes a small size lift with slightly
   opener leading, and the smallest metadata is raised to a comfortable reading
   size. Font sizes and line-heights only: no layout, spacing, colour, family or
   component changes. Mobile is the priority. */
html[lang^="pa"] .pf-prose, .pf-prose[lang="pa"] { font-size: 19px; line-height: 1.78; }
html[lang^="pa"] .pf-prose h2 { font-size: 28px; }
html[lang^="pa"] .pf-prose h3 { font-size: 23px; }
.pf-article__standfirst[lang="pa"] { font-size: 20px; line-height: 1.72; }
.pf-hero__standfirst[lang="pa"] { font-size: 18px; line-height: 1.7; }
.pf-record__title { font-size: 17px; }
.pf-record__title[lang="pa"] { font-size: 18px; }
.pf-record__excerpt[lang="pa"] { font-size: 15px; line-height: 1.7; }
.pf-rank__title[lang="pa"] { font-size: 16px; }
.pf-hero__title[lang="pa"] { font-size: 49px; }
.pf-article__title[lang="pa"] { font-size: 57px; }
.pf-collection__title[lang="pa"] { font-size: 51px; }
.pf-featured__title[lang="pa"] { font-size: 38px; }
.pf-page__title[lang="pa"] { font-size: 44px; }
.pf-kicker { font-size: 12px; }
.pf-record__kicker { font-size: 11.5px; }

@media (max-width: 1199px) {
	.pf-hero__title[lang="pa"] { font-size: 42px; }
}

@media (max-width: 1023px) {
	.pf-article__title[lang="pa"] { font-size: 44px; }
	.pf-collection__title[lang="pa"] { font-size: 40px; }
	.pf-era__desc { font-size: 12px; }
	.pf-era__count { font-size: 11px; }
}

@media (max-width: 767px) {
	html[lang^="pa"] .pf-prose, .pf-prose[lang="pa"] { font-size: 18.5px; line-height: 1.78; }
	html[lang^="pa"] .pf-prose h2 { font-size: 23px; }
	html[lang^="pa"] .pf-prose h3 { font-size: 20px; }
	.pf-section__title, .pf-era .pf-section__title, .pf-era--compact .pf-section__title { font-size: 21px; }
	.pf-article__standfirst[lang="pa"] { font-size: 16.5px; line-height: 1.74; }
	.pf-hero__standfirst[lang="pa"] { font-size: 16px; line-height: 1.7; }
	.pf-hero__title[lang="pa"] { font-size: 29px; }
	.pf-article__title[lang="pa"] { font-size: 31px; }
	.pf-collection__title[lang="pa"] { font-size: 32px; }
	.pf-featured__title[lang="pa"] { font-size: 22.5px; }
	.pf-page__title[lang="pa"] { font-size: 30px; }
	.pf-collection__desc { font-size: 14.5px; }
	.pf-record__title, .pf-record__title[lang="pa"] { font-size: 17px; }
	.pf-record__title[lang="pa"] { font-size: 17.5px; }
	.pf-record--row .pf-record__title, .pf-related .pf-record--card .pf-record__title { font-size: 15.5px; }
	.pf-record__meta { font-size: 13px; }
	.pf-record--row .pf-record__meta, .pf-related .pf-record--card .pf-record__meta { font-size: 12.5px; }
	.pf-article__meta { font-size: 13px; }
	.pf-hero__byline { font-size: 12px; }
	.pf-rank__meta { font-size: 12.5px; }
	.pf-plate__caption { font-size: 12.5px; }
	.pf-records__count { font-size: 12.5px; }
	.pf-sources__item { font-size: 13.5px; }
	.pf-transparency__note, .pf-transparency__report { font-size: 12.5px; }
}

@media (max-width: 479px) {
	.pf-hero__title[lang="pa"] { font-size: 27px; }
	.pf-article__title[lang="pa"] { font-size: 29px; }
}

@media print {
	.pf-header, .pf-footer, .pf-mobile-menu, .pf-share, .pf-article__support, .pf-related, .pf-rail__explore { display: none !important; }
	body { background: #fff; color: #000; }
	.pf-article__grid { display: block; }
}
