/*
 * Al Basar — minimal front-end rules theme.json cannot express.
 * Keep this tiny; prefer theme.json / block styles. Loaded globally (small).
 */

/* Header: brand + actions keep their size; the nav flexes and centres so the
   bar stays a single row. Nav item + button text never wrap. */
.ab-header__row { gap: 24px; }
.ab-header__brand,
.ab-header__actions { flex: 0 0 auto; }
.ab-header .wp-block-navigation { flex: 1 1 auto; justify-content: center; }
.ab-header .wp-block-navigation-item__content { white-space: nowrap; }
.ab-header__donate .wp-block-button__link { white-space: nowrap; }
.ab-header .wp-block-site-title a { text-decoration: none; }

/* Footer: links are plain muted text (no underline), orange on hover. */
.ab-footer a { color: var(--wp--preset--color--ab-muted); text-decoration: none; }
.ab-footer a:hover,
.ab-footer a:focus { color: var(--wp--preset--color--ab-orange); }
.ab-footer .wp-block-site-title a { color: var(--wp--preset--color--ab-navy); }
.ab-footer__list li { margin: 0; }

/* Program cards: navy titles (not link-blue), tidy wrapping. */
.ab-card .wp-block-post-title a { color: var(--wp--preset--color--ab-navy); text-decoration: none; }
.ab-card .wp-block-post-title a:hover { color: var(--wp--preset--color--ab-blue); }
.ab-card .wp-block-post-title { overflow-wrap: break-word; }
/* Left-align the "Learn more" link: the constrained group centres fit-content
   children with margin:auto !important — the design left-aligns it, so match. */
.ab-card .wp-block-read-more { margin-left: 0 !important; margin-right: auto !important; }
.ab-card { overflow: hidden; }

/* Equal-height tier cards: fill the stretched column and pin the CTA to the
   bottom so the Donate buttons line up regardless of description length. */
.ab-tier { overflow: hidden; height: 100%; display: flex; flex-direction: column; }
.ab-tier > .wp-block-cover { flex: 0 0 auto; }
.ab-tier > .wp-block-group { flex: 1 1 auto; display: flex; flex-direction: column; }
.ab-tier .wp-block-buttons { margin-top: auto; }

/* FAQ disclosure headings: styled in CSS rather than an inline <summary> style,
   which core/details does not serialize (it would fail block validation). */
.wp-block-details > summary {
	font-weight: 600;
	color: var(--wp--preset--color--ab-navy);
	cursor: pointer;
}

/* Stat numbers never split the figure itself across lines (e.g. "38.5M+"). */
.ab-stat__number { white-space: nowrap; }
.ab-stat__unit { white-space: normal; }

/* Stats-strip cell dividers: a hairline between cells (not on the last), drawn
   in CSS rather than an inline border so the column blocks stay valid. Only
   when the cells sit side by side (≥600px); hidden once they stack on mobile. */
@media (min-width: 600px) {
	.ab-stats-strip .wp-block-column:not(:last-child) {
		border-right: 1px solid var(--wp--preset--color--ab-line);
	}
}
