.valora-cards {
	--valora-cards-columns: 5;
	--valora-cards-duration: 420ms;
	--valora-cards-zoom-scale: 1.08;
	--valora-cards-hover-lift: 8px;
	--valora-cards-hover-scale: 1.03;
	--valora-cards-overlay-top: rgba(10, 20, 10, 0);
	--valora-cards-overlay-bottom: rgba(6, 14, 8, 0.92);
	--valora-cards-overlay-bottom-hover: rgba(6, 14, 8, 0.97);
	--valora-cards-overlay-stop: 30%;
	--valora-cards-overlay-direction: to top;
	font-family: Inter, Arial, sans-serif;
	margin-inline: auto;
	position: relative;
	width: 100%;
}

.valora-cards__grid {
	display: grid;
	grid-template-columns: repeat(var(--valora-cards-columns), minmax(0, 1fr));
	column-gap: 24px;
	row-gap: 24px;
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
}

.valora-cards__item {
	list-style: none;
	margin: 0;
	min-width: 0;
	padding: 0;
	position: relative;
}

.valora-cards__item-inner {
	--valora-cards-aspect-ratio: 3 / 4;
	aspect-ratio: var(--valora-cards-aspect-ratio);
	color: inherit;
	display: block;
	overflow: hidden;
	position: relative;
	text-decoration: none;
	transform: translateY(0);
	transition: transform var(--valora-cards-duration) ease, border-color var(--valora-cards-duration) ease, box-shadow var(--valora-cards-duration) ease;
	width: 100%;
}

.valora-cards--hover-lift .valora-cards__item-inner:hover,
.valora-cards--hover-lift .valora-cards__item-inner:focus-visible {
	transform: translateY(calc(-1 * var(--valora-cards-hover-lift)));
}

.valora-cards--hover-scale .valora-cards__item-inner:hover,
.valora-cards--hover-scale .valora-cards__item-inner:focus-visible {
	transform: scale(var(--valora-cards-hover-scale));
}

.valora-cards--hover-lift-scale .valora-cards__item-inner:hover,
.valora-cards--hover-lift-scale .valora-cards__item-inner:focus-visible {
	transform: translateY(calc(-1 * var(--valora-cards-hover-lift))) scale(var(--valora-cards-hover-scale));
}

a.valora-cards__item-inner:hover,
a.valora-cards__item-inner:focus-visible {
	text-decoration: none;
}

a.valora-cards__item-inner:focus-visible {
	outline: 3px solid #68c63f;
	outline-offset: 5px;
}

.valora-cards__media {
	display: block;
	height: 100%;
	inset: 0;
	overflow: hidden;
	position: absolute;
	width: 100%;
}

.valora-cards__image,
.valora-cards__media > img {
	display: block;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	transition: transform var(--valora-cards-duration) ease;
	width: 100%;
}

.valora-cards--zoom .valora-cards__item-inner:hover .valora-cards__image,
.valora-cards--zoom .valora-cards__item-inner:focus-visible .valora-cards__image,
.valora-cards--zoom .valora-cards__item-inner:hover .valora-cards__media > img,
.valora-cards--zoom .valora-cards__item-inner:focus-visible .valora-cards__media > img {
	transform: scale(var(--valora-cards-zoom-scale));
}

.valora-cards__overlay {
	background: linear-gradient(var(--valora-cards-overlay-direction), var(--valora-cards-overlay-top) var(--valora-cards-overlay-stop), var(--valora-cards-overlay-bottom) 100%);
	inset: 0;
	position: absolute;
	transition: background var(--valora-cards-duration) ease;
}

.valora-cards__item-inner:hover .valora-cards__overlay,
.valora-cards__item-inner:focus-visible .valora-cards__overlay {
	background: linear-gradient(var(--valora-cards-overlay-direction), var(--valora-cards-overlay-top) var(--valora-cards-overlay-stop), var(--valora-cards-overlay-bottom-hover) 100%);
}

.valora-cards__content {
	align-items: flex-start;
	bottom: 0;
	display: flex;
	flex-direction: column;
	gap: 14px;
	left: 0;
	padding: 24px 20px;
	position: absolute;
	right: 0;
	text-align: left;
	z-index: 1;
}

.valora-cards__icon {
	align-items: center;
	color: #ffffff;
	display: inline-flex;
	flex: 0 0 auto;
	font-size: 34px;
	justify-content: flex-start;
	transition: color var(--valora-cards-duration) ease;
}

.valora-cards__icon svg,
.valora-cards__icon svg * {
	transition: fill var(--valora-cards-duration) ease, stroke var(--valora-cards-duration) ease;
}

