/* ==========================================================================
   IMMOVITA – Styles der Unterseiten (Immobilienvermarktung, Immobilienwertermittlung, Über uns)
   Ergänzt assets/css/theme.css und wird danach geladen. Gleiche Konventionen:
   Präfix „iv-“, Farben aus theme.json, Selektoren beginnen mit „body“.
   ========================================================================== */

/* ---------- Navigation: vier Hauptpunkte, aktuelle Seite markiert (Klasse setzt assets/js/theme.js) ---------- */

body .iv-nav .wp-block-navigation-item__content.is-current {
	opacity: 1;
	color: var(--iv-forest);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 7px;
}
body .iv-footer__nav .wp-block-navigation-item__content.is-current { color: var(--iv-ivory); }

@media (max-width: 1180px) {
	body .iv-nav { gap: 22px; }
	body .iv-header__inner { gap: 16px; }
}

@media (max-width: 960px) and (min-width: 601px) {
	body .iv-header__cta { display: none; }
}

/* ---------- Hero der Unterseiten ---------- */

body .iv-hero--page { padding-block: 80px 64px; }
body .iv-hero--page .iv-hero__title { font-size: 52px; }
body .iv-hero--page p.iv-hero__eyebrow { margin: 0; }

/* ---------- Sektionshintergründe ---------- */

body .iv-vorteile { background: var(--iv-ivory); }
body .iv-rundum { background: var(--iv-forest); color: var(--iv-ivory); }
body .iv-ueberblick { background: var(--iv-ivory); }
body .iv-stufen { background: var(--iv-sand-soft); }
body .iv-verfahren { background: var(--iv-ivory); }
body .iv-sachverstaendiger { background: var(--iv-sand-soft); }
body .iv-profil { background: var(--iv-sand-soft); }
body .page-template-page-ueber-uns .iv-werte,
body.page-template-page-ueber-uns .iv-werte { background: var(--iv-ivory); border-bottom: 1px solid var(--iv-sand); }
body.page-template-page-ueber-uns .iv-region { background: var(--iv-sand-soft); border-bottom: 0; }

/* ---------- Drei Säulen (Werte-Raster mit drei Spalten) ---------- */

body .iv-grid--3.iv-saeulen { column-gap: 48px; row-gap: 40px; }
body .iv-saeulen .iv-value h3 { font-size: 15px; }

/* ---------- Aussage in Display-Schrift ---------- */

body .iv-statement {
	font-family: var(--iv-font-display);
	font-size: 30px;
	line-height: 1.15;
	font-weight: 500;
	color: var(--iv-forest);
	max-width: 24ch;
}

/* ---------- Rundum-Betreuung (grünes Panel) ---------- */

body .iv-rundum__grid { align-items: center; }
body .iv-rundum__image {
	margin: 0;
	aspect-ratio: 4 / 5;
	max-width: 100%;
	overflow: hidden;
	border-radius: 2px;
}
body .iv-rundum__image img { width: 100%; height: 100%; object-fit: cover; }
body .iv-rundum .iv-eyebrow { color: #9DB0A6; }
body .iv-rundum .iv-stack h2.iv-display { font-size: 36px; color: var(--iv-ivory); }
body .iv-rundum .iv-lead { color: #CBD6D0; }
body .iv-rundum .iv-checklist li { color: var(--iv-ivory); }
body .iv-rundum .iv-checklist li::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F5F2EC' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E"); }
body .iv-rundum .iv-statement { color: var(--iv-ivory); margin-top: 8px; }
body .iv-rundum__cta { margin-top: 8px; }

/* ---------- Anlässe (Chips) ---------- */

body .iv-anlaesse {
	margin-top: 56px !important;
	padding-top: 40px;
	border-top: 1px solid var(--iv-sand);
	display: flex;
	flex-direction: column;
	gap: 16px;
}
body .iv-anlaesse > * { margin: 0; }
body .iv-anlaesse h3 {
	font-size: 11px;
	line-height: 16px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--iv-muted);
}
body .iv-chips { display: flex; flex-wrap: wrap; gap: 10px; list-style: none; margin: 0; padding: 0; }
body .iv-chips li {
	margin: 0;
	font-size: 13px;
	line-height: 18px;
	font-weight: 600;
	color: var(--iv-forest);
	padding: 8px 14px;
	border: 1px solid var(--iv-sand);
	border-radius: 999px;
	background: #FFFFFF;
}

/* ---------- Drei Stufen der Wertermittlung ---------- */

body .iv-stufen__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1px;
	background: var(--iv-sand);
	border: 1px solid var(--iv-sand);
}
body .iv-stufe {
	margin: 0;
	background: var(--iv-ivory);
	padding: 40px 36px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}
