/* Heista – zentrale Overrides der Website.
   Apple-Design-Paket (P1+P2): Motion-Tokens, Press-Feedback, Reduced-Motion-Baseline,
   Transparenz-/Kontrast-Fallbacks, FAQ-Glättung, Modal-Materialisierung. */

/* ── Motion-Tokens (B5) ─────────────────────────────────────────────── */
:root{
  --t-press:120ms;
  --t-hover:200ms;
  --t-state:320ms;
  --t-scene:480ms;
  --ease-out:cubic-bezier(.22,.61,.36,1);
  --ease-inout:cubic-bezier(.65,0,.2,1);
}




/* ── B1: Einheitliches Press-Feedback ───────────────────────────────────
   Apple: Feedback auf Pointer-down, instant; Sink beim Druck.
   :active nach den Hover-Regeln der Seiten laden → gewinnt die Kaskade. */
.main-nav a.button:active,
.hc-nav-cta:active,
.hc-nav-links>a:active,
.hc-sys-btn:active,
.w-button:active,
.hc-ftr-social a:active,
#hc-vwatch:active,
#hc-vctrl button:active,
#hc-modal .hc-mclose:active,
.hc-po-qa summary:active,
.hc-cm-btn:active{
  transform:scale(.97)!important;
  transition:transform var(--t-press) ease-out!important;
}
.main-nav .nav_link:active{opacity:.6;transition:opacity var(--t-press) ease-out}
/* .w-button hat im Bundle weder Hover noch Transition – Basis nachrüsten */
.w-button{transition:transform var(--t-hover) var(--ease-out),background-color var(--t-hover) ease}
.w-button:hover{transform:translateY(-1px)}

/* ── B3: FAQ-<details> gleiten statt springen ───────────────────────────
   Moderner Pfad (Chrome 131+/Safari 18.2+): interpolate-size + ::details-content.
   Browser ohne Support ignorieren die Regeln → heutiges Verhalten (Sprung). */
:root{interpolate-size:allow-keywords}
.hc-po-qa::details-content{
  block-size:0;overflow:hidden;
  transition:block-size var(--t-state) var(--ease-out),content-visibility var(--t-state) allow-discrete;
}
.hc-po-qa[open]::details-content{block-size:auto}

/* ── B2: Modal-/Overlay-Materialisierung ────────────────────────────────
   Enter/Exit symmetrisch: opacity + leichtes Scale. Klassen-Pattern .open/.on
   bleibt; display bleibt (Zugänglichkeit), Übergang läuft über opacity/visibility. */
#hc-modal,.hc-tb-ov{
  display:flex!important;
  visibility:hidden;opacity:0;pointer-events:none;
  transition:opacity var(--t-state) var(--ease-out),visibility 0s linear var(--t-state);
}
#hc-modal.open,.hc-tb-ov.on{
  visibility:visible;opacity:1;pointer-events:auto;
  transition:opacity var(--t-state) var(--ease-out);
}
#hc-modal .hc-mbox,.hc-tb-ov .hc-tb-box{
  transform:scale(.98);
  transition:transform var(--t-state) var(--ease-out);
}
#hc-modal.open .hc-mbox,.hc-tb-ov.on .hc-tb-box{transform:scale(1)}
/* Scroll-Lock ohne Layoutsprung */
html{scrollbar-gutter:stable}

/* ── A2: Reduced-Motion-Baseline ────────────────────────────────────────
   Gezielt, kein globales animation:none – Animationen tragen teils Zustand. */
@media (prefers-reduced-motion: reduce){
  /* Endlos-Loops im fixierten Chrome */
  .main-nav a.button,.hc-nav-cta,.hc-nav-cta::after,.hc-cta-ic,
  .hc-neu,.hc-nav-neu,
  .main-nav a.button::before,.main-nav a.button::after{animation:none!important}
  /* Marquees & Ambient-Auren */
  [class*="hc-mq"],.hc-po-aur i,.hc-gr-row,.hc-ref-row{animation:none!important}
  /* Scroll-Cues */
  .hc-cue,.hc-cue .ar,[id*="cue"],[class*="-cue"]{animation:none!important}
  /* Reveals sichtbar statt versteckt */
  .hc-po-rv{opacity:1!important;transform:none!important;transition:none!important}
  /* Modale/Overlays: nur Fade, kein Scale */
  #hc-modal .hc-mbox,.hc-tb-ov .hc-tb-box{transform:none!important;transition:none!important}
  #hc-modal,.hc-tb-ov{transition:opacity 150ms ease,visibility 0s linear 150ms}
  #hc-modal.open,.hc-tb-ov.on{transition:opacity 150ms ease}
  /* FAQ: springen statt gleiten */
  .hc-po-qa::details-content{transition:none}
  /* Press-Feedback bleibt (nicht-vestibulär), aber ohne Bewegung ginge Feedback verloren –
     Scale .97 ist klein und lokal; belassen. Hover-Lifts neutralisieren: */
  .w-button:hover{transform:none}
}

