
/* MG Coupon Widget — horizontal coupon with diagonal corner ribbon. */
.mg-coupon {
	position: relative;
	overflow: hidden;
	background: #fff;
	border: 2px dashed #1c3865;
	border-radius: 12px;
	padding: 26px 28px 22px;
	max-width: 620px;
	margin: 0 auto;
	font-family: "Inter", system-ui, Arial, sans-serif;
	color: #1d1d3d;
}

/* ── Diagonal corner ribbon ── */
.mg-coupon__ribbon-wrap {
	position: absolute;
	top: 0;
	left: 0;
	width: 130px;
	height: 130px;
	pointer-events: none;
	overflow: hidden;
	z-index: 2;
}

.mg-coupon__ribbon {
	position: absolute;
	top: 22px;
	left: -46px;
	width: 180px;
	transform: rotate(-45deg);
	background: #c8252c;
	color: #fff;
	font-weight: 700;
	font-size: 11px;
	letter-spacing: .08em;
	text-transform: uppercase;
	text-align: center;
	padding: 7px 0;
	box-shadow: 0 2px 4px rgba(0, 0, 0, .18);
}

/* ── Two-column body: deal info | bullets+fineprint ── */
.mg-coupon__body {
	display: flex;
	gap: 28px;
	align-items: stretch;
	flex-wrap: wrap;
	padding-left: 60px;
}

.mg-coupon__head {
	flex: 1 1 200px;
	min-width: 180px;
	align-self: center;
}

.mg-coupon__deal {
	font-weight: 800;
	font-size: clamp(2rem, 4vw, 2.6rem);
	line-height: 1;
	color: #1c3865;
	letter-spacing: -.01em;
}

.mg-coupon__service {
	margin-top: 6px;
	font-weight: 700;
	font-size: 1rem;
	letter-spacing: .04em;
	color: #1c3865;
	text-transform: uppercase;
}

.mg-coupon__tagline {
	margin-top: 14px;
	font-size: .9rem;
	color: #4b5a76;
}

/* ── Right column: bullets stacked above fine print ── */
.mg-coupon__right {
	flex: 1 1 220px;
	min-width: 200px;
	display: flex;
	flex-direction: column;
	gap: 12px;
	align-self: center;
}

.mg-coupon__bullets {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.mg-coupon__bullet {
	display: flex;
	align-items: center;
	gap: 10px;
	font-size: .95rem;
	line-height: 1.3;
	color: #1d1d3d;
}

.mg-coupon__check {
	flex-shrink: 0;
	color: #3a73c6;
}

/* ── Fine print (now lives inside the right column) ── */
.mg-coupon__fineprint {
	margin: 0;
	padding-top: 8px;
	font-size: .72rem;
	line-height: 1.45;
	color: #7a8295;
	text-align: left;
}

/* ── Small screens: stack columns ── */
@media (max-width: 560px) {
	.mg-coupon {
		padding: 24px 20px 18px;
	}
	
	.mg-coupon__body {
		padding-left: 0;
		padding-top: 50px;
		/* clear ribbon */
		gap: 18px;
	}
	
	.mg-coupon__head, .mg-coupon__right {
		flex: 1 1 100%;
	}
}
