/* Original: /ui-consistency45.css */
/* Requested surface consistency. No geometry, calculation or form-state changes. */
:root { --kp-surface-radius45: 8px; --kp-logo-radius: 8px; --kp-button-radius: 8px; }
html body :is(.kp-logo-tile-approved, .logo-tile, .site-header .brand, .header .wordmark-logo, .footer-brand-tile, .kp-footer-logo-approved) {
  --kp-logo-radius: 8px !important;
  border-radius: var(--kp-surface-radius45) !important;
}
html body :is(.kp-logo-tile-approved, .logo-tile, .site-header .brand, .header .wordmark-logo, .footer-brand-tile, .kp-footer-logo-approved) > img,
html body .kp-logo-tile-approved .brand-lockup-v6,
html body .kp-logo-tile-approved .brand-lockup-v6 > img { border-radius: 8px !important; }
html body :is(.process-card, .clock-visual, .founders-visual, .vitality-visual, .price-summary, .portal-window,
 .portal-status-grid article, .medical-grid article, .clock-prices article, .vita-card, .aa40-module-media,
 .aa40-photo, .aa41-media figure, .research-card, .kj-research-grid article, .kj-module-card,
 .brand-network-card, .kp-titles-approved > article, .kp-private-sep16 .album-photo, .album-photo) {
  border-radius: var(--kp-surface-radius45) !important;
}
/* Deliberately leave II title bands (22px 22px 0 0), tables, graph nodes,
   input state controls and circular scene geometry at their approved standards. */
