/* ============================================================
   FAR EAST FILMS: People page styles
   Post type: person_post_type
   ============================================================ */


/* ============================================================
   1. Page reset / remove default blog furniture
   ============================================================ */

body.single-person_post_type .abh_box,
body.single-person_post_type .widget-area,
body.single-person_post_type .sidebar,
body.single-person_post_type #secondary {
	display: none !important;
}

body.single-person_post_type article.single-person_post_type,
body.single-person_post_type article.single-person {
	display: block;
	width: auto;
	max-width: none;
	margin: 0;
	transform: none;
}


/* ============================================================
   2. Main page width / shared layout alignment
   ============================================================ */

.single-person .person-page-inner {
	width: 980px;
	max-width: 100%;
	margin: 0 auto;
}

.single-person .person-header,
.single-person .person-hero,
.single-person .person-layout {
	width: 910px;
	max-width: 100%;
	margin-left: 35px;
}


/* ============================================================
   3. Page header / title
   ============================================================ */

.single-person .person-header {
	margin-top: -14px;
	margin-bottom: 8px;
}

.single-person .person-title {
	margin: 0 0 8px;
	line-height: 1.1;
}


/* ============================================================
   4. Hero layout: portrait + gallery/media panel
   ============================================================ */

.single-person .person-hero {
	display: grid;
	grid-template-columns: 240px 640px;
	gap: 40px;
	align-items: start;
	margin-bottom: 40px;
}

.single-person .person-photo-column,
.single-person .person-media-column {
	margin: 0 !important;
	padding: 0 !important;
}

.single-person .person-photo-column {
	width: 240px;
	display: flex;
	justify-content: center;
}

.single-person .person-media-column-mobile {
	display: none;
}


/* ============================================================
   5. Portrait / profile image
   ============================================================ */

.single-person .person-photo {
	display: flex;
	justify-content: center;
	width: 240px;
	height: 360px;
	box-shadow: 0 3px 8px rgba(0,0,0,.07);
	overflow: hidden;
	background: #f1f1f1;
}

.single-person .person-photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}


/* ============================================================
   6. Gallery/media placeholder panel
   ============================================================ */

.single-person .person-media-viewer {
	width: 640px;
	height: 360px;
	background: #f7f3ef;
	overflow: hidden;
}

.single-person .person-media-empty {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #f7f3ef;
}

.single-person .person-media-empty img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
}


/* ============================================================
   7. Lower layout: sidebar + main content column
   ============================================================ */

.single-person .person-lower-layout {
	display: grid;
	grid-template-columns: 240px minmax(0, 1fr);
	gap: 40px;
	margin-top: 30px;
}


/* ============================================================
   8. Quick Facts sidebar
   ============================================================ */

.single-person .person-facts-panel {
	border-top: 1px solid rgba(0,0,0,.08);
	padding-top: 10px;
}

.single-person .person-meta-row {
	display: grid;
	grid-template-columns: 115px 1fr;
	column-gap: 14px;
	align-items: start;
	margin: 0 0 14px !important;
	padding: 0 0 14px !important;
	border-bottom: 1px solid rgba(0,0,0,.06);
	color: #a7a7a7;
}

.single-person .person-meta-row strong {
	display: block;
	margin: 0 !important;
	padding: 0 0 0 2px !important;
	font-weight: 600;
	font-size: .75em;
	line-height: 1.2;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: #B4A158;
}

.single-person .person-meta-row span {
	display: block;
	margin: 0 !important;
	padding: 0 !important;
	font-size: .85em;
	line-height: 1.35;
	color: #a7a7a7;
}


/* ============================================================
   9. Main content section headings
   ============================================================ */

.single-person .person-main-column h2 {
	margin: 0 0 12px;
	font-size: 18px;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: #BE3A26;
	font-weight: 700;
}

.single-person .person-main-column h2::after {
	content: ":";
}

