/* ==========================================================================
   iqona – Theme-Styles
   Design-Tokens stammen aus theme.json (--wp--preset--*). Hier nur Aliase.
   ========================================================================== */

:root {
	--iq-base: var(--wp--preset--color--base);
	--iq-cream: var(--wp--preset--color--cream);
	--iq-ink: var(--wp--preset--color--contrast);
	--iq-muted: var(--wp--preset--color--muted);
	--iq-rose: var(--wp--preset--color--rose);
	--iq-rose-soft: var(--wp--preset--color--rose-soft);
	--iq-sage: var(--wp--preset--color--sage);
	--iq-sage-soft: var(--wp--preset--color--sage-soft);
	--iq-accent: var(--wp--preset--color--accent);
	--iq-accent-strong: var(--wp--preset--color--accent-strong);
	--iq-line: var(--wp--preset--color--line);
	--iq-white: #fff;
	--iq-r-sm: var(--wp--custom--radius--sm);
	--iq-r-md: var(--wp--custom--radius--md);
	--iq-r-lg: var(--wp--custom--radius--lg);
	--iq-r-xl: var(--wp--custom--radius--xl);
	--iq-ease: var(--wp--custom--transition);
	--iq-shadow: var(--wp--preset--shadow--soft);
	--iq-shadow-float: var(--wp--preset--shadow--float);
	--iq-head: var(--wp--preset--font-family--heading);
	--iq-serif: var(--wp--preset--font-family--serif);
	--iq-section: clamp(4rem, 9vw, 8rem);
	--iq-header-h: var(--wp--custom--header-height);
}

/* ---------- Basis ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: calc(var(--iq-header-h) + 1rem); -webkit-text-size-adjust: 100%; }
body { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility; overflow-x: clip; }
::selection { background: var(--iq-rose); color: var(--iq-ink); }
img { height: auto; max-width: 100%; }
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible { outline: 2px solid var(--iq-ink); outline-offset: 3px; border-radius: 6px; }
.screen-reader-text { border: 0; clip: rect(1px,1px,1px,1px); clip-path: inset(50%); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute !important; width: 1px; word-wrap: normal !important; }
.iq-skip { position: absolute; left: 1rem; top: -100px; z-index: 1000; background: var(--iq-ink); color: var(--iq-base); padding: .75rem 1.25rem; border-radius: 999px; text-decoration: none; font-weight: 600; }
.iq-skip:focus { top: 1rem; }
.iq-main { flex: 1; }
.wp-site-blocks { min-height: 100vh; display: flex; flex-direction: column; }
.wp-site-blocks > * { margin-block-start: 0; }

/* Headline-Akzent: kursive Serif für emotionale Worte */
:where(h1, h2, h3) em, .iq-serif {
	font-family: var(--iq-serif);
	font-style: italic;
	font-weight: 400;
	letter-spacing: -0.01em;
}
:where(h1, h2) em { color: var(--iq-accent-strong); }
.iq-serif { font-style: normal; line-height: 1.08; }

.is-style-eyebrow, .iq-eyebrow, .iq-eyebrow a {
	font-family: var(--iq-head);
	font-size: var(--wp--preset--font-size--xs) !important;
	font-weight: 700;
	letter-spacing: .14em;
	text-transform: uppercase;
	color: var(--iq-accent-strong);
	text-decoration: none;
	margin-bottom: .75rem;
}
.is-style-lead { font-size: var(--wp--preset--font-size--lg); line-height: 1.6; color: var(--iq-muted); }
.iq-muted { color: var(--iq-muted); }
.iq-note { font-size: var(--wp--preset--font-size--sm); color: var(--iq-muted); background: var(--iq-cream); border-radius: var(--iq-r-md); padding: 1rem 1.25rem; }
.iq-pill {
	display: inline-flex; align-items: center; gap: .5rem;
	font-family: var(--iq-head); font-weight: 600; font-size: var(--wp--preset--font-size--sm);
	padding: .5rem 1rem .5rem .6rem; border-radius: 999px;
	background: rgba(255,255,255,.7); border: 1px solid var(--iq-line);
	backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
	color: var(--iq-ink);
}
.iq-pill::before { content: ""; width: .55rem; height: .55rem; border-radius: 50%; background: var(--iq-accent); box-shadow: 0 0 0 4px var(--iq-rose-soft); margin-left: .35rem; }

