/* Homepage sections rendered by inc/home.php. */

.paleo-home-hero {
	padding: 120px 0;
	background: #fbf9f6 url("/app/uploads/2026/10/paleo-header-2024.webp") right center / cover no-repeat;
}

.paleo-home-hero__inner {
	max-width: var(--theme-normal-container-max-width, 1290px);
	margin: 0 auto;
	padding: 0 var(--theme-content-horizontal-spacing, 20px);
}

.paleo-home-hero h1 {
	max-width: 8em;
	margin: 0 0 20px;
	font-size: clamp(44px, 6vw, 90px);
	line-height: 1.1;
}

.paleo-home-hero__lead {
	max-width: 30em;
	margin: 0 0 28px;
	font-size: 18px;
	line-height: 1.6;
}

.paleo-home-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 16px;
	margin: 0 0 24px;
}

/* Darker than the theme orange so white text stays readable (5.2:1). */
.paleo-home-button {
	display: inline-block;
	padding: 14px 28px;
	border: 2px solid #c2410c;
	border-radius: 6px;
	background: #c2410c;
	color: #fff;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.2;
	text-decoration: none;
}

.paleo-home-button:hover,
.paleo-home-button:focus {
	border-color: #a8380a;
	background: #a8380a;
	color: #fff;
}

.paleo-home-button--outline {
	background: rgba(255, 255, 255, 0.85);
	color: #a8380a;
}

.paleo-home-button--outline:hover,
.paleo-home-button--outline:focus {
	background: #fff;
	color: #a8380a;
}

.paleo-home-links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 24px;
	margin: 0;
	padding: 0;
	list-style: none;
	font-weight: 600;
}

.paleo-home-links a {
	color: var(--theme-palette-color-4);
}

.paleo-home-section {
	margin-top: 72px;
	margin-bottom: 72px;
}

.paleo-home-section h2 {
	margin: 0 0 10px;
	font-size: clamp(28px, 3vw, 36px);
}

.paleo-home-section__intro {
	margin: 0;
	color: var(--theme-palette-color-3);
	font-size: 17px;
}

/* Heading on the left, "see all" button on the right, aligned to the heading's baseline area. */
.paleo-home-section__head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px 32px;
	margin-bottom: 28px;
}

.paleo-home-section__head h2 {
	margin-bottom: 6px;
}

.paleo-home-section__head .paleo-home-button {
	padding: 10px 22px;
	font-size: 16px;
}

/* Recipes: a warm full-width band, so the photos read as their own part of the page. */
.paleo-home-recipes {
	margin: 72px 0;
	padding: 64px 0 72px;
	background: #f6efe6;
}

.paleo-home-recipes__inner {
	max-width: var(--theme-normal-container-max-width, 1290px);
	margin: 0 auto;
	padding: 0 var(--theme-content-horizontal-spacing, 20px);
}

.paleo-home-recipes h2 {
	margin: 0 0 6px;
	font-size: clamp(28px, 3vw, 36px);
}

.paleo-home-recipes .paleo-home-button--outline {
	background: transparent;
}

