.gifty-config-steps {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
	margin: 0 0 22px;
	padding: 12px;
	border: 1px solid #e4dfd8;
	background: #fbfaf8;
}

.gifty-config-step {
	display: grid;
	grid-template-columns: auto 1fr;
	column-gap: 8px;
	align-items: center;
	min-width: 0;
}

.gifty-config-step span {
	grid-row: span 2;
	font-size: 12px;
	letter-spacing: .08em;
	color: #b29564;
}

.gifty-config-step strong,
.gifty-config-step small {
	line-height: 1.25;
}

.gifty-config-step strong {
	font-size: 13px;
	font-weight: 600;
	color: #302c28;
}

.gifty-config-step small {
	font-size: 11px;
	color: #8e8881;
}

.gifty-trust-strip {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
	margin: 22px 0 12px;
	padding: 18px 0;
	border-top: 1px solid #e4dfd8;
	border-bottom: 1px solid #e4dfd8;
}

.gifty-trust-item {
	display: flex;
	gap: 10px;
	align-items: flex-start;
}

.gifty-trust-item > span {
	flex: 0 0 26px;
	width: 26px;
	height: 26px;
	display: grid;
	place-items: center;
	border: 1px solid #b9aa92;
	border-radius: 50%;
	color: #a58b5d;
	font-size: 13px;
}

.gifty-trust-item strong,
.gifty-trust-item small {
	display: block;
	line-height: 1.35;
}

.gifty-trust-item strong {
	font-size: 12px;
	font-weight: 600;
	color: #302c28;
}

.gifty-trust-item small {
	margin-top: 3px;
	font-size: 11px;
	color: #8e8881;
}

.gifty-cart-note {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	max-width: 960px;
	margin: 0 auto 24px;
	padding: 14px 16px;
	border: 1px solid #e4dfd8;
	background: #fbfaf8;
	color: #605a54;
}

.gifty-cart-note > span {
	color: #a58b5d;
	font-size: 16px;
	line-height: 1.4;
}

.gifty-cart-note p {
	margin: 0;
	font-size: 13px;
	line-height: 1.5;
}

.gifty-cart-note strong {
	color: #302c28;
}

.gifty-mobile-cta {
	display: none;
}

@media (max-width: 767px) {
	.gifty-config-steps {
		gap: 6px;
		margin-bottom: 18px;
		padding: 10px 8px;
	}

	.gifty-config-step {
		grid-template-columns: 1fr;
		gap: 2px;
		text-align: center;
	}

	.gifty-config-step span {
		grid-row: auto;
		font-size: 10px;
	}

	.gifty-config-step strong {
		font-size: 11px;
	}

	.gifty-config-step small {
		font-size: 10px;
	}

	.gifty-trust-strip {
		grid-template-columns: 1fr;
		gap: 12px;
		padding: 16px 0;
	}

	.gifty-trust-item strong {
		font-size: 13px;
	}

	.gifty-trust-item small {
		font-size: 12px;
	}

	.gifty-cart-note {
		margin: 0 12px 20px;
		font-size: 12px;
	}

	.gifty-mobile-cta {
		position: fixed;
		z-index: 10000;
		left: 0;
		right: 0;
		bottom: 0;
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
		border-top: 1px solid #d8d0c5;
		background: rgba(255, 255, 255, .97);
		box-shadow: 0 -6px 22px rgba(48, 44, 40, .10);
	}

	.gifty-mobile-cta[hidden] {
		display: none;
	}

	.gifty-mobile-cta > div {
		min-width: 0;
	}

	.gifty-mobile-cta span,
	.gifty-mobile-cta strong {
		display: block;
		line-height: 1.2;
	}

	.gifty-mobile-cta span {
		font-size: 11px;
		color: #817a72;
	}

	.gifty-mobile-cta strong {
		margin-top: 3px;
		font-size: 14px;
		font-weight: 600;
		color: #302c28;
	}

	.gifty-mobile-cta-button {
		flex: 0 0 auto;
		padding: 11px 18px;
		border: 0;
		border-radius: 3px;
		background: #c6beb4;
		color: #fff;
		font-size: 13px;
		font-weight: 600;
	}
}

@media (prefers-reduced-motion: no-preference) {
	.gifty-mobile-cta-button {
		transition: background-color .2s ease, transform .2s ease;
	}

	.gifty-mobile-cta-button:hover {
		background: #afa59a;
		transform: translateY(-1px);
	}
}