ul.is-style-check, .iq-checklist { list-style: none; padding-left: 0; }
ul.is-style-check li, .iq-checklist li { position: relative; padding-left: 2rem; margin-bottom: .6rem; }
ul.is-style-check li::before { content: ""; position: absolute; left: 0; top: .3em; width: 1.25rem; height: 1.25rem; border-radius: 50%; background: var(--iq-sage-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2325252B' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12.5 4 4L18 8.5'/%3E%3C/svg%3E") center/70% no-repeat; }
.iq-checklist li .iq-icon { position: absolute; left: 0; top: .25em; color: var(--iq-sage); }

/* ---------- Buttons ---------- */
.wp-element-button, .wp-block-button__link, .iq-btn {
	transition: background-color .25s var(--iq-ease), color .25s var(--iq-ease), transform .25s var(--iq-ease), box-shadow .25s var(--iq-ease), border-color .25s var(--iq-ease);
	min-height: 48px; display: inline-flex; align-items: center; justify-content: center; gap: .5rem;
	text-decoration: none; line-height: 1.2;
}
.wp-block-button__link:hover, .iq-btn:hover { transform: translateY(-1px); }
.wp-block-button:not(.is-style-ghost):not(.is-style-soft) .wp-block-button__link { box-shadow: 0 10px 24px -10px rgba(184,121,121,.7); }
.wp-block-button.is-style-ghost .wp-block-button__link {
	background: transparent; color: var(--iq-ink); box-shadow: inset 0 0 0 1.5px var(--iq-ink);
}
.wp-block-button.is-style-ghost .wp-block-button__link:hover { background: var(--iq-ink); color: var(--iq-base); }
.wp-block-button.is-style-soft .wp-block-button__link { background: var(--iq-rose-soft); color: var(--iq-ink); }
.wp-block-button.iq-btn-lg .wp-block-button__link { padding: 1.1rem 1.9rem; font-size: 1.0625rem; }

.iq-btn { font-family: var(--iq-head); font-weight: 700; font-size: 1rem; border-radius: 999px; padding: .9rem 1.5rem; border: 0; cursor: pointer; }
.iq-btn--primary { background: var(--iq-accent); color: #fff; box-shadow: 0 10px 24px -10px rgba(184,121,121,.7); }
.iq-btn--primary:hover { background: var(--iq-accent-strong); color: #fff; }
.iq-btn--soft { background: var(--iq-rose-soft); color: var(--iq-ink); }
.iq-btn--soft:hover { background: var(--iq-ink); color: var(--iq-base); }
.iq-btn--sm { min-height: 44px; padding: .65rem 1.1rem; font-size: .9375rem; }
.iq-btn .iq-icon { transition: transform .25s var(--iq-ease); }
.iq-btn:hover .iq-icon--arrow { transform: translateX(3px); }

/* ---------- Header ---------- */
.iq-site-header { position: sticky; top: 0; z-index: 50; }
.admin-bar .iq-site-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .iq-site-header { top: 46px; } }
@media (max-width: 600px) { .admin-bar .iq-site-header { top: 0; } }
.iq-header {
	background: rgba(250,248,246,.78);
	backdrop-filter: saturate(1.4) blur(16px); -webkit-backdrop-filter: saturate(1.4) blur(16px);
	border-bottom: 1px solid transparent;
	transition: border-color .3s, background-color .3s, box-shadow .3s;
}
.iq-header.is-scrolled { border-bottom-color: var(--iq-line); background: rgba(250,248,246,.92); box-shadow: 0 8px 24px -18px rgba(37,37,43,.35); }
.iq-header__bar { min-height: var(--iq-header-h); gap: 1.5rem; }
.iq-brand { gap: .6rem; flex-shrink: 0; }
.iq-brand .wp-block-site-logo img { max-height: 40px; width: auto; }
.iq-wordmark { margin: 0; }
.iq-wordmark a { text-decoration: none; color: var(--iq-ink); display: inline-flex; align-items: baseline; gap: .1rem; }
.iq-wordmark a::after { content: ""; width: .42rem; height: .42rem; border-radius: 50%; background: var(--iq-accent); margin-left: .12rem; transform: translateY(-.05rem); }
.iq-wordmark--light a { color: var(--iq-base); font-size: 2rem; }
.iq-nav .wp-block-navigation-item__content { text-decoration: none; color: var(--iq-ink); padding: .5rem .2rem; position: relative; }
.iq-nav .wp-block-navigation-item__content::after { content: ""; position: absolute; left: .2rem; right: .2rem; bottom: .2rem; height: 2px; border-radius: 2px; background: var(--iq-accent); transform: scaleX(0); transform-origin: left; transition: transform .3s var(--iq-ease); }
.iq-nav .wp-block-navigation-item__content:hover::after, .iq-nav .current-menu-item > .wp-block-navigation-item__content::after { transform: scaleX(1); }
.iq-nav.wp-block-navigation { gap: 1.75rem; }
.iq-header__cta { flex-shrink: 0; }
.iq-header__cta .wp-block-button__link { padding: .7rem 1.25rem; min-height: 44px; }
.wp-block-navigation__responsive-container-open, .wp-block-navigation__responsive-container-close { width: 44px; height: 44px; display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; }
.wp-block-navigation__responsive-container-open { background: var(--iq-white); box-shadow: inset 0 0 0 1px var(--iq-line); }
.wp-block-navigation__responsive-container.is-menu-open { background: var(--iq-base) !important; padding: 1.25rem clamp(1rem, 5vw, 2rem) 2rem; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 4rem; align-items: flex-start; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: .25rem; width: 100%; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item { width: 100%; border-bottom: 1px solid var(--iq-line); }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content { font-family: var(--iq-head); font-size: 1.5rem; font-weight: 700; padding: 1rem 0 !important; width: 100%; }
@media (max-width: 600px) {
	.iq-header__cta .wp-block-button__link { padding: .6rem 1rem; font-size: .875rem; }
	.iq-header__bar { gap: .6rem; }
	.iq-nav { order: 3; }
}
@media (min-width: 600px) and (max-width: 1080px) {
	.iq-nav.wp-block-navigation { gap: 1rem; font-size: .9rem; }
}

/* ---------- Sektionen ---------- */
.iq-section { padding-top: var(--iq-section); padding-bottom: var(--iq-section); position: relative; }
.iq-sechead { margin-bottom: clamp(2rem, 5vw, 3.5rem); }
.iq-sechead h2 { margin-top: 0; }
.iq-sechead--split { gap: 1.5rem; align-items: flex-end; }
.iq-sechead--center { text-align: center; }
.iq-pagehead { position: relative; }
.iq-pagehead--blush { background: radial-gradient(60% 80% at 100% 0%, rgba(217,181,173,.45), transparent 60%), radial-gradient(50% 70% at 0% 100%, rgba(168,184,165,.35), transparent 60%), var(--iq-cream); }
.iq-pagehead__title { margin-top: 1rem; }
.iq-pagehead .wp-block-post-title { max-width: 18ch; }

/* ---------- Hero ---------- */
.iq-hero {
	position: relative;
	padding-top: clamp(2.5rem, 6vw, 5rem);
	padding-bottom: clamp(3rem, 6vw, 5rem);
	background:
		radial-gradient(55% 60% at 85% 20%, rgba(217,181,173,.55), transparent 62%),
		radial-gradient(40% 50% at 70% 85%, rgba(168,184,165,.45), transparent 60%),
		radial-gradient(35% 40% at 5% 10%, rgba(242,235,229,1), transparent 70%),
		var(--iq-base);
	overflow: hidden;
}
.iq-hero__cols { gap: clamp(2rem, 5vw, 4rem) !important; }
.iq-hero__title { margin: 1.25rem 0 1.25rem; line-height: 1.02; letter-spacing: -0.04em; max-width: 13ch; }
.iq-hero__title em { display: inline-block; }
.iq-hero__lead { max-width: 36rem; }
.iq-hero__ctas { margin-top: 2rem; gap: .75rem; }
.iq-trustrow { list-style: none; padding: 0; margin: 1.75rem 0 0; display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; font-size: var(--wp--preset--font-size--sm); color: var(--iq-muted); font-weight: 500; }
.iq-trustrow li { display: inline-flex; align-items: center; gap: .45rem; }
.iq-trustrow li::before { content: ""; width: 1.15rem; height: 1.15rem; border-radius: 50%; background: var(--iq-sage-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2325252B' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 12.5 4 4L18 8.5'/%3E%3C/svg%3E") center/70% no-repeat; }
.iq-hero__visual { display: flex; justify-content: center; }
.iq-hero__search { margin-top: clamp(2.5rem, 5vw, 4rem); }
@media (max-width: 781px) {
	.iq-hero__title { max-width: none; }
	.iq-hero__ctas .wp-block-button, .iq-hero__ctas .wp-block-button__link { width: 100%; }
	.iq-hero__visual { margin-top: 1rem; }
}

/* ---------- Smartphone-Mockup ---------- */
.iq-phone-wrap { --w: 270px; position: relative; width: var(--w); max-width: 100%; margin-inline: auto; }
.iq-phone-wrap--sm { --w: 230px; }
.iq-phone-wrap--lg { --w: clamp(260px, 26vw, 320px); }
.iq-phone-wrap::before {
	content: ""; position: absolute; inset: 8% -22% 4% -22%; z-index: 0;
	background: radial-gradient(closest-side, rgba(217,181,173,.65), rgba(168,184,165,.25) 60%, transparent 75%);
	filter: blur(10px);
}
.iq-phone-wrap--sm::before { display: none; }
.iq-phone {
	position: relative; z-index: 1;
	font-size: calc(var(--w) / 22);
	width: 100%; aspect-ratio: 9 / 19.2;
	padding: .55em; border-radius: 3.1em;
	background: linear-gradient(145deg, #34343c, #1b1b20);
	box-shadow: 0 0 0 1px rgba(255,255,255,.06) inset, 0 2px 4px rgba(0,0,0,.08), 0 40px 80px -30px rgba(37,37,43,.55), 0 20px 40px -20px rgba(184,121,121,.35);
}
.iq-phone-wrap.is-tilt .iq-phone { transform: rotate(4deg); }
.iq-ui {
	position: relative; height: 100%; overflow: hidden; border-radius: 2.6em;
	background: var(--iq-base); color: var(--iq-ink);
	padding: .6em 1.15em 4.6em; display: flex; flex-direction: column; gap: .75em;
	font-family: var(--wp--preset--font-family--body); line-height: 1.3;
}
.iq-ui strong { font-family: var(--iq-head); font-weight: 700; }
.iq-ui small { display: block; font-size: .78em; color: var(--iq-muted); }
.iq-ui__status { display: flex; justify-content: space-between; align-items: center; font-size: .8em; font-weight: 600; padding: .25em .4em 0; }
.iq-ui__notch { width: 6.2em; height: 1.75em; background: #1b1b20; border-radius: 1em; }
.iq-ui__sys { display: flex; gap: .2em; align-items: flex-end; }
.iq-ui__sys i { width: .3em; background: var(--iq-ink); border-radius: 1px; height: .5em; }
.iq-ui__sys i:nth-child(2) { height: .7em; } .iq-ui__sys i:nth-child(3) { height: .9em; }
.iq-ui__brand { font-family: var(--iq-head); font-weight: 800; letter-spacing: -.04em; font-size: .85em; color: var(--iq-accent-strong); margin-top: .1em; }
.iq-ui__head strong { font-size: 1.55em; letter-spacing: -.03em; display: block; line-height: 1.1; }
.iq-ui__search { display: flex; align-items: center; gap: .6em; background: #fff; border-radius: 1.2em; padding: .85em 1em; box-shadow: var(--iq-shadow); font-weight: 600; font-size: .95em; }
.iq-ui__chips, .iq-ui__tabs, .iq-ui__seg { display: flex; gap: .4em; flex-wrap: wrap; }
.iq-ui__chips span, .iq-ui__tabs span, .iq-ui__seg span { font-size: .75em; padding: .45em .8em; border-radius: 999px; background: var(--iq-cream); display: inline-flex; gap: .3em; align-items: center; font-weight: 600; }
.iq-ui__chips .is-on, .iq-ui__seg .is-on { background: var(--iq-ink); color: var(--iq-base); }
.iq-ui__tabs { border-bottom: 1px solid var(--iq-line); gap: 1em; }
.iq-ui__tabs span { background: none; padding: .4em 0 .6em; border-radius: 0; color: var(--iq-muted); }
.iq-ui__tabs .is-on { color: var(--iq-ink); box-shadow: inset 0 -2px 0 var(--iq-accent); }
.iq-ui__muted { margin-top: .1em; }
.iq-ui__list { display: flex; flex-direction: column; gap: .55em; }
.iq-ui__card { display: flex; align-items: center; gap: .7em; background: #fff; border-radius: 1.1em; padding: .7em; box-shadow: 0 1px 2px rgba(37,37,43,.04), 0 6px 16px -10px rgba(37,37,43,.2); }
.iq-ui__meta { flex: 1; min-width: 0; }
.iq-ui__meta strong { display: block; font-size: .9em; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.iq-ui__meta small { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.iq-ui__loc { display: inline-flex !important; align-items: center; gap: .25em; }
.iq-ui__avatar { flex-shrink: 0; width: 2.8em; height: 2.8em; border-radius: 50%; display: grid; place-items: center; font-family: var(--iq-head); font-weight: 800; color: var(--iq-ink); }
.iq-ui__avatar--rose { background: linear-gradient(135deg, var(--iq-rose-soft), var(--iq-rose)); }
.iq-ui__avatar--sage { background: linear-gradient(135deg, var(--iq-sage-soft), var(--iq-sage)); }
.iq-ui__avatar--cream { background: linear-gradient(135deg, #fff, var(--iq-cream)); box-shadow: inset 0 0 0 1px var(--iq-line); }
.iq-ui__avatar--lg { width: 4.6em; height: 4.6em; font-size: 1.2em; border: .25em solid var(--iq-base); }
.iq-ui__pill { font-size: .72em; font-weight: 700; background: var(--iq-accent); color: #fff; border-radius: 999px; padding: .5em .8em; }
.iq-ui__heart { color: var(--iq-accent); }
.iq-ui__heart svg { fill: var(--iq-accent); }
.iq-ui__badge { display: inline-flex !important; align-items: center; gap: .25em; color: #4f6a4b !important; font-weight: 600; }
.iq-ui__cover { margin: -.6em -1.15em 0; height: 7em; background: linear-gradient(135deg, var(--iq-rose) 0%, var(--iq-rose-soft) 50%, var(--iq-sage-soft) 100%); position: relative; }
.iq-ui--profile .iq-ui__status, .iq-ui--profile .iq-ui__brand { position: absolute; left: 1.15em; right: 1.15em; z-index: 2; }
.iq-ui--profile .iq-ui__status { top: .6em; }
.iq-ui--profile .iq-ui__brand { top: 2.4em; color: var(--iq-ink); }
.iq-ui__profilehead { display: flex; flex-direction: column; align-items: center; text-align: center; margin-top: -3.2em; gap: .2em; }
.iq-ui__profilehead strong { font-size: 1.15em; margin-top: .3em; }
.iq-ui__rows { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .45em; }
.iq-ui__rows li, .iq-ui__rows span { display: flex; align-items: center; gap: .55em; background: #fff; border-radius: .9em; padding: .65em .8em; font-size: .85em; font-weight: 600; box-shadow: 0 4px 12px -10px rgba(37,37,43,.3); }
.iq-ui__rows .iq-icon { color: var(--iq-accent); }
.iq-ui__actions { display: flex; gap: .5em; margin-top: auto; }
.iq-ui__btn { flex: 1; display: inline-flex; align-items: center; justify-content: center; gap: .4em; background: var(--iq-accent); color: #fff; border-radius: 999px; padding: .85em 1em; font-size: .82em; font-weight: 700; font-family: var(--iq-head); white-space: nowrap; }
.iq-ui__btn--ghost { flex: 0 0 auto; background: #fff; color: var(--iq-ink); box-shadow: inset 0 0 0 1px var(--iq-line); }
.iq-ui__progress { height: .45em; background: var(--iq-cream); border-radius: 999px; overflow: hidden; }
.iq-ui__progress span { display: block; height: 100%; background: linear-gradient(90deg, var(--iq-sage), var(--iq-accent)); border-radius: inherit; }
.iq-ui__checks { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .5em; }
.iq-ui__checks li { display: flex; gap: .6em; align-items: center; background: #fff; border-radius: .9em; padding: .7em .8em; font-size: .82em; font-weight: 600; }
.iq-ui__checks li.is-done { color: var(--iq-muted); text-decoration: line-through; text-decoration-color: rgba(94,92,99,.4); }
.iq-ui__box { flex-shrink: 0; width: 1.5em; height: 1.5em; border-radius: .45em; border: 1.5px solid var(--iq-line); display: grid; place-items: center; }
.is-done .iq-ui__box { background: var(--iq-sage); border-color: var(--iq-sage); color: #fff; }
.iq-ui__hero { height: 7.5em; border-radius: 1.2em; background: radial-gradient(60% 80% at 30% 30%, #fff 0%, transparent 60%), linear-gradient(135deg, var(--iq-rose-soft), var(--iq-sage-soft)); }
.iq-ui__text { display: flex; flex-direction: column; gap: .45em; }
.iq-ui__text i { display: block; height: .55em; border-radius: 999px; background: var(--iq-line); }
.iq-ui__text i.short { width: 60%; }
.iq-ui__nav { position: absolute; left: .9em; right: .9em; bottom: .9em; height: 3.4em; border-radius: 1.6em; background: rgba(255,255,255,.92); box-shadow: 0 8px 20px -12px rgba(37,37,43,.35); display: flex; justify-content: space-around; align-items: center; color: var(--iq-muted); }
.iq-ui__nav span { width: 2.6em; height: 2.6em; display: grid; place-items: center; border-radius: 50%; }
.iq-ui__nav .is-on { background: var(--iq-ink); color: var(--iq-base); }
.iq-ui .iq-icon { width: 1.1em; height: 1.1em; flex-shrink: 0; }
.iq-ui__nav .iq-icon { width: 1.3em; height: 1.3em; }

/* schwebende UI-Elemente */
.iq-float {
	position: absolute; z-index: 2; display: flex; align-items: center; gap: .65rem;
	background: rgba(255,255,255,.82); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
	border: 1px solid rgba(255,255,255,.8); border-radius: 18px; padding: .7rem .95rem .7rem .7rem;
	box-shadow: var(--iq-shadow-float); font-size: .8125rem; line-height: 1.25; white-space: nowrap;
	animation: iq-float 7s ease-in-out infinite;
}
.iq-float > .iq-icon { width: 34px; height: 34px; padding: 8px; border-radius: 12px; background: var(--iq-rose-soft); color: var(--iq-accent-strong); }
.iq-float strong { font-family: var(--iq-head); display: block; }
.iq-float small { color: var(--iq-muted); }
.iq-float--a { left: -34%; top: 22%; }
.iq-float--b { right: -30%; top: 52%; animation-delay: -2.5s; }
.iq-float--b > .iq-icon { background: var(--iq-sage-soft); color: #4f6a4b; }
.iq-float--c { left: -18%; bottom: 10%; animation-delay: -4.5s; }
.iq-float--c > .iq-icon { background: var(--iq-accent); color: #fff; }
@keyframes iq-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-10px); } }
@media (max-width: 900px) {
	.iq-float--a { left: -12%; top: 12%; }
	.iq-float--b { right: -12%; }
	.iq-float--c { display: none; }
}
@media (max-width: 420px) {
	.iq-float { font-size: .75rem; padding: .55rem .7rem .55rem .55rem; }
	.iq-float--a { left: -6%; } .iq-float--b { right: -6%; }
	.iq-float small { display: none; }
}

/* ---------- Schritte ---------- */
.iq-steps__grid { gap: clamp(1rem, 2.5vw, 2rem) !important; }
.iq-step { background: var(--iq-white); border-radius: var(--iq-r-lg); padding: 0 1.75rem 2rem; box-shadow: var(--iq-shadow); border: 1px solid var(--iq-line); overflow: hidden; position: relative; }
.iq-step__visual { height: 250px; margin: 0 -1.75rem 1.5rem; padding-top: 28px; overflow: hidden; background: linear-gradient(180deg, var(--iq-cream), var(--iq-rose-soft)); -webkit-mask-image: linear-gradient(180deg, #000 78%, transparent); mask-image: linear-gradient(180deg, #000 78%, transparent); }
.iq-step:nth-child(2) .iq-step__visual { background: linear-gradient(180deg, var(--iq-cream), var(--iq-sage-soft)); }
.iq-step__visual .iq-phone-wrap { --w: 210px; }
.iq-step__num { font-family: var(--iq-serif); font-style: italic; font-size: 2rem; line-height: 1; color: var(--iq-accent); margin: 0 0 .5rem; }
.iq-step h3 { margin: 0 0 .5rem; }
.iq-step p:last-child { color: var(--iq-muted); margin: 0; }

/* ---------- Feature-Karten & Icons ---------- */
.iq-features { gap: clamp(1rem, 2vw, 1.5rem) !important; }
.iq-feature { background: rgba(255,255,255,.75); border: 1px solid rgba(231,223,216,.9); border-radius: var(--iq-r-lg); padding: 1.75rem; transition: transform .35s var(--iq-ease), box-shadow .35s var(--iq-ease); }
.iq-feature:hover { transform: translateY(-3px); box-shadow: var(--iq-shadow); }
.iq-feature h3, .iq-feature h2 { margin: 1rem 0 .4rem; }
.iq-feature p:last-child { color: var(--iq-muted); margin: 0; }
.iq-ico { width: 52px; height: 52px; border-radius: 16px; background: var(--iq-rose-soft); position: relative; margin: 0; }
.iq-ico::before { content: ""; position: absolute; inset: 13px; background: var(--iq-accent-strong); -webkit-mask: var(--iq-ico) center/contain no-repeat; mask: var(--iq-ico) center/contain no-repeat; }
.iq-features > .iq-feature:nth-child(3n+2) .iq-ico, .iq-trust__list .iq-feature:nth-child(2n) .iq-ico { background: var(--iq-sage-soft); }
.iq-features > .iq-feature:nth-child(3n+2) .iq-ico::before, .iq-trust__list .iq-feature:nth-child(2n) .iq-ico::before { background: #4f6a4b; }
.iq-features > .iq-feature:nth-child(3n) .iq-ico { background: var(--iq-cream); }

/* ---------- App-Showcase ---------- */
.iq-showcase { background: radial-gradient(60% 50% at 50% 0%, rgba(184,121,121,.35), transparent 70%), radial-gradient(40% 40% at 90% 90%, rgba(168,184,165,.22), transparent 70%), linear-gradient(160deg, #25252B 0%, #2f2a2e 100%); color: var(--iq-base); }
.iq-showcase :where(h2, h3) { color: var(--iq-base); }
.iq-showcase h2 em { color: var(--iq-rose); }
.iq-showcase .is-style-eyebrow { color: var(--iq-rose); }
.iq-showcase .is-style-lead { color: rgba(250,248,246,.72); }
.iq-shots { display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: clamp(1rem, 2.5vw, 2rem); align-items: start; }
.iq-shot:nth-child(even) { margin-top: 3rem; }
.iq-shot .iq-phone-wrap { --w: 100%; max-width: 260px; }
.iq-shot .iq-phone-wrap::before { display: none; }
.iq-shot .iq-phone { font-size: clamp(9px, 1.05vw, 12px); }
.iq-shot__cap { text-align: center; margin-top: 1.25rem; font-size: var(--wp--preset--font-size--sm); color: rgba(250,248,246,.7); }
.iq-shot__cap strong { display: block; color: var(--iq-base); font-family: var(--iq-head); font-size: 1rem; margin-bottom: .2rem; }
.iq-showcase__dl { margin-top: clamp(2.5rem, 5vw, 4rem); }
.iq-fineprint { color: rgba(250,248,246,.55); margin-top: 1.5rem; }
@media (max-width: 960px) {
	.iq-shots { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; gap: 1rem; padding: 0 1rem 1.5rem; margin-inline: calc(-1 * clamp(1rem, 4vw, 2.5rem)); scrollbar-width: none; }
	.iq-shots::-webkit-scrollbar { display: none; }
	.iq-shot { flex: 0 0 min(64vw, 250px); scroll-snap-align: center; }
	.iq-shot:nth-child(even) { margin-top: 0; }
	.iq-shot .iq-phone { font-size: calc(min(64vw, 250px) / 22); }
}

/* ---------- Store-Buttons & QR ---------- */
.iq-app-buttons { display: flex; flex-wrap: wrap; align-items: center; gap: 1.25rem; margin-top: 1.5rem; }
.iq-app-buttons__stores { display: flex; flex-wrap: wrap; gap: .75rem; }
.iq-store { display: inline-flex; align-items: center; gap: .65rem; min-height: 54px; padding: .55rem 1.2rem .55rem 1rem; border-radius: 14px; text-decoration: none; transition: transform .25s var(--iq-ease), background-color .25s; }
.iq-store:hover { transform: translateY(-2px); }
.iq-store--dark { background: var(--iq-ink); color: var(--iq-base); }
.iq-store--dark:hover { background: #000; color: #fff; }
.iq-store--light { background: var(--iq-base); color: var(--iq-ink); }
.iq-store--light:hover { background: #fff; color: var(--iq-ink); }
.iq-store__txt { display: flex; flex-direction: column; line-height: 1.1; text-align: left; }
.iq-store__txt small { font-size: .6875rem; opacity: .75; }
.iq-store__txt strong { font-family: var(--iq-head); font-size: 1.0625rem; letter-spacing: -.01em; }
.iq-qr { display: none; margin: 0; align-items: center; gap: .9rem; }
.iq-qr__code { width: 96px; height: 96px; background: #fff; border-radius: 14px; padding: 8px; box-shadow: var(--iq-shadow); }
.iq-qr__code svg { width: 100%; height: 100%; display: block; }
.iq-qr figcaption { font-size: var(--wp--preset--font-size--xs); max-width: 9rem; line-height: 1.35; opacity: .8; }
@media (min-width: 1024px) and (hover: hover) { .iq-qr.is-ready { display: flex; } }
.iq-showcase .iq-app-buttons { justify-content: center; margin-top: 0; }
.iq-footer .iq-app-buttons { margin-top: 1.25rem; }
.iq-editor-note { padding: 1rem 1.25rem; border: 1px dashed var(--iq-accent); border-radius: var(--iq-r-md); font-size: .875rem; background: var(--iq-rose-soft); color: var(--iq-ink); }

/* ---------- Behandlungskarten ---------- */
.iq-tcards { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 330px), 1fr)); gap: clamp(1rem, 2.5vw, 1.75rem); }
.iq-tcard { display: flex; flex-direction: column; background: var(--iq-white); border-radius: var(--iq-r-lg); overflow: hidden; border: 1px solid var(--iq-line); transition: transform .4s var(--iq-ease), box-shadow .4s var(--iq-ease); }
.iq-tcard:hover { transform: translateY(-4px); box-shadow: var(--iq-shadow-float); }
.iq-tcard__media { display: block; aspect-ratio: 16 / 11; overflow: hidden; position: relative; }
.iq-tcard__img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--iq-ease); }
.iq-tcard:hover .iq-tcard__img, .iq-tcard:hover .iq-tcard__art .iq-icon { transform: scale(1.05); }
.iq-tcard__art { position: absolute; inset: 0; display: grid; place-items: center; color: rgba(37,37,43,.75); overflow: hidden; }
.iq-tcard__art .iq-icon { width: 64px; height: 64px; stroke-width: 1.2; position: relative; z-index: 1; transition: transform .8s var(--iq-ease); }
.iq-tcard__art--rose { background: linear-gradient(140deg, var(--iq-rose-soft), var(--iq-rose)); }
.iq-tcard__art--sage { background: linear-gradient(140deg, var(--iq-sage-soft), var(--iq-sage)); }
.iq-tcard__art--cream { background: linear-gradient(140deg, #fff, var(--iq-cream) 60%, var(--iq-rose-soft)); }
.iq-tcard__orb { position: absolute; width: 70%; aspect-ratio: 1; border-radius: 50%; background: radial-gradient(circle at 35% 30%, rgba(255,255,255,.85), rgba(255,255,255,0) 65%); top: -20%; right: -15%; }
.iq-tcard__orb--2 { width: 45%; top: auto; right: auto; bottom: -15%; left: -10%; background: radial-gradient(circle at 50% 50%, rgba(255,255,255,.5), rgba(255,255,255,0) 70%); }
.iq-tcard__body { padding: 1.5rem 1.6rem 1.75rem; display: flex; flex-direction: column; gap: .6rem; flex: 1; }
.iq-tcard__title { margin: 0; font-size: var(--wp--preset--font-size--xl); }
.iq-tcard__title a { color: inherit; text-decoration: none; }
.iq-tcard__title a:hover { color: var(--iq-accent-strong); }
.iq-tcard__body > p { color: var(--iq-muted); margin: 0; font-size: var(--wp--preset--font-size--sm); }
.iq-tcard__chips, .iq-chips, .iq-result__chips { list-style: none; margin: .25rem 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: .4rem; }
.iq-tcard__chips a, .iq-chips li, .iq-result__chips li { display: inline-block; font-size: .8125rem; padding: .35rem .75rem; border-radius: 999px; background: var(--iq-cream); color: var(--iq-ink); text-decoration: none; transition: background-color .2s; }
.iq-tcard__chips a:hover { background: var(--iq-rose-soft); }
.iq-tcard .iq-btn { margin-top: auto; align-self: flex-start; }

/* ---------- Vertrauen ---------- */
.iq-trust__cols { gap: clamp(2rem, 5vw, 5rem) !important; }
.iq-trust__intro { position: sticky; top: calc(var(--iq-header-h) + 2rem); align-self: flex-start; }
.iq-trust__list { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 250px), 1fr)); gap: 1rem; }
.iq-trust__list .iq-feature { background: rgba(255,255,255,.65); margin: 0; }
@media (max-width: 781px) { .iq-trust__intro { position: static; } }

/* ---------- Persönlich ---------- */
.iq-personal__card {
	border-radius: var(--iq-r-xl); padding: clamp(2rem, 6vw, 5rem); overflow: hidden; position: relative;
	background: radial-gradient(60% 90% at 100% 0%, rgba(217,181,173,.7), transparent 60%), radial-gradient(60% 80% at 0% 100%, rgba(168,184,165,.5), transparent 60%), var(--iq-cream);
}
.iq-personal__card h2 { margin-top: 0; max-width: 16ch; }
.iq-personal__visual { display: flex; justify-content: center; }
@media (max-width: 781px) { .iq-personal__visual { margin-top: 2rem; } }

/* ---------- FAQ ---------- */
.wp-block-details.is-style-faq { background: var(--iq-white); border: 1px solid var(--iq-line); border-radius: var(--iq-r-md); padding: 0; margin-bottom: .75rem; transition: box-shadow .3s; }
.wp-block-details.is-style-faq[open] { box-shadow: var(--iq-shadow); }
.wp-block-details.is-style-faq summary { list-style: none; cursor: pointer; padding: 1.25rem 3.75rem 1.25rem 1.5rem; font-family: var(--iq-head); font-weight: 700; font-size: var(--wp--preset--font-size--md); position: relative; min-height: 48px; display: flex; align-items: center; line-height: 1.35; margin: 0; }
.wp-block-details.is-style-faq summary::-webkit-details-marker { display: none; }
.wp-block-details.is-style-faq summary::after { content: ""; position: absolute; right: 1.25rem; top: 50%; width: 30px; height: 30px; margin-top: -15px; border-radius: 50%; background: var(--iq-rose-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2325252B' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M12 6v12M6 12h12'/%3E%3C/svg%3E") center/16px no-repeat; transition: transform .3s var(--iq-ease), background-color .3s; }
.wp-block-details.is-style-faq[open] summary::after { transform: rotate(45deg); background-color: var(--iq-accent); }
.wp-block-details.is-style-faq > :not(summary) { padding: 0 1.5rem; color: var(--iq-muted); margin-top: 0; }
.wp-block-details.is-style-faq > :last-child:not(summary) { padding-bottom: 1.4rem; }

/* ---------- Final-CTA ---------- */
.iq-final { padding-top: 0; }
.iq-final__card { border-radius: var(--iq-r-xl); padding: clamp(2rem, 6vw, 5rem); background: linear-gradient(135deg, var(--iq-cream) 0%, var(--iq-rose-soft) 60%, var(--iq-sage-soft) 100%); position: relative; overflow: hidden; }
.iq-final__card h2 { margin-top: 0; }
.iq-final__visual { display: flex; justify-content: center; }
@media (max-width: 781px) { .iq-final__visual { margin-top: 2.5rem; } }

/* ---------- App-Band ---------- */
.iq-appband { padding-top: clamp(2.5rem, 6vw, 4rem); padding-bottom: clamp(2.5rem, 6vw, 4rem); }
.iq-appband__inner { background: var(--iq-cream); border-radius: var(--iq-r-lg); padding: clamp(1.5rem, 4vw, 2.75rem) clamp(1.5rem, 4vw, 3rem); gap: 1.5rem; }
.iq-appband__copy { max-width: 34rem; }
.iq-appband__copy h2 { margin: 0 0 .4rem; }
.iq-appband__copy p { margin: 0; color: var(--iq-muted); }
.iq-appband .iq-app-buttons { margin-top: 0; }

/* ---------- Suche ---------- */
.iq-search { display: grid; grid-template-columns: 1.4fr 1.2fr .7fr auto; gap: .75rem; align-items: end; }
.iq-search--compact { grid-template-columns: 1.3fr 1fr auto; background: rgba(255,255,255,.82); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); border: 1px solid rgba(255,255,255,.9); padding: .75rem; border-radius: 26px; box-shadow: var(--iq-shadow-float); }
.iq-field { display: flex; flex-direction: column; gap: .35rem; min-width: 0; }
.iq-field > label { font-size: var(--wp--preset--font-size--xs); font-weight: 700; font-family: var(--iq-head); letter-spacing: .02em; color: var(--iq-ink); padding-left: .35rem; }
.iq-search--compact .iq-field > label { padding-left: 1rem; }
.iq-select, .iq-input { position: relative; display: flex; align-items: center; }
.iq-select > .iq-icon, .iq-input > .iq-icon { position: absolute; left: 1rem; color: var(--iq-accent-strong); pointer-events: none; }
.iq-select select, .iq-input input, .iq-control {
	width: 100%; min-height: 54px; font: inherit; font-size: 1rem; color: var(--iq-ink);
	background: var(--iq-white); border: 1.5px solid var(--iq-line); border-radius: 16px;
	padding: .8rem 1rem .8rem 2.75rem; appearance: none; -webkit-appearance: none;
	transition: border-color .2s, box-shadow .2s;
}
.iq-select select, .iq-input input, input.iq-control { height: 54px; line-height: 1.3; }
.iq-control { padding-left: 1rem; }
textarea.iq-control { min-height: 140px; resize: vertical; line-height: 1.5; }
.iq-select::after { content: ""; position: absolute; right: 1rem; width: 10px; height: 10px; border-right: 2px solid var(--iq-ink); border-bottom: 2px solid var(--iq-ink); transform: translateY(-3px) rotate(45deg); pointer-events: none; }
.iq-select select { padding-right: 2.5rem; text-overflow: ellipsis; }
.iq-form .iq-select select { padding-left: 1rem; }
:where(.iq-select select, .iq-input input, .iq-control):hover { border-color: var(--iq-rose); }
:where(.iq-select select, .iq-input input, .iq-control):focus { outline: none; border-color: var(--iq-accent); box-shadow: 0 0 0 4px rgba(184,121,121,.18); }
.iq-geo { position: absolute; right: .4rem; width: 44px; height: 44px; border: 0; border-radius: 12px; background: var(--iq-cream); color: var(--iq-ink); cursor: pointer; display: grid; place-items: center; }
.iq-geo:hover { background: var(--iq-rose-soft); }
.iq-geo.is-busy { opacity: .5; cursor: progress; }
.iq-input input:has(+ .iq-geo:not([hidden])) { padding-right: 3.5rem; }
.iq-search__submit { min-height: 54px; white-space: nowrap; border-radius: 16px; padding-inline: 1.5rem; }
.iq-search--compact .iq-search__submit { border-radius: 18px; }
.iq-search__hint { display: flex; gap: .5rem; align-items: center; font-size: var(--wp--preset--font-size--xs); color: var(--iq-muted); margin: 1rem 0 0; }
@media (max-width: 860px) {
	.iq-search, .iq-search--compact { grid-template-columns: 1fr 1fr; }
	.iq-field--treatment, .iq-search__submit { grid-column: 1 / -1; }
	.iq-search--compact .iq-field--loc { grid-column: 1 / -1; }
}
@media (max-width: 520px) {
	.iq-search { grid-template-columns: 1fr; }
	.iq-search > * { grid-column: 1 / -1; }
}
.iq-panel { background: var(--iq-white); border-radius: var(--iq-r-lg); padding: clamp(1.25rem, 4vw, 2.5rem); border: 1px solid var(--iq-line); box-shadow: var(--iq-shadow); margin-bottom: var(--wp--preset--spacing--60); }
.iq-panel--lift { margin-top: calc(-1 * var(--wp--preset--spacing--60)); position: relative; z-index: 2; }
.iq-panel__h { margin-top: 0; }

.iq-results { margin-top: 1.75rem; min-height: 2rem; }
.iq-results.is-loading { opacity: .55; transition: opacity .2s; }
.iq-results__count { font-family: var(--iq-head); font-weight: 700; margin: 0 0 1rem; }
.iq-results__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr)); gap: 1rem; }
.iq-result { display: grid; grid-template-columns: 64px 1fr; gap: 1rem; background: var(--iq-base); border: 1px solid var(--iq-line); border-radius: var(--iq-r-md); padding: 1.25rem; transition: box-shadow .3s, transform .3s var(--iq-ease); }
.iq-result:hover { box-shadow: var(--iq-shadow); transform: translateY(-2px); }
.iq-result__avatar { width: 64px; height: 64px; border-radius: 50%; overflow: hidden; background: linear-gradient(135deg, var(--iq-rose-soft), var(--iq-rose)); display: grid; place-items: center; font-family: var(--iq-head); font-weight: 800; font-size: 1.4rem; }
.iq-result__avatar img { width: 100%; height: 100%; object-fit: cover; }
.iq-result__kind { font-size: .75rem; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; color: var(--iq-accent-strong); }
.iq-result__title { margin: .15rem 0 .25rem; font-size: var(--wp--preset--font-size--lg); }
.iq-result__title a { color: inherit; text-decoration: none; }
.iq-result__disc, .iq-result__loc { margin: 0; font-size: var(--wp--preset--font-size--sm); color: var(--iq-muted); }
.iq-result__loc { display: flex; gap: .3rem; align-items: center; margin-top: .25rem; }
.iq-result__cta { grid-column: 1 / -1; justify-self: start; }
.iq-results__empty { text-align: center; padding: 2.5rem 1rem; background: var(--iq-cream); border-radius: var(--iq-r-md); color: var(--iq-muted); }
.iq-results__empty .iq-icon { color: var(--iq-accent); }

/* ---------- Formulare ---------- */
.iq-form { display: flex; flex-direction: column; gap: 1rem; }
.iq-form__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr)); gap: 1rem; }
.iq-req { color: var(--iq-accent-strong); }
.iq-opt { font-weight: 400; color: var(--iq-muted); }
.iq-field--check { margin-top: .25rem; }
.iq-check { display: flex; gap: .75rem; align-items: flex-start; font-size: var(--wp--preset--font-size--sm); color: var(--iq-muted); cursor: pointer; }
.iq-check input { width: 22px; height: 22px; margin: .1rem 0 0; accent-color: var(--iq-accent); flex-shrink: 0; }
.iq-error { color: #a33a3a; font-size: var(--wp--preset--font-size--xs); margin: .2rem 0 0; font-weight: 600; }
.iq-control[aria-invalid="true"] { border-color: #c45a5a; }
.iq-form__foot { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem; }
.iq-form__trust { display: inline-flex; gap: .4rem; align-items: center; margin: 0; font-size: var(--wp--preset--font-size--xs); color: var(--iq-muted); }
.iq-form__status:empty { display: none; }
.iq-form__status, .iq-form__success { display: flex; gap: .75rem; align-items: flex-start; padding: 1rem 1.25rem; border-radius: var(--iq-r-md); background: var(--iq-sage-soft); }
.iq-form__status.is-error { background: #f6e1e1; }
.iq-form__success { margin-bottom: 1rem; }
.iq-form__success p { margin: 0; }
.iq-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.iq-form button[disabled] { opacity: .6; cursor: progress; }
.iq-contactcard { background: var(--iq-white); border: 1px solid var(--iq-line); border-radius: var(--iq-r-lg); padding: clamp(1.25rem, 3vw, 2rem); box-shadow: var(--iq-shadow); }
.iq-contactcard h2 { margin-top: 0; }

/* ---------- Spezialistenprofil ---------- */
.iq-spechead { gap: 1.25rem !important; }
.iq-spechead__img img { border-radius: 50%; border: 4px solid var(--iq-white); box-shadow: var(--iq-shadow); }
.iq-spechead .wp-block-post-title { margin: 0; }
.iq-specgrid__aside > .iq-contactcard { position: sticky; top: calc(var(--iq-header-h) + 1.5rem); }
.iq-profile__facts { background: var(--iq-white); border: 1px solid var(--iq-line); border-radius: var(--iq-r-lg); padding: 1.5rem; }
.iq-badge { display: inline-block; font-size: .75rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; padding: .35rem .75rem; border-radius: 999px; background: var(--iq-rose-soft); color: var(--iq-accent-strong); }
.iq-profile__disc { font-family: var(--iq-head); font-weight: 700; font-size: var(--wp--preset--font-size--lg); margin: .75rem 0 1rem; }
.iq-profile__contact { list-style: none; padding: 0; margin: 0; display: grid; gap: .6rem; }
.iq-profile__contact li { display: flex; gap: .75rem; align-items: flex-start; }
.iq-profile__contact .iq-icon { color: var(--iq-accent-strong); flex-shrink: 0; margin-top: .15rem; }
.iq-profile__sec { margin-top: 2rem; }
.iq-profile__h { font-size: var(--wp--preset--font-size--xl); margin: 2rem 0 .75rem; }
.iq-profile__sec .iq-profile__h { margin-top: 0; }

/* ---------- Behandlung (Detail) ---------- */
.iq-thead__img img { border-radius: var(--iq-r-xl); box-shadow: var(--iq-shadow-float); }
.iq-trel__h { margin-top: 0; }
.iq-trel__list { list-style: none; margin: 0 0 2.5rem; padding: 0; display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr)); gap: 1rem; }
.iq-trel__list a { display: grid; grid-template-columns: 1fr auto; gap: .25rem 1rem; align-items: center; padding: 1.25rem 1.4rem; background: var(--iq-white); border: 1px solid var(--iq-line); border-radius: var(--iq-r-md); text-decoration: none; color: var(--iq-ink); transition: box-shadow .3s, transform .3s var(--iq-ease); height: 100%; }
.iq-trel__list a:hover { box-shadow: var(--iq-shadow); transform: translateY(-2px); }
.iq-trel__list strong { font-family: var(--iq-head); }
.iq-trel__list small { grid-column: 1; color: var(--iq-muted); font-size: var(--wp--preset--font-size--sm); }
.iq-trel__list .iq-icon { grid-row: 1 / span 2; grid-column: 2; color: var(--iq-accent); }
.iq-trel__cta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1.5rem; padding: clamp(1.5rem, 4vw, 2.5rem); border-radius: var(--iq-r-lg); background: linear-gradient(135deg, var(--iq-rose-soft), var(--iq-cream)); }
.iq-trel__cta h2 { margin: 0 0 .4rem; font-size: var(--wp--preset--font-size--xl); }
.iq-trel__cta p { margin: 0; color: var(--iq-muted); }
.iq-trel__cta .is-style-eyebrow { margin-bottom: .4rem; }

/* ---------- Brotkrumen ---------- */
.iq-crumbs ol { list-style: none; padding: 0; margin: 0 0 1.5rem; display: flex; flex-wrap: wrap; gap: .35rem; font-size: var(--wp--preset--font-size--xs); color: var(--iq-muted); }
.iq-crumbs li:not(:last-child)::after { content: "/"; margin-left: .35rem; opacity: .5; }
.iq-crumbs a { color: var(--iq-muted); text-decoration: none; }
.iq-crumbs a:hover { color: var(--iq-ink); text-decoration: underline; }

/* ---------- Magazin ---------- */
.iq-postgrid .wp-block-post-template { gap: clamp(1rem, 2.5vw, 1.75rem); }
.iq-postcard { background: var(--iq-white); border: 1px solid var(--iq-line); border-radius: var(--iq-r-lg); overflow: hidden; height: 100%; transition: transform .35s var(--iq-ease), box-shadow .35s; }
.iq-postcard:hover { transform: translateY(-3px); box-shadow: var(--iq-shadow); }
.iq-postcard .wp-block-post-featured-image { margin: 0; }
.iq-postcard .wp-block-post-featured-image:empty, .iq-postcard .wp-block-post-featured-image:not(:has(img)) { aspect-ratio: 4/3; background: linear-gradient(135deg, var(--iq-rose-soft), var(--iq-sage-soft)); }
.iq-postcard__body { padding: 1.25rem 1.4rem 1.5rem; }
.iq-postcard .wp-block-post-title { margin: .3rem 0 .5rem; }
.iq-postcard .wp-block-post-title a { text-decoration: none; color: inherit; }
.iq-postcard .wp-block-post-excerpt { color: var(--iq-muted); }
.iq-articlehead { margin-bottom: 2rem; }
.iq-meta { color: var(--iq-muted); gap: .5rem 1.25rem; }
.iq-feature img { border-radius: var(--iq-r-lg); }
.iq-sitesearch .wp-block-search__input { min-height: 54px; border-radius: 16px 0 0 16px; border: 1.5px solid var(--iq-line); padding: .8rem 1rem; }
.iq-sitesearch .wp-block-search__button { border-radius: 0 16px 16px 0; margin-left: 0; }
.iq-legal { padding-top: 1rem; }

/* ---------- Footer ---------- */
.iq-footer { margin-top: auto; }
.iq-footer a:not(.iq-store) { color: rgba(250,248,246,.78); text-decoration: none; }
.iq-footer a:not(.iq-store):hover { color: #fff; text-decoration: underline; }
.iq-footer__cols { gap: clamp(2rem, 4vw, 3rem) !important; }
.iq-footer__claim { color: rgba(250,248,246,.85); font-family: var(--iq-head); font-weight: 600; letter-spacing: -.01em; max-width: 22ch; margin-top: 1rem; }
.iq-footer__claim em { font-family: var(--iq-serif); font-weight: 400; color: var(--iq-rose); }
.iq-footer__h { font-size: .8125rem !important; letter-spacing: .14em; text-transform: uppercase; color: rgba(250,248,246,.55) !important; margin: .5rem 0 1rem; }
.iq-footer__links { list-style: none; padding: 0; margin: 0; display: grid; gap: .65rem; }
.iq-footer__links a { display: inline-block; padding: .15rem 0; }
.iq-footer__sep { border-color: rgba(250,248,246,.12) !important; margin: clamp(2.5rem, 5vw, 4rem) 0 1.5rem; opacity: 1; }
.iq-footer__bottom { color: rgba(250,248,246,.55); gap: .5rem 2rem; }
.iq-footer__bottom p { margin: 0; }

/* ---------- Sticky-CTA (mobil) ---------- */
.iq-sticky { display: none; }
@media (max-width: 781px) {
	.iq-sticky:not([hidden]) {
		display: flex; gap: .5rem; align-items: center;
		position: fixed; z-index: 60; left: .75rem; right: .75rem; bottom: calc(.75rem + env(safe-area-inset-bottom));
		padding: .45rem; border-radius: 999px;
		background: rgba(37,37,43,.9); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px);
		box-shadow: 0 20px 40px -15px rgba(37,37,43,.55);
		transform: translateY(150%); transition: transform .45s var(--iq-ease);
	}
	.iq-sticky.is-visible { transform: translateY(0); }
	.iq-sticky__btn { flex: 1; display: inline-flex; justify-content: center; align-items: center; gap: .5rem; min-height: 50px; border-radius: 999px; background: var(--iq-accent); color: #fff; font-family: var(--iq-head); font-weight: 700; text-decoration: none; }
	.iq-sticky__link { color: var(--iq-base); font-size: .875rem; font-weight: 600; padding: 0 1rem; min-height: 50px; display: inline-flex; align-items: center; text-decoration: none; }
	body.has-iq-sticky .iq-footer { padding-bottom: 6.5rem !important; }
}

/* ---------- Scroll-Animationen ---------- */
.iq-js .iq-reveal { opacity: 0; transform: translateY(24px); transition: opacity .8s var(--iq-ease), transform .8s var(--iq-ease); }
.iq-js .iq-reveal.is-in { opacity: 1; transform: none; }
.iq-js .iq-reveal:nth-child(2) { transition-delay: .08s; }
.iq-js .iq-reveal:nth-child(3) { transition-delay: .16s; }
.iq-js .iq-reveal:nth-child(4) { transition-delay: .24s; }
.iq-js .iq-reveal:nth-child(5) { transition-delay: .32s; }
.iq-js .iq-reveal:nth-child(6) { transition-delay: .4s; }
.iq-js .iq-hero__copy > * { animation: iq-in .9s var(--iq-ease) both; }
.iq-js .iq-hero__copy > :nth-child(2) { animation-delay: .08s; }
.iq-js .iq-hero__copy > :nth-child(3) { animation-delay: .16s; }
.iq-js .iq-hero__copy > :nth-child(4) { animation-delay: .24s; }
.iq-js .iq-hero__copy > :nth-child(5) { animation-delay: .32s; }
.iq-js .iq-hero__visual .iq-phone { animation: iq-phone 1.2s var(--iq-ease) .15s both; }
@keyframes iq-in { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
@keyframes iq-phone { from { opacity: 0; transform: translateY(40px) rotate(2deg); } to { opacity: 1; transform: none; } }

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
	.iq-js .iq-reveal { opacity: 1; transform: none; }
}

/* ---------- Editor ---------- */
.editor-styles-wrapper .iq-reveal { opacity: 1 !important; transform: none !important; }
.editor-styles-wrapper .iq-qr { display: flex; }

/* ---------- Icon-Masken (generiert aus inc/helpers.php) ---------- */
.iq-ico--pin { --iq-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21s-7-6.2-7-11.5A7 7 0 0 1 19 9.5C19 14.8 12 21 12 21Z'/%3E%3Ccircle cx='12' cy='9.5' r='2.5'/%3E%3C/svg%3E"); }
.iq-ico--compare { --iq-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='7' height='16' rx='2'/%3E%3Crect x='14' y='4' width='7' height='16' rx='2'/%3E%3Cpath d='M6.5 9h0M17.5 9h0'/%3E%3C/svg%3E"); }
.iq-ico--info { --iq-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 11v6M12 7.5v.01'/%3E%3C/svg%3E"); }
.iq-ico--heart { --iq-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20s-7.5-4.6-9-9.5C1.9 6.9 4.3 4 7.4 4c2 0 3.6 1.1 4.6 2.6C13 5.1 14.6 4 16.6 4c3.1 0 5.5 2.9 4.4 6.5C19.5 15.4 12 20 12 20Z'/%3E%3C/svg%3E"); }
.iq-ico--chat { --iq-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5h16v11H9l-5 4V5Z'/%3E%3Cpath d='M8 9.5h8M8 12.5h5'/%3E%3C/svg%3E"); }
.iq-ico--checklist { --iq-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='3' width='16' height='18' rx='3'/%3E%3Cpath d='m8 8.5 1.5 1.5L12 7.5M8 14.5l1.5 1.5L12 13.5M14.5 9h2M14.5 15h2'/%3E%3C/svg%3E"); }
.iq-ico--shield { --iq-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3 5 6v5.5c0 4.3 3 8 7 9.5 4-1.5 7-5.2 7-9.5V6l-7-3Z'/%3E%3Cpath d='m9 12 2 2 4-4'/%3E%3C/svg%3E"); }
.iq-ico--lock { --iq-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='10.5' width='14' height='10' rx='2.5'/%3E%3Cpath d='M8 10.5V8a4 4 0 0 1 8 0v2.5'/%3E%3C/svg%3E"); }
.iq-ico--eye { --iq-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2.5 12S6 5.5 12 5.5 21.5 12 21.5 12 18 18.5 12 18.5 2.5 12 2.5 12Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E"); }
.iq-ico--list { --iq-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M9 6h11M9 12h11M9 18h11M4.5 6h0M4.5 12h0M4.5 18h0'/%3E%3C/svg%3E"); }
.iq-ico--profile { --iq-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8.5' r='3.5'/%3E%3Cpath d='M5 20c.8-3.5 3.6-5.5 7-5.5s6.2 2 7 5.5'/%3E%3C/svg%3E"); }
.iq-ico--book { --iq-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 5.5C4 4.7 4.7 4 5.5 4H11v16H5.5c-.8 0-1.5-.7-1.5-1.5v-13ZM20 5.5c0-.8-.7-1.5-1.5-1.5H13v16h5.5c.8 0 1.5-.7 1.5-1.5v-13Z'/%3E%3C/svg%3E"); }
.iq-ico--search { --iq-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='6.5'/%3E%3Cpath d='m20 20-4.2-4.2'/%3E%3C/svg%3E"); }
.iq-ico--sparkle { --iq-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3c.6 4.2 2.8 6.4 7 7-4.2.6-6.4 2.8-7 7-.6-4.2-2.8-6.4-7-7 4.2-.6 6.4-2.8 7-7Z'/%3E%3C/svg%3E"); }
.iq-ico--check { --iq-ico: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m5 12.5 4.5 4.5L19 7.5'/%3E%3C/svg%3E"); }
