/* /booking-system.css */
:root{--booking-accent:#159eb8;--booking-accent-rgb:21,158,184;--booking-navy:#052b49;--booking-ink:#12364d;--booking-muted:#647985;--booking-line:#cfdee5;--booking-paper:#fff;--booking-soft:#f3f8fa;--booking-required:#c94444}
*{box-sizing:border-box}.kp-booking-page{min-height:100vh;margin:0;background:radial-gradient(circle at 82% 8%,rgba(var(--booking-accent-rgb),.16),transparent 30%),linear-gradient(180deg,#f8fbfc,#edf5f7);color:var(--booking-ink);font-family:Montserrat,Arial,sans-serif}.kp-booking-head{position:relative;z-index:3;display:flex;min-height:96px;align-items:center;justify-content:space-between;gap:24px;padding:16px max(22px,calc((100vw - 1240px)/2));border-bottom:1px solid rgba(var(--booking-accent-rgb),.2);background:rgba(255,255,255,.91);backdrop-filter:blur(16px)}.kp-booking-head img{width:min(350px,56vw);max-height:65px;object-fit:contain;object-position:left center}.kp-booking-back{display:inline-flex;min-height:44px;align-items:center;padding:0 18px;border:1px solid rgba(var(--booking-accent-rgb),.35);border-radius:999px;background:#fff;color:var(--booking-navy);font-size:.78rem;font-weight:800;text-decoration:none}.kp-booking-hero{padding:54px 22px 30px;text-align:center}.kp-booking-hero p{max-width:760px;margin:12px auto 0;color:var(--booking-muted);line-height:1.7}.kp-booking-hero h1{max-width:920px;margin:0 auto;color:var(--booking-navy);font-size:clamp(2.1rem,5vw,4.8rem);letter-spacing:-.045em;line-height:1}.kp-booking-shell{width:min(1180px,calc(100% - 32px));margin:0 auto 64px}.kp-booking-card{overflow:hidden;border:1px solid var(--booking-line);border-radius:28px;background:rgba(255,255,255,.96);box-shadow:0 26px 80px rgba(5,43,73,.13)}.kp-booking-mode{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px;background:var(--booking-navy)}.kp-booking-mode button{display:flex;min-height:66px;align-items:center;justify-content:center;gap:12px;border:0;border-radius:20px;background:transparent;color:#dcecf2;cursor:pointer;font:inherit;font-weight:800}.kp-booking-mode button.active{background:linear-gradient(135deg,var(--booking-accent),rgba(var(--booking-accent-rgb),.72));color:#fff;box-shadow:inset 0 1px rgba(255,255,255,.45),0 8px 18px rgba(0,0,0,.16)}.kp-booking-mode small{display:block;font-size:.62rem;font-weight:700;opacity:.82}.kp-booking-progress{display:grid;grid-template-columns:repeat(var(--step-count,5),1fr);border-bottom:1px solid var(--booking-line);background:#f9fbfc}.kp-booking-progress span{position:relative;display:flex;min-width:0;align-items:center;gap:8px;padding:18px 12px;color:#879aa5;font-size:.7rem;font-weight:800}.kp-booking-progress span:not(:last-child){border-right:1px solid var(--booking-line)}.kp-booking-progress i{display:grid;width:27px;height:27px;flex:0 0 27px;place-items:center;border:1px solid #c6d7df;border-radius:50%;background:#fff;font-style:normal}.kp-booking-progress span.active{color:var(--booking-navy)}.kp-booking-progress span.active i{border-color:var(--booking-accent);background:var(--booking-accent);color:#fff}.kp-booking-progress span.current::after{content:"";position:absolute;right:14px;bottom:0;left:14px;height:3px;border-radius:3px 3px 0 0;background:var(--booking-accent)}.kp-booking-panel{padding:clamp(26px,5vw,58px)}.kp-booking-eyebrow{margin:0 0 7px;color:var(--booking-accent);font-size:.68rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.kp-booking-panel h2{margin:0 0 10px;color:var(--booking-navy);font-size:clamp(1.6rem,3.2vw,2.7rem);letter-spacing:-.035em;line-height:1.08}.kp-booking-intro{max-width:760px;margin:0 0 28px;color:var(--booking-muted);font-size:.92rem;line-height:1.7}.kp-booking-legend{display:flex;flex-wrap:wrap;gap:9px;margin:0 0 26px}.kp-booking-legend span{padding:6px 10px;border-radius:999px;background:#eef4f6;color:#607580;font-size:.62rem;font-weight:800}.kp-booking-legend .required{border-left:4px solid var(--booking-required);background:#fff3f3;color:#8d3030}.kp-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.kp-choice{position:relative;min-height:108px;padding:20px;border:1px solid var(--booking-line);border-radius:18px;background:linear-gradient(145deg,#fff,#f3f8fa);color:var(--booking-ink);cursor:pointer;text-align:left}.kp-choice::before{content:"";position:absolute;top:15px;bottom:15px;left:0;width:4px;border-radius:0 4px 4px 0;background:#cbd8de}.kp-choice:hover,.kp-choice.active{border-color:rgba(var(--booking-accent-rgb),.65);box-shadow:0 10px 25px rgba(var(--booking-accent-rgb),.12);transform:translateY(-1px)}.kp-choice.active::before{background:var(--booking-accent)}.kp-choice small{display:block;margin-bottom:5px;color:var(--booking-muted);font-size:.62rem;font-weight:700}.kp-choice strong{display:block;color:var(--booking-navy);font-size:.92rem;line-height:1.35}.kp-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.kp-form-field{position:relative;display:grid;align-content:start;gap:7px;padding-left:13px}.kp-form-field.required::before{content:"";position:absolute;top:0;bottom:0;left:0;width:3px;border-radius:3px;background:var(--booking-required)}.kp-form-field.wide{grid-column:1/-1}.kp-label-row{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--booking-navy);font-size:.73rem;font-weight:850}.kp-field-status{color:#82949e;font-size:.57rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.kp-form-field.required .kp-field-status{color:var(--booking-required)}.kp-form-field input,.kp-form-field select,.kp-form-field textarea{width:100%;min-height:50px;padding:12px 14px;border:1px solid #bdcfd8;border-radius:12px;background:#fff;color:var(--booking-ink);font:inherit;font-size:.83rem;outline:none}.kp-form-field textarea{min-height:116px;resize:vertical;line-height:1.55}.kp-form-field input:focus,.kp-form-field select:focus,.kp-form-field textarea:focus{border-color:var(--booking-accent);box-shadow:0 0 0 4px rgba(var(--booking-accent-rgb),.11)}.kp-form-field.required.invalid input,.kp-form-field.required.invalid select,.kp-form-field.required.invalid textarea{border-color:var(--booking-required);box-shadow:0 0 0 3px rgba(201,68,68,.08)}.kp-range{padding:15px 16px;border:1px solid var(--booking-line);border-radius:15px;background:var(--booking-soft)}.kp-range input{min-height:auto;padding:0;border:0;accent-color:var(--booking-accent);box-shadow:none}.kp-range output{color:var(--booking-accent);font-size:.82rem;font-weight:900}.kp-health-list{display:grid;gap:13px}.kp-health-item{padding:17px;border:1px solid var(--booking-line);border-radius:16px;background:#f9fbfc}.kp-health-item.active{border-color:rgba(var(--booking-accent-rgb),.65);background:rgba(var(--booking-accent-rgb),.055)}.kp-health-question{display:grid;grid-template-columns:minmax(0,1fr) 170px;align-items:center;gap:18px}.kp-health-question strong{color:var(--booking-navy);font-size:.78rem;line-height:1.5}.kp-health-detail{margin-top:15px}.kp-health-note{margin-top:20px;padding:16px 18px;border-left:4px solid var(--booking-accent);border-radius:0 14px 14px 0;background:#eef7f8;color:#4b6572;font-size:.75rem;line-height:1.65}.kp-consent{display:flex;align-items:flex-start;gap:10px;margin-top:18px;color:#4c6572;font-size:.72rem;line-height:1.55}.kp-consent input{width:18px;height:18px;flex:0 0 18px;margin-top:2px;accent-color:var(--booking-accent)}.kp-advisors{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-bottom:25px}.kp-advisor{display:flex;align-items:center;gap:14px;min-height:86px;padding:12px;border:1px solid var(--booking-line);border-radius:16px;background:#fff;cursor:pointer;text-align:left}.kp-advisor.active{border-color:var(--booking-accent);box-shadow:0 0 0 3px rgba(var(--booking-accent-rgb),.1)}.kp-advisor img{width:58px;height:58px;border-radius:50%;background:#e6f1f4;object-fit:cover;object-position:center top}.kp-advisor strong,.kp-advisor small{display:block}.kp-advisor strong{color:var(--booking-navy);font-size:.8rem}.kp-advisor small{color:var(--booking-muted);font-size:.63rem}.kp-calendar-state{display:inline-flex;align-items:center;gap:8px;margin-bottom:20px;padding:8px 12px;border-radius:999px;background:#ecf7f4;color:#22735b;font-size:.66rem;font-weight:800}.kp-calendar-state::before{content:"";width:8px;height:8px;border-radius:50%;background:#2eb480;box-shadow:0 0 0 4px rgba(46,180,128,.12)}.kp-date-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.kp-date,.kp-time{min-height:73px;border:1px solid var(--booking-line);border-radius:14px;background:#fff;color:var(--booking-ink);cursor:pointer}.kp-date.active,.kp-time.active{border-color:var(--booking-accent);background:rgba(var(--booking-accent-rgb),.08);box-shadow:inset 0 -3px var(--booking-accent)}.kp-date strong,.kp-date small,.kp-time strong,.kp-time small{display:block}.kp-date small,.kp-time small{color:var(--booking-muted);font-size:.58rem}.kp-time-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:14px}.kp-booking-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:20px clamp(26px,5vw,58px);border-top:1px solid var(--booking-line);background:#f8fbfc}.kp-booking-actions button{min-height:48px;padding:0 24px;border:1px solid var(--booking-accent);border-radius:999px;background:#fff;color:var(--booking-navy);cursor:pointer;font:inherit;font-size:.75rem;font-weight:900}.kp-booking-actions .primary{border-color:var(--booking-accent);background:var(--booking-accent);color:#fff}.kp-booking-actions button:disabled{cursor:wait;opacity:.6}.kp-booking-error{margin:0 clamp(26px,5vw,58px) 18px;padding:12px 15px;border-left:4px solid var(--booking-required);border-radius:0 10px 10px 0;background:#fff1f1;color:#8a2e2e;font-size:.75rem;font-weight:750}.kp-booking-success{text-align:center}.kp-booking-success-mark{display:grid;width:72px;height:72px;margin:0 auto 20px;place-items:center;border-radius:50%;background:var(--booking-accent);color:#fff;font-size:2rem;box-shadow:0 14px 32px rgba(var(--booking-accent-rgb),.25)}.kp-booking-footer{padding:25px;text-align:center;color:#6e828d;font-size:.67rem}.kp-booking-footer a{color:var(--booking-accent);font-weight:800}.kp-hidden{display:none!important}
@media(max-width:760px){.kp-booking-head{min-height:78px;padding:12px 16px}.kp-booking-head img{width:min(245px,63vw);max-height:50px}.kp-booking-back{min-height:40px;padding:0 12px;font-size:0}.kp-booking-back::after{content:"Zurück";font-size:.68rem}.kp-booking-hero{padding:38px 18px 22px}.kp-booking-shell{width:min(100% - 18px,1180px)}.kp-booking-card{border-radius:20px}.kp-booking-mode button{min-height:58px;font-size:.74rem}.kp-booking-progress{display:flex;overflow-x:auto}.kp-booking-progress span{min-width:132px;padding:14px 10px}.kp-booking-panel{padding:28px 20px}.kp-choice-grid,.kp-form-grid,.kp-advisors{grid-template-columns:1fr}.kp-form-field.wide{grid-column:auto}.kp-health-question{grid-template-columns:1fr}.kp-date-grid,.kp-time-grid{grid-template-columns:repeat(2,1fr)}.kp-booking-actions{padding:16px 20px}.kp-booking-actions button{flex:1;padding:0 12px}}
@media(prefers-reduced-motion:no-preference){.kp-booking-panel{animation:kpPanelIn .42s cubic-bezier(.2,.8,.2,1)}@keyframes kpPanelIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}}

/* /kp-approved-corrections.css?v=20260907 */
/* Only the explicitly retained logo tiles and founder title cards. */
.kp-logo-tile-approved {
  --kp-logo-radius: 14px;
  position: relative !important;
  display: block !important;
  box-sizing: border-box !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: var(--kp-logo-radius) !important;
  overflow: hidden !important;
  background: transparent !important;
  aspect-ratio: 1624 / 300 !important;
}
.kp-logo-tile-approved > img,
.kp-logo-tile-approved .brand-lockup-v6,
.kp-logo-tile-approved .brand-lockup-v6 > img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  min-width: 0 !important;
  max-height: none !important;
  padding: 0 !important;
  object-fit: contain !important;
  aspect-ratio: 1624 / 300 !important;
  border-radius: inherit !important;
}
.kp-logo-tile-approved::before { content: none !important; }
.kp-logo-tile-approved::after {
  content: '' !important;
  position: absolute !important;
  z-index: 2;
  inset: auto var(--kp-logo-radius) 0 !important;
  height: 2px !important;
  width: auto !important;
  border-radius: 2px !important;
  opacity: 1 !important;
  transform: none !important;
  background: linear-gradient(90deg, var(--kp-tile-accent), var(--kp-tile-accent) 35%, #fff 50%, var(--kp-tile-accent) 65%) !important;
  background-size: 240% 100% !important;
  animation: kp-approved-contour 4s linear infinite !important;
  pointer-events: none;
}
@keyframes kp-approved-contour { from { background-position: 140% 0; } to { background-position: -100% 0; } }
.kp-footer-logo-approved { width: min(360px, 100%); margin-bottom: 20px; }
.brand-network-card {
  position: relative; padding: 0 !important;
  aspect-ratio: 12 / 5 !important; overflow: hidden;
}
.brand-network-card > img {
  width: 100% !important; height: 100% !important;
  object-fit: cover !important; object-position: center top !important;
}
.brand-network-card:last-child:nth-child(odd) {
  grid-column: 1 / -1;
  width: calc((100% - 20px) / 2); justify-self: center;
}
@media (max-width: 700px) {
  .brand-network-card:last-child:nth-child(odd) { width: 100%; }
}
.brand-network-card .kp-channel-logo-approved {
  position: absolute !important;
  left: 3.8%; top: 7.1%; width: 47.8%;
  --kp-logo-radius: 8px;
  z-index: 3;
  pointer-events: none;
}
.brand-network-card .kp-channel-logo-approved.kp-channel-logo-wide {
  left: 3.35%; top: 3.2%; width: 41.4%;
}
.brand-network-card .kp-channel-logo-approved > img {
  position: static !important; transform: none !important;
  max-width: none !important; opacity: 1 !important;
}
.kp-titles-approved,
.founder-credentials-v20.kp-titles-approved {
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  width: var(--kp-title-pair-width, 430px) !important;
  max-width: calc(100% - 28px) !important;
  gap: 10px !important;
  position: absolute !important;
  z-index: 12 !important;
  right: max(24px, 5vw) !important;
  bottom: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}
.kp-titles-approved > article {
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  min-width: 0 !important;
  padding: 10px 12px !important;
  border: 1px solid #d2e3e9 !important;
  border-top: 2px solid var(--kp-tile-accent, #149bb1) !important;
  border-radius: 11px !important;
  background: linear-gradient(135deg, #fffffff5, #eef7faf2) !important;
  color: #173c55 !important;
  box-shadow: 0 8px 18px #0327401f !important;
}
.kp-titles-approved strong { font-size: 14px !important; line-height: 1.2 !important; margin: 0 0 3px !important; color: #062b50 !important; }
.kp-titles-approved span { font-size: 10px !important; font-weight: 650 !important; line-height: 1.3 !important; margin: 0 !important; }
.hero.kp-title-host-approved .person-bio,
.hero.kp-title-host-approved .mobile-person-bios { display: none !important; }
@media (max-width: 1000px) {
  .kp-titles-approved,
  .founder-credentials-v20.kp-titles-approved {
    position: relative !important;
    inset: auto !important;
    margin: 12px auto 24px !important;
    float: none !important;
    clear: both !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .kp-logo-tile-approved::after { animation: none !important; }
}

/* /kp-button-standard-v1.css */
/* KP+ button standard, approved 22 September 2026.
   Presentation only: preserve colours, states, dimensions and all handlers.
   Media thumbnails and slider position markers are not action buttons. */
:root { --kp-button-radius: 8px; }
html body :is(
  button:not(.album-photo-trigger):not(.imagefilm-trigger):not([role="switch"]),
  input[type="button"], input[type="submit"], input[type="reset"],
  a[role="button"], a.button, a.button-secondary, a.btn,
  a.btn-primary, a.btn-secondary, a.cta, a.cta-button,
  a.header-cta, a.header-message, a.header-login,
  a.kj-module-cta, a.kp-round-button, a.kp-round-button-v17,
  a.glossy-button, a.mini-glossy, a.immo-round-button,
  .retirement-depot-promo, .mobile-nav-booking, .mobile-nav-retirement,
  .function-dock a, .whatsapp-teaser > a,
  .header-service-links > a, .hero-service-links a,
  .kp-function-links a, .kp-function-links-v17 a, .immo-function-links a,
  .kp-whatsapp-card > a, .kp-whatsapp-card-v17 > a, .immo-whatsapp-card > a,
  .ks-conversion-v2 .topline-inner a
) { border-radius: var(--kp-button-radius) !important; }

/* Keep the glossy surface within the same softly rectangular contour. */
html body :is(.glossy-button, .mini-glossy, .status-legend-button)::before {
  border-radius: 6px 6px 4px 4px !important;
}

/* OV: reserve the actual label width; never squeeze the booking CTA. */
html body .site-header .header-actions > .button {
  flex: 0 0 auto;
  width: max-content;
  min-width: max-content;
  white-space: nowrap;
}
@media (min-width: 901px) {
  html body .site-header:has(.header-actions) {
    grid-template-columns: minmax(240px, 1fr) auto auto;
  }
}
@media (min-width: 1181px) and (max-width: 1400px) {
  html body .site-header:has(.header-actions) { gap: 14px; padding-inline: 18px; }
  html body .site-header .desktop-nav { gap: 12px; font-size: 12px; }
  html body .site-header .header-actions { gap: 8px; }
}
@media (min-width: 901px) and (max-width: 1000px) {
  html body .site-header:has(.header-actions) {
    grid-template-columns: minmax(180px, 1fr) auto auto;
  }
}

/* /brand61-layout.css */
/* Freestanding approved logos. No global button/form/calculator selectors. */
html[data-brand61]{--brand61-accent:#23ae7e;--brand61-dark:#07533c}
html[data-brand61="ii"]{--brand61-accent:#ff8a00;--brand61-dark:#bd5100}
html[data-brand61="ks"]{--brand61-accent:#279ecf;--brand61-dark:#075b92}
html[data-brand61="kj"]{--brand61-accent:#d73748;--brand61-dark:#85182b}
html body .kp-header61,html body .kp-header61>.header-inner{position:relative!important;inset:auto!important;display:grid!important;grid-template-columns:minmax(260px,44%) 1fr!important;grid-template-rows:auto auto;align-items:center!important;gap:10px 24px!important;width:100%!important;max-width:none!important;min-height:136px!important;height:auto!important;margin:0!important;padding:20px 3%!important;box-sizing:border-box!important;border:0!important;background:none!important;box-shadow:none!important;backdrop-filter:none!important;transform:none!important;z-index:90!important}
html body .kp-header61:has(>.header-inner){display:block!important;padding:0!important;min-height:0!important}
html body .kp-header61 .kp-logo61-free,html body .kp-logo61-free.kp-footer-logo-approved,html body .kp-logo61-free.footer-brand-tile{display:block!important;grid-column:1;grid-row:1/3;width:100%!important;max-width:720px!important;height:auto!important;min-width:0!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;overflow:visible!important;flex:none!important}
html body .kp-logo61-free::before,html body .kp-logo61-free::after{display:none!important}
html body .kp-logo61-free img{display:block!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;transform:none!important;filter:drop-shadow(0 2px 2px #00162324)}
html body .kp-header61 nav[aria-label="Hauptnavigation"],html body .kp-header61 .desktop-nav{grid-column:2;grid-row:1;display:flex!important;flex-wrap:wrap;justify-content:flex-end;gap:12px 18px;position:static!important;width:auto!important;margin:0!important;padding:0!important;background:none!important;border:0!important}
html body .kp-header61 nav[aria-label="Hauptnavigation"] a{font-size:14px!important;white-space:nowrap}
html body .kp-header61 .header-service-links,html body .kp-header61 .hero-service-links,html body .kp-header61>.button,html body .kp-header61 .header-cta{grid-column:2;grid-row:2;justify-self:end;justify-content:flex-end;position:static!important;margin:0!important}
html body .kp-header61 .hero-service-links{padding-right:64px!important}
html body .kp-header61 .kp-toggle61{display:none!important;position:absolute!important;top:22px!important;right:24px!important;width:46px!important;min-width:46px!important;height:46px!important;min-height:46px!important;padding:10px!important;border-radius:8px!important;border:1px solid color-mix(in srgb,var(--brand61-accent),white 40%)!important;background:linear-gradient(135deg,var(--brand61-accent),var(--brand61-dark))!important;color:#fff!important;box-shadow:0 5px 18px #00172533!important;z-index:100!important;cursor:pointer}
html body .kp-header61 .kp-toggle61 svg{stroke:#fff!important;fill:none!important;width:24px;height:24px}
html body .kp-header61 .kp-toggle61>b{display:none!important}
html body .kp-header61 .kp-toggle61>span:not(:has(*)){display:block;width:22px;height:2px;background:#fff;margin:4px 0}
html body section.hero#start .hero-bar .kp-toggle61{display:flex!important;padding:0!important}
html.kp61-scrolled body .kp-header61 .kp-toggle61{display:block!important;position:fixed!important;right:20px!important;top:16px!important}
html.kp61-scrolled body section.hero#start .hero-bar .kp-toggle61{display:flex!important}
html body .kp-header61 .mobile-navigation:not([hidden]),html body .kp-header61 .kp-menu61-panel:not([hidden]),html body .kp-header61.aa33-nav-open>nav[aria-label="Hauptnavigation"]{display:grid!important;position:fixed!important;inset:76px 20px auto auto!important;width:min(480px,calc(100vw - 32px))!important;max-height:calc(100dvh - 100px)!important;overflow:auto!important;padding:18px!important;border:1px solid var(--brand61-accent)!important;border-radius:8px!important;background:#082333f7!important;box-shadow:0 12px 30px #00102055!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important;z-index:99!important;color:#fff!important}
html body .kp-header61 .mobile-navigation[hidden],html body .kp-header61 .kp-menu61-panel[hidden]{display:none!important}
html body .kp-header61 :is(.mobile-navigation,.kp-menu61-panel) a,html body .kp-header61.aa33-nav-open>nav a{display:block;color:#fff!important;font-size:14px!important;line-height:1.4!important;min-height:44px;padding:12px!important;white-space:normal!important}
.kp61-mobile-services{display:none}
html body .kp-header61.aa33-nav-open .kp61-mobile-services{display:contents}
html body .kp-header61 .mobile-service-links{grid-column:1/-1}
html[data-brand61="kj"] body main{padding-top:0!important}
html[data-brand61="ks"] section.hero.kp-full-header,html[data-brand61="kj"] section.hero.kp-full-header{isolation:isolate}
html[data-brand61="ks"] section.hero.kp-full-header::before,html[data-brand61="kj"] section.hero.kp-full-header::before{content:'';position:absolute;inset:0 0 auto;height:calc(var(--kp-full-nav) + max(600px,var(--kp-full-height)));pointer-events:none;z-index:-1;background:linear-gradient(90deg,#edf9fcef 0%,#edf9fcbb 37%,transparent 78%),url('/assets/tumorzellen-gespiegelt-links.png') center/cover no-repeat}
html[data-brand61="kj"] section.hero.kp-full-header::before{background:linear-gradient(90deg,#03162af2,transparent 85%),url('/assets/hero-analysis-v20-lossless22.webp') center/cover no-repeat}
html[data-brand61="ks"] .kp-full-header .kp-full-scene,html[data-brand61="kj"] .kp-full-header .kp-full-scene{background:none!important}
html[data-brand61="kj"] .kp-header61 nav a{color:#fff!important}
html.kp61-scrolled body .menu-panel{position:fixed!important;top:76px!important;right:20px!important;left:auto!important;max-height:calc(100dvh - 100px);overflow:auto}
@media(max-width:1180px){html body .kp-header61,html body .kp-header61>.header-inner{grid-template-columns:minmax(0,1fr) 46px!important;min-height:100px!important;padding:16px 24px!important}html body .kp-header61:has(>.header-inner){padding:0!important;min-height:0!important}html body .kp-header61 .kp-logo61-free{grid-row:1;max-width:620px!important;width:calc(100% - 14px)!important}html body .kp-header61 nav[aria-label="Hauptnavigation"],html body .kp-header61 .desktop-nav,html body .kp-header61 .header-service-links,html body .kp-header61>.button,html body .kp-header61 .header-cta{display:none!important}html body .kp-header61 .kp-toggle61{display:block!important;position:relative!important;inset:auto!important;grid-column:2;grid-row:1;padding:10px!important}html body .kp-header61 .hero-service-links{grid-column:1/-1;grid-row:2;padding-right:0!important}html body .kp-header61.aa33-nav-open>nav[aria-label="Hauptnavigation"]{display:grid!important}html[data-brand61="kj"] body main{margin-top:0!important}}
@media(max-width:600px){html body .kp-header61,html body .kp-header61>.header-inner{min-height:82px!important;padding:14px 12px!important;gap:8px!important;grid-template-columns:minmax(0,1fr) 42px!important}html body .kp-header61:has(>.header-inner){padding:0!important}html body .kp-header61 .kp-toggle61{width:42px!important;min-width:42px!important;height:42px!important;min-height:42px!important}html.kp61-scrolled body .kp-header61 .kp-toggle61{right:12px!important;top:12px!important}html body .kp-header61 .mobile-navigation:not([hidden]),html body .kp-header61 .kp-menu61-panel:not([hidden]),html body .kp-header61.aa33-nav-open>nav[aria-label="Hauptnavigation"]{inset:66px 12px auto auto!important;grid-template-columns:1fr}html[data-brand61="ks"] section.hero.kp-full-header::before,html[data-brand61="kj"] section.hero.kp-full-header::before{height:calc(var(--kp-full-nav) + var(--kp-full-height))}}
@media(prefers-reduced-motion:reduce){.kp-header61 *{scroll-behavior:auto!important;transition:none!important}}
/* Keep original high-resolution proportions; legacy maximums belonged to the retired tile. */
html[data-brand61] body section.hero .kp-header61 .kp-logo61-free img{width:100%!important;height:auto!important;max-height:none!important;max-width:none!important}
html[data-brand61] body .kp-logo61-free,html[data-brand61] body .kp-logo61-free>img,html[data-brand61] body img[src*="/brand/logos-v61/"][src*="/logo-"]{aspect-ratio:auto!important;border-radius:0!important}
html[data-brand61] body section.hero{z-index:20!important}
html[data-brand61="ks"] section.hero.kp-full-header::before,html[data-brand61="kj"] section.hero.kp-full-header::before{height:calc(var(--kp-full-nav) + var(--kp-full-height))!important}
html[data-brand61="ks"] body section.hero.ks-analysis-hero.kp-full-header::before{background:radial-gradient(circle at 73% 24%,#2ce0eb1f,transparent 28%),linear-gradient(90deg,#021225eb 0%,#03233cad 44%,#0321371f 76%,#03213700 100%),url('/assets/tumorzellen-gespiegelt-links.png') center/cover no-repeat!important}
html[data-brand61="ks"] body section.hero.ks-analysis-hero.kp-full-header .kp-full-scene{background:transparent!important}
html[data-brand61="ks"] body section.hero .kp-header61 nav[aria-label="Hauptnavigation"] a{color:#effcff!important;text-shadow:1px 1px 2px #001725}
@media(max-width:1180px){html[data-brand61="aa"] body section.hero .kp-header61.aa33-nav-open .kp61-mobile-services .header-cta{display:block!important}}
html[data-brand61="ks"] .hero .kp-scene-lights,html[data-brand61="kj"] .hero .kp-scene-lights{mask-image:linear-gradient(180deg,transparent,#000 110px);-webkit-mask-image:linear-gradient(180deg,transparent,#000 110px)}
html[data-brand61="ii"] body section.hero#start .hero-bar.kp-header61{flex:none!important}
/* On short desktop screens keep all existing headline, benefits and price copy visible. */
@media(min-width:1001px){html[data-brand61] body section.hero.kp-full-header{--kp-full-height:max(var(--kp61-copy-height,0px),calc(100svh - var(--kp-full-nav)))!important}}

/* Scope-specific compatibility with approved legacy hero rules. */
/* Freestanding approved logos. No global button/form/calculator selectors. */
html[data-brand61]{--brand61-accent:#23ae7e;--brand61-dark:#07533c}
html[data-brand61="ii"]{--brand61-accent:#ff8a00;--brand61-dark:#bd5100}
html[data-brand61="ks"]{--brand61-accent:#279ecf;--brand61-dark:#075b92}
html[data-brand61="kj"]{--brand61-accent:#d73748;--brand61-dark:#85182b}
html[data-brand61] body section.hero .kp-header61,html[data-brand61] body section.hero .kp-header61>.header-inner{position:relative!important;inset:auto!important;display:grid!important;grid-template-columns:minmax(260px,44%) 1fr!important;grid-template-rows:auto auto;align-items:center!important;gap:10px 24px!important;width:100%!important;max-width:none!important;min-height:136px!important;height:auto!important;margin:0!important;padding:20px 3%!important;box-sizing:border-box!important;border:0!important;background:none!important;box-shadow:none!important;backdrop-filter:none!important;transform:none!important;z-index:90!important}
html[data-brand61] body section.hero .kp-header61:has(>.header-inner){display:block!important;padding:0!important;min-height:0!important}
html[data-brand61] body section.hero .kp-header61 .kp-logo61-free,html body .kp-logo61-free.kp-footer-logo-approved,html body .kp-logo61-free.footer-brand-tile{display:block!important;grid-column:1;grid-row:1/3;width:100%!important;max-width:720px!important;height:auto!important;min-width:0!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important;box-shadow:none!important;overflow:visible!important;flex:none!important}
html body .kp-logo61-free::before,html body .kp-logo61-free::after{display:none!important}
html body .kp-logo61-free img{display:block!important;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;transform:none!important;filter:drop-shadow(0 2px 2px #00162324)}
html[data-brand61] body section.hero .kp-header61 nav[aria-label="Hauptnavigation"],html[data-brand61] body section.hero .kp-header61 .desktop-nav{grid-column:2;grid-row:1;display:flex!important;flex-wrap:wrap;justify-content:flex-end;gap:12px 18px;position:static!important;width:auto!important;margin:0!important;padding:0!important;background:none!important;border:0!important}
html[data-brand61] body section.hero .kp-header61 nav[aria-label="Hauptnavigation"] a{font-size:14px!important;white-space:nowrap}
html[data-brand61] body section.hero .kp-header61 .header-service-links,html[data-brand61] body section.hero .kp-header61 .hero-service-links,html[data-brand61] body section.hero .kp-header61>.button,html[data-brand61] body section.hero .kp-header61 .header-cta{grid-column:2;grid-row:2;justify-self:end;justify-content:flex-end;position:static!important;margin:0!important}
html[data-brand61] body section.hero .kp-header61 .hero-service-links{padding-right:64px!important}
html[data-brand61] body section.hero .kp-header61 .kp-toggle61{display:none!important;position:absolute!important;top:22px!important;right:24px!important;width:46px!important;min-width:46px!important;height:46px!important;min-height:46px!important;padding:10px!important;border-radius:8px!important;border:1px solid color-mix(in srgb,var(--brand61-accent),white 40%)!important;background:linear-gradient(135deg,var(--brand61-accent),var(--brand61-dark))!important;color:#fff!important;box-shadow:0 5px 18px #00172533!important;z-index:100!important;cursor:pointer}
html[data-brand61] body section.hero .kp-header61 .kp-toggle61 svg{stroke:#fff!important;fill:none!important;width:24px;height:24px}
html[data-brand61] body section.hero .kp-header61 .kp-toggle61>b{display:none!important}
html[data-brand61] body section.hero .kp-header61 .kp-toggle61>span:not(:has(*)){display:block;width:22px;height:2px;background:#fff;margin:4px 0}
html body section.hero#start .hero-bar .kp-toggle61{display:flex!important;padding:0!important}
html[data-brand61].kp61-scrolled body section.hero .kp-header61 .kp-toggle61{display:block!important;position:fixed!important;right:20px!important;top:16px!important}
html[data-brand61].kp61-scrolled body section.hero section.hero#start .hero-bar .kp-toggle61{display:flex!important}
html[data-brand61] body section.hero .kp-header61 .mobile-navigation:not([hidden]),html[data-brand61] body section.hero .kp-header61 .kp-menu61-panel:not([hidden]),html[data-brand61] body section.hero .kp-header61.aa33-nav-open>nav[aria-label="Hauptnavigation"]{display:grid!important;position:fixed!important;inset:76px 20px auto auto!important;width:min(480px,calc(100vw - 32px))!important;max-height:calc(100dvh - 100px)!important;overflow:auto!important;padding:18px!important;border:1px solid var(--brand61-accent)!important;border-radius:8px!important;background:#082333f7!important;box-shadow:0 12px 30px #00102055!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important;z-index:99!important;color:#fff!important}
html[data-brand61] body section.hero .kp-header61 .mobile-navigation[hidden],html[data-brand61] body section.hero .kp-header61 .kp-menu61-panel[hidden]{display:none!important}
html[data-brand61] body section.hero .kp-header61 :is(.mobile-navigation,.kp-menu61-panel) a,html[data-brand61] body section.hero .kp-header61.aa33-nav-open>nav a{display:block;color:#fff!important;font-size:14px!important;line-height:1.4!important;min-height:44px;padding:12px!important;white-space:normal!important}
.kp61-mobile-services{display:none}
html[data-brand61] body section.hero .kp-header61.aa33-nav-open .kp61-mobile-services{display:contents}
html[data-brand61] body section.hero .kp-header61 .mobile-service-links{grid-column:1/-1}
html[data-brand61="kj"] body main{padding-top:0!important}
html[data-brand61="ks"] section.hero.kp-full-header,html[data-brand61="kj"] section.hero.kp-full-header{isolation:isolate}
html[data-brand61="ks"] section.hero.kp-full-header::before,html[data-brand61="kj"] section.hero.kp-full-header::before{content:'';position:absolute;inset:0 0 auto;height:calc(var(--kp-full-nav) + max(600px,var(--kp-full-height)));pointer-events:none;z-index:-1;background:linear-gradient(90deg,#edf9fcef 0%,#edf9fcbb 37%,transparent 78%),url('/assets/tumorzellen-gespiegelt-links.png') center/cover no-repeat}
html[data-brand61="kj"] section.hero.kp-full-header::before{background:linear-gradient(90deg,#03162af2,transparent 85%),url('/assets/hero-analysis-v20-lossless22.webp') center/cover no-repeat}
html[data-brand61="ks"] .kp-full-header .kp-full-scene,html[data-brand61="kj"] .kp-full-header .kp-full-scene{background:none!important}
html[data-brand61="kj"] .kp-header61 nav a{color:#fff!important}
html[data-brand61].kp61-scrolled body section.hero .menu-panel{position:fixed!important;top:76px!important;right:20px!important;left:auto!important;max-height:calc(100dvh - 100px);overflow:auto}
@media(max-width:1180px){html[data-brand61] body section.hero .kp-header61,html[data-brand61] body section.hero .kp-header61>.header-inner{grid-template-columns:minmax(0,1fr) 46px!important;min-height:100px!important;padding:16px 24px!important}html[data-brand61] body section.hero .kp-header61:has(>.header-inner){padding:0!important;min-height:0!important}html[data-brand61] body section.hero .kp-header61 .kp-logo61-free{grid-row:1;max-width:620px!important;width:calc(100% - 14px)!important}html[data-brand61] body section.hero .kp-header61 nav[aria-label="Hauptnavigation"],html[data-brand61] body section.hero .kp-header61 .desktop-nav,html[data-brand61] body section.hero .kp-header61 .header-service-links,html[data-brand61] body section.hero .kp-header61>.button,html[data-brand61] body section.hero .kp-header61 .header-cta{display:none!important}html[data-brand61] body section.hero .kp-header61 .kp-toggle61{display:block!important;position:relative!important;inset:auto!important;grid-column:2;grid-row:1;padding:10px!important}html[data-brand61] body section.hero .kp-header61 .hero-service-links{grid-column:1/-1;grid-row:2;padding-right:0!important}html[data-brand61] body section.hero .kp-header61.aa33-nav-open>nav[aria-label="Hauptnavigation"]{display:grid!important}html[data-brand61="kj"] body main{margin-top:0!important}}
@media(max-width:600px){html[data-brand61] body section.hero .kp-header61,html[data-brand61] body section.hero .kp-header61>.header-inner{min-height:82px!important;padding:14px 12px!important;gap:8px!important;grid-template-columns:minmax(0,1fr) 42px!important}html[data-brand61] body section.hero .kp-header61:has(>.header-inner){padding:0!important}html[data-brand61] body section.hero .kp-header61 .kp-toggle61{width:42px!important;min-width:42px!important;height:42px!important;min-height:42px!important}html[data-brand61].kp61-scrolled body section.hero .kp-header61 .kp-toggle61{right:12px!important;top:12px!important}html[data-brand61] body section.hero .kp-header61 .mobile-navigation:not([hidden]),html[data-brand61] body section.hero .kp-header61 .kp-menu61-panel:not([hidden]),html[data-brand61] body section.hero .kp-header61.aa33-nav-open>nav[aria-label="Hauptnavigation"]{inset:66px 12px auto auto!important;grid-template-columns:1fr}html[data-brand61="ks"] section.hero.kp-full-header::before,html[data-brand61="kj"] section.hero.kp-full-header::before{height:calc(var(--kp-full-nav) + var(--kp-full-height))}}
@media(prefers-reduced-motion:reduce){.kp-header61 *{scroll-behavior:auto!important;transition:none!important}}
/* Keep original high-resolution proportions; legacy maximums belonged to the retired tile. */
html[data-brand61] body section.hero .kp-header61 .kp-logo61-free img{width:100%!important;height:auto!important;max-height:none!important;max-width:none!important}
html[data-brand61] body .kp-logo61-free,html[data-brand61] body .kp-logo61-free>img,html[data-brand61] body img[src*="/brand/logos-v61/"][src*="/logo-"]{aspect-ratio:auto!important;border-radius:0!important}
html[data-brand61] body section.hero{z-index:20!important}
html[data-brand61="ks"] section.hero.kp-full-header::before,html[data-brand61="kj"] section.hero.kp-full-header::before{height:calc(var(--kp-full-nav) + var(--kp-full-height))!important}
html[data-brand61="ks"] body section.hero.ks-analysis-hero.kp-full-header::before{background:radial-gradient(circle at 73% 24%,#2ce0eb1f,transparent 28%),linear-gradient(90deg,#021225eb 0%,#03233cad 44%,#0321371f 76%,#03213700 100%),url('/assets/tumorzellen-gespiegelt-links.png') center/cover no-repeat!important}
html[data-brand61="ks"] body section.hero.ks-analysis-hero.kp-full-header .kp-full-scene{background:transparent!important}
html[data-brand61="ks"] body section.hero .kp-header61 nav[aria-label="Hauptnavigation"] a{color:#effcff!important;text-shadow:1px 1px 2px #001725}
@media(max-width:1180px){html[data-brand61="aa"] body section.hero .kp-header61.aa33-nav-open .kp61-mobile-services .header-cta{display:block!important}}
html[data-brand61="ks"] .hero .kp-scene-lights,html[data-brand61="kj"] .hero .kp-scene-lights{mask-image:linear-gradient(180deg,transparent,#000 110px);-webkit-mask-image:linear-gradient(180deg,transparent,#000 110px)}
html[data-brand61="ii"] body section.hero#start .hero-bar.kp-header61{flex:none!important}
/* On short desktop screens keep all existing headline, benefits and price copy visible. */
@media(min-width:1001px){html[data-brand61] body section.hero.kp-full-header{--kp-full-height:max(var(--kp61-copy-height,0px),calc(100svh - var(--kp-full-nav)))!important}}

/* /menu62.css */
/* Shared menu disclosure, scoped strictly to headers and their service actions. */
html[data-brand61] body .kp-header61 .kp-toggle61[aria-expanded="true"] > :is(svg,span,b){opacity:0!important}
html[data-brand61] body .kp-header61 .kp-toggle61[aria-expanded="true"]::before,
html[data-brand61] body .kp-header61 .kp-toggle61[aria-expanded="true"]::after{content:''!important;position:absolute!important;display:block!important;left:50%!important;top:50%!important;width:23px!important;height:2px!important;background:#fff!important;border:0!important;border-radius:2px!important;opacity:1!important;transform:translate(-50%,-50%) rotate(45deg)!important}
html[data-brand61] body .kp-header61 .kp-toggle61[aria-expanded="true"]::after{transform:translate(-50%,-50%) rotate(-45deg)!important}
html[data-brand61="ii"] .menu-backdrop .menu-head button[aria-label="Menü schließen"]{position:fixed!important;right:24px!important;top:22px!important;z-index:102!important;display:grid!important;place-items:center;width:46px!important;height:46px!important;padding:0!important;border:1px solid #ffd39e!important;border-radius:8px!important;background:linear-gradient(135deg,#ff8a00,#bd5100)!important;color:#fff!important;box-shadow:0 5px 18px #00172533!important;font-size:0!important}
html[data-brand61="ii"] .menu-backdrop .menu-head button[aria-label="Menü schließen"]::before,
html[data-brand61="ii"] .menu-backdrop .menu-head button[aria-label="Menü schließen"]::after{content:'';position:absolute;left:50%;top:50%;width:23px;height:2px;background:#fff;transform:translate(-50%,-50%) rotate(45deg)}
html[data-brand61="ii"] .menu-backdrop .menu-head button[aria-label="Menü schließen"]::after{transform:translate(-50%,-50%) rotate(-45deg)}
html[data-brand61="ii"] .menu-backdrop .menu-head button[aria-label="Menü schließen"] svg{opacity:0}
html[data-brand61="ii"].kp61-scrolled .menu-backdrop .menu-head button[aria-label="Menü schließen"]{right:20px!important;top:16px!important}
html[data-brand61="ii"] .menu-panel .menu-service-links a,
html[data-brand61="aa"] body section.hero .kp-header61.aa33-nav-open .kp61-mobile-services a,
html[data-brand61="ks"] body section.hero .kp-header61 .mobile-service-links a,
html[data-brand61="kj"] body section.hero .kp-header61 .kp-menu61-panel > a.button{border:1px solid #ffffff80!important;border-radius:8px!important;background:linear-gradient(135deg,var(--brand61-accent),var(--brand61-dark))!important;color:#fff!important;font-weight:800!important;text-shadow:1px 1px 2px #0009!important;box-shadow:0 5px 14px #00172b33!important;transition:transform 160ms ease,box-shadow 160ms ease!important}
html[data-brand61="ii"] .menu-panel .menu-service-links a:hover,
html[data-brand61="aa"] body section.hero .kp-header61.aa33-nav-open .kp61-mobile-services a:hover,
html[data-brand61="ks"] body section.hero .kp-header61 .mobile-service-links a:hover,
html[data-brand61="kj"] body section.hero .kp-header61 .kp-menu61-panel > a.button:hover{color:#fff!important;transform:translateY(-2px)!important;box-shadow:0 8px 18px #00172b55!important}
@media(max-width:600px){html[data-brand61="ii"] .menu-backdrop .menu-head button[aria-label="Menü schließen"]{right:12px!important;top:14px!important;width:42px!important;height:42px!important}html[data-brand61="ii"].kp61-scrolled .menu-backdrop .menu-head button[aria-label="Menü schließen"]{top:12px!important}}
@media(prefers-reduced-motion:reduce){html[data-brand61] .menu-panel .menu-service-links a,html[data-brand61] .kp-header61 .kp61-mobile-services a,html[data-brand61] .kp-header61 .mobile-service-links a,html[data-brand61] .kp-header61 .kp-menu61-panel > a.button{transition:none!important;transform:none!important}}

/* /brand79-ui.css */
/* Approved OV optical control dimensions; existing native handlers remain owners. */
html[data-brand61] { --kp79-control:56px; --kp79-edge:24px; --kp79-top:22px; }
html[data-brand61="ii"][data-ii-ui75] { --ii75-control:56px; }
html[data-brand61] body .kp-header61 .kp-toggle61,
html[data-brand61] body section.hero .kp-header61 .kp-toggle61,
html[data-brand61].kp61-scrolled body section.hero .kp-header61 .kp-toggle61 {
 display:grid!important; place-items:center!important; position:fixed!important;
 inset:var(--kp79-top) var(--kp79-edge) auto auto!important;
 width:var(--kp79-control)!important; min-width:var(--kp79-control)!important; max-width:var(--kp79-control)!important;
 height:var(--kp79-control)!important; min-height:var(--kp79-control)!important; max-height:var(--kp79-control)!important;
 margin:0!important; padding:0!important; border-radius:8px!important; box-sizing:border-box!important;
}
html[data-brand61] body .kp-header61 .kp-toggle61 svg,
html[data-brand61] body section.hero .kp-header61 .kp-toggle61 svg { width:26px!important; height:26px!important; }
html[data-brand61] body .kp-header61 .kp-toggle61[aria-expanded="true"]::before,
html[data-brand61] body .kp-header61 .kp-toggle61[aria-expanded="true"]::after { width:26px!important; height:2.5px!important; }
html[data-brand61] body section.hero .kp-header61 :is(.mobile-navigation,.kp-menu61-panel):not([hidden]),
html[data-brand61] body section.hero .kp-header61.aa33-nav-open>nav[aria-label="Hauptnavigation"] {
 inset:calc(var(--kp79-top) + var(--kp79-control) + 12px) var(--kp79-edge) auto auto!important;
 width:min(510px,calc(100% - var(--kp79-edge)*2))!important;
 max-height:calc(100dvh - var(--kp79-top) - var(--kp79-control) - 36px)!important;
 box-sizing:border-box!important;
}
html[data-brand61] body :is(.kp-contact-dock,.kp-contact-dock-v17) {
 right:var(--kp79-edge)!important; bottom:var(--kp79-edge)!important; gap:12px!important;
}
html[data-brand61] body :is(.kp-round-button,.kp-round-button-v17,.kp-function-toggle,.kp-function-toggle-v17,.immo-function-toggle) {
 width:var(--kp79-control)!important; min-width:var(--kp79-control)!important;
 height:var(--kp79-control)!important; min-height:var(--kp79-control)!important;
 padding:0!important; border-radius:8px!important; box-sizing:border-box!important;
}
html[data-brand61] body :is(.kp-round-button,.kp-round-button-v17,.immo-round-button) svg { width:28px!important; height:28px!important; }
html[data-brand61] body :is(.kp-up,.kp-up-v17) { order:0!important; }
html[data-brand61] body :is(.kp-whatsapp,.kp-whatsapp-v17) { order:1!important; }
html[data-brand61] body :is(.kp-whatsapp-card,.kp-whatsapp-card-v17) { bottom:calc(var(--kp79-control) + 16px)!important; }
html[data-brand61="ii"][data-ii-ui75] body a.ii75-action { font-size:15px; padding:10px 16px; }
html[data-brand61="ii"][data-ii-ui75] body .immo-round-button svg { width:28px!important; height:28px!important; }
html[data-brand61="ii"][data-ii-ui75] body section.hero#start .hero-bar.kp-header61 .kp-toggle61::before { width:26px!important; height:2.5px!important; box-shadow:0 -7px 0 #fff,0 7px 0 #fff; }
html[data-brand61="ii"][data-ii-ui75] body section.hero#start .hero-bar.kp-header61 .kp-toggle61[aria-expanded="true"]::before,
html[data-brand61="ii"][data-ii-ui75] body section.hero#start .hero-bar.kp-header61 .kp-toggle61[aria-expanded="true"]::after,
html[data-brand61="ii"][data-ii-ui75] body .menu-backdrop .menu-head button[aria-label="Menü schließen"]::before,
html[data-brand61="ii"][data-ii-ui75] body .menu-backdrop .menu-head button[aria-label="Menü schließen"]::after { width:26px!important; height:2.5px!important; }
html[data-brand61="ii"][data-ii-ui75] body a.ii75-action[href="#reservierung"] {
 background:linear-gradient(135deg,#126886,#063e61); border-color:#b3dae8; text-shadow:1px 1px 2px #0008;
}
html[data-brand61="ii"][data-ii-ui75] body a.ii75-action[href="#finanzierung"] {
 background:linear-gradient(135deg,#10a9c0,#08728c); border-color:#b8f2f6; text-shadow:1px 1px 2px #0008;
}
@media(min-width:768px) {
 html[data-brand61] body :is(.kp-function-dock,.kp-function-dock-v17) { top:clamp(132px,18vh,170px)!important; left:0!important; bottom:auto!important; }
 html[data-brand61] body :is(.kp-function-links,.kp-function-links-v17) { gap:10px!important; }
 html[data-brand61] body :is(.kp-function-links,.kp-function-links-v17) a {
  width:var(--kp79-control)!important; min-width:var(--kp79-control)!important;
  height:var(--kp79-control)!important; min-height:var(--kp79-control)!important;
  grid-template-columns:var(--kp79-control) 174px!important; border-radius:0 8px 8px 0!important; padding:0!important;
 }
 html[data-brand61] body :is(.kp-function-links,.kp-function-links-v17) a:is(:hover,:focus-visible) { width:230px!important; }
 html[data-brand61] body :is(.kp-function-links,.kp-function-links-v17) a>span,
 html[data-brand61] body :is(.kp-function-icon,.kp-function-icon-v17) { width:var(--kp79-control)!important; height:var(--kp79-control)!important; flex-basis:var(--kp79-control)!important; }
 html[data-brand61] body :is(.kp-function-icon,.kp-function-icon-v17) svg { width:28px!important; height:28px!important; }
 html[data-brand61] body :is(.kp-function-label,.kp-function-label-v17) { font-size:15px!important; }
 html[data-brand61="ii"][data-ii-ui75] body .immo-function-dock { top:clamp(132px,18vh,170px)!important; }
 html[data-brand61="ii"][data-ii-ui75] body .immo-function-links a:is(:hover,:focus-visible) { width:230px!important; }
 html[data-brand61="ii"][data-ii-ui75] body .immo-function-links a b { font-size:15px!important; }
}
@media(min-width:1181px) {
 html[data-brand61]:not([data-brand61="ii"]) body section.hero .kp-header61 :is(nav[aria-label="Hauptnavigation"],.desktop-nav,.header-service-links),
 html[data-brand61]:not([data-brand61="ii"]) body section.hero .kp-header61>.button,
 html[data-brand61]:not([data-brand61="ii"]) body section.hero .kp-header61 .header-inner>.button { margin-right:70px!important; }
 html[data-brand61]:not([data-brand61="ii"]) body section.hero .kp-header61 :is(.header-cta,.header-service-links>a),
 html[data-brand61]:not([data-brand61="ii"]) body section.hero .kp-header61>.button,
 html[data-brand61]:not([data-brand61="ii"]) body section.hero .kp-header61 .header-inner>.button {
  min-height:56px!important; padding:10px 16px!important; font-size:15px!important; box-sizing:border-box!important;
  display:inline-flex!important; align-items:center!important; justify-content:center!important;
 }
}
/* All five women sources share alpha bounds y154..3643 / 3840, and the
   registered Stefan artwork y155..3648 / 3840. Match OV's rendered desktop
   canvas ratio 102/105.6 without any image distortion. The common 0.05104
   shoe anchor retains OV's ~1px visible shoe-depth difference at 720px. */
@media(min-width:1101px) {
 html[data-brand61] body section.hero.kp-full-header .kp-full-scene .kp-full-portraits img.kp-full-woman {
  height:calc(var(--kp-person-h)*.9659090909)!important;
  bottom:calc(10px - var(--kp-person-h)*.9659090909*.05104)!important;
 }
 html[data-brand61="ii"][data-ii-ui75] body section.hero#start .people .person-ludmilla img {
  height:calc(var(--ii-depth-person)*.9659090909)!important;
  bottom:calc(16px - var(--ii-depth-person)*.9659090909*.05104)!important;
 }
}
@media(max-width:767px) {
 html[data-brand61] { --kp79-control:48px; --kp79-edge:12px; --kp79-top:14px; }
 html[data-brand61="ii"][data-ii-ui75] { --ii75-control:48px; }
 html[data-brand61] body :is(.kp-function-links,.kp-function-links-v17,.immo-function-links) a { height:48px!important; min-height:48px!important; }
 html[data-brand61] body :is(.kp-function-links,.kp-function-links-v17,.immo-function-links) a>span,
 html[data-brand61] body :is(.kp-function-icon,.kp-function-icon-v17) { width:48px!important; height:48px!important; flex-basis:48px!important; }
 html[data-brand61] body section.hero .kp-header61 :is(.mobile-navigation,.kp-menu61-panel):not([hidden]),
 html[data-brand61] body section.hero .kp-header61.aa33-nav-open>nav[aria-label="Hauptnavigation"] { grid-template-columns:1fr!important; }
}
/* One native logo scale (font 180, white contour 19, canvas height 350).
   Native widths differ; applying a common CSS width would enlarge short names.
   These rules survive the existing static/animated image source switches. */
html[data-brand61] {
 --kp79-ov-header-logo-width:min(calc(100vw - 2*var(--kp79-edge) - var(--kp79-control) - 12px),calc(clamp(92px,7.64vw,110px)*6.8093));
 --kp79-ov-footer-logo-width:min(450px,calc(100vw - 2*var(--kp79-edge)));
}
html[data-brand61="ii"] { --kp79-logo-ratio:.878072763; }
html[data-brand61="aa"] { --kp79-logo-ratio:.796951819; }
html[data-brand61="ks"] { --kp79-logo-ratio:.890363815; }
html[data-brand61="kj"] { --kp79-logo-ratio:.646017699; }
html[data-brand61] body .kp-header61,
html[data-brand61] body .kp-header61>.header-inner,
html[data-brand61] body section.hero .kp-header61,
html[data-brand61] body section.hero .kp-header61>.header-inner { padding-inline:var(--kp79-edge)!important; }
html[data-brand61] body .kp-header61:has(>.header-inner),
html[data-brand61] body section.hero .kp-header61:has(>.header-inner) { padding-inline:0!important; }
html[data-brand61] body .kp-header61 .kp-logo61-free,
html[data-brand61] body section.hero .kp-header61 .kp-logo61-free,
html[data-brand61="ii"][data-ii-ui75] body section.hero#start .hero-bar.kp-header61 .kp-logo61-free {
 width:calc(var(--kp79-ov-header-logo-width)*var(--kp79-logo-ratio))!important;
 max-width:none!important; min-width:0!important; height:auto!important; justify-self:start!important;
}
html[data-brand61] body .kp-header61 .kp-logo61-free img,
html[data-brand61] body section.hero .kp-header61 .kp-logo61-free img,
html[data-brand61] body :is(.kp-footer-logo-approved,.footer-brand-tile) img {
 width:100%!important; max-width:none!important; height:auto!important; max-height:none!important;
 aspect-ratio:auto!important; object-fit:contain!important;
}
html[data-brand61] body :is(.kp-footer-logo-approved,.footer-brand-tile),
html[data-brand61] body footer .footer-inner>img.kp-logo61-free,
html[data-brand61] body footer .footer-brand>img[data-kp-logo45] {
 width:calc(var(--kp79-ov-footer-logo-width)*var(--kp79-logo-ratio))!important;
 max-width:100%!important; height:auto!important; max-height:none!important; aspect-ratio:auto!important;
}
html[data-brand61] body .kp-booking-head a>img {
 width:calc(min(350px,56vw)*var(--kp79-logo-ratio))!important;
 height:auto!important; max-height:none!important; object-fit:contain!important;
}
html[data-brand61="ii"] body .legal-site-header>.legal-logo {
 width:calc(min(350px,48vw)*var(--kp79-logo-ratio))!important;
}
html[data-brand61="ii"] body .legal-site-header>.legal-logo img {
 width:100%!important; height:auto!important; max-height:none!important; aspect-ratio:auto!important; object-fit:contain!important;
}
html[data-brand61="ii"] body .cookie-notice .cookie-brand img {
 width:calc(132px*var(--kp79-logo-ratio))!important;
 height:auto!important; max-height:none!important; aspect-ratio:auto!important; object-fit:contain!important;
}
@media(max-width:760px) {
 html[data-brand61] body .kp-booking-head a>img { width:calc(min(245px,63vw)*var(--kp79-logo-ratio))!important; }
}
@media(min-width:768px) and (max-width:1279px) {
 /* The OV second row keeps the shared logo scale clear of the priority CTA. */
 html[data-brand61="ii"][data-ii-ui75] body section.hero#start .hero-bar.kp-header61 { grid-template-columns:minmax(0,1fr) var(--ii75-control)!important; }
 html[data-brand61="ii"][data-ii-ui75] body .hero-bar .ii75-actions { grid-column:1/3!important; grid-row:2!important; justify-self:end!important; }
}
@media(max-width:767px) {
 html[data-brand61] { --kp79-ov-header-logo-width:min(620px,calc(100vw - 2*var(--kp79-edge) - var(--kp79-control) - 12px)); }
}

/* /performance80/logo80-cd49e68ad8.css */
/* Native v62 artwork remains unchanged. These contexts retained legacy tile surfaces. */
html[data-brand61] body footer :is(.kp-footer-logo-approved,.footer-brand-tile),
html[data-brand61] body footer .footer-brand .kp-logo-tile-approved,
html[data-brand61] body footer :is(.footer-inner,.footer-brand)>img[src*="/brand/logos-v62/"],
html[data-brand61] body footer :is(.kp-footer-logo-approved,.footer-brand-tile,.footer-brand) img[src*="/brand/logos-v62/"],
html[data-brand61] body .menu-backdrop .menu-head>img[src*="/brand/logos-v62/"] {
  background:transparent!important; border:0!important; padding:0!important;
  border-radius:0!important; box-shadow:none!important; height:auto!important;
  max-height:none!important; aspect-ratio:auto!important; object-fit:contain!important;
}
html[data-brand61] body footer :is(.kp-footer-logo-approved,.footer-brand-tile),
html[data-brand61] body footer .footer-brand .kp-logo-tile-approved {
  overflow:visible!important;
}
html[data-brand61] body footer :is(.kp-footer-logo-approved,.footer-brand-tile)::before,
html[data-brand61] body footer :is(.kp-footer-logo-approved,.footer-brand-tile)::after,
html[data-brand61] body footer .footer-brand .kp-logo-tile-approved::before,
html[data-brand61] body footer .footer-brand .kp-logo-tile-approved::after {
  content:none!important;
}
/* Every brand uses its native width relative to the common OV glyph height. */
html[data-brand61] body footer :is(.footer-inner,.footer-brand)>img[src*="/brand/logos-v62/"],
html[data-brand61] body footer .footer-brand .kp-logo-tile-approved {
  width:calc(var(--kp79-ov-footer-logo-width)*var(--kp79-logo-ratio))!important;
  max-width:100%!important;
}
html[data-brand61] body .menu-backdrop .menu-head>img[src*="/brand/logos-v62/"] {
  width:calc(min(350px,70vw)*var(--kp79-logo-ratio))!important;
  max-width:100%!important;
}

/* /photo-addon88.css */
.kp-booking-page > .kp-photo-addon88 {
  --kp-photo-accent: #159eb8;
  --kp-photo-accent-rgb: 21, 158, 184;
  --kp-photo-media-max: 360px;
  width: min(1040px, calc(100% - 32px));
  margin: 0 auto 40px;
}

html[data-brand61="aa"] .kp-photo-addon88 {
  --kp-photo-accent: #18a978;
  --kp-photo-accent-rgb: 24, 169, 120;
}

html[data-brand61="ii"] .kp-photo-addon88 {
  --kp-photo-accent: #ed8b00;
  --kp-photo-accent-rgb: 237, 139, 0;
}

html[data-brand61="kj"] .kp-photo-addon88 {
  --kp-photo-accent: #e74c61;
  --kp-photo-accent-rgb: 231, 76, 97;
  --kp-photo-media-max: 480px;
}

.kp-photo-addon88__card {
  display: grid;
  grid-template-columns: minmax(0, var(--kp-photo-media-max)) minmax(0, 1fr);
  align-items: center;
  gap: clamp(24px, 4vw, 52px);
  padding: clamp(16px, 2.4vw, 28px);
  border: 1px solid rgba(var(--kp-photo-accent-rgb), .24);
  border-radius: 28px;
  background: rgba(255, 255, 255, .96);
  box-shadow: 0 22px 64px rgba(5, 43, 73, .11);
}

.kp-photo-addon88__media {
  display: block;
  width: 100%;
  overflow: hidden;
  border-radius: 20px;
  background: #eef4f6;
}

.kp-photo-addon88__media img {
  display: block;
  width: 100%;
  height: auto;
}

.kp-photo-addon88__eyebrow {
  margin: 0 0 8px;
  color: var(--kp-photo-accent);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.kp-photo-addon88__copy {
  min-width: 0;
}

.kp-photo-addon88__copy h2 {
  margin: 0;
  color: #052b49;
  font-size: clamp(1.5rem, 2.8vw, 2.5rem);
  line-height: 1.1;
  overflow-wrap: anywhere;
}

.kp-photo-addon88__copy p:last-child {
  margin: 14px 0 0;
  color: #4c6572;
  font-size: 1rem;
  line-height: 1.7;
  overflow-wrap: anywhere;
}

@media (max-width: 760px) {
  .kp-booking-page > .kp-photo-addon88 {
    width: min(100% - 18px, 1040px);
    margin-bottom: 28px;
  }

  .kp-photo-addon88__card {
    grid-template-columns: 1fr;
    gap: 22px;
    padding: 14px;
    border-radius: 20px;
  }

  .kp-photo-addon88__media {
    max-width: var(--kp-photo-media-max);
    margin-inline: auto;
  }

  .kp-photo-addon88__copy {
    padding: 0 6px 8px;
  }
}

@media (forced-colors: active) {
  .kp-photo-addon88__card {
    border: 1px solid CanvasText;
    box-shadow: none;
  }
}
