/* ProFireSafe – Indhold: faktabokse.
   Karrusellens værdier er 1:1 med den nuværende HTML i megamenuen.
   Dobbelt-klassede selektorer, så Elementors kit-CSS ikke slår igennem. */

.pfs-fakta,
.pfs-infobokse,
.pfs-udfordringer,
.pfs-punkter {
	--pfs-fb-ikon: #dc2626;
	--pfs-fb-ikon-bg: #fee2e2;
	--pfs-fb-kant: #f5f5f4;
	--pfs-fb-flade: #fafaf9;
	--pfs-fb-tekst: #57534e;
	--pfs-fb-titel: #1c1917;
	--pfs-fb-svag: #78716c;
	--pfs-fb-kolonner: 2;
}

/* ------------------------------- Karrusel ------------------------------- */

.pfs-fakta .pfs-fakta-hoved {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 12px;
	font-size: 12px;
	line-height: 16px;
	color: var(--pfs-fb-svag);
}

.pfs-fakta .pfs-fakta-hoved i {
	font-size: 14px;
	line-height: 1;
	color: var(--pfs-fb-svag);
}

.pfs-fakta .pfs-fakta-boks {
	background: var(--pfs-fb-flade);
	border: 1px solid var(--pfs-fb-kant);
	border-radius: 12px;
	padding: 20px;
}

.pfs-fakta.pfs-fakta--lg {
	display: flex;
	flex-direction: column;
	flex: 1;
}

.pfs-fakta.pfs-fakta--lg .pfs-fakta-boks {
	padding: 24px;
	display: flex;
	flex-direction: column;
	flex: 1;
}

.pfs-fakta .pfs-fakta-scene {
	position: relative;
	min-height: 110px;
	margin-bottom: 20px;
}

.pfs-fakta.pfs-fakta--lg .pfs-fakta-scene {
	min-height: 120px;
	margin-bottom: 24px;
	flex: 1;
}

.pfs-fakta .pfs-fakta-slide {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	position: absolute;
	inset: 0;
	opacity: 0;
	transition: opacity .5s;
}

.pfs-fakta.pfs-fakta--lg .pfs-fakta-slide {
	gap: 16px;
}

.pfs-fakta .pfs-fakta-slide.is-on {
	opacity: 1;
	position: relative;
}