/* ── A3: Transparenz- und Kontrast-Fallbacks ───────────────────────────── */
@media (prefers-reduced-transparency: reduce){
  .main-nav,.hc-nav,#hc-mnav{background:#fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
  #hc-vctrl,#hc-vwatch,#hc-modal .hc-mclose{background:rgba(10,16,28,.96)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
  #hc-modal{background:rgba(4,8,16,.97)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
  .hc-tb-ov{background:rgba(8,16,34,.97)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
  .hc-po-anav .hc-sys-btn.sec{background:#fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
  .sa-top{background:#fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
  .hc-jxh .hc-sys-btn{background:rgba(20,28,42,.95)!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
}
@media (prefers-contrast: more){
  .main-nav,.hc-nav,#hc-mnav{background:#fff!important;border:1px solid #1d1d1f!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
  .hc-sys-btn.sec,.hc-po-anav .hc-sys-btn.sec{background:#fff!important;border:1px solid #1d1d1f!important}
  #hc-vwatch,#hc-vctrl{background:#0a101c!important;border:1px solid #fff!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
}

/* ── Paket C: Mobile Navigation (Burger + Sheet) ───────────────────────── */
.hc-mnav-btn{display:none;position:relative;width:40px;height:40px;border:0;border-radius:50%;
  background:transparent;cursor:pointer;padding:0;flex:0 0 auto;
  transition:background var(--t-hover) ease}
.hc-mnav-btn:hover{background:rgba(0,100,178,.08)}
.hc-mnav-btn:active{transform:scale(.94);transition:transform var(--t-press) ease-out}
.hc-mnav-btn span{position:absolute;left:10px;right:10px;height:2px;border-radius:2px;background:#1d1d1f;
  transition:transform var(--t-state) var(--ease-out),opacity var(--t-hover) ease}
.hc-mnav-btn span:nth-child(1){top:13px}
.hc-mnav-btn span:nth-child(2){top:19px}
.hc-mnav-btn span:nth-child(3){top:25px}
.hc-mnav-btn.open span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.hc-mnav-btn.open span:nth-child(2){opacity:0}
.hc-mnav-btn.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
@media (max-width:860px){.hc-mnav-btn{display:block}}

#hc-mnav{position:fixed;top:84px;left:12px;right:12px;z-index:8999;
  display:flex;flex-direction:column;gap:2px;padding:10px;
  border-radius:24px;background:rgba(255,255,255,.85);
  -webkit-backdrop-filter:saturate(1.5) blur(20px);backdrop-filter:saturate(1.5) blur(20px);
  border:1px solid rgba(255,255,255,.6);box-shadow:0 24px 60px -20px rgba(8,16,34,.4);
  transform-origin:top center;transform:scale(.96) translateY(-8px);
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity var(--t-state) var(--ease-out),transform var(--t-state) var(--ease-out),
             visibility 0s linear var(--t-state);
  font-family:'Inter Tight',sans-serif}
#hc-mnav.open{opacity:1;visibility:visible;pointer-events:auto;transform:scale(1) translateY(0);
  transition:opacity var(--t-state) var(--ease-out),transform var(--t-state) var(--ease-out)}
@media (min-width:861px){#hc-mnav{display:none}}
#hc-mnav .hc-mnav-l{display:flex;align-items:center;min-height:48px;padding:0 16px;border-radius:14px;
  color:#1d1d1f;font-size:17px;font-weight:500;text-decoration:none;
  transition:background var(--t-hover) ease}
#hc-mnav .hc-mnav-l:hover{background:rgba(0,100,178,.07)}
#hc-mnav .hc-mnav-l:active{background:rgba(0,100,178,.12);transform:scale(.98);
  transition:transform var(--t-press) ease-out}
#hc-mnav .hc-mnav-l .hc-nav-neu{margin-left:8px;font-family:'JetBrains Mono',monospace;font-size:9px;
  font-weight:600;letter-spacing:.06em;text-transform:uppercase;background:#FFA000;color:#fff;
  padding:2px 6px;border-radius:999px;line-height:1.25}
#hc-mnav .hc-mnav-cta{display:flex;align-items:center;justify-content:center;min-height:48px;
  margin-top:6px;border-radius:16px;background:#0064B2;color:#fff;font-size:17px;font-weight:600;
  text-decoration:none;transition:background var(--t-hover) ease}
