/* WordPress-only shell adjustments for the restored archive chapters. */
.shaun-archive-body {
	margin: 0;
	min-width: 320px;
	overflow-x: hidden;
	background: #050505;
}

.shaun-archive-body.admin-bar .site-menu,
.shaun-archive-body.admin-bar .site-step-back {
	top: max(54px, calc(env(safe-area-inset-top) + 32px));
}

.shaun-archive-body .chapter-nav {
	pointer-events: none;
}

.shaun-archive-body .chapter-logo {
	pointer-events: auto;
}

.shaun-archive-body .site-step-back {
	top: max(28px, env(safe-area-inset-top));
}

/* Give the Front Row story link a dependable hit area above the card layer. */
.shaun-destination-body .front-row-page-story > a {
	display: inline-flex;
	position: relative;
	z-index: 2;
	align-items: center;
	min-height: 44px;
}

.site-form-notice {
	margin: 0;
	padding: 18px 6vw;
	border-block: 1px solid rgba(49, 167, 104, .45);
	color: #ecfff4;
	background: #126238;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: .03em;
	text-align: center;
}

.site-form-notice-error {
	border-color: rgba(229, 31, 55, .55);
	background: #851126;
}

/* Preserve the chapter's emotional closing as a true pull quote. */
.shaun-archive-body .metallica-handshake-copy > p.metallica-handshake-closing {
	max-width: 28ch;
	margin-top: clamp(42px, 5vw, 68px);
	padding-left: clamp(16px, 2vw, 24px);
	border-left: 3px solid var(--metallica-red);
	color: var(--metallica-red);
	font: 600 clamp(30px, 3.1vw, 48px)/1.2 var(--font-display), Arial, sans-serif;
	font-style: normal;
	letter-spacing: -.018em;
	text-align: left;
	text-wrap: pretty;
	transform: none;
	transform-origin: initial;
}

/* Balance the desktop handshake story against its portrait instead of leaving
   the copy stranded inside an oversized cream panel. */
@media (min-width: 901px) {
	.shaun-archive-body .metallica-handshake {
		grid-template-columns: minmax(0, 1.15fr) minmax(470px, .85fr);
		min-height: 0;
	}

	.shaun-archive-body .metallica-handshake-copy {
		align-self: center;
		width: 100%;
		max-width: none;
		padding: clamp(68px, 6vw, 96px) clamp(58px, 6vw, 102px) clamp(70px, 6vw, 100px) max(7vw, calc((100vw - 1380px) / 2));
	}

	.shaun-archive-body .metallica-handshake h2 {
		max-width: 760px;
		font-size: clamp(58px, 5vw, 82px);
		line-height: .9;
	}

	.shaun-archive-body .metallica-handshake-copy > p:not(.chapter-index):not(.metallica-handshake-closing) {
		max-width: 660px;
		font-size: clamp(20px, 1.45vw, 24px);
	}

	.shaun-archive-body .metallica-handshake-copy > p.metallica-handshake-closing {
		max-width: 720px;
		margin-top: clamp(44px, 4vw, 62px);
		font-size: clamp(36px, 3vw, 48px);
	}

	.shaun-archive-body .metallica-handshake figure {
		height: clamp(650px, 49vw, 790px);
		min-height: 0;
	}

	.shaun-archive-body .metallica-handshake figure img {
		position: absolute;
		inset: 0;
		min-height: 0;
	}
}

@media (max-width: 760px) {
	.shaun-archive-body .metallica-handshake-copy > p.metallica-handshake-closing {
		max-width: 28ch;
		font-size: clamp(28px, 7.5vw, 38px);
		line-height: 1.22;
	}
}

@media (max-width: 782px) {
	.shaun-archive-body.admin-bar .site-menu,
	.shaun-archive-body.admin-bar .site-step-back {
		top: max(58px, calc(env(safe-area-inset-top) + 46px));
	}
}

@media (max-width: 680px) {
	.shaun-archive-body .site-step-back {
		top: max(16px, env(safe-area-inset-top));
	}
}

