/**
 * Propane Safety Notice – [propane_safety_notice]
 * Values taken from the live kerivanlane.com theme (Divi):
 *   Heading font  : "Alegreya Sans" 700 (same family as site H1–H3)
 *   Body font     : Lato, 16px / 1.7 (same as site paragraphs)
 *   Dark green    : #004813  (site headings / buttons)
 *   Link green    : #78A682  (site in-content link colour)
 *   Body grey     : #4E4E4E  (site secondary text colour)
 *   Border        : #C2D7C7  (site link green #78A682 at ~45% on white)
 *   Warning amber : #E2A24F  (from Figma icon – no amber exists on the live site)
 */

.kvl-psn {
	--kvl-psn-heading: #004813;
	--kvl-psn-text: #4e4e4e;
	--kvl-psn-link: #78a682;
	--kvl-psn-link-hover: #004813;
	--kvl-psn-border: #c2d7c7;
	--kvl-psn-bg: #ffffff;
	--kvl-psn-icon: #e2a24f;

	box-sizing: border-box;
	display: grid;
	grid-template-columns: 24px minmax(0, 1fr);
	column-gap: 16px;
	align-items: start;
	width: 100%;
	margin: 0 0 40px;
	padding: 24px 32px 26px;
	background: var(--kvl-psn-bg);
	border: 1px solid var(--kvl-psn-border);
	border-radius: 20px;
}

.kvl-psn--no-icon {
	grid-template-columns: minmax(0, 1fr);
}

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

.kvl-psn__icon {
	display: block;
	width: 24px;
	height: 24px;
	margin-top: 1px;
	color: var(--kvl-psn-icon);
}

.kvl-psn__icon svg {
	display: block;
	width: 100%;
	height: 100%;
}

.kvl-psn__body {
	min-width: 0;
}

/* Higher specificity than Divi's .et_pb_code h3 / #main-content h3 rules */
.kvl-psn .kvl-psn__heading {
	margin: 0 0 6px;
	padding: 0;
	font-family: "Alegreya Sans", Helvetica, Arial, Lucida, sans-serif;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.15;
	letter-spacing: 0;
	color: var(--kvl-psn-heading);
}

.kvl-psn .kvl-psn__text,
.kvl-psn .kvl-psn__text p {
	margin: 0;
	padding: 0;
	font-family: Lato, Helvetica, Arial, Lucida, sans-serif;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.7;
	color: var(--kvl-psn-text);
}

.kvl-psn .kvl-psn__text p + p {
	margin-top: 8px;
}

.kvl-psn .kvl-psn__text a {
	color: var(--kvl-psn-link);
	font-weight: inherit;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
	transition: color 0.2s ease;
}

.kvl-psn .kvl-psn__text a:hover,
.kvl-psn .kvl-psn__text a:focus-visible {
	color: var(--kvl-psn-link-hover);
}

.kvl-psn .kvl-psn__text a:focus-visible {
	outline: 2px solid var(--kvl-psn-link);
	outline-offset: 2px;
	border-radius: 2px;
}

/* Divi tablet breakpoint */
@media (max-width: 980px) {
	.kvl-psn {
		padding: 22px 26px 24px;
		border-radius: 18px;
	}
	.kvl-psn .kvl-psn__heading {
		font-size: 22px;
	}
}

/* Divi phone breakpoint */
@media (max-width: 767px) {
	.kvl-psn {
		grid-template-columns: 22px minmax(0, 1fr);
		column-gap: 12px;
		margin-bottom: 32px;
		padding: 20px 20px 22px;
		border-radius: 16px;
	}
	.kvl-psn--no-icon {
		grid-template-columns: minmax(0, 1fr);
	}
	.kvl-psn__icon {
		width: 22px;
		height: 22px;
		margin-top: 0;
	}
	.kvl-psn .kvl-psn__heading {
		font-size: 20px;
		line-height: 1.2;
	}
	.kvl-psn .kvl-psn__text,
	.kvl-psn .kvl-psn__text p {
		font-size: 15px;
		line-height: 1.65;
	}
}
