/* =========================================================================
   Red Luxe — страница «Вопросы и ответы» (аккордеон)
   ========================================================================= */

.rl-faq { max-width: 820px; margin: 0 auto; padding-bottom: clamp(2rem, 4vw, 3rem); }
.rl-faq__list { display: grid; gap: 1rem; margin-top: 2.5rem; }

.rl-faq__item {
	background: #fff;
	border: 1px solid var(--rl-border);
	border-radius: var(--rl-radius);
	overflow: hidden;
	transition: border-color var(--rl-t) var(--rl-ease), box-shadow var(--rl-t) var(--rl-ease);
}
.rl-faq__item.is-open { border-color: rgba(198,40,40,0.35); box-shadow: var(--rl-shadow-sm); }

.rl-faq__q {
	display: flex; align-items: center; justify-content: space-between; gap: 1rem;
	width: 100%; text-align: left;
	padding: 1.25rem 1.4rem;
	font-family: var(--rl-font-head);
	font-size: 1.12rem; font-weight: 600; color: var(--rl-heading);
	transition: color var(--rl-t) var(--rl-ease);
}
.rl-faq__q:hover { color: var(--rl-accent); }
.rl-faq__icon {
	position: relative; flex-shrink: 0;
	width: 24px; height: 24px;
	color: var(--rl-accent);
	transition: transform var(--rl-t) var(--rl-ease);
}
.rl-faq__icon::before, .rl-faq__icon::after {
	content: ""; position: absolute; top: 50%; left: 50%;
	width: 14px; height: 2px; background: currentColor; border-radius: 2px;
	transform: translate(-50%, -50%);
	transition: transform var(--rl-t) var(--rl-ease), opacity var(--rl-t) var(--rl-ease);
}
.rl-faq__icon::after { transform: translate(-50%, -50%) rotate(90deg); }
.rl-faq__item.is-open .rl-faq__icon::after { opacity: 0; transform: translate(-50%, -50%) rotate(0); }

.rl-faq__a {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows var(--rl-t) var(--rl-ease);
}
.rl-faq__item.is-open .rl-faq__a { grid-template-rows: 1fr; }
.rl-faq__a-inner { overflow: hidden; }
.rl-faq__a p { padding: 0 1.4rem 1.4rem; color: var(--rl-muted); line-height: 1.7; }
