/* BAUES + PARTNER · Mobile/Tablet. Nach dem allgemeinen und Startseiten-CSS laden. */
@media (max-width: 1023px) {
    html:root { --bp-mobile-title: clamp(40px, 10.5vw, 72px); --bp-mobile-heading: clamp(38px, 7.5vw, 60px); --bp-mobile-statement: clamp(25px, 4.6vw, 40px); --bp-mobile-subheading: clamp(26px, 4.8vw, 38px); --bp-mobile-cta: clamp(34px, 7.3vw, 64px); --bp-mobile-body: 17px; --bp-grid-gap: 20px; --bp-kicker-gap: 24px; --bp-section-space: 56px; --bp-section-space-large: 64px; --bp-section-space-small: 48px; }
    /* Header/Navigation bleiben die vorhandenen Betheme-Elemente. */
    #Top_bar .logo #logo { height: 60px; line-height: 60px; padding: 8px 0; }
    #Top_bar .logo #logo img { max-height: 44px; }
    #Top_bar .responsive-menu-toggle { min-width: 44px; min-height: 44px; color: #1c2029; }
    body.home .bp-custom-section { padding-top: 0; padding-bottom: 0; }
    body.home .bp-home-mask-hero-stage { height: 100svh; min-height: 560px; }
    body.home .bp-home-mask-content { display: block; box-sizing: border-box; padding-top: calc(var(--bp-mobile-header-height, 76px) + 32px); }
    body.home .bp-home-mask-copy { width: 100%; max-width: 650px; }
    body.home .bp-home-mask-kicker { margin-bottom: 24px; font-size: 10px; line-height: 1.5; }
    body.home .bp-home-mask-title { font-size: var(--bp-mobile-title); line-height: .98; letter-spacing: -.05em; }
    body.home .bp-home-mask-shape { mask-size: min(58vw, 340px) auto; -webkit-mask-size: min(58vw, 340px) auto; mask-position: 50% 72%; -webkit-mask-position: 50% 72%; }
    body.home .bp-home-mask-scroll { bottom: 24px; }
    body.home .bp-statement--standalone { padding-block: 56px; }
    body.home .bp-reveal-text { font-size: var(--bp-mobile-statement); line-height: 1.18; }
    body.home .bp-reveal-word { max-width: 100%; }
    /* Facts: normale Dokumenthöhe und zwei gut lesbare Spalten. */
    body.home .bp-facts { height: auto; padding-block: 24px 56px; }
    body.home .bp-facts > .bp-shell { height: auto; }
    body.home .bp-facts-stage { position: relative; top: auto; display: block; height: auto; overflow: visible; }
    body.home .bp-facts-copy { display: block; padding-top: 0; }
    body.home .bp-facts-title, body.home .bp-services-heading, body.home .bp-locations-heading { font-size: var(--bp-mobile-heading); line-height: .98; }
    body.home .bp-facts-description { width: 100%; max-width: 620px; margin: 24px 0 0; font-size: 17px; line-height: 1.5; }
    body.home .bp-facts-image { margin-top: 24px; max-width: 420px; }
    body.home .bp-facts-columns { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); margin-top: 32px; gap: 0; }
    body.home .bp-facts-column { padding-top: 0; margin-right: -1px; }
    body.home .bp-fact-card { flex: 0 0 auto; min-height: 170px; height: 170px; padding: 18px 14px; }
    body.home .bp-fact-card strong { font-size: clamp(38px, 8vw, 70px); line-height: 1.05; white-space: nowrap; }
    body.home .bp-fact-card span { font-size: 14px; line-height: 1.4; overflow-wrap: normal; }
    /* Projektstapel wird zur vollständigen vertikalen Liste. */
    body.home .bp-projects-intro { padding-block: 24px; }
    body.home .bp-projects-label-row { display: block; }
    body.home .bp-projects-label-title { margin-top: 16px; text-align: left; font-size: clamp(28px, 6vw, 46px); line-height: 1.05; }
    body.home .bp-projects { height: auto; overflow: visible; }
    body.home .bp-projects-stage { height: auto; display: grid; gap: 40px; }
    body.home .bp-project { position: relative; top: auto; left: auto; width: 100%; transform: none !important; opacity: 1 !important; }
    body.home .bp-project-topline { opacity: 1 !important; font-size: 10px; line-height: 1.4; gap: 16px; }
    body.home .bp-project-image-wrap { aspect-ratio: 16 / 10; }
    body.home .bp-project-image { object-fit: cover; transform: none !important; filter: none !important; }
    body.home .bp-project-shade { opacity: 0 !important; }
    body.home .bp-project-info { display: flex; flex-direction: column; align-items: flex-start; gap: 16px; opacity: 1 !important; clip-path: none !important; }
    body.home .bp-project-title { font-size: clamp(25px, 4.8vw, 40px); line-height: 1.08; }
    body.home .bp-project-link { display: inline-flex; align-items: center; min-height: 44px; }
    body.home .bp-projects-outro { margin-top: 0; padding-block: 24px 48px; }
    body.home .bp-projects-outro .bp-shell { justify-content: center; }
    /* Orbit bleibt erhalten. */
    body.home .bp-orbit-stage { height: 560px; transform: none !important; }
    body.home .bp-orbit-heading { top: 24px; }
    body.home .bp-orbit-heading h2 { font-size: var(--bp-mobile-heading); }
    body.home .bp-orbit-copy p { font-size: 17px; line-height: 1.5; }
    /* Leistungen ohne enge Spalten oder unsichtbare Beschreibung. */
    body.home .bp-services { padding-block: 48px; }
    body.home .bp-services-inner { display: block; }
    body.home .bp-services-intro-inner { position: static; min-height: 0; }
    body.home .bp-services-visual { display: none; }
    body.home .bp-services-list { padding-top: 32px; }
    body.home .bp-service { min-height: 0; opacity: 1 !important; }
    body.home .bp-service-link { grid-template-columns: 24px minmax(0,1fr); gap: 14px; padding-block: 26px; }
    body.home .bp-service-title-row { gap: 10px; }
    body.home .bp-service-title { font-size: var(--bp-mobile-subheading); line-height: 1.1; overflow-wrap: anywhere; }
    body.home .bp-service-description { margin-top: 16px; font-size: 17px; line-height: 1.45; opacity: 1 !important; transform: none !important; }
    body.home .bp-service-mobile-image { display: block; margin-top: 15px; }
    /* Standorte untereinander. */
    body.home .bp-locations-head { display: block; }
    body.home .bp-locations-copy { max-width: 650px; margin-top: 24px; font-size: 17px; line-height: 1.5; }
    body.home .bp-locations-map-mask { margin-top: 32px; }
    body.home .bp-location-tooltip { min-width: 160px; padding: 14px 10px; }
    body.home .bp-location-city { font-size: 16px; }
    /* Team bleibt per Touch scrollbar, Texte sind ohne Hover sichtbar. */
    body.home .bp-team-slider-title-row { flex-direction: column; align-items: flex-start; gap: 24px; }
    body.home .bp-team-slider-title { font-size: clamp(31px, 6.2vw, 60px); line-height: 1.02; }
    body.home .bp-team-track { margin-top: 32px; scroll-snap-type: x proximity; }
    body.home .bp-team-card { flex-basis: min(78vw, 360px); scroll-snap-align: center; }
    body.home .bp-team-card-overlay { opacity: 1 !important; transform: none !important; min-height: 160px; }
    body.home .bp-team-card-name { padding: 24px 16px 0; font-size: 22px; }
    body.home .bp-team-card-position { margin-top: 16px; padding-inline: 16px; font-size: 14px; }
    body.home .bp-team-drag { display: none; }
    body.home .bp-team-slider-prev, body.home .bp-team-slider-next { min-width: 44px; min-height: 44px; }
    body.home .bp-final-cta-title { font-size: var(--bp-mobile-cta); line-height: .98; }
    body.home .bp-final-cta-kicker { margin-bottom: 24px; }
    body.home .bp-final-cta-options { grid-template-columns: 1fr; margin-top: 36px; }
    body.home .bp-final-cta-option { min-height: 250px; padding: 28px 20px; }
    body.home .bp-final-cta-option + .bp-final-cta-option { border-left: 0; border-top: 1px solid var(--bp-line); }
    body.home .bp-final-cta-content { margin-top: 32px; margin-bottom: 28px; }
    body.home .bp-final-cta-content h3 { font-size: 30px; line-height: 1.05; }
    /* Footer gilt auf allen Seiten. */
    .bp-footer.bp-footer, .bp-footer.bp-footer > .bp-shell { min-height: 0; }
    .bp-footer.bp-footer > .bp-shell { width: calc(100% - 40px); padding-block: 44px 28px; }
    .bp-footer .bp-footer-title { font-size: clamp(26px, 5.6vw, 52px); line-height: 1.06; overflow-wrap: normal; }
    .bp-footer .bp-footer-main { grid-template-columns: 1fr; gap: 32px; margin-top: 40px; padding-top: 28px; }
    .bp-footer .bp-footer-column { grid-column: auto; }
    .bp-footer .bp-footer-nav { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px 16px; }
    .bp-footer .bp-footer-nav a { display: flex; align-items: center; min-height: 44px; font-size: 16px; }
    .bp-footer .bp-footer-contact a { min-height: 36px; font-size: 16px; overflow-wrap: anywhere; }
    .bp-footer .bp-footer-copyright { white-space: normal; max-width: 100%; font-size: 10px; line-height: 1.5; overflow-wrap: anywhere; }
    .bp-footer .bp-footer-label { margin-bottom: 14px; }
    .bp-footer .bp-footer-locations { gap: 18px; }
    .bp-footer .bp-footer-bottom { display: flex; flex-direction: column; align-items: flex-start; gap: 20px; margin-top: 36px; padding-top: 24px; }
    .bp-footer .bp-footer-legal { display: flex; flex-wrap: wrap; gap: 20px; }
    .bp-footer .bp-footer-legal a { min-height: 44px; display: inline-flex; align-items: center; }
}
@media (max-width: 359px) {
    html:root { --bp-mobile-title: 36px; }
    body.home .bp-team-slider-title { font-size: 28px; }
    .bp-footer .bp-footer-title { font-size: 23px; }
}

