/* ==========================================================================
   myimmowert — WP-ImmoMakler CD skin
   Loaded automatically by the plugin from <theme>/immomakler/css/immomakler.css
   (depends on the bootstrap3 parent CSS, so it overrides). Restyles the plugin
   markup to the myimmowert CD. Reuses the theme's --mm-* tokens (theme.css is
   enqueued on these pages too).
   ========================================================================== */

/* Recolour the plugin to the CD accent + fonts. Higher specificity than the
   plugin's inline `.immomakler{--immomakler-primary-color:#af1615}`. */
body .immomakler,
body .immomakler-archive,
body .immomakler-single {
	--immomakler-primary-color: #880621;
	--immomakler-primary-color-inverted: #ffffff;
	font-family: var(--mm-sans, 'Mulish', system-ui, sans-serif);
	color: var(--mm-ink, #1E1B1A);
}

.immomakler-archive,
.immomakler-single {
	max-width: 1240px !important;
	margin: 0 auto;
	padding-left: 32px;
	padding-right: 32px;
	box-sizing: border-box;
}

/* Abstand zwischen Header/Nav und Archiv-/Exposé-Headline (nicht bündig). */
.immomakler-archive { padding-top: 48px; }
.immomakler-single { padding-top: 32px; }

/* Obere Ergebnis-/Sortier-Bar ohne Linien (untere Bar per Template entfernt). */
.immomakler-archive .paginator {
	border-top: none !important;
	border-bottom: none !important;
}

/* Anzahl (links) + „Neueste zuerst" (rechts) bündig zum Grid — ohne die
   Bootstrap-Spalten-Gutter (col-xs-6 Padding). */
.immomakler-archive .paginator.row { margin-left: 0 !important; margin-right: 0 !important; }
.immomakler-archive .paginator .num-posts,
.immomakler-archive .paginator .pages-nav { padding-left: 0 !important; padding-right: 0 !important; }

/* Headings → Spectral */
.immomakler h1,
.immomakler h2,
.immomakler h3,
.immomakler .property-title,
.immomakler .panel-title,
.immomakler-archive .immomakler-title,
.immomakler-single .property-title {
	font-family: var(--mm-serif, 'Spectral', Georgia, serif);
	font-weight: 500;
	letter-spacing: -0.3px;
	color: var(--mm-ink, #1E1B1A);
}
.immomakler-archive .immomakler-title { font-size: clamp(26px, 4.8vw, 40px); margin: 8px 0 24px; }

/* Links */
.immomakler a { color: var(--mm-cta, #880621); }
.immomakler a:hover { color: var(--mm-cta-dark, #6E051A); }

/* ---- Property cards (archive grid) ---- */
.immomakler-archive .property-container {
	border: 1px solid var(--mm-border, #E4DED6) !important;
	border-radius: 4px !important;
	overflow: hidden;
	background: #fff;
	transition: box-shadow .2s, border-color .2s;
}
.immomakler-archive .property-container:hover {
	box-shadow: 0 14px 34px rgba(30,27,26,0.10);
	border-color: #D9D0C5 !important;
}
.immomakler .property-title,
.immomakler .property-title a { font-size: 20px; font-weight: 600; line-height: 1.25; }
.immomakler .property-location,
.immomakler .property-locality { text-transform: uppercase; letter-spacing: 1.2px; font-size: 12.5px; color: var(--mm-muted, #6B635E); font-weight: 600; }
.immomakler .property-price,
.immomakler .price-primary,
.immomakler .property-price .value {
	font-family: var(--mm-serif, 'Spectral', serif);
	font-weight: 600;
	color: var(--mm-cta, #880621);
}

/* Status/badges */
.immomakler .property-status,
.immomakler .label,
.immomakler .status-label,
.immomakler .im-badge {
	background: var(--mm-cta, #880621) !important;
	color: #fff !important;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	font-size: 11px;
	font-weight: 700;
	border-radius: 2px;
}

/* ---- Buttons ---- */
.immomakler .btn,
.immomakler button[type="submit"],
.immomakler input[type="submit"] {
	font-family: var(--mm-sans, 'Mulish', sans-serif);
	font-weight: 700;
	border-radius: 2px;
	letter-spacing: 0.3px;
	border: none;
}
.immomakler .btn-primary,
.immomakler button[type="submit"],
.immomakler input[type="submit"] {
	background: var(--mm-cta, #880621) !important;
	border-color: var(--mm-cta, #880621) !important;
	color: #fff !important;
}
.immomakler .btn-primary:hover,
.immomakler button[type="submit"]:hover,
.immomakler input[type="submit"]:hover { background: var(--mm-cta-dark, #6E051A) !important; }
.immomakler .btn-default,
.immomakler .immomakler-search-reset {
	background: #fff !important;
	border: 1px solid var(--mm-border, #E4DED6) !important;
	color: var(--mm-cta, #880621) !important;
}

/* ---- Search / filter form ---- */
.immomakler-search,
.immomakler-search-form {
	background: var(--mm-beige, #F5F1EA);
	border: 1px solid var(--mm-border, #E4DED6);
	border-radius: 6px;
	padding: 22px 24px;
	margin-bottom: 34px;
}
.immomakler-search label { font-size: 12px; text-transform: uppercase; letter-spacing: 0.5px; color: var(--mm-muted, #6B635E); font-weight: 700; }
.immomakler-search input,
.immomakler-search select,
.immomakler input[type="text"],
.immomakler input[type="number"],
.immomakler select {
	border: 1px solid var(--mm-border, #E4DED6);
	border-radius: 3px;
	padding: 10px 12px;
	font-family: var(--mm-sans, 'Mulish', sans-serif);
	font-size: 15px;
	background: #fff;
	color: var(--mm-ink, #1E1B1A);
}
.immomakler-search input:focus,
.immomakler-search select:focus { border-color: var(--mm-cta, #880621); outline: none; }
.immomakler .ui-slider-range,
.immomakler .noUi-connect { background: var(--mm-cta, #880621) !important; }
.immomakler .ui-slider-handle,
.immomakler .noUi-handle { border-color: var(--mm-cta, #880621) !important; }

/* ---- Single / Exposé ---- */
.immomakler-single .panel { border: 1px solid var(--mm-border, #E4DED6); border-radius: 6px; overflow: hidden; }
.immomakler-single .panel-heading,
.immomakler-single .panel-default > .panel-heading {
	background: var(--mm-beige, #F5F1EA) !important;
	border-bottom: 1px solid var(--mm-border, #E4DED6);
	font-family: var(--mm-serif, 'Spectral', serif);
	font-weight: 600;
}
.immomakler-single .property-title { font-size: clamp(26px, 5vw, 42px); line-height: 1.08; margin: 6px 0 16px; }
.immomakler-single .contact-form,
.immomakler-single .property-contact { border-radius: 6px; }

/* ---- Kategorie-Reiter (über dem Ergebnis-Grid) ---- */
.mm-immo-tabs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 22px;
}
.mm-immo-tabs__item {
	display: inline-block;
	padding: 9px 16px;
	border: 1px solid var(--mm-border, #E4DED6);
	border-radius: 999px;
	font-family: var(--mm-sans, 'Mulish', sans-serif);
	font-size: 14px;
	font-weight: 600;
	color: var(--mm-ink, #1E1B1A) !important;
	background: #fff;
	transition: border-color .15s, background .15s, color .15s;
}
.mm-immo-tabs__item:hover {
	border-color: var(--mm-cta, #880621);
	color: var(--mm-cta, #880621) !important;
}
.mm-immo-tabs__item.is-active {
	background: var(--mm-cta, #880621);
	border-color: var(--mm-cta, #880621);
	color: #fff !important;
}

/* Result count / pagination */
.immomakler .pagination > .active > a,
.immomakler .pagination > .active > span { background: var(--mm-cta, #880621) !important; border-color: var(--mm-cta, #880621) !important; }
.immomakler .pagination > li > a { color: var(--mm-cta, #880621); }
