/* =============================================================
   sykimlaw faq-preview — patterns/home-faq-preview.php
   ============================================================= */

/* ── Section Header ── */
.sykim-faq__eyebrow {
	font-size: var(--wp--preset--font-size--sm);
	font-family: var(--wp--preset--font-family--noto-sans-kr);
	font-weight: 600;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--wp--preset--color--gold-500) !important;
}

.sykim-faq__heading {
	color: var(--wp--preset--color--navy-900) !important;
	word-break: keep-all;
}

/* ── FAQ List container ── */
.sykim-faq-list {
	border-top: 1px solid rgba(0, 0, 0, 0.08);
}

/* ── FAQ Item (details element) ── */
.sykim-faq-item {
	border-bottom: 1px solid rgba(0, 0, 0, 0.08);
}

/* Remove default summary marker */
.sykim-faq-item > summary {
	list-style: none;
}

.sykim-faq-item > summary::-webkit-details-marker {
	display: none;
}

/* ── Summary row ── */
.sykim-faq-item__question {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: var(--wp--preset--spacing--md);
	padding: var(--wp--preset--spacing--lg) 0;
	cursor: pointer;
	user-select: none;
	transition: opacity 0.15s ease;
}

.sykim-faq-item__question:hover {
	opacity: 0.82;
}

/* Question text */
.sykim-faq-item__q-text {
	font-family: var(--wp--preset--font-family--noto-sans-kr);
	font-size: var(--wp--preset--font-size--md);
	font-weight: 600;
	color: var(--wp--preset--color--navy-900);
	line-height: 1.6;
	word-break: keep-all;
	flex: 1;
}

/* + / − toggle via ::after on summary */
.sykim-faq-item__question::after {
	content: "+";
	font-family: var(--wp--preset--font-family--inter);
	font-size: 1.25rem;
	font-weight: 300;
	color: var(--wp--preset--color--navy-900);
	line-height: 1;
	opacity: 0.45;
	flex-shrink: 0;
	transition: opacity 0.15s ease, transform 0.2s ease;
}

.sykim-faq-item[open] .sykim-faq-item__question::after {
	content: "−";
	opacity: 0.6;
}

/* ── Answer panel ── */
.sykim-faq-item__answer {
	padding-bottom: var(--wp--preset--spacing--lg);
}

/* Subtle fade-in on open */
@keyframes sykim-faq-open {
	from { opacity: 0; transform: translateY(-4px); }
	to   { opacity: 1; transform: translateY(0);    }
}

.sykim-faq-item[open] .sykim-faq-item__answer {
	animation: sykim-faq-open 0.2s ease both;
}

@media (prefers-reduced-motion: reduce) {
	.sykim-faq-item[open] .sykim-faq-item__answer {
		animation: none !important;
	}
}

/* Answer text */
.sykim-faq-item__a-text {
	font-size: var(--wp--preset--font-size--md) !important;
	color: #4a4f5a !important;
	line-height: 1.9;
	word-break: keep-all;
	margin: 0;
}

/* ── Footer link ── */
.sykim-faq-section__all-link {
	font-size: var(--wp--preset--font-size--sm) !important;
	font-family: var(--wp--preset--font-family--noto-sans-kr) !important;
	font-weight: 600 !important;
}

.sykim-faq-section__all-link a {
	color: var(--wp--preset--color--navy-900) !important;
	text-decoration: none;
	transition: color 0.18s ease;
}

.sykim-faq-section__all-link a:hover,
.sykim-faq-section__all-link a:focus-visible {
	color: var(--wp--preset--color--gold-500) !important;
}

/* ── Mobile ── */
@media (max-width: 599px) {
	.sykim-faq-section {
		padding-left: var(--wp--preset--spacing--sm) !important;
		padding-right: var(--wp--preset--spacing--sm) !important;
		padding-top: var(--wp--preset--spacing--2xl) !important;
		padding-bottom: var(--wp--preset--spacing--2xl) !important;
	}

	.sykim-faq-item__question {
		padding-top: var(--wp--preset--spacing--md);
		padding-bottom: var(--wp--preset--spacing--md);
	}
}
