@font-face {
	font-family: "Ciabatta";
	src: url("../../Ciabatta-Light.ttf") format("truetype");
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: "Ciabatta";
	src: url("../../Ciabatta-Regular.ttf") format("truetype");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}

.voc-card-shell,
.voc-card-shell * {
	box-sizing: border-box;
}

.voc-card-shell {
	max-width: 1380px;
	margin: 0 auto;
	padding: 30px 14px;
	font-family: "Ciabatta", sans-serif;
	color: #272727;
}

.voc-card-intro { 
	margin: 0 auto 34px;
	text-align: center;
}

.voc-card-intro-title {
	margin: 0;
	font-size: clamp(1.4rem, 3.2vw, 3.6rem);
	line-height: 0.96;
	letter-spacing: -0.04em;
	color: #10345e;
}

.voc-card-intro-text {
	max-width: 640px;
	margin: 16px auto 0;
	font-size: clamp(1.05rem, 1.4vw, 1.28rem);
	line-height: 1.5;
	color: rgba(39, 39, 39, 0.74);
}

.voc-card-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
	min-height: 720px;
}

.voc-card-panel {
	position: relative;
	overflow: hidden;
	border-radius: 28px;
}

.voc-card-panel-large {
	min-height: 720px;
	background: linear-gradient(rgba(17, 129, 67, 0.9), rgba(17, 129, 67, 0.9));
}

.voc-card-video {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 0;
	opacity: 0.38;
	filter: saturate(0.9) contrast(1.05);
}

.voc-card-column {
	display: grid;
	grid-template-rows: 1fr 1fr;
	gap: 24px;
}

.voc-card-panel-top {
	min-height: 348px;
	background: transparent;
	border: 2px solid #85704c;
	display: flex;
	align-items: center;
}

.voc-card-panel-bottom {
	min-height: 348px;
	background: transparent;
	border: 2px solid #e91820;
	display: flex;
	align-items: center;
}

.voc-card-content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.voc-card-content-large {
	padding: 72px 62px 48px;
}

.voc-card-content-small {
	padding: 56px 44px 38px;
	max-width: 64%;
}

.voc-card-panel-top .voc-card-content-small,
.voc-card-panel-bottom .voc-card-content-small {
	justify-content: center;
	height: auto;
	padding-top: 44px;
	padding-bottom: 44px;
}

.voc-card-title {
	margin: 0;
	font-weight: 800;
	line-height: 1.08;
	letter-spacing: -0.03em;
}

.voc-card-title-large {
	font-size: clamp(2rem, 3vw, 3.35rem);
	color: #ffffff;
	max-width: 420px;
}

.voc-card-title-small {
	font-size: clamp(2rem, 3vw, 3rem);
	max-width: 15ch;
}

.voc-card-title-small .voc-card-title-accent-green,
.voc-card-title-small .voc-card-title-accent-blue {
	display: block;
	margin-top: 0.08em;
	white-space: nowrap;
}

.voc-card-title-accent-green {
	color: #85704c;
}

.voc-card-title-accent-blue {
	color: #e91820;
}

.voc-card-text {
	margin-top: 14px;
	margin-bottom: 0;
	font-size: 1.5rem;
	line-height: 1.45;
}

.voc-card-text-muted {
	color: #10345e;
}

.voc-card-spacer {
	flex: 1;
}

.voc-card-stat {
	position: absolute;
	left: 62px;
	bottom: 54px;
	z-index: 2;
	font-size: clamp(4rem, 7vw, 5.6rem); 
	line-height: 0.9;
	color: #ffffff;
}

.voc-card-packshot-top,
.voc-card-packshot-bottom {
	position: absolute;
	z-index: 1;
	object-fit: contain;
	pointer-events: none;
}

.voc-card-packshot-top {
	right: 26px;
	top: 50%;
	bottom: auto;
	width: 49%;
	max-width: 30% !important;
	height: 95%;
	transform: translateY(-50%);
}

.voc-card-packshot-bottom {
	right: 0;
	top: 50%;
	bottom: auto;
	width: 40%;
	height: 94%;
	transform: translateY(-50%);
}

.voc-card-orb {
	position: absolute;
	z-index: 1;
	pointer-events: none;
}

.voc-card-orb {
	border-radius: 50%;
	background: rgba(133, 112, 76, 0.34);
	box-shadow: none;
}

.voc-card-orb-top-a {
	width: 66px;
	height: 66px;
	left: 18px;
	top: 20px;
	background: rgba(133, 112, 76, 0.42);
}

.voc-card-orb-top-b {
	width: 72px;
	height: 72px;
	right: -8px;
	top: 22px;
	background: rgba(133, 112, 76, 0.28);
}

