/* ==========================================================================
   Brides Hill House — Fresh Style
   Layered over Elementor. Selectors are prefixed with body.bhh-fresh so they
   outrank Elementor's generated per-page CSS.
   ========================================================================== */

:root {
	--bhh-serif: "Cormorant Garamond", Georgia, serif;
	--bhh-sans: "Nunito Sans", system-ui, -apple-system, "Segoe UI", sans-serif;

	--bhh-radius: 18px;
	--bhh-radius-sm: 10px;
	--bhh-shadow: 0 1px 2px rgba(42, 43, 38, .04), 0 12px 32px -12px rgba(42, 43, 38, .16);
	--bhh-shadow-lift: 0 2px 4px rgba(42, 43, 38, .05), 0 22px 44px -16px rgba(42, 43, 38, .24);
}

/* ---------- Colour palettes ----------
   Every colour on the site comes from these variables. The palette is chosen with
   data-bhh-palette on <body> (default: wildflower). Names are historical:
   --bhh-moss = deep accent, --bhh-sage = mid accent, --bhh-sage-soft = tint,
   --bhh-cream = page background, --bhh-paper = cards. */

/* Default: Wildflower (olive + mural-daffodil gold), chosen 2026-10-20 */
body.bhh-fresh {
	--bhh-moss: #36461f;
	--bhh-sage: #8a6a0c;
	--bhh-sage-soft: #f6edcf;
	--bhh-cream: #fbf7ec;
	--bhh-paper: #fffef9;
	--bhh-ink: #2b2a22;
	--bhh-muted: #64604f;
}

body.bhh-fresh[data-bhh-palette="sage"] {
	--bhh-moss: #2f4a33;
	--bhh-sage: #4a7745;
	--bhh-sage-soft: #e3ecdf;
	--bhh-cream: #f6f1e7;
	--bhh-paper: #fffdf8;
	--bhh-ink: #2a2b26;
	--bhh-muted: #5d6058;
}

body.bhh-fresh[data-bhh-palette="marsh-sky"] {
	--bhh-moss: #22405a;
	--bhh-sage: #3f6f96;
	--bhh-sage-soft: #e1ebf3;
	--bhh-cream: #f2f5f7;
	--bhh-paper: #ffffff;
	--bhh-ink: #1f2a33;
	--bhh-muted: #56636e;
}

body.bhh-fresh[data-bhh-palette="heather"] {
	--bhh-moss: #45304b;
	--bhh-sage: #7a5581;
	--bhh-sage-soft: #efe5ef;
	--bhh-cream: #f6f2ef;
	--bhh-paper: #fffdfb;
	--bhh-ink: #2d2530;
	--bhh-muted: #665c68;
}

body.bhh-fresh[data-bhh-palette="timber"] {
	--bhh-moss: #47301f;
	--bhh-sage: #9c5230;
	--bhh-sage-soft: #f5e4d8;
	--bhh-cream: #f7f1ea;
	--bhh-paper: #fffcf8;
	--bhh-ink: #2e2520;
	--bhh-muted: #6a5d55;
}

/* Derived colours: defined after the palettes so they follow whichever is active */
body.bhh-fresh,
body.bhh-fresh[data-bhh-palette] {
	--bhh-line: color-mix(in srgb, var(--bhh-moss) 14%, transparent);
}

/* ---------- Global kit overrides ---------- */

