/* Maluma Immobilienportal – Lead-Magnete (Karte mit Cover-Mockup, Dialog, Danke-Seite) */
.mimmo-magnet {
	--m-primary: var(--e-global-color-primary, #13213b);
	--m-accent: var(--e-global-color-accent, #3d5c88);
	--m-line: #d6dde7;
	--m-muted: #586173;
	display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: clamp(28px, 5vw, 64px); align-items: center;
	padding: clamp(24px, 4vw, 48px); background: #fff; border: 1px solid var(--m-line); border-radius: 18px;
}
.mimmo-magnet__mockup { position: relative; justify-self: center; width: min(100%, 300px); aspect-ratio: 1000 / 1414; margin: 12px 18px 18px 6px; }
.mimmo-magnet__mockup img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; border-radius: 4px; transform: rotate(-3deg); box-shadow: 0 30px 50px -22px rgba(19, 33, 59, 0.55), 0 4px 10px rgba(19, 33, 59, 0.12); }
.mimmo-magnet__blatt { position: absolute; inset: 0; border-radius: 4px; background: #f3f1ec; box-shadow: 0 6px 18px -8px rgba(19, 33, 59, 0.3); }
.mimmo-magnet__blatt:nth-child(1) { transform: translate(14px, 10px) rotate(3deg); }
.mimmo-magnet__blatt:nth-child(2) { transform: translate(7px, 5px) rotate(0.5deg); background: #faf9f6; }
.mimmo-magnet__mockup.is-klein { width: 180px; max-width: 40vw; }
.mimmo-magnet__text { display: grid; gap: 14px; justify-items: start; }
.mimmo-magnet__eyebrow { margin: 0 !important; font-size: 0.8125rem; font-weight: 700; letter-spacing: 0.12em; text-transform: uppercase; color: var(--m-accent, #3d5c88); }
.mimmo-magnet__titel { margin: 0 !important; font-family: var(--vp-serif, Georgia, serif) !important; letter-spacing: 0; font-size: clamp(1.7rem, 1.2rem + 1.6vw, 2.4rem) !important; line-height: 1.1; font-weight: 600; color: var(--m-primary, #13213b); }
.mimmo-magnet__beschreibung { margin: 0 !important; color: var(--m-muted, #586173); }
.mimmo-magnet__nutzen { list-style: none; margin: 4px 0 6px; padding: 0; display: grid; gap: 10px; }
.mimmo-magnet__nutzen li { position: relative; padding-left: 30px; color: var(--vp-text, #2b3343); }
.mimmo-magnet__nutzen li::before { content: ""; position: absolute; left: 0; top: 0.2em; width: 20px; height: 20px; border-radius: 99px; background: #e9eef5 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%2313213b' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 13px no-repeat; }
.mimmo-magnet__btn.mimmo-magnet__btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 0 28px; border: 0; border-radius: 999px;
	background: var(--m-primary, #13213b); color: #fff; font: inherit; font-weight: 650; font-size: 1rem; cursor: pointer; text-decoration: none;
	transition: background-color 0.2s, transform 0.15s;
}
.mimmo-magnet__btn.mimmo-magnet__btn:hover, .mimmo-magnet__btn.mimmo-magnet__btn:focus-visible { background: var(--m-accent, #3d5c88); color: #fff; }
.mimmo-magnet__btn.mimmo-magnet__btn:active { transform: scale(0.98); }
.mimmo-magnet__btn--voll.mimmo-magnet__btn { width: 100%; }
.mimmo-magnet__hinweis { margin: 0 !important; font-size: 0.8125rem; color: var(--m-muted, #586173); }
@media (max-width: 767px) {
	.mimmo-magnet { grid-template-columns: 1fr; text-align: left; }
	.mimmo-magnet__mockup { width: min(62%, 220px); }
	.mimmo-magnet__btn.mimmo-magnet__btn { width: 100%; }
}

/* Dialog */
.mimmo-magnet-dialog { width: min(560px, calc(100vw - 24px)); max-height: calc(100dvh - 24px); padding: 0; border: 0; border-radius: 18px; box-shadow: 0 40px 80px -30px rgba(19, 33, 59, 0.6); color: var(--vp-text, #2b3343); }
.mimmo-magnet-dialog::backdrop { background: rgba(12, 22, 42, 0.62); }
.mimmo-magnet-dialog[open] { animation: mimmo-magnet-auf 0.28s cubic-bezier(0.22, 1, 0.36, 1); }
@keyframes mimmo-magnet-auf { from { opacity: 0; transform: translateY(12px) scale(0.98); } }
@media (prefers-reduced-motion: reduce) { .mimmo-magnet-dialog[open] { animation: none; } }
.mimmo-magnet-dialog__inner { position: relative; display: grid; gap: 14px; padding: clamp(22px, 4vw, 36px); }
.mimmo-magnet-dialog__zu.mimmo-magnet-dialog__zu { position: absolute; top: 12px; right: 12px; width: 44px; height: 44px; border: 1px solid #d6dde7; border-radius: 99px; background: #fff; color: #13213b; font-size: 26px; line-height: 1; cursor: pointer; }
.mimmo-magnet-dialog__titel { margin: 0 44px 0 0 !important; font-family: var(--vp-serif, Georgia, serif); font-size: clamp(1.5rem, 1.2rem + 1vw, 2rem); line-height: 1.15; color: #13213b; }
.mimmo-magnet-dialog__lead { margin: 0 !important; color: #586173; }
.mimmo-magnet-dialog__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 14px; }
.mimmo-magnet-dialog__grid label { display: grid; gap: 6px; font-size: 0.875rem; font-weight: 650; color: #13213b; }
.mimmo-magnet-dialog__grid input { min-height: 48px; padding: 0 14px; border: 1.5px solid #d6dde7; border-radius: 12px; font: inherit; font-weight: 400; color: #2b3343; background: #fff; }
.mimmo-magnet-dialog__grid input:focus { outline: 2px solid #3d5c88; outline-offset: 1px; border-color: #3d5c88; }
.mimmo-magnet-dialog__check { display: grid; grid-template-columns: 22px 1fr; gap: 10px; align-items: start; font-size: 0.875rem; line-height: 1.5; color: #2b3343; }
.mimmo-magnet-dialog__check input { width: 20px; height: 20px; margin: 1px 0 0; accent-color: #13213b; }
.mimmo-magnet-dialog__check em { font-style: normal; color: #586173; }
.mimmo-magnet-dialog .is-error input { border-color: #a3302b; }
.mimmo-magnet-dialog .is-error > span:not(.mimmo-field-error), .mimmo-magnet-dialog__check.is-error span { color: #a3302b; }
.mimmo-magnet-dialog .mimmo-field-error { font-size: 0.8125rem; font-weight: 600; color: #a3302b; }
.mimmo-magnet-dialog__msg { margin: 0 !important; min-height: 1.2em; font-size: 0.9375rem; font-weight: 600; color: #2f6b4f; }
.mimmo-magnet-dialog__msg.is-error { color: #a3302b; }
.mimmo-magnet-dialog .mimmo-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
@media (max-width: 480px) { .mimmo-magnet-dialog__grid { grid-template-columns: 1fr; } }
html.mimmo-lock { overflow: hidden; }

/* Danke-Seite */
.mimmo-magnet-danke { display: grid; gap: clamp(40px, 6vw, 72px); }
.mimmo-magnet-danke__kopf { display: grid; grid-template-columns: auto 1fr; gap: clamp(24px, 4vw, 56px); align-items: center; }
.mimmo-magnet-danke__titel { margin: 8px 0 12px !important; font-family: var(--vp-serif, Georgia, serif); font-size: clamp(2.1rem, 1.4rem + 2.6vw, 3.6rem); line-height: 1.05; color: #13213b; }
.mimmo-magnet-danke__text { margin: 0 !important; max-width: 60ch; font-size: 1.125rem; color: #2b3343; }
.mimmo-magnet-danke__weitere h2 { margin: 0 0 20px !important; font-family: var(--vp-serif, Georgia, serif); font-size: clamp(1.6rem, 1.2rem + 1.2vw, 2.2rem); color: #13213b; }
.mimmo-magnet-liste { display: grid; gap: 24px; }
@media (max-width: 767px) { .mimmo-magnet-danke__kopf { grid-template-columns: 1fr; } }