#hc-mnav .hc-mnav-cta:active{transform:scale(.98);transition:transform var(--t-press) ease-out}
@media (prefers-reduced-motion: reduce){
  #hc-mnav{transform:none;transition:opacity 150ms ease,visibility 0s linear 150ms}
  #hc-mnav.open{transform:none;transition:opacity 150ms ease}
  .hc-mnav-btn span{transition:none}
}
@media (prefers-reduced-transparency: reduce){
  #hc-mnav{background:#fff;-webkit-backdrop-filter:none;backdrop-filter:none}
}

/* ── Paket D: Kontaktformular im Kontaktbereich ────────────────────────── */
.hc-ct-form[hidden]{display:none}
.hc-ct-form{display:grid;gap:10px;margin-top:16px;max-width:560px;
  opacity:0;transform:translateY(-6px);
  transition:opacity var(--t-state) var(--ease-out),transform var(--t-state) var(--ease-out)}
.hc-ct-form.open{opacity:1;transform:none}
.hc-ct-form .row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:560px){.hc-ct-form .row{grid-template-columns:1fr}}
.hc-ct-form input,.hc-ct-form textarea{
  font-family:'Inter Tight',sans-serif;font-size:15px;color:#1d1d1f;
  background:rgba(255,255,255,.92);border:1px solid rgba(8,16,34,.14);border-radius:12px;
  padding:12px 14px;width:100%;box-sizing:border-box;resize:vertical;
  transition:border-color var(--t-hover) ease,box-shadow var(--t-hover) ease}
