/* Google-Bewertungen: bestätigte kurze Originalauszüge, gemeinsam auf Startseite und Kontakt. */
.google-reviews h2 { max-width: 28ch; }
.google-review-grid { display: grid; grid-template-columns: minmax(12rem,.85fr) repeat(3,minmax(0,1fr)); gap: 1.1rem; margin-top: 2.2rem; align-items: stretch; }
.google-review-summary { display: flex; flex-direction: column; align-items: flex-start; justify-content: center; padding: 1.2rem .5rem 1.2rem 0; min-width: 0; }
.google-review-logo { display: block; line-height: 0; margin-bottom: 1.25rem; }
.google-review-logo svg { width: 92px; height: auto; }
.google-review-score { font: 750 2.7rem/1.1 var(--sans); letter-spacing: -.035em; }
.google-review-score small { font: 500 .85rem/1.4 var(--sans); letter-spacing: 0; color: #53616a; }
.google-review-stars { display: block; color: #b97800; font-size: 1.2rem; letter-spacing: .08em; margin: .5rem 0; line-height: 1.2; }
.google-review-summary p { margin: 0 0 1.1rem; font-size: .88rem; color: #53616a; }
.google-review-all { color: #09578b; font-size: .87rem; font-weight: 650; text-underline-offset: .25em; }
.google-review-card { display: flex; flex-direction: column; min-width: 0; margin: 0; padding: 1.4rem; background: #fff; border: 1px solid #dae1e1; border-radius: .65rem; box-shadow: 0 .4rem 1.4rem rgba(17,24,32,.035); }
.google-review-card figcaption { display: flex; align-items: center; gap: .7rem; min-width: 0; margin-bottom: .65rem; }
.google-review-avatar { width: 2.35rem; height: 2.35rem; flex: 0 0 2.35rem; display: grid; place-items: center; border-radius: 50%; color: #fff; background: #24556d; font-size: .78rem; font-weight: 650; }
.google-review-card:nth-child(3) .google-review-avatar { background: #795a85; }
.google-review-card:nth-child(4) .google-review-avatar { background: #506756; }
.google-review-card figcaption strong { display: block; font: 650 .88rem/1.35 var(--sans); overflow-wrap: anywhere; }
.google-review-card figcaption small { display: block; color: #53616a; font: 400 .72rem/1.5 var(--sans); margin-top: .1rem; }
.google-review-g { margin-left: auto; align-self: flex-start; font: 750 1.2rem/1.2 Arial,sans-serif; color: #4285f4; }
.google-review-card blockquote { margin: .75rem 0 1.4rem; padding: 0; border: 0; font-size: 1rem; line-height: 1.65; color: #293d47; }
.google-review-card blockquote p { margin: 0; }
.google-review-card > a { margin-top: auto; font-size: .78rem; color: #09578b; text-underline-offset: .25em; }
.google-review-note { margin: 1.3rem 0 0; color: #647078; font-size: .74rem; }
.google-review-social { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem 1.4rem; margin-top: 2rem; padding-top: 1.2rem; border-top: 1px solid #d8dedf; font-size: .85rem; }
.google-review-social > span { color: #53616a; }
.google-review-social a { color: #09578b; text-underline-offset: .25em; }
.google-reviews a:focus-visible { outline: 2px solid #087da9; outline-offset: 4px; }
@media(max-width:1100px) {
 .google-review-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
 .google-review-summary { grid-column: 1 / -1; display: grid; grid-template-columns: auto auto auto 1fr; align-items: center; justify-content: start; gap: .65rem 1.5rem; padding: 0 0 1rem; }
 .google-review-logo,.google-review-summary p { margin: 0; }
 .google-review-all { grid-column: 1 / -1; }
}
@media(max-width:680px) {
 .google-review-grid { grid-template-columns: minmax(0,1fr); }
 .google-review-summary { grid-template-columns: auto 1fr; column-gap: 1.25rem; }
 .google-review-summary > :nth-child(3) { grid-column: 1; }
 .google-review-summary > p { grid-column: 2; }
 .google-review-card { padding: 1.35rem; }
}


/* Feedback 19.10.2026: gemeinsame Kontakt- und Bewertungsdarstellung. */
body.home .opening-v6 { grid-template-rows: auto auto auto; }
body.home .opening-v6 .feedback-home-trust { grid-column: 1 / -1; grid-row: 2; width: 100%; padding-top: 2.5rem; padding-bottom: 3rem; border-top: 1px solid #dae1e1; }
body.home .opening-v6 .situation-paths { grid-row: 3; }
body.home .opening-v6 .hero-intro { margin-bottom: .8rem; }
body.home .opening-v6 .hero-motto { margin: .8rem 0 1rem; }
.site-footer .footer-cta { display: inline-flex; width: fit-content; align-items: center; gap: .8rem; min-height: 3rem; padding: .85rem 1.15rem; background: #487896; color: #fff; text-decoration: none; border: 1px solid #6d9ab3; }
.site-footer .footer-cta:hover, .site-footer .footer-cta:focus-visible { background: #315d79; color: #fff; }
.static-hero-rail .static-quick-contact { background: #487896; color: #fff; border: 1px solid #487896; }
.static-hero-rail .static-quick-contact small { color: #fff; }
.static-hero-rail .static-quick-contact:hover, .static-hero-rail .static-quick-contact:focus-visible { background: #315d79; }
.feedback-contact-person { background: #edf3f5; border-color: #cbdadf; }
.static-hero-rail .feedback-contact-person img { object-position: 50% 25%; }
.feedback-contact-person .feedback-contact-phone { display: inline-flex; align-items: center; gap: .6rem; width: fit-content; margin-top: 1rem; padding: .8rem .9rem; color: #fff; background: #487896; font: 650 .9rem/1.5 var(--sans); text-decoration: none; }
.feedback-contact-person .feedback-contact-phone:hover, .feedback-contact-person .feedback-contact-phone:focus-visible { background: #315d79; }
.feedback-contact-person .feedback-contact-phone span { margin-left: auto; }
.contact-page-grid > section:first-child, body.home .contact-teaser .contact-actions-panel { color: #111820; background: #edf3f5; border-color: #cbdadf; }
.contact-page-grid > section:first-child h2 { color: #111820; }
.contact-page-grid > section:first-child > p, body.home .contact-teaser .contact-actions-panel > p { color: #49565f; }
.contact-page-grid > section:first-child .contact-action { color: #111820; border-color: #cbdadf; }
.contact-page-grid > section:first-child .contact-action small { color: #34566b; }
.contact-page-grid > section:first-child .contact-action[href^="tel:"], body.home .contact-teaser .contact-action[href^="tel:"] { padding: .9rem 1.1rem; margin-top: 1rem; background: #487896; color: #fff; border-color: #487896; }
.contact-page-grid > section:first-child .contact-action[href^="tel:"] small, body.home .contact-teaser .contact-action[href^="tel:"] small { color: #fff; }
.contact-page-grid > section:first-child .contact-action[href^="tel:"]:hover, body.home .contact-teaser .contact-action[href^="tel:"]:hover { background: #315d79; color: #fff; }
.google-review-social > span { font-weight: 600; }
@media (max-width:960px) {
 body.home .opening-v6 .feedback-home-trust { order: 3; }
 body.home .opening-v6 .situation-paths { order: 4; }
}

/* Bestätigter Mobilbefund: Telefonnummer über volle Kartenbreite halten. */
.static-hero-rail .feedback-contact-person { display: block; }
.feedback-contact-identity { display: grid; grid-template-columns: 6.5rem minmax(0,1fr); gap: 1rem; align-items: center; }
.feedback-contact-person .feedback-contact-phone { display: flex; width: 100%; justify-content: space-between; }
.feedback-contact-person .feedback-contact-phone > span { margin-left: 0; }
.feedback-contact-number { font-size: 1rem; white-space: nowrap; }
.feedback-contact-channels { margin-top: .5rem; }
.feedback-contact-person .feedback-contact-mail { margin-top: .75rem; }
@media (max-width:360px) { .feedback-contact-identity { grid-template-columns: 5rem minmax(0,1fr); } }
