/* ==========================================================================
   CultiWise – pricing page layout
   Page-specific rules only. Everything reusable lives in cw-components.css.
   ========================================================================== */

.cw-page--pricing .cw-section--hero {
	padding-block: var(--cw-space-14) var(--cw-space-16);
	background: var(--cw-bg-primary);
	text-align: center;
}

.cw-page--pricing .cw-hero__accent {
	color: var(--cw-fg-muted);
}

.cw-page--pricing .cw-section--controls {
	padding-block: var(--cw-space-12) 0;
}

.cw-controls {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--cw-space-6);
}

.cw-control {
	display: flex;
	align-items: center;
	gap: var(--cw-space-5);
}

.cw-control--currency {
	gap: var(--cw-space-3);
}

.cw-control__label {
	font-size: 14px;
	font-weight: var(--cw-weight-semibold);
	white-space: nowrap;
}

.cw-page--pricing .cw-section--plans {
	padding-block: var(--cw-space-6) 0;
}

.cw-plan-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--cw-space-6);
	align-items: stretch;
}

.cw-plans__footer {
	display: flex;
	justify-content: center;
	margin-top: var(--cw-space-5);
}

.cw-page--pricing p.cw-source-note {
	margin-block: var(--cw-space-5) 0;
	text-align: center;
	font-size: 13px;
	line-height: 20px;
	color: var(--cw-fg-secondary);
	text-wrap: pretty;
}

.cw-page--pricing .cw-disclaimer {
	max-width: 620px;
	margin-block: var(--cw-space-5) 0;
	margin-inline: auto;
	text-align: center;
	font-size: 11px;
	line-height: 17px;
	color: var(--cw-fg-tertiary);
	text-wrap: pretty;
}

.cw-page--pricing .cw-section--cta {
	padding-block: var(--cw-space-12) var(--cw-space-16);
}

/* --- tablet -------------------------------------------------------------- */

@media (max-width: 1024px) {
	.cw-plan-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.cw-plan-card__name {
		font-size: 26px;
		line-height: 34px;
	}

	.cw-plan-card__body {
		padding: var(--cw-space-6);
	}

	.cw-plan-card__price {
		font-size: 26px;
		line-height: 34px;
	}

	.cw-controls {
		align-items: flex-start;
		flex-direction: column;
	}
}

/* --- mobile -------------------------------------------------------------- */

@media (max-width: 680px) {
	.cw-plan-grid {
		grid-template-columns: minmax(0, 1fr);
		gap: var(--cw-space-4);
	}

	.cw-control,
	.cw-control--currency {
		flex-direction: column;
		align-items: stretch;
		gap: var(--cw-space-2);
		width: 100%;
	}

	.cw-toggle-group {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		border-radius: var(--cw-radius-lg);
	}

	.cw-toggle {
		padding: 10px 12px;
		text-align: center;
	}

	.cw-select,
	.cw-select__input {
		width: 100%;
	}

	.cw-plan-card__head {
		padding: var(--cw-space-4) var(--cw-space-5);
	}

	.cw-plan-card__name {
		font-size: 24px;
		line-height: 32px;
	}

	.cw-plan-card__body {
		padding: var(--cw-space-5);
	}

	.cw-plan-card__action {
		padding-top: var(--cw-space-5);
	}

	.cw-band {
		flex-direction: column;
		align-items: stretch;
		gap: var(--cw-space-5);
		padding: var(--cw-space-6);
		text-align: center;
	}

	.cw-band .cw-btn {
		justify-content: center;
	}
}
