/* ================================================================
   Services カードリスト (.kw-services-cards-v1 / .kw-service-card-v1)
   ================================================================ */

:root .kw-services-cards-v1 {
	width: 100%;
}

/* ── カード ── */

:root .kw-service-card-v1 {
	position: relative;
	border-radius: var(--wp--preset--border-radius--radius-2-xl);
	box-shadow: 0 0 calc(var(--wp--preset--spacing--size-16) / 2) rgba(73, 185, 208, 0.5);
	transition: box-shadow var(--duration-base) var(--ease-base);
}

:root .kw-service-card-v1:hover {
	box-shadow: 0 0 calc(var(--wp--preset--spacing--size-32) / 2) rgba(73, 185, 208, 0.85);
}

/* ── ヘッディング（番号 + 英語ラベル） ── */

:root .kw-card-heading-wrap-v1 {
	align-items: baseline;
	padding-bottom: var(--wp--preset--spacing--size-24);
}

:root .kw-card-number-v1 {
	font-family: var(--wp--preset--font-family--poppins), sans-serif;
	font-weight: 200;
	color: var(--wp--preset--color--primary-500);
	line-height: 1;
	margin: 0;
	white-space: nowrap;
}

:root .kw-card-en-label-v1 {
	font-family: var(--wp--preset--font-family--poppins), sans-serif;
	font-weight: 200;
	line-height: 1;
	margin: 0;
	background: linear-gradient(
		to bottom,
		var(--wp--preset--color--primary-300) 0%,
		var(--wp--preset--color--primary-500) 50%,
		var(--wp--preset--color--primary-700) 100%
	);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
}

/* ── タイトル (h3) ── */

:root .kw-card-title-v1 {
	font-size: var(--wp--preset--font-size--font-24);
	font-weight: 700;
	color: var(--wp--preset--color--text-primary);
	line-height: 1.4;
	letter-spacing: 0.03em;
	margin: 0;
}

/* ── 説明文 ── */

:root .kw-card-desc-v1 {
	color: var(--wp--preset--color--base-text);
	line-height: 2;
	margin: 0;
}

/* ── 相談タグ ── */

:root .kw-card-tags-heading-v1 {
	font-weight: 700;
	color: var(--wp--preset--color--base-text);
	line-height: 1.6;
	margin: 0;
}

:root .kw-card-tags-v1 {
	flex-wrap: wrap;
}

:root .kw-tag-v1 {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--size-8);
	border: 1px solid var(--wp--preset--color--text-primary);
	border-radius: var(--wp--preset--border-radius--radius-sm);
	padding: var(--wp--preset--spacing--size-4) var(--wp--preset--spacing--size-12);
	font-size: var(--wp--preset--font-size--font-14);
	font-weight: 700;
	color: var(--wp--preset--color--text-primary);
	line-height: 1.6;
	margin: 0;
	white-space: nowrap;
}

:root .kw-tag-v1::before {
	content: "";
	display: inline-block;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background-color: var(--wp--preset--color--primary-500);
	flex-shrink: 0;
}

/* ── アイコンサークル（::after） ── */

:root .kw-service-card-v1::after {
	content: "\f061"; /* fa-arrow-right */
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	font-size: var(--wp--preset--font-size--font-20);
	position: absolute;
	right: var(--wp--preset--spacing--size-32);
	top: 50%;
	transform: translateY(-50%);
	width: 52px;
	height: 52px;
	border: 1.75px solid var(--wp--preset--color--text-primary);
	border-radius: var(--wp--preset--border-radius--radius-full);
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--wp--preset--color--text-primary);
	background-color: transparent;
	transition:
		background-color var(--duration-base) var(--ease-base),
		color var(--duration-base) var(--ease-base);
}

:root .kw-service-card-v1:hover::after {
	background-color: var(--wp--preset--color--text-primary);
	color: var(--wp--preset--color--white);
}

/* ── SP（~640px） ── */

@media (max-width: 640px) {
	:root .kw-card-heading-wrap-v1 {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	:root .kw-card-title-v1 {
		text-align: center;
	}

	:root .kw-card-tags-heading-v1 {
		text-align: center;
	}

	:root .kw-card-tags-v1 {
		justify-content: center;
	}

	:root .kw-service-card-v1::after {
		top: auto;
		bottom: var(--wp--preset--spacing--size-24);
		left: 50%;
		right: auto;
		transform: translateX(-50%);
	}
}
