/* MyNew Impact Connector — front-end units. Theme-adaptive: override any --mnt-imp-* property. */
.mnt-imp {
	--mnt-imp-accent: #0e6e68;
	--mnt-imp-accent-ink: #fff;
	--mnt-imp-border: rgba(127, 127, 127, 0.28);
	--mnt-imp-muted: rgba(127, 127, 127, 0.95);
	--mnt-imp-surface: transparent;
	--mnt-imp-radius: 8px;
	--mnt-imp-deal: #1e7a3c;
	--mnt-imp-cols: 3;
	margin: 1.75em 0;
	font-size: 0.95em;
	line-height: 1.45;
	color: inherit;
}
.mnt-imp *, .mnt-imp *::before, .mnt-imp *::after { box-sizing: border-box; }
.mnt-imp p { margin: 0; }
.mnt-imp__title { font-weight: 700; margin-bottom: 0.6em !important; }

/* Item: vertical (image on top) by default; horizontal = image beside text. */
.mnt-imp__item {
	display: grid;
	grid-template-columns: 1fr;
	gap: 1em 1.25em;
	padding: 1em;
	border: 1px solid var(--mnt-imp-border);
	border-radius: var(--mnt-imp-radius);
	background: var(--mnt-imp-surface);
}
.mnt-imp--card[data-layout="vertical"] .mnt-imp__media { max-width: 320px; }
.mnt-imp[data-layout="horizontal"] .mnt-imp__item { grid-template-columns: minmax(96px, 200px) 1fr; }
@media (max-width: 520px) {
	.mnt-imp[data-layout="horizontal"] .mnt-imp__item { grid-template-columns: 1fr; }
}

.mnt-imp__media { position: relative; display: block; align-self: start; text-decoration: none; }
.mnt-imp__img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: contain;
	background: #fff;
	border-radius: calc(var(--mnt-imp-radius) - 2px);
}
.mnt-imp__img--empty { background: rgba(127, 127, 127, 0.12); }
.mnt-imp__badge {
	position: absolute;
	top: 0.5em;
	left: 0.5em;
	padding: 0.15em 0.55em;
	border-radius: 999px;
	font-size: 0.78em;
	font-weight: 600;
	background: #fff;
	color: #333;
	border: 1px solid var(--mnt-imp-border);
}
.mnt-imp__badge--deal { background: var(--mnt-imp-deal); color: #fff; border-color: transparent; }
.mnt-imp__table .mnt-imp__badge { position: static; margin-left: 0.4em; }

.mnt-imp__body { display: flex; flex-direction: column; gap: 0.45em; min-width: 0; }
.mnt-imp__brand { font-size: 0.8em; text-transform: uppercase; letter-spacing: 0.06em; color: var(--mnt-imp-muted); }
.mnt-imp .mnt-imp__name { margin: 0; font-size: 1.08em; line-height: 1.3; font-weight: 700; }
.mnt-imp__desc { color: inherit; opacity: 0.88; }
.mnt-imp__bullets { margin: 0; padding-left: 1.1em; }
.mnt-imp__bullets li { margin: 0.1em 0; }
.mnt-imp__price { display: flex; align-items: baseline; gap: 0.5em; font-variant-numeric: tabular-nums; }
.mnt-imp__price-now { font-size: 1.2em; font-weight: 700; }
.mnt-imp__price-was { color: var(--mnt-imp-muted); }
.mnt-imp__note { font-size: 0.78em; color: var(--mnt-imp-muted); }

.mnt-imp .mnt-imp__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	align-self: flex-start;
	margin-top: 0.25em;
	padding: 0.6em 1.1em;
	border-radius: 6px;
	background: var(--mnt-imp-accent);
	color: var(--mnt-imp-accent-ink);
	font-weight: 600;
	text-decoration: none;
	line-height: 1.2;
}
.mnt-imp .mnt-imp__cta:hover { filter: brightness(1.08); }
.mnt-imp .mnt-imp__cta:focus-visible { outline: 2px solid var(--mnt-imp-accent); outline-offset: 2px; }

/* Grid */
.mnt-imp__grid { display: grid; gap: 1em; grid-template-columns: repeat(var(--mnt-imp-cols), minmax(0, 1fr)); }
@media (max-width: 782px) { .mnt-imp__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .mnt-imp__grid { grid-template-columns: 1fr; } }
.mnt-imp__grid .mnt-imp__cta { margin-top: auto; }

/* Compare */
.mnt-imp__scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.mnt-imp__table { width: 100%; min-width: 480px; border-collapse: collapse; font-variant-numeric: tabular-nums; }
.mnt-imp__table th, .mnt-imp__table td { padding: 0.65em; border-bottom: 1px solid var(--mnt-imp-border); vertical-align: top; text-align: left; }
.mnt-imp__table thead th { font-weight: 400; }
.mnt-imp__table thead .mnt-imp__img { max-width: 140px; margin-bottom: 0.5em; }
.mnt-imp__table tbody th { font-weight: 600; white-space: nowrap; }
.mnt-imp__table .mnt-imp__name { display: block; font-weight: 700; }

/* Deals */
.mnt-imp__deals { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.75em; }
.mnt-imp__deal {
	display: flex;
	flex-direction: column;
	gap: 0.35em;
	padding: 1em;
	border: 1px dashed var(--mnt-imp-deal);
	border-radius: var(--mnt-imp-radius);
}
.mnt-imp__code code { padding: 0.15em 0.45em; border: 1px solid var(--mnt-imp-border); border-radius: 4px; font-weight: 700; letter-spacing: 0.04em; }
.mnt-imp__copy { margin-left: 0.4em; font-size: 0.85em; cursor: pointer; }

.mnt-imp .screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

/* Text link + disclosure */
.mnt-imp--text_link { margin: 0; font-size: inherit; }
.mnt-imp__textlink { font-weight: 600; }
.mnt-imp-disclosure {
	font-size: 0.85em;
	padding: 0.6em 0.9em;
	border-left: 3px solid var(--mnt-imp-accent, #0e6e68);
	background: rgba(127, 127, 127, 0.08);
	margin: 0 0 1.5em;
}

@media (prefers-reduced-motion: no-preference) {
	.mnt-imp .mnt-imp__cta { transition: filter 0.15s ease; }
}
