/* Book page (/book/), loaded only there (inc/assets.php: page-{slug}.css).
   Version A in RHSA colors (Kevin, 2026-11-04): white and tint sections,
   the flipbook on ink, Kevin's quote on red, a buy card on ink. The
   sections are the site's Section styles; the rhsa-book-* classes below
   set this page's layouts. Quotes are Pullquotes, so the body-text size
   (typography.css) leaves them alone; the cards' h3s use the Subhead size. Content: bin/content/book-redesign-2026-11-04.php. */

.rhsa-page-container .entry-content .rhsa-book-sec { padding-top: 88px; padding-bottom: 88px; }
.rhsa-page-container .entry-content .rhsa-book-sec--short { padding-top: 56px; padding-bottom: 56px; }
.rhsa-page-container .entry-content .rhsa-book-sec > .wp-block-columns,
.rhsa-page-container .entry-content .rhsa-book-hero > .wp-block-columns { margin: 0; padding: 0; gap: 64px; }
.rhsa-page-container .entry-content .rhsa-book-sec .wp-block-column > :first-child { margin-top: 0; }
.rhsa-page-container .entry-content .rhsa-book-sec .wp-block-column > :last-child { margin-bottom: 0; }
.rhsa-page-container .entry-content .rhsa-book-sec .has-label-font-size,
.rhsa-page-container .entry-content .rhsa-book-hero .has-label-font-size,
.rhsa-page-container .entry-content .rhsa-book-label-dark {
	margin: 0 0 10px;
	letter-spacing: .12em !important;
	text-transform: uppercase;
	font-size: 14px !important;
}
.rhsa-page-container .entry-content .rhsa-book-sec h2 { margin: 0 0 20px; }
.rhsa-page-container .entry-content .rhsa-book-sec p:not(.has-label-font-size) + p { margin-top: 16px; }
.rhsa-page-container .entry-content .rhsa-book-center { text-align: center; }
/* Section children are centered in the column (blocks.css); a paragraph
   there is also capped at 720px, so labels and intros would sit centered.
   Here they keep the column's left edge. */
.rhsa-page-container .entry-content .rhsa-book-sec:not(.rhsa-book-preview) > p.wp-block-paragraph { max-width: min(1170px, 90%); box-sizing: border-box; }
.rhsa-page-container .entry-content .rhsa-book-sec strong { color: var(--rhsa-ink); }

/* 1. Title and cover */
.rhsa-page-container .entry-content .rhsa-book-hero { padding-top: 72px; padding-bottom: 88px; }
.rhsa-page-container .entry-content .rhsa-book-hero__cols { align-items: center !important; }
.rhsa-page-container .entry-content .rhsa-book-hero__cols > .wp-block-column:first-child { flex: 1.05 1 0; }
.rhsa-page-container .entry-content .rhsa-book-hero__cols > .wp-block-column:last-child { flex: 1 1 0; }
.rhsa-page-container .entry-content .rhsa-book-hero h1 { margin: 0 0 6px; }
.rhsa-page-container .entry-content .rhsa-book-hero .rhsa-book-subtitle { margin: 0 0 24px; color: var(--rhsa-ink); font-weight: 400 !important; }
.rhsa-page-container .entry-content .rhsa-book-hero .has-lead-font-size { margin: 0 0 32px; }
.rhsa-page-container .entry-content .rhsa-book-hero .wp-block-buttons { gap: 12px; }
.rhsa-page-container .entry-content .rhsa-book-hero .rhsa-book-note {
	max-width: 520px;
	margin: 24px 0 0;
	padding: 14px 18px;
	border-left: 4px solid var(--rhsa-red);
	border-radius: 0 6px 6px 0;
	background: var(--rhsa-tint);
}
.rhsa-page-container .entry-content .rhsa-book-note strong { color: var(--rhsa-red); }
.rhsa-page-container .entry-content .rhsa-book-cover { margin: 0; }
.rhsa-page-container .entry-content .rhsa-book-cover img { width: 100%; height: auto; box-shadow: 0 18px 40px rgba(18, 20, 9, .22); transform: rotate(1.2deg); }