body .iv-stufe > * { margin: 0; }
body .iv-stufe .iv-stufe__label {
	font-size: 11px;
	line-height: 16px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--iv-sage);
}
body .iv-stufe h3 { font-size: 22px; line-height: 30px; }
body .iv-stufe p { font-size: 15px; line-height: 23px; color: var(--iv-muted); }
body .iv-stufe .iv-checklist { margin-top: 4px; gap: 10px; }
body .iv-stufe .iv-checklist li { font-size: 14px; line-height: 22px; color: var(--iv-carbon); }
body .iv-stufe__fit {
	margin-top: auto !important;
	padding-top: 16px;
	border-top: 1px solid var(--iv-sand);
	display: flex;
	flex-direction: column;
	gap: 4px;
}
body .iv-stufe__fit > * { margin: 0; }
body .iv-stufe .iv-stufe__fit-label { font-size: 10px; line-height: 14px; font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; color: var(--iv-sage); }
body .iv-stufe .iv-stufe__fit-value { font-size: 13px; line-height: 20px; font-weight: 600; color: var(--iv-carbon); }
body .iv-stufe .iv-note { font-size: 12px; line-height: 18px; color: var(--iv-sage); }
body .iv-stufe .wp-block-buttons { margin-top: 8px; }
body .iv-stufe .wp-block-button { width: 100%; }
body .iv-stufe .wp-block-button__link { width: 100%; text-align: center; box-sizing: border-box; }

