.kicap-promotions {
	display: grid;
	gap: var(--kicap-space-4);
	margin-block: var(--kicap-space-5);
	padding: var(--kicap-space-5);
	border: 1px solid var(--kicap-border);
	border-radius: var(--kicap-radius-lg);
	background: var(--kicap-surface-elevated);
	color: var(--kicap-text);
}

.kicap-promotions__header {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: var(--kicap-space-4);
}

.kicap-promotions__header h2 {
	margin: var(--kicap-space-1) 0 0;
	color: var(--kicap-text);
	font-size: var(--kicap-font-size-lg);
	line-height: var(--kicap-line-height-tight);
}

.kicap-promotions__header > span,
.kicap-promotions__eyebrow {
	color: var(--kicap-color-accent-strong);
	font-size: var(--kicap-font-size-xs);
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.kicap-promotions__list {
	display: grid;
	gap: var(--kicap-space-3);
	margin: 0;
	padding: 0;
	list-style: none;
}

.kicap-promotions__item {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	align-items: center;
	gap: var(--kicap-space-4);
	padding: var(--kicap-space-4);
	border: 1px solid var(--kicap-border);
	border-radius: var(--kicap-radius-md);
	background: var(--kicap-surface);
}

.kicap-promotions__copy {
	display: grid;
	min-width: 0;
	gap: var(--kicap-space-1);
}

.kicap-promotions__copy strong,
.kicap-promotions__copy span,
.kicap-promotions__copy small {
	display: block;
}

.kicap-promotions__copy strong {
	color: var(--kicap-text);
	font-size: var(--kicap-font-size-base);
}

.kicap-promotions__copy span,
.kicap-promotions__copy small,
.kicap-promotions__note {
	color: var(--kicap-text-muted);
	font-size: var(--kicap-font-size-xs);
	line-height: var(--kicap-line-height-base);
}

.kicap-promotions__copy small {
	display: inline-flex;
	align-items: center;
	gap: var(--kicap-space-1);
}

.kicap-promotions__copy .kicap-icon {
	flex: 0 0 auto;
	width: 14px;
	height: 14px;
}

.kicap-promotions__code {
	display: grid;
	justify-items: end;
	gap: var(--kicap-space-2);
}

.kicap-promotions__code code {
	padding: var(--kicap-space-1) var(--kicap-space-2);
	border-radius: var(--kicap-radius-sm);
	background: var(--kicap-color-accent-subtle);
	color: var(--kicap-color-accent-strong);
	font-family: var(--kicap-font-mono, monospace);
	font-size: var(--kicap-font-size-sm);
	font-weight: 800;
	letter-spacing: 0.04em;
}

.kicap-promotions__code button {
	min-height: 44px;
	padding-inline: var(--kicap-space-4);
	border: 1px solid var(--kicap-button-secondary-border);
	border-radius: var(--kicap-radius-pill);
	background: var(--kicap-button-secondary-bg);
	color: var(--kicap-button-secondary-text);
	font: inherit;
	font-size: var(--kicap-font-size-sm);
	font-weight: 700;
	cursor: pointer;
}

.kicap-promotions__code button:hover {
	border-color: var(--kicap-color-accent);
}

.kicap-promotions__code button:focus-visible {
	outline: 2px solid var(--kicap-focus-ring);
	outline-offset: 2px;
}

.kicap-promotions__code button.is-selected {
	border-color: var(--kicap-color-accent);
	background: var(--kicap-color-accent-subtle);
	color: var(--kicap-color-accent-strong);
}

.kicap-promotions__note {
	margin: 0;
}

.kicap-cart__summary .kicap-promotions {
	margin-block: 0;
	padding: var(--kicap-space-4);
}

@media (max-width: 575px) {
	.kicap-promotions__item {
		grid-template-columns: 1fr;
	}

	.kicap-promotions__code {
		grid-template-columns: minmax(0, 1fr) auto;
		align-items: center;
		justify-items: start;
	}
}