.single-person .person-biography,
.single-person .person-fef-coverage,
.single-person .person-filmography {
	margin-bottom: 28px;
}

.single-person .person-biography p {
	max-width: 720px;
}

.single-person .person-biography h2 {
	margin-bottom: 4px;
}

.single-person .person-biography > p:first-of-type {
	margin-top: 0;
}

.single-person .person-biography .person-biography-credit {
	display: block;
	max-width: 720px;
	margin: -10px 0 14px !important;
	padding: 0 !important;
	font-size: 10px;
	line-height: 1.2;
	text-transform: uppercase;
	letter-spacing: .12em;
	color: rgba(0,0,0,.35);
	text-align: right;
}



/* ============================================================
   10. Far East Films Coverage: role rows
   ============================================================ */

.single-person .person-role-row {
	margin-bottom: 34px;
}

.single-person .person-role-row-header h3 {
	margin: 0 0 12px;
	font-size: 14px;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #B4A158;
	font-weight: 700;
}

.single-person .person-role-carousel-wrap {
	position: relative;
	max-width: 100%;
	overflow: visible;
}

.single-person .person-role-carousel {
	display: flex;
	gap: 18px;
	overflow-x: auto;
	scroll-behavior: smooth;
	scrollbar-width: none;
	padding: 0 0 4px;
}

.single-person .person-role-carousel::-webkit-scrollbar {
	display: none;
}


/* ============================================================
   11. Far East Films Coverage: review poster cards
   ============================================================ */

.single-person .person-review-card {
	flex: 0 0 144px;
	display: block;
	text-decoration: none;
	color: #404040;
}

.single-person .person-review-poster {
	width: 144px;
	aspect-ratio: 2 / 3;
	overflow: hidden;
	background: #f1f1f1;
	box-shadow: 0 3px 8px rgba(0,0,0,.07);
}

.single-person .person-review-poster img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.single-person .person-review-title {
	display: block;
	margin-top: 8px;
	font-size: 14px;
	line-height: 1.3;
	font-weight: 600;
	color: #333;
}

.single-person .person-review-year {
	display: block;
	margin-top: 2px;
	font-size: 12px;
	line-height: 1.3;
	color: rgba(0,0,0,.55);
}

.single-person .person-review-card:hover .person-review-title {
	color: #BE3A26;
	text-decoration: underline;
	text-underline-offset: 3px;
}


/* ============================================================
   11a. Far East Films Coverage: Feature and Interview cards
   Matches the Film DB "On Far East Films" card design.
   ============================================================ */

.single-person .person-featured-reviews {
    margin-bottom: 14px;
}

.single-person .person-editorial-content {
    margin-top: 0;
}

.single-person .person-editorial-content h3 {
	margin: 0 0 12px;
	font-size: 14px;
	line-height: 1.3;
	letter-spacing: .12em;
	text-transform: uppercase;
	color: #B4A158;
	font-weight: 700;
}

.single-person .person-fef-cards {
	display: grid;
	gap: 12px;
}

.single-person .person-fef-card {
	display: block;
	box-sizing: border-box;
	width: 100%;
	padding: 22px 24px;
	border: 1px solid #d8d2cd;
	border-left: 4px solid #ddd;
	border-radius: 10px;
	background: #faf8f6;
	color: inherit;
	text-decoration: none;
	transition: background-color .2s ease, border-color .2s ease;
}

.single-person .person-fef-card:hover {
	background: #f7f3ef;
	border-color: #bbb;
	filter: none;
}

.single-person .person-fef-type {
	display: block;
	margin-bottom: 6px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase;
	color: #b08a2a;
}

.single-person .person-fef-card strong {
	display: block;
	margin: 0 0 6px;
	font-size: 19px;
	line-height: 1.3;
	color: #333;
}

.single-person .person-fef-card em,
.single-person .person-fef-quote {
	display: block;
	margin-top: 8px;
	font-style: normal;
	color: #444;
}