html body section.hero#start .hero-bar button.menu-button {
  width: 44px !important; min-width: 44px !important; max-width: 44px !important;
  height: 44px !important; min-height: 44px !important; flex-basis: 44px !important;
  border: 1px solid #ffc478b3 !important; border-radius: 8px !important;
  background: linear-gradient(145deg, #ffab32, #e67a00) !important;
  box-shadow: 0 4px 12px #7b3c002b !important; color: #fff !important;
}
html body section.hero#start .hero-bar button.menu-button .menu-lines {
  width: 22px !important; height: 18px !important; flex-basis: 22px !important;
  background: linear-gradient(#fff,#fff) center 0 / 22px 2px no-repeat,
    linear-gradient(#fff,#fff) center 8px / 22px 2px no-repeat,
    linear-gradient(#fff,#fff) center 16px / 22px 2px no-repeat !important;
  filter: drop-shadow(1px 1px 1px #0006);
}
/* KJ: the 52px fixed contact rail must not sit on the first text character. */
html[data-kp-brand="krebs-jetzt"] { scroll-padding-top: calc(var(--kp-sticky-clearance45, 104px) + 16px); }
@media (min-width:1001px) and (max-width:1199px) {
  html[data-kp-brand="krebs-jetzt"] body section.kp-full-header .kp-full-scene .hero-copy {
    left: 76px !important; width: calc(43% - 76px) !important; margin-left: 0 !important;
  }
}
@media (min-width:651px) and (max-width:1000px) {
  html[data-kp-brand="krebs-jetzt"] body section.kp-full-header > .hero-copy {
    width: calc(100% - 112px) !important; margin-left: 76px !important; margin-right: 36px !important;
  }
}
/* II: native architectural depth plane, always below the unchanged people. */
html body section.hero#start > .ii-building45 {
  position: absolute; pointer-events: none; z-index: 2;
  top: calc(var(--ii-depth-nav, 96px) + 26px); right: 9%; width: 60%;
  height: calc(var(--ii-depth-scene, 100svh) - var(--ii-depth-nav, 96px) - 112px);
  overflow: visible; opacity: .78;
}
.ii-building45 .estate-shell45 { fill: #153e5a18; stroke: #ffe4c1; stroke-width: 1.6; stroke-linejoin: round; filter:drop-shadow(0 1px 2px #18313db3); }
.ii-building45 .estate-edge45 { fill: none; stroke: #ffb253; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; filter:drop-shadow(0 1px 2px #18313db3); }
.ii-building45 .estate-window45 { fill: #fff1c4; opacity: .24; }
.ii-building45 .estate-floor45 { fill: none; stroke: #c6e2ef; stroke-width: .75; opacity: .5; }
@media(prefers-reduced-motion:no-preference) {
  .ii-building45 .estate-draw45 { stroke-dasharray: 1; animation: estate-draw45 8.5s ease-in-out infinite; }
  .ii-building45 .estate-window45 { animation: estate-windows45 8.5s ease-in-out infinite; animation-delay: var(--window-delay45,0s); }
  .ii-building45 .estate-volume45 { transform-origin: 460px 460px; animation: estate-depth45 8.5s ease-in-out infinite; }
}
html body section.hero[data-building-paused45] > .ii-building45 * { animation-play-state: paused !important; }
@keyframes estate-draw45 { 0%,7% {stroke-dashoffset:1;opacity:0} 33%,76% {stroke-dashoffset:0;opacity:1} 96%,100% {stroke-dashoffset:0;opacity:0} }
@keyframes estate-windows45 { 0%,25%,100%{opacity:.12} 42%,70%{opacity:.65} 90%{opacity:.15} }
@keyframes estate-depth45 { 0%,100%{transform:translateY(3px)} 50%{transform:translateY(-3px)} }
@media(max-width:1000px) {
  html body section.hero#start > .ii-building45 { right:-5%; width:110%; top:calc(var(--ii-depth-nav,84px) + 18px); height:calc(var(--ii-depth-scene,100svh) - var(--ii-depth-nav,84px) - 100px); opacity:.63; }
}
@media(forced-colors:active) {
  html body section.hero#start .hero-bar button.menu-button { background:ButtonFace!important; border-color:ButtonText!important; }
  html body section.hero#start .hero-bar button.menu-button .menu-lines { forced-color-adjust:none; background:linear-gradient(ButtonText,ButtonText) center 0/22px 2px no-repeat,linear-gradient(ButtonText,ButtonText) center 8px/22px 2px no-repeat,linear-gradient(ButtonText,ButtonText) center 16px/22px 2px no-repeat!important; filter:none; }
}

/* Original: /mobile-quick47.css */
/* Presentation only: existing links, disclosure state and click handlers retained. */
.kp-quick-grid47 { display:none!important; }
@media (max-width:760px) {
 html body :is(.kp-function-dock,.immo-function-dock) {
  position:fixed!important; top:auto!important; bottom:12px!important; left:12px!important;
  display:flex!important; flex-direction:column-reverse!important; align-items:flex-start!important;
  gap:8px!important; transform:none!important;
 }
 html body :is(.kp-function-toggle,.immo-function-toggle) {
  width:50px!important; height:50px!important; min-width:50px!important; min-height:50px!important;
  display:grid!important; place-items:center!important; padding:0!important; border-radius:8px!important;
 }
 html body :is(.kp-function-toggle,.immo-function-toggle) > span:not(.kp-quick-grid47) { display:none!important; }
 html body :is(.kp-function-toggle,.immo-function-toggle) .kp-quick-grid47 {
  display:grid!important; grid-template-columns:repeat(2,5px)!important; grid-template-rows:repeat(2,5px)!important;
  gap:4px!important; width:14px!important; height:14px!important; padding:0!important; margin:0!important;
  font-size:0!important; line-height:0!important; transform:none!important;
 }
 html body .kp-quick-grid47 i { display:block!important; width:5px!important; height:5px!important; border-radius:50%!important; background:currentColor!important; transform:scale(1); transition:transform .18s ease; }
 html body :is(.kp-function-dock,.immo-function-dock).is-open .kp-quick-grid47 i:first-child,
 html body :is(.kp-function-dock,.immo-function-dock).is-open .kp-quick-grid47 i:last-child { transform:scale(1.35); }
 html body :is(.kp-function-links,.immo-function-links) { display:flex!important; flex-direction:column!important; gap:8px!important; visibility:hidden!important; opacity:0!important; pointer-events:none!important; transform:translateY(8px)!important; transition:opacity .18s,transform .18s!important; }
 html body :is(.kp-function-dock,.immo-function-dock).is-open :is(.kp-function-links,.immo-function-links) { visibility:visible!important; opacity:1!important; pointer-events:auto!important; transform:none!important; }
 html body :is(.kp-function-links,.immo-function-links) a {
  display:flex!important; align-items:center!important; width:190px!important; max-width:calc(100vw - 24px)!important;
  height:44px!important; min-height:44px!important; border-radius:8px!important; padding:0!important; color:#fff!important;
 }
 html body :is(.kp-function-links,.immo-function-links) a > span { display:grid!important; place-items:center!important; flex:0 0 44px!important; width:44px!important; height:44px!important; }
 html body :is(.kp-function-links,.immo-function-links) a > b { display:block!important; visibility:visible!important; opacity:1!important; font-size:14px!important; font-weight:700!important; line-height:1.2!important; color:#fff!important; white-space:nowrap!important; padding-right:12px!important; text-shadow:1px 1px 1px #0008!important; }
}
@media(prefers-reduced-motion:reduce) { html body .kp-quick-grid47 i { transition:none!important; } }