/* Production services should feel like a live-show capability deck, not office tiles. */
.production-services {
	position: relative;
	isolation: isolate;
	overflow: hidden;
	color: #f8f4f0;
	background:
		linear-gradient(112deg, rgba(3, 4, 6, .94), rgba(18, 4, 9, .86) 58%, rgba(3, 7, 12, .94)),
		url(../images/shaun-production-lighting.webp) center 44% / cover fixed;
	padding-bottom: clamp(68px, 7vw, 94px);
}

.production-showcase { padding-top: clamp(72px, 7vw, 96px); }

.production-services::before,
.production-services::after {
	content: "";
	pointer-events: none;
	position: absolute;
	z-index: -1;
	filter: blur(18px);
	clip-path: polygon(44% 0, 56% 0, 100% 100%, 0 100%);
}

.production-services::before {
	top: -280px;
	left: 2%;
	width: 420px;
	height: 900px;
	background: linear-gradient(168deg, rgba(130, 199, 255, .36), transparent 72%);
	transform: rotate(11deg);
}

.production-services::after {
	top: -330px;
	right: -3%;
	width: 430px;
	height: 940px;
	background: linear-gradient(192deg, rgba(239, 29, 62, .43), transparent 70%);
	transform: rotate(-12deg);
}

.production-services .production-heading {
	align-items: end;
	max-width: 1240px;
	margin-inline: auto;
	padding-bottom: 26px;
	border-bottom: 1px solid rgba(255, 255, 255, .18);
}

.production-services .production-heading > p {
	align-self: start;
	color: #f02a42;
}

.production-services .production-heading h2 {
	color: #fff;
	text-shadow: 0 14px 50px rgba(0, 0, 0, .75);
}

.production-services .production-heading > div > p {
	max-width: 720px;
	color: #d0c6c1;
	font-size: 18px;
	line-height: 1.65;
}

.production-services .production-service-grid {
	gap: 14px;
	max-width: 1240px;
	margin: 54px auto 0;
	perspective: 1200px;
}

.production-services .production-service-grid article {
	position: relative;
	isolation: isolate;
	min-height: 365px;
	padding: 34px 30px 30px;
	border: 1px solid rgba(255, 255, 255, .22);
	color: #f8f3ef;
	background:
		radial-gradient(circle at 88% 6%, rgba(225, 26, 54, .28), transparent 27%),
		linear-gradient(150deg, rgba(25, 25, 29, .82), rgba(5, 7, 10, .9));
	box-shadow: 0 24px 70px rgba(0, 0, 0, .45), inset 0 1px rgba(255, 255, 255, .08);
	backdrop-filter: blur(16px);
	transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease;
	overflow: hidden;
}

.production-services .production-service-grid article:nth-child(2),
.production-services .production-service-grid article:nth-child(5) {
	background: radial-gradient(circle at 82% 8%, rgba(42, 143, 211, .27), transparent 29%), linear-gradient(150deg, rgba(18, 25, 31, .86), rgba(5, 7, 10, .92));
}

.production-services .production-service-grid article::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 0;
	background: linear-gradient(115deg, transparent 24%, rgba(255, 255, 255, .08) 48%, transparent 72%);
	transform: translateX(-120%);
	transition: transform .55s ease;
}

.production-services .production-service-grid article:hover {
	transform: translateY(-8px);
	border-color: rgba(242, 49, 75, .72);
	box-shadow: 0 34px 90px rgba(0, 0, 0, .62), 0 0 48px rgba(196, 13, 37, .18);
}