.single-person .person-fef-readmore {
	display: inline-block;
	margin-top: 10px;
	font-size: .8rem;
	font-weight: 600;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #c6452d;
	text-align: left;
}

.single-person .person-fef-card-interview {
	border-left-color: #00897B;
	background: #FBFDFC;
}

.single-person .person-fef-card-interview .person-fef-type,
.single-person .person-fef-card-interview .person-fef-readmore {
	color: #00897B;
}

.single-person .person-fef-card-feature {
	border-left-color: #2E7D32;
	background: #FBFDFB;
}

.single-person .person-fef-card-feature .person-fef-type,
.single-person .person-fef-card-feature .person-fef-readmore {
	color: #2E7D32;
}

.single-person .person-fef-card-news {
	border-left-color: #1565C0;
	background: #FBFCFF;
}

.single-person .person-fef-card-news .person-fef-type,
.single-person .person-fef-card-news .person-fef-readmore {
	color: #1565C0;
}


/* ============================================================
   11b. Far East Films Coverage: grouped-card pager
   Matches the Film DB "On Far East Films" behaviour.
   ============================================================ */

.single-person .person-fef-card-carousel {
	position: relative;
	padding-right: 88px;
}

.single-person .person-fef-card-carousel .person-fef-card-slide {
	display: none !important;
	text-decoration: none !important;
	color: inherit !important;
}

.single-person .person-fef-card-carousel .person-fef-card-slide.is-active {
	display: block !important;
}

.single-person .person-fef-card-carousel .person-fef-card-slide strong,
.single-person .person-fef-card-carousel .person-fef-card-slide em,
.single-person .person-fef-card-carousel .person-fef-card-slide span {
	text-decoration: none !important;
}

.single-person .person-fef-carousel-controls {
	position: absolute;
	top: 18px;
	right: 18px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	gap: 5px;
	font-size: 12px;
	font-weight: 700;
	line-height: 1;
	color: rgba(0,0,0,.55);
}

.single-person .person-fef-carousel-controls button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 22px;
	padding: 0;
	border: 1px solid rgba(0,0,0,.18);
	border-radius: 4px;
	background: rgba(255,255,255,.8);
	color: rgba(0,0,0,.55);
	font-size: 15px;
	line-height: 1;
	cursor: pointer;
	box-shadow: none;
}

.single-person .person-fef-carousel-controls button:hover {
	border-color: rgba(0,0,0,.32);
	color: #BE3A26;
	background: #fff;
}

.single-person .person-fef-carousel-controls button:focus-visible {
	outline: 2px solid #BE3A26;
	outline-offset: 2px;
}

.single-person .person-fef-carousel-count {
	min-width: 34px;
	text-align: center;
}

@media (max-width: 640px) {
	.single-person .person-fef-card {
		padding: 18px 20px;
	}
}

/* ============================================================
   12. Far East Films Coverage: carousel arrows
   ============================================================ */

.single-person .person-role-arrow {
	position: absolute;
	top: 86px;
	z-index: 5;
	width: 28px;
	height: 44px;
	border: 0;
	padding: 0;
	background: rgba(30,30,30,.55);
	color: #fff;
	font-size: 30px;
	line-height: 40px;
	text-align: center;
	border-radius: 3px;
	cursor: pointer;
	box-shadow: none;
	transition: background .2s ease, opacity .2s ease;
}

.single-person .person-role-prev {
	left: -34px;
}

.single-person .person-role-next {
	right: -34px;
}

.single-person .person-role-arrow:hover {
	background: rgba(190,58,38,.85);
}


/* ============================================================
   13. Responsive layout
   ============================================================ */