/* Architektur: dieselbe Typografieskala wie auf der Startseite.
   Seitenspezifisches Raster; weitere Leistungsseiten werden separat geprüft. */
@media (max-width: 1023px) {
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-custom-section { padding-block: 0; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-service-hero,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-service-hero > .bp-shell { min-height: 0; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-service-hero > .bp-shell { padding-block: 48px 56px; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-service-hero-grid,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-intro .bp-grid,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-head,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-scope,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-integrated-head,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-integrated-grid,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-service-cta-row { display: grid; grid-template-columns: minmax(0,1fr); gap: 24px; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-service-hero-grid > *,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-intro .bp-grid > *,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-head > *,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-scope > *,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-integrated-head > *,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-integrated-grid > *,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-service-cta-row > * { grid-column: 1 / -1; min-width: 0; max-width: 100%; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-kicker { font-size: 10px; line-height: 1.5; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-service-hero-kicker { margin: 0; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-service-hero-title { font-size: var(--bp-mobile-title); line-height: .98; letter-spacing: -.05em; overflow-wrap: normal; word-break: normal; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-service-hero-lead { margin: 8px 0 0; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-section-title { font-size: var(--bp-mobile-heading); line-height: .98; letter-spacing: -.05em; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-copy-large { font-size: var(--bp-mobile-statement); line-height: 1.18; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-intro-copy .bp-copy-large,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-integrated-copy .bp-copy-large { margin-bottom: 24px; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-service-hero-lead,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-intro-copy > p:not(.bp-copy-large),
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-head > p,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-detail > p,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-scope-main p,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-integrated-copy > p:not(.bp-copy-large),
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-service-cta-action p { font-size: var(--bp-mobile-body); line-height: 1.5; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-head,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-integrated-head { margin-bottom: 32px; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-scope { padding-block: 28px; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-scope-label { padding-top: 0; line-height: 1.5; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-scope-main strong,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-main h3 { font-size: var(--bp-mobile-subheading); line-height: 1.1; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-scope-meta { font-size: 12px; line-height: 1.5; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-row { grid-template-columns: 24px minmax(0,1fr); gap: 20px 14px; padding-block: 32px; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-number { grid-column: 1; padding-top: 7px; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-main { grid-column: 2; min-width: 0; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-detail { grid-column: 1 / -1; padding-top: 0; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-detail > p { max-width: none; margin-bottom: 24px; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-detail li { font-size: 15px; line-height: 1.5; }
    /* Scroll-Fades dürfen längere mobile Texte nicht dauerhaft abdunkeln. */
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-row,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-scope,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-main h3,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-detail > p,
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-process-detail ul { opacity: 1 !important; transform: none !important; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-integrated-copy { padding-top: 0; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-intro-section .bp-image-reveal { margin: 0; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-intro-section .bp-image-reveal img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-architecture-integrated-image img { aspect-ratio: 4 / 3; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-service-cta > .bp-shell { padding-top: 32px; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-service-cta > .bp-shell > .bp-kicker { margin-bottom: 24px; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-service-cta-title { font-size: var(--bp-mobile-cta); line-height: .98; letter-spacing: -.05em; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-service-cta-action { padding-bottom: 0; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-service-cta-action p { margin-bottom: 24px; }
    :is(body.page-id-73, body.page-id-50, body.page-id-78, body.page-id-55, body.page-id-81, body.page-id-58, body.page-id-97, body.page-id-87, body.page-id-122, body.page-id-105) .bp-service-cta-action a { display: inline-flex; align-items: center; min-height: 44px; }
}

/* Mobiler Header: ab Seitenstart fest, ohne Größenwechsel beim Scrollen. */
@media (max-width: 1023px) {
    html:root { --bp-mobile-header-height: 76px; --bp-mobile-admin-offset: 0px; scroll-padding-top: calc(var(--bp-mobile-header-height) + 16px); }
    body.admin-bar { --bp-mobile-admin-offset: 32px; }
    body #Header { min-height: 0 !important; }
    body #Header .header_placeholder { display: block !important; height: var(--bp-mobile-header-height) !important; }
    body #Header #Top_bar {
        position: fixed !important;
        top: var(--bp-mobile-admin-offset) !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        height: var(--bp-mobile-header-height) !important;
        min-height: var(--bp-mobile-header-height) !important;
        background: #fff !important;
        opacity: 1 !important;
        box-shadow: none !important;
        transform: none !important;
        transition: none !important;
        animation: none !important;
        z-index: 9001;
    }
    body #Top_bar .top_bar_left { position: relative !important; top: 0 !important; height: var(--bp-mobile-header-height) !important; background: #fff !important; }
    body #Top_bar .logo { height: var(--bp-mobile-header-height) !important; margin-block: 0 !important; }
    body #Top_bar .logo #logo { display: flex !important; align-items: center; justify-content: center; box-sizing: border-box; height: var(--bp-mobile-header-height) !important; line-height: 1 !important; padding-block: 16px !important; margin-block: 0 !important; transition: none !important; }
    body #Top_bar #logo img { height: 44px !important; max-height: 44px !important; width: auto !important; transition: none !important; }
    body #Top_bar #logo img.logo-main,
    body #Top_bar #logo img.logo-sticky,
    body #Top_bar #logo img.logo-mobile-sticky { display: none !important; }
    body #Top_bar #logo img.logo-mobile { display: block !important; }
    body #Top_bar .responsive-menu-toggle { top: 16px !important; margin-top: 0 !important; height: 44px !important; line-height: 44px !important; transition: none !important; }
}
@media (max-width: 782px) {
    body.admin-bar { --bp-mobile-admin-offset: 46px; }
    body.admin-bar #wpadminbar { position: fixed; }
}

/* Der Startseiten-Hero beginnt hinter dem festen Header direkt am Seitenanfang. */
@media (max-width: 1023px) {
    body.home #Header .header_placeholder { height: 0 !important; }
    body.home #Header { height: 0 !important; min-height: 0 !important; }
    body.home #Content { padding-top: 0 !important; }
    body.home .bp-home-mask-kicker { margin-bottom: 20px; }
}

/* Tragwerksplanung: gemeinsame Typografie, eigenes mobiles Inhaltsraster. */
@media (max-width: 1023px) {
 body.page-id-50 .bp-structural-intro .bp-grid,
 body.page-id-50 .bp-structural-integrated .bp-grid,
 body.page-id-50 .bp-structural-services-head,
 body.page-id-50 .bp-structural-range-head { display: grid; grid-template-columns: minmax(0,1fr); gap: 24px; }
 body.page-id-50 .bp-structural-intro .bp-grid > *,
 body.page-id-50 .bp-structural-integrated .bp-grid > *,
 body.page-id-50 .bp-structural-services-head > *,
 body.page-id-50 .bp-structural-range-head > * { grid-column: 1 / -1; min-width: 0; max-width: 100%; }
 body.page-id-50 .bp-structural-services-head,
 body.page-id-50 .bp-structural-range-head { margin-bottom: 32px; }
 body.page-id-50 .bp-structural-integrated-heading .bp-section-title { position: static; }
 body.page-id-50 .bp-structural-intro-copy .bp-copy-large,
 body.page-id-50 .bp-structural-integrated-copy .bp-copy-large { margin-bottom: 24px; }
 body.page-id-50 .bp-structural-intro-copy > p:not(.bp-copy-large),
 body.page-id-50 .bp-structural-integrated-copy > p:not(.bp-copy-large),
 body.page-id-50 .bp-structural-service-row p,
 body.page-id-50 .bp-structural-range-copy { font-size: var(--bp-mobile-body); line-height: 1.5; }
 body.page-id-50 .bp-structural-service-row { grid-template-columns: 24px minmax(0,1fr); gap: 20px 14px; padding-block: 32px; }
 body.page-id-50 .bp-structural-service-number { grid-column: 1; }
 body.page-id-50 .bp-structural-service-row h3 { grid-column: 2; min-width: 0; font-size: var(--bp-mobile-subheading); line-height: 1.1; hyphens: auto; }
 body.page-id-50 .bp-structural-service-row p { grid-column: 1 / -1; max-width: none; }
 body.page-id-50 .bp-structural-integrated-copy { margin-top: 24px; }
 body.page-id-50 .bp-structural-intro-section .bp-image-reveal { margin: 0; }
 body.page-id-50 .bp-structural-intro-section .bp-image-reveal img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
 body.page-id-50 .bp-structural-range-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 body.page-id-50 .bp-structural-range-item { min-height: 170px; padding: 18px 14px; gap: 24px; }
 body.page-id-50 .bp-structural-range-item strong { font-size: var(--bp-mobile-subheading); line-height: 1.1; hyphens: auto; overflow-wrap: anywhere; }
 body.page-id-50 .bp-structural-range-copy { width: 100%; margin: 24px 0 0; }
}
@media (max-width: 599px) {
 body.page-id-50 .bp-structural-range-grid { grid-template-columns: minmax(0,1fr); }
 body.page-id-50 .bp-structural-range-item { min-height: 120px; }
}

/* Bauphysik: mobiles Intro und Leistungsprofil. */
@media (max-width: 1023px) {
 body.page-id-78 .bp-physics-intro-grid,
 body.page-id-78 .bp-physics-profile-head { grid-template-columns: minmax(0,1fr); gap: 24px; }
 body.page-id-78 .bp-physics-intro-grid > *,
 body.page-id-78 .bp-physics-profile-head > * { grid-column: 1 / -1; min-width: 0; max-width: 100%; }
 body.page-id-78 .bp-physics-intro-copy { padding-top: 0; }
 body.page-id-78 .bp-physics-intro-copy p { max-width: none; font-size: var(--bp-mobile-body); line-height: 1.5; margin-bottom: 24px; }
 body.page-id-78 .bp-physics-intro-copy p:last-child { margin-bottom: 0; }
 body.page-id-78 .bp-physics-intro-section .bp-image-reveal { margin: 0; }
 body.page-id-78 .bp-physics-intro-section .bp-image-reveal img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
 body.page-id-78 .bp-physics-profile-head { margin-bottom: 32px; }
 body.page-id-78 .bp-physics-profile-head .bp-section-title { hyphens: auto; }
 body.page-id-78 .bp-physics-profile-row { grid-template-columns: 24px minmax(0,1fr); gap: 20px 14px; align-items: start; min-height: 0; padding-block: 32px; }
 body.page-id-78 .bp-physics-profile-number { grid-column: 1; padding-top: 7px; }
 body.page-id-78 .bp-physics-profile-row h3 { grid-column: 2; min-width: 0; font-size: var(--bp-mobile-subheading); line-height: 1.1; hyphens: auto; }
 body.page-id-78 .bp-physics-profile-row p { grid-column: 1 / -1; max-width: none; font-size: var(--bp-mobile-body); line-height: 1.5; opacity: 1; }
}

/* BIM: mobile Inhaltsraster, gemeinsame Schriftgrößen. */
@media (max-width: 1023px) {
 body.page-id-55 .bp-bim-intro .bp-grid,
 body.page-id-55 .bp-bim-experience .bp-grid,
 body.page-id-55 .bp-bim-services-head,
 body.page-id-55 .bp-bim-process-head,
 body.page-id-55 .bp-bim-benefits-head,
 body.page-id-55 .bp-bim-benefits-copy { display: grid; grid-template-columns: minmax(0,1fr); gap: 24px; }
 body.page-id-55 .bp-bim-intro .bp-grid > *,
 body.page-id-55 .bp-bim-experience .bp-grid > *,
 body.page-id-55 .bp-bim-services-head > *,
 body.page-id-55 .bp-bim-process-head > *,
 body.page-id-55 .bp-bim-benefits-head > *,
 body.page-id-55 .bp-bim-benefits-copy > * { grid-column: 1 / -1; min-width: 0; max-width: 100%; }
 body.page-id-55 .bp-bim-services-head,
 body.page-id-55 .bp-bim-process-head,
 body.page-id-55 .bp-bim-benefits-head { margin-bottom: 32px; }
 body.page-id-55 .bp-bim-intro-copy .bp-copy-large,
 body.page-id-55 .bp-bim-experience-copy .bp-copy-large { margin-bottom: 24px; }
 body.page-id-55 .bp-bim-intro-copy > p:not(.bp-copy-large),
 body.page-id-55 .bp-bim-experience-copy > p:not(.bp-copy-large),
 body.page-id-55 .bp-bim-benefits-copy p,
 body.page-id-55 .bp-bim-service-row p,
 body.page-id-55 .bp-bim-process-item p { font-size: var(--bp-mobile-body); line-height: 1.5; }
 body.page-id-55 .bp-bim-service-row,
 body.page-id-55 .bp-bim-process-item { grid-template-columns: 24px minmax(0,1fr); gap: 20px 14px; align-items: start; min-height: 0; padding-block: 32px; }
 body.page-id-55 .bp-bim-service-number,
 body.page-id-55 .bp-bim-process-number { grid-column: 1; padding-top: 7px; }
 body.page-id-55 .bp-bim-service-row h3,
 body.page-id-55 .bp-bim-process-item h3 { grid-column: 2; min-width: 0; font-size: var(--bp-mobile-subheading); line-height: 1.1; hyphens: auto; }
 body.page-id-55 .bp-bim-service-row p,
 body.page-id-55 .bp-bim-process-item p { grid-column: 1 / -1; max-width: none; }
 body.page-id-55 .bp-bim-intro-section .bp-image-reveal { margin: 0; }
 body.page-id-55 .bp-bim-intro-section .bp-image-reveal img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
 body.page-id-55 .bp-bim-experience-number { font-size: clamp(38px,8vw,70px); line-height: 1.05; letter-spacing: -.05em; }
 body.page-id-55 .bp-bim-experience-copy,
 body.page-id-55 .bp-bim-benefits-copy { margin-top: 24px; }
 body.page-id-55 .bp-bim-benefits-copy p { margin-bottom: 0; }
 body.page-id-55 .bp-bim-benefits-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 body.page-id-55 .bp-bim-benefit { min-height: 170px; padding: 18px 14px; gap: 24px; }
 body.page-id-55 .bp-bim-benefit strong { font-size: var(--bp-mobile-subheading); line-height: 1.1; hyphens: auto; overflow-wrap: anywhere; }
}
@media (max-width: 599px) {
 body.page-id-55 .bp-bim-benefits-grid { grid-template-columns: minmax(0,1fr); }
 body.page-id-55 .bp-bim-benefit { min-height: 120px; }
}

/* Projektsteuerung + Bauleitung: mobile Timeline und Leistungsbereiche. */
@media (max-width: 1023px) {
 body.page-id-81 .bp-project-responsibility-grid,
 body.page-id-81 .bp-project-timeline-head,
 body.page-id-81 .bp-project-timeline-grid,
 body.page-id-81 .bp-project-profile-head,
 body.page-id-81 .bp-project-profile-grid { grid-template-columns: minmax(0,1fr); gap: 24px; }
 body.page-id-81 .bp-project-responsibility-grid > *,
 body.page-id-81 .bp-project-timeline-head > *,
 body.page-id-81 .bp-project-timeline-grid > *,
 body.page-id-81 .bp-project-profile-head > *,
 body.page-id-81 .bp-project-profile-grid > * { grid-column: 1 / -1; min-width: 0; max-width: 100%; }
 body.page-id-81 .bp-project-responsibility-copy { padding-top: 0; }
 body.page-id-81 .bp-project-responsibility-copy p,
 body.page-id-81 .bp-project-timeline-head > p,
 body.page-id-81 .bp-project-timeline-item p,
 body.page-id-81 .bp-project-profile-head > p,
 body.page-id-81 .bp-project-profile-column > p { font-size: var(--bp-mobile-body); line-height: 1.5; max-width: none; }
 body.page-id-81 .bp-project-timeline-head,
 body.page-id-81 .bp-project-profile-head { margin-bottom: 32px; }
 body.page-id-81 .bp-section-title { hyphens: auto; }
 body.page-id-81 .bp-project-timeline-item { padding: 28px 0 28px 38px; }
 body.page-id-81 .bp-project-timeline-list::before,
 body.page-id-81 .bp-project-timeline-list::after { left: 6px; }
 body.page-id-81 .bp-project-timeline-item::before { left: 0; top: 28px; }
 body.page-id-81 .bp-project-timeline-number,
 body.page-id-81 .bp-project-profile-number { margin-bottom: 20px; }
 body.page-id-81 .bp-project-timeline-item h3,
 body.page-id-81 .bp-project-profile-column h3 { font-size: var(--bp-mobile-subheading); line-height: 1.1; hyphens: auto; }
 body.page-id-81 .bp-project-timeline-item p { margin-top: 20px; }
 body.page-id-81 .bp-project-timeline-media { position: static; }
 body.page-id-81 .bp-project-timeline-image img { aspect-ratio: 4 / 3; }
 body.page-id-81 .bp-project-timeline-image-caption { font-size: 10px; line-height: 1.5; }
 body.page-id-81 .bp-project-responsibility-section .bp-image-reveal { margin: 0; }
 body.page-id-81 .bp-project-responsibility-section .bp-image-reveal img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }
 body.page-id-81 .bp-project-profile-grid { gap: 40px; }
 body.page-id-81 .bp-project-profile-column { padding-top: 28px; }
 body.page-id-81 .bp-project-profile-column > p { margin-block: 24px; }
 body.page-id-81 .bp-project-profile-column li { font-size: 15px; line-height: 1.5; }
 /* Lange Absätze bleiben unabhängig vom Scroll-Fortschritt lesbar. */
 body.page-id-81 .bp-project-timeline-item,
 body.page-id-81 .bp-project-timeline-item h3,
 body.page-id-81 .bp-project-timeline-item p { opacity: 1 !important; transform: none !important; }
}

/* Nachhaltigkeit: horizontale Karten bleiben auch mobil verschiebbar. */
@media (max-width: 1023px) {
 body.page-id-58 .bp-sustainability-intro .bp-grid,
 body.page-id-58 .bp-sustainability-cards-head-row,
 body.page-id-58 .bp-sustainability-lifecycle-head,
 body.page-id-58 .bp-sustainability-services-head,
 body.page-id-58 .bp-sustainability-services-grid { grid-template-columns: minmax(0,1fr); gap: 24px; }
 body.page-id-58 .bp-sustainability-intro .bp-grid > *,
 body.page-id-58 .bp-sustainability-cards-head-row > *,
 body.page-id-58 .bp-sustainability-lifecycle-head > *,
 body.page-id-58 .bp-sustainability-services-head > * { grid-column: 1 / -1; min-width: 0; max-width: 100%; }
 body.page-id-58 .bp-section-title { hyphens: auto; }
 body.page-id-58 .bp-sustainability-intro-copy .bp-copy-large { margin-bottom: 24px; }
 body.page-id-58 .bp-sustainability-intro-copy > p:not(.bp-copy-large),
 body.page-id-58 .bp-sustainability-cards-intro,
 body.page-id-58 .bp-sustainability-lifecycle-item p,
 body.page-id-58 .bp-sustainability-service p { font-size: var(--bp-mobile-body); line-height: 1.5; max-width: none; }
 body.page-id-58 .bp-sustainability-cards-head,
 body.page-id-58 .bp-sustainability-lifecycle-head,
 body.page-id-58 .bp-sustainability-services-head { margin-bottom: 32px; }
 body.page-id-58 .bp-sustainability-cards-head-row { margin-top: 24px; }
 body.page-id-58 .bp-sustainability-lifecycle-head .bp-section-title,
 body.page-id-58 .bp-sustainability-lifecycle-head .bp-copy-large { margin: 0; }
 body.page-id-58 .bp-sustainability-intro-image,
 body.page-id-58 .bp-sustainability-lifecycle-image { margin: 32px 0 0; }
 body.page-id-58 .bp-sustainability-intro-section .bp-image-reveal { margin: 0; }
 body.page-id-58 .bp-sustainability-intro-section .bp-image-reveal img,
 body.page-id-58 .bp-sustainability-intro-image img,
 body.page-id-58 .bp-sustainability-lifecycle-image img { aspect-ratio: 4 / 3; object-fit: cover; }
 body.page-id-58 .bp-sustainability-cards-track { gap: 16px; padding: 0 5vw 16px; scroll-padding-inline: 5vw; scroll-snap-type: x proximity; }
 body.page-id-58 .bp-sustainability-card { flex: 0 0 min(82vw, 380px); scroll-snap-align: start; }
 /* Texte liegen im Raster: auch bei größerer Schrift können sie nicht überlappen. */
 body.page-id-58 .bp-sustainability-card-image { display: flex; flex-direction: column; justify-content: space-between; gap: 64px; box-sizing: border-box; padding: 20px; aspect-ratio: auto; min-height: 460px; height: 100%; }
 body.page-id-58 .bp-sustainability-card-photo { position: absolute; inset: 0; }
 body.page-id-58 .bp-sustainability-card-top,
 body.page-id-58 .bp-sustainability-card-bottom { position: relative; inset: auto; }
 body.page-id-58 .bp-sustainability-card-title,
 body.page-id-58 .bp-sustainability-lifecycle-item h3,
 body.page-id-58 .bp-sustainability-service h3 { font-size: var(--bp-mobile-subheading); line-height: 1.1; hyphens: auto; }
 body.page-id-58 .bp-sustainability-card-bottom { opacity: 1 !important; transform: none !important; }
 body.page-id-58 .bp-sustainability-card-bottom p { max-width: none; font-size: 16px; line-height: 1.5; }
 body.page-id-58 .bp-sustainability-card-gradient { opacity: 1 !important; background: linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,.12) 35%,rgba(0,0,0,.8)); }
 body.page-id-58 .bp-sustainability-cards-footer { margin-top: 8px; }
 body.page-id-58 .bp-sustainability-cards-drag { opacity: .7; }
 body.page-id-58 .bp-sustainability-lifecycle-track { grid-template-columns: repeat(2,minmax(0,1fr)); }
 body.page-id-58 .bp-sustainability-lifecycle-item { min-height: 0; padding: 24px 16px; border-right: 0; border-bottom: 1px solid var(--bp-line); opacity: 1 !important; transform: none !important; }
 body.page-id-58 .bp-sustainability-lifecycle-item > span,
 body.page-id-58 .bp-sustainability-service-number { margin-bottom: 24px; }
 body.page-id-58 .bp-sustainability-lifecycle-item p,
 body.page-id-58 .bp-sustainability-service p { margin-top: 20px; }
 body.page-id-58 .bp-sustainability-service { min-height: 0; padding: 28px 0; transform: none; }
}
@media (max-width: 599px) {
 body.page-id-58 .bp-sustainability-lifecycle-track { grid-template-columns: minmax(0,1fr); }
 body.page-id-58 .bp-sustainability-lifecycle-item { padding-inline: 0; }
 body.page-id-58 .bp-sustainability-lifecycle-item:last-child { border-bottom: 0; }
}

/* Über uns: mobile Leserichtung und vertikale Bürogeschichte. */
@media (max-width: 1023px) {
 body.page-id-97 .bp-about-hero { padding-block: 48px 56px; }
 body.page-id-97 .bp-about-hero-grid,
 body.page-id-97 .bp-about-intro-head,
 body.page-id-97 .bp-about-intro-copy-grid,
 body.page-id-97 .bp-about-leadership-head,
 body.page-id-97 .bp-about-person,
 body.page-id-97 .bp-about-person-copy,
 body.page-id-97 .bp-about-qualifications-head,
 body.page-id-97 .bp-about-qualification-list-head,
 body.page-id-97 .bp-about-qualification-list,
 body.page-id-97 .bp-about-team-head,
 body.page-id-97 .bp-about-cta-row { grid-template-columns: minmax(0,1fr); gap: 24px; }
 body.page-id-97 :is(.bp-about-hero-grid,.bp-about-intro-head,.bp-about-intro-copy-grid,.bp-about-leadership-head,.bp-about-person,.bp-about-qualifications-head,.bp-about-qualification-list-head,.bp-about-team-head,.bp-about-cta-row) > * { grid-column: 1 / -1; min-width: 0; max-width: 100%; }
 body.page-id-97 .bp-about-hero-title { margin: 0; font-size: var(--bp-mobile-title); line-height: .98; letter-spacing: -.05em; hyphens: auto; }
 body.page-id-97 .bp-about-hero-lead { margin: 8px 0 0; }
 body.page-id-97 .bp-section-title { hyphens: auto; }
 body.page-id-97 :is(.bp-about-hero-lead,.bp-about-intro-copy p,.bp-about-person-copy p,.bp-about-qualifications-head > p,.bp-about-qualification-item p,.bp-about-team-head > p,.bp-about-cta-action p,.bp-about-history-item p) { font-size: var(--bp-mobile-body); line-height: 1.5; max-width: none; }
 body.page-id-97 :is(.bp-about-intro-head,.bp-about-leadership-head,.bp-about-qualifications-head,.bp-about-team-head) { margin-bottom: 32px; }
 body.page-id-97 .bp-about-intro-copy { padding-top: 0; }
 body.page-id-97 .bp-about-history { grid-template-columns: minmax(0,1fr); gap: 32px; margin-top: 40px; padding: 0 0 0 38px; }
 body.page-id-97 .bp-about-history::before { top: 7px; bottom: 0; left: 7px; right: auto; border-top: 0; border-left: 1px solid var(--bp-line); }
 /* Die Desktop-Fortschrittslinie läuft horizontal; mobil bleibt die vertikale Linie ruhig. */
 body.page-id-97 .bp-about-history-progress { display: none; }
 body.page-id-97 .bp-about-history-dot { top: 5px; left: -38px; background: #fff; }
 body.page-id-97 .bp-about-history-year { font-size: var(--bp-mobile-subheading); line-height: 1.1; margin-bottom: 16px; }
 body.page-id-97 .bp-about-history-item h3 { font-size: var(--bp-mobile-subheading); line-height: 1.1; hyphens: auto; }
 body.page-id-97 .bp-about-history-item p { margin-top: 16px; opacity: 1; }
 body.page-id-97 .bp-about-intro-image { margin-top: 40px; }
 body.page-id-97 .bp-about-intro-image img { aspect-ratio: 4 / 3; }
 body.page-id-97 .bp-about-person-image { grid-row: 1; max-width: 480px; }
 body.page-id-97 .bp-about-person-content { grid-row: 2; padding-top: 0; }
 body.page-id-97 .bp-about-person-stefan { margin-top: 56px; }
 body.page-id-97 .bp-about-person-number { margin-bottom: 20px; }
 body.page-id-97 .bp-about-person h3,
 body.page-id-97 .bp-about-qualification-list-head h3 { font-size: var(--bp-mobile-subheading); line-height: 1.1; hyphens: auto; }
 body.page-id-97 .bp-about-person-meta { margin-top: 20px; font-size: 12px; opacity: .75; }
 body.page-id-97 .bp-about-person-copy { margin-top: 24px; padding-top: 24px; }
 body.page-id-97 .bp-about-logo-grid { grid-template-columns: repeat(3,minmax(0,1fr)); }
 body.page-id-97 .bp-about-logo { box-sizing: border-box; min-width: 0; min-height: 140px; padding: 20px; }
 body.page-id-97 .bp-about-logo img { max-width: 100%; max-height: 80px; }
 body.page-id-97 .bp-about-qualification-list-head { margin: 48px 0 32px; }
 body.page-id-97 .bp-about-qualification-list { gap: 0; }
 body.page-id-97 .bp-about-qualification-item { grid-template-columns: 24px minmax(0,1fr); gap: 14px; padding-block: 24px; }
 body.page-id-97 .bp-about-qualification-item p { hyphens: auto; }
 body.page-id-97 .bp-about-team-link { justify-content: flex-start; margin-top: 24px; }
 body.page-id-97 .bp-about-team-link a,
 body.page-id-97 .bp-about-cta-action a { min-height: 44px; display: inline-flex; align-items: center; }
 body.page-id-97 .bp-about-cta { padding-block: 48px 64px; }
 body.page-id-97 .bp-about-cta > .bp-shell > .bp-kicker { margin-bottom: 24px; }
 body.page-id-97 .bp-about-cta-title { font-size: var(--bp-mobile-cta); line-height: .98; letter-spacing: -.05em; hyphens: auto; }
 body.page-id-97 .bp-about-cta-action { padding-bottom: 0; }
 body.page-id-97 .bp-about-cta-action p { margin-bottom: 24px; }
 /* Lange mobile Abschnitte bleiben auch vor Abschluss der Scrollanimation lesbar. */
 body.page-id-97 .bp-about-history-item,
 body.page-id-97 .bp-about-person-content,
 body.page-id-97 .bp-about-logo,
 body.page-id-97 .bp-about-qualification-item { opacity: 1 !important; transform: none !important; }
}
@media (max-width: 599px) {
 body.page-id-97 .bp-about-logo-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
 body.page-id-97 .bp-about-logo { min-height: 120px; padding: 16px; }
}

/* Karriere: mobile Stellenliste, Bewerbungsablauf und FAQ. */
@media (max-width: 1023px) {
body.page-id-87 .bp-career-hero-grid,
body.page-id-87 .bp-career-jobs-head,
body.page-id-87 .bp-career-about-head,
body.page-id-87 .bp-career-about-copy-grid,
body.page-id-87 .bp-career-benefits-head,
body.page-id-87 .bp-career-kitchen-head,
body.page-id-87 .bp-career-kitchen-content,
body.page-id-87 .bp-career-process-head,
body.page-id-87 .bp-career-faq-head,
body.page-id-87 .bp-career-cta-row { grid-template-columns: minmax(0,1fr); gap: 24px; }
body.page-id-87 .bp-career-hero-grid > *,
body.page-id-87 .bp-career-jobs-head > *,
body.page-id-87 .bp-career-about-head > *,
body.page-id-87 .bp-career-about-copy-grid > *,
body.page-id-87 .bp-career-benefits-head > *,
body.page-id-87 .bp-career-kitchen-head > *,
body.page-id-87 .bp-career-kitchen-content > *,
body.page-id-87 .bp-career-process-head > *,
body.page-id-87 .bp-career-faq-head > *,
body.page-id-87 .bp-career-cta-row > * { grid-column: 1 / -1; min-width: 0; max-width: 100%; }

 body.page-id-87 .bp-career-hero { padding-block: 48px 56px; }
 body.page-id-87 .bp-career-hero-title { margin: 0; font-size: var(--bp-mobile-title); line-height: .98; letter-spacing: -.05em; }
 body.page-id-87 .bp-career-hero-copy { margin-top: 8px; padding-bottom: 0; }
 body.page-id-87 .bp-career-hero-copy p { margin-bottom: 24px; }
 body.page-id-87 .bp-section-title { hyphens: auto; }
 body.page-id-87 :is(.bp-career-jobs-head,.bp-career-about-head,.bp-career-benefits-head,.bp-career-kitchen-head,.bp-career-process-head,.bp-career-faq-head,.bp-career-kitchen-content) { margin-bottom: 32px; }
 body.page-id-87 :is(.bp-career-process-head .bp-section-title,.bp-career-process-head > p) { margin-top: 0; }
 body.page-id-87 :is(.bp-career-hero-copy p,.bp-career-jobs-head > p,.bp-career-about-copy p,.bp-career-benefits-head > p,.bp-career-benefit p,.bp-career-kitchen-copy p,.bp-career-process-head > p,.bp-career-process-item p,.bp-career-faq-answer p,.bp-career-cta-action > p) { font-size: var(--bp-mobile-body); line-height: 1.5; max-width: none; }
 body.page-id-87 :is(.bp-career-about-copy,.bp-career-kitchen-copy) { padding-top: 0; }
 body.page-id-87 :is(.bp-career-hero-image,.bp-career-about-image) { margin-top: 32px; }
 body.page-id-87 .bp-career-kitchen-image { width: 100%; margin: 0; }
 body.page-id-87 :is(.bp-career-about-image img,.bp-career-kitchen-image img) { aspect-ratio: 4 / 3; }
 body.page-id-87 .bp-career-kitchen-image figcaption { font-size: 10px; line-height: 1.5; }
 body.page-id-87 .bp-career-job { grid-template-columns: minmax(0,1fr) 32px; gap: 16px; min-height: 0; padding-block: 28px; }
 body.page-id-87 .bp-career-job-number { grid-column: 1; grid-row: 1; padding-top: 0; }
 body.page-id-87 .bp-career-job-main { grid-column: 1 / -1; grid-row: 2; min-width: 0; }
 body.page-id-87 .bp-career-job-meta { line-height: 1.5; margin-bottom: 12px; }
 body.page-id-87 .bp-career-job-main h3,
 body.page-id-87 .bp-career-benefit h3,
 body.page-id-87 .bp-career-process-item h3 { font-size: var(--bp-mobile-subheading); line-height: 1.1; hyphens: auto; }
 body.page-id-87 .bp-career-job-main p { font-size: 15px; line-height: 1.5; opacity: .8; }
 body.page-id-87 .bp-career-job-location { grid-column: 1 / -1; grid-row: 3; max-width: none; font-size: 14px; opacity: .8; }
 body.page-id-87 .bp-career-job-arrow { grid-column: 2; grid-row: 1; font-size: 24px; transform: none; }
 body.page-id-87 .bp-career-benefits-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px 24px; }
 body.page-id-87 .bp-career-benefit { min-height: 0; padding-top: 24px; }
 body.page-id-87 .bp-career-benefit-number { margin-bottom: 24px; }
 body.page-id-87 .bp-career-benefit p { margin-top: 20px; }
 body.page-id-87 .bp-career-process-track { grid-template-columns: minmax(0,1fr); gap: 32px; padding: 0 0 0 38px; }
 body.page-id-87 .bp-career-process-track::before { top: 7px; bottom: 0; left: 7px; right: auto; border-top: 0; border-left: 1px solid var(--bp-line); }
 body.page-id-87 .bp-career-process-track::after { display: none; }
 body.page-id-87 .bp-career-process-item { padding-top: 0; opacity: 1 !important; transform: none !important; }
 body.page-id-87 .bp-career-process-dot { box-sizing: border-box; top: 0; left: -38px; background: #fff; }
 body.page-id-87 .bp-career-process-number { margin-bottom: 20px; }
 body.page-id-87 .bp-career-process-item p { margin-top: 20px; }
 body.page-id-87 .bp-career-faq-list { margin-left: 0; }
 body.page-id-87 .bp-career-faq-item summary { padding: 24px 38px 24px 0; font-size: var(--bp-mobile-subheading); line-height: 1.15; hyphens: auto; }
 body.page-id-87 .bp-career-faq-answer { padding: 0 0 24px; }
 body.page-id-87 .bp-career-faq-answer a { overflow-wrap: anywhere; }
 body.page-id-87 .bp-career-cta { padding-block: 48px 64px; }
 body.page-id-87 .bp-career-cta > .bp-shell > .bp-kicker { margin-bottom: 24px; }
 body.page-id-87 .bp-career-cta-title { font-size: var(--bp-mobile-cta); line-height: .98; letter-spacing: -.05em; hyphens: auto; }
 body.page-id-87 .bp-career-cta-action { padding-bottom: 0; }
 body.page-id-87 .bp-career-cta-action > p { margin-bottom: 24px; }
 body.page-id-87 .bp-career-cta-links { gap: 12px; }
 body.page-id-87 :is(.bp-career-hero-copy,.bp-career-cta-links) a { min-height: 44px; display: inline-flex; align-items: center; max-width: 100%; overflow-wrap: anywhere; }
}
@media (max-width: 599px) {
 body.page-id-87 .bp-career-benefits-grid { grid-template-columns: minmax(0,1fr); }
}

/* Teamseite: kompakter Einstieg, gut lesbare Porträtkarten. */
@media (max-width: 1023px) {
 body.page-id-122 .bp-team-hero { min-height: 0; padding-block: 48px 56px; }
 body.page-id-122 .bp-team-hero-grid,
 body.page-id-122 .bp-team-main-head,
 body.page-id-122 .bp-team-career-grid { grid-template-columns: minmax(0,1fr); gap: 24px; }
 body.page-id-122 :is(.bp-team-hero-grid,.bp-team-main-head,.bp-team-career-grid) > * { grid-column: 1 / -1; min-width: 0; max-width: 100%; }
 body.page-id-122 .bp-team-hero-title { margin: 0; font-size: var(--bp-mobile-title); line-height: .98; letter-spacing: -.05em; hyphens: auto; }
 body.page-id-122 .bp-team-hero-lead { margin: 8px 0 0; }
 body.page-id-122 :is(.bp-team-hero-lead,.bp-team-main-copy,.bp-team-career-content p) { font-size: var(--bp-mobile-body); line-height: 1.5; max-width: none; }
 body.page-id-122 .bp-section-title { hyphens: auto; }
 body.page-id-122 .bp-team-main-head { margin-bottom: 32px; }
 body.page-id-122 .bp-team-main-copy { padding-bottom: 0; }
 body.page-id-122 .bp-team-page-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 36px 20px; }
 body.page-id-122 .bp-team-person-content { padding-top: 16px; }
 body.page-id-122 .bp-team-person-name { font-size: 20px; line-height: 1.15; overflow-wrap: anywhere; }
 body.page-id-122 .bp-team-person-position { margin-top: 10px; max-width: none; font-size: 12px; line-height: 1.5; hyphens: auto; overflow-wrap: anywhere; }
 body.page-id-122 .bp-team-career { padding-block: 48px 64px; }
 body.page-id-122 .bp-team-career > .bp-shell > .bp-kicker { margin-bottom: 24px; }
 body.page-id-122 .bp-team-career-grid h2 { font-size: var(--bp-mobile-cta); line-height: .98; letter-spacing: -.05em; hyphens: auto; }
 body.page-id-122 .bp-team-career-content { padding-bottom: 0; }
 body.page-id-122 .bp-team-career-content p { margin-bottom: 24px; }
 body.page-id-122 .bp-team-career .bp-text-link { min-height: 44px; }
}
@media (max-width: 767px) {
 body.page-id-122 .bp-team-page-grid { grid-template-columns: repeat(1,minmax(0,1fr)); gap: 32px 16px; }
}
@media (max-width: 359px) {
 body.page-id-122 .bp-team-page-grid { grid-template-columns: minmax(0,1fr); }
}

/* Kontakt: lesbare Kontaktdaten und einspaltiges Formular. */
@media (max-width: 1023px) {
 body.page-id-105 .bp-contact-hero { min-height: 0; padding-block: 48px 56px; }
 body.page-id-105 :is(.bp-contact-hero-grid,.bp-contact-main-head,.bp-contact-grid,.bp-contact-form-intro,.bp-contact-closing-grid) { grid-template-columns: minmax(0,1fr); gap: 24px; }
 body.page-id-105 :is(.bp-contact-hero-grid,.bp-contact-main-head,.bp-contact-grid,.bp-contact-form-intro,.bp-contact-closing-grid) > * { grid-column: 1 / -1; min-width: 0; max-width: 100%; }
 body.page-id-105 .bp-contact-hero-title { margin: 0; font-size: var(--bp-mobile-title); line-height: .98; letter-spacing: -.05em; hyphens: auto; }
 body.page-id-105 .bp-contact-hero-lead { margin: 8px 0 0; }
 body.page-id-105 :is(.bp-contact-hero-lead,.bp-contact-details-intro p,.bp-contact-form-intro p,.bp-contact-closing-grid p,.bp-contact-detail a,.bp-contact-detail address) { font-size: var(--bp-mobile-body); line-height: 1.5; max-width: none; }
 body.page-id-105 .bp-section-title { hyphens: auto; }
 body.page-id-105 .bp-contact-main-head,
 body.page-id-105 .bp-contact-form-intro { margin-bottom: 32px; }
 body.page-id-105 .bp-contact-grid { gap: 48px; }
 body.page-id-105 .bp-contact-details-intro { max-width: none; margin-bottom: 32px; }
 body.page-id-105 .bp-contact-detail { padding-block: 20px; }
 body.page-id-105 .bp-contact-detail-label { margin-bottom: 10px; line-height: 1.5; }
 body.page-id-105 .bp-contact-detail a { display: inline-flex; align-items: center; min-height: 44px; max-width: 100%; overflow-wrap: anywhere; }
 body.page-id-105 .bp-contact-form-intro h3 { margin: 0; font-size: var(--bp-mobile-subheading); line-height: 1.1; }
 body.page-id-105 .bp-contact-image { padding-bottom: 0; }
 body.page-id-105 .bp-contact-image-figure img { aspect-ratio: 4 / 3; }
 body.page-id-105 .bp-cf7-row-two { grid-template-columns: minmax(0,1fr); }
 body.page-id-105 .bp-cf7-field { min-width: 0; margin-bottom: 24px; }
 body.page-id-105 .bp-cf7-field > p { margin: 0; }
 /* Automatisch eingefügte Umbrüche erzeugen sonst große Leerflächen. */
 body.page-id-105 .bp-cf7-field label > br,
 body.page-id-105 .bp-cf7-label > br { display: none; }
 body.page-id-105 .bp-cf7-label { margin-bottom: 8px; font-size: 11px; line-height: 1.5; }
 body.page-id-105 .bp-cf7 :is(input[type="text"],input[type="email"],input[type="tel"],textarea) { box-sizing: border-box; max-width: 100%; min-height: 48px; padding: 12px 0; font-size: 17px; line-height: 1.5; }
 body.page-id-105 .bp-cf7 textarea { min-height: 180px; }
 body.page-id-105 .bp-cf7-field-message { margin-top: 0; }
 body.page-id-105 .bp-cf7-consent { margin: 0 0 28px; font-size: 14px; line-height: 1.5; }
 body.page-id-105 .bp-cf7-consent label { min-height: 44px; grid-template-columns: 22px minmax(0,1fr); gap: 12px; }
 body.page-id-105 .bp-cf7-consent input[type="checkbox"] { width: 22px; height: 22px; }
 body.page-id-105 .bp-cf7 :is(input[type="submit"],button[type="submit"]) { min-height: 48px; max-width: 100%; white-space: normal; }
 body.page-id-105 .wpcf7-response-output { margin: 24px 0 0; font-size: 14px; overflow-wrap: anywhere; }
 body.page-id-105 .bp-contact-closing { padding-block: 48px 64px; }
 body.page-id-105 .bp-contact-closing > .bp-shell > .bp-kicker { margin-bottom: 24px; }
 body.page-id-105 .bp-contact-closing-grid h2 { font-size: var(--bp-mobile-cta); line-height: .98; letter-spacing: -.05em; hyphens: auto; }
 body.page-id-105 .bp-contact-closing-grid p { padding-bottom: 0; }
}