/* 2. The video: a phone-shaped film beside the text */
.rhsa-page-container .entry-content .rhsa-book-video { align-items: center !important; gap: 80px !important; }
.rhsa-page-container .entry-content .rhsa-book-video > .wp-block-column:first-child { flex: 0 0 340px; }
.rhsa-page-container .entry-content .rhsa-book-film { margin: 0; }
.rhsa-page-container .entry-content .rhsa-book-film video { display: block; width: 100%; aspect-ratio: 9 / 16; object-fit: cover; border-radius: 14px; background: #000; box-shadow: 0 10px 30px rgba(0, 0, 0, .25); }
.rhsa-page-container .entry-content #video { scroll-margin-top: var(--rhsa-sticky-top, 0px); }
.rhsa-page-container .entry-content .rhsa-book-film figcaption { margin: 10px 0 0; padding: 0; font-size: 13px; color: var(--rhsa-body); text-align: left; }

/* 3. How it was made */
.rhsa-page-container .entry-content .rhsa-book-made { align-items: flex-start !important; }

/* 4. What's inside: numbered rows and a photo mosaic */
.rhsa-page-container .entry-content .rhsa-book-inside { align-items: center !important; }
.rhsa-page-container .entry-content .rhsa-book-inside > .wp-block-column:last-child { flex: 1.1 1 0; }
.rhsa-page-container .entry-content ol.rhsa-book-numbered { list-style: none; counter-reset: rhsa-book; margin: 24px 0 0; padding: 0; }
.rhsa-page-container .entry-content ol.rhsa-book-numbered li {
	counter-increment: rhsa-book;
	position: relative;
	padding: 16px 0 16px 44px;
	border-top: 1px solid #f1d6d6;
}
.rhsa-page-container .entry-content ol.rhsa-book-numbered li::before { content: counter(rhsa-book, decimal-leading-zero); position: absolute; left: 0; top: 16px; font: 700 15px/26px var(--rhsa-cond); color: var(--rhsa-red); }
.rhsa-page-container .entry-content .rhsa-book-mosaic {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-template-rows: repeat(6, 1fr);
	gap: 14px;
	aspect-ratio: 1 / 1.08;
}
.rhsa-page-container .entry-content .rhsa-book-mosaic > figure { margin: 0; min-height: 0; }
.rhsa-page-container .entry-content .rhsa-book-mosaic > figure:nth-child(1) { grid-area: 1 / 1 / 5 / 2; }
.rhsa-page-container .entry-content .rhsa-book-mosaic > figure:nth-child(2) { grid-area: 1 / 2 / 3 / 3; margin-top: 32px; }
.rhsa-page-container .entry-content .rhsa-book-mosaic > figure:nth-child(3) { grid-area: 5 / 1 / 7 / 2; }
.rhsa-page-container .entry-content .rhsa-book-mosaic > figure:nth-child(4) { grid-area: 3 / 2 / 7 / 3; margin-top: 32px; }
.rhsa-page-container .entry-content .rhsa-book-mosaic img { width: 100%; height: 100%; object-fit: cover; border-radius: 6px; }

/* 5. The flipbook on ink */
.rhsa-page-container .entry-content .rhsa-book-preview { text-align: center; }
.rhsa-page-container .entry-content .rhsa-book-label-dark { color: var(--rhsa-red-on-dark); }
.rhsa-page-container .entry-content .rhsa-book-preview .rhsa-book-intro { margin: 0 auto 40px; color: var(--rhsa-grey-on-dark); }
.rhsa-page-container .entry-content .rhsa-book-preview .rhsa-book .stf__block { filter: drop-shadow(0 12px 30px rgba(0, 0, 0, .5)); }

/* 6. Kevin's quote on red */
.rhsa-page-container .entry-content .rhsa-book-red { background: var(--rhsa-red); }
.rhsa-page-container .entry-content :is(.rhsa-book-pull, .rhsa-book-voice) { margin: 0; padding: 0; border: 0; text-align: left; }
.rhsa-page-container .entry-content :is(.rhsa-book-pull, .rhsa-book-voice) blockquote { margin: 0; padding: 0; border: 0; font-style: normal; }
.rhsa-page-container .entry-content .rhsa-book-pull blockquote::before { content: "“"; display: block; color: #fff; font: 700 64px/.6 var(--rhsa-cond); margin-bottom: 16px; }
.rhsa-page-container .entry-content .rhsa-book-pull p {
	max-width: 860px;
	margin: 0;
	color: #fff;
	font: 600 clamp(24px, 3vw, 36px)/1.3 var(--rhsa-cond);
	text-wrap: pretty;
}
.rhsa-page-container .entry-content .rhsa-book-pull cite { display: block; margin-top: 20px; color: #fff; font: 700 16px/1.5 var(--rhsa-cond); font-style: normal; text-transform: none; }

/* 7. Where the money goes */
.rhsa-page-container .entry-content .rhsa-book-impact { margin-top: 40px !important; gap: 32px !important; }
.rhsa-page-container .entry-content .rhsa-book-impact > .wp-block-column { border-top: 3px solid var(--rhsa-red); padding-top: 20px; }
.rhsa-page-container .entry-content p.rhsa-book-figure.is-style-rhsa-big-number { margin: 0 0 10px; font-family: var(--rhsa-cond); font-weight: 700; font-size: 44px; line-height: 1; }
.rhsa-page-container .entry-content .rhsa-book-impact h3 { margin: 0 0 8px; }

/* 8. Voices and the press release */
.rhsa-page-container .entry-content .rhsa-book-voices { gap: 48px !important; }
.rhsa-page-container .entry-content .rhsa-book-voice p { margin: 0; color: var(--rhsa-ink); font: italic 400 18px/1.6 var(--rhsa-sans); }
.rhsa-page-container .entry-content .rhsa-book-voice cite { display: block; margin-top: 14px; color: var(--rhsa-ink); font: 700 15px/1.5 var(--rhsa-cond); font-style: normal; }
.rhsa-page-container .entry-content .rhsa-book-press { margin: 48px 0 0; padding: 0; }
.rhsa-page-container .entry-content .rhsa-book-press > summary { padding: 18px 0; border-top: 1px solid #f1d6d6; border-bottom: 1px solid #f1d6d6; font-size: 20px; }
.rhsa-page-container .entry-content .rhsa-book-press[open] > summary { margin-bottom: 24px; }

/* 9. Partner logos */
.rhsa-page-container .entry-content .rhsa-book-logos { display: grid; grid-template-columns: repeat(6, 1fr); gap: 20px; align-items: center; margin-top: 16px; }
.rhsa-page-container .entry-content .rhsa-book-logos > figure { margin: 0; }
.rhsa-page-container .entry-content .rhsa-book-logos img { width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; }

/* 10. Buy card on ink */
.rhsa-page-container .entry-content .rhsa-book-buy { align-items: center !important; gap: 48px !important; }
.rhsa-page-container .entry-content .rhsa-book-buy > .wp-block-column:first-child { flex: 0 0 220px; }
.rhsa-page-container .entry-content .rhsa-book-buy > .wp-block-column:last-child { flex: 0 0 auto; text-align: right; }
.rhsa-page-container .entry-content .rhsa-book-buy figure { margin: 0; }
.rhsa-page-container .entry-content .rhsa-book-buy img { width: 100%; height: auto; box-shadow: 0 10px 28px rgba(0, 0, 0, .4); }
.rhsa-page-container .entry-content .rhsa-book-buy h2 { margin: 0 0 8px; color: #fff; }
.rhsa-page-container .entry-content .rhsa-book-buy p { color: var(--rhsa-grey-on-dark); }
.rhsa-page-container .entry-content p.rhsa-book-price.is-style-rhsa-big-number { margin: 0 0 12px; color: #fff !important; font-family: var(--rhsa-cond); font-weight: 700; font-size: 48px; line-height: 1; }
.rhsa-page-container .entry-content .rhsa-book-buy .wp-block-buttons { justify-content: flex-end; }

/* Tablets and phones */
@media (max-width: 1024px) {
	.rhsa-page-container .entry-content .rhsa-book-cover img { transform: none; }
	.rhsa-page-container .entry-content .rhsa-book-video { gap: 48px !important; }
	.rhsa-page-container .entry-content .rhsa-book-video > .wp-block-column:first-child { flex-basis: 280px; }
	.rhsa-page-container .entry-content .rhsa-book-logos { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 781px) {
	.rhsa-page-container .entry-content .rhsa-book-sec { padding-top: 56px; padding-bottom: 56px; }
	.rhsa-page-container .entry-content .rhsa-book-sec--short { padding-top: 40px; padding-bottom: 40px; }
	.rhsa-page-container .entry-content .rhsa-book-hero { padding-top: 40px; padding-bottom: 56px; }
	.rhsa-page-container .entry-content .rhsa-book-sec > .wp-block-columns,
	.rhsa-page-container .entry-content .rhsa-book-hero > .wp-block-columns { gap: 32px !important; }
	.rhsa-page-container .entry-content .rhsa-book-hero__cols > .wp-block-column:last-child { order: -1; max-width: 420px; }
	.rhsa-page-container .entry-content .rhsa-book-video > .wp-block-column:first-child { flex-basis: auto; max-width: 300px; width: 100%; margin: 0 auto; }
	.rhsa-page-container .entry-content .rhsa-book-mosaic { aspect-ratio: auto; grid-template-rows: none; grid-auto-rows: 180px; }
	.rhsa-page-container .entry-content .rhsa-book-mosaic > figure:nth-child(n) { grid-area: auto; margin-top: 0; }
	/* Buy card: a small cover beside the title, then price and button in a row. */
	.rhsa-page-container .entry-content .rhsa-book-buy {
		display: grid !important;
		grid-template-columns: 104px minmax(0, 1fr);
		gap: 20px !important;
		align-items: center !important;
	}
	.rhsa-page-container .entry-content .rhsa-book-buy > .wp-block-column { width: auto; max-width: none; margin: 0 !important; }
	.rhsa-page-container .entry-content .rhsa-book-buy h2 { font-size: 26px !important; line-height: 30px !important; }
	.rhsa-page-container .entry-content .rhsa-book-buy > .wp-block-column:nth-child(2) p { display: none; }
	.rhsa-page-container .entry-content .rhsa-book-buy > .wp-block-column:last-child {
		grid-column: 1 / -1;
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 16px;
		padding-top: 20px;
		border-top: 1px solid rgba(255, 255, 255, .2);
		text-align: left;
	}
	.rhsa-page-container .entry-content p.rhsa-book-price.is-style-rhsa-big-number { margin: 0; font-size: 40px; }
	.rhsa-page-container .entry-content .rhsa-book-buy .wp-block-buttons { margin: 0; }
}
