/**
 * Utilities — venue colours via var(--color-primary) and var(--color-secondary).
 * Company brand fallbacks (when Venue branding is unset): primary #917145, secondary #1E374B — match ppb-core defaults.
 * Display headings: var(--font-display).
 */

:root {
	/* Default page background; group default is warm neutral; Neighbourhood child sets white */
	--ppb-color-surface-page: #f7f6f2;
}

body {
	margin: 0;
	font-family: var(--font-body, "Josefin Sans", system-ui, sans-serif);
	line-height: var(--ppb-leading-normal, 1.5);
	color: #1a1a1a;
	background: var(--ppb-color-surface-page, #f7f6f2);
}

/* Authored content headings — reset sets 400; parent stack uses 600 for default titles. */
h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 600;
}

.ppb-wrap {
	max-width: var(--ppb-layout-max-width, 1460px);
	margin-inline: auto;
	padding: 1.5rem;
}

.ppb-heading {
	font-family: var(--font-display, var(--font-body, "Josefin Sans", sans-serif));
	font-weight: var(--ppb-font-weight-display-soft, 600);
	color: var(--color-primary, #917145);
}

a {
	color: var(--color-secondary, #1E374B);
	text-underline-offset: 0.2em;
	transition:
		color var(--ppb-transition-base),
		text-decoration-color var(--ppb-transition-base);
}

a:hover,
a:focus-visible {
	color: color-mix(in srgb, var(--color-secondary) 82%, black);
}

/* Form Embed template: full-width split block (no main padding). */
.ppb-site-main--form-embed {
	padding: 0;
}

/* Booking thank-you: centred copy; title + excerpt from the page. */
.ppb-site-main--thankyou {
	padding-block: var(--ppb-space-main-gap);
}

.ppb-booking-thankyou {
	max-width: var(--ppb-layout-max-width);
	margin-inline: auto;
	padding-inline: 1.5rem;
	box-sizing: border-box;
}

.ppb-booking-thankyou__inner {
	max-width: var(--ppb-measure-wide);
	margin-inline: auto;
}

.ppb-booking-thankyou__title {
	margin: 0 0 var(--ppb-space-stack-md);
	font-family: var(--font-display, var(--font-body));
	font-size: var(--ppb-text-3xl);
	font-weight: var(--ppb-font-weight-display-soft, 600);
	color: var(--color-primary, #917145);
}

.ppb-booking-thankyou__body {
	margin: 0;
	font-size: var(--ppb-text-base);
	line-height: var(--ppb-leading-normal);
	color: var(--ppb-color-text, #1a1a1a);
}
