/*
Theme Name: immobiliengefluester
Theme URI: http://example.com
Author: Your name
Author URI: http://pinegrow.com/
Description: This theme was created with Pinegrow Web Editor
Version: 1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: immobiliengefluester
*/

html {
	scroll-behavior: smooth;
	/* Offset in-page anchors so sticky header does not cover the target */
	scroll-padding-top: 5.5rem;
}

html:has(body.admin-bar) {
	scroll-padding-top: calc(5.5rem + 100px);
}

@media screen and (max-width: 782px) {
	html:has(body.admin-bar) {
		scroll-padding-top: calc(5.5rem + 46px);
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}

/* Remove link underlines globally */
a {
	text-decoration: none !important;
}
a:hover {
	text-decoration: none !important;
}

/* Pricing modules grid: last card spans full width when odd count (sm+) */
@media (min-width: 640px) {
	.pricing-modules-grid > *:last-child:nth-child(odd) {
		grid-column: span 2;
	}
}

/* Block editor: inner blocks participate in parent grid (fix narrow Red Card) */
.pricing-base-modules-inner .block-editor-inner-blocks,
.pricing-base-modules-inner .block-editor-block-list__layout,
.pricing-flexible-inner .block-editor-inner-blocks,
.pricing-flexible-inner .block-editor-block-list__layout {
	display: contents;
}

/* Pricing Flexible: last card full width when odd count (1, 3, 5 items) */
@media (min-width: 640px) {
	.pricing-flexible-inner > *:last-child:nth-child(odd) {
		grid-column: span 2;
	}
}

/* Footer CTA avatar: fill circle despite WP img.wp-image-* height:auto */
#kontakt-in-page .rounded-full img[class*='wp-image-'] {
	height: 100% !important;
	width: 100% !important;
	object-fit: cover;
	object-position: center;
}

/* nav-footer-all consent row (class on wrapper element) */
 .jet-form-builder__field-description {
	font-size: 9px !important;
	line-height: 1.32 !important;
}

/* Privacy title/label */
.form-sm-print > label,
.form-sm-print .jet-form__label,
.form-sm-print .jet-form-builder__label,
.form-sm-print .jet-form-builder__label-text,
.form-sm-print strong {
	display: block;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.15 !important;
	margin-bottom: 3px;
}

/* Checkbox red even if checkbox is inside or near the wrapper */
.form-sm-print input[type="checkbox"],
.form-sm-print ~ * input[type="checkbox"],
.form-sm-print + * input[type="checkbox"] {
	accent-color: #b91c1c;
	width: 14px;
	height: 14px;
	vertical-align: middle;
}

.form-sm-print input[type="checkbox"]:focus,
.form-sm-print input[type="checkbox"]:focus-visible,
.form-sm-print ~ * input[type="checkbox"]:focus,
.form-sm-print ~ * input[type="checkbox"]:focus-visible,
.form-sm-print + * input[type="checkbox"]:focus,
.form-sm-print + * input[type="checkbox"]:focus-visible {
	outline: 2px solid rgba(185, 28, 28, 0.35);
	outline-offset: 1px;
}

/* FAQ accordion: open row — border, header tint, red title + chevron (panel gets .block when open) */
.accordion__wrapper:has(.accordion-content.block) {
	border-color: var(--color-img_red-200, #d6a39f);
}
.accordion__wrapper:has(.accordion-content.block) .accordion__btn {
	background-color: var(--color-stone-50, #fafaf9);
}
.accordion__wrapper:has(.accordion-content.block) .accordion__btn--title {
	color: var(--color-img_red-500, #9d3838);
}
.accordion__wrapper:has(.accordion-content.block) .accordion__btn-icon {
	color: var(--color-img_red-500, #9d3838);
}