.hc-ct-form input:focus,.hc-ct-form textarea:focus{
  outline:none;border-color:#0064B2;box-shadow:0 0 0 3px rgba(0,100,178,.18)}
.hc-ct-form .foot{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.hc-ct-send{font-family:'Inter Tight',sans-serif;font-weight:600;font-size:15px;color:#fff;
  background:#0064B2;border:0;border-radius:999px;padding:12px 26px;cursor:pointer;
  transition:transform var(--t-hover) var(--ease-out),background var(--t-hover) ease}
.hc-ct-send:hover{transform:translateY(-1px);background:#0a72c4}
.hc-ct-send:active{transform:scale(.97);transition:transform var(--t-press) ease-out}
.hc-ct-send:disabled{opacity:.55;cursor:default;transform:none}
.hc-ct-note{font-size:13.5px;color:#5b5f66}
@media (prefers-reduced-motion: reduce){
  .hc-ct-form{transform:none;transition:opacity 150ms ease}
}

/* ══ P3: Typografie-Feinschliff ═════════════════════════════════════════ */
/* Größenspezifisches Tracking für die Heading-Tokens (waren alle -.01em,
   ein Wert von 128px bis 16px). Große Grade enger, kleine neutral. */
:root{
  --ai-gen-82921b10-4b39-48f0-b346-808cf4903d29-1757922515771_typography---h0-heading--h0-letter-spacing:-.025em;
  --ai-gen-82921b10-4b39-48f0-b346-808cf4903d29-1757922515771_typography---h1-heading--h1-letter-spacing:-.02em;
  --ai-gen-82921b10-4b39-48f0-b346-808cf4903d29-1757922515771_typography---h2-heading--h2-letter-spacing:-.015em;
  --ai-gen-82921b10-4b39-48f0-b346-808cf4903d29-1757922515771_typography---base-typography--base-line-height:1.6; /* war 1.6rem absolut – skaliert jetzt mit */
}
/* Display-Texte, die bisher ohne negatives Tracking liefen */
.hc-gr-score{letter-spacing:-.02em}
.hc-sp-h1{letter-spacing:-.02em}
.hc-tm-h{letter-spacing:-.02em}
.hc-tm-avph span{letter-spacing:-.02em}
.sa-char{letter-spacing:-.02em}
.hc-po-svc-vis .wm,.hc-ac-svc .wm,.wm{letter-spacing:-.03em} /* 120–210px Watermarks */
/* Mono-Eyebrows: ein Tracking-Token statt 10 px/em-Varianten (Design-Mitte .16em) */
:root{--track-eyebrow:.16em}
.hc-eyebrow,.hc-sys-eb,.hc-ct-eyebrow,.hc-sv-eb,.hc-pk-eb,.hc-gr-eb,.hc-foe-eb,
.hc-au-eyebrow,.sa-eyebrow,.sa-pin-eyebrow,.eb2,.hc-as-badge{
  letter-spacing:var(--track-eyebrow)!important}
/* Body-Leading-Minima (mehrzeilige Lauftexte; kompakte Einzeiler bewusst nicht) */
.hc-gr-name.hc-gr-name{line-height:1.4}
.hc-tm-rrber{line-height:1.35}
.hc-tm-rrtime{line-height:1.35}
.hb-emp-name{line-height:1.3}

/* ══ P3: Material-Konsolidierung ════════════════════════════════════════ */
/* Drei Materialrollen statt sieben Blur-Stufen; saturate hält Farben unter Glas lebendig. */
:root{--blur-control:10px;--blur-chrome:18px;--blur-overlay:6px;--mat-sat:saturate(1.5)}
#hc-vctrl,#hc-vwatch{
  -webkit-backdrop-filter:var(--mat-sat) blur(var(--blur-control))!important;
  backdrop-filter:var(--mat-sat) blur(var(--blur-control))!important}
.sa-top{
  -webkit-backdrop-filter:var(--mat-sat) blur(var(--blur-chrome))!important;
  backdrop-filter:var(--mat-sat) blur(var(--blur-chrome))!important;
  border-bottom:0!important} /* Hairline → weiche Kante (unten) */
.sa-top::after{content:'';position:absolute;left:0;right:0;top:100%;height:14px;pointer-events:none;
  background:linear-gradient(180deg,rgba(8,16,34,.06),transparent)}
#hc-modal,.hc-tb-ov{
  -webkit-backdrop-filter:blur(var(--blur-overlay))!important;
  backdrop-filter:blur(var(--blur-overlay))!important}
/* Doppel-Blur: Close-Button liegt bereits auf geblurrtem Overlay */
#hc-modal .hc-mclose{
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important;
  background:rgba(10,16,28,.72)!important}
/* No-op-Blur: Hero-Anker-Buttons stehen auf weißem Grund – reine Renderkosten */
.hc-sys-hero .hc-po-anav .hc-sys-btn.sec{
  -webkit-backdrop-filter:none!important;backdrop-filter:none!important}

/* ══ P4: Feder-Easing für momentum-artige Flächen ═══════════════════════ */
/* linear()-Approximation einer leicht unterdämpften Feder (~4% Overshoot).
   Nur für Sheet/Aufklapp-Flächen (Drawer-Charakter, Apple damping ≈0.8);
   Modale bleiben kritisch gedämpft (--ease-out) – kein Momentum, kein Overshoot. */
:root{--ease-spring:linear(0,.062 6%,.229 12.4%,.472 19.6%,.717 27.2%,.905 35.2%,
  1.021 43.6%,1.062 52.4%,1.048 61.6%,1.015 71.6%,.998 82%,.999 91.2%,1)}
#hc-mnav{transition:opacity var(--t-state) var(--ease-out),
  transform 420ms var(--ease-spring),visibility 0s linear var(--t-state)}
#hc-mnav.open{transition:opacity var(--t-state) var(--ease-out),transform 420ms var(--ease-spring)}
.hc-ct-form{transition:opacity var(--t-state) var(--ease-out),transform 420ms var(--ease-spring)}
@media (prefers-reduced-motion: reduce){
  #hc-mnav,#hc-mnav.open,.hc-ct-form{transition:opacity 150ms ease}
}


