/*
 * WEB round 2 components v100.1.
 * Scoped media fallback and catalogue-growth CTA.
 */

.nsv80-page-list .nsv80-article-card__media.is-nsv100-placeholder,
.nsv80-folio-list .nsv80-service-card__media.is-nsv100-placeholder {
	display: grid !important;
	place-items: stretch !important;
	background: linear-gradient(145deg,#e9f2ef,#d7e6e2) !important;
}

.nsv80-page-list .nsv80-article-card__media.is-nsv100-placeholder::before,
.nsv80-page-list .nsv80-article-card__media.is-nsv100-placeholder::after,
.nsv80-folio-list .nsv80-service-card__media.is-nsv100-placeholder::before,
.nsv80-folio-list .nsv80-service-card__media.is-nsv100-placeholder::after {
	display: none !important;
	content: none !important;
}

.nsv100-media-placeholder {
	display: flex !important;
	width: 100% !important;
	height: 100% !important;
	min-height: 100% !important;
	box-sizing: border-box !important;
	align-items: center !important;
	justify-content: center !important;
	flex-direction: column !important;
	gap: 9px !important;
	padding: 28px !important;
	background:
		radial-gradient(circle at 20% 15%,rgba(200,155,53,.17),transparent 34%),
		linear-gradient(145deg,#edf5f2,#dbe9e5) !important;
	color: #416064 !important;
	text-align: center !important;
}

.nsv100-media-placeholder img {
	display: block !important;
	width: 58px !important;
	min-width: 58px !important;
	height: 58px !important;
	min-height: 58px !important;
	object-fit: contain !important;
	border: 1px solid rgba(7,95,103,.11) !important;
	border-radius: 17px !important;
	background: rgba(255,255,255,.82) !important;
	padding: 9px !important;
	box-shadow: 0 12px 28px rgba(16,47,52,.1) !important;
}

.nsv100-media-placeholder strong {
	display: block !important;
	max-width: 270px !important;
	color: #24484c !important;
	font-size: 13px !important;
	font-weight: 900 !important;
	line-height: 1.3 !important;
}

.nsv100-media-placeholder small {
	display: block !important;
	max-width: 280px !important;
	color: #6b8184 !important;
	font-size: 10px !important;
	line-height: 1.45 !important;
}

.nsv-home-growth {
	padding: 34px 0 18px !important;
	background: #fff !important;
}

.nsv-home-growth__panel {
	position: relative !important;
	display: grid !important;
	grid-template-columns: minmax(0,1.25fr) minmax(280px,.75fr) !important;
	align-items: center !important;
	gap: clamp(28px,5vw,72px) !important;
	overflow: hidden !important;
	border: 1px solid rgba(7,95,103,.11) !important;
	border-radius: 28px !important;
	background:
		radial-gradient(circle at 92% 12%,rgba(213,169,75,.2),transparent 19rem),
		linear-gradient(135deg,#f6fbf9 0%,#edf6f3 58%,#f8f0e4 100%) !important;
	padding: clamp(28px,4.3vw,52px) !important;
	box-shadow: 0 22px 58px rgba(16,47,52,.1) !important;
}

.nsv-home-growth__copy {
	position: relative !important;
	z-index: 2 !important;
}

.nsv-home-growth__eyebrow {
	display: inline-flex !important;
	min-height: 32px !important;
	align-items: center !important;
	gap: 8px !important;
	border: 1px solid rgba(7,95,103,.13) !important;
	border-radius: 999px !important;
	background: rgba(255,255,255,.72) !important;
	padding: 0 12px !important;
	color: #075f67 !important;
	font-size: 10px !important;
	font-weight: 900 !important;
	letter-spacing: .1em !important;
	text-transform: uppercase !important;
}

.nsv-home-growth h2 {
	max-width: 760px !important;
	margin: 18px 0 0 !important;
	color: #153236 !important;
	font-family: var(--nsv-font-heading,Georgia,serif) !important;
	font-size: clamp(32px,3.5vw,48px) !important;
	font-weight: 800 !important;
	letter-spacing: -.035em !important;
	line-height: 1.07 !important;
}

.nsv-home-growth__copy > p {
	max-width: 720px !important;
	margin: 15px 0 0 !important;
	color: #617679 !important;
	font-size: 15px !important;
	line-height: 1.65 !important;
}

.nsv-home-growth__actions {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 10px !important;
	margin-top: 24px !important;
}

.nsv-home-growth__secondary {
	display: inline-flex !important;
	min-height: 54px !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 9px !important;
	border: 1px solid #cbd8d7 !important;
	border-radius: 15px !important;
	background: rgba(255,255,255,.78) !important;
	padding: 0 20px !important;
	color: #075f67 !important;
	font-size: 13px !important;
	font-weight: 850 !important;
	text-decoration: none !important;
}

.nsv-home-growth__secondary:hover {
	border-color: #075f67 !important;
	background: #fff !important;
	color: #043f45 !important;
}

.nsv-home-growth__visual {
	position: relative !important;
	z-index: 2 !important;
	display: grid !important;
	grid-template-columns: repeat(2,minmax(0,1fr)) !important;
	gap: 10px !important;
}

.nsv-home-growth__visual > div {
	display: flex !important;
	min-height: 112px !important;
	align-items: flex-start !important;
	justify-content: center !important;
	flex-direction: column !important;
	gap: 7px !important;
	border: 1px solid rgba(7,95,103,.1) !important;
	border-radius: 18px !important;
	background: rgba(255,255,255,.72) !important;
	padding: 17px !important;
	box-shadow: inset 0 1px 0 rgba(255,255,255,.75) !important;
}

.nsv-home-growth__visual > div:first-child {
	grid-column: 1 / -1 !important;
}

.nsv-home-growth__visual i {
	color: #d09c35 !important;
	font-size: 18px !important;
}

.nsv-home-growth__visual strong {
	color: #24484c !important;
	font-size: 14px !important;
	font-weight: 900 !important;
}

.nsv-home-growth__visual small {
	color: #708386 !important;
	font-size: 10px !important;
	line-height: 1.4 !important;
}

@media (max-width: 800px) {
	.nsv-home-growth {
		padding-top: 22px !important;
	}

	.nsv-home-growth__panel {
		grid-template-columns: minmax(0,1fr) !important;
		border-radius: 23px !important;
		padding: 28px 22px !important;
	}

	.nsv-home-growth__visual {
		grid-template-columns: repeat(3,minmax(0,1fr)) !important;
	}

	.nsv-home-growth__visual > div,
	.nsv-home-growth__visual > div:first-child {
		min-height: 96px !important;
		grid-column: auto !important;
		padding: 13px !important;
	}
}

@media (max-width: 560px) {
	.nsv-home-growth__panel {
		gap: 22px !important;
		padding: 24px 18px !important;
	}

	.nsv-home-growth h2 {
		font-size: 31px !important;
	}

	.nsv-home-growth__actions {
		display: grid !important;
		grid-template-columns: minmax(0,1fr) !important;
	}

	.nsv-home-growth__actions > * {
		width: 100% !important;
		box-sizing: border-box !important;
	}

	.nsv-home-growth__visual {
		grid-template-columns: minmax(0,1fr) !important;
	}

	.nsv-home-growth__visual > div {
		min-height: 78px !important;
	}
}
