.jdicl-section {
	--jdicl-paper: var(--jdi-paper, #f1faee);
	--jdicl-ink: var(--jdi-ink, #1d3557);
	--jdicl-blue: var(--jdi-blue, #a8dadc);
	background: var(--jdicl-paper);
	color: var(--jdicl-ink);
	padding: clamp(3.5rem, 8vw, 7rem) max(6vw, calc((100vw - 1240px) / 2));
}
.jdicl-inner { max-width: 1440px; margin-inline: auto; }
.jdicl-eyebrow { margin: 0; color: var(--jdicl-ink); font-size: .72rem; font-weight: 600; letter-spacing: .08em; }
.jdicl-section h2 { max-width: 920px; margin: 1rem 0; font-size: clamp(2.2rem, 5.5vw, 4.7rem); font-weight: 400; line-height: 1.08; }
.jdicl-intro { max-width: 600px; margin: 0 0 2rem; }
.jdicl-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr)); gap: clamp(1rem, 2vw, 1.5rem); }
.jdicl-card { min-width: 0; text-align: center; }
.jdicl-link {
	display: flex;
	height: 100%;
	flex-direction: column;
	align-items: center;
	padding: clamp(.8rem, 2vw, 1.25rem);
	border: 1px solid color-mix(in srgb, var(--jdicl-ink), transparent 78%);
	background: color-mix(in srgb, var(--jdicl-paper), var(--jdicl-ink) 3%);
	color: inherit;
	text-decoration: none;
}
.jdicl-mark {
	display: flex;
	width: 100%;
	height: clamp(100px, 13vw, 150px);
	align-items: center;
	justify-content: center;
	overflow: hidden;
}
.jdicl-mark img { display: block; width: 92%; height: 88%; max-width: 240px; max-height: 132px; object-fit: contain; }
.jdicl-card h3 { margin: .9rem 0 .35rem; font-size: 1.05rem; line-height: 1.3; }
.jdicl-card p { margin: 0; font-size: .9rem; }
.jdicl-no-logo { color: var(--jdicl-ink); font-size: .85rem; }
.jdicl-link[href]:hover, .jdicl-link[href]:focus-visible { border-color: var(--jdicl-ink); transform: translateY(-2px); }
.jdicl-link:focus-visible { outline: 3px solid var(--jdicl-blue); outline-offset: 4px; }
@media (prefers-reduced-motion: no-preference) {
	.jdicl-link { transition: border-color .2s ease, transform .2s ease; }
}

.jdicl-mark { background: #fff; border-radius: 4px; padding: 12px; box-sizing: border-box; }
.jdicl-link, .jdicl-link * { box-sizing: border-box; overflow-wrap: anywhere; }