body .iv-stufe--highlight { background: var(--iv-forest); }
body .iv-stufe--highlight h3 { color: var(--iv-ivory); }
body .iv-stufe--highlight p { color: #CBD6D0; }
body .iv-stufe--highlight .iv-stufe__label { color: #9DB0A6; }
body .iv-stufe--highlight .iv-checklist li { color: var(--iv-ivory); }
body .iv-stufe--highlight .iv-checklist li::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F5F2EC' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E"); }
body .iv-stufe--highlight .iv-stufe__fit { border-top-color: rgba(245, 242, 236, 0.2); }
body .iv-stufe--highlight .iv-stufe__fit-label { color: #9DB0A6; }
body .iv-stufe--highlight .iv-stufe__fit-value { color: var(--iv-ivory); }
body .iv-stufe--highlight .iv-note { color: #CBD6D0; border-left-color: #9DB0A6; }

/* ---------- Definition Verkehrswert (§ 194 BauGB) ---------- */

body .iv-definition { margin-top: 64px !important; align-items: center; }
body .iv-quote {
	margin: 0;
	padding: 8px 0 8px 28px;
	border-left: 4px solid var(--iv-forest);
	display: flex;
	flex-direction: column;
	gap: 16px;
}
body .iv-quote > * { margin: 0; }
body .iv-quote p {
	font-family: var(--iv-font-display);
	font-size: 26px;
	line-height: 1.3;
	font-weight: 500;
	color: var(--iv-forest);
	text-wrap: pretty;
}
body .iv-quote cite {
	display: block;
	font-style: normal;
	font-size: 11px;
	line-height: 16px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--iv-muted);
}
body .iv-definition .iv-stack h3 { font-size: 24px; line-height: 32px; }
body .iv-definition .iv-stack p:not(.iv-eyebrow) { font-size: 15px; line-height: 24px; color: var(--iv-muted); max-width: 56ch; }

/* ---------- Verfahren: drei Leistungskarten ---------- */

body .iv-services--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
body .iv-service .iv-service__norm {
	font-size: 11px;
	line-height: 16px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--iv-sage);
	margin-top: -8px;
}
body .iv-service--vergleich { --iv-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F5F2EC' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='3' width='12' height='12' rx='1'/%3E%3Crect x='9' y='9' width='12' height='12' rx='1'/%3E%3C/svg%3E"); }
body .iv-service--ertrag { --iv-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F5F2EC' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='7' cy='7' r='3'/%3E%3Ccircle cx='17' cy='17' r='3'/%3E%3Cpath d='M19 5L5 19'/%3E%3C/svg%3E"); }
body .iv-service--sach { --iv-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F5F2EC' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 21V9l8-5 8 5v12'/%3E%3Cpath d='M4 15h16'/%3E%3Cpath d='M12 4v17'/%3E%3Cpath d='M3 21h18'/%3E%3C/svg%3E"); }

/* ---------- Sachverständiger ---------- */

body .iv-sachverstaendiger__grid { align-items: center; }
body .iv-badges--strip.iv-badges--plain { margin-top: 0 !important; padding-top: 0; border-top: 0; }

/* ---------- Über uns: Geschäftsführung ---------- */

body .iv-profil__grid { align-items: center; }
body .iv-profil__image {
	margin: 0;
	aspect-ratio: 4 / 5;
	max-width: 100%;
	overflow: hidden;
	border-radius: 2px;
}
body .iv-profil__image img { width: 100%; height: 100%; object-fit: cover; }
body .iv-profil .iv-stack h2.iv-display { font-size: 40px; }
body .iv-quali { list-style: none; margin: 8px 0 0; padding: 0; display: flex; flex-direction: column; border-top: 1px solid var(--iv-forest); }
body .iv-quali li {
	margin: 0;
	padding: 12px 0;
	border-bottom: 1px solid var(--iv-sand);
	display: flex;
	flex-direction: column;
	gap: 2px;
	font-size: 15px;
	line-height: 22px;
}
body .iv-quali strong { font-weight: 700; color: var(--iv-carbon); }
body .iv-quali span { font-size: 13px; line-height: 18px; color: var(--iv-muted); }

/* ---------- Über uns: Historie, Bürogemeinschaft, Philosophie, Kooperationspartner (ab 1.1.1) ---------- */

body .iv-historie,
body .iv-kooperation { background: var(--iv-ivory); }
body .iv-lebenszyklus { background: var(--iv-sand-soft); }
body .iv-philosophie { background: var(--iv-ivory); border-bottom: 1px solid var(--iv-sand); }
body .iv-historie__grid { grid-template-columns: 0.8fr 1.2fr; }
body .iv-historie__text { display: flex; flex-direction: column; gap: 18px; }
body .iv-historie__text > * { margin: 0; }
body .iv-historie__text p { font-size: 16px; line-height: 27px; color: var(--iv-carbon); max-width: 66ch; }
body .iv-historie__text p.iv-note { font-size: 12px; line-height: 18px; color: var(--iv-sage); margin-top: 6px; }
body .iv-kontakt__sub { line-height: 20px; }

body .iv-tablewrap {
	overflow-x: auto;
	background: #FFFFFF;
	border: 1px solid var(--iv-sand);
	border-radius: 2px;
}
body .iv-tablewrap > * { margin: 0; }
body .iv-table table {
	width: 100%;
	min-width: 560px;
	border-collapse: collapse;
	border: 0;
}
body .iv-table th,
body .iv-table td { border: 0; text-align: left; vertical-align: top; padding: 14px 18px; }
body .iv-table th {
	font-size: 11px;
	line-height: 16px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--iv-muted);
	border-bottom: 1px solid var(--iv-forest);
}
body .iv-table td { font-size: 15px; line-height: 23px; color: var(--iv-muted); border-bottom: 1px solid var(--iv-sand); }
body .iv-table tr:last-child td { border-bottom: 0; }
body .iv-table td.iv-table__phase { font-weight: 700; color: var(--iv-carbon); }
body .iv-table td.iv-table__by { font-weight: 600; color: var(--iv-forest); white-space: nowrap; }
body .iv-kooperation__grid { align-items: start; }
body .iv-kooperation .iv-lead { max-width: 60ch; color: var(--iv-carbon); }

/* ---------- Responsive ---------- */

@media (max-width: 1080px) {
	body .iv-stufen__grid { grid-template-columns: 1fr; }
	body .iv-historie__grid { grid-template-columns: 1fr; gap: 48px; }
}

@media (max-width: 860px) {
	body .iv-hero--page { padding-block: 56px 48px; }
	body .iv-hero--page .iv-hero__title { font-size: 36px; }
	body .iv-services--3 { grid-template-columns: 1fr; }
	body .iv-stufe { padding: 28px; }
	body .iv-quote p { font-size: 22px; }
	body .iv-statement { font-size: 26px; }
	body .iv-rundum__image,
	body .iv-profil__image { aspect-ratio: 16 / 10; }
	body .iv-rundum .iv-stack h2.iv-display,
	body .iv-profil .iv-stack h2.iv-display { font-size: 30px; }
	body .iv-definition { margin-top: 48px !important; }
	body .iv-anlaesse { margin-top: 40px !important; padding-top: 32px; }
}
