@font-face{font-family:'Tahu';src:url('selling/tahu.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
:root { --sb-radius: 22px; --sb-shadow: 0 16px 50px rgba(37, 44, 31, .10); }
* { box-sizing: border-box; }
body { margin: 0; }
.wp-site-blocks { overflow: hidden; }
.sb-header { position: absolute; z-index: 5; width: 100%; }
.sb-header a { text-decoration: none; }
.sb-brand { letter-spacing: -.04em; }
.sb-hero { min-height: 760px; display: flex; align-items: flex-end; position: relative; }
.sb-hero:after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(25,31,20,.7), rgba(25,31,20,.08)); }
.sb-hero > .wp-block-cover__inner-container { position: relative; z-index: 1; }
.sb-kicker { font-family: Montserrat, sans-serif; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.sb-card { height: 100%; border-radius: var(--sb-radius); box-shadow: var(--sb-shadow); overflow: hidden; }
.sb-card img { aspect-ratio: 4 / 3; object-fit: cover; }
.sb-estate-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); align-items: start; gap: 24px; }
.sb-estate { background: white; border-radius: var(--sb-radius); box-shadow: var(--sb-shadow); overflow: hidden; }
.sb-estate img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; }
.sb-estate__body { padding: 24px; }
.sb-estate__meta { color: #6d6d68; margin: 0 0 6px; }
.sb-estate h3 { margin: 0 0 8px; font-size: 1.35rem; }
.sb-estate__price { color: #82b02a; font-weight: 700; }
.sb-detail-page { background: #f6f5f0; }
.sb-detail { position: relative; margin: 0; color: #4a4a49; font-size: 15px; line-height: 1.5; }
.sb-detail-hero { position: relative; margin-bottom: 34px; }
.sb-gallery { position: relative; margin: 0 calc(50% - 50vw); }
.sb-gallery__mosaic { position: relative; display: grid; height: min(650px,64vw); max-height: 650px; min-height: 430px; grid-template: repeat(2,minmax(0,1fr)) / 2fr repeat(2,1fr); gap: 3px; overflow: hidden; background: #e7e6df; }
.sb-gallery__item { display: block; min-width: 0; overflow: hidden; background: #deddd6; }
.sb-gallery__main { grid-row: 1 / -1; }
.sb-gallery__item img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
.sb-gallery__item:hover img { transform: scale(1.015); }
.sb-gallery__all { position: absolute; right: 24px; bottom: 22px; display: inline-flex; min-height: 42px; align-items: center; gap: 9px; padding: 8px 14px; border: 0; border-radius: 999px; background: rgba(255,255,255,.94); color: #3f463b; box-shadow: 0 5px 18px rgba(0,0,0,.18); cursor: pointer; font: 600 .88rem Montserrat,sans-serif; }
.sb-gallery__all svg { width: 20px; height: 20px; }
.sb-gallery__hidden { display: none; }
.sb-detail-actions { position: relative; z-index: 6; display: flex; flex-wrap: wrap; width: min(1180px,100%); align-items: center; gap: 10px; margin-inline: auto; padding: 16px 0 0; transition: opacity .2s ease,transform .2s ease; }
.sb-detail-actions__button { display: inline-flex; min-height: 50px; align-items: center; gap: 10px; padding: 10px 20px; border: 1px solid rgba(74,74,73,.2); border-radius: 999px; background: #fff; color: #3f463b; box-shadow: 0 2px 8px rgba(37,44,31,.06); text-decoration: none; transition: background .2s ease,border-color .2s ease,color .2s ease,transform .2s ease; }
.sb-detail-actions__button:hover,.sb-detail-actions__button:focus-visible { border-color: #82b02a; background: #edf5df; color: #385214; transform: translateY(-1px); }
.sb-detail-actions__button svg { width: 22px; height: 22px; flex: 0 0 22px; color: #63891f; transition: color .2s ease; }
.sb-detail-actions__button span { white-space: nowrap; font-size: .92rem; font-weight: 700; }
.sb-detail-actions__button--share { margin-left: auto; border-color: #82b02a; background: #82b02a; color: #fff; box-shadow: 0 4px 14px rgba(130,176,42,.28); }
.sb-detail-actions__button--share svg { color: #fff; }
.sb-detail-actions__button--share:hover,.sb-detail-actions__button--share:focus-visible { border-color: #6f9822; background: #6f9822; color: #fff; }
.sb-detail-actions__button--share:hover svg,.sb-detail-actions__button--share:focus-visible svg { color: #fff; }
.sb-detail-actions.is-sticky { position: fixed; z-index: 1100; top: 50%; right: auto; bottom: auto; left: 18px; width: auto; flex-direction: column; flex-wrap: nowrap; justify-content: center; gap: 8px; margin: 0; padding: 0; transform: translateY(-50%); }
.sb-detail-actions.is-sticky .sb-detail-actions__button { width: 46px; min-height: 46px; justify-content: flex-start; overflow: hidden; margin: 0; padding: 10px 11px; border-color: rgba(255,255,255,.65); background: rgba(63,70,59,.93); color: #fff; box-shadow: 0 7px 20px rgba(37,44,31,.2); }
.sb-detail-actions.is-sticky .sb-detail-actions__button svg { color: #fff; }
.sb-detail-actions.is-sticky .sb-detail-actions__button--share { border-color: #82b02a; background: #82b02a; box-shadow: 0 7px 20px rgba(130,176,42,.34); }
.sb-detail-actions.is-sticky .sb-detail-actions__button span { max-width: 0; overflow: hidden; opacity: 0; transition: max-width .22s ease,opacity .16s ease,margin .22s ease; }
.sb-detail-actions.is-sticky .sb-detail-actions__button:hover,.sb-detail-actions.is-sticky .sb-detail-actions__button:focus-visible { width: auto; min-width: 46px; background: #63891f; transform: none; }
.sb-detail-actions.is-sticky .sb-detail-actions__button--share:hover,.sb-detail-actions.is-sticky .sb-detail-actions__button--share:focus-visible { background: #6f9822; }
.sb-detail-actions.is-sticky .sb-detail-actions__button:hover span,.sb-detail-actions.is-sticky .sb-detail-actions__button:focus-visible span { max-width: 170px; margin-left: 2px; opacity: 1; }
.sb-detail-mobile-cta { display: none; }
.sb-detail__intro { display: flex; max-width: 1180px; align-items: flex-end; justify-content: space-between; gap: 36px; margin: 0 auto; padding: 6px 0 28px; border-bottom: 1px solid rgba(74,74,73,.15); }
.sb-detail__heading { min-width: 0; }
.sb-detail__heading h1 { max-width: 880px; margin: 0; color: #3f463b; font-family: Montserrat,sans-serif; font-size: clamp(1.7rem,3vw,2.65rem); line-height: 1.13; text-align: left; }
.sb-detail__heading h1 > span,.sb-detail__heading h1 small { display: block; }
.sb-detail__heading h1 small { margin-top: 7px; color: #5e615b; font-family: "Source Sans 3","Source Sans Pro",sans-serif; font-size: .56em; font-weight: 450; line-height: 1.35; }
.sb-detail__meta { margin: 14px 0 2px; color: #5f625c; font-size: .96rem; }
.sb-detail__reference { margin: 0; color: #737771; font-size: .87rem; }
.sb-detail__price { flex: 0 0 auto; text-align: right; }
.sb-detail__price strong { display: block; color: #63891f; font-family: Montserrat,sans-serif; font-size: clamp(1.5rem,2.5vw,2.1rem); font-weight: 650; line-height: 1.15; white-space: nowrap; }
.sb-detail__price span { display: block; margin-top: 5px; color: #737771; font-size: .85rem; }
.sb-detail__badge { display: inline-block; margin: 12px 0 0; padding: 5px 11px; border-radius: 999px; background: #eb991d; color: white; font-family: Montserrat,sans-serif; font-size: .78rem; font-weight: 700; }
.sb-detail__badge--offer { background: #a1d8f7; color: #1b5272; }
.sb-detail-offer-notice { display: flex; width: min(1180px,calc(100% - 32px)); margin: 0 auto 18px; padding: 14px 18px; align-items: center; gap: 10px 18px; border-left: 4px solid #4aa3d8; border-radius: 10px; background: #eaf6fd; color: #4a4a49; }
.sb-detail-offer-notice strong { color: #1b5272; font: 700 .88rem/1.3 Montserrat,sans-serif; white-space: nowrap; }
.sb-detail-offer-notice span { font-size: .86rem; line-height: 1.45; }
.sb-detail__facts { display: grid; max-width: 1180px; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; margin: 24px auto 34px; padding: 19px 22px; border-radius: 14px; background: #fff; box-shadow: 0 8px 24px rgba(37,44,31,.06); }
.sb-detail__fact { display: flex; min-width: 0; align-items: center; gap: 12px; padding: 9px 18px; border-right: 1px solid #ecece7; }
.sb-detail__fact:nth-child(3n) { border-right: 0; }
.sb-detail__fact-icon { display: grid; width: 42px; height: 42px; flex: 0 0 42px; place-items: center; color: #82b02a; }
.sb-detail__fact-icon svg { width: 35px; height: 35px; }
.sb-detail__fact strong,.sb-detail__fact small { display: block; }
.sb-detail__fact strong { color: #4a4a49; font-family: Montserrat,sans-serif; font-size: 1rem; font-weight: 600; line-height: 1.2; }
.sb-detail__fact small { margin-top: 3px; color: #737771; font-size: .78rem; }
.sb-detail-layout { display: grid; max-width: 1180px; grid-template-columns: minmax(0,1.9fr) minmax(300px,.82fr); align-items: start; gap: 28px; margin: 0 auto; }
.sb-detail-main { display: grid; gap: 22px; min-width: 0; }
.sb-detail-columns { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; align-items: start; min-width: 0; }
.sb-detail-columns > * { min-width: 0; }
.sb-detail-sections { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 22px; margin: 0; }
.sb-data-section { overflow: hidden; padding: 0; border-radius: 14px; background: #fff; box-shadow: 0 8px 24px rgba(37,44,31,.055); }
.sb-data-section h2 { margin: 0; padding: 22px 26px 18px; color: #4a4a49; font-family: Montserrat,sans-serif; font-size: 1.14rem; font-weight: 600; line-height: 1.25; }
.sb-data-grid { margin: 0; }
.sb-data-row { display: grid; grid-template-columns: minmax(0,1fr) minmax(140px,.78fr); gap: 18px; padding: 10px 26px; }
.sb-data-row:nth-child(odd) { background: #f5f5f2; }
.sb-data-row dt { color: #5d605a; font-weight: 450; }
.sb-data-row dd { margin: 0; color: #4a4a49; font-weight: 450; text-align: left; overflow-wrap: anywhere; }
.sb-detail__description { position: relative; padding-bottom: 12px; background: linear-gradient(145deg,#fff 0%,#fbfcf8 100%); }
.sb-detail__description-copy { width: auto; max-width: none; margin: 0 26px 12px; padding: 2px 0 1px; }
.sb-detail__description p { margin-top: 0; margin-bottom: 1.25em; line-height: 1.78; }
.sb-detail__description-copy > p:first-child { color: #3f463b; font-size: 1.06rem; font-weight: 650; line-height: 1.72; }
.sb-description-list { display: grid; gap: .55rem; margin: 1.35rem 0 1.5rem; padding: 0; list-style: none; }
.sb-description-list li { position: relative; padding-left: 1.75rem; line-height: 1.72; }
.sb-description-list li::before { position: absolute; top: .06em; left: 0; color: #63891f; content: "✓"; font-family: Montserrat,sans-serif; font-weight: 700; }
.sb-feature-list { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0 26px 24px; list-style: none; }
.sb-feature-list li { padding: 6px 10px; border-radius: 999px; background: #edf5df; color: #385214; font-size: .82rem; font-weight: 600; }
.sb-energy-card { overflow: hidden; border-radius: 14px; background: #fff; box-shadow: 0 8px 24px rgba(37,44,31,.055); }
.sb-energy-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; padding: 22px 26px 18px; border-bottom: 1px solid #e7e7e1; }
.sb-energy-title-wrap { display: flex; align-items: center; gap: 13px; }
.sb-energy-icon { display: grid; width: 42px; height: 42px; flex: 0 0 42px; place-items: center; border-radius: 50%; background: #f1f6e8; color: #82b02a; }
.sb-energy-icon svg { width: 22px; height: 22px; }
.sb-energy-card h2 { margin: 0; color: #4a4a49; font-size: 1.14rem; font-weight: 600; line-height: 1.25; }
.sb-energy-subtitle { margin: 4px 0 0; color: #737771; font-size: 13px; }
.sb-energy-meta { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 18px; margin: 0; }
.sb-energy-meta div { min-width: 116px; }
.sb-energy-meta dt { margin: 0 0 2px; color: #737771; font-size: 12px; }
.sb-energy-meta dd { margin: 0; color: #4a4a49; font-size: 15px; font-weight: 600; }
.sb-energy-body { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px; padding: 24px 26px 26px; }
.sb-energy-body--single { grid-template-columns: minmax(0,1fr); max-width: 520px; }
.sb-energy-metric { min-width: 0; padding: 16px 18px 18px; border: 1px solid rgba(74,74,73,.12); border-radius: 13px; background: #fbfbf8; }
.sb-energy-metric__head { display: flex; align-items: center; gap: 14px; margin-bottom: 16px; }
.sb-energy-class { display: grid; width: 54px; height: 54px; flex: 0 0 54px; place-items: center; border-radius: 13px; color: #fff; font-family: Montserrat,sans-serif; font-size: 23px; font-weight: 700; }
.sb-energy-metric__copy { min-width: 0; text-align: left; }
.sb-energy-metric__value { display: block; min-width: 0; margin: 0; color: #4a4a49; }
.sb-energy-metric__number { color: #4a4a49; font-family: Montserrat,sans-serif; font-size: 27px; font-weight: 700; letter-spacing: -.01em; line-height: 1.05; }
.sb-energy-metric__unit { margin-left: 5px; color: #737771; font-size: 12px; font-weight: 400; white-space: nowrap; }
.sb-energy-metric__name { margin: 5px 0 0; color: #4a4a49; font-family: Montserrat,sans-serif; font-size: 13.5px; font-weight: 600; }
.sb-energy-metric__help { color: #737771; font-weight: 400; }
.sb-energy-scale { display: grid; grid-template-columns: 1.18fr 1.08fr repeat(7,1fr); gap: 3px; width: 100%; }
.sb-energy-scale__step { position: relative; display: grid; height: 26px; place-items: center; border-radius: 3px; color: #fff; font-size: 11px; font-weight: 700; }
.sb-energy-scale__step.is-current::after { position: absolute; bottom: -8px; left: 50%; width: 0; height: 0; border-right: 6px solid transparent; border-bottom: 7px solid #4a4a49; border-left: 6px solid transparent; content: ""; transform: translateX(-50%); }
.sb-energy-scale__caption { margin: 11px 0 0; color: #737771; font-size: 12px; }
.sb-energy-technology { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); margin: 0; border-top: 1px solid #e7e7e1; }
.sb-energy-technology div { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 15px; padding: 11px 26px; }
.sb-energy-technology div:nth-child(odd) { background: #f5f5f2; }
.sb-energy-technology dt,.sb-energy-technology dd { margin: 0; font-weight: 450; }
.sb-energy-class--3,.sb-energy-class--4,.sb-energy-class--5,.sb-energy-class--6,
.sb-energy-scale__step--3,.sb-energy-scale__step--4,.sb-energy-scale__step--5,.sb-energy-scale__step--6 { color: #3f463b; }
.sb-energy-class--0,.sb-energy-scale__step--0 { background: #2f967d; }
.sb-energy-class--1,.sb-energy-scale__step--1 { background: #55aa77; }
.sb-energy-class--2,.sb-energy-scale__step--2 { background: #83bb72; }
.sb-energy-class--3,.sb-energy-scale__step--3 { background: #afd070; }
.sb-energy-class--4,.sb-energy-scale__step--4 { background: #d4dd69; }
.sb-energy-class--5,.sb-energy-scale__step--5 { background: #f0d75d; }
.sb-energy-class--6,.sb-energy-scale__step--6 { background: #eead58; }
.sb-energy-class--7,.sb-energy-scale__step--7 { background: #dd7458; }
.sb-energy-class--8,.sb-energy-scale__step--8 { background: #b7223c; }
.sb-internal-text { margin: 0; padding: 24px; border: 2px dashed #d99700; border-radius: 14px; background: #fff8e8; }
.sb-internal-text h2 { margin-top: 0; font-size: 1.25rem; }
.sb-internal-text h3 { margin-top: 24px; font-size: 1rem; }
/* Geschützte Inhalte sind über die Seite verteilt und bleiben durchgehend gekennzeichnet. */
.sb-restricted { position: relative; padding: 30px 12px 12px; border: 2px dashed #d99700; border-radius: 14px; background: #fff8e8; }
.sb-restricted + .sb-restricted { margin-top: -6px; }
.sb-restricted__flag { position: absolute; top: 9px; left: 14px; margin: 0; color: #9a6c00; font-family: Montserrat,sans-serif; font-size: .68rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.sb-restricted > .sb-data-section { box-shadow: none; }
.sb-restricted .sb-detail__description-copy { margin: 0; padding: 4px 14px 10px; }
.sb-restricted .sb-detail__description-copy h3 { margin: 0 0 6px; font-size: 1rem; }
.sb-restricted-inline { padding: 1px 8px; border: 1px dashed #d99700; border-radius: 999px; background: #fff8e8; color: #8a6100; font-size: .92em; }
.sb-tour-embed { overflow: hidden; margin: 0 26px; border: 1px solid rgba(74,74,73,.2); border-radius: 10px; background: #efeee8; aspect-ratio: 16/9; }
.sb-tour-embed iframe { display: block; width: 100%; height: 100%; border: 0; }
.sb-tour-section__note { margin: 10px 26px 20px; font-size: .84rem; }
.sb-detail-sidebar { position: sticky; top: 24px; display: grid; gap: 18px; min-width: 0; }
.sb-contact-card,.sb-demand-card,.sb-inquiry-card,.sb-region-card { padding: 20px; border-radius: 14px; background: #fff; box-shadow: 0 8px 24px rgba(37,44,31,.055); }
.sb-contact-card .sb-kicker,.sb-demand-card .sb-kicker,.sb-region-card .sb-kicker { margin: 0 0 6px; color: #63891f; font-size: .72rem; }
.sb-contact-card h2,.sb-demand-card h2,.sb-inquiry-card h2,.sb-region-card h2 { margin: 0 0 13px; color: #4a4a49; font-family: Montserrat,sans-serif; font-size: 1.14rem; font-weight: 600; }
.sb-contact-card p { margin: 0 0 13px; }
.sb-contact-card p:last-child { margin-bottom: 0; }
.sb-contact-card a { color: #4f741a; font-weight: 600; text-decoration: none; }
.sb-contact-card__list { display: grid; gap: 12px; margin: 0; padding: 0; list-style: none; }
.sb-contact-card__list li { display: grid; grid-template-columns: 20px minmax(0,1fr); align-items: start; gap: 11px; }
.sb-contact-card__list svg { width: 20px; height: 20px; margin-top: 1px; color: #63891f; }
.sb-demand-card { border-left: 4px solid #eb991d; background: #fff8ea; }
.sb-region-card { padding: 0; overflow: hidden; background: linear-gradient(145deg,#63891f 0%,#456915 100%); color: #fff; }
.sb-region-card__visual { position: relative; aspect-ratio: 16 / 7; background: #dfe7d4; }
.sb-region-card__image { display: block; width: 100%; height: 100%; object-fit: cover; }
.sb-region-card__visual::after { position: absolute; inset: 0; background: linear-gradient(180deg,transparent 45%,rgba(37,54,16,.38)); content: ""; }
.sb-region-card__crest { position: absolute; right: 17px; bottom: -25px; z-index: 1; display: grid; width: 58px; height: 58px; padding: 7px; place-items: center; border: 3px solid #fff; border-radius: 50%; background: #fff; box-shadow: 0 5px 15px rgba(26,39,12,.2); }
.sb-region-card__crest img { display: block; max-width: 100%; max-height: 100%; object-fit: contain; }
.sb-region-card__content { padding: 24px; }
.sb-region-card--unavailable { padding: 24px; }
.sb-region-card .sb-kicker,.sb-region-card h2 { color: #fff; }
.sb-region-card__intro { margin: -7px 0 17px; color: rgba(255,255,255,.84); font-size: .88rem; line-height: 1.45; }
.sb-region-card__price { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: baseline; gap: 3px 12px; padding: 13px 0; border-top: 1px solid rgba(255,255,255,.24); border-bottom: 1px solid rgba(255,255,255,.24); }
.sb-region-card__price > span:first-child { color: rgba(255,255,255,.78); font-size: .78rem; }
.sb-region-card__price strong { color: #fff; font: 650 1.05rem/1.2 Montserrat,sans-serif; text-align: right; white-space: nowrap; }
.sb-region-card__trend { grid-column: 2; font-size: .75rem; font-weight: 700; text-align: right; white-space: nowrap; }
.sb-region-card__trend--up,.sb-region-card__trend--down,.sb-region-card__trend--flat { color: #fff; }
.sb-region-card__demand { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 3px 10px; padding: 14px 0 2px; }
.sb-region-card__demand > span:first-child { color: rgba(255,255,255,.78); font-size: .78rem; }
.sb-region-card__demand strong { font: 700 .86rem/1.25 Montserrat,sans-serif; }
.sb-region-card__demand-index { grid-column: 1 / -1; color: rgba(255,255,255,.78); font-size: .72rem; }
.sb-region-card__meter { grid-column: 1 / -1; height: 5px; margin-top: 5px; overflow: hidden; border-radius: 99px; background: rgba(255,255,255,.24); }
.sb-region-card__meter i { display: block; height: 100%; border-radius: inherit; background: #fff; }
.sb-region-card__areas { margin-top: 15px; }
.sb-region-card__areas > span { display: block; margin-bottom: 8px; color: rgba(255,255,255,.78); font-size: .78rem; }
.sb-region-card__areas ul { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; list-style: none; }
.sb-region-card__areas li { padding: 5px 8px; border-radius: 999px; background: rgba(255,255,255,.15); color: #fff; font-size: .76rem; font-weight: 600; line-height: 1.25; }
.sb-region-card__faqs { margin-top: 17px; border-top: 1px solid rgba(255,255,255,.24); }
.sb-region-card__faqs h3 { margin: 14px 0 5px; color: #fff; font: 700 .82rem/1.3 Montserrat,sans-serif; }
.sb-region-card__faqs details { border-bottom: 1px solid rgba(255,255,255,.2); }
.sb-region-card__faqs summary { position: relative; padding: 9px 18px 9px 0; color: #fff; cursor: pointer; font-size: .78rem; font-weight: 650; line-height: 1.35; list-style: none; }
.sb-region-card__faqs summary::-webkit-details-marker { display: none; }
.sb-region-card__faqs summary::after { position: absolute; top: 9px; right: 1px; content: "+"; font-size: 1rem; line-height: 1; }
.sb-region-card__faqs details[open] summary::after { content: "−"; }
.sb-region-card__faqs p { margin: 0 0 10px; color: rgba(255,255,255,.84); font-size: .76rem; line-height: 1.48; }
.sb-region-card__link { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 18px; padding: 11px 13px; border: 2px solid #fff; border-radius: 999px; background: #fff; color: #456915; font: 700 .8rem/1.25 Montserrat,sans-serif; text-decoration: none; }
.sb-region-card__link:hover,.sb-region-card__link:focus-visible { background: transparent; color: #fff; text-decoration: none; }
.sb-region-card__link span { font-size: 1.15rem; line-height: 1; }
.sb-region-card__stand { display: block; margin-top: 9px; color: rgba(255,255,255,.68); font-size: .7rem; }
.sb-inquiry-card form { display: grid; gap: 9px; }
.sb-inquiry-card form > label { display: grid; gap: 3px; color: #5d605a; font-size: .82rem; }
.sb-inquiry-card input:not([type="checkbox"]),.sb-inquiry-card textarea { width: 100%; padding: 7px 2px; border: 0; border-bottom: 1px solid #d8d9d3; border-radius: 0; background: transparent; color: #3f463b; font: inherit; }
.sb-inquiry-card textarea { padding-top: 4px; }
.sb-inquiry-card input:not([type="checkbox"]),.sb-inquiry-card textarea,.sb-inquiry-card__check span { font-weight: 400; letter-spacing: 0; }
.sb-inquiry-card__check span { color: #5d605a; font-size: .8rem; }
.sb-inquiry-card input:focus,.sb-inquiry-card textarea:focus { outline: 0; border-bottom-color: #82b02a; box-shadow: 0 1px 0 #82b02a; }
.sb-inquiry-card form > label { color: #6d706a; font-size: .76rem; font-weight: 600; letter-spacing: .02em; }
.sb-inquiry-phone { display: grid; gap: 4px; }
.sb-inquiry-phone__label { color: #6d706a; font-size: .76rem; font-weight: 600; letter-spacing: .02em; }
.sb-inquiry-phone__row { display: grid; grid-template-columns: 118px minmax(0,1fr); align-items: end; gap: 10px; }
.sb-inquiry-phone__row > label { display: block; min-width: 0; margin: 0; }
.sb-inquiry-card select { width: 100%; padding: 7px 2px; border: 0; border-bottom: 1px solid #d8d9d3; border-radius: 0; background: transparent; color: #3f463b; font: inherit; }
.sb-inquiry-card select:focus { outline: 0; border-bottom-color: #82b02a; box-shadow: 0 1px 0 #82b02a; }
.sb-inquiry-phone__hint { color: #8a8d86; font-size: .72rem; line-height: 1.35; }
.sb-inquiry-phone__hint.is-invalid { color: #b3261e; }
.sb-inquiry-card .screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.sb-inquiry-card__check { grid-template-columns: auto 1fr !important; align-items: start; gap: 9px !important; line-height: 1.35; }
.sb-inquiry-card__check input { margin-top: 3px; }
.sb-inquiry-card button { display: inline-flex; min-height: 42px; align-items: center; justify-content: center; gap: 9px; padding: 9px 18px; border: 0; border-radius: 999px; background: #82b02a; color: #fff; cursor: pointer; font: 700 .9rem Montserrat,sans-serif; animation: sb-inquiry-pulse 3.4s ease-out infinite; }
.sb-inquiry-card button svg { width: 18px; height: 18px; flex: 0 0 18px; }
.sb-inquiry-card button:hover { background: #6f9822; animation: none; }
.sb-inquiry-card button:focus-visible { animation: none; }
@keyframes sb-inquiry-pulse { 0% { box-shadow: 0 0 0 0 rgba(130,176,42,.42); } 70% { box-shadow: 0 0 0 13px rgba(130,176,42,0); } 100% { box-shadow: 0 0 0 0 rgba(130,176,42,0); } }
@media (prefers-reduced-motion: reduce) { .sb-inquiry-card button { animation: none; } }
.sb-inquiry-card__intro { margin: -7px 0 17px; color: #686b65; font-size: .9rem; }
.sb-inquiry-card__lead { margin: 6px 0 9px; color: #3f463b; font-family: Montserrat,sans-serif; font-size: .86rem; font-weight: 700; }
.sb-inquiry-benefits { display: grid; gap: 5px; margin: 0 0 11px; padding: 0; list-style: none; }
.sb-inquiry-benefits li { display: grid; grid-template-columns: 18px minmax(0,1fr); align-items: start; gap: 9px; color: #4a4a49; font-size: .84rem; line-height: 1.3; }
.sb-inquiry-benefits svg { width: 18px; height: 18px; margin-top: 1px; color: #82b02a; }
.sb-inquiry-card__note { margin: 0 0 13px; padding: 9px 11px; border-left: 3px solid #82b02a; border-radius: 0 8px 8px 0; background: #f7f9f4; color: #5d605a; font-size: .78rem; line-height: 1.4; }
.sb-inquiry-card__actions { display: grid; gap: 7px; margin-top: 3px; }
.sb-inquiry-card .sb-button-secondary { border: 1px solid #63891f; background: #fff; color: #50731b; }
.sb-inquiry-card .sb-button-secondary:hover { background: #edf5df; }
.sb-honeypot { position: absolute !important; left: -9999px !important; }
.sb-form-notice { padding: 10px 12px; border-radius: 7px; font-size: .88rem; }
.sb-form-notice--success { background: #edf5df; color: #385214; }
.sb-form-notice--error { background: #fff0ef; color: #8a2922; }
.sb-floorplans__grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; padding: 0 26px 26px; }
.sb-floorplans__grid a { display: block; overflow: hidden; background: #f1f1ed; }
.sb-floorplans__grid img { display: block; width: 100%; aspect-ratio: 4/3; object-fit: contain; }
.sb-detail-location { scroll-margin-top: 20px; }
.sb-detail-location .sb-map-shell { margin: 0; }
.sb-detail-location .sb-map,.sb-detail-location .sb-map-stage { border-radius: 0; }
.sb-detail-location__place { display: flex; align-items: center; gap: 9px; margin: 0; padding: 0 26px 18px; color: #3f463b; font-family: Montserrat,sans-serif; font-size: .96rem; font-weight: 700; }
.sb-detail-location__place svg { width: 19px; height: 19px; flex: 0 0 19px; color: #63891f; }
.sb-location-cta { position: relative; overflow: hidden; margin: 20px 26px 24px; padding: 22px 22px 24px; border: 1px solid rgba(130,176,42,.45); border-radius: 12px; background: linear-gradient(145deg,#f9fcf3,#f1f7e7); text-align: center; }
.sb-location-cta__bg { position: absolute; z-index: 0; inset: -22px; background-position: center; background-size: cover; filter: blur(9px); transform: scale(1.06); }
.sb-location-cta--image { border-color: rgba(37,44,31,.25); }
.sb-location-cta--image::before { position: absolute; z-index: 1; inset: 0; background: linear-gradient(170deg,rgba(37,44,31,.52),rgba(37,44,31,.30)); content: ""; }
.sb-location-cta__inner { position: relative; z-index: 2; display: grid; justify-items: center; }
.sb-location-cta__icon { display: grid; width: 38px; height: 38px; place-items: center; margin-bottom: 9px; border-radius: 50%; background: #fff; color: #63891f; box-shadow: 0 2px 8px rgba(37,44,31,.08); }
.sb-location-cta--image .sb-location-cta__icon { background: rgba(255,255,255,.18); color: #fff; box-shadow: none; }
.sb-location-cta__icon svg { width: 19px; height: 19px; }
.sb-location-cta h3 { margin: 0; color: #3f463b; font: 650 1rem/1.35 Montserrat,sans-serif; }
.sb-location-cta p { margin: 4px 0 13px; max-width: 46ch; color: #62675e; font-size: .85rem; line-height: 1.45; }
.sb-location-cta--image h3 { color: #fff; text-shadow: 0 1px 10px rgba(20,26,16,.7); }
.sb-location-cta--image p { color: #fff; text-shadow: 0 1px 8px rgba(20,26,16,.75); }
.sb-location-cta--image .sb-location-cta__icon { backdrop-filter: blur(2px); }
.sb-location-cta a { display: inline-flex; min-height: 46px; align-items: center; justify-content: center; gap: 8px; padding: 10px 22px; border-radius: 999px; background: #82b02a; color: #fff; font: 700 .88rem/1.25 Montserrat,sans-serif; text-align: center; text-decoration: none; }
.sb-location-cta a svg { width: 17px; height: 17px; }
.sb-location-cta a:hover,.sb-location-cta a:focus-visible { background: #6f9822; color: #fff; }
.sb-purchase-tools { overflow: hidden; border-radius: 14px; background: #fff; box-shadow: 0 8px 24px rgba(37,44,31,.055); }
.sb-purchase-tools__head { padding: 17px 16px 14px; border-bottom: 1px solid #e7e7e1; }
.sb-purchase-tools__head .sb-kicker { margin: 0 0 5px; color: #63891f; font-size: .7rem; }
.sb-purchase-tools__head h2 { margin: 0; color: #4a4a49; font: 600 1.14rem/1.3 Montserrat,sans-serif; }
.sb-purchase-tools__head h2::after { display: block; width: 96px; height: 3px; margin-top: 10px; background: url("rainbow-line.svg") center / 100% 100% no-repeat; content: ""; }
.sb-purchase-tools__head > p:last-child { margin: 8px 0 0; color: #737771; font-size: .84rem; }
.sb-purchase-tools__grid { display: grid; grid-template-columns: minmax(0,1fr); }
.sb-purchase-tools__panel { min-width: 0; border-top: 1px solid #e7e7e1; }
.sb-purchase-tools__panel:first-child { border-top: 0; }
.sb-purchase-tools__panel > summary { display: flex; align-items: center; gap: 10px; padding: 11px 16px; background: #50731b; color: #fff; cursor: pointer; flex-wrap: wrap; list-style: none; text-align: left; }
.sb-purchase-tools__panel > summary > svg { width: 21px; height: 21px; flex: 0 0 21px; color: #fff; }
.sb-cost-calculator > summary > svg { width: 19px; height: 19px; flex-basis: 19px; }
.sb-purchase-tools__panel > summary h3 { flex: 1 1 0; min-width: 0; margin: 0; color: inherit; text-align: left !important; }
.sb-purchase-tools__summary-value { order: 1; flex: 1 0 100%; margin-top: 3px; padding-left: 31px; color: rgba(255,255,255,.92); font: 700 .88rem/1.25 Montserrat,sans-serif; white-space: normal; }
.sb-purchase-tools__summary-value:empty { display: none; }
.sb-purchase-tools__panel > summary::-webkit-details-marker { display: none; }
.sb-purchase-tools__panel > summary::after { width: 8px; height: 8px; flex: 0 0 8px; border-right: 2px solid #fff; border-bottom: 2px solid #fff; content: ""; transform: translateY(-2px) rotate(45deg); transition: transform .18s ease; }
.sb-purchase-tools__panel[open] > summary::after { transform: translateY(2px) rotate(-135deg); }
.sb-purchase-tools__panel > summary:hover { background: #456318; }
.sb-purchase-tools__panel-body { padding: 13px 16px 16px; }
.sb-cost-calculator h3,.sb-investment-planner h3 { margin: 0; color: #4a4a49; font: 600 .95rem/1.3 Montserrat,sans-serif; }
.sb-cost-calculator dl,.sb-investment-planner__results { margin: 0; }
.sb-cost-calculator dl > div,.sb-investment-planner__results > div { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 12px; padding: 8px 0; border-bottom: 1px solid #ecece7; }
.sb-cost-calculator dt,.sb-cost-calculator dd,.sb-investment-planner__results dt,.sb-investment-planner__results dd { margin: 0; }
.sb-cost-calculator dt,.sb-investment-planner__results dt { color: #64685f; font-size: .82rem; }
.sb-cost-calculator dt small { display: block; color: #8a8d86; font-size: .7rem; font-weight: 400; }
.sb-cost-calculator dd,.sb-investment-planner__results dd { color: #4a4a49; font-size: .84rem; font-weight: 600; text-align: right; white-space: nowrap; }
.sb-cost-calculator input { width: 58px; padding: 5px 6px; border: 1px solid #d8d9d3; border-radius: 5px; color: #4a4a49; font: inherit; text-align: right; }
.sb-cost-calculator__total { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 2px 12px; margin-top: 13px; padding: 13px 14px; border-radius: 9px; background: #edf5df; }
.sb-cost-calculator__total span { color: #385214; font-size: .82rem; font-weight: 650; }
.sb-cost-calculator__total strong { color: #50731b; font: 700 1rem/1.2 Montserrat,sans-serif; }
.sb-cost-calculator__total small { grid-column: 1/-1; color: #6d7d59; font-size: .7rem; }
.sb-investment-planner__fields { display: grid; grid-template-columns: 1fr; gap: 11px 12px; }
.sb-investment-planner__fields label { display: grid; gap: 5px; color: #64685f; font-size: .75rem; }
.sb-input-unit { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; overflow: hidden; border: 1px solid #d8d9d3; border-radius: 6px; background: #fff; }
.sb-input-unit input { width: 100%; min-width: 0; padding: 8px 6px 8px 9px; border: 0; outline: 0; color: #3f463b; font: inherit; }
.sb-input-unit small { padding-right: 8px; color: #7a7d76; font-size: .7rem; }
.sb-input-unit:focus-within { border-color: #82b02a; box-shadow: 0 0 0 3px rgba(130,176,42,.18); }
.sb-investment-planner__results { margin-top: 16px; }
.sb-investment-planner__results .is-primary { margin-top: 7px; padding: 12px 13px; border: 0; border-radius: 8px; background: #f5f9ed; }
.sb-investment-planner__results .is-primary dt { color: #385214; font-weight: 650; }
.sb-investment-planner__results .is-primary dd { color: #50731b; font: 700 1rem/1.2 Montserrat,sans-serif; }
.sb-investment-planner__results [hidden] { display: none; }
.sb-purchase-tools__note { margin: 0; padding: 0 20px 18px; color: #898c85; font-size: .68rem; line-height: 1.45; }
.sb-location-description { padding: 22px 26px 26px; }
.sb-location-description h3 { margin: 0 0 8px; color: #4a4a49; font: 600 1rem/1.3 Montserrat,sans-serif; }
.sb-location-description p { max-width: 72ch; margin: 0 0 1em; }
.sb-location-address { margin: 0 22px 16px; color: #4a4a49; font-style: normal; font-weight: 600; }
.sb-lightbox { position: fixed; z-index: 100000; inset: 0; display: grid; place-items: center; padding: 60px 70px; background: rgba(17,20,15,.82); backdrop-filter: blur(14px); }
.sb-lightbox[hidden] { display: none; }
.sb-lightbox__figure { display: grid; max-width: min(1320px,100%); max-height: 100%; place-items: center; margin: 0; }
.sb-lightbox__image { display: block; max-width: 100%; max-height: calc(100vh - 125px); object-fit: contain; box-shadow: 0 12px 55px rgba(0,0,0,.4); }
.sb-lightbox__count { margin-top: 10px; color: #fff; font-size: .85rem; }
.sb-lightbox__close,.sb-lightbox__prev,.sb-lightbox__next { position: absolute; display: grid; width: 46px; height: 46px; place-items: center; border: 1px solid rgba(255,255,255,.55); border-radius: 50%; background: rgba(0,0,0,.3); color: #fff; cursor: pointer; font-size: 1.65rem; }
.sb-lightbox__close { top: 18px; right: 20px; }
.sb-lightbox__prev { top: 50%; left: 18px; transform: translateY(-50%); }
.sb-lightbox__next { top: 50%; right: 18px; transform: translateY(-50%); }
body.sb-lightbox-open { overflow: hidden; }
.sb-estate-archive-page { background: #f6f5f0; }
.sb-estate-map-hero { position: relative; margin-bottom: 38px; }
.sb-estate-map-hero .sb-map-shell { margin: 0; }
.sb-estate-archive__header { position: absolute; z-index: 2; top: 28px; left: 28px; max-width: min(520px,calc(100% - 56px)); padding: clamp(20px,3vw,32px); border-radius: 16px; background: rgba(255,255,255,.94); box-shadow: 0 14px 40px rgba(37,44,31,.18); backdrop-filter: blur(7px); }
.sb-estate-archive__header .sb-kicker { margin: 0 0 8px; color: #6d6d68; font-size: .82rem; }
.sb-estate-archive__header h1 { margin: 0 0 10px; }
.sb-estate-archive__header > p:last-child { margin: 0; font-size: 1.12rem; }
.sb-estate-filter { max-width: 1180px; margin-inline: auto; padding: 14px 16px; background: #fff; }
.sb-estate-filter fieldset { margin: 0; padding: 0; border: 0; }
.sb-estate-filter legend { margin-bottom: 6px; font-family: Montserrat,sans-serif; font-size: .84rem; font-weight: 700; }
.sb-estate-filter__primary { position: relative; display: grid; width: 100%; min-width: 0; grid-template-columns: repeat(4,minmax(0,1fr)) auto; align-items: stretch; margin: 0; background: #fff; }
.sb-estate-filter__transaction { display: flex !important; min-width: 0; align-items: center; margin: 0 !important; padding: 4px 0 12px; grid-column: 1/-1; border-right: 0 !important; border-bottom: 1px solid rgba(74,74,73,.12) !important; }
.sb-estate-filter__transaction-options { display: grid !important; width: 50%; min-width: 0; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; overflow: hidden; background: #edf5df; }
.sb-estate-filter__transaction label { min-width: 0; cursor: pointer; }
.sb-estate-filter__transaction input { position: absolute; opacity: 0; pointer-events: none; }
.sb-estate-filter__transaction span { display: block; min-width: 0; padding: 12px 8px; border: 0; border-right: 1px solid rgba(74,74,73,.1); border-radius: 0; color: #4f6b25; text-align: center; font-size: .88rem; font-weight: 700; line-height: 1.2; }
.sb-estate-filter__transaction label:last-child span { border-right: 0; }
.sb-estate-filter__transaction input:checked + span { border-right-color: transparent; background: #82b02a; color: #fff; }
.sb-estate-filter__transaction input:focus-visible + span { outline: 3px solid rgba(130,176,42,.45); outline-offset: -3px; }
.sb-estate-filter__field { position: relative; display: flex !important; min-width: 0; min-height: 58px; align-items: center; gap: 10px !important; padding: 0 34px 0 16px; border-right: 1px solid rgba(74,74,73,.12); cursor: pointer; }
.sb-estate-filter__dropdown { position: relative; min-width: 0; border-right: 1px solid rgba(74,74,73,.12); }
.sb-estate-filter__dropdown > summary { display: flex; min-height: 58px; align-items: center; gap: 10px; padding: 0 34px 0 16px; cursor: pointer; list-style: none; }
.sb-estate-filter__dropdown > summary::-webkit-details-marker { display: none; }
.sb-estate-filter__primary > .sb-estate-filter__field--category { padding-left: 0; }
.sb-estate-filter__field::after,.sb-estate-filter__dropdown > summary::after { position: absolute; top: 50%; right: 16px; width: 8px; height: 8px; border-right: 2px solid #85857f; border-bottom: 2px solid #85857f; content: ""; pointer-events: none; transform: translateY(-75%) rotate(45deg); }
.sb-estate-filter__dropdown[open] > summary::after { transform: translateY(-25%) rotate(-135deg); }
.sb-estate-filter__dropdown > summary:hover,.sb-estate-filter__field:hover { background: #f7f9f4; }
.sb-estate-filter__field-icon { display: inline-grid; width: 20px; height: 20px; flex: 0 0 20px; place-items: center; color: #63891f; }
.sb-estate-filter__field-icon svg,.sb-estate-filter__actions svg { width: 20px; height: 20px; }
.sb-estate-filter__field select,.sb-estate-filter__dropdown-value { overflow: hidden; width: 100%; min-width: 0; color: #252c1f; font-size: .9rem; font-weight: 700; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.sb-estate-filter__field select { min-height: 0; padding: 0; border: 0; border-radius: 0; background-color: transparent; font-family: inherit; appearance: none; }
.sb-estate-filter__field select:focus { outline: 0; box-shadow: 0 2px 0 #82b02a; }
.sb-estate-filter__dropdown[open] > summary .sb-estate-filter__dropdown-value { color: #385214; }
.sb-estate-filter__dropdown-body { position: absolute; z-index: 20; top: calc(100% + 8px); left: 0; display: grid; gap: 15px; padding: 18px; border: 1px solid rgba(74,74,73,.16); border-radius: 14px; background: #fff; box-shadow: 0 18px 42px rgba(37,44,31,.14); }
.sb-estate-filter__dropdown-body label { display: grid; gap: 5px; font-size: .84rem; font-weight: 700; }
.sb-estate-filter__dropdown-body select,.sb-estate-filter__dropdown-body input[type="number"],.sb-estate-results__toolbar select { width: 100%; min-height: 38px; padding: 6px 9px; border: 1px solid rgba(74,74,73,.28); border-radius: 7px; background: #fff; color: #252c1f; font: inherit; }
.sb-estate-filter__dropdown-body select:focus,.sb-estate-filter__dropdown-body input:focus,.sb-estate-results__toolbar select:focus { outline: 3px solid rgba(130,176,42,.35); border-color: #6d9623; }
.sb-estate-filter__apply { justify-self: start; min-height: 40px; padding: 8px 20px; border: 0; border-radius: 999px; background: #82b02a; color: #fff; cursor: pointer; font: 700 .88rem Montserrat,sans-serif; }
.sb-estate-filter__apply:hover { background: #6f9822; }
.sb-price-range__body { width: min(340px,calc(100vw - 48px)); }
.sb-price-range__inputs { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.sb-price-range__slider { position: relative; height: 20px; }
.sb-price-range__track { position: absolute; top: 8px; right: 0; left: 0; height: 4px; border-radius: 999px; background: linear-gradient(to right,#d9ddd4 0 var(--sb-price-from,0%),#82b02a var(--sb-price-from,0%) var(--sb-price-to,100%),#d9ddd4 var(--sb-price-to,100%) 100%); }
.sb-price-range input[type="range"] { position: absolute; inset: 0; width: 100%; min-height: 0; height: 20px; margin: 0; padding: 0; border: 0; border-radius: 0; outline: 0; background: transparent; pointer-events: none; appearance: none; }
.sb-price-range input[type="range"]::-webkit-slider-runnable-track { height: 4px; background: transparent; }
.sb-price-range input[type="range"]::-webkit-slider-thumb { width: 17px; height: 17px; margin-top: -6px; border: 2px solid #fff; border-radius: 50%; background: #63891f; box-shadow: 0 1px 5px rgba(37,44,31,.25); cursor: pointer; pointer-events: auto; appearance: none; }
.sb-price-range input[type="range"]::-moz-range-track { height: 4px; background: transparent; }
.sb-price-range input[type="range"]::-moz-range-thumb { width: 15px; height: 15px; border: 2px solid #fff; border-radius: 50%; background: #63891f; box-shadow: 0 1px 5px rgba(37,44,31,.25); cursor: pointer; pointer-events: auto; }
.sb-price-range input[type="range"]:focus-visible::-webkit-slider-thumb { outline: 3px solid rgba(130,176,42,.4); outline-offset: 2px; }
.sb-price-range input[type="range"]:focus-visible::-moz-range-thumb { outline: 3px solid rgba(130,176,42,.4); outline-offset: 2px; }
.sb-estate-filter__advanced-body { right: 0; left: auto; width: min(820px,calc(100vw - 48px)); grid-template-columns: repeat(3,minmax(150px,1fr)); }
.sb-estate-filter__advanced-body > fieldset,.sb-estate-filter__advanced-body > .sb-estate-filter__apply-row { grid-column: 1/-1; }
/* Von wpautop eingefuegte Absaetze duerfen das Raster nicht zerlegen. */
.sb-estate-filter__advanced-fields,.sb-estate-filter__primary > p,.sb-estate-filter__dropdown-body > p,.sb-detail-actions > p,.sb-detail-final-cta__actions > p,.sb-purchase-tools__panel-body > p,.sb-contact-card__list > p { display: contents; }
.sb-estate-filter__advanced-body > fieldset > legend { margin-bottom: 8px; font-size: .84rem; font-weight: 700; }
.sb-estate-filter:has(.sb-estate-filter__advanced[open]) { margin-bottom: 210px; }
.sb-estate-filter__features { display: flex; flex-wrap: wrap; gap: 9px; }
.sb-estate-filter__features label { cursor: pointer; }
.sb-estate-filter__features input { position: absolute; opacity: 0; pointer-events: none; }
.sb-estate-filter__features span { display: block; padding: 7px 10px; border: 1px solid rgba(74,74,73,.22); border-radius: 999px; font-size: .84rem; white-space: nowrap; }
.sb-estate-filter__features input:checked + span { border-color: #63891f; background: #edf5df; color: #385214; font-weight: 700; }
.sb-estate-filter__features input:focus-visible + span { outline: 3px solid rgba(130,176,42,.4); outline-offset: 2px; }
.sb-estate-filter__actions { display: flex; min-width: 0; align-items: center; padding-left: 18px; }
.sb-estate-filter__actions a { color: #5f625c; font-size: .84rem; white-space: nowrap; }
.sb-estate-load-more a { display: inline-flex; min-height: 40px; align-items: center; justify-content: center; gap: 8px; padding: 8px 18px; border: 0; border-radius: 999px; background: #82b02a; color: #fff; cursor: pointer; font: 700 .92rem Montserrat,sans-serif; text-decoration: none; }
.sb-estate-load-more a:hover { background: #6f9822; }
.sb-estate-load-more a[aria-disabled="true"] { cursor: wait; opacity: .68; }
.sb-estate-filter__advanced-body > label,.sb-estate-results__toolbar label { display: grid; gap: 5px; font-size: .84rem; font-weight: 700; }
.sb-detail-final-cta { display: grid; justify-items: center; padding: 30px 26px 32px; border-radius: 14px; background: #fff; box-shadow: 0 8px 24px rgba(37,44,31,.055); text-align: center; }
.sb-detail-final-cta h2 { margin: 0; color: #4a4a49; font: 600 1.24rem/1.3 Montserrat,sans-serif; }
.sb-detail-final-cta > p { margin: 8px 0 20px; max-width: 52ch; color: #62675e; font-size: .92rem; }
.sb-detail-final-cta__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 11px; }
.sb-detail-final-cta__actions a { display: inline-flex; min-height: 48px; align-items: center; justify-content: center; padding: 11px 24px; border: 1px solid #63891f; border-radius: 999px; color: #50731b; font: 700 .9rem/1.25 Montserrat,sans-serif; text-decoration: none; }
.sb-detail-final-cta__actions a:hover { background: #edf5df; }
.sb-detail-final-cta__primary { border-color: #82b02a !important; background: #82b02a; color: #fff !important; }
.sb-detail-final-cta__primary:hover { background: #6f9822 !important; }
.sb-image-missing { opacity: 0 !important; }
.sb-image-fallback { position: relative; background: #e7e6df !important; }
.sb-image-fallback::after { position: absolute; inset: 0; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23b3b3ab' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 11 12 4l8 7'/%3E%3Cpath d='M6.5 10v10h11V10'/%3E%3C/svg%3E") center / 42px 42px no-repeat; content: ""; pointer-events: none; }
.sb-active-filters { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 18px; }
.sb-active-filters a { padding: 7px 11px; border-radius: 999px; background: #e9e8e2; color: inherit; font-size: .88rem; text-decoration: none; }
.sb-estate-results__toolbar { display: flex; align-items: end; justify-content: space-between; gap: 24px; margin: 42px 0 20px; }
.sb-estate-results__toolbar p { margin: 0; font-size: 1.08rem; }
.sb-estate-results__toolbar label { grid-template-columns: auto minmax(190px,auto); align-items: center; }
.sb-estate-featured-summary { display: flex; align-items: baseline; gap: 14px; margin: 0 0 18px; padding: 13px 16px; border-left: 4px solid #82b02a; border-radius: 8px; background: #edf5df; }
.sb-estate-featured-summary span { color: #385214; font: 700 1rem Montserrat,sans-serif; }
.sb-estate-featured-summary p { margin: 0; color: #536143; }
.sb-estate-card { display: flex; min-width: 0; flex-direction: column; overflow: hidden; border: 0; border-radius: 16px; background: #fff; box-shadow: none; }
.sb-estate-card--featured { outline: 2px solid #82b02a; outline-offset: 0; box-shadow: 0 10px 26px rgba(92,128,31,.15); }
.sb-estate-card__image { position: relative; display: block; overflow: hidden; background: #e4e3dc; color: #4a4a49; text-decoration: none; }
.sb-estate-card__image img,.sb-estate-card__placeholder { display: flex; width: 100%; aspect-ratio: 4/3; align-items: center; justify-content: center; object-fit: cover; transition: transform .25s ease; }
.sb-estate-card__image:hover img { transform: scale(1.025); }
.sb-estate-card__placeholder { padding: 24px; text-align: center; font: 700 1rem Montserrat,sans-serif; }
.sb-estate-card__status { position: absolute; top: 14px; left: 14px; padding: 7px 11px; border-radius: 999px; background: #eb991d; color: #fff; font-size: .82rem; font-weight: 700; }
.sb-estate-card__status--available { background: #63891f; }
.sb-estate-card__status--offer { background: #a1d8f7; color: #1b5272; }
.sb-estate-card__featured { position: absolute; top: 14px; right: 14px; padding: 7px 11px; border-radius: 999px; background: #fff; color: #50731b; box-shadow: 0 2px 10px rgba(0,0,0,.18); font-size: .78rem; font-weight: 700; }
.sb-estate-card__body { display: flex; flex: 0 0 auto; flex-direction: column; padding: 16px 17px 17px; }
.sb-estate-card__type { margin: 0 0 13px; color: #63891f; font-size: .75rem; font-weight: 700; letter-spacing: .04em; line-height: 1.35; text-transform: uppercase; }
.sb-estate-card :is(h2,h3) { margin: 0 0 9px; font-size: 1.06rem; line-height: 1.3; }
.sb-estate-card :is(h2,h3) a { color: inherit; text-decoration: none; }
.sb-estate-card :is(h2,h3) a:hover { color: #63891f; }
.sb-estate-card__title-name,.sb-estate-card__title-subtitle { display: block; }
.sb-estate-card__title-name { font-family: Montserrat,sans-serif; font-size: 1.1rem; font-weight: 700; line-height: 1.3; }
.sb-estate-card__title-subtitle { margin-top: 4px; color: #5e615b; font-family: "Source Sans 3","Source Sans Pro",sans-serif; font-size: .94rem; font-weight: 500; line-height: 1.38; }
.sb-estate-card__location { margin: 0 0 6px; color: #6d6d68; font-size: .84rem; font-weight: 600; line-height: 1.35; }
.sb-estate-card__facts { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 11px; margin: 0 0 13px; }
.sb-estate-card__facts > div { display: flex; min-width: 0; align-items: center; gap: 9px; }
.sb-estate-card__facts > div > span:last-child { min-width: 0; }
.sb-estate-card__fact-icon { display: grid; width: 32px; height: 32px; flex: 0 0 32px; place-items: center; border-radius: 8px; background: #edf5df; color: #63891f; }
.sb-estate-card__fact-icon svg { width: 17px; height: 17px; }
.sb-estate-card__fact-label { display: block; color: #6d6d68; font-size: .72rem; line-height: 1.28; }
.sb-estate-card__facts strong { display: block; margin-top: 3px; font-size: .88rem; line-height: 1.25; overflow-wrap: anywhere; }
.sb-estate-card__distance { margin: 0 0 15px; color: #63891f; font-size: .88rem; font-weight: 700; }
.sb-estate-card__footer { display: flex; align-items: end; justify-content: space-between; gap: 14px; margin-top: 2px; padding-top: 12px; border-top: 1px solid rgba(74,74,73,.13); }
.sb-estate-card__price { margin: 0; color: #63891f; font: 700 1.12rem Montserrat,sans-serif; }
.sb-estate-card__reference { margin: 0; color: #6d6d68; font-size: .78rem; text-align: right; }
.sb-estate-nearby-notice { margin: 0 0 22px; padding: 16px 18px; border-left: 4px solid #82b02a; border-radius: 7px; background: #edf5df; }
.sb-estate-nearby-notice strong { display: block; }
.sb-estate-load-more,.sb-estate-noscript-more { margin: 34px 0 0; text-align: center; }
.sb-estate-load-more p { color: #a12828; }
.sb-estate-empty { padding: clamp(28px,5vw,52px); border-radius: var(--sb-radius); background: #fff; text-align: center; box-shadow: var(--sb-shadow); }
.sb-estate-empty h2 { margin-top: 0; }
.sb-estate-empty .wp-element-button { display: inline-block; text-decoration: none; }
.sb-estate-dreamfinder { display: flex; justify-content: space-between; align-items: center; gap: 36px; margin-top: 64px; padding: clamp(28px,5vw,54px); border-radius: var(--sb-radius); background: #4a4a49; color: #fff; }
.sb-estate-dreamfinder h2 { margin: 4px 0 8px; color: #fff; }
.sb-estate-dreamfinder p { margin-top: 0; }
.sb-estate-dreamfinder .wp-element-button { display: inline-block; white-space: nowrap; text-decoration: none; }

/* Detail and archive refinements. */
.single-estate .sb-header,
.post-type-archive-estate .sb-header { background: rgba(246,245,240,.96); box-shadow: 0 1px 0 rgba(74,74,73,.1); backdrop-filter: blur(10px); }
.single-estate .sb-header .has-white-color,
.post-type-archive-estate .sb-header .has-white-color,
.single-estate .sb-header a,
.post-type-archive-estate .sb-header a { color: #4a4a49 !important; }
.single-estate .sb-header a:hover,
.single-estate .sb-header a:focus-visible,
.post-type-archive-estate .sb-header a:hover,
.post-type-archive-estate .sb-header a:focus-visible { color: #63891f !important; }
.single-estate .sb-header .wp-block-navigation__submenu-container,
.post-type-archive-estate .sb-header .wp-block-navigation__submenu-container { border: 1px solid rgba(74,74,73,.15) !important; background: #fff !important; box-shadow: 0 12px 32px rgba(37,44,31,.14); }
.single-estate .sb-header .wp-block-navigation__responsive-container-open,
.post-type-archive-estate .sb-header .wp-block-navigation__responsive-container-open { color: #4a4a49 !important; }
.sb-detail-page > .wp-block-shortcode,
.sb-estate-archive-page > .wp-block-shortcode { width: 100%; max-width: none !important; }
.sb-detail-layout { width: min(1180px,100%); grid-template-columns: minmax(0,2fr) minmax(310px,.8fr); }
.sb-detail-sidebar { top: 108px; align-self: start; }
.sb-detail-actions__button { appearance: none; font-family: inherit; text-align: left; cursor: pointer; }
.sb-data-section > h2::after,
.sb-energy-card h2::after,
.sb-contact-card h2::after,
.sb-inquiry-card h2::after,
.sb-region-card h2::after { display: block; width: 96px; height: 3px; margin-top: 10px; background: url("rainbow-line.svg") center / 100% 100% no-repeat; content: ""; }
.sb-energy-card h2::after { margin-top: 7px; }
.sb-estate-map-hero { width: 100vw; margin: 0 calc(50% - 50vw); }
.sb-estate-map-hero .sb-map,
.sb-estate-map-hero .sb-map-stage { border-radius: 0; }
.sb-estate-map-hero .sb-map { border-right: 0; border-left: 0; }
.sb-estate-filter { width: 100vw; max-width: none; margin: 0 calc(50% - 50vw) 0; padding: 14px clamp(20px,3vw,48px); border: 0; border-radius: 0; box-shadow: none; }
.sb-estate-card > p:empty { display: none !important; margin: 0 !important; }
.sb-estate-card__image img,.sb-estate-card__placeholder { aspect-ratio: 16/11; }
.sb-estate-card__body { padding: 16px 17px 17px; }
.sb-estate-card :is(h2,h3) { margin-bottom: 9px; }
.sb-estate-card__type { margin-bottom: 13px; }
.sb-estate-card__facts { margin-bottom: 13px; }
@media (max-width: 900px) { .sb-estate-grid { grid-template-columns: 1fr 1fr; } .sb-hero { min-height: 680px; } }
@media (max-width: 1200px) { .sb-estate-filter__field,.sb-estate-filter__dropdown > summary { padding-right: 28px; padding-left: 12px; } .sb-estate-filter__field::after,.sb-estate-filter__dropdown > summary::after { right: 12px; } .sb-estate-filter__primary > .sb-estate-filter__field--category { padding-left: 0; } .sb-estate-filter__transaction-options { width: 60%; } }
@media (max-width: 1050px) { .sb-estate-filter__primary { grid-template-columns: 1fr 1fr; } .sb-estate-filter__field,.sb-estate-filter__dropdown { border-bottom: 1px solid rgba(74,74,73,.12); } .sb-estate-filter__dropdown { position: static; } .sb-estate-filter__dropdown-body { left: 0; } .sb-estate-filter__advanced-body { right: auto; width: min(560px,calc(100vw - 40px)); grid-template-columns: 1fr 1fr; } .sb-estate-filter__actions { grid-column: 1/-1; padding: 12px 0 0; } .sb-estate-filter:has(.sb-estate-filter__advanced[open]) { margin-bottom: 330px; } }
@media (max-width: 1040px) { .sb-detail-layout { grid-template-columns: minmax(0,1fr) 300px; } }
@media (max-width: 900px) { .sb-detail-columns { grid-template-columns: 1fr; } .sb-detail-layout { grid-template-columns: 1fr; } .sb-detail-sidebar { position: static; } .sb-detail__facts { grid-template-columns: repeat(2,minmax(0,1fr)); } .sb-detail__fact:nth-child(3n) { border-right: 1px solid #ecece7; } .sb-detail__fact:nth-child(2n) { border-right: 0; } .sb-detail-sections { grid-template-columns: 1fr; } .sb-energy-card { grid-column: auto; } }
@media (max-width: 760px) { .sb-purchase-tools__grid { grid-template-columns: 1fr; } .sb-cost-calculator { border-right: 0; border-bottom: 1px solid #e7e7e1; } }
@media (max-width: 680px) { .sb-detail-offer-notice { align-items: flex-start; flex-direction: column; gap: 5px; } .sb-detail-offer-notice strong { white-space: normal; } }
@media (max-width: 720px) { .sb-detail-hero { margin-bottom: 24px; } .sb-gallery__mosaic { height: auto; min-height: 0; grid-auto-columns: 78vw; grid-template: 68vw / repeat(5,78vw); gap: 0; overflow-x: auto; scroll-snap-type: x mandatory; } .sb-gallery__main { grid-row: auto; } .sb-gallery__item { scroll-snap-align: start; } .sb-gallery__item + .sb-gallery__item { border-left: 2px solid #fff; } .sb-gallery__all { right: 14px; bottom: 12px; } .sb-detail-actions { position: static; flex-wrap: nowrap; justify-content: flex-start; gap: 7px; margin: 0 calc(50% - 50vw); padding: 10px 16px; overflow-x: auto; background: #fff; } .sb-detail-actions__button { min-height: 40px; flex: 0 0 auto; background: #4a4a49; } .sb-detail-actions__button svg { width: 19px; height: 19px; flex-basis: 19px; } .sb-detail-actions__button span { font-size: .78rem; } .sb-detail-mobile-cta { position: fixed; z-index: 1200; right: 0; bottom: 0; left: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 8px; padding: 9px 12px calc(9px + env(safe-area-inset-bottom)); background: rgba(255,255,255,.96); box-shadow: 0 -6px 24px rgba(37,44,31,.16); backdrop-filter: blur(10px); } .sb-detail-mobile-cta a { display: flex; min-height: 44px; align-items: center; justify-content: center; padding: 8px 10px; border: 1px solid #63891f; border-radius: 999px; color: #50731b; font: 700 .78rem/1.2 Montserrat,sans-serif; text-align: center; text-decoration: none; } .sb-detail-mobile-cta a:first-child { background: #82b02a; color: #fff; } body.single-estate { padding-bottom: 72px; } .sb-energy-head { display: block; padding: 20px; } .sb-energy-meta { justify-content: flex-start; margin-top: 18px; } .sb-energy-body,.sb-energy-body--single { grid-template-columns: 1fr; max-width: none; gap: 27px; padding: 20px; } .sb-energy-technology { grid-template-columns: 1fr; } .sb-lightbox { padding: 58px 10px 65px; } .sb-lightbox__prev,.sb-lightbox__next { top: auto; bottom: 12px; transform: none; } }
@media (max-width: 720px) { .sb-detail-actions { width: auto; margin: 0 calc(50% - 50vw); padding: 12px 16px; background: #fff; } .sb-detail-actions__button { min-height: 44px; padding: 9px 15px; border: 1px solid rgba(74,74,73,.2); background: #fff; color: #3f463b; } .sb-detail-actions__button svg { width: 20px; height: 20px; flex-basis: 20px; color: #63891f; } .sb-detail-actions__button span { font-size: .84rem; } .sb-detail-actions__button--share { margin-left: 0; border-color: #82b02a; background: #82b02a; color: #fff; } .sb-detail-actions__button--share svg { color: #fff; } }
@media (max-width: 420px) { .sb-energy-metric { padding: 14px 14px 16px; } .sb-energy-scale { gap: 2px; } .sb-energy-scale__step { height: 24px; font-size: 10px; } }
@media (max-width: 620px) { .sb-header nav { display:none; } .sb-estate-grid { grid-template-columns: 1fr; } .sb-hero { min-height: 650px; } .sb-detail__intro { display: block; padding-bottom: 22px; } .sb-detail__price { margin-top: 20px; text-align: left; } .sb-detail__facts { grid-template-columns: 1fr 1fr; padding: 12px; } .sb-detail__fact { display: block; padding: 11px; text-align: center; } .sb-detail__fact-icon { margin: 0 auto 5px; } .sb-data-section h2 { padding: 19px 20px 15px; } .sb-data-row { grid-template-columns: 1fr; gap: 3px; padding: 9px 20px; } .sb-data-row dd { text-align: left; } .sb-floorplans__grid { grid-template-columns: 1fr; padding: 0 20px 20px; } }
@media (max-width: 620px) { .sb-estate-archive-page { padding-top: 120px !important; } .sb-estate-map-hero { display: flex; flex-direction: column; } .sb-estate-archive__header { position: static; order: -1; max-width: none; margin-bottom: 0; padding: 20px 24px; border-radius: 0; box-shadow: none; } .sb-estate-filter { padding: 12px 16px; } .sb-estate-featured-summary { display: block; } .sb-estate-featured-summary p { margin-top: 4px; } .sb-estate-filter__primary { grid-template-columns: 1fr; } .sb-estate-filter__transaction { grid-column: 1; min-width: 0; overflow-x: auto; justify-content: flex-start; } .sb-estate-filter__transaction-options { width: 100%; } .sb-estate-filter__field { border-right: 0; border-bottom: 1px solid rgba(74,74,73,.12); } .sb-price-range { grid-column: 1; } .sb-estate-filter__advanced { grid-column: 1; padding: 7px 0; border-bottom: 1px solid rgba(74,74,73,.12); } .sb-estate-filter__advanced[open] { grid-column: 1; grid-template-columns: 1fr; } .sb-estate-filter__advanced-body { grid-template-columns: 1fr; } .sb-estate-filter__advanced-body > fieldset { grid-column: 1; } .sb-estate-filter__actions { grid-column: 1; display: flex; padding: 7px 0; } .sb-estate-filter__actions button { min-height: 44px; } .sb-estate-filter__actions a { display: inline-block; margin: 0; } .sb-estate-results__toolbar,.sb-estate-dreamfinder { display: block; } .sb-estate-results__toolbar label { display: grid; grid-template-columns: 1fr; margin-top: 18px; } .sb-estate-dreamfinder .wp-element-button { margin-top: 14px; } .sb-detail-location__place { padding-inline: 20px; } .sb-location-cta { margin-inline: 16px; padding: 22px 16px; } .sb-location-cta a { width: 100%; white-space: normal; } .sb-detail-final-cta { padding: 26px 18px 28px; } .sb-detail-final-cta__actions { width: 100%; flex-direction: column; } .sb-detail-final-cta__actions a { width: 100%; } .sb-detail__description-copy { margin-inline: 20px; padding-left: 0; } .sb-purchase-tools__head { padding-inline: 20px; } .sb-cost-calculator,.sb-investment-planner { padding-inline: 0; } .sb-investment-planner__fields { grid-template-columns: 1fr; } .sb-purchase-tools__note { padding-inline: 20px; } }
@media (max-width: 620px) { .sb-estate-filter__primary { grid-template-columns: 1fr; } .sb-estate-filter__field,.sb-estate-filter__dropdown { border-right: 0; } .sb-estate-filter__field,.sb-estate-filter__dropdown > summary { padding-right: 24px; padding-left: 0; } .sb-estate-filter__field::after,.sb-estate-filter__dropdown > summary::after { right: 4px; } .sb-estate-filter__advanced,.sb-estate-filter__advanced[open] { display: block; padding: 0; } .sb-estate-filter__advanced-body,.sb-price-range__body { width: min(100%,calc(100vw - 40px)); grid-template-columns: 1fr; } .sb-price-range__inputs { grid-template-columns: 1fr 1fr; } .sb-estate-filter:has(.sb-estate-filter__advanced[open]) { margin-bottom: 540px; } }


/* Compact shared CI header; WordPress retains menu state and keyboard handling. */
.sb-header.sb-ci-header{display:flex;align-items:center;flex-wrap:nowrap;background:#fff!important;color:#4a4a49;padding:10px clamp(16px,2.7vw,48px);gap:20px;min-height:78px;box-shadow:none!important;border:0!important}
.wp-site-blocks>header{margin-block:0}
.sb-ci-header a{color:#4a4a49;text-decoration:none}
.sb-ci-header .sb-ci-logo{width:200px;flex:0 0 200px;margin:0}
.sb-ci-header .sb-ci-logo img{display:block;width:200px!important;height:auto!important;max-height:56px;object-fit:contain;object-position:left center}
.sb-ci-header .wp-block-navigation{font-family:Montserrat,Arial,sans-serif;font-size:15px;font-weight:500;flex:1;min-width:0;line-height:1.35}
.sb-ci-header .wp-block-navigation__container{gap:clamp(15px,1.2vw,23px);justify-content:flex-end}
.sb-ci-header .wp-block-navigation__container>.wp-block-navigation-item>.wp-block-navigation-item__content{min-height:44px;display:flex;align-items:center;padding-block:8px}
.sb-ci-header .wp-block-navigation-item__content:hover{color:#60831f}
.sb-ci-header .wp-block-buttons{margin:0;display:flex;flex-wrap:nowrap;gap:10px;flex-shrink:0}
.sb-ci-header .wp-block-button__link{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;font:600 13px/1.3 Montserrat,sans-serif;border-radius:9px;background:#719b24;color:#fff!important;padding:12px 16px;text-decoration:none;border:1px solid transparent;white-space:nowrap;overflow:hidden}
.sb-ci-header .sb-ci-valuation .wp-block-button__link{background:#1b7cb0;color:#fff!important;animation:sb-valuation-invite 1.8s ease-out .4s 2}
.sb-ci-header .sb-ci-valuation .wp-block-button__link:hover{background:#166a97}
.sb-ci-header .sb-ci-valuation .wp-block-button__link::after{content:'';position:absolute;inset:-10% auto -10% -30%;width:24%;background:linear-gradient(90deg,transparent,#ffffff55,transparent);transform:skewX(-18deg);animation:sb-valuation-shine 1.8s ease-out .4s 2;pointer-events:none}
.sb-ci-header .wp-block-button:not(.sb-ci-valuation):not(.sb-ci-portal) .wp-block-button__link{background:#fff;color:#4a4a49!important;border-color:#82b02a}
.sb-ci-header .wp-block-button:not(.sb-ci-valuation):not(.sb-ci-portal) .wp-block-button__link:hover{background:#f6f5f0}
.sb-ci-header .sb-ci-valuation-short{display:none}
@keyframes sb-valuation-invite{0%,100%{box-shadow:0 0 0 0 #1b7cb000}45%{box-shadow:0 0 0 5px #1b7cb033}}
@keyframes sb-valuation-shine{0%{left:-30%}60%,100%{left:125%}}
.sb-ci-header :is(a,button):focus-visible{outline:3px solid #77c7f0;outline-offset:4px}
/* A generous submenu panel, with a clear green top edge and full-row targets. */
.sb-ci-header .wp-block-navigation .wp-block-navigation__submenu-container{min-width:280px!important;padding:10px!important;border:0!important;border-top:3px solid #82b02a!important;border-radius:14px;background:#fff!important;box-shadow:0 14px 36px #27331c26;gap:3px;margin:0;top:100%;overflow:visible}
.sb-ci-header .wp-block-navigation__submenu-container .wp-block-navigation-item{width:100%}
.sb-ci-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:48px;width:100%;padding:13px 15px!important;border-radius:8px;font-size:15px;font-weight:500;line-height:1.4;color:#4a4a49;text-decoration:none}
.sb-ci-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content::after{content:'↗';color:#60831f;font-size:19px;line-height:1}
.sb-ci-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content:is(:hover,:focus-visible){background:#f6f5f0;color:#4a4a49}
@media(max-width:1360px){
.sb-header.sb-ci-header{gap:16px}
.sb-ci-header .wp-block-navigation{order:3;flex:0 0 44px;justify-content:flex-end}
.sb-ci-header .wp-block-buttons{margin-left:auto;order:2}
.sb-ci-header .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}
.sb-ci-header .wp-block-navigation__responsive-container-open{display:flex!important;min-height:44px;min-width:44px;align-items:center;justify-content:center;color:#4a4a49}
.sb-ci-header .wp-block-navigation__responsive-container.is-menu-open{background:#fff;color:#4a4a49;padding:28px}
.sb-ci-header .is-menu-open .wp-block-navigation__container{align-items:stretch;gap:14px;width:100%;font-size:20px}
.sb-ci-header .is-menu-open .wp-block-navigation-item{align-items:stretch;width:100%}
.sb-ci-header .is-menu-open .wp-block-navigation__submenu-container{position:static;min-width:0!important;width:100%;padding:8px!important;box-shadow:none;border:0!important;background:#f6f5f0!important;border-radius:12px}
}
@media(max-width:700px){
.sb-header.sb-ci-header{padding:10px 16px;min-height:70px;gap:12px}
.sb-ci-header .sb-ci-logo{width:160px;flex-basis:160px}
.sb-ci-header .sb-ci-logo img{width:160px!important;max-height:46px}
.sb-ci-header nav.wp-block-navigation{display:flex}
.sb-ci-header .wp-block-buttons>.wp-block-button:not(.sb-ci-valuation):not(.sb-ci-portal){display:none}
}
@media(max-width:520px){
.sb-header.sb-ci-header{padding:8px 12px;min-height:62px;gap:8px}
.sb-ci-header .sb-ci-logo{width:124px;flex-basis:124px}
.sb-ci-header .sb-ci-logo img{width:124px!important;max-height:40px}
.sb-ci-header .sb-ci-valuation-long{display:none}
.sb-ci-header .sb-ci-valuation-short{display:inline}
.sb-ci-header .wp-block-button__link{font-size:13px;padding:11px 12px;min-height:44px}
.sb-ci-header .wp-block-navigation{flex-basis:40px}
.sb-ci-header .wp-block-navigation__responsive-container-open{min-width:40px}
}
@media(prefers-reduced-motion:reduce){.sb-ci-header .sb-ci-valuation .wp-block-button__link,.sb-ci-header .sb-ci-valuation .wp-block-button__link::after{animation:none!important}}

/* Shared CI accent typeface; no rotation. */
.sb-accent{font-family:'Tahu',cursive;font-weight:400;font-style:normal;font-synthesis:none;letter-spacing:0;transform:none}

/* ===== Theme 1.4.22 – Hauptmenü schmaler (Source Sans 3 Halbfett), Untermenü schlicht mit Regenbogen ===== */
.sb-ci-header .wp-block-navigation{font-family:'Source Sans 3','Source Sans Pro',Arial,sans-serif;font-size:16.5px;font-weight:600;letter-spacing:0}
.sb-ci-header .wp-block-navigation__container{gap:clamp(14px,1.4vw,26px)}
@media(min-width:1361px){
.sb-ci-header .wp-block-navigation .wp-block-navigation__submenu-container{min-width:220px!important;padding:6px 0!important;border:0!important;border-radius:0 0 6px 6px;background:#fff!important;box-shadow:0 10px 22px rgba(39,51,28,.1);margin-top:17px;gap:0}
/* Regenbogenlinie oben, gleiche Farben wie die CI-Linie im Footer. */
.sb-ci-header .wp-block-navigation .wp-block-navigation__submenu-container::before{content:'';position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,#e64417 0%,#fdd340 21%,#ced124 41%,#c6d01e 50%,#b8ce18 63%,#5dbdec 100%)}
/* Unsichtbare Brücke, damit das Menü beim Überfahren der Lücke offen bleibt. */
.sb-ci-header .wp-block-navigation .wp-block-navigation__submenu-container::after{content:'';position:absolute;left:0;right:0;top:-18px;height:18px}
.sb-ci-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content{min-height:42px;padding:10px 18px 10px 16px!important;border-radius:0;border-left:3px solid transparent;font-size:15.5px;font-weight:600}
.sb-ci-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content::after{content:none}
.sb-ci-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content:is(:hover,:focus-visible){background:#f6f5f0;border-left-color:#82b02a;color:#4a4a49}
}

/* Theme 1.4.38: illustrierte Kennzahlen-Icons auf der Immobilien-Detailseite (Dani, 14.10.2026). Karten behalten das SVG. */
.sb-fact-img { display: none; }
.sb-detail__fact-icon:has(.sb-fact-img) { width: 54px; height: 54px; flex-basis: 54px; }
.sb-detail__fact-icon:has(.sb-fact-img) svg { display: none; }
.sb-detail__fact-icon .sb-fact-img { display: block; width: 54px; height: 54px; object-fit: contain; }
@media (max-width: 620px) { .sb-detail__fact-icon:has(.sb-fact-img), .sb-detail__fact-icon .sb-fact-img { width: 44px; height: 44px; flex-basis: 44px; } }

/* Theme 1.4.46: grüne Buttons mit diagonalem Verlauf CI-Grün → Frischgrün; weiße Buttons mit grünem Rahmen: Rahmen 1,5 px im selben Verlauf (Dani 15.10.2026, Variante A) */
.sb-inquiry-card button:not(.sb-button-secondary), .sb-location-cta a, .sb-estate-filter__apply, .sb-estate-load-more a, .sb-detail-final-cta__primary, .sb-detail-actions__button--share { border-color: transparent !important; background-image: linear-gradient(135deg,#82b02a 0%,#bace18 100%); background-origin: border-box; }
.sb-inquiry-card button:not(.sb-button-secondary):hover, .sb-location-cta a:hover, .sb-estate-filter__apply:hover, .sb-estate-load-more a:hover, .sb-detail-final-cta__primary:hover, .sb-detail-actions__button--share:hover { background-image: linear-gradient(135deg,#729d25 0%,#a9bd16 100%); }
.sb-ci-header .wp-block-button:not(.sb-ci-valuation):not(.sb-ci-portal) .wp-block-button__link, .sb-inquiry-card .sb-button-secondary { border: 1.5px solid transparent !important; background: linear-gradient(#fff,#fff) padding-box, linear-gradient(135deg,#82b02a,#bace18) border-box; }
.sb-ci-header .wp-block-button:not(.sb-ci-valuation):not(.sb-ci-portal) .wp-block-button__link:hover, .sb-inquiry-card .sb-button-secondary:hover { background: linear-gradient(#f6f5f0,#f6f5f0) padding-box, linear-gradient(135deg,#82b02a,#bace18) border-box; }

/* Theme 1.4.62: Logo im Header etwas größer (Dani 16.10.2026). Bei voller Navigation (1361–1499 px) nur leicht, damit nichts umbricht. */
.sb-ci-header .sb-ci-logo{width:220px;flex-basis:220px}
.sb-ci-header .sb-ci-logo img{width:220px!important;max-height:62px}
@media(min-width:1500px){.sb-ci-header .sb-ci-logo{width:244px;flex-basis:244px}.sb-ci-header .sb-ci-logo img{width:244px!important;max-height:68px}}
@media(max-width:700px){.sb-ci-header .sb-ci-logo{width:180px;flex-basis:180px}.sb-ci-header .sb-ci-logo img{width:180px!important;max-height:52px}}
@media(max-width:520px){.sb-ci-header .sb-ci-logo{width:140px;flex-basis:140px}.sb-ci-header .sb-ci-logo img{width:140px!important;max-height:44px}}

/* Theme 1.4.65: Untermenü schließt bündig an die Header-Unterkante an. Seit dem größeren Logo (1.4.62) ist der Header höher. */
@media(min-width:1361px){
.sb-ci-header .wp-block-navigation .wp-block-navigation__submenu-container{margin-top:22px}
.sb-ci-header .wp-block-navigation .wp-block-navigation__submenu-container::after{top:-26px;height:26px}
}
@media(min-width:1500px){
.sb-ci-header .wp-block-navigation .wp-block-navigation__submenu-container{margin-top:28px}
.sb-ci-header .wp-block-navigation .wp-block-navigation__submenu-container::after{top:-32px;height:32px}
}

/* Theme 1.4.66: Rückmeldungen von Contact Form 7 als weiße Karte mit Farbkante und Symbol statt Plugin-Rahmen (Dani 16.10.2026).
   Kein display gesetzt, damit das Plugin die leere Meldung (form.init) weiterhin ausblendet. */
.wpcf7 form.wpcf7-form .wpcf7-response-output{--sb-msg:#82b02a;position:relative;margin:18px 0 0;padding:14px 18px 14px 54px;border:0;border-left:4px solid var(--sb-msg);border-radius:12px;background:#fff;box-shadow:0 6px 18px rgba(39,51,28,.08);color:#4a4a49;font-size:16px;line-height:1.5}
.wpcf7 form.wpcf7-form .wpcf7-response-output::before{content:'!';position:absolute;left:18px;top:14px;width:24px;height:24px;border-radius:50%;background:var(--sb-msg);color:#fff;font:700 14px/24px 'Source Sans 3',Arial,sans-serif;text-align:center}
.wpcf7 form.wpcf7-form.sent .wpcf7-response-output{--sb-msg:#82b02a;border-color:#82b02a}
.wpcf7 form.wpcf7-form.sent .wpcf7-response-output::before{content:'✓'}
.wpcf7 form.wpcf7-form:is(.invalid,.unaccepted,.payment-required) .wpcf7-response-output{--sb-msg:#e9a21b;border-color:#e9a21b}
.wpcf7 form.wpcf7-form:is(.failed,.aborted,.spam) .wpcf7-response-output{--sb-msg:#c0392b;border-color:#c0392b}

/* Theme 1.4.89: Wohntraumfinder als eigenes Formular aus dem Core ([sonnberger_wohntraumfinder], Core 1.27.0).
   Ohne JavaScript stehen alle Schritte untereinander; mit JavaScript (.is-stepped) jeweils einer. */
.sb-wtf{--wtf-brand:#82b02a;--wtf-ink:#4a4a49;--wtf-muted:#6d706a;--wtf-line:#dcd9cf;--wtf-tint:#f6f5f0;max-width:640px;color:var(--wtf-ink);font-size:16px;line-height:1.5}
.sb-wtf [hidden]{display:none!important}
.sb-wtf__form{display:grid;gap:18px;padding:clamp(18px,3vw,28px);border:1px solid var(--wtf-line);border-radius:22px;background:#fff}
.sb-wtf__progress{margin:0;color:var(--wtf-muted);font:600 13px/1.3 Montserrat,Arial,sans-serif;letter-spacing:.04em;text-transform:uppercase}
.sb-wtf__step{display:grid;gap:12px;min-width:0;margin:0;padding:0;border:0}
.sb-wtf__form:not(.is-stepped) .sb-wtf__step+.sb-wtf__step{padding-top:18px;border-top:1px solid var(--wtf-line)}
.sb-wtf__step legend{float:left;width:100%;margin:0 0 4px;padding:0;color:var(--wtf-ink);font:700 clamp(19px,2.2vw,22px)/1.3 Montserrat,Arial,sans-serif}
.sb-wtf__step legend:focus{outline:0}
.sb-wtf__sub{clear:both;margin:6px 0 0;font-weight:600}
.sb-wtf__hint{margin:0;color:var(--wtf-muted);font-size:15px}
.sb-wtf__optional{color:var(--wtf-muted);font-weight:400;font-size:.9em}
.sb-wtf__choices{display:flex;flex-wrap:wrap;gap:8px}
.sb-wtf__choices--tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}
.sb-wtf__check,.sb-wtf__tile{position:relative;display:inline-flex;cursor:pointer}
.sb-wtf__check input,.sb-wtf__tile input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}
.sb-wtf__check span,.sb-wtf__tile span{display:inline-flex;align-items:center;min-height:42px;padding:8px 16px;border:1px solid var(--wtf-line);border-radius:999px;background:#fff;font-size:15px;transition:border-color .15s,background-color .15s}
.sb-wtf__tile span{justify-content:center;width:100%;min-height:64px;border-radius:16px;font:600 16px/1.3 Montserrat,Arial,sans-serif;text-align:center}
.sb-wtf__check input:checked+span,.sb-wtf__tile input:checked+span{border-color:var(--wtf-brand);background:#f1f7e6;box-shadow:inset 0 0 0 1px var(--wtf-brand)}
.sb-wtf__check input:focus-visible+span,.sb-wtf__tile input:focus-visible+span{outline:3px solid #45b5e8;outline-offset:2px}
.sb-wtf__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px 16px}
.sb-wtf__form label:not(.sb-wtf__check):not(.sb-wtf__tile):not(.sb-wtf__consent):not(.sb-honeypot){display:grid;gap:4px;font-size:14px;font-weight:600;color:var(--wtf-muted)}
.sb-wtf__form :is(input[type=text],input[type=email],input[type=tel],input[type=number],select,textarea){width:100%;min-height:46px;padding:10px 12px;border:1px solid var(--wtf-line);border-radius:12px;background:#fff;color:var(--wtf-ink);font:400 16px/1.4 'Source Sans 3',Arial,sans-serif}
.sb-wtf__form :is(input,select,textarea):focus{outline:2px solid var(--wtf-brand);outline-offset:1px;border-color:var(--wtf-brand)}
.sb-wtf__phone{display:grid;gap:4px}
.sb-wtf__phone>label{font-size:14px;font-weight:600;color:var(--wtf-muted)}
.sb-wtf__phone-row{display:grid;grid-template-columns:minmax(0,130px) minmax(0,1fr);gap:8px}
.sb-wtf__consent{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.45}
.sb-wtf__consent input{flex:0 0 auto;width:18px;height:18px;margin-top:2px;accent-color:var(--wtf-brand)}
.sb-wtf__consent a{color:inherit}
.sb-wtf__submit,.sb-wtf__next,.sb-wtf__back{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 24px;border-radius:999px;font:600 15px/1.3 Montserrat,Arial,sans-serif;cursor:pointer}
.sb-wtf__submit,.sb-wtf__next{border:0;background:linear-gradient(135deg,#82b02a 0%,#bace18 100%);color:#fff}
.sb-wtf__submit:hover,.sb-wtf__next:hover{background:linear-gradient(135deg,#729d25 0%,#a9bd16 100%)}
.sb-wtf__submit{justify-self:start}
.sb-wtf__submit:disabled{opacity:.7;cursor:wait}
.sb-wtf__back{border:1px solid var(--wtf-line);background:#fff;color:var(--wtf-ink)}
.sb-wtf__nav{display:flex;justify-content:space-between;gap:12px}
.sb-wtf__nav .sb-wtf__next{margin-left:auto}
.sb-wtf :is(button):focus-visible{outline:3px solid #45b5e8;outline-offset:3px}
.sb-wtf__status{margin:0 0 16px;padding:16px 18px;border-radius:16px;font-weight:600}
.sb-wtf__status--ok{background:#f1f7e6;border:1px solid var(--wtf-brand)}
.sb-wtf__status--error{background:#fdf1ef;border:1px solid #c0392b}
.sb-wtf__status:focus{outline:0}
@media(max-width:560px){.sb-wtf__form{padding:16px;border-radius:18px}.sb-wtf__submit{width:100%}.sb-wtf__nav button{flex:1}}

/* Theme 1.4.67: Untermenü ohne grünen Strich links (Dani 16.10.2026); Hover nur mit hellem Hintergrund. */
.sb-ci-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content{border-left:0!important;padding-left:19px!important}

/* Theme 1.4.67: Immobilienübersicht (Dani 16.10.2026) – Karte schließt direkt an den Header an, diagonaler Grünverlauf
   mit weißer Überschrift wie bei den Foto-Heros (ohne Weichzeichner, damit Karten-Popups scharf bleiben), Tahu-Zeile; Filter auf Contentbreite. Der Verlauf lässt Klicks zur Karte durch. */
.sb-estate-archive-page{padding-top:0!important}
.sb-estate-map-hero{isolation:isolate;overflow:hidden}
.sb-estate-map-hero::before{content:'';position:absolute;inset:0;z-index:650;pointer-events:none;background:linear-gradient(115deg,rgba(53,82,30,.86) 0%,rgba(94,138,28,.72) 24%,rgba(130,176,42,.42) 40%,rgba(130,176,42,0) 56%)}
.sb-estate-map-hero .sb-estate-archive__header{z-index:660;top:clamp(48px,9vw,110px);left:max(24px,calc((100% - 1180px) / 2));max-width:min(460px,calc(100% - 48px));padding:0;border-radius:0;background:none;box-shadow:none;pointer-events:none;color:#fff}
.sb-estate-map-hero .sb-estate-archive__header .sb-kicker{color:#fff}
.sb-estate-map-hero .sb-estate-archive__header h1{margin:0;color:#fff;font-size:clamp(2.6rem,5vw,4.2rem);line-height:1.05}
.sb-estate-map-hero .sb-estate-archive__script{margin:6px 0 0;color:#fff;font-size:clamp(34px,3.6vw,52px);line-height:1.3}
.sb-estate-map-hero .leaflet-top.leaflet-left{left:auto;right:0}
.sb-estate-map-hero .leaflet-top.leaflet-left .leaflet-control{margin-left:0;margin-right:12px}
.sb-estate-filter{width:auto;max-width:1180px;margin:0 auto;padding:14px 16px;border-radius:16px;box-shadow:0 10px 28px rgba(39,51,28,.08)}
@media (max-width:760px){
.sb-estate-map-hero::before{display:none}
.sb-estate-map-hero{display:flex;flex-direction:column}
.sb-estate-map-hero .sb-estate-archive__header{position:static;order:-1;max-width:none;padding:26px 20px 24px;background:linear-gradient(115deg,#35521e 0%,#5e8a1c 60%,#82b02a 100%)}
.sb-estate-filter{padding:12px 16px;border-radius:12px}
}

/* Theme 1.4.68 (Dani 16.10.2026) */
/* Immobilienkarten: illustrierte Kennzahlen-Icons wie auf der Detailseite statt Strich-Icon im grünen Quadrat; gilt auch innerhalb der festen Seiten (Kaufen). */
.sb-estate-card__fact-icon:has(.sb-fact-img),#sb-selling-fixed .sb-estate-card__fact-icon:has(.sb-fact-img){width:36px;height:36px;flex:0 0 36px;border-radius:0;background:none}
.sb-estate-card__fact-icon:has(.sb-fact-img) svg,#sb-selling-fixed .sb-estate-card__fact-icon:has(.sb-fact-img) svg{display:none}
.sb-estate-card__fact-icon .sb-fact-img,#sb-selling-fixed .sb-estate-card__fact-icon .sb-fact-img{display:block;width:36px;height:36px;max-width:none;object-fit:contain}
/* Detailseite: kein beiger Abstand über der Galerie. */
.sb-detail-page{padding-top:0!important}
/* Planer: Hinweistext mit Luft zur Leiste darüber. */
.sb-purchase-tools__note{padding-top:16px;font-size:.74rem}
/* Anfrageformular: robust gegen zusätzliche Absätze/Umbrüche, die WordPress oder Plugins einfügen. */
.sb-inquiry-card form>p:empty,.sb-inquiry-card form>br{display:none}
.sb-inquiry-card form>p{margin:0}
.sb-inquiry-card form label:not(.sb-inquiry-card__check):not(.sb-inquiry-phone__country):not(.sb-inquiry-phone__number):not(.sb-honeypot){display:grid;gap:3px;margin:0;color:#6d706a;font-size:.76rem;font-weight:600;letter-spacing:.02em}
.sb-inquiry-card form label br{display:none}
/* Hinweis zum Widerrufs-Häkchen in der Anfragekarte: deutlich sichtbar statt Kleingedrucktes. */
.sb-inquiry-card__note--consent{padding:12px 14px;border-left-width:4px;font-size:.84rem;line-height:1.45}
.sb-inquiry-card__note--consent p{margin:0}
.sb-inquiry-card__note--consent p+p{margin-top:6px}
.sb-inquiry-card__note--consent strong{display:block;margin-bottom:3px;color:#3f463b;font-size:.92rem}
.sb-inquiry-card__note--consent a{color:#50731b;font-weight:600}
/* Tahu im Karten-Hero der Immobilienübersicht: 0,85 × Größe der Überschrift „Immobilien“. */
.sb-estate-map-hero .sb-estate-archive__script{font-size:calc(clamp(2.6rem,5vw,4.2rem) * .85);line-height:1.25}

/* Theme 1.4.69 (Dani 16.10.2026) */
/* Karten-Hero Immobilienübersicht: Verlauf D1 Dunkelgrün → Sonnberger-Grün → Gelbgrün, direkt an der Karte (endet mit ihr);
   kein Weichzeichner-Rechteck der alten weißen Box; Tahu 0,85 × „Immobilien“ (stärker als die alte Absatzregel). */
.sb-estate-map-hero::before{content:none}
.sb-estate-map-hero .sb-map-stage{position:relative}
.sb-estate-map-hero .sb-map-stage::after{content:'';position:absolute;inset:0;z-index:650;pointer-events:none;background:linear-gradient(115deg,rgba(53,82,30,.95) 0%,rgba(53,82,30,.88) 14%,rgba(130,176,42,.86) 32%,rgba(186,206,24,.62) 46%,rgba(186,206,24,.2) 58%,rgba(186,206,24,0) 68%)}
.sb-estate-map-hero .sb-estate-archive__header{-webkit-backdrop-filter:none;backdrop-filter:none}
.sb-estate-map-hero .sb-estate-archive__header>p.sb-estate-archive__script{margin:6px 0 0;font-size:calc(clamp(2.6rem,5vw,4.2rem) * .85);line-height:1.25}
@media (max-width:760px){.sb-estate-map-hero .sb-map-stage::after{display:none}}
/* Immobilienkarten, Variante A: Icon über Bezeichnung und Wert, Werte ohne Umbruch. */
.sb-estate-card__facts>div,#sb-selling-fixed .sb-estate-card__facts>div{flex-direction:column;align-items:flex-start;gap:6px}
.sb-estate-card__fact-icon:has(.sb-fact-img),#sb-selling-fixed .sb-estate-card__fact-icon:has(.sb-fact-img){width:34px;height:34px;flex-basis:auto}
.sb-estate-card__fact-icon .sb-fact-img,#sb-selling-fixed .sb-estate-card__fact-icon .sb-fact-img{width:34px;height:34px}
.sb-estate-card__facts strong{white-space:nowrap;margin-top:1px}

/* Theme 1.4.70 (Dani 20.10.2026) */
/* Slider „Zuletzt verkauft“ (inc/sold-slider.php): 3 Karten auf Desktop, wischbar, Abzeichen auf dem Bild. */
.sb-sold{margin-top:28px}
.sb-sold__viewport{position:relative}
.sb-sold__track{display:flex;gap:22px;margin:0;padding:4px 2px 18px;list-style:none;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.sb-sold__track::-webkit-scrollbar{display:none}
.sb-sold__item{flex:0 0 calc((100% - 44px) / 3);scroll-snap-align:start;min-width:0}
.sb-sold__card{height:100%;overflow:hidden;border-radius:20px;background:#fff;box-shadow:0 10px 26px rgba(39,51,28,.08)}
.sb-sold__media{position:relative;aspect-ratio:4/3;background:#edf0e6}
.sb-sold__media img{display:block;width:100%;height:100%;object-fit:cover}
.sb-sold__flag{position:absolute;top:12px;left:12px;padding:6px 10px;border-radius:6px;background:#4f7a26;color:#fff;font:700 11px/1 Montserrat,Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}
.sb-sold__badges{position:absolute;left:12px;bottom:12px;display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.sb-sold__badge{display:inline-flex;align-items:center;gap:7px;padding:6px 10px 6px 7px;border-radius:6px;background:rgba(255,255,255,.95);box-shadow:0 4px 12px rgba(0,0,0,.15);color:#3f463b;font:600 13px/1.2 'Source Sans 3',Arial,sans-serif}
.sb-sold__badge i{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;color:#fff}
.sb-sold__badge svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.sb-sold__badge--fast i{background:#45b5e8}
.sb-sold__badge--above i{background:linear-gradient(135deg,#82b02a,#bace18)}
.sb-sold__body{padding:16px 18px 18px}
.sb-sold__title{margin:0 0 4px;color:#3f463b;font:600 16px/1.35 Montserrat,Arial,sans-serif;letter-spacing:0}
.sb-sold__meta{margin:0;color:#4a4a49;font-size:15px;line-height:1.4}
.sb-sold__date{margin:2px 0 0;color:#6d6d68;font-size:14px}
.sb-sold__nav{display:flex;align-items:center;gap:12px;margin-top:6px}
.sb-sold__arrow{display:inline-grid;place-items:center;width:40px;height:40px;padding:0;border:1.5px solid #d8d9d3;border-radius:50%;background:#fff;color:#4a4a49;font-size:18px;cursor:pointer}
.sb-sold__arrow:hover,.sb-sold__arrow:focus-visible{border-color:#82b02a;color:#50731b}
.sb-sold__dots{display:flex;gap:8px}
.sb-sold__dot{width:9px;height:9px;padding:0;border:0;border-radius:5px;background:#d6d3c8;cursor:pointer;transition:width .2s,background .2s}
.sb-sold__dot.is-active{width:26px;background:#82b02a}
@media(max-width:900px){.sb-sold__item{flex-basis:calc((100% - 22px) / 2)}}
@media(max-width:600px){.sb-sold__item{flex-basis:84%}}
@media(prefers-reduced-motion:reduce){.sb-sold__dot{transition:none}}
/* Anfrageformular Detailseite: Feldname näher an der Eingabe, Telefon ohne Lücke, Rahmen ums Nachrichtenfeld, Luft um die Zustimmung. */
.sb-inquiry-card input:not([type="checkbox"]),.sb-inquiry-card select{padding-top:2px;margin:0;min-height:0}
.sb-inquiry-phone{gap:2px}
.sb-inquiry-phone__row{align-items:center}
.sb-inquiry-phone__row :is(select,input){height:auto;margin:0}
/* Theme 1.4.94: Ländervorwahl nicht mehr abgeschnitten – Spalte so breit wie der längste Eintrag („+423 Liechtenstein“); auf schmalen Handys untereinander. */
.sb-inquiry-phone__row{grid-template-columns:max-content minmax(0,1fr)}
.sb-inquiry-phone__row select{width:auto;min-width:118px;padding-right:4px;font-weight:400;letter-spacing:0}
@media(max-width:400px){.sb-inquiry-phone__row{grid-template-columns:minmax(0,1fr)}.sb-inquiry-phone__row select{width:100%}}
.sb-inquiry-card textarea{margin-top:4px;padding:9px 11px;border:1px solid #d8d9d3;border-radius:8px;background:#fff}
.sb-inquiry-card textarea:focus{border-color:#82b02a;box-shadow:0 0 0 1px #82b02a}
.sb-inquiry-card form .sb-inquiry-card__check{margin:12px 0}
/* Theme 1.4.71: Objekttitel im Slider – Name bis zum Gedankenstrich in Großbuchstaben, Rest normal. */
.sb-sold__name{font-weight:700;font-size:17px;text-transform:uppercase;letter-spacing:.01em}
.sb-sold__sub{font-weight:500;text-transform:none}
/* Theme 1.4.71: Schild „Verkauft“ in Orange (Sonne der CI) statt Grün (Dani 20.10.2026). */
.sb-sold__flag,#sb-selling-fixed .st-sold{background:#ee7d22;color:#fff}

/* Theme 1.4.72: Ankündigung „Demnächst“ (Core 1.20.0) – Schild in CI-Gelb mit dunkler Schrift, kein Preis, „Vormerken lassen“. */
.sb-estate-card__status--coming,.sb-detail__badge--coming{background:#fdd340;color:#3f463b}
.sb-estate-card__price--coming a{color:#50731b;font:700 1rem/1.3 Montserrat,sans-serif;text-decoration:underline;text-underline-offset:4px}
.sb-estate-card__price--coming a span{display:inline-block;text-decoration:none}
.sb-detail-coming-notice{display:flex;flex-wrap:wrap;width:min(1180px,calc(100% - 32px));margin:0 auto 18px;padding:14px 18px;align-items:center;gap:6px 18px;border-left:4px solid #fdd340;border-radius:10px;background:#fffbe6;color:#4a4a49}
.sb-detail-coming-notice strong{color:#3f463b;font:700 .88rem/1.3 Montserrat,sans-serif}
.sb-detail-coming-notice span{flex:1 1 320px;font-size:.86rem;line-height:1.45}
.sb-detail-coming-notice a{color:#50731b;font-weight:700;white-space:nowrap}

/* Theme 1.4.73: „Reserviert“ dunkelgrau mit dezentem weißem Rahmen – Orange steht für „Verkauft“ (Dani 20.10.2026). Karten, Detailseite, Karte/Legende. */
.sb-estate-card__status--reserved,.sb-detail__badge--reserved{background:#4a4a49;color:#fff;box-shadow:0 0 0 1.5px rgba(255,255,255,.85)}
.sb-detail__badge--sold{background:#ee7d22}
.sb-map-legend__status--reserved,.sb-map-dot--reserved,.sb-leaflet-marker--reserved{background:#4a4a49}

/* Global (1.4.81): Text nur für Screenreader, z. B. „(öffnet in neuem Fenster)“ im Menü. */
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }

/* Hero-Schatten (1.4.86, Dani 22.10.2026, Variante b): weicher Schatten an der Oberkante des Bild-Heros,
   direkt unter dem weißen Header – nur auf Seiten, die mit einem Bild-Hero beginnen (nicht auf Detailseiten). */
body:has(:is(.st-hero, .st-team-hero, .st-valuation-hero, .sh-hero, .sb-estate-map-hero)) .sb-header.sb-ci-header{position:relative;z-index:20}
body:has(:is(.st-hero, .st-team-hero, .st-valuation-hero, .sh-hero, .sb-estate-map-hero)) .sb-header.sb-ci-header::after{content:"";position:absolute;left:0;right:0;top:100%;height:18px;background:linear-gradient(rgba(0,0,0,.25),rgba(0,0,0,0));pointer-events:none}

/* Untermenü „Wohnmarktportal“: Kompass-Symbol vor dem Text (1.4.86); der Pfeil ↗ steht im Text. */
.sb-nav-compass > a::before{content:"";display:inline-block;width:16px;height:16px;margin-right:8px;vertical-align:-3px;background:currentColor;-webkit-mask: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='m15.5 8.5-2.2 4.8-4.8 2.2 2.2-4.8z'/%3E%3C/svg%3E") center/contain no-repeat;mask: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='m15.5 8.5-2.2 4.8-4.8 2.2 2.2-4.8z'/%3E%3C/svg%3E") center/contain no-repeat}

/* Menü (1.4.87): Hauptseite als erster Eintrag im Untermenü („Verkaufen Überblick“ usw.), hervorgehoben mit feiner Linie. */
.sb-ci-header .wp-block-navigation__submenu-container .sb-nav-overview > a{font-weight:700;border-bottom:1px solid #e8e6df}
/* Theme 1.4.90: Wohnmarktportal als eigener Header-Button (grüner Verlauf, Kompass, neuer Tab) statt Menüpunkt „Dahoam in der Region“; Bewerten blau wie auf den Seiten (Dani 22.10.2026). */
.sb-ci-header .sb-ci-portal .wp-block-button__link{gap:7px;background:linear-gradient(135deg,#82b02a 0%,#bace18 100%);color:#fff!important}
.sb-ci-header .sb-ci-portal .wp-block-button__link:hover{background:linear-gradient(135deg,#729d25 0%,#a9bd16 100%)}
/* Menüeintrag „Wohnmarktportal“ nur im aufgeklappten Handy-/Tablet-Menü, abgesetzt. */
@media(min-width:1361px){.sb-ci-header .wp-block-navigation .sb-nav-portal{display:none!important}}
.sb-ci-header .is-menu-open .sb-nav-portal{margin-top:6px;padding-top:16px;border-top:1px solid #e8e6df}
.sb-ci-header .is-menu-open .sb-nav-portal>a{justify-content:flex-start;gap:0;color:#35521e;font-weight:600}
@media(max-width:400px){.sb-ci-header .sb-ci-logo{width:108px;flex-basis:108px}.sb-ci-header .sb-ci-logo img{width:108px!important}}
/* Theme 1.4.93: Filter „Objektart“ und „Region oder Ort“ – die Auswahlliste liegt über dem ganzen Feld, damit auch Icon und Pfeil die Liste öffnen (Dani 23.10.2026). Innenabstände folgen dem Feld je Breakpoint. */
.sb-estate-filter__field{--sb-f-pl:16px;--sb-f-pr:34px}
@media (max-width:1200px){.sb-estate-filter__field{--sb-f-pl:12px;--sb-f-pr:28px}}
@media (max-width:620px){.sb-estate-filter__field{--sb-f-pl:0px;--sb-f-pr:24px}}
.sb-estate-filter__primary > .sb-estate-filter__field--category{--sb-f-pl:0px}
.sb-estate-filter__field select{position:absolute;inset:0;width:100%;height:100%;padding:0 var(--sb-f-pr) 0 calc(var(--sb-f-pl) + 30px);cursor:pointer}
/* Theme 1.4.93: kein WordPress-Blockabstand zwischen Header und Immobilienübersicht bzw. Detailseite – die Karte schließt direkt an. */
.wp-site-blocks > main.sb-estate-archive-page,.wp-site-blocks > main.sb-detail-page{margin-block-start:0}
/* Theme 1.4.93: Header-Buttons (Dani 27.10.2026) – „Immobilien“ mit Haus-Icon, Wohnmarktportal ohne Kompass (bis 900 px Kurztext „Wohnmarkt“),
   Schrift von Wohnmarktportal und Bewerten bei Hover/Fokus immer weiß – auch gegen gespeicherte Link-Hover-Farben aus dem Website-Editor. */
.sb-ci-header .sb-ci-house{display:inline-block;flex-shrink:0;width:16px;height:16px;margin-right:-1px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 11 12 4l8 7'/%3E%3Cpath d='M6.5 10v10h11V10M10 20v-6h4v6'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 11 12 4l8 7'/%3E%3Cpath d='M6.5 10v10h11V10M10 20v-6h4v6'/%3E%3C/svg%3E") center/contain no-repeat}
.sb-ci-header .sb-ci-portal-short{display:none}
.sb-ci-header :is(.sb-ci-portal,.sb-ci-valuation) .wp-block-button__link:is(:hover,:focus-visible),.sb-ci-header :is(.sb-ci-portal,.sb-ci-valuation) .wp-block-button__link:is(:hover,:focus-visible) *{color:#fff!important}
.sb-ci-header .sb-ci-valuation .wp-block-button__link:is(:hover,:focus-visible){background:#166a97}
@media(max-width:900px){
.sb-ci-header .sb-ci-portal .sb-ci-portal-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.sb-ci-header .sb-ci-portal .sb-ci-portal-short{display:inline}
}
@media(max-width:460px){
.sb-header.sb-ci-header{gap:6px}
.sb-ci-header .wp-block-buttons{gap:6px}
.sb-ci-header .wp-block-button__link{padding:11px 9px;font-size:12px;gap:5px}
.sb-ci-header :is(.sb-ci-portal-arrow,.sb-ci-valuation [aria-hidden="true"]){display:none}
.sb-ci-header .sb-ci-logo{width:96px;flex-basis:96px}.sb-ci-header .sb-ci-logo img{width:96px!important}
}
/* Theme 1.4.93: Immobilienübersicht endet wie die festen Seiten mit dem Foto-Abschlussband direkt über dem Footer (Core-Filter sonnberger_estate_archive_dreamfinder). */
#sb-selling-fixed.sb-estate-close{width:100vw;max-width:none;margin:64px calc(50% - 50vw) 0}
.sb-estate-archive-page:has(.sb-estate-close){padding-bottom:0!important}
/* ===== Theme 1.4.95: Burger-Menü bis 1360 px (Dani 28.10.2026) – vier Bereiche als Karten mit Icon, Kontaktkarte mit Foto,
   am Handy aufklappbare Bereiche und feste Buttonleiste. Markup: inc/burger-menu.php; ohne JavaScript bleibt das WordPress-Overlay. ===== */
.sb-menu-open{display:none}
@media(max-width:1360px){
.sb-ci-header.sb-menu-ready .wp-block-navigation{display:none!important}
.sb-ci-header.sb-menu-ready .sb-menu-open{order:3;display:flex;align-items:center;justify-content:center;flex:0 0 44px;min-width:44px;min-height:44px;padding:0;border:0;background:none;color:#4a4a49;cursor:pointer}
.sb-menu-open svg{width:28px;height:28px}
}
html.sb-menu-is-open{overflow:hidden}
.sb-menu{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;padding:0;border:0;background:#fff;color:#4a4a49;font:400 17px/1.5 'Source Sans 3',Arial,sans-serif}
.sb-menu[open]{display:flex;flex-direction:column}
.sb-menu::backdrop{background:#fff}
.sb-menu a{color:#4a4a49;text-decoration:none}
.sb-menu__top{position:relative;display:flex;align-items:center;justify-content:space-between;gap:16px;flex:0 0 auto;padding:12px clamp(16px,4vw,56px);min-height:78px}
.sb-menu__top::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,#e64417 0%,#fdd340 21%,#ced124 41%,#c6d01e 50%,#b8ce18 63%,#5dbdec 100%)}
.sb-menu__logo img{display:block;width:200px;height:auto}
.sb-menu__close{display:flex;align-items:center;gap:10px;min-height:44px;padding:9px 18px 9px 14px;border:1px solid #e8e6df;border-radius:999px;background:#fff;color:#4a4a49;font:600 15px 'Source Sans 3',Arial,sans-serif;cursor:pointer}
.sb-menu__close:hover{background:#f6f5f0}
.sb-menu__close svg{width:18px;height:18px}
.sb-menu__body{flex:1 1 auto;min-height:0;overflow:auto;overscroll-behavior:contain;display:grid;grid-template-columns:minmax(0,1fr) 360px;align-content:start;grid-auto-rows:max-content;gap:clamp(24px,3vw,48px);width:100%;max-width:1240px;margin:0 auto;padding:clamp(28px,4vw,52px) clamp(16px,4vw,56px) 40px}
.sb-menu .sb-menu__groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2vw,28px);align-content:start}
.sb-menu-g{padding:22px 18px 16px;border-radius:20px;background:#f6f5f0}
.sb-menu-g__head{display:flex;align-items:center;gap:12px}
.sb-menu-g__icon{display:grid;place-items:center;flex:0 0 64px;height:64px;border-radius:50%;background:#fff;overflow:hidden}
.sb-menu-g__icon img{display:block;width:48px;height:48px;object-fit:contain}
.sb-menu .sb-menu-g__title{margin:0;font:700 clamp(18px,1.5vw,21px)/1.2 Montserrat,Arial,sans-serif;color:#4a4a49}
.sb-menu .sb-menu-g__title a:hover{color:#60831f}
.sb-menu-g__toggle{display:none;margin-left:auto;padding:0;border:0;background:none;color:#4a4a49;cursor:pointer}
.sb-menu-g__toggle svg{display:block;width:22px;height:22px;transition:transform .2s}
.sb-menu-g__sub{margin:10px 0 14px;font-size:15px;line-height:1.45;color:#6f6f68}
.sb-menu-g__links{margin:0;padding:0;list-style:none;border-top:1px solid #e8e6df}
.sb-menu-g__links .sb-menu-mobile-only{display:none}
.sb-menu-g__links a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:44px;padding:10px 2px;border-bottom:1px solid #e8e6df;font-weight:600;font-size:17px;line-height:1.35}
.sb-menu-g__links li:last-child a{border-bottom:0}
.sb-menu-g__links a::after{content:"→";color:#82b02a;opacity:0;transform:translateX(-6px);transition:opacity .2s,transform .2s}
.sb-menu-g__links a:is(:hover,:focus-visible){color:#60831f}
.sb-menu-g__links a:is(:hover,:focus-visible)::after{opacity:1;transform:none}
.sb-menu__side{position:relative;min-height:480px;border-radius:22px;overflow:hidden;background:#dcdcd4 var(--sb-menu-photo) center/cover no-repeat}
.sb-menu__card{position:absolute;left:18px;right:18px;bottom:18px;padding:24px 22px 22px;border-radius:18px;background:#fff;box-shadow:0 14px 34px rgba(20,35,10,.18)}
.sb-menu__card p{margin:0 0 16px;font-size:16px;line-height:1.45}
.sb-menu .sb-menu__script{margin:0 0 6px;font:400 40px/1 'Tahu',cursive;color:#60831f}
.sb-menu__actions{display:grid;gap:10px}
.sb-menu .sb-menu-btn{display:flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 18px;border-radius:999px;font:700 15px/1.2 Montserrat,Arial,sans-serif;text-align:center}
.sb-menu-btn svg{flex:0 0 17px;width:17px;height:17px}
.sb-menu .sb-menu-btn--blue{background:#1b7cb0;color:#fff}
.sb-menu .sb-menu-btn--blue:hover{background:#166a97}
.sb-menu .sb-menu-btn--green{background:linear-gradient(135deg,#82b02a 0%,#bace18 100%);color:#fff}
.sb-menu .sb-menu-btn--green:hover{background:linear-gradient(135deg,#729d25 0%,#a9bd16 100%)}
.sb-menu :is(.sb-menu-btn--blue,.sb-menu-btn--green),.sb-menu :is(.sb-menu-btn--blue,.sb-menu-btn--green):is(:hover,:focus,:focus-visible,:active,:visited),.sb-menu :is(.sb-menu-btn--blue,.sb-menu-btn--green) *{color:#fff!important}
.sb-menu .sb-menu-btn--white{border:1.5px solid #82b02a;background:#fff;color:#4a4a49}
.sb-menu .sb-menu-btn--white:hover{background:#f6f5f0}
.sb-menu .sb-menu-tel{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;margin-top:4px;font:700 17px Montserrat,Arial,sans-serif}
.sb-menu-tel svg{width:18px;height:18px;color:#60831f}
.sb-menu__dock{display:none}
.sb-menu :is(a,button):focus-visible{outline:3px solid #77c7f0;outline-offset:3px}
@media(max-width:900px){
.sb-menu__body{grid-template-columns:1fr}
.sb-menu__side{display:flex;justify-content:flex-end;min-height:0;padding:150px 18px 18px;background-position:20% 30%}
.sb-menu__card{position:static;width:min(420px,100%)}
}
@media(max-width:700px){
.sb-menu__top{min-height:62px;padding:8px 16px}
.sb-menu__logo img{width:150px}
.sb-menu__close{padding:10px}
.sb-menu__close span{display:none}
.sb-menu__body{gap:18px;padding:18px 16px 24px}
.sb-menu .sb-menu__groups{grid-template-columns:1fr;gap:10px}
.sb-menu-g{padding:12px 16px;border-radius:16px}
.sb-menu-g__head{cursor:pointer}
.sb-menu-g__title a{pointer-events:none}
.sb-menu-g__icon{flex-basis:50px;height:50px}
.sb-menu-g__icon img{width:38px;height:38px}
.sb-menu .sb-menu-g__title{font-size:18px}
.sb-menu-g__toggle{display:block;min-width:44px;min-height:44px}
.sb-menu-g__toggle svg{margin-left:auto}
.sb-menu-g__sub{display:none}
.sb-menu-g__links{display:none;margin-top:12px}
.sb-menu-g__links .sb-menu-mobile-only{display:list-item}
.sb-menu-g.is-open .sb-menu-g__links{display:block}
.sb-menu-g.is-open .sb-menu-g__toggle svg{transform:rotate(180deg)}
.sb-menu__side{display:none}
.sb-menu__dock{display:grid;grid-template-columns:1fr 1fr;gap:8px;flex:0 0 auto;padding:12px 16px calc(10px + env(safe-area-inset-bottom));background:#fff;box-shadow:0 -8px 24px rgba(0,0,0,.08)}
.sb-menu__dock .sb-menu-btn{min-height:46px;font-size:14px;padding:0 12px}
.sb-menu__dock .sb-menu-wide{grid-column:1/-1}
.sb-menu__dock .sb-menu-tel{margin-top:0;min-height:40px}
}
@media(prefers-reduced-motion:reduce){.sb-menu-g__toggle svg,.sb-menu-g__links a::after{transition:none}}