.paleo-home-cards {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 24px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.paleo-home-cards--wide {
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.paleo-home-cards a {
	display: block;
	color: var(--theme-palette-color-4);
	text-decoration: none;
}

.paleo-home-cards__image {
	display: block;
	overflow: hidden;
	border-radius: 8px;
	box-shadow: 0 10px 24px rgba(17, 21, 24, 0.12);
}

.paleo-home-cards img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	transition: transform 0.4s ease;
}

.paleo-home-cards--wide img {
	aspect-ratio: 16 / 9;
}

.paleo-home-cards a:hover img,
.paleo-home-cards a:focus img {
	transform: scale(1.04);
}

.paleo-home-cards__meta {
	display: block;
	margin-top: 14px;
	color: #a8380a;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.paleo-home-cards__title {
	display: block;
	margin-top: 10px;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.35;
}

.paleo-home-cards__meta + .paleo-home-cards__title {
	margin-top: 4px;
}

.paleo-home-cards a:hover .paleo-home-cards__title,
.paleo-home-cards a:focus .paleo-home-cards__title {
	text-decoration: underline;
}

@media (prefers-reduced-motion: reduce) {
	.paleo-home-cards img {
		transition: none;
	}
}

/* The book gets a card, not the first screen. */
.paleo-home-book {
	display: grid;
	grid-template-columns: 220px minmax(0, 1fr);
	gap: 36px;
	align-items: center;
	padding: 32px;
	border-radius: 8px;
	background: var(--theme-palette-color-6);
}

.paleo-home-book__cover img {
	display: block;
	width: 220px;
	height: auto;
	border-radius: 4px;
}

.paleo-home-book p {
	margin: 0 0 12px;
}

.paleo-home-book__label {
	color: var(--theme-palette-color-3);
	font-size: 14px;
	font-weight: 600;
}

.paleo-home-book h2 a {
	color: inherit;
	text-decoration: none;
}

.paleo-home-book__buy {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px 20px;
	margin-top: 18px !important;
}

.paleo-home-book__price {
	font-size: 22px;
	font-weight: 700;
}

.paleo-home-book__price del {
	margin-right: 6px;
	color: var(--theme-palette-color-3);
	font-size: 16px;
	font-weight: 400;
}

.paleo-home-book__price ins {
	text-decoration: none;
}

.paleo-home-book__price ins .amount {
	color: var(--theme-palette-color-4);
}

.paleo-home-book__sample {
	color: var(--theme-palette-color-4);
	font-weight: 600;
}

.paleo-home-book__note {
	padding-left: 12px;
	border-left: 3px solid #c2410c;
	font-size: 15px;
}

@media (max-width: 999px) {
	.paleo-home-hero {
		padding: 80px 0;
	}

	.paleo-home-cards {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 689px) {
	.paleo-home-hero {
		padding: 48px 0 56px;
		background-position: 75% center;
	}

	/* The illustration fills the right edge on phones; a light veil keeps the text readable over it. */
	.paleo-home-hero__inner {
		position: relative;
	}

	.paleo-home-hero {
		background-image:
			linear-gradient(90deg, rgba(251, 249, 246, 0.95) 55%, rgba(251, 249, 246, 0.6)),
			url("/app/uploads/2026/10/paleo-header-2024.webp");
	}

	.paleo-home-hero h1 {
		font-size: 44px;
	}

	.paleo-home-hero__lead {
		font-size: 17px;
	}

	.paleo-home-section {
		margin-top: 48px;
		margin-bottom: 48px;
	}

	.paleo-home-cards {
		gap: 16px;
	}

	.paleo-home-cards--wide {
		grid-template-columns: minmax(0, 1fr);
	}

	.paleo-home-cards__title {
		font-size: 15px;
	}

	.paleo-home-recipes {
		margin: 48px 0;
		padding: 40px 0 48px;
	}

	.paleo-home-section__head {
		align-items: flex-start;
		flex-direction: column;
		margin-bottom: 20px;
	}

	/* Cover floated, so the text uses the full width under it. */
	.paleo-home-book {
		display: flow-root;
		padding: 20px;
	}

	.paleo-home-book__cover {
		float: left;
		margin: 0 16px 8px 0;
	}

	.paleo-home-book__cover img {
		width: 96px;
	}

	.paleo-home-book h2 {
		font-size: 22px;
	}

	/* Newsletter section: the envelope frame keeps desktop margins and MailPoet indents the stacked last-name field. */
	body .stk-609467d.stk-block-columns {
		margin-right: 0 !important;
		margin-left: 0 !important;
		padding: 40px 16px 24px !important;
	}

	body #mailpoet_form_1 .mailpoet_form_column:not(:first-child) {
		padding: 0;
	}
}
