/* =============================================================================
 * LITSLINK BLOCKS — Readiness · accordion checklist + download CTA
 * (acf/ll-readiness-accordion)
 * Strict 1:1 with the Sports-Software "Is your sports or fitness software
 * production-ready?" cut. Self-contained: block-scoped palette, literal font
 * fallback. No global .block-head. Light section, centered header, single-open
 * accordion of category rows (square icon badge + title + chevron), open panel
 * shows bordered blue-check rows, full-width light CTA banner below.
 * ========================================================================== */
.block-ll-readiness-accordion {
	--rda-bg:            #f7f9fb;
	--rda-ink:           #10151c;
	--rda-muted:         #64707e;
	--rda-eyebrow:       #7c8aa0;
	--rda-accent:        #1690d3;
	--rda-card-bg:       #ffffff;
	--rda-card-border:   #e6eaf0;
	--rda-badge-bg:      #eef6fd;
	--rda-chev:          #9aa5b4;
	--rda-check-bg:      #ffffff;
	--rda-check-border:  #e6eaf0;
	--rda-check-ink:     #313b48;
	--rda-cta-bg:        #f3f9fe;
	--rda-cta-border:    #bcdcf2;
	--rda-cta-ink:       #10151c;
	--rda-cta-icon-bg:   #ffffff;
	--rda-btn-bg:        #1690d3;
	--rda-btn-ink:       #ffffff;
	--rda-btn-hover:     #127ab8;

	font-family: var(--ll-font, 'Montserrat', 'Montserrat-fallback', Arial, sans-serif);
	background: var(--rda-bg);
	padding: 84px 0;
	box-sizing: border-box;
}
.block-ll-readiness-accordion *,
.block-ll-readiness-accordion *::before,
.block-ll-readiness-accordion *::after { box-sizing: border-box; }

.block-ll-readiness-accordion__inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 24px;
}

/* ── Header ─────────────────────────────────────────────────────────────── */
.block-ll-readiness-accordion__head {
	text-align: center;
	margin: 0 auto 44px;
	max-width: 760px;
}
.block-ll-readiness-accordion__eyebrow {
	margin: 0 0 16px;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--rda-eyebrow);
}
.block-ll-readiness-accordion__title {
	margin: 0;
	font-size: 40px;
	line-height: 1.22;
	font-weight: 700;
	color: var(--rda-ink);
	letter-spacing: -.01em;
}
.block-ll-readiness-accordion__subtitle {
	margin: 20px auto 0;
	max-width: 680px;
	font-size: 16px;
	line-height: 1.7;
	color: var(--rda-muted);
}

/* ── Accordion list ─────────────────────────────────────────────────────── */
.block-ll-readiness-accordion__list {
	display: flex;
	flex-direction: column;
	gap: 16px;
	max-width: 760px;
	margin: 0 auto;
	width: 100%;
}

/* Category card */
.block-ll-readiness-accordion__item {
	background: var(--rda-card-bg);
	border: 1px solid var(--rda-card-border);
	border-radius: 16px;
	overflow: hidden;
}

/* Category row (the always-visible toggle) */
.block-ll-readiness-accordion__row {
	display: flex;
	align-items: center;
	gap: 16px;
	width: 100%;
	background: none;
	border: 0;
	padding: 22px 24px;
	cursor: pointer;
	text-align: left;
	font-family: inherit;
}
.block-ll-readiness-accordion__row[disabled] { cursor: default; }

/* Square icon badge */
.block-ll-readiness-accordion__badge {
	flex: 0 0 40px;
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
	background: var(--rda-badge-bg);
	color: var(--rda-accent);
}
.block-ll-readiness-accordion__badge-img {
	width: 22px;
	height: 22px;
	object-fit: contain;
	display: block;
}

.block-ll-readiness-accordion__cat-title {
	flex: 1 1 auto;
	min-width: 0;
	font-size: 17px;
	font-weight: 700;
	line-height: 1.4;
	color: var(--rda-ink);
}

