:root {
	--vc-content-width: 75rem;
	--vc-focus: #f2bf4a;
	--vc-border: rgba(32, 37, 34, 0.18);
}

html {
	scroll-behavior: smooth;
}

body {
	background:
		radial-gradient(circle at top left, rgba(215, 168, 63, 0.16), transparent 30rem),
		linear-gradient(180deg, #fbf7ef 0%, var(--vc-color-ivory) 34rem);
	color: var(--vc-color-charcoal);
	font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	font-size: 1rem;
	line-height: 1.65;
}

img,
iframe {
	display: block;
	max-width: 100%;
}

a {
	color: var(--vc-color-deep-green);
	text-underline-offset: 0.18em;
}

button,
input,
select,
textarea {
	font: inherit;
}

button,
input[type="submit"],
.menu-item a {
	min-height: 44px;
}

:focus-visible {
	outline: 3px solid var(--vc-focus);
	outline-offset: 3px;
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.screen-reader-text:focus {
	z-index: 100000;
	top: 0.75rem;
	left: 0.75rem;
	width: auto;
	height: auto;
	padding: 0.75rem 1rem;
	clip: auto;
	background: #fff;
	color: var(--vc-color-charcoal);
	font-weight: 700;
}

.site-main {
	width: min(100% - 2rem, var(--vc-content-width));
	margin-inline: auto;
	padding-block: 2rem 4rem;
}

.site-main--narrow {
	max-width: 48rem;
}

.site-main--elementor {
	width: 100%;
	max-width: none;
	padding: 0;
}

.entry-content > * {
	max-width: 100%;
}

.entry-content img {
	height: auto;
}

@media (min-width: 48rem) {
	.site-main {
		padding-block-start: 3rem;
	}
}
