/*
 * Stage 2 Books page (25 Oct): disclosure, series teasers, reduced-motion control.
 * Scoped to .books-page. Loaded on /writing/ only. Colours reuse the Stage 1 Books tokens.
 */

.books-page .books-notice {
	margin-top: 2.5rem;
	padding: 1rem 1.25rem;
	border-left: 2px solid #c9ad7a;
	color: #d8cfc1;
	font-size: 0.95rem;
	line-height: 1.6;
}

.books-page .books-notice p {
	margin: 0;
}

.books-page .books-teasers {
	display: grid;
	gap: 1.25rem;
	margin: 2.5rem 0 0;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.books-page .books-teaser {
	padding: 1.5rem;
	border: 1px solid rgba(201, 173, 122, 0.25);
}

.books-page .books-teaser__series {
	margin: 0 0 0.6rem;
	font-size: 0.75rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #c9ad7a;
}

.books-page .books-teaser__quote {
	margin: 0 0 1rem;
	font-size: 1.15rem;
	line-height: 1.5;
	color: #f4efe6;
}

.books-page .books-teaser__link {
	color: #c9ad7a;
	font-weight: 700;
}

/* 0.4.28: explicit container width so all Stage 2 blocks align to the series grid. */
.books-page .books-notice,
.books-page .books-teasers,
.books-page .books-controls {
	width: min(100%, var(--max-wide));
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
}

.books-page .books-controls {
	display: flex;
	justify-content: flex-end;
	width: min(100%, var(--max-wide));
	margin: 1.5rem auto 0;
}

.books-page .books-motion-toggle {
	min-height: 44px;
	padding: 0.6rem 1rem;
	background: transparent;
	border: 1px solid rgba(201, 173, 122, 0.5);
	color: #f4efe6;
	font: inherit;
	font-size: 0.9rem;
	cursor: pointer;
}

.books-page .books-motion-toggle:focus-visible {
	outline: 2px solid #c9ad7a;
	outline-offset: 3px;
}

.books-page.books-page--still [data-reveal],
.books-page.books-page--still .books-series,
.books-page.books-page--still .book-card {
	transition: none;
	animation: none;
}

@media (max-width: 680px) {
	.books-page .books-teasers {
		grid-template-columns: 1fr;
	}
}

/* 0.4.30 Stage 3: "Ask the archive" deterministic guide. CSS :target only; works without JavaScript. */
.books-page .books-guide {
	width: min(100%, var(--max-wide));
	margin: 3rem auto 0;
	box-sizing: border-box;
}

.books-page .books-guide h2 {
	margin: 0.4rem 0 0.75rem;
}

.books-page .books-guide__options {
	list-style: none;
	margin: 1.5rem 0 0;
	padding: 0;
	display: grid;
	gap: 0.75rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.books-page .books-guide__choice {
	display: block;
	min-height: 44px;
	padding: 1rem 1.25rem;
	border: 1px solid rgba(201, 173, 122, 0.35);
	color: #f4efe6;
	text-decoration: none;
	line-height: 1.5;
}

.books-page .books-guide__choice:hover,
.books-page .books-guide__choice:focus-visible {
	border-color: #c9ad7a;
	outline: 2px solid #c9ad7a;
	outline-offset: 3px;
}

.books-page .books-guide__result {
	display: none;
	margin-top: 1.5rem;
	padding: 1.5rem;
	border: 1px solid rgba(201, 173, 122, 0.5);
}

.books-page .books-guide__result:target {
	display: block;
}

.books-page .books-guide__result:focus {
	outline: none;
}

.books-page .books-guide__series {
	margin: 0 0 0.6rem;
	font-size: 0.75rem;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #c9ad7a;
}

.books-page .books-guide__blurb {
	font-size: 1.1rem;
	line-height: 1.6;
	color: #f4efe6;
}

.books-page .books-guide__back {
	color: #c9ad7a;
	font-weight: 700;
}

@media (max-width: 680px) {
	.books-page .books-guide__options {
		grid-template-columns: 1fr;
	}
}

.books-page .books-guide__num {
	color: #c9ad7a;
	font-weight: 700;
	margin-right: 0.35rem;
}
