:root {
	--ronches-cream: var(--wp--preset--color--cream, #f8f2e8);
	--ronches-warm-white: var(--wp--preset--color--warm-white, #fffdf8);
	--ronches-beige: var(--wp--preset--color--beige, #e8d9c6);
	--ronches-taupe: var(--wp--preset--color--taupe, #b9a58e);
	--ronches-brown: var(--wp--preset--color--brown, #4a3728);
	--ronches-brown-soft: var(--wp--preset--color--brown-soft, #6d5848);
	--ronches-sage: var(--wp--preset--color--sage, #7f8f6a);
	--ronches-sage-dark: var(--wp--preset--color--sage-dark, #5f6f50);
	--ronches-sage-pale: #e9eee4;
	--ronches-sage-wash: #f2f5ee;
	--ronches-link: #3f603c;
	--ronches-link-hover: #2f482d;
	--ronches-sand: var(--wp--preset--color--sand, #d9c3a5);
	--ronches-border: var(--wp--preset--color--border, #e4d7c8);
	--ronches-shadow: 0 18px 45px rgb(74 55 40 / 10%);
	--ronches-radius: 1.1rem;
	--ronches-radius-small: 0.7rem;
	--ronches-font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--ronches-font-heading: "Blinker", "Segoe UI", sans-serif;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
}

body {
	margin: 0;
	background: #e9dfd2;
	color: var(--ronches-brown);
	font-family: var(--ronches-font-body);
	font-size: 1rem;
	line-height: 1.65;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}

figure {
	margin: 0;
}

a {
	color: var(--ronches-link);
	font-weight: 700;
	text-decoration-line: underline;
	text-decoration-color: currentcolor;
	text-decoration-thickness: 0.09em;
	text-underline-offset: 0.18em;
	transition: color 160ms ease, text-decoration-thickness 160ms ease;
}

a:hover {
	color: var(--ronches-link-hover);
	text-decoration-thickness: 0.14em;
}

:where(a, button, input, select, textarea):focus-visible {
	outline: 3px solid var(--ronches-sage-dark);
	outline-offset: 3px;
}

h1,
h2,
h3,
h4 {
	margin-block: 0 0.55em;
	color: var(--ronches-brown);
	font-family: var(--ronches-font-heading);
	font-weight: 600;
	line-height: 1.12;
	text-wrap: balance;
}

h1 {
	font-size: clamp(2.2rem, 6vw, 4.25rem);
}

h2 {
	font-size: clamp(1.75rem, 3.5vw, 2.75rem);
}

h3 {
	font-size: clamp(1.15rem, 2vw, 1.55rem);
}

p {
	margin-block: 0 1em;
}

.icon {
	display: inline-block;
	width: 1.35em;
	height: 1.35em;
	flex: 0 0 auto;
	fill: none;
	stroke: currentcolor;
	stroke-linecap: round;
	stroke-linejoin: round;
	stroke-width: 1.65;
	vertical-align: -0.22em;
}

.icon--paw-filled,
.icon--comb {
	fill: currentcolor;
	stroke: none;
}

.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: 1rem;
	left: 1rem;
	width: auto;
	height: auto;
	padding: 0.8rem 1rem;
	clip: auto;
	background: var(--ronches-warm-white);
	color: var(--ronches-brown);
	font-weight: 700;
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}