body.bhh-fresh,
body.bhh-fresh.elementor-kit-10 {
	--e-global-color-primary: var(--bhh-sage);
	--e-global-color-secondary: var(--bhh-cream);
	--e-global-color-text: var(--bhh-ink);
	--e-global-color-accent: var(--bhh-moss);
	--e-global-typography-primary-font-family: var(--bhh-serif);
	--e-global-typography-secondary-font-family: var(--bhh-serif);
	--e-global-typography-text-font-family: var(--bhh-sans);
	--e-global-typography-accent-font-family: var(--bhh-sans);
	--e-global-typography-500544d-font-family: var(--bhh-sans);
	background: var(--bhh-cream);
	color: var(--bhh-ink);
	font-family: var(--bhh-sans);
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

body.bhh-fresh .elementor-widget-text-editor,
body.bhh-fresh .elementor-widget-text-editor p,
body.bhh-fresh .elementor-widget-theme-post-content,
body.bhh-fresh .elementor-image-box-description,
body.bhh-fresh .elementor-price-table__features-list li {
	font-family: var(--bhh-sans) !important;
	color: var(--bhh-ink);
	font-size: 1.0625rem;
	line-height: 1.7;
	letter-spacing: 0;
}

body.bhh-fresh .elementor-widget-text-editor p {
	margin-bottom: 1.1em;
}

body.bhh-fresh .elementor-heading-title,
body.bhh-fresh .elementor-cta__title,
body.bhh-fresh .elementor-image-box-title,
body.bhh-fresh .elementor-price-table__integer-part {
	font-family: var(--bhh-serif) !important;
	font-weight: 500 !important;
	font-style: normal !important;
	letter-spacing: -0.01em !important;
	text-transform: none !important;
	color: var(--bhh-moss) !important;
	line-height: 1.1 !important;
}

body.bhh-fresh a {
	color: var(--bhh-moss);
	text-underline-offset: 3px;
	transition: color .2s ease;
}

body.bhh-fresh a:hover {
	color: var(--bhh-sage);
}

body.bhh-fresh strong {
	font-weight: 700;
	color: var(--bhh-moss);
}

body.bhh-fresh ::selection {
	background: var(--bhh-sage-soft);
	color: var(--bhh-moss);
}

/* Small eyebrow label used above section titles */
body.bhh-fresh .bhh-eyebrow {
	font-family: var(--bhh-sans) !important;
	font-size: .8rem !important;
	font-weight: 700 !important;
	letter-spacing: .22em !important;
	text-transform: uppercase !important;
	color: var(--bhh-sage) !important;
	line-height: 1.4 !important;
}

/* ---------- Buttons ---------- */

body.bhh-fresh .elementor-button,
body.bhh-fresh .elementor-cta__button,
body.bhh-fresh .elementor-price-table__button {
	font-family: var(--bhh-sans) !important;
	font-size: .95rem !important;
	font-weight: 700 !important;
	letter-spacing: .04em !important;
	text-transform: none !important;
	line-height: 1 !important;
	padding: 1em 2em !important;
	border: 0 !important;
	border-radius: 999px !important;
	background: var(--bhh-moss) !important;
	color: var(--bhh-paper) !important;
	fill: var(--bhh-paper) !important;
	box-shadow: 0 8px 20px -10px color-mix(in srgb, var(--bhh-moss) 60%, transparent);
	transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}

body.bhh-fresh .elementor-button:hover,
body.bhh-fresh .elementor-button:focus-visible,
body.bhh-fresh .elementor-cta__button:hover {
	background: var(--bhh-sage) !important;
	color: #fff !important;
	transform: translateY(-2px);
	box-shadow: 0 14px 26px -12px color-mix(in srgb, var(--bhh-moss) 65%, transparent);
}

/* ---------- Header (Hello Plus) ---------- */

body.bhh-fresh .ehp-header {
	background: color-mix(in srgb, var(--bhh-paper) 90%, transparent) !important;
	backdrop-filter: saturate(1.4) blur(10px);
	-webkit-backdrop-filter: saturate(1.4) blur(10px);
	border-bottom: 1px solid var(--bhh-line);
	box-shadow: none !important;
}

body.bhh-fresh .ehp-header {
	transition: background-color .35s ease, border-color .35s ease, backdrop-filter .35s ease;
}

/* Once the page is scrolled: see-through header with a light frosted blur */
body.bhh-fresh.bhh-scrolled .ehp-header {
	background: color-mix(in srgb, var(--bhh-paper) 45%, transparent) !important;
	border-bottom-color: transparent !important;
	backdrop-filter: blur(18px) saturate(1.2);
	-webkit-backdrop-filter: blur(18px) saturate(1.2);
}

body.bhh-fresh [data-elementor-type="ehp-header"] {
	position: sticky;
	top: 0;
	z-index: 100;
}

body.admin-bar.bhh-fresh [data-elementor-type="ehp-header"] {
	top: 32px;
}

@media (max-width: 782px) {
	body.admin-bar.bhh-fresh [data-elementor-type="ehp-header"] {
		top: 0;
	}
}

/* Tablet and desktop: logo left, menu centred on the page, icons right */
@media (min-width: 768px) {
	body.bhh-fresh .ehp-header__elements-container {
		grid-template-columns: 1fr auto 1fr !important;
	}

	body.bhh-fresh .ehp-header__site-link-container {
		justify-self: start;
	}

	body.bhh-fresh .ehp-header__navigation {
		justify-content: center !important;
		justify-self: center;
		width: auto !important;
	}

	body.bhh-fresh .ehp-header__elements-container > .ehp-header__ctas-container {
		justify-self: end;
	}
}

body.bhh-fresh .ehp-header__menu a {
	white-space: nowrap;
}

@media (min-width: 768px) and (max-width: 1024px) {
	body.bhh-fresh .ehp-header__elements-container {
		padding-left: 24px !important;
		padding-right: 24px !important;
	}

	body.bhh-fresh .ehp-header__menu a,
	body.bhh-fresh .ehp-header__item {
		letter-spacing: .05em !important;
	}
}

body.bhh-fresh .ehp-header__menu a,
body.bhh-fresh .ehp-header__item {
	font-family: var(--bhh-sans) !important;
	font-size: .82rem !important;
	font-weight: 600 !important;
	letter-spacing: .08em !important;
	text-transform: uppercase !important;
	color: var(--bhh-ink) !important;
}

body.bhh-fresh .ehp-header__menu a:hover,
body.bhh-fresh .ehp-header__menu .current-menu-item > a {
	color: var(--bhh-sage) !important;
}

body.bhh-fresh .ehp-header__button-toggle,
body.bhh-fresh .ehp-header__contact-buttons a {
	color: var(--bhh-moss) !important;
}

/* ---------- Footer (Hello Plus) ---------- */

body.bhh-fresh [data-elementor-type="ehp-footer"],
body.bhh-fresh .ehp-footer {
	background: var(--bhh-moss) !important;
	color: color-mix(in srgb, var(--bhh-paper) 82%, transparent) !important;
}

body.bhh-fresh .ehp-footer {
	padding-top: 72px !important;
	padding-bottom: 56px !important;
}

body.bhh-fresh .ehp-footer *,
body.bhh-fresh .ehp-footer a {
	font-family: var(--bhh-sans) !important;
	color: color-mix(in srgb, var(--bhh-paper) 82%, transparent) !important;
}

body.bhh-fresh .ehp-footer a:hover {
	color: #fff !important;
}

body.bhh-fresh .ehp-footer h2,
body.bhh-fresh .ehp-footer h3,
body.bhh-fresh .ehp-footer h4,
body.bhh-fresh .ehp-footer [class*="__title"],
body.bhh-fresh .ehp-footer [class*="__heading"] {
	font-family: var(--bhh-serif) !important;
	font-size: 1.5rem !important;
	font-weight: 500 !important;
	color: #fff !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}

/* The footer widget is set to "hidden" on tablet and mobile in Elementor; show it
   everywhere so the Terms / Privacy links and company details are always reachable */
body.bhh-fresh .elementor-widget-ehp-footer.elementor-hidden-tablet,
body.bhh-fresh .elementor-widget-ehp-footer.elementor-hidden-mobile {
	display: block !important;
}

body.bhh-fresh .ehp-footer [class*="menu-heading"] {
	font-family: var(--bhh-serif) !important;
	font-size: 1.6rem !important;
	font-weight: 500 !important;
	color: #fff !important;
}

/* Bottom line: copyright + Terms / Privacy links */
body.bhh-fresh .ehp-footer__copyright {
	font-size: .85rem !important;
	letter-spacing: .02em;
	text-transform: none !important;
}

body.bhh-fresh .ehp-footer__copyright a {
	text-decoration: underline;
	text-decoration-color: color-mix(in srgb, var(--bhh-paper) 40%, transparent);
	text-underline-offset: 3px;
}

body.bhh-fresh .ehp-footer__copyright a:hover {
	text-decoration-color: #fff;
}

body.bhh-fresh .ehp-footer__copyright .bhh-sep {
	opacity: .5;
	margin: 0 6px;
}

body.bhh-fresh .ehp-footer img {
	filter: brightness(0) invert(1);
	opacity: .9;
}

/* Empty Elementor floating bar renders as a bare green strip — hide it when it has no content */
body.bhh-fresh .e-floating-bars:not(:has(a, button, p, h2, h3, span)) {
	display: none !important;
}

/* ---------- Images ---------- */

body.bhh-fresh .elementor-widget-image img,
body.bhh-fresh .elementor-image-box-img img {
	border-radius: var(--bhh-radius);
	box-shadow: var(--bhh-shadow);
}

body.bhh-fresh .elementor-widget-image a img {
	transition: transform .35s ease, box-shadow .35s ease;
}

body.bhh-fresh .elementor-widget-image a:hover img {
	transform: translateY(-3px);
	box-shadow: var(--bhh-shadow-lift);
}

/* ==========================================================================
   HOME (page 39)
   ========================================================================== */

/* Overall rhythm: centred content width */
body.bhh-fresh .elementor-39 > .e-con,
body.bhh-fresh .elementor-39 > .elementor-element.e-con {
	--container-max-width: 1180px;
}

/* --- Hero: "Space to hire" + CTA image --- */

/* Spacer above the page content (single-page template 147) */
body.bhh-fresh .elementor-147 .elementor-element-02ebc9b {
	display: none !important;
}

body.bhh-fresh .elementor-39 .elementor-element-417b28b,
body.bhh-fresh .elementor-39 .elementor-element-417b28b p {
	font-family: var(--bhh-serif) !important;
	font-size: clamp(3.2rem, 8vw, 6.5rem) !important;
	font-weight: 500 !important;
	letter-spacing: .02em !important;
	text-transform: none !important;
	line-height: 1 !important;
	color: var(--bhh-moss) !important;
	text-align: center;
	margin: 0 !important;
}

body.bhh-fresh .elementor-39 .elementor-element-417b28b {
	margin-bottom: 28px !important;
}

body.bhh-fresh .elementor-39 .elementor-element-892d98e {
	padding-top: 24px !important;
	padding-bottom: 24px !important;
	--container-max-width: 1180px;
}

/* Banner: panoramic mural on top, title + button on a paper strip beneath */
body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta {
	border-radius: 28px;
	overflow: hidden;
	box-shadow: var(--bhh-shadow-lift);
	min-height: 0 !important;
	display: flex;
	flex-direction: column;
	background: var(--bhh-paper);
}

body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__bg-wrapper {
	position: relative !important;
	inset: auto;
	width: 100%;
	height: 0 !important;
	min-height: 0 !important;
	/* 2.5 : 1 banner — padding ratio, because aspect-ratio miscalculates inside Elementor flex containers */
	padding-bottom: 40%;
}

body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__bg {
	background-size: cover !important;
	/* Rafters photo: keep the point where the timbers meet in view */
	background-position: center 40% !important;
}

body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__bg-overlay {
	display: none !important;
}

body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__content {
	position: relative;
	background: var(--bhh-paper) !important;
	padding: 30px 44px !important;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: 16px 32px;
	text-align: left;
	min-height: 0 !important;
}

body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__title {
	color: var(--bhh-moss) !important;
	font-size: clamp(2.2rem, 4vw, 3.4rem) !important;
	margin: 0 !important;
	text-transform: capitalize !important;
	text-shadow: none;
	width: auto !important;
}

body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__button-wrapper {
	margin: 0 !important;
	width: auto !important;
}

/* --- Bookings / Facilities: price tables → soft cards --- */
body.bhh-fresh .elementor-39 .elementor-element-828efbc {
	gap: 28px !important;
	padding-top: 48px !important;
	padding-bottom: 16px !important;
	--container-max-width: 1180px;
	align-items: stretch !important;
}

body.bhh-fresh .elementor-39 .elementor-element-828efbc > .e-con {
	flex: 1 1 0 !important;
}

body.bhh-fresh .elementor-widget-price-table {
	width: 100% !important;
	max-width: 100% !important;
	--container-widget-width: 100% !important;
	--e-transform-scale: 1 !important;
	transform: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 24px !important;
	background: var(--bhh-paper) !important;
	box-shadow: var(--bhh-shadow);
	height: 100%;
}

body.bhh-fresh .elementor-widget-price-table .elementor-price-table {
	padding: 44px 40px 40px;
	text-align: left;
}

body.bhh-fresh .elementor-price-table__price {
	justify-content: flex-start !important;
	padding: 0 0 20px !important;
	margin-bottom: 8px;
	border-bottom: 1px solid var(--bhh-line);
	background: transparent !important;
}

body.bhh-fresh .elementor-price-table__integer-part {
	font-size: 2.4rem !important;
	color: var(--bhh-moss) !important;
}

body.bhh-fresh .elementor-price-table__features-list {
	background: transparent !important;
	padding: 0 !important;
	display: grid;
	grid-template-columns: 1fr 1fr;
	column-gap: 24px;
}

body.bhh-fresh .elementor-price-table__features-list li {
	text-align: left !important;
	padding: 14px 0 !important;
	border-bottom: 1px solid var(--bhh-line);
	font-size: .98rem !important;
	line-height: 1.4 !important;
}

body.bhh-fresh .elementor-price-table__features-list li:before {
	display: none !important;
}

body.bhh-fresh .elementor-price-table__feature-inner {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	margin: 0 !important;
}

body.bhh-fresh .elementor-price-table__feature-inner svg {
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin: 2px 0 0 !important;
	fill: var(--bhh-sage) !important;
}

/* Price lines (pound-sign icon) sit together in a soft panel spanning both columns */
body.bhh-fresh .elementor-price-table__features-list li:has(.e-fas-pound-sign) {
	grid-column: 1 / -1;
	background: var(--bhh-sage-soft);
	border-bottom: 0;
	padding: 10px 16px !important;
	font-weight: 600;
	color: var(--bhh-moss) !important;
}

body.bhh-fresh .elementor-price-table__features-list li:not(:has(.e-fas-pound-sign)) + li:has(.e-fas-pound-sign) {
	margin-top: 16px;
	padding-top: 16px !important;
	border-radius: 14px 14px 0 0;
}

body.bhh-fresh .elementor-price-table__features-list li:has(.e-fas-pound-sign):last-child {
	padding-bottom: 16px !important;
	border-radius: 0 0 14px 14px;
}

body.bhh-fresh .elementor-price-table__features-list li:has(.e-fas-pound-sign) svg {
	fill: var(--bhh-moss) !important;
	width: 14px;
	height: 14px;
	margin-top: 4px !important;
}

/* Facilities: last item (capacity) spans both columns */
body.bhh-fresh .elementor-39 .elementor-element-ff51056 .elementor-price-table__features-list li:last-child {
	grid-column: 1 / -1;
	border-bottom: 0;
	font-weight: 600;
	color: var(--bhh-moss) !important;
}

/* --- Waiting-list note, button, "A community vision" heading --- */
/* Spacers above and below "Our vision" */
body.bhh-fresh .elementor-39 .elementor-element-8dd5a6f,
body.bhh-fresh .elementor-39 .elementor-element-aa64836 {
	display: none !important;
}

body.bhh-fresh .elementor-39 .elementor-element-215e95e {
	padding-top: 32px !important;
	padding-bottom: 8px !important;
	gap: 22px !important;
}

body.bhh-fresh .elementor-39 .elementor-element-e152f60 {
	margin-top: 0 !important;
}

body.bhh-fresh .elementor-39 .elementor-element-e152f60 .elementor-heading-title {
	font-size: clamp(2rem, 4.4vw, 3.6rem) !important;
	max-width: none;
	margin: 0 auto !important;
	color: var(--bhh-moss) !important;
}

body.bhh-fresh .elementor-39 .elementor-element-e152f60 .elementor-heading-title:not(span)::before {
	content: "Our vision";
	display: block;
	font-family: var(--bhh-sans);
	font-size: .8rem;
	font-weight: 700;
	letter-spacing: .22em;
	text-transform: uppercase;
	color: var(--bhh-sage);
	margin-bottom: 18px;
}

/* --- Story column + poster --- */
body.bhh-fresh .elementor-39 .elementor-element-e1b41bd {
	--container-max-width: 1180px;
	gap: 56px !important;
	padding-top: 28px !important;
	padding-bottom: 40px !important;
	align-items: flex-start !important;
}

body.bhh-fresh .elementor-39 .elementor-element-72fc0c8 {
	margin: 0 !important;
}

body.bhh-fresh .elementor-39 .elementor-element-72fc0c8 p:first-child {
	font-family: var(--bhh-serif) !important;
	font-size: 1.6rem !important;
	line-height: 1.35 !important;
	color: var(--bhh-moss) !important;
}

/* Address box: link to Google Maps with a pin icon */
body.bhh-fresh .elementor-39 .elementor-element-d6937de .bhh-address-link {
	display: inline-flex;
	align-items: flex-start;
	gap: 8px;
	color: var(--bhh-moss) !important;
	font-weight: 600;
	text-decoration: underline;
	text-decoration-color: color-mix(in srgb, var(--bhh-moss) 35%, transparent);
	text-underline-offset: 4px;
}

body.bhh-fresh .elementor-39 .elementor-element-d6937de .bhh-address-link::before {
	content: "";
	flex: 0 0 auto;
	width: 18px;
	height: 18px;
	margin-top: 3px;
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E") no-repeat center / contain;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5.25 7 13 7 13s7-7.75 7-13a7 7 0 0 0-7-7zm0 9.5A2.5 2.5 0 1 1 12 6.5a2.5 2.5 0 0 1 0 5z'/%3E%3C/svg%3E") no-repeat center / contain;
}

body.bhh-fresh .elementor-39 .elementor-element-d6937de .bhh-address-link:hover {
	text-decoration-color: currentColor;
}

/* Story section subheadings */
body.bhh-fresh .elementor-39 .elementor-element-72fc0c8 h3 {
	font-family: var(--bhh-serif) !important;
	font-size: 1.55rem !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	color: var(--bhh-heading) !important;
	margin: 1.6em 0 .45em !important;
	padding-top: .9em;
	border-top: 1px solid var(--bhh-line);
}

body.bhh-fresh .elementor-39 .elementor-element-72fc0c8 p {
	margin-bottom: .8em !important;
}

body.bhh-fresh .elementor-39 .elementor-element-72fc0c8 p:first-child {
	margin-bottom: .4em !important;
}

body.bhh-fresh .elementor-39 .elementor-element-d6937de {
	background: var(--bhh-sage-soft);
	border-radius: var(--bhh-radius-sm);
	padding: 14px 18px !important;
	margin: 6px 0 18px !important;
	font-weight: 600;
}

body.bhh-fresh .elementor-39 .elementor-element-d6937de p {
	margin: 0;
	color: var(--bhh-moss) !important;
	font-weight: 600;
}

body.bhh-fresh .elementor-39 .elementor-element-c41a808 {
	display: none;
}

body.bhh-fresh .elementor-39 .elementor-element-84b527c {
	position: sticky;
	top: 110px;
}

/* Elementor's saved widths here add up to 106% + gap; pin them so the poster fits */
@media (min-width: 768px) {
	body.bhh-fresh .elementor-39 .elementor-element-373baaa {
		--width: auto !important;
		width: auto !important;
		flex: 1 1 0 !important;
		min-width: 0 !important;
	}

	body.bhh-fresh .elementor-39 .elementor-element-84b527c {
		--width: 42% !important;
		width: 42% !important;
		flex: 0 0 42% !important;
		min-width: 0 !important;
	}
}

/* --- "A space that celebrates nature" band --- */
body.bhh-fresh .elementor-39 .elementor-element-b0ffa15 {
	background: var(--bhh-paper) !important;
	border-radius: 32px;
	box-shadow: var(--bhh-shadow);
	max-width: min(1180px, calc(100% - 32px));
	margin: 56px auto !important;
	padding: 64px 56px !important;
	gap: 48px !important;
	align-items: center !important;
	--container-max-width: 100%;
}

body.bhh-fresh .elementor-39 .elementor-element-b0ffa15 > .e-con-inner {
	gap: 48px !important;
	align-items: center !important;
	flex-wrap: nowrap;
}

body.bhh-fresh .elementor-39 .elementor-element-2136481 {
	--width: auto !important;
	width: auto !important;
	flex: 1 1 0 !important;
}

body.bhh-fresh .elementor-39 .elementor-element-b4ce278 {
	--width: 38% !important;
	width: 38% !important;
	flex: 0 0 38% !important;
}

body.bhh-fresh .elementor-39 .elementor-element-42c74f3 img {
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	/* Iris photo: the flower sits low in the frame */
	object-position: center 75%;
}

body.bhh-fresh .elementor-39 .elementor-element-3859a92 .elementor-heading-title {
	font-size: clamp(2.2rem, 4vw, 3.3rem) !important;
	margin-bottom: 22px !important;
	text-align: left !important;
}

body.bhh-fresh .elementor-39 .elementor-element-bd6c2f4 {
	display: none;
}

/* --- Supporters --- */
body.bhh-fresh .elementor-39 .elementor-element-4d18b11 {
	padding-top: 48px !important;
	padding-bottom: 8px !important;
}

body.bhh-fresh .elementor-39 .elementor-element-b48bafb .elementor-heading-title {
	font-family: var(--bhh-sans) !important;
	font-size: .85rem !important;
	font-weight: 700 !important;
	letter-spacing: .24em !important;
	color: var(--bhh-sage) !important;
}

/* Supporters: one compact centred row of small, equal-height tiles */
body.bhh-fresh .elementor-39 .elementor-element-4d18b11 {
	padding-top: 40px !important;
}

body.bhh-fresh .elementor-39 .elementor-element-7d449a0 {
	--container-max-width: 760px;
	max-width: 760px;
	margin: 0 auto !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	justify-content: center !important;
	align-items: center !important;
	gap: 14px !important;
	padding-top: 16px !important;
	padding-bottom: 64px !important;
}

/* Flatten the nested columns so all three images sit in the same row */
body.bhh-fresh .elementor-39 .elementor-element-e1442b3,
body.bhh-fresh .elementor-39 .elementor-element-e953fbd {
	display: contents !important;
}

body.bhh-fresh .elementor-39 .elementor-element-13dea9d {
	display: none !important;
}

body.bhh-fresh .elementor-39 .elementor-element-4288629,
body.bhh-fresh .elementor-39 .elementor-element-63dc8a3,
body.bhh-fresh .elementor-39 .elementor-element-5d641b8,
body.bhh-fresh .elementor-39 .elementor-element-d885c17,
body.bhh-fresh .elementor-39 .elementor-element-bd0c71b {
	width: auto !important;
	--width: auto !important;
	flex: 0 0 auto !important;
	margin: 0 !important;
}

body.bhh-fresh .elementor-39 .elementor-element-5d641b8 img,
body.bhh-fresh .elementor-39 .elementor-element-d885c17 img,
body.bhh-fresh .elementor-39 .elementor-element-bd0c71b img {
	display: block;
	height: 84px !important;
	width: auto !important;
	max-width: 210px !important;
	object-fit: contain;
	background: #fff;
	padding: 12px;
	border-radius: 12px !important;
	box-shadow: var(--bhh-shadow);
}

/* The Saint Bride stone is a photo, not a logo: square crop, no padding */
body.bhh-fresh .elementor-39 .elementor-element-5d641b8 img {
	width: 84px !important;
	padding: 0;
	object-fit: cover;
}

@media (max-width: 767px) {
	body.bhh-fresh .elementor-39 .elementor-element-5d641b8 img,
	body.bhh-fresh .elementor-39 .elementor-element-d885c17 img,
	body.bhh-fresh .elementor-39 .elementor-element-bd0c71b img {
		height: 64px !important;
		max-width: 150px !important;
		padding: 8px;
	}

	body.bhh-fresh .elementor-39 .elementor-element-5d641b8 img {
		width: 64px !important;
		padding: 0;
	}

	body.bhh-fresh .elementor-39 .elementor-element-7d449a0 {
		gap: 10px !important;
		padding-bottom: 48px !important;
	}
}

/* --- Photo carousel ("A look around") --- */
body.bhh-fresh .elementor-element-b4a11e1 {
	width: 100%;
	max-width: 1180px;
	margin: 64px auto 0 !important;
	gap: 28px !important;
}

body.bhh-fresh .elementor-element-b4a11e1 .elementor-heading-title {
	font-size: clamp(2.2rem, 4vw, 3.3rem) !important;
}

body.bhh-fresh .elementor-element-b4a11e1 .elementor-heading-title:not(span)::before {
	content: "Gallery";
	display: block;
	font-family: var(--bhh-sans);
	font-size: .8rem;
	font-weight: 700;
	letter-spacing: .22em;
	text-transform: uppercase;
	color: var(--bhh-sage);
	margin-bottom: 16px;
}

body.bhh-fresh .elementor-element-b4a11e1 .elementor-image-carousel-wrapper {
	padding-bottom: 44px;
}

body.bhh-fresh .elementor-element-b4a11e1 .swiper-slide {
	border-radius: var(--bhh-radius);
	overflow: hidden;
}

body.bhh-fresh .elementor-element-b4a11e1 .swiper-slide-image {
	width: 100%;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	border-radius: var(--bhh-radius);
	transition: transform .5s ease;
}

body.bhh-fresh .elementor-element-b4a11e1 .swiper-slide a:hover .swiper-slide-image {
	transform: scale(1.04);
}

body.bhh-fresh .elementor-element-b4a11e1 .elementor-swiper-button {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: color-mix(in srgb, var(--bhh-paper) 92%, transparent);
	box-shadow: var(--bhh-shadow);
	display: flex;
	align-items: center;
	justify-content: center;
	top: calc(50% - 22px);
	transition: background-color .2s ease, transform .2s ease;
}

body.bhh-fresh .elementor-element-b4a11e1 .elementor-swiper-button:hover {
	background: #fff;
	transform: scale(1.06);
}

body.bhh-fresh .elementor-element-b4a11e1 .elementor-swiper-button svg {
	width: 18px;
	height: 18px;
	fill: var(--bhh-moss) !important;
}

body.bhh-fresh .elementor-element-b4a11e1 .elementor-swiper-button-prev {
	left: 14px;
}

body.bhh-fresh .elementor-element-b4a11e1 .elementor-swiper-button-next {
	right: 14px;
}

body.bhh-fresh .elementor-element-b4a11e1 .swiper-pagination-bullet {
	width: 8px;
	height: 8px;
	background: var(--bhh-moss);
	opacity: .25;
	transition: opacity .2s ease, width .2s ease;
}

body.bhh-fresh .elementor-element-b4a11e1 .swiper-pagination-bullet-active {
	width: 22px;
	border-radius: 4px;
	opacity: 1;
}

/* Lightbox: hide the filename-style caption */
body.bhh-fresh .elementor-lightbox .elementor-slideshow__footer {
	display: none !important;
}

/* ==========================================================================
   THE TEAM (page 485)
   ========================================================================== */

body.bhh-fresh .elementor-485 .elementor-element-d7d518a {
	--container-max-width: 1180px;
	padding-top: 64px !important;
	padding-bottom: 32px !important;
	gap: 56px !important;
	align-items: center !important;
	min-height: 0 !important;
}

body.bhh-fresh .elementor-485 .elementor-element-9e05269 .elementor-heading-title {
	font-size: clamp(3rem, 6vw, 5rem) !important;
	margin-bottom: 18px !important;
}

body.bhh-fresh .elementor-485 .elementor-element-9e05269 .elementor-heading-title:not(span)::before {
	content: "Who we are";
	display: block;
	font-family: var(--bhh-sans);
	font-size: .8rem;
	font-weight: 700;
	letter-spacing: .22em;
	text-transform: uppercase;
	color: var(--bhh-sage);
	margin-bottom: 16px;
}

body.bhh-fresh .elementor-485 .elementor-element-f209d50,
body.bhh-fresh .elementor-485 .elementor-element-f209d50 p {
	font-family: var(--bhh-serif) !important;
	font-size: clamp(1.4rem, 2.2vw, 1.85rem) !important;
	line-height: 1.35 !important;
	color: var(--bhh-muted) !important;
}

body.bhh-fresh .elementor-485 .elementor-element-c9f9568 img {
	width: 100%;
	max-height: 600px;
	aspect-ratio: 4 / 5;
	object-fit: cover;
	object-position: center 65%;
}

body.bhh-fresh .elementor-485 .elementor-element-48a776c {
	--container-max-width: 1180px;
	background: var(--bhh-paper);
	border-radius: 32px;
	box-shadow: var(--bhh-shadow);
	max-width: min(1180px, calc(100% - 32px));
	margin: 24px auto 0 !important;
	padding: 56px !important;
	gap: 28px !important;
}

body.bhh-fresh .elementor-485 .elementor-element-858f5f7 p {
	font-family: var(--bhh-sans) !important;
	font-size: 1.02rem !important;
	line-height: 1.65 !important;
	margin-bottom: .4em;
}

body.bhh-fresh .elementor-485 .elementor-element-858f5f7 p strong,
body.bhh-fresh .elementor-485 .elementor-element-858f5f7 p b {
	font-family: var(--bhh-serif);
	font-size: 1.45rem;
	font-weight: 600;
	display: inline-block;
	margin-top: .9em;
}

body.bhh-fresh .elementor-485 .elementor-element-d175f1a {
	--divider-color: var(--bhh-line) !important;
}

body.bhh-fresh .elementor-485 .elementor-element-9375ba1 {
	--gap: 18px !important;
	--row-gap: 18px !important;
	--column-gap: 18px !important;
}

body.bhh-fresh .elementor-485 .elementor-element-9375ba1 img {
	aspect-ratio: 4 / 5;
	object-fit: cover;
	width: 100%;
}

body.bhh-fresh .elementor-485 .elementor-element-fd5b057 {
	padding-top: 104px !important;
	padding-bottom: 32px !important;
	gap: 20px !important;
}

body.bhh-fresh .elementor-485 .elementor-element-c6c1582 .elementor-heading-title {
	font-size: clamp(2.4rem, 4.6vw, 3.8rem) !important;
	max-width: 16ch;
	margin: 0 auto !important;
}

body.bhh-fresh .elementor-485 .elementor-element-ea37bc3,
body.bhh-fresh .elementor-485 .elementor-element-ea37bc3 p {
	color: var(--bhh-muted) !important;
	font-size: 1.1rem !important;
}

body.bhh-fresh .elementor-485 .elementor-element-2651cab {
	padding-top: 72px !important;
}

body.bhh-fresh .elementor-485 .elementor-element-66079cc .elementor-heading-title {
	font-size: clamp(2.4rem, 4.6vw, 3.6rem) !important;
}

body.bhh-fresh .elementor-485 .elementor-element-58fc4a2 .elementor-heading-title {
	font-family: var(--bhh-sans) !important;
	font-size: 1.05rem !important;
	color: var(--bhh-muted) !important;
	line-height: 1.6 !important;
	max-width: 62ch;
	margin: 14px auto 0 !important;
}

body.bhh-fresh .elementor-485 .elementor-element-18c480f {
	max-width: min(1180px, calc(100% - 32px));
	margin-left: auto !important;
	margin-right: auto !important;
	gap: 24px !important;
	padding-top: 40px !important;
	padding-bottom: 104px !important;
	align-items: stretch !important;
}

body.bhh-fresh .elementor-widget-image-box {
	background: var(--bhh-paper);
	border-radius: 22px;
	box-shadow: var(--bhh-shadow);
	overflow: hidden;
	height: 100%;
	transition: transform .3s ease, box-shadow .3s ease;
}

body.bhh-fresh .elementor-widget-image-box:hover {
	transform: translateY(-4px);
	box-shadow: var(--bhh-shadow-lift);
}

body.bhh-fresh .elementor-image-box-wrapper {
	text-align: left !important;
}

body.bhh-fresh .elementor-image-box-img {
	width: 100% !important;
	margin: 0 !important;
}

body.bhh-fresh .elementor-image-box-img img {
	border-radius: 0 !important;
	box-shadow: none !important;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	width: 100%;
}

body.bhh-fresh .elementor-image-box-content {
	padding: 24px 26px 28px;
}

body.bhh-fresh .elementor-image-box-title {
	font-size: 1.65rem !important;
	margin-bottom: 10px !important;
}

body.bhh-fresh .elementor-image-box-description {
	font-size: .97rem !important;
	color: var(--bhh-muted) !important;
	line-height: 1.6 !important;
}

/* ==========================================================================
   HISTORY (page 20)
   ========================================================================== */

body.bhh-fresh .elementor-20 .elementor-element-a269f8b {
	display: none;
}

body.bhh-fresh .elementor-20 .elementor-element-62594a3 {
	padding-top: 72px !important;
	padding-bottom: 8px !important;
}

body.bhh-fresh .elementor-20 .elementor-element-acddeec .elementor-heading-title {
	font-size: clamp(2.6rem, 5.4vw, 4.4rem) !important;
	max-width: 17ch;
	margin: 0 auto !important;
}

body.bhh-fresh .elementor-20 .elementor-element-acddeec .elementor-heading-title:not(span)::before {
	content: "History";
	display: block;
	font-family: var(--bhh-sans);
	font-size: .8rem;
	font-weight: 700;
	letter-spacing: .22em;
	text-transform: uppercase;
	color: var(--bhh-sage);
	margin-bottom: 18px;
}

body.bhh-fresh .elementor-20 .elementor-element-94f70bb {
	--container-max-width: 1180px;
	--gap: 20px !important;
	--row-gap: 20px !important;
	--column-gap: 20px !important;
}

body.bhh-fresh .elementor-20 .elementor-element-94f70bb img {
	aspect-ratio: 3 / 2;
	object-fit: cover;
	width: 100%;
}

body.bhh-fresh .elementor-20 .elementor-element-32f1cf06 {
	--container-max-width: 760px;
	margin-top: 0 !important; /* Elementor saved an 80px margin here */
	padding-top: 32px !important;
	padding-bottom: 104px !important;
}

body.bhh-fresh .elementor-20 .elementor-element-7ea974f p {
	font-size: 1.08rem !important;
	line-height: 1.8 !important;
	color: var(--bhh-ink) !important;
}

body.bhh-fresh .elementor-20 .elementor-element-7ea974f p:first-child {
	font-family: var(--bhh-serif) !important;
	font-size: 1.6rem !important;
	font-style: italic;
	color: var(--bhh-sage) !important;
}

body.bhh-fresh .elementor-20 .elementor-element-7ea974f h3 {
	font-family: var(--bhh-serif) !important;
	font-size: 1.7rem !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	color: var(--bhh-heading) !important;
	margin: 1.7em 0 .5em !important;
	padding-top: 1em;
	border-top: 1px solid var(--bhh-line);
}

body.bhh-fresh .elementor-20 .elementor-element-7ea974f h3:first-of-type {
	border-top: 0;
	padding-top: 0;
	margin-top: 1.2em !important;
}

body.bhh-fresh .elementor-20 .elementor-element-7ea974f h3:first-of-type + p::first-letter {
	font-family: var(--bhh-serif);
	float: left;
	font-size: 4.2em;
	line-height: .85;
	padding: 6px 10px 0 0;
	color: var(--bhh-moss);
}

/* ==========================================================================
   LEGAL PAGES: Terms & Conditions (573) and Privacy Policy (3)
   Both use the same element IDs: b7e0001 container, b7e0002 title, b7e0003 text
   ========================================================================== */

body.bhh-fresh :is(.elementor-573, .elementor-3) .elementor-element-b7e0001 {
	--container-max-width: 780px;
	padding-top: 64px !important;
	padding-bottom: 104px !important;
	gap: 8px !important;
}

body.bhh-fresh :is(.elementor-573, .elementor-3) .elementor-element-b7e0002 .elementor-heading-title {
	font-size: clamp(2.8rem, 6vw, 4.4rem) !important;
	margin-bottom: 8px !important;
}

body.bhh-fresh :is(.elementor-573, .elementor-3) .elementor-element-b7e0002 .elementor-heading-title:not(span)::before {
	content: "Booking terms";
	display: block;
	font-family: var(--bhh-sans);
	font-size: .8rem;
	font-weight: 700;
	letter-spacing: .22em;
	text-transform: uppercase;
	color: var(--bhh-sage);
	margin-bottom: 16px;
}

body.bhh-fresh .elementor-3 .elementor-element-b7e0002 .elementor-heading-title:not(span)::before {
	content: "Your information";
}

body.bhh-fresh :is(.elementor-573, .elementor-3) .elementor-element-b7e0003 p,
body.bhh-fresh :is(.elementor-573, .elementor-3) .elementor-element-b7e0003 li {
	font-size: 1.04rem !important;
	line-height: 1.75 !important;
}

body.bhh-fresh :is(.elementor-573, .elementor-3) .elementor-element-b7e0003 h2 {
	font-family: var(--bhh-serif) !important;
	font-weight: 500;
	font-size: clamp(1.7rem, 3vw, 2.2rem);
	line-height: 1.15;
	color: var(--bhh-moss);
	margin: 56px 0 14px;
	padding-top: 28px;
	border-top: 1px solid var(--bhh-line);
}

body.bhh-fresh :is(.elementor-573, .elementor-3) .elementor-element-b7e0003 h3 {
	font-family: var(--bhh-sans) !important;
	font-size: 1.02rem;
	font-weight: 700;
	letter-spacing: .02em;
	color: var(--bhh-moss);
	margin: 26px 0 6px;
}

body.bhh-fresh :is(.elementor-573, .elementor-3) .elementor-element-b7e0003 ul {
	margin: 0 0 1.1em;
	padding-left: 1.3em;
}

body.bhh-fresh :is(.elementor-573, .elementor-3) .elementor-element-b7e0003 li {
	margin-bottom: .45em;
	padding-left: .25em;
}

body.bhh-fresh :is(.elementor-573, .elementor-3) .elementor-element-b7e0003 li::marker {
	color: var(--bhh-sage);
}

body.bhh-fresh :is(.elementor-573, .elementor-3) .bhh-terms-updated {
	color: var(--bhh-muted) !important;
	font-size: .92rem !important;
	margin-bottom: 28px !important;
}

body.bhh-fresh :is(.elementor-573, .elementor-3) .bhh-terms-callout {
	background: var(--bhh-sage-soft);
	border-radius: var(--bhh-radius);
	padding: 24px 28px;
	margin-bottom: 8px;
}

body.bhh-fresh :is(.elementor-573, .elementor-3) .bhh-terms-callout p {
	margin: 0 0 .5em !important;
}

body.bhh-fresh :is(.elementor-573, .elementor-3) .bhh-terms-callout p:last-child {
	margin-bottom: 0 !important;
}

/* Placeholders still to be filled in */
body.bhh-fresh :is(.elementor-573, .elementor-3) mark {
	background: #fff1b8;
	color: #6b5200;
	padding: 1px 6px;
	border-radius: 4px;
	font-weight: 600;
}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 1024px) {
	/* Side gutters on every top-level section (tablet; phones override below) */
	body.bhh-fresh .elementor-39 > .e-con,
	body.bhh-fresh .elementor-485 > .e-con,
	body.bhh-fresh .elementor-20 > .e-con,
	body.bhh-fresh .elementor-573 > .e-con,
	body.bhh-fresh .elementor-3 > .e-con {
		padding-left: 24px !important;
		padding-right: 24px !important;
	}

	body.bhh-fresh .elementor-39 .elementor-element-84b527c {
		position: static;
	}

	body.bhh-fresh .elementor-39 .elementor-element-b0ffa15 > .e-con-inner {
		flex-wrap: wrap;
	}

	body.bhh-fresh .elementor-39 .elementor-element-2136481,
	body.bhh-fresh .elementor-39 .elementor-element-b4ce278 {
		--width: 100% !important;
		width: 100% !important;
		flex: 1 1 100% !important;
	}

	body.bhh-fresh .elementor-39 .elementor-element-b0ffa15,
	body.bhh-fresh .elementor-485 .elementor-element-48a776c {
		padding: 44px 32px !important;
	}
}