.production-services .production-service-grid article:hover::before { transform: translateX(120%); }
.production-services .production-service-grid article > b { color: rgba(255, 255, 255, .28); font-size: 34px; font-weight: 400; }
.production-services .production-service-grid article > span { display: block; margin: 42px 0 13px; color: #f02b43; font-size: 10px; font-weight: 700; letter-spacing: .24em; text-transform: uppercase; }
.production-services .production-service-grid article h3 { max-width: 11ch; margin: 0; color: #fff; font-size: clamp(37px, 3.2vw, 49px); line-height: .92; letter-spacing: -.035em; }
.production-services .production-service-grid article p { max-width: 31ch; margin: 24px 0 0; color: #c5bcb7; font-size: 16px; line-height: 1.58; }

@media (max-width: 760px) {
	.production-services { padding-bottom: 54px; background-attachment: scroll; }
	.production-showcase { padding-top: 54px; }
	.production-services .production-heading { align-items: start; }
	.production-services .production-service-grid { gap: 12px; }
	.production-services .production-service-grid article { min-height: 300px; padding: 26px 22px; }
	.production-services .production-service-grid article > span { margin-top: 30px; }
}

/* The Fixx chapter — stage energy, new-wave color, and Shaun's gratitude. */
.fixx-chapter { color: #f8f1e8; background: #080808; }
.fixx-hero { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(420px, .95fr); align-items: center; gap: clamp(40px, 6vw, 96px); min-height: 100svh; padding: 118px 6vw 86px; background: radial-gradient(circle at 82% 18%, rgba(207, 33, 45, .22), transparent 28%), radial-gradient(circle at 24% 78%, rgba(231, 176, 30, .13), transparent 31%), #080808; }
.fixx-hero figure { margin: 0; border: 1px solid rgba(240, 65, 43, .52); background: #050505; box-shadow: 0 40px 110px rgba(0, 0, 0, .7), 0 0 55px rgba(198, 30, 35, .17); }
.fixx-hero figure img { display: block; width: 100%; height: auto; }
.fixx-hero-copy h1 { font-size: clamp(66px, 7.6vw, 120px); line-height: .78; }
.fixx-hero-copy h1 i { color: #efb91c; font-weight: 400; }
.fixx-hero-copy > p:not(.chapter-kicker) { max-width: 690px; margin: 38px 0 24px; color: #cec4bc; font: 20px/1.65 var(--font-display), Georgia, serif; }
.fixx-hero-copy > span { color: #e84737; font-size: 10px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; }
.fixx-story { display: grid; grid-template-columns: minmax(120px, .35fr) minmax(0, 1.65fr); gap: clamp(40px, 8vw, 130px); padding: clamp(86px, 10vw, 150px) 8vw; color: #181716; background: linear-gradient(135deg, #f2ede5, #e7edf0 68%, #f4e7df); }
.fixx-story h2,.fixx-gratitude h2 { font-size: clamp(54px, 6vw, 88px); line-height: .88; }
.fixx-story h2 i,.fixx-gratitude h2 i { color: #c61d2b; font-weight: 400; }
.fixx-story > div > p { max-width: 920px; margin: 27px 0 0; color: #524e4a; font: 19px/1.72 var(--font-display), Georgia, serif; }
.fixx-story blockquote { max-width: 900px; margin: 48px 0; padding: 24px 0 24px 30px; border-left: 4px solid #d59f14; color: #b01827; font-size: clamp(32px, 3.6vw, 50px); font-style: normal; line-height: 1.12; }
.fixx-gratitude { position: relative; overflow: hidden; padding: clamp(86px, 10vw, 145px) 7vw; background: radial-gradient(circle at 14% 12%, rgba(224, 169, 22, .14), transparent 27%), radial-gradient(circle at 84% 78%, rgba(198, 29, 43, .19), transparent 31%), linear-gradient(145deg, #0a0a0a, #180508 70%, #07090a); }
.fixx-gratitude-heading { display: grid; grid-template-columns: minmax(0, 1fr) minmax(300px, .55fr); gap: 6vw; align-items: end; max-width: 1240px; margin: 0 auto 58px; }
.fixx-gratitude-heading .chapter-index { grid-column: 1 / -1; }
.fixx-gratitude-heading > p:last-child { color: #c4b9b2; font: 18px/1.65 var(--font-display), Georgia, serif; }
.fixx-thanks-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: clamp(24px, 3.5vw, 50px); max-width: 1240px; margin: auto; padding: 44px 0; border-top: 1px solid rgba(255, 255, 255, .14); border-bottom: 1px solid rgba(255, 255, 255, .1); }
.fixx-thanks-grid article { position: relative; min-height: 0; padding: 0 0 20px; border: 0; background: transparent; box-shadow: none; }
.fixx-thanks-grid article:not(:first-child) { padding-left: clamp(20px, 2.5vw, 36px); border-left: 1px solid rgba(198, 29, 43, .38); }
.fixx-thanks-grid article > span { color: #dda916; font-size: 12px; letter-spacing: .17em; }
.fixx-thanks-grid h3 { margin-top: 40px; color: #fff; font-size: clamp(31px, 2.7vw, 40px); line-height: .94; }
.fixx-thanks-grid p { color: #cbbfba; font-size: 16px; line-height: 1.68; }
.fixx-closing { position: relative; isolation: isolate; overflow: hidden; display: grid; place-items: center; min-height: 480px; padding: 82px 8vw; color: #f8f1e8; background: radial-gradient(ellipse at center, rgba(237, 185, 28, .22), transparent 38%), radial-gradient(ellipse at 50% 105%, rgba(198, 29, 43, .25), transparent 44%), #080808; text-align: center; }
.fixx-closing::before { content: ""; position: absolute; z-index: -1; left: 50%; top: 50%; width: min(760px, 74vw); height: 1px; transform: translateX(-50%); background: linear-gradient(90deg, transparent, rgba(237, 185, 28, .72), transparent); box-shadow: 0 0 36px rgba(237, 185, 28, .4); }
.fixx-closing p { max-width: 1040px; margin: 0; font-family: var(--font-display), Georgia, serif; font-size: clamp(48px, 6vw, 84px); font-weight: 500; line-height: 1.02; letter-spacing: -.035em; text-shadow: 0 18px 60px rgba(0, 0, 0, .65); }
.fixx-closing span { margin-top: 30px; color: #edb91c; font-size: 11px; font-weight: 700; letter-spacing: .22em; text-transform: uppercase; }
@media (max-width: 900px) { .fixx-hero,.fixx-story,.fixx-gratitude-heading { grid-template-columns: 1fr; } .fixx-hero { padding-top: 100px; } .fixx-thanks-grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 1250px) and (min-width: 561px) { .fixx-gratitude { padding-right: max(48px, 6vw); padding-left: max(48px, 6vw); } .fixx-thanks-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 48px; } .fixx-thanks-grid article { padding: 34px 0; } .fixx-thanks-grid article:nth-child(odd) { padding-left: 0; border-left: 0; } .fixx-thanks-grid article:nth-child(n+3) { border-top: 1px solid rgba(198, 29, 43, .3); } }
@media (max-width: 560px) { .fixx-hero { gap: 34px; padding: 86px 18px 60px; } .fixx-hero-copy h1 { font-size: clamp(56px, 17vw, 76px); } .fixx-story,.fixx-gratitude { padding: 66px 20px; } .fixx-story { gap: 22px; } .fixx-thanks-grid { grid-template-columns: 1fr; gap: 0; } .fixx-thanks-grid article { padding: 28px 0; } .fixx-thanks-grid article:not(:first-child) { padding-left: 0; border-top: 1px solid rgba(198, 29, 43, .3); border-left: 0; } .fixx-thanks-grid h3 { margin-top: 28px; } .fixx-closing { min-height: 420px; padding: 68px 22px; } .fixx-closing p { font-size: clamp(40px, 12vw, 58px); } }

/* Night Ranger — amber stage light, electric blue shadows, and a room full of energy. */
.night-ranger-chapter { color: #f8f4ec; background: #070708; }
.night-ranger-hero { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(420px, .88fr) minmax(0, 1.12fr); align-items: center; gap: clamp(44px, 7vw, 110px); min-height: 100svh; padding: 120px 6vw 84px; overflow: hidden; background: radial-gradient(circle at 80% 20%, rgba(238, 129, 14, .24), transparent 27%), radial-gradient(circle at 14% 74%, rgba(23, 95, 160, .26), transparent 31%), linear-gradient(145deg, #06070a, #120706 66%, #050506); }
.night-ranger-hero::before { content: ""; position: absolute; z-index: -1; top: -330px; left: 29%; width: 460px; height: 950px; opacity: .42; filter: blur(18px); clip-path: polygon(44% 0, 56% 0, 100% 100%, 0 100%); background: linear-gradient(170deg, rgba(255, 210, 117, .48), transparent 72%); transform: rotate(9deg); }
.night-ranger-hero-copy h1 { font-size: clamp(72px, 8.5vw, 132px); line-height: .76; text-shadow: 0 18px 60px rgba(0, 0, 0, .72); }
.night-ranger-hero-copy h1 i { color: #ef8e17; font-weight: 400; }
.night-ranger-hero-copy > p:not(.chapter-kicker) { max-width: 650px; margin: 40px 0 28px; color: #cec5bd; font: 20px/1.65 var(--font-display), Georgia, serif; }
.night-ranger-hero-copy > div { display: flex; flex-wrap: wrap; gap: 9px; }
.night-ranger-hero-copy > div span { padding: 8px 11px; border: 1px solid rgba(255, 255, 255, .18); color: #e8a243; background: rgba(255, 255, 255, .04); font-size: 9px; font-weight: 700; letter-spacing: .17em; text-transform: uppercase; }
.night-ranger-hero figure { margin: 0; border: 1px solid rgba(239, 142, 23, .52); background: #030303; box-shadow: 0 42px 120px rgba(0, 0, 0, .72), 0 0 70px rgba(239, 117, 16, .19); transform: rotate(1.2deg); }
.night-ranger-hero figure img { display: block; width: 100%; height: auto; }
.night-ranger-announcement { display: grid; grid-template-columns: minmax(120px, .34fr) minmax(0, 1.66fr); gap: clamp(40px, 8vw, 130px); padding: clamp(92px, 11vw, 160px) 8vw; color: #171718; background: radial-gradient(circle at 80% 15%, rgba(236, 141, 25, .16), transparent 25%), linear-gradient(135deg, #f1ece4, #e4edf2 68%, #f4e6dc); }
.night-ranger-news { margin: 0 0 32px; color: #c3670d; font-size: 11px; font-weight: 800; letter-spacing: .2em; text-transform: uppercase; }
.night-ranger-announcement h2,.night-ranger-stage h2,.night-ranger-gratitude h2 { font-size: clamp(54px, 6.2vw, 92px); line-height: .87; }
.night-ranger-announcement h2 i,.night-ranger-stage h2 i,.night-ranger-gratitude h2 i { color: #d87410; font-weight: 400; }
.night-ranger-announcement > div > p:not(.night-ranger-news) { max-width: 930px; margin: 28px 0 0; color: #55504b; font: 19px/1.74 var(--font-display), Georgia, serif; }
.night-ranger-stage { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(360px, .72fr); gap: clamp(42px, 7vw, 100px); align-items: center; padding: clamp(86px, 10vw, 145px) 6vw; background: radial-gradient(circle at 76% 22%, rgba(35, 111, 178, .22), transparent 27%), radial-gradient(circle at 14% 78%, rgba(222, 112, 10, .2), transparent 29%), #09090b; }
.night-ranger-stage figure { position: relative; isolation: isolate; margin: 0; padding: 10px; border: 1px solid rgba(255, 255, 255, .2); background: rgba(255, 255, 255, .04); box-shadow: 0 34px 100px rgba(0, 0, 0, .6), 0 0 58px rgba(218, 13, 35, .24); transition: border-color .45s ease, box-shadow .45s ease, transform .45s ease; }
.night-ranger-stage figure::before { content: ""; position: absolute; z-index: -1; inset: 5% -6% -2%; border-radius: 38%; background: radial-gradient(ellipse at center, rgba(255, 22, 43, .82) 0%, rgba(205, 0, 28, .46) 42%, transparent 72%); filter: blur(44px); opacity: .7; transform: scale(.96); animation: night-ranger-red-glow 4.8s ease-in-out infinite; transition: opacity .45s ease, transform .45s ease, filter .45s ease; pointer-events: none; }
.night-ranger-stage figure:hover { border-color: rgba(244, 58, 67, .62); box-shadow: 0 38px 110px rgba(0, 0, 0, .68), 0 0 46px rgba(213, 22, 34, .22); transform: translateY(-5px); }
.night-ranger-stage figure:hover::before { opacity: .9; filter: blur(44px); transform: scale(1.04); }
.night-ranger-stage figure img { position: relative; z-index: 1; display: block; width: 100%; height: auto; filter: contrast(1.05); }
.night-ranger-stage figcaption { position: relative; z-index: 1; padding: 12px 5px 3px; color: #9f9790; font-size: 9px; letter-spacing: .18em; text-transform: uppercase; }
@keyframes night-ranger-red-glow { 0%, 100% { opacity: .58; transform: scale(.94); } 50% { opacity: .82; transform: scale(1.01); } }
@media (prefers-reduced-motion: reduce) { .night-ranger-stage figure,.night-ranger-stage figure::before { animation: none; transition: none; } }
.night-ranger-stage > div > p:not(.chapter-index) { margin: 26px 0 0; color: #c6bdb7; font: 18px/1.7 var(--font-display), Georgia, serif; }
.night-ranger-gratitude { display: grid; grid-template-columns: minmax(0, .82fr) minmax(420px, .78fr); gap: 8vw; padding: clamp(90px, 11vw, 160px) 8vw; color: #171615; background: linear-gradient(135deg, #f5eee4, #e7edf0 68%, #f1e3d8); }
.night-ranger-gratitude-copy > p { margin: 0 0 26px; color: #55504c; font: 19px/1.72 var(--font-display), Georgia, serif; }
.night-ranger-gratitude blockquote { margin: 44px 0 0; padding: 25px 0 25px 28px; border-left: 4px solid #df8115; color: #a64c0a; font-size: clamp(29px, 3vw, 43px); font-style: normal; line-height: 1.18; }
.night-ranger-finale { position: relative; isolation: isolate; overflow: hidden; display: grid; place-items: center; min-height: 470px; padding: 82px 8vw; text-align: center; background: radial-gradient(ellipse at 50% 70%, rgba(230, 108, 10, .34), transparent 37%), linear-gradient(145deg, #07090d, #160805 70%, #050506); }
.night-ranger-finale::before { content: ""; position: absolute; z-index: -1; top: 50%; left: 50%; width: min(730px, 72vw); height: 1px; transform: translateX(-50%); background: linear-gradient(90deg, transparent, rgba(239, 142, 23, .75), transparent); box-shadow: 0 0 38px rgba(239, 142, 23, .46); }
.night-ranger-finale span { color: #e78a19; font-size: 10px; font-weight: 800; letter-spacing: .25em; text-transform: uppercase; }
.night-ranger-finale p { margin: 28px 0 0; font-family: var(--font-display), Georgia, serif; font-size: clamp(54px, 7vw, 96px); font-weight: 500; line-height: .92; letter-spacing: -.04em; text-shadow: 0 18px 58px rgba(0, 0, 0, .62); }
.night-ranger-finale p i { color: #ee941c; font-weight: 400; }
@media (max-width: 900px) { .night-ranger-hero,.night-ranger-announcement,.night-ranger-stage,.night-ranger-gratitude { grid-template-columns: 1fr; } .night-ranger-hero { padding-top: 102px; } .night-ranger-hero figure { transform: none; } }
@media (max-width: 560px) { .night-ranger-hero { gap: 36px; padding: 88px 18px 62px; } .night-ranger-hero-copy h1 { font-size: clamp(58px, 18vw, 78px); } .night-ranger-announcement,.night-ranger-stage,.night-ranger-gratitude { gap: 24px; padding: 68px 20px; } .night-ranger-hero-copy > div { display: grid; } .night-ranger-finale { min-height: 410px; padding: 68px 22px; } .night-ranger-finale p { font-size: clamp(44px, 13vw, 62px); } }
/* Keep direct archive anchors clear of the floating chapter navigation. */
[id="max-tribute-video"] {
	scroll-margin-top: clamp(1rem, 4vw, 3rem);
}