.voc-card-orb-top-c {
	width: 54px;
	height: 54px;
	left: 140px;
	bottom: 58px;
	background: rgba(133, 112, 76, 0.24);
}

.voc-card-orb-bottom-a {
	width: 58px;
	height: 58px;
	left: 54%;
	top: 34px;
	background: rgba(233, 24, 32, 0.24);
}

.voc-card-panel-top::before,
.voc-card-panel-top::after,
.voc-card-panel-bottom::before,
.voc-card-panel-bottom::after {
	content: "";
	position: absolute;
	z-index: 1;
	pointer-events: none;
	border-radius: 50%;
	background: rgba(133, 112, 76, 0.18);
}

.voc-card-panel-top::before {
	width: 18px;
	height: 18px;
	left: 92px;
	top: 34px;
	box-shadow: 156px 22px 0 8px rgba(133, 112, 76, 0.14), 38px 208px 0 4px rgba(133, 112, 76, 0.16), 256px 168px 0 2px rgba(133, 112, 76, 0.12);
}

.voc-card-panel-top::after {
	width: 12px;
	height: 12px;
	left: 208px;
	top: 108px;
	box-shadow: -124px 124px 0 6px rgba(133, 112, 76, 0.1), 132px 88px 0 10px rgba(133, 112, 76, 0.12), 188px -12px 0 3px rgba(133, 112, 76, 0.18);
}

.voc-card-panel-bottom::before {
	width: 18px;
	height: 18px;
	left: 92px;
	top: 34px;
	background: rgba(233, 24, 32, 0.18);
	box-shadow: 156px 22px 0 8px rgba(233, 24, 32, 0.14), 38px 208px 0 4px rgba(233, 24, 32, 0.16), 256px 168px 0 2px rgba(233, 24, 32, 0.12);
}

.voc-card-panel-bottom::after {
	width: 12px;
	height: 12px;
	left: 208px;
	top: 108px;
	background: rgba(233, 24, 32, 0.18);
	box-shadow: -124px 124px 0 6px rgba(233, 24, 32, 0.1), 132px 88px 0 10px rgba(233, 24, 32, 0.12), 188px -12px 0 3px rgba(233, 24, 32, 0.18);
}

@media (max-width: 980px) {
	.voc-card-grid {
		grid-template-columns: 1fr;
	}

	.voc-card-panel-large {
		min-height: 220px;
	}

	.voc-card-content-small {
		max-width: 70%;
	}
}

@media (max-width: 768px) {
	.voc-card-shell {
		padding: 16px;
	}

	.voc-card-intro {
		margin-bottom: 24px;
	}

	.voc-card-intro-title {
		font-size: clamp(2rem, 9vw, 3rem);
	}

	.voc-card-intro-text {
		margin-top: 12px;
		font-size: 1rem;
	}

	.voc-card-grid,
	.voc-card-column {
		gap: 16px;
	}

	.voc-card-grid {
		min-height: auto;
	}

	.voc-card-column {
		grid-template-rows: auto;
	}

	.voc-card-panel-large {
		min-height: 520px;
	}

	.voc-card-panel-top,
	.voc-card-panel-bottom {
		align-items: center;
		min-height: 210px;
		border-radius: 22px;
	}

	.voc-card-content-large {
		padding: 34px 24px 24px;
		max-width: 100%;
	}

	.voc-card-content-small {
		width: 100%;
		max-width: 100%;
		padding: 24px 132px 24px 22px;
	}

	.voc-card-panel-top .voc-card-content-small,
	.voc-card-panel-bottom .voc-card-content-small {
		justify-content: center;
		padding-top: 24px;
		padding-bottom: 24px;
	}

	.voc-card-title-large {
		max-width: 100%;
		font-size: 2.1rem;
	}

	.voc-card-title-small {
		max-width: 11ch;
		font-size: 1.55rem;
		line-height: 1.02;
	}

	.voc-card-title-small .voc-card-title-accent-green,
	.voc-card-title-small .voc-card-title-accent-blue {
		white-space: normal;
	}

	.voc-card-text {
		margin-top: 10px;
		font-size: 0.95rem;
		line-height: 1.35;
	}

	.voc-card-stat {
        text-align: right;
        right: 10px;
        bottom: 10px;
        font-size: 3rem;
	}

	.voc-card-shell .voc-card-packshot-top,
	.voc-card-shell .voc-card-packshot-bottom {
		left: auto;
		right: 12px;
		top: 50%;
		bottom: auto;
		width: min(34%, 118px);
		height: 154px;
		transform: translateY(-50%);
	}

	.voc-card-panel-top::before,
	.voc-card-panel-top::after,
	.voc-card-panel-bottom::before,
	.voc-card-panel-bottom::after,
	.voc-card-orb {
		display: none;
	}
}