.valora-cards__icon i,
.valora-cards__icon svg,
.valora-cards__icon img {
	display: block;
	flex: 0 0 auto;
	height: 1em;
	max-height: 100%;
	max-width: 100%;
	object-fit: contain;
	width: 1em;
}

.valora-cards--icon-animate .valora-cards__icon i,
.valora-cards--icon-animate .valora-cards__icon svg,
.valora-cards--icon-animate .valora-cards__icon img {
	transform-box: fill-box;
	transform-origin: center;
	will-change: transform;
}

.valora-cards--icon-animation-spring .valora-cards__item-inner:hover .valora-cards__icon svg,
.valora-cards--icon-animation-spring .valora-cards__item-inner:focus-visible .valora-cards__icon svg,
.valora-cards--icon-animation-spring .valora-cards__item-inner:hover .valora-cards__icon img,
.valora-cards--icon-animation-spring .valora-cards__item-inner:focus-visible .valora-cards__icon img,
.valora-cards--icon-animation-spring .valora-cards__item-inner:hover .valora-cards__icon i,
.valora-cards--icon-animation-spring .valora-cards__item-inner:focus-visible .valora-cards__icon i {
	animation: valora-cards-icon-spring 650ms cubic-bezier(0.22, 1, 0.36, 1) both;
}

.valora-cards--icon-animation-pulse .valora-cards__item-inner:hover .valora-cards__icon svg,
.valora-cards--icon-animation-pulse .valora-cards__item-inner:focus-visible .valora-cards__icon svg,
.valora-cards--icon-animation-pulse .valora-cards__item-inner:hover .valora-cards__icon img,
.valora-cards--icon-animation-pulse .valora-cards__item-inner:focus-visible .valora-cards__icon img,
.valora-cards--icon-animation-pulse .valora-cards__item-inner:hover .valora-cards__icon i,
.valora-cards--icon-animation-pulse .valora-cards__item-inner:focus-visible .valora-cards__icon i {
	animation: valora-cards-icon-pulse 650ms ease-in-out both;
}

.valora-cards--icon-animation-turn .valora-cards__item-inner:hover .valora-cards__icon svg,
.valora-cards--icon-animation-turn .valora-cards__item-inner:focus-visible .valora-cards__icon svg,
.valora-cards--icon-animation-turn .valora-cards__item-inner:hover .valora-cards__icon img,
.valora-cards--icon-animation-turn .valora-cards__item-inner:focus-visible .valora-cards__icon img,
.valora-cards--icon-animation-turn .valora-cards__item-inner:hover .valora-cards__icon i,
.valora-cards--icon-animation-turn .valora-cards__item-inner:focus-visible .valora-cards__icon i {
	animation: valora-cards-icon-turn 650ms cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

@keyframes valora-cards-icon-spring {
	0%, 100% { transform: translateY(0) rotate(0) scale(1); }
	38% { transform: translateY(-5px) rotate(-5deg) scale(1.13); }
	68% { transform: translateY(1px) rotate(2deg) scale(0.98); }
}

@keyframes valora-cards-icon-pulse {
	0%, 100% { transform: scale(1); }
	42% { transform: scale(1.16); }
	72% { transform: scale(0.97); }
}

@keyframes valora-cards-icon-turn {
	0%, 100% { transform: rotate(0) scale(1); }
	42% { transform: rotate(12deg) scale(1.1); }
	72% { transform: rotate(-3deg) scale(1); }
}

.valora-cards__copy {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 0;
}

.valora-cards__title {
	color: #ffffff;
	display: block;
	font-family: Inter, Arial, sans-serif;
	font-size: 17px;
	font-weight: 500;
	line-height: 1.3;
	text-transform: uppercase;
	transition: color var(--valora-cards-duration) ease;
}

.valora-cards__description {
	color: rgba(255, 255, 255, 0.85);
	display: block;
	font-family: Inter, Arial, sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.5;
	transition: color var(--valora-cards-duration) ease;
}

@media (max-width: 1024px) {
	.valora-cards {
		--valora-cards-columns: 3;
	}
}

@media (max-width: 767px) {
	.valora-cards {
		--valora-cards-columns: 1;
	}
}

@media (prefers-reduced-motion: reduce) {
	.valora-cards__item-inner,
	.valora-cards__image,
	.valora-cards__media > img,
	.valora-cards__overlay,
	.valora-cards__icon,
	.valora-cards__icon i,
	.valora-cards__icon svg,
	.valora-cards__icon img,
	.valora-cards__title,
	.valora-cards__description {
		animation: none !important;
		transition: none;
	}
}