/* Systemseiten-Kontakt-Headline: '<System>-Projekt' bleibt in einer Zeile */
.hc-ct-h2 .nw{white-space:nowrap}

/* Kontaktbereich: Abstände zentral (Markup kommt aus heista-contact-footer) */
/* Kontakt-Zitat: haengendes Anfuehrungszeichen + klassische Zuschreibung */
.hc-ct-quote{position:relative}
/* Kontakt-Panel: ruhiger vertikaler Rhythmus */
.hc-ct-sec .hc-ct-eyebrow{margin:0 0 26px}
.hc-ct-qmark{display:block;width:clamp(32px,3vw,40px);height:auto;fill:rgba(0,100,178,.22);margin:0 0 12px}
.hc-ct-quote .hc-ct-h2{margin:0 0 36px}
.hc-ct-attr{margin:0 0 36px}
.hc-ct-sign{display:block;height:64px;width:auto;margin:0 0 10px}
svg.hc-ct-sign{width:160px;height:64px}
.hc-ct-sign.pre .sp{stroke-dasharray:1 3;stroke-dashoffset:1.01;visibility:hidden}
.hc-ct-sign.go .sp{animation:hcSigDraw var(--d) ease-out var(--dl) forwards,hcSigShow 1ms linear var(--dl) forwards}
@keyframes hcSigShow{to{visibility:visible}}
@keyframes hcSigDraw{to{stroke-dashoffset:0}}
.hc-ct-attr.hc-sig-wait .hc-ct-attr-role{opacity:0;transform:translateY(6px);transition:opacity .45s ease,transform .45s ease}
.hc-ct-attr.hc-sig-wait.sig-done .hc-ct-attr-role{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.hc-ct-attr .hc-ct-attr-role{opacity:1!important;transform:none!important}}
.hc-ct-attr-role{display:block;font-size:11px;font-weight:500;letter-spacing:var(--track-eyebrow,.16em);text-transform:uppercase;color:rgba(17,21,28,.55);white-space:nowrap}
@media (max-width:860px){.hc-ct-qmark{width:32px;margin:0 auto 12px}.hc-ct-sign{margin:0 auto 10px}}

/* ==== 1.8.0: Mobile-Fixes Kontakt-Finale / FAB / Footer (Audit 2026-08-18) ==== */
/* Kontakt-Finale <=720px: Stapel-Layout statt Ueberlagerung (Panel oben, Freisteller darunter);
   !important neutralisiert die Desktop-Scrub-Inline-Styles des contact-footer-Scripts */
@media(max-width:720px){
.hc-ct-sec{height:auto!important}
.hc-ct-stage{position:static!important;height:auto!important;padding:clamp(56px,9vh,84px) 0 0!important;overflow:hidden;display:flex;flex-direction:column}
.hc-ct-panel{order:1}
.hc-ct-figure{order:2}
.hc-ct-panel{position:static!important;transform:none!important;width:auto!important;padding:0 7vw!important;text-align:center}
.hc-ct-figure{position:relative!important;left:auto!important;right:auto!important;transform:none!important;margin:30px auto 0!important;width:min(86vw,420px)!important;height:auto!important;bottom:auto!important}
.hc-ct-photo{position:relative!important;left:auto!important;bottom:auto!important;transform:none!important;opacity:1!important;width:100%!important}
.hc-ct-logo{height:auto!important;width:94%!important;bottom:8%!important}
}
/* Cookie-FAB mobil kleiner und buendiger in der Ecke */
@media(max-width:860px){
button.hc-cc-fab{width:40px!important;height:40px!important;left:12px!important;bottom:12px!important}
}
/* Footer: Seitenende-Freiraum fuer den FAB (verdeckt sonst dauerhaft die Rechtslinks) */
@media(max-width:1100px){
.hc-ftr .hc-ftr-bottom{padding-bottom:72px}
}
/* Footer-Links mit Icon: haengender Einzug bei Zeilenumbruch */
.hc-ftr-col a:has(.fic){position:relative;padding-left:23px}
.hc-ftr-col a:has(.fic) .fic{position:absolute;left:0;top:1px;margin-right:0}