@media (max-width: 767px) {
	/* Compact sticky header */
	body.bhh-fresh .ehp-header {
		padding-top: 10px !important;
		padding-bottom: 10px !important;
	}

	body.bhh-fresh .ehp-header__site-logo {
		max-height: 52px !important;
		width: auto !important;
	}

	/* Side gutters on every top-level section */
	body.bhh-fresh .elementor-39 > .e-con,
	body.bhh-fresh .elementor-485 > .e-con,
	body.bhh-fresh .elementor-20 > .e-con,
	body.bhh-fresh .elementor-573 > .e-con,
	body.bhh-fresh .elementor-3 > .e-con {
		padding-left: 16px !important;
		padding-right: 16px !important;
	}

	body.bhh-fresh .elementor-39 .elementor-element-b0ffa15,
	body.bhh-fresh .elementor-485 .elementor-element-48a776c {
		max-width: calc(100% - 32px);
	}

	body.bhh-fresh .elementor-485 .elementor-element-18c480f {
		flex-direction: column !important;
	}

	/* Bookings + Facilities stack */
	body.bhh-fresh .elementor-39 .elementor-element-828efbc {
		flex-direction: column !important;
		gap: 20px !important;
		padding-top: 28px !important;
	}

	body.bhh-fresh .elementor-39 .elementor-element-828efbc > .e-con {
		width: 100% !important;
		--width: 100% !important;
	}

	body.bhh-fresh .elementor-39 .elementor-element-892d98e {
		padding-top: 16px !important;
	}

	body.bhh-fresh .elementor-39 .elementor-element-417b28b {
		margin-bottom: 18px !important;
	}

	body.bhh-fresh .elementor-39 .elementor-element-72fc0c8 p:first-child {
		font-size: 1.35rem !important;
	}

	body.bhh-fresh .elementor-element-b4a11e1 {
		margin-top: 40px !important;
	}

	body.bhh-fresh .elementor-element-b4a11e1 .swiper-pagination-bullet {
		width: 6px;
		height: 6px;
		margin: 0 3px !important;
	}

	body.bhh-fresh .elementor-element-b4a11e1 .swiper-pagination-bullet-active {
		width: 16px;
	}

	body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta {
		border-radius: 22px;
	}

	/* Taller crop on phones */
	/* Sized from the viewport (card is full width minus 16px gutters): percentage
	   heights get resolved against the wrong width inside Elementor's flex containers */
	body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__bg-wrapper {
		padding-bottom: 0;
		height: calc((100vw - 48px) * .9) !important;
	}

	body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__bg {
		background-position: center 40% !important;
	}

	body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__content {
		padding: 22px 22px 24px !important;
		flex-direction: column;
		align-items: flex-start;
	}

	body.bhh-fresh .elementor-widget-price-table .elementor-price-table {
		padding: 32px 24px 28px;
	}

	body.bhh-fresh .elementor-price-table__features-list {
		grid-template-columns: 1fr;
	}

	body.bhh-fresh .elementor-39 .elementor-element-215e95e {
		padding-top: 24px !important;
	}

	/* Keep "for Connection & Education" on one line on phones */
	body.bhh-fresh .elementor-39 .elementor-element-e152f60 .elementor-heading-title {
		font-size: min(1.75rem, 7.4vw) !important;
	}

	body.bhh-fresh .elementor-39 .elementor-element-b0ffa15,
	body.bhh-fresh .elementor-485 .elementor-element-48a776c {
		border-radius: 24px;
		padding: 32px 22px !important;
		margin-top: 32px !important;
		margin-bottom: 32px !important;
	}

	body.bhh-fresh .elementor-widget-text-editor,
	body.bhh-fresh .elementor-widget-text-editor p {
		font-size: 1rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.bhh-fresh * {
		transition: none !important;
	}
}

/* ==========================================================================
   BOLD LOOK — inspired by thetorcollective.co.uk
   Near-black headings, deep framed "snapshot" photos,
   handwritten labels, and a bright sky-blue contrast block.
   ========================================================================== */

body.bhh-fresh,
body.bhh-fresh[data-bhh-palette] {
	--bhh-heading: #1b1d13;
	--bhh-frame: color-mix(in srgb, var(--bhh-moss) 82%, #000);
	--bhh-tape: rgba(232, 196, 84, .78);
	--bhh-pop: #b9d8f0;
	--bhh-hand: "Caveat", "Segoe Print", cursive;
	--bhh-snap-shadow: 0 12px 26px -12px rgba(20, 24, 10, .5), 0 2px 6px rgba(20, 24, 10, .12);
}

/* ---------- Headings: bolder, near-black ---------- */
body.bhh-fresh .elementor-heading-title,
body.bhh-fresh .elementor-price-table__integer-part,
body.bhh-fresh .elementor-image-box-title,
body.bhh-fresh :is(.elementor-573, .elementor-3) .elementor-element-b7e0003 h2 {
	color: var(--bhh-heading) !important;
	font-weight: 600 !important;
}

body.bhh-fresh .elementor-39 .elementor-element-417b28b,
body.bhh-fresh .elementor-39 .elementor-element-417b28b p {
	color: var(--bhh-heading) !important;
	font-weight: 600 !important;
}

/* ---------- Handwritten labels above headings ---------- */
body.bhh-fresh .elementor-heading-title:not(span)::before {
	font-family: var(--bhh-hand) !important;
	font-size: 1.7rem !important;
	font-weight: 600 !important;
	letter-spacing: 0 !important;
	text-transform: lowercase !important;
	color: var(--bhh-moss) !important;
	margin-bottom: 4px !important;
	line-height: 1.1;
}

body.bhh-fresh .elementor-39 .elementor-element-b48bafb .elementor-heading-title {
	font-family: var(--bhh-hand) !important;
	font-size: 1.9rem !important;
	font-weight: 600 !important;
	letter-spacing: 0 !important;
	text-transform: lowercase !important;
	color: var(--bhh-moss) !important;
}

/* ---------- Snapshot frames around photos ---------- */
body.bhh-fresh .elementor-widget-image:not(.elementor-element-5d641b8):not(.elementor-element-d885c17):not(.elementor-element-bd0c71b),
body.bhh-fresh .elementor-element-b4a11e3 .swiper-slide {
	--bhh-tilt: -1.2deg;
	position: relative;
	background: var(--bhh-frame);
	padding: 10px 10px 20px !important;
	box-shadow: var(--bhh-snap-shadow);
	transform: rotate(var(--bhh-tilt));
	transition: transform .35s ease;
}

body.bhh-fresh .elementor-widget-image:not(.elementor-element-5d641b8):not(.elementor-element-d885c17):not(.elementor-element-bd0c71b) img,
body.bhh-fresh .elementor-element-b4a11e3 .swiper-slide img {
	border-radius: 0 !important;
	box-shadow: none !important;
	display: block;
	width: 100% !important;
	max-width: 100% !important;
	height: auto;
}

body.bhh-fresh .elementor-widget-image:not(.elementor-element-5d641b8):not(.elementor-element-d885c17):not(.elementor-element-bd0c71b):hover,
body.bhh-fresh .elementor-element-b4a11e3 .swiper-slide:hover {
	transform: rotate(0deg) translateY(-3px);
}

body.bhh-fresh .elementor-widget-image a:hover img,
body.bhh-fresh .elementor-element-b4a11e3 .swiper-slide a:hover .swiper-slide-image {
	transform: none !important;
}

/* Alternate the tilt so a row of photos looks hand-placed */
body.bhh-fresh .elementor-element-b4a11e3 .swiper-slide:nth-child(even),
body.bhh-fresh .elementor-element-ee419ad,
body.bhh-fresh .elementor-element-3489b9d,
body.bhh-fresh .elementor-element-c696a7e,
body.bhh-fresh .elementor-element-c9f9568 {
	--bhh-tilt: 1.4deg;
}

body.bhh-fresh .elementor-element-b4a11e3 .swiper-slide:nth-child(3n) {
	--bhh-tilt: -.6deg;
}

/* Carousel: room for the tilt so frames aren't clipped */
body.bhh-fresh .elementor-element-b4a11e3 .swiper {
	padding: 10px 10px 8px !important;
}

body.bhh-fresh .elementor-element-b4a11e3 .swiper-slide {
	border-radius: 0 !important;
	overflow: visible !important;
}

/* ---------- Banner: deep frame colour with cream title (bold contrast) ---------- */
body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta {
	background: var(--bhh-frame) !important;
	border-radius: 6px;
	padding: 12px 12px 0;
	box-shadow: var(--bhh-snap-shadow);
}

body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__content {
	background: transparent !important;
}

body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__title {
	color: var(--bhh-paper) !important;
}

body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__button {
	background: var(--bhh-tape) !important;
	background: #e8c454 !important;
	color: var(--bhh-heading) !important;
	box-shadow: none !important;
}

body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__button:hover {
	background: var(--bhh-paper) !important;
	color: var(--bhh-heading) !important;
}

/* ---------- Bright contrast block: "A space that celebrates nature" ---------- */
body.bhh-fresh .elementor-39 .elementor-element-b0ffa15 {
	background: var(--bhh-pop) !important;
	box-shadow: none !important;
}

body.bhh-fresh .elementor-39 .elementor-element-b0ffa15 p {
	color: var(--bhh-heading) !important;
}

/* ---------- Buttons: solid, high contrast ---------- */
body.bhh-fresh .elementor-button {
	background: var(--bhh-heading) !important;
}

body.bhh-fresh .elementor-button:hover,
body.bhh-fresh .elementor-button:focus-visible {
	background: var(--bhh-moss) !important;
}

/* Smaller frame on phones */
@media (max-width: 767px) {
	body.bhh-fresh .elementor-widget-image:not(.elementor-element-5d641b8):not(.elementor-element-d885c17):not(.elementor-element-bd0c71b),
	body.bhh-fresh .elementor-element-b4a11e3 .swiper-slide {
		padding: 7px 7px 14px !important;
	}

	body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta {
		padding: 8px 8px 0;
	}
}

@media (prefers-reduced-motion: reduce) {
	body.bhh-fresh .elementor-widget-image,
	body.bhh-fresh .elementor-element-b4a11e3 .swiper-slide {
		transform: none !important;
	}
}

/* ==========================================================================
   "Space to Hire": hollow outlined lettering (ferns removed 2026-10-20;
   the line-art SVGs and generator scripts are kept in case they're wanted again)
   ========================================================================== */

body.bhh-fresh .elementor-39 .elementor-element-417b28b {
	text-align: center;
}

body.bhh-fresh .elementor-39 .elementor-element-417b28b p {
	color: var(--bhh-cream) !important;
	-webkit-text-stroke: 2.2px var(--bhh-heading);
	paint-order: stroke fill;
	font-weight: 600 !important;
}

@media (max-width: 1024px) {
	body.bhh-fresh .elementor-39 .elementor-element-417b28b p {
		-webkit-text-stroke-width: 1.7px;
	}
}

@media (max-width: 767px) {
	body.bhh-fresh .elementor-39 .elementor-element-417b28b p {
		-webkit-text-stroke-width: 1.3px;
	}
}

/* "Bride's Hill House" in the banner: same serif capitals as "Space to Hire",
   in solid white on the deep olive strip */
body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__title {
	font-family: var(--bhh-serif) !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: .02em !important;
	font-size: clamp(2.2rem, 4.6vw, 4rem) !important;
	line-height: 1 !important;
	color: #fff !important;
	-webkit-text-stroke: 0;
}

@media (max-width: 767px) {
	body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__title {
		font-size: min(2.3rem, 9.6vw) !important;
	}
}

/* ==========================================================================
   THE TEAM page refinements
   ========================================================================== */

/* No gap between the menu bar and the first section (Elementor saved a 68px margin) */
body.bhh-fresh .elementor-485 .elementor-element-d7d518a {
	margin-top: 0 !important;
	padding-top: 16px !important;
}

/* "THE TEAM": same hollow serif capitals as "Space to Hire" */
body.bhh-fresh .elementor-485 .elementor-element-9e05269 .elementor-heading-title {
	/* sized to stay on one line in the column beside the photo */
	font-size: clamp(2.8rem, 5.6vw, 5.2rem) !important;
	white-space: nowrap;
	font-weight: 600 !important;
	letter-spacing: .02em !important;
	line-height: 1 !important;
	text-transform: uppercase !important;
	color: var(--bhh-cream) !important;
	-webkit-text-stroke: 2.2px var(--bhh-heading);
	paint-order: stroke fill;
}

body.bhh-fresh .elementor-485 .elementor-element-9e05269 .elementor-heading-title:not(span)::before {
	content: none !important;
}

/* "Bring your passion projects…": big centred banner, ready for a photo behind.
   To add the photo later, set --bhh-team-banner-image: url(...) on this element. */
body.bhh-fresh .elementor-485 .elementor-element-fd5b057 {
	--container-max-width: 100%;
	max-width: min(1180px, calc(100% - 48px));
	margin: 56px auto 0 !important;
	min-height: 460px;
	padding: 96px 48px !important;
	justify-content: center !important;
	align-items: center !important;
	text-align: center;
	gap: 22px !important;
	border-radius: 6px;
	background:
		linear-gradient(rgba(20, 24, 10, .38), rgba(20, 24, 10, .38)),
		var(--bhh-team-banner-image, none) center / cover no-repeat,
		var(--bhh-frame) !important;
	box-shadow: var(--bhh-snap-shadow);
}

body.bhh-fresh .elementor-485 .elementor-element-c6c1582 .elementor-heading-title {
	font-size: clamp(2.6rem, 5.4vw, 4.6rem) !important;
	max-width: 17ch;
	margin: 0 auto !important;
	color: #fff !important;
	text-shadow: 0 2px 22px rgba(0, 0, 0, .25);
}

body.bhh-fresh .elementor-485 .elementor-element-ea37bc3,
body.bhh-fresh .elementor-485 .elementor-element-ea37bc3 p {
	padding: 0 !important;
	max-width: 46ch;
	margin: 0 auto !important;
	font-size: 1.2rem !important;
	color: rgba(255, 255, 255, .9) !important;
}

/* No big gap between the banner and "Services" (Elementor saved a 164px margin) */
body.bhh-fresh .elementor-485 .elementor-element-2651cab {
	margin-top: 0 !important;
	padding-top: 56px !important;
}

@media (max-width: 767px) {
	body.bhh-fresh .elementor-485 .elementor-element-fd5b057 {
		max-width: calc(100% - 32px);
		min-height: 320px;
		margin-top: 36px !important;
		padding: 56px 22px !important;
	}

	body.bhh-fresh .elementor-485 .elementor-element-c6c1582 .elementor-heading-title {
		font-size: min(2.3rem, 9vw) !important;
	}

	body.bhh-fresh .elementor-485 .elementor-element-ea37bc3,
	body.bhh-fresh .elementor-485 .elementor-element-ea37bc3 p {
		font-size: 1.05rem !important;
	}

	body.bhh-fresh .elementor-485 .elementor-element-9e05269 .elementor-heading-title {
		-webkit-text-stroke-width: 1.3px;
	}

	body.bhh-fresh .elementor-485 .elementor-element-2651cab {
		padding-top: 40px !important;
	}
}

/* ==========================================================================
   CONTACT page (page 588, built from the old "Contact 2.0" template)
   Rebuilt layout: heading + details beside a framed photo, form card beside a
   second framed photo, then the map in a frame.
   ========================================================================== */

body.bhh-fresh .elementor-588 > .e-con {
	--container-max-width: 1180px;
	max-width: min(1180px, calc(100% - 48px));
	margin-left: auto !important;
	margin-right: auto !important;
}

/* --- Row 1: photo + heading/details --- */
body.bhh-fresh .elementor-588 .elementor-element-292be951 {
	flex-direction: row !important;
	align-items: center !important;
	gap: 56px !important;
	padding: 24px 0 0 !important;
	min-height: 0 !important;
}

body.bhh-fresh .elementor-588 .elementor-element-3969e286 {
	background: transparent !important;
	padding: 0 !important;
	flex: 0 0 44% !important;
	width: 44% !important;
	--width: 44% !important;
	min-height: 0 !important;
}

body.bhh-fresh .elementor-588 .elementor-element-6e8c3a62 {
	margin: 0 !important;
	width: 100% !important;
	--bhh-tilt: -1.4deg;
}

body.bhh-fresh .elementor-588 .elementor-element-6e8c3a62 img {
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

body.bhh-fresh .elementor-588 .elementor-element-2d0aaaef {
	flex: 1 1 0 !important;
	width: auto !important;
	--width: auto !important;
	min-width: 0 !important;
	padding: 0 !important;
	min-height: 0 !important;
	background: transparent !important;
}

body.bhh-fresh .elementor-588 .elementor-element-6e281d17 .elementor-heading-title {
	font-size: clamp(3.2rem, 7vw, 6rem) !important;
	font-weight: 600 !important;
	letter-spacing: .02em !important;
	line-height: 1 !important;
	text-transform: uppercase !important;
	color: var(--bhh-cream) !important;
	-webkit-text-stroke: 2.2px var(--bhh-heading);
	paint-order: stroke fill;
	margin-bottom: 8px !important;
}

/* Contact details card */
body.bhh-fresh .elementor-588 .elementor-element-67b0c67a {
	background: var(--bhh-paper);
	border-radius: var(--bhh-radius);
	box-shadow: var(--bhh-shadow);
	padding: 30px 32px !important;
	margin-top: 22px !important;
	gap: 32px !important;
	flex-wrap: wrap !important;
}

body.bhh-fresh .elementor-588 .elementor-element-67b0c67a .elementor-heading-title {
	font-family: var(--bhh-hand) !important;
	font-size: 1.8rem !important;
	font-weight: 600 !important;
	text-transform: lowercase !important;
	color: var(--bhh-moss) !important;
	margin-bottom: 6px !important;
}

body.bhh-fresh .elementor-588 .elementor-element-67b0c67a .elementor-icon-list-text,
body.bhh-fresh .elementor-588 .elementor-element-374767f3,
body.bhh-fresh .elementor-588 .elementor-element-374767f3 p {
	font-family: var(--bhh-sans) !important;
	font-size: 1.05rem !important;
	color: var(--bhh-ink) !important;
	margin: 0 0 .35em !important;
	line-height: 1.55 !important;
}

body.bhh-fresh .elementor-588 .elementor-element-67b0c67a a,
body.bhh-fresh .elementor-588 .elementor-element-67b0c67a .elementor-icon-list-text {
	color: var(--bhh-moss) !important;
	font-weight: 600 !important;
}

body.bhh-fresh .elementor-588 .elementor-element-67b0c67a .elementor-icon-list-icon svg {
	fill: var(--bhh-moss) !important;
	width: 18px;
	height: 18px;
}

/* --- Row 2: form card + framed photo --- */
body.bhh-fresh .elementor-588 .elementor-element-768ced30 {
	flex-direction: row !important;
	align-items: stretch !important;
	gap: 40px !important;
	padding: 64px 0 0 !important;
}

body.bhh-fresh .elementor-588 .elementor-element-59e603de {
	flex: 1 1 0 !important;
	width: auto !important;
	--width: auto !important;
	min-width: 0 !important;
	background: var(--bhh-paper);
	border-radius: var(--bhh-radius);
	box-shadow: var(--bhh-shadow);
	padding: 40px 40px 32px !important;
}

body.bhh-fresh .elementor-588 .elementor-element-a55a3e1 {
	display: none !important;
}

body.bhh-fresh .elementor-588 .elementor-element-6057b01a {
	flex: 0 0 40% !important;
	width: 40% !important;
	--width: 40% !important;
	margin: 0 !important;
	padding: 0 !important;
	min-height: 420px;
	background-size: cover !important;
	background-position: center !important;
	border: 10px solid var(--bhh-frame);
	border-bottom-width: 20px;
	box-shadow: var(--bhh-snap-shadow);
	transform: rotate(1.4deg);
}

/* Old yellow wave shape on the form row */
body.bhh-fresh .elementor-588 .elementor-element-768ced30 > .elementor-shape {
	display: none !important;
}

/* "Drop us a line" form title */
body.bhh-fresh .elementor-588 .elementor-form .elementor-field-type-html {
	font-family: var(--bhh-serif) !important;
	font-size: clamp(2rem, 3.4vw, 2.6rem) !important;
	font-weight: 600 !important;
	line-height: 1.1 !important;
	color: var(--bhh-heading) !important;
	text-transform: none !important;
	margin-bottom: 18px !important;
}

body.bhh-fresh .elementor-588 .elementor-form .elementor-field-type-html b {
	font-weight: 600;
	color: var(--bhh-moss);
}

/* Form fields */
body.bhh-fresh .elementor-588 .elementor-form .elementor-field-label {
	font-family: var(--bhh-sans) !important;
	font-size: .78rem !important;
	font-weight: 700 !important;
	letter-spacing: .1em !important;
	text-transform: uppercase !important;
	color: var(--bhh-heading) !important;
	margin-bottom: 6px !important;
}

body.bhh-fresh .elementor-588 .elementor-form .elementor-field-textual {
	font-family: var(--bhh-sans) !important;
	font-size: 1rem !important;
	color: var(--bhh-ink) !important;
	background: var(--bhh-cream) !important;
	border: 1px solid var(--bhh-line) !important;
	border-radius: 10px !important;
	padding: 12px 14px !important;
	box-shadow: none !important;
	transition: border-color .2s ease, box-shadow .2s ease;
}

body.bhh-fresh .elementor-588 .elementor-form .elementor-field-textual:focus {
	outline: none;
	border-color: var(--bhh-moss) !important;
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--bhh-moss) 18%, transparent) !important;
}

body.bhh-fresh .elementor-588 .elementor-form .elementor-field-group {
	margin-bottom: 16px !important;
}

body.bhh-fresh .elementor-588 .elementor-form .elementor-field-option label,
body.bhh-fresh .elementor-588 .elementor-form .elementor-field-subgroup {
	font-family: var(--bhh-sans) !important;
	color: var(--bhh-ink) !important;
}

body.bhh-fresh .elementor-588 .elementor-form .elementor-field-type-submit {
	justify-content: flex-start !important;
}

/* --- Row 3: map in a frame --- */
body.bhh-fresh .elementor-588 .elementor-element-5d1a86d2 {
	margin-top: 64px !important;
	margin-bottom: 96px !important;
	padding: 0 !important;
	border: 10px solid var(--bhh-frame);
	border-radius: 6px;
	box-shadow: var(--bhh-snap-shadow);
	overflow: hidden;
}

body.bhh-fresh .elementor-588 .elementor-element-5d1a86d2 iframe {
	display: block;
	filter: saturate(.85);
}

/* --- Tablet / phone: stack everything --- */
@media (max-width: 1024px) {
	body.bhh-fresh .elementor-588 .elementor-element-292be951,
	body.bhh-fresh .elementor-588 .elementor-element-768ced30 {
		flex-direction: column !important;
		gap: 32px !important;
	}

	body.bhh-fresh .elementor-588 .elementor-element-3969e286,
	body.bhh-fresh .elementor-588 .elementor-element-6057b01a,
	body.bhh-fresh .elementor-588 .elementor-element-2d0aaaef,
	body.bhh-fresh .elementor-588 .elementor-element-59e603de {
		flex: 0 0 auto !important;
		width: 100% !important;
		--width: 100% !important;
	}

	body.bhh-fresh .elementor-588 .elementor-element-2d0aaaef {
		order: -1;
	}

	body.bhh-fresh .elementor-588 .elementor-element-6057b01a {
		min-height: 300px;
	}
}

@media (max-width: 767px) {
	body.bhh-fresh .elementor-588 > .e-con {
		max-width: calc(100% - 32px);
	}

	body.bhh-fresh .elementor-588 .elementor-element-6e281d17 .elementor-heading-title {
		font-size: min(3.2rem, 14vw) !important;
		-webkit-text-stroke-width: 1.4px;
		text-align: center;
	}

	body.bhh-fresh .elementor-588 .elementor-element-67b0c67a,
	body.bhh-fresh .elementor-588 .elementor-element-59e603de {
		padding: 24px 20px !important;
	}

	body.bhh-fresh .elementor-588 .elementor-element-768ced30 {
		padding-top: 40px !important;
	}

	body.bhh-fresh .elementor-588 .elementor-element-6057b01a {
		border-width: 7px 7px 14px;
		min-height: 240px;
	}

	body.bhh-fresh .elementor-588 .elementor-element-5d1a86d2 {
		margin-top: 40px !important;
		margin-bottom: 56px !important;
		border-width: 7px;
	}
}

/* HISTORY: "Your gateway to history and wildlife" in the same hollow serif
   capitals as the other page titles (Space to Hire, The Team, Contact) */
body.bhh-fresh .elementor-20 .elementor-element-acddeec .elementor-heading-title {
	font-size: clamp(2.8rem, 6vw, 5rem) !important;
	font-weight: 600 !important;
	letter-spacing: .02em !important;
	line-height: 1.02 !important;
	text-transform: uppercase !important;
	max-width: 18ch;
	color: var(--bhh-cream) !important;
	-webkit-text-stroke: 2.2px var(--bhh-heading);
	paint-order: stroke fill;
}

body.bhh-fresh .elementor-20 .elementor-element-acddeec .elementor-heading-title:not(span)::before {
	content: none !important;
}

/* the title text sits in an inner span (saved by Elementor's inline editor) */
body.bhh-fresh .elementor-20 .elementor-element-acddeec .elementor-heading-title span {
	color: inherit !important;
	-webkit-text-stroke: inherit;
	font: inherit !important;
	letter-spacing: inherit !important;
}

@media (max-width: 1024px) {
	body.bhh-fresh .elementor-20 .elementor-element-acddeec .elementor-heading-title {
		-webkit-text-stroke-width: 1.7px;
	}
}

@media (max-width: 767px) {
	body.bhh-fresh .elementor-20 .elementor-element-acddeec .elementor-heading-title {
		font-size: min(2.6rem, 11vw) !important;
		-webkit-text-stroke-width: 1.3px;
	}
}

/* Banner strip: title + "opening soon" line on the left, Book request button on the right */
body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__content {
	display: grid !important;
	grid-template-columns: 1fr auto;
	grid-template-areas: "title button" "desc button";
	align-items: center;
	column-gap: 32px;
	row-gap: 10px;
}

body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__title {
	grid-area: title;
}

body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__description {
	grid-area: desc;
	justify-self: start;
	width: fit-content !important;
	max-width: 100%;
	margin: 0 !important;
	font-family: var(--bhh-sans) !important;
	font-size: 1rem !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	color: var(--bhh-heading) !important;
	background: #e8c454;
	padding: 6px 14px;
	border-radius: 999px;
}

body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__button-wrapper {
	grid-area: button;
}

@media (max-width: 767px) {
	body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__content {
		grid-template-columns: 1fr;
		grid-template-areas: "title" "desc" "button";
		row-gap: 14px;
	}

	body.bhh-fresh .elementor-39 .elementor-element-633ce63 .elementor-cta__description {
		font-size: .92rem !important;
		border-radius: 14px;
	}
}