@media (max-width: 980px) {
	.single-person .person-page-inner,
	.single-person .person-header,
	.single-person .person-hero,
	.single-person .person-layout {
		width: 100%;
		max-width: 640px;
		margin-left: 0;
	}

	.single-person .person-header {
		margin-top: 0 !important;
		padding-top: 3px;
		overflow: visible;
	}

	.single-person .person-hero,
	.single-person .person-lower-layout {
		display: block;
	}

	.single-person .person-photo-column {
		max-width: 240px;
		margin-bottom: 24px !important;
	}

	.single-person .person-media-viewer {
		width: 100%;
		height: auto;
		aspect-ratio: 16/9;
	}

	.single-person .person-sidebar {
		margin-bottom: 40px;
	}
}

.single-person .person-mobile-gallery-heading {
	display: none;
}

@media (max-width: 640px) {
	.single-person .person-header {
		margin-top: 0 !important;
		padding-top: 3px;
		overflow: visible;
	}

	.single-person .person-title {
		line-height: 1.12;
		padding-top: 1px;
		overflow: visible;
	}

	.single-person .person-hero {
		display: flex;
		flex-direction: column;
		align-items: stretch;
	}

	.single-person .person-photo-column {
		order: 1;
		width: 100%;
		max-width: none;
		justify-content: center;
		margin-bottom: 0 !important;
	}

	.single-person .person-lower-layout {
		margin-top: 24px;
	}

	.single-person .person-media-column-desktop {
		display: none;
	}

	.single-person .person-media-column-mobile {
		display: block;
		width: 100%;
		max-width: none;
		margin-bottom: 32px !important;
	}

	.single-person .person-review-card {
		flex-basis: 130px;
	}

	.single-person .person-review-poster {
		width: 130px;
	}

	.single-person .person-role-arrow {
		display: flex;
		align-items: center;
		justify-content: center;
		top: 86px;
		width: 30px;
		height: 42px;
		font-size: 30px;
		line-height: 1;
		background: rgba(30,30,30,.55);
		color: #fff;
		text-shadow: none;
		border-radius: 3px;
	}

	.single-person .person-role-prev {
		left: -12px;
	}

	.single-person .person-role-next {
		right: -12px;
	}

	.single-person .person-mobile-gallery-heading {
		display: block;
		margin: 0 0 14px;
		padding: 0;
		font-size: 18px;
		font-weight: 700;
		line-height: 1.2;
		letter-spacing: .18em;
		text-transform: uppercase;
		color: #BE3A26;
	}
}

/* ============================================================
   14. Filmography
   ============================================================ */

.single-person .person-filmography-list {
	max-width: 720px;
	border-top: 1px solid rgba(0,0,0,.08);
}

.single-person .person-filmography-item {
	display: grid;
	grid-template-columns: 58px minmax(0, 1fr) 260px;
	gap: 18px;
	align-items: baseline;
	padding: 10px 0;
	border-bottom: 1px solid rgba(0,0,0,.06);
}

.single-person .person-filmography-year {
	font-size: 13px;
	color: rgba(0,0,0,.45);
}

.single-person .person-filmography-titles {
	display: flex;
	flex-direction: column;
	gap: 1px;
}

.single-person .person-filmography-title {
	font-size: 14px;
	font-weight: 600;
	line-height: 1.35;
	color: #333;
	text-decoration: none;
}

.single-person .person-filmography-title:hover {
	color: #BE3A26;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.single-person .person-filmography-original {
	font-size: 11px;
	line-height: 1.25;
	color: rgba(0,0,0,.42);
	font-style: normal;
}

.single-person .person-filmography-roles {
	display: flex;
	justify-content: flex-end;
	align-items: center;
	flex-wrap: wrap;
	gap: 0 6px;
	text-align: right;
	font-size: 12px;
	line-height: 1.35;
	color: #B4A158;
}

.single-person .person-filmography-role-crew {
	font-size: 11px;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: #B4A158;
}

.single-person .person-filmography-role + .person-filmography-role::before {
	content: " • ";
	color: rgba(180,161,88,.75);
}