/* Chevron — rotates when open */
.block-ll-readiness-accordion__chev {
	flex: 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--rda-chev);
	transition: transform .25s ease, color .2s ease;
}
.block-ll-readiness-accordion__item--open .block-ll-readiness-accordion__chev {
	transform: rotate(180deg);
	color: var(--rda-accent);
}

/* ── Open panel ─────────────────────────────────────────────────────────── */
.block-ll-readiness-accordion__panel {
	max-height: 0;
	overflow: hidden;
	transition: max-height .3s ease;
}
.block-ll-readiness-accordion__item--open .block-ll-readiness-accordion__panel {
	max-height: 1600px;
}

.block-ll-readiness-accordion__checks {
	margin: 0;
	padding: 4px 24px 24px;
	list-style: none;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

/* Each check item is a bordered box with a filled blue check + text */
.block-ll-readiness-accordion__check-row {
	display: flex;
	align-items: flex-start;
	gap: 14px;
	background: var(--rda-check-bg);
	border: 1px solid var(--rda-check-border);
	border-radius: 10px;
	padding: 16px 18px;
}
.block-ll-readiness-accordion__check {
	flex: 0 0 20px;
	display: inline-flex;
	margin-top: 1px;
}
.block-ll-readiness-accordion__check svg { display: block; }
.block-ll-readiness-accordion__check-text {
	font-size: 15px;
	line-height: 1.55;
	color: var(--rda-check-ink);
}

/* ── CTA download banner ────────────────────────────────────────────────── */
.block-ll-readiness-accordion__cta {
	margin-top: 36px;
	background: var(--rda-cta-bg);
	border: 1px solid var(--rda-cta-border);
	border-radius: 18px;
	padding: 26px 32px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
}
.block-ll-readiness-accordion__cta-left {
	display: flex;
	align-items: center;
	gap: 18px;
	min-width: 0;
}
.block-ll-readiness-accordion__cta-icon {
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 10px;
	background: var(--rda-cta-icon-bg);
	color: var(--rda-accent);
}
.block-ll-readiness-accordion__cta-text {
	margin: 0;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.5;
	color: var(--rda-cta-ink);
}
.block-ll-readiness-accordion__cta-btn {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--rda-btn-bg);
	color: var(--rda-btn-ink);
	font-family: var(--ll-font, 'Montserrat', 'Montserrat-fallback', Arial, sans-serif);
	font-size: 15px;
	font-weight: 600;
	line-height: 1;
	padding: 15px 28px;
	border-radius: 10px;
	text-decoration: none;
	transition: background .18s ease;
	white-space: nowrap;
}
.block-ll-readiness-accordion__cta-btn:hover,
.block-ll-readiness-accordion__cta-btn:focus-visible {
	background: var(--rda-btn-hover);
	color: var(--rda-btn-ink);
	text-decoration: none;
	outline: none;
}

/* ── Responsive ─────────────────────────────────────────────────────────── */
@media (max-width: 900px) {
	.block-ll-readiness-accordion { padding: 60px 0; }
	.block-ll-readiness-accordion__title { font-size: 30px; }
}
@media (max-width: 767px) {
	.block-ll-readiness-accordion { padding: 48px 0; }
	.block-ll-readiness-accordion__title { font-size: 25px; }
	.block-ll-readiness-accordion__head { margin-bottom: 32px; }
	.block-ll-readiness-accordion__row { padding: 18px 18px; gap: 12px; }
	.block-ll-readiness-accordion__cat-title { font-size: 15px; }
	.block-ll-readiness-accordion__checks { padding: 2px 16px 18px; }
	.block-ll-readiness-accordion__check-row { padding: 14px 14px; gap: 12px; }
	.block-ll-readiness-accordion__check-text { font-size: 14px; }
	.block-ll-readiness-accordion__cta {
		flex-direction: column;
		align-items: flex-start;
		padding: 22px 20px;
	}
	.block-ll-readiness-accordion__cta-btn {
		width: 100%;
		justify-content: center;
	}
}