/* === UX-Audit 2026-08: Punkte 01, 05, 06 === */
a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid #0064B2!important;outline-offset:3px!important;box-shadow:0 0 0 6px rgba(255,255,255,.65)!important;border-radius:8px}
.hc-nav .hc-nav-links a{position:relative}
.hc-nav .hc-nav-links a::before{content:"";position:absolute;top:-12px;bottom:-12px;left:-8px;right:-8px}
.hc-ct-btn .sub{font-size:12px!important}
.hc-ct-attr-role{font-size:12px!important}


/* === CI-Akzente Orange + Angleichungen (Vorgabe 2026-08-29) === */
.hc-pk-h2 .ac,.hc-gr-h2 .ac,.hc-ct-h2 .ac{color:#0064B2!important}
.hc-au-360 .htitle h3 .ac{color:#FFA000!important}
#hc-saas h2 .ac{color:#0064B2!important}
.hc-foe-eb{background:#0064B2!important}

/* Hero-Kontakt-CTA: gleiche Pill-Geometrie wie die sec-Sprungmarken (P1/Xentral),
   aber CI-blau mit weissem Icon-Kreis; Hover orange wie die uebrigen CTAs. */
.hc-sys-cta .hc-sys-btn.sec.cta{background:#0064B2!important;border:1px solid #0064B2!important;color:#fff!important;box-shadow:0 12px 26px -16px rgba(0,100,178,.65)}
.hc-sys-cta .hc-sys-btn.sec.cta .ico{background:#fff!important}
.hc-sys-cta .hc-sys-btn.sec.cta .ico svg{stroke:#0064B2!important}
.hc-sys-cta .hc-sys-btn.sec.cta:hover{background:#FFA000!important;border-color:#FFA000!important;color:#fff!important}
.hc-sys-cta .hc-sys-btn.sec.cta:hover .ico{background:#fff!important}
.hc-sys-cta .hc-sys-btn.sec.cta:hover .ico svg{stroke:#FFA000!important}

/* Footer: Systempartner-Logos einfarbig (wie Hero) */
.hc-ftr-sys a img{height:18px;display:block;filter:brightness(0) invert(1);opacity:.88;transition:opacity .2s}
@media(max-width:860px){
.hc-ftr-brand{flex-direction:column!important;align-items:center!important;gap:6px!important;text-align:center!important}
.hc-ftr-brand .hc-ftr-logo{margin:0 auto!important}
.hc-ftr-claim{margin:4px 0 0!important;text-align:center!important}
.hc-ftr-social{margin:8px 0 0!important;justify-content:center!important}
.hc-ftr-col{justify-content:center!important;text-align:center!important;margin:34px 0 0!important;gap:26px 24px!important}
.hc-ftr-col h4{text-align:center!important;background:rgba(255,255,255,.14)!important;border:1px solid rgba(255,255,255,.28)!important;border-radius:999px!important;padding:8px 18px!important;width:auto!important;margin:0 auto 10px!important;display:inline-block!important}
.hc-ftr-col h4::after{display:none!important}
.hc-ftr-bottom{justify-content:center!important;text-align:center!important}
html body .hc-ftr-in{padding:26px 18px 20px!important}
html body .hc-ftr-grid{display:block!important}
html body .hc-ftr-brand{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:10px 16px!important}
html body .hc-ftr-claim{width:100%;margin:2px 0 0!important;font-size:14px!important}
html body .hc-ftr-social{margin:6px 0 0!important}
html body .hc-ftr-col{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:12px 24px!important;margin:26px 0 0!important}
html body .hc-ftr-col{flex-direction:column!important;align-items:center!important}
html body .hc-ftr-col h4{width:auto!important;margin:0 auto 10px!important}
html body .hc-ftr-col .hc-fcl{display:flex;flex-wrap:wrap;justify-content:center;gap:26px 24px;width:100%}
html body .hc-ftr-col a{display:inline-flex!important;margin:0!important;padding:0!important;font-size:15px!important}
html body .hc-ftr-bottom{margin-top:26px!important;padding-top:16px!important;padding-bottom:28px!important;display:flex!important;flex-wrap:wrap!important;gap:10px 18px!important;font-size:12.5px!important}
html body .hc-ftr-blue .hc-ftr-grid,html body .hc-ftr-grid{border:0!important;border-bottom:0!important}
html body .hc-ftr-col:last-child{border:0!important}
html body .hc-ftr-social{margin:10px 0 0!important;gap:12px!important}
}
.hc-ftr-sys a:hover img{opacity:1}
.hc-ftr-sys a.fjtl{font-weight:700;letter-spacing:.02em;color:#fff!important;font-size:15px}
.hc-ftr-sys a.fjtl::after{display:none!important}

/* Kontakt mobil: alles in einer Bildschirmhoehe, Info-Spalte links neben verkleinertem Foto */
@media(max-width:860px){
.hc-ct-sec{height:auto!important;min-height:0!important;padding-bottom:0!important}
.hc-ct-sec .hc-ct-stage{position:relative!important;display:flex!important;flex-direction:column!important;height:100svh!important;min-height:0!important;justify-content:flex-end!important;padding-bottom:0!important;top:auto!important;left:auto!important;transform:none!important}
.hc-ct-sec .hc-ct-panel{margin:58px 0 0!important;padding-top:0!important}
.hc-ct-figure{margin-top:auto!important;margin-bottom:0!important}
.hc-ct-panel .hc-ct-qmark{width:34px;height:auto}
.hc-ct-h2{font-size:clamp(24px,7vw,30px)!important;line-height:1.12!important;margin:6px 0 12px!important}
.hc-ct-btns{gap:8px!important}
.hc-ct-btn{padding:10px 14px!important}
.hc-ct-figure{display:flex!important;flex-direction:row!important;align-items:flex-end!important;justify-content:flex-end!important;position:relative;margin-top:4px;margin-right:-18px!important;width:auto!important}
.hc-ct-info{position:relative;z-index:2;width:42%;display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:0 0 76px 16px;margin-right:-12%}
.hc-ct-info .hc-ct-social{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;margin:0 0 34px!important;width:fit-content}
.hc-ct-info .hc-ct-social .lbl{width:100%;text-align:center;font-size:10.5px;letter-spacing:1.6px;margin-bottom:4px}
.hc-ct-info .hc-ct-social a{width:40px;height:40px}
.hc-ct-info .hc-ct-attr{margin:0!important;text-align:left!important}
.hc-ct-info .hc-ct-sign{width:118px;height:auto;display:block}
.hc-ct-figure .hc-ct-photo{width:70%!important;max-width:70%!important;max-height:50vh!important;object-fit:contain!important;object-position:bottom right!important;margin:0!important}
.hc-ct-figure .hc-ct-logo{width:66%!important;left:auto!important;right:0!important;top:auto!important;bottom:4%!important;transform:none!important}
}
@media(max-width:860px){
.hc-ct-info .hc-ct-attr-role{display:block;opacity:1!important;transform:none!important;visibility:visible!important;color:#3c4046!important;font-size:11.5px!important;letter-spacing:1.2px!important;white-space:normal!important;line-height:1.5!important;max-width:100%;margin-top:2px;text-shadow:0 1px 6px rgba(245,245,247,.9)}
.hc-ct-info .hc-ct-sign{filter:drop-shadow(0 1px 5px rgba(245,245,247,.95))}
}

/* Google-Bewertungen (.hc-gr-sec, Laufband via gr_fx) mobil: kompakter Kopf, alles in einer Bildschirmhoehe. Gilt fuer jede Seite mit der Section. */
@media (max-width:860px){
html body .hc-gr-stick{padding:80px 4vw 16px!important;justify-content:flex-start!important}
html body .hc-gr-eb{font-size:10px!important;letter-spacing:1.4px!important;padding:7px 14px!important;margin-bottom:10px!important}
html body .hc-gr-h2{font-size:clamp(25px,7.4vw,33px)!important;margin:0 0 12px!important}
html body .hc-gr-summary{gap:9px!important;padding:9px 14px!important;margin-bottom:10px!important;transform:none!important}
html body .hc-gr-summary .hc-gr-stars{font-size:14px!important;letter-spacing:2px!important}
html body .hc-grx-mq{margin-top:8px!important;gap:12px!important}
html body .hc-grx-set .hc-gr-card{width:228px!important}
html body .hc-grx-set .hc-gr-text{display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden;font-size:12.5px!important;line-height:1.45!important;margin-bottom:10px!important}
}