.single-person .person-filmography-role {
	white-space: nowrap;
}

@media (max-width: 640px) {
	.single-person .person-filmography-item {
		grid-template-columns: 48px minmax(0, 1fr) auto;
		gap: 14px;
		align-items: start;
	}

	.single-person .person-filmography-roles {
		grid-column: 3;
		justify-content: flex-end;
		text-align: right;
		max-width: 130px;
	}
}

/* ============================================================
   15. External links
   ============================================================ */

.single-person .person-meta-external-links a {
	color: inherit;
	text-decoration: none;
}

.single-person .person-meta-external-links a:hover {
	color: #BE3A26;
	text-decoration: underline;
}

/* ============================================================
   16. Expanded Far East Films coverage grid
   ============================================================ */

.single-person .person-coverage-grid {
	display: grid;
	grid-template-columns: repeat(4, 144px);
	gap: 22px 18px;
	margin-top: 14px;
	margin-bottom: 28px;
}

.single-person .person-coverage-all[hidden] {
	display: none;
}

@media (max-width: 640px) {
	.single-person .person-coverage-grid {
		grid-template-columns: repeat(2, 130px);
		gap: 20px 18px;
	}
}

/* ============================================================
   17. Coverage section header and toggle
   ============================================================ */

.single-person .person-section-header {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 24px;
	margin-bottom: 12px;
}

.single-person .person-section-header h2 {
	margin: 0;
}

.single-person .person-coverage-toggle {
	flex: 0 0 auto;
	padding: 0;
	border: 0;
	background: none;
	box-shadow: none;
	color: rgba(0,0,0,.5);
	font-size: 12px;
	font-weight: 600;
	line-height: 1.2;
	cursor: pointer;
	text-align: right;
	text-transform: none;
	letter-spacing: 0;
	text-decoration: none;
}

.single-person .person-coverage-toggle:hover {
	color: #BE3A26;
}

.single-person .person-coverage-toggle:focus,
.single-person .person-coverage-toggle:active {
	outline: none;
	box-shadow: none;
	color: rgba(0,0,0,.55);
	text-decoration: none;
}

.single-person .person-coverage-toggle:focus-visible,
.single-person .person-role-arrow:focus-visible,
.single-person .person-gallery-arrow:focus-visible,
.single-person .person-related-people ul.related-items li > a:focus-visible {
	outline: 2px solid #BE3A26;
	outline-offset: 2px;
}

.single-person .person-coverage-toggle::after {
	content: " ▼";
	font-size: 10px;
}

.single-person .person-coverage-toggle[aria-expanded="true"]::after {
	content: " ▲";
}

@media (max-width: 640px) {
	.single-person .person-section-header {
		display: block;
		margin-bottom: 16px;
	}

	.single-person .person-section-header h2 {
		margin-bottom: 8px;
	}

	.single-person .person-coverage-toggle {
		display: inline-block;
		text-align: left;
		font-size: 12px;
		color: rgba(0,0,0,.55);
	}
}

/* ============================================================
   18. Related People
   Matches the Related Films card layout.
   ============================================================ */

.single-person .person-related-people {
	clear: both;
	float: left;
	width: 1000px;
	max-width: calc(100vw - 40px);
	margin: 18px 0 30px -45px;
}

.single-person .person-related-people .related-posts-title {
	float: left;
	width: 100%;
	margin: 0 0 16px;
	padding-left: 0;
}

.single-person .person-related-people ul.related-items {
	clear: both;
	float: left;
	width: 100%;
	margin: 0;
	padding: 0;
}

.single-person .person-related-people ul.related-items::after {
	content: "";
	display: table;
	clear: both;
}

.single-person .person-related-people ul.related-items li {
	float: left;
	width: 22%;
	margin: 0 4% 24px 0;
}

.single-person .person-related-people ul.related-items li:nth-child(4n) {
	margin-right: 0;
}

