/* Accordion Block - Frontend Styles */

.quinn-accordion {
	margin-top: var(--margin-top, 0);
	margin-bottom: var(--margin-bottom, 0);
}

@media (max-width: 768px) {
	.quinn-accordion {
		margin-top: var(--margin-top-mobile, var(--margin-top, 0));
		margin-bottom: var(--margin-bottom-mobile, var(--margin-bottom, 0));
	}
}

.quinn-accordion__item-body-inner > *:last-child {
	margin-bottom: 0;
}

.quinn-accordion__item-body-inner strong {
	font-weight: 500;
}

/* Item */
.quinn-accordion__item {
	background: #fff;
	padding: 24px;
}

.quinn-accordion__item + .quinn-accordion__item {
	margin-top: 24px;
}

/* Header */
.quinn-accordion__item-header {
	display: flex;
	align-items: center;
	gap: 24px;
	width: 100%;
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
	text-align: left;
}

/* Icon */
.quinn-accordion__item-icon {
	flex-shrink: 0;
	width: 24px;
	height: 24px;
	transition: transform 0.35s ease;
}

.quinn-accordion__item--open .quinn-accordion__item-icon {
	transform: rotate(45deg);
}

/* Title */
.quinn-accordion__item-title {
	font-size: 24px;
	line-height: 1.333;
	text-transform: uppercase;
	color: #060606;
	font-weight: 500;
}

@media (max-width: 768px) {
	.quinn-accordion__item-title {
		font-size: 18px;
	}
}

/* Body — smooth open/close via CSS grid trick */
.quinn-accordion__item-body {
	display: grid;
	grid-template-rows: 0fr;
	transition: grid-template-rows 0.5s ease;
}

.quinn-accordion__item--open .quinn-accordion__item-body {
	grid-template-rows: 1fr;
}

.quinn-accordion__item-body-inner {
	overflow: hidden;
	padding-top: 0;
	transition: padding-top 0.5s ease;
}

.quinn-accordion__item--open .quinn-accordion__item-body-inner {
	padding-top: 24px;
}