.pfs-fakta .pfs-fakta-ikon {
	width: 36px;
	height: 36px;
	border-radius: 8px;
	background: var(--pfs-fb-ikon-bg);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.pfs-fakta.pfs-fakta--lg .pfs-fakta-ikon {
	width: 40px;
	height: 40px;
}

.pfs-fakta .pfs-fakta-ikon i {
	color: var(--pfs-fb-ikon);
	font-size: 16px;
	line-height: 1;
}

.pfs-fakta.pfs-fakta--lg .pfs-fakta-ikon i {
	font-size: 18px;
}

.pfs-fakta p {
	margin: 0;
	font-size: 14px;
	line-height: 1.625;
	color: var(--pfs-fb-tekst);
}

.pfs-fakta .pfs-fakta-prikker {
	display: flex;
	align-items: center;
	gap: 6px;
	margin-top: auto;
}

.pfs-fakta .pfs-fakta-prikker button {
	height: 6px;
	width: 6px;
	border: 0;
	padding: 0;
	border-radius: 999px;
	background: #d6d3d1;
	cursor: pointer;
	transition: width .3s, background-color .3s;
}

.pfs-fakta .pfs-fakta-prikker button.is-on {
	width: 20px;
	background: var(--pfs-fb-ikon);
}

/* ------------------------------- Infobokse ------------------------------ */

.pfs-infobokse {
	display: grid;
	grid-template-columns: repeat(var(--pfs-fb-kolonner), minmax(0, 1fr));
	gap: 16px;
}

.pfs-infobokse .pfs-infoboks {
	display: flex;
	align-items: flex-start;
	gap: 12px;
	padding: 20px;
	border: 1px solid var(--pfs-fb-kant);
	border-radius: 12px;
	background: var(--pfs-fb-flade);
}

.pfs-infobokse .pfs-infoboks__ikon {
	width: 36px;
	height: 36px;
	border-radius: 8px;
	background: var(--pfs-fb-ikon-bg);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.pfs-infobokse .pfs-infoboks__ikon i {
	color: var(--pfs-fb-ikon);
	font-size: 16px;
	line-height: 1;
}

.pfs-infobokse .pfs-infoboks__titel {
	margin: 0 0 4px;
	font-family: inherit;
	font-size: 15px;
	line-height: 22px;
	font-weight: 700;
	letter-spacing: normal;
	color: var(--pfs-fb-titel);
}

.pfs-infobokse .pfs-infoboks__tekst {
	margin: 0;
	font-size: 14px;
	line-height: 1.625;
	color: var(--pfs-fb-tekst);
}

.pfs-infobokse .pfs-infoboks__link {
	display: inline-block;
	margin-top: 8px;
	font-size: 13px;
	font-weight: 600;
	color: var(--pfs-fb-ikon);
	text-decoration: none;
}

.pfs-infobokse .pfs-infoboks__link:hover {
	text-decoration: underline;
}

.pfs-infobokse .pfs-infoboks--info {
	--pfs-fb-ikon: #1d4ed8;
	--pfs-fb-ikon-bg: #dbeafe;
}

/* Farverne er hentet fra ABR 18-siden, så varianterne rammer 1:1. */
.pfs-infobokse .pfs-infoboks--advarsel {
	--pfs-fb-ikon: #d97706;
	--pfs-fb-ikon-bg: #fffbeb;
}

.pfs-infobokse .pfs-infoboks--tip {
	--pfs-fb-ikon: #16a34a;
	--pfs-fb-ikon-bg: #f0fdf4;
}

/* -------- Udseende "linje": vandret kort med lille flise, som ABR 18 ----- */

.pfs-infobokse--linje {
	gap: 12px;
}

.pfs-infobokse--linje .pfs-infoboks {
	background: none;
	border-color: #e7e5e4;
	border-radius: 8px;
	padding: 16px;
	gap: 12px;
}

.pfs-infobokse--linje .pfs-infoboks__ikon {
	width: 28px;
	height: 28px;
	border-radius: 6px;
	margin-top: 2px;
}

.pfs-infobokse--linje .pfs-infoboks__ikon i {
	font-size: 14px;
}

.pfs-infobokse--linje .pfs-infoboks__titel {
	font-size: 14px;
	line-height: 20px;
	font-weight: 600;
	margin-bottom: 4px;
}

.pfs-infobokse--linje .pfs-infoboks__tekst {
	font-size: 12px;
	line-height: 1.625;
	color: #78716c;
}

/* --- Udseende "enkel": ramme, ikon og overskrift på linje, som ydelserne -- */

.pfs-infobokse--enkel .pfs-infoboks {
	display: block;
	background: none;
	border-color: var(--pfs-fb-ikon-bg);
	border-radius: 12px;
	padding: 20px;
}

.pfs-infobokse--enkel .pfs-infoboks__ikon {
	float: left;
	width: auto;
	height: auto;
	background: none;
	border-radius: 0;
	margin-right: 8px;
}

.pfs-infobokse--enkel .pfs-infoboks__ikon i {
	font-size: 14px;
	line-height: 20px;
}

.pfs-infobokse--enkel .pfs-infoboks__titel {
	overflow: hidden;
	margin: 0;
	font-size: 14px;
	line-height: 20px;
	font-weight: 600;
}

.pfs-infobokse--enkel .pfs-infoboks__tekst {
	clear: both;
	margin-top: 8px;
	font-size: 14px;
	line-height: 1.625;
	color: #78716c;
}

/* ------------------------------ Udfordringer ----------------------------
   Hvide kort med ikonflise over teksten — som branchesidernes
   "særlige udfordringer". Værdierne er hentet derfra. */

.pfs-udfordringer {
	display: grid;
	grid-template-columns: repeat(var(--pfs-fb-kolonner), minmax(0, 1fr));
	gap: 20px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pfs-udfordringer li {
	display: block;
	margin: 0;
	padding: 24px;
	background: #ffffff;
	border: 1px solid var(--pfs-fb-kant);
	border-radius: 12px;
	font-size: 14px;
	line-height: 1.625;
	color: #44403c;
}

.pfs-udfordringer .pfs-linje__ikon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	margin-bottom: 16px;
	border-radius: 12px;
	background: var(--pfs-fb-ikon-bg);
}

.pfs-udfordringer .pfs-linje__ikon i {
	color: var(--pfs-fb-ikon);
	font-size: 18px;
	line-height: 1;
}

.pfs-udfordringer .pfs-linje__tekst {
	display: block;
}

/* -------------------------------- Punkter ------------------------------- */

.pfs-punkter {
	display: grid;
	grid-template-columns: repeat(var(--pfs-fb-kolonner), minmax(0, 1fr));
	gap: 16px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.pfs-punkter li {
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 0;
	font-size: 14px;
	line-height: 1.625;
	color: var(--pfs-fb-tekst);
}

.pfs-punkter .pfs-linje__ikon {
	flex: 0 0 auto;
	line-height: 1;
	padding-top: 3px;
}

.pfs-punkter .pfs-linje__ikon i {
	color: var(--pfs-fb-ikon);
	font-size: 16px;
	line-height: 1;
}

@media (max-width: 767px) {
	.pfs-infobokse,
	.pfs-udfordringer,
	.pfs-punkter {
		grid-template-columns: minmax(0, 1fr);
	}
}

@media (prefers-reduced-motion: reduce) {
	.pfs-fakta .pfs-fakta-slide,
	.pfs-fakta .pfs-fakta-prikker button {
		transition: none;
	}
}