.single-person .person-related-people ul.related-items li > a {
	display: block;
	padding: 10px 10px 12px;
	text-decoration: none;
	color: #404040;
	background: transparent;
	transition: transform .18s ease, box-shadow .18s ease;
}

.single-person .person-related-people .related-person-image {
	width: 100%;
	aspect-ratio: 2 / 3;
	overflow: hidden;
	background: #f1f1f1;
	box-shadow: 0 3px 8px rgba(0,0,0,.08);
}

.single-person .person-related-people .related-person-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.single-person .person-related-people .related-person-title {
	display: block;
	padding: 9px 0 0;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.3;
	color: #222;
}

.single-person .person-related-people .related-person-meta {
	display: block;
	padding-top: 5px;
	font-size: 13px;
	line-height: 1.4;
	color: rgba(0,0,0,.58);
}

.single-person .person-related-people .related-person-shared-films {
	display: inline;
	font-style: normal;
}

.single-person .person-related-people .related-person-shared-more {
	display: inline;
	margin-left: 4px;
	font-size: 12px;
	color: rgba(0,0,0,.45);
}

@media (hover: hover) {
	.single-person .person-related-people ul.related-items li > a:hover {
		transform: translateY(-3px);
		box-shadow: 0 10px 24px rgba(0,0,0,.08);
	}

	.single-person .person-related-people ul.related-items li > a:hover .related-person-title {
		color: #BE3A26;
		text-decoration: underline;
		text-underline-offset: 3px;
	}
}

@media (max-width: 980px) {
	.single-person .person-related-people {
		width: 100%;
		max-width: 640px;
		margin-left: 0;
	}

	.single-person .person-related-people ul.related-items li {
		width: 48%;
		margin-right: 4%;
	}

	.single-person .person-related-people ul.related-items li:nth-child(2n) {
		margin-right: 0;
	}
}

/* ============================================================
   19. Person media gallery and carousel
   ============================================================ */

.single-person .person-media-gallery {
	position: relative;
	width: 100%;
	height: 100%;
}

.single-person .person-gallery-lightbox-link {
	display: block;
	width: 100%;
	height: 100%;
	cursor: zoom-in;
}

.single-person .person-media-gallery-image {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.single-person .person-media-gallery-film-title {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	display: block;
	padding: 10px 14px;
	background: rgba(0, 0, 0, 0.55);
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none;
}

.single-person .person-gallery-slide {
	display: none;
	width: 100%;
	height: 100%;
}

.single-person .person-gallery-slide.is-active {
	display: block;
}

.single-person .person-gallery-prev {
	left: 0;
}

.single-person .person-gallery-next {
	right: 0;
}

.single-person .person-gallery-arrow:hover {
	background: rgba(0,0,0,.55);
}

.single-person .person-gallery-arrow {
	position: absolute;
	top: 50%;
	z-index: 4;
	width: 42px;
	height: 58px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	color: #fff;
	text-shadow: 0 0 10px rgba(0,0,0,.8);
	font-size: 42px;
	line-height: 1;
	transform: translateY(-50%);
	cursor: pointer;
	transition: background-color 160ms ease, opacity 160ms ease;
}

.single-person .person-gallery-arrow span {
	display: block;
	position: relative;
	top: -2px;
}

.single-person .person-gallery-counter {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 4;
	padding: 4px 8px;
	border-radius: 3px;
	background: rgba(0, 0, 0, 0.55);
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	pointer-events: none;
}

/* ============================================================
   20. Filmography character names
   ============================================================ */

.single-person .person-filmography-character {
	margin-top: 2px;
	font-size: 12px;
	line-height: 1.3;
	color: rgba(0,0,0,.52);
	font-style: normal;
}

/* ============================================================
   21. Person credit fallback layout
   ============================================================ */

.person-credit-fallback .person-lower-layout {
	display: block;
}

.person-credit-fallback .person-main-column {
	width: 760px;
	max-width: 100%;
	margin: 0 auto;
}

.person-credit-fallback .person-fef-coverage {
	margin-bottom: 38px;
}

.person-credit-fallback .person-filmography {
	margin-top: 0;
}

.person-credit-fallback .person-layout {
	padding-bottom: 36px;
}

.person-credit-fallback .person-fef-coverage .person-section-header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 24px;
	width: 100%;
	margin-bottom: 18px;
}

