/**
 * NMO Book showcase — scoped; mirrors html/books.html
 * Last updated: 2026-04-14 — logo strip moved to conditional widget-nmo-book-showcase-logo-strip.css; 2026-04-14 — Elementor “Space between logos”; 2026-04-14 — logo tile style “None”; 2026-04-14 — logo size Elementor controls; 2026-04-15 — logo tiles image-only; 2026-04-15 — logo tile retailer strip; 2026-04-15 — optional lead image on buy buttons; 2026-04-14 — flags + label span; 2026-04-08 — cover img
 */

.elementor-widget-nmo-book-showcase .nmo-book-showcase.book-section {
	background: var(--white, #fff);
	padding: clamp(4rem, 8vw, 7rem) 0;
}

.elementor-widget-nmo-book-showcase .nmo-book-showcase__container.container {
	width: 100%;
	max-width: var(--max-w, 1200px);
	margin: 0 auto;
	padding: 0 var(--pad-x, clamp(1.25rem, 5vw, 3rem));
}

.elementor-widget-nmo-book-showcase .book-grid,
.elementor-widget-nmo-book-showcase .nmo-book-showcase__grid {
	display: grid;
	grid-template-columns: 420px 1fr;
	gap: 5rem;
	align-items: start;
}

.elementor-widget-nmo-book-showcase .book-cover-col,
.elementor-widget-nmo-book-showcase .nmo-book-showcase__cover-col {
	position: sticky;
	top: 100px;
}

.elementor-widget-nmo-book-showcase .book-cover-col img.nmo-book-showcase__cover,
.elementor-widget-nmo-book-showcase .nmo-book-showcase__cover-col img.nmo-book-showcase__cover {
	width: 100%;
	border-radius: 6px;
	box-shadow: none;
	background-color: transparent !important;
	transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.elementor-widget-nmo-book-showcase .book-cover-col:hover img,
.elementor-widget-nmo-book-showcase .nmo-book-showcase__cover-col:hover .nmo-book-showcase__cover {
	transform: perspective(800px) rotateY(-5deg) scale(1.02);
}

.elementor-widget-nmo-book-showcase .buy-group,
.elementor-widget-nmo-book-showcase .nmo-book-showcase__buy-group {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
	margin-top: 1.5rem;
}

.elementor-widget-nmo-book-showcase .nmo-book-showcase__buy-btn.btn {
	width: 100%;
	justify-content: flex-start;
	gap: 0.75rem;
	text-align: left;
}

.elementor-widget-nmo-book-showcase .nmo-book-showcase__buy-btn .nmo-book-showcase__flag {
	flex-shrink: 0;
	font-size: 1.15em;
	line-height: 1;
	margin-inline-end: 0.1rem;
}

.elementor-widget-nmo-book-showcase .nmo-book-showcase__buy-btn .nmo-book-showcase__buy-label {
	flex: 1;
	min-width: 0;
}

/* Buy-btn icons: defaults; Style → Buy buttons → Icon size / Icon color override */
.elementor-widget-nmo-book-showcase .nmo-book-showcase__buy-btn .nmo-book-showcase__buy-btn-img {
	display: block;
	flex-shrink: 0;
	object-fit: contain;
	object-position: left center;
}

.elementor-widget-nmo-book-showcase .nmo-book-showcase__buy-btn .nmo-book-showcase__buy-btn-icon,
.elementor-widget-nmo-book-showcase .nmo-book-showcase__buy-btn .e-font-icon-svg,
.elementor-widget-nmo-book-showcase .nmo-book-showcase__buy-btn svg {
	display: block;
	flex-shrink: 0;
}

.elementor-widget-nmo-book-showcase .nmo-book-showcase__buy-btn .nmo-book-showcase__buy-btn-icon,
.elementor-widget-nmo-book-showcase .nmo-book-showcase__buy-btn i {
	font-size: 1.1rem;
	line-height: 1;
	color: var(--gold, #c8922a);
}

.elementor-widget-nmo-book-showcase .nmo-book-showcase__buy-btn svg {
	fill: var(--gold, #c8922a);
	color: var(--gold, #c8922a);
}

/* Logo strip CSS loads only in Logo tiles mode: widget-nmo-book-showcase-logo-strip.css */

.elementor-widget-nmo-book-showcase .book-content h2,
.elementor-widget-nmo-book-showcase .nmo-book-showcase__content h2 {
	margin-bottom: 0.5rem;
}

.elementor-widget-nmo-book-showcase .book-subtitle,
.elementor-widget-nmo-book-showcase .nmo-book-showcase__subtitle {
	font-family: var(--font-sans, Inter, system-ui, sans-serif);
	font-size: 1.1rem;
	font-weight: 500;
	color: var(--gold, #c8922a);
	margin-bottom: 0.5rem;
}

.elementor-widget-nmo-book-showcase .book-meta,
.elementor-widget-nmo-book-showcase .nmo-book-showcase__meta {
	font-size: 0.85rem;
	font-family: var(--font-sans, Inter, system-ui, sans-serif);
	color: var(--text-light, #6b6b6b);
	margin-bottom: 2rem;
	padding-bottom: 1.5rem;
	border-bottom: 1px solid var(--border, #e8e4df);
}

.elementor-widget-nmo-book-showcase .book-content p,
.elementor-widget-nmo-book-showcase .nmo-book-showcase__content p {
	margin-bottom: 1.25rem;
}

.elementor-widget-nmo-book-showcase .book-parts,
.elementor-widget-nmo-book-showcase .nmo-book-showcase__parts {
	margin: 2rem 0;
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.elementor-widget-nmo-book-showcase .book-part,
.elementor-widget-nmo-book-showcase .nmo-book-showcase__part {
	display: grid;
	grid-template-columns: 90px 1fr;
	gap: 1.25rem;
	align-items: start;
	padding: 1.25rem;
	background: var(--offwhite, #f5f3ef);
	border-radius: 5px;
	border-left: 3px solid var(--navy, #0b1d3a);
}

.elementor-widget-nmo-book-showcase .part-num {
	font-family: var(--font-serif, "Playfair Display", Georgia, serif);
	font-size: 2.2rem;
	font-weight: 900;
	color: var(--gold, #c8922a);
	line-height: 1;
}

.elementor-widget-nmo-book-showcase .part-label {
	font-family: var(--font-sans, Inter, system-ui, sans-serif);
	font-size: 0.65rem;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: var(--text-light, #6b6b6b);
	margin-top: 0.25rem;
}

.elementor-widget-nmo-book-showcase .book-part h4,
.elementor-widget-nmo-book-showcase .nmo-book-showcase__part h4 {
	font-size: 1rem;
	margin-bottom: 0.4rem;
}

.elementor-widget-nmo-book-showcase .book-part p,
.elementor-widget-nmo-book-showcase .nmo-book-showcase__part p {
	font-size: 0.9rem;
	margin: 0;
}

@media (max-width: 960px) {
	.elementor-widget-nmo-book-showcase .book-grid,
	.elementor-widget-nmo-book-showcase .nmo-book-showcase__grid {
		grid-template-columns: 1fr;
	}

	.elementor-widget-nmo-book-showcase .book-cover-col,
	.elementor-widget-nmo-book-showcase .nmo-book-showcase__cover-col {
		position: relative;
		top: 0;
		max-width: 400px;
		margin: 0 auto;
	}
}
