/* ==========================================================================
   IMF Clubs Grid — [imf_clubs] shortcode output
   White cards by default. Conforms to section color classes — dark body
   in .is-dark sections. No font sizes baked in; driven by Simply Branded
   / client config tokens and .ss-label from Simply Starter.
   ========================================================================== */

.imf-clubs-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 24px;
}

.imf-club-card {
	flex: 0 0 calc(25% - 18px);
	min-width: 0;
}

@media ( max-width: 960px ) {
	.imf-club-card { flex: 0 0 calc(50% - 12px); }
}

@media ( max-width: 600px ) {
	.imf-club-card { flex: 0 0 100%; }
}


/* Card shell — base visual styles from .ss-card (theme)
--------------------------------------------- */

.imf-club-card {
	display: flex;
	flex-direction: column;
	text-align: center;
}


/* Logo area
--------------------------------------------- */

.imf-club-card__logo {
	padding: 24px 24px 0;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 100px;
}

.imf-club-card__logo img {
	max-width: 120px;
	max-height: 80px;
	width: auto;
	height: auto;
	object-fit: contain;
	display: block;
}

.imf-club-card__logo-placeholder {
	width: 80px;
	height: 80px;
	border-radius: 50%;
	background: #f0f0f0;
}


/* Card body — white default
--------------------------------------------- */

.imf-club-card__body {
	padding: 16px 20px 24px;
	display: flex;
	flex-direction: column;
	gap: 4px;
	flex: 1;
}

.imf-club-card__name {
	font-weight: 700;
	color: var( --client-heading, #2d2d2d );
	margin: 0;
	line-height: 1.2;
}

.imf-club-card__contact-label {
	color: rgba( 0, 0, 0, 0.45 );
	margin: 6px 0 0;
}

.imf-club-card__contact {
	color: inherit;
	margin: 0;
}

.imf-club-card__email {
	color: var( --client-accent, #2563eb );
	text-decoration: none;
	word-break: break-all;
}

.imf-club-card__email:hover {
	text-decoration: underline;
}

.imf-club-card__website {
	display: inline-block;
	margin-top: auto;
	padding-top: 12px;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}


/* .is-dark section — card body conforms
--------------------------------------------- */

.is-dark .imf-club-card__body {
	background: var( --client-section-dark-bg, #1a1a1a );
}

.is-dark .imf-club-card__name {
	color: var( --client-section-dark-heading, #ffffff );
}

.is-dark .imf-club-card__contact-label {
	color: rgba( 255, 255, 255, 0.5 );
}

.is-dark .imf-club-card__contact {
	color: var( --client-section-dark-text, rgba( 255, 255, 255, 0.75 ) );
}

.is-dark .imf-club-card__email {
	color: var( --client-section-dark-text, rgba( 255, 255, 255, 0.65 ) );
}

.is-dark .imf-club-card__email:hover {
	color: #fff;
}