.person-credit-fallback .person-fef-coverage .person-section-header h2 {
	width: auto;
	max-width: 520px;
	margin: 0;
	white-space: nowrap;
}

.person-credit-fallback .person-fef-coverage .person-coverage-toggle {
	margin-left: auto;
	white-space: nowrap;
}

.person-credit-fallback .person-role-carousel-wrap {
	position: relative;
	width: 630px;
	max-width: 100%;
	margin: 0 auto;
}

.person-credit-fallback .person-role-carousel {
	width: 630px;
	max-width: 100%;
	margin: 0 auto;
}

.person-credit-fallback .person-role-prev {
	left: -44px;
}

.person-credit-fallback .person-role-next {
	right: -44px;
}

.person-credit-fallback .person-coverage-grid {
	width: 630px;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	grid-template-columns: repeat(4, 144px);
	justify-content: start;
}

@media (max-width: 640px) {
	.person-credit-fallback .person-fef-coverage .person-section-header {
		display: block;
		margin-bottom: 16px;
	}

	.person-credit-fallback .person-fef-coverage .person-section-header h2 {
		width: auto;
		max-width: none;
		margin: 0 0 8px;
		white-space: normal;
	}

	.person-credit-fallback .person-fef-coverage .person-coverage-toggle {
		display: inline-block;
		margin: 0;
		white-space: nowrap;
		text-align: left;
	}

	.person-credit-fallback .person-role-carousel-wrap {
		width: 100%;
		padding: 0;
	}

	.person-credit-fallback .person-role-carousel {
		width: 100%;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		gap: 16px;
		padding-bottom: 6px;
	}

	.person-credit-fallback .person-review-card {
		min-width: 132px;
		scroll-snap-align: start;
	}

	.person-credit-fallback .person-coverage-grid {
		width: 100%;
		grid-template-columns: repeat(2, 130px);
	}
}

.person-credit-fallback .person-header {
	width: 760px;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}

/* ============================================================
   22. Calculated age text
   ============================================================ */

.single-person .person-meta-row .person-meta-age {
	font-size: .9em;
}

/* ============================================================
   23. Reduced-motion preference
   ============================================================ */

@media (prefers-reduced-motion: reduce) {
	.single-person .person-role-carousel {
		scroll-behavior: auto;
	}

	.single-person .person-role-arrow,
	.single-person .person-review-card,
	.single-person .person-gallery-arrow,
	.single-person .person-related-people ul.related-items li > a {
		transition: none;
	}

	.single-person .person-related-people ul.related-items li > a:hover {
		transform: none;
	}
}

.person-gallery-film-name {
    display: block;
    font-weight: 700;
    line-height: 1.2;
}

.person-gallery-film-year {
    display: block;
    margin-top: 2px;
    font-size: 11px;
    line-height: 1.2;
    font-weight: 400;
    color: rgba(255,255,255,.8);
}

/* Manual filmography titles are deliberately not links. */
.single-person .person-filmography-title-manual,
.single-person .person-filmography-title-manual:hover {
	color: #333;
	text-decoration: none;
	cursor: default;
	font-weight: 500; /* instead of 600 */
}

@media (min-width: 641px) {
	.single-person .person-filmography-item {
		grid-template-columns: 58px minmax(0, 1fr) 300px;
	}

	.single-person .person-filmography-roles {
		flex-wrap: nowrap;
		white-space: nowrap;
	}
}