/* ============================================================
   Optivro ISPU — Dual-Purpose Cards (`.tk-dual`)
   Centered head (trait) + two numbered cards with a hover lift and
   an animated navy→gold underline + an italic closing line.
   Scoped under `.oiw-dual`.
   ============================================================ */
.oiw-dual {
	padding: 88px 40px;
}
.oiw-dual .oiw-inner {
	max-width: 1100px;
	margin: 0 auto;
	width: 100%;
}
.oiw-dual .oiw-head {
	margin-bottom: 56px;
}
.oiw-dual .oiw-h {
	font-size: 38px;
	line-height: 48px;
	margin-bottom: 14px;
}
.oiw-dual .oiw-sub {
	max-width: 560px;
}
.oiw-dual-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 24px;
}
.oiw-dual-card {
	background: #fff;
	border: 1px solid var(--border);
	border-radius: 14px;
	padding: 44px 40px;
	position: relative;
	overflow: hidden;
	transition: transform 0.28s ease, box-shadow 0.28s ease;
	box-shadow: 0 2px 14px rgba(0, 29, 58, 0.05);
}
.oiw-dual-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 18px 44px rgba(0, 29, 58, 0.11);
}
.oiw-dual-card::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 3px;
	background: linear-gradient(90deg, var(--navy), var(--gold));
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.35s ease;
}
.oiw-dual-card:hover::after {
	transform: scaleX(1);
}
.oiw-dual-num {
	font-family: "OrpheusPro Regular", 'orpheus pro', orpheus, Georgia, serif;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 2px;
	color: var(--gold);
	display: block;
	margin-bottom: 20px;
	text-transform: uppercase;
}
.oiw-dual-card h3 {
	font-family: "OrpheusPro Regular", 'orpheus pro', orpheus, Georgia, serif;
	font-size: 25px;
	line-height: 34px;
	font-weight: 600;
	color: var(--ink);
	margin-bottom: 14px;
}
.oiw-dual-rule {
	width: 28px;
	height: 2px;
	background: rgba(0, 29, 58, 0.15);
	margin-bottom: 16px;
}
.oiw-dual-card p {
	font-size: 15.5px;
	line-height: 26px;
	color: #001D3A;
	opacity: 0.72;
}
/* Scoped under .oiw-dual so it beats core's `.oiw-scope p { margin: 0 }` reset
   (0,2,0 > 0,1,1); otherwise the reset zeroes the 40px top + auto centering. */
.oiw-dual .oiw-dual-title {
	font-family: "OrpheusPro Regular", 'orpheus pro', orpheus, Georgia, serif;
	font-style: italic;
	font-size: 17px;
	color: var(--navy);
	text-align: center;
	max-width: 720px;
	margin: 40px auto 0;
	line-height: 27px;
	opacity: 0.75;
}
@media (max-width: 900px) {
	.oiw-dual {
		padding: 56px 24px;
	}
	.oiw-dual-grid {
		grid-template-columns: 1fr;
	}
}
@media (max-width: 560px) {
	.oiw-dual .oiw-h {
		font-size: 28px;
		line-height: 37px;
	}
	.oiw-dual-card {
		padding: 32px 26px;
	}
}
