/* HM Kontakt & Rückruf 0.1.2: plugin-scoped typography and layouts. */
.hm-kr,
.hm-kr *,
.hm-kr *::before,
.hm-kr *::after { box-sizing:border-box; }
.hm-kr { --hmkr-dark:#005E52;--hmkr-hover:#00A075;--hmkr-text:#222222;--hmkr-outline:#cbded7;--hmkr-light:#f1f7f4;color:var(--hmkr-text)!important;font-family:'Bricolage Grotesque',Arial,sans-serif!important;font-size:1rem!important;line-height:1.52!important;width:100%;background:#fff;border:1px solid #d9e6e0;border-radius:22px;padding:0;margin:0;box-shadow:0 6px 28px rgba(13,67,54,.035); }
.hm-kr[hidden],.hm-kr [hidden] {display:none!important}
.hm-kr .hm-kr-brand-title,.hm-kr h3,.hm-kr p {font-family:inherit!important;letter-spacing:normal!important;text-transform:none!important}
.hm-kr p {font-size:1rem!important;color:var(--hmkr-text)!important;line-height:1.53!important;margin:0}
.hm-kr .hm-kr-brand-title,.hm-kr h3 {color:var(--hmkr-dark)!important;margin:0!important;font-weight:700!important;line-height:1.28!important}
.hm-kr .hm-kr-brand-title {font-size:1.7rem!important}
.hm-kr h3 {font-size:1.4rem!important}
.hm-kr .hm-kr-brand {display:flex;flex-direction:column;align-items:center;gap:8px;padding:22px 20px 20px;border-bottom:1px solid #e4ede9;text-align:center}
.hm-kr .hm-kr-brand img {width:145px;height:auto;max-width:45%;display:block;border-radius:5px;object-fit:contain}
.hm-kr .hm-kr-brand p {font-size:1rem!important}
.hm-kr .hm-kr-body {padding:22px 22px 24px;min-width:0}
.hm-kr .hm-kr-progress {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;font-size:1rem}
.hm-kr .hm-kr-progress strong {font-weight:650}
.hm-kr .hm-kr-progress span {color:#606967;font-size:.875rem}
.hm-kr .hm-kr-progress-bar {display:grid;grid-template-columns:1fr 1fr;gap:5px;margin-bottom:22px}
.hm-kr .hm-kr-progress-bar span {height:5px;border-radius:10px;background:#e0e9e5}
.hm-kr .hm-kr-progress-bar span:first-child,.hm-kr.hm-kr--step2 .hm-kr-progress-bar span {background:#005E52}
.hm-kr [data-hm-step] h3 {margin-bottom:14px!important}
.hm-kr .hm-kr-intro {margin:0 0 16px!important}
.hm-kr .hm-kr-field {margin:0 0 16px;min-width:0}
.hm-kr .hm-kr-field label {display:block;margin:0 0 6px;color:var(--hmkr-text);font-size:1rem!important;line-height:1.35;font-weight:600!important}
.hm-kr .hm-kr-required {color:#df5b49;font-weight:600}
.hm-kr input:not([type=checkbox]),.hm-kr textarea {display:block;width:100%!important;height:auto!important;border:1px solid var(--hmkr-outline)!important;border-radius:12px!important;background:#fff!important;color:var(--hmkr-text)!important;padding:12px 16px!important;box-shadow:none!important;font-family:inherit!important;font-size:1rem!important;line-height:1.45!important;outline:none;min-height:50px}
.hm-kr textarea {min-height:132px;resize:vertical!important}
.hm-kr input:not([type=checkbox]):focus,.hm-kr textarea:focus {border-color:#005E52!important;box-shadow:0 0 0 3px rgba(0,160,117,.12)!important}
.hm-kr input::placeholder,.hm-kr textarea::placeholder {color:#7c8985!important;opacity:1}
.hm-kr .hm-kr-two {display:grid;grid-template-columns:1fr 1fr;gap:12px}
.hm-kr .hm-kr-privacy {display:grid;grid-template-columns:21px minmax(0,1fr);align-items:start;gap:15px;font-size:1rem;line-height:1.52;font-weight:400;margin:6px 0 21px;cursor:pointer}
.hm-kr .hm-kr-privacy input[type=checkbox] {margin:5px 0 0!important;width:18px!important;height:18px!important;appearance:auto!important;accent-color:#005E52;flex-shrink:0;cursor:pointer}
.hm-kr .hm-kr-privacy a {color:#005E52!important;text-decoration:underline!important}
.hm-kr .hm-kr-primary {display:block;width:100%!important;min-width:0!important;max-width:100%!important;background:#005E52!important;border:1px solid #005E52!important;color:#fff!important;font-family:inherit!important;font-size:1rem!important;font-weight:650!important;border-radius:2rem!important;line-height:1.4!important;padding:13px 22px!important;min-height:50px!important;white-space:normal!important;text-align:center!important;text-decoration:none!important;cursor:pointer!important;transition:background-color .16s ease,border-color .16s ease!important}
.hm-kr .hm-kr-primary:hover,.hm-kr .hm-kr-primary:focus-visible {background:#00A075!important;border-color:#00A075!important;color:#fff!important}
.hm-kr .hm-kr-primary[disabled] {opacity:.62;cursor:wait!important}
.hm-kr .hm-kr-back {display:block;width:100%;background:transparent!important;border:1px solid var(--hmkr-outline)!important;color:var(--hmkr-dark)!important;border-radius:2rem!important;font-family:inherit!important;font-size:1rem!important;padding:10px 18px!important;margin:11px 0 0!important;cursor:pointer}
.hm-kr .hm-kr-back:hover {background:#e8f4ef!important}
.hm-kr .hm-kr-error {border:1px solid #ecc3b4;border-radius:10px;background:#fff6f2;color:#a63e26;padding:10px 13px;margin:0 0 13px;font-size:.94rem;line-height:1.4}
.hm-kr .hm-kr-honeypot {position:absolute!important;left:-99999px!important;top:-99999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.hm-kr .hm-kr-pending,.hm-kr .hm-kr-confirm {text-align:center;padding:25px 0 14px}
.hm-kr .hm-kr-pending h3 {color:var(--hmkr-dark)!important;margin-bottom:12px!important}
.hm-kr .hm-kr-confirm .hm-kr-check {display:inline-flex;justify-content:center;align-items:center;color:#00A075;border:2px solid #00A075;background:#edf7f2;width:64px;height:64px;border-radius:50%;font-size:2.2rem;font-weight:400;margin:0 auto 22px}
.hm-kr .hm-kr-confirm h3 {font-size:1.4rem!important;color:#00A075!important;margin:0 0 19px!important;font-weight:700!important}
.hm-kr .hm-kr-confirm p {font-size:1rem!important;color:#222222!important}
/* Funnel: a compact, initially collapsed helper, centered INSIDE the existing funnel. */
.hm-kr.hm-kr--funnel {width:100%!important;max-width:620px!important;margin:24px auto!important;border:1px solid #d6e5dd;border-radius:22px;background:#fff;overflow:hidden}
.hm-kr .hm-kr-prompt {padding:25px 22px 23px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}
.hm-kr .hm-kr-prompt .hm-kr-phone-symbol {display:flex;width:48px;height:48px;border-radius:50%;background:#e6f5ee;color:#005E52;align-items:center;justify-content:center;font-size:1.5rem;line-height:1}
.hm-kr .hm-kr-prompt h3 {font-size:1.4rem!important}
.hm-kr .hm-kr-prompt p {line-height:1.55!important}
.hm-kr .hm-kr-prompt .hm-kr-primary {margin-top:7px}
.hm-kr.hm-kr--expanded .hm-kr-prompt {padding-bottom:18px}
.hm-kr.hm-kr--expanded .hm-kr-body {border-top:1px solid #e6ede9}
.hm-kr.hm-kr--standard {max-width:none!important}
/* Resist long-standing selector rules from the large tariff-card plugin. */
.hm-of .hm-kr.hm-kr--funnel .hm-kr-body,
.hm-of .hm-kr.hm-kr--funnel .hm-kr-prompt {width:100%!important;max-width:100%!important}
@media (max-width:1024px) and (min-width:641px) {
  .hm-kr.hm-kr--funnel {max-width:560px!important}
}
@media (max-width:640px) {
  .hm-kr.hm-kr--funnel {max-width:100%!important;margin:18px auto!important}
  .hm-kr .hm-kr-brand {padding:19px 12px 15px}
  .hm-kr .hm-kr-body {padding:19px 15px 20px}
  .hm-kr .hm-kr-prompt {padding:19px 15px}
  .hm-kr .hm-kr-two {grid-template-columns:1fr;gap:0}
  .hm-kr .hm-kr-brand-title {font-size:1.48rem!important}
  .hm-kr h3 {font-size:1.3rem!important}
  .hm-kr .hm-kr-confirm h3 {font-size:1.4rem!important}
}


/* Funnel redesign 0.1.1. Scoped: the normal Elementor contact mode is unaffected.
   The first CTA opens the existing 2-step flow; this is a layout-only release. */
.hm-kr.hm-kr--funnel {
  max-width: 1120px!important;
  width: 100%!important;
  margin: 48px auto 44px!important;
  background: transparent!important;
  border: 0!important;
  border-radius: 0!important;
  box-shadow: none!important;
  overflow: visible!important;
  padding: 0!important;
  font-family: 'Bricolage Grotesque',Arial,sans-serif!important;
}
.hm-kr.hm-kr--funnel .hm-kr-funnel-layout {
  display: grid;
  grid-template-columns: minmax(0, .86fr) minmax(0, 1.14fr);
  gap: clamp(22px, 3vw, 48px);
  width: 100%;
  min-width: 0;
  align-items: stretch;
}
.hm-kr.hm-kr--funnel .hm-kr-advisor {
  background: #fbf8f3;
  border: 0;
  border-radius: 0;
  padding: 27px 30px 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: space-between;
  min-width: 0;
  overflow: hidden;
}
.hm-kr.hm-kr--funnel .hm-kr-advisor-copy {width:100%;min-width:0}
.hm-kr.hm-kr--funnel .hm-kr-advisor h3 {
  font-size: clamp(1.45rem,2vw,1.85rem)!important;
  line-height:1.25!important;
  color:#222222!important;
  margin: 0 0 17px!important;
  font-weight:700!important;
}
.hm-kr.hm-kr--funnel .hm-kr-advisor-hours {
  font-size:1rem!important;
  line-height:1.53!important;
  color:#222222!important;
  margin:0 0 25px!important;
}
.hm-kr.hm-kr--funnel .hm-kr-advisor-hours strong {font-weight:600}
.hm-kr.hm-kr--funnel .hm-kr-advisor-benefits {
  display:flex;flex-direction:column;gap:17px;
  margin:0 0 12px!important;padding:0!important;list-style:none!important;
}
.hm-kr.hm-kr--funnel .hm-kr-advisor-benefits li {
  display:grid!important;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;
  font-size:1rem!important;line-height:1.4!important;color:#222222!important;
  margin:0!important;padding:0!important;list-style:none!important;
}
.hm-kr.hm-kr--funnel .hm-kr-benefit-icon {
  width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;
  background:#e5f4ed;color:#005E52;border-radius:50%;
}
.hm-kr.hm-kr--funnel .hm-kr-benefit-icon svg {width:22px;height:22px;display:block;flex:none}
.hm-kr.hm-kr--funnel .hm-kr-advisor-photo {
  width: clamp(188px, 22vw, 235px)!important;
  max-width:85%!important;
  height:auto!important;
  display:block!important;
  object-fit:contain!important;
  margin: 10px 0 0 0!important;
  align-self:flex-start;
  border:0!important;border-radius:0!important;box-shadow:none!important;
}
.hm-kr.hm-kr--funnel .hm-kr-interaction {
  width:100%!important;max-width:100%!important;min-width:0;
  background:#ffffff;
  border:0;border-radius:0;
  padding: 18px 0 6px;
  overflow:visible;
}
.hm-kr.hm-kr--funnel .hm-kr-prompt {
  display:flex;flex-direction:column;align-items:flex-start;text-align:left;
  padding:0!important;margin:0!important;gap:12px;min-width:0;width:100%!important;
}
.hm-kr.hm-kr--funnel .hm-kr-phone-symbol {
  display:flex;align-items:center;justify-content:center;
  width:46px;height:46px;border-radius:50%;
  background:#e5f4ed;color:#005E52;
  font-size:1rem!important;line-height:1!important;
}
.hm-kr.hm-kr--funnel .hm-kr-phone-symbol svg {width:23px;height:23px;display:block}
.hm-kr.hm-kr--funnel .hm-kr-prompt h3 {
  font-size:clamp(1.5rem,2.2vw,1.95rem)!important;
  line-height:1.2!important;
  font-weight:700!important;
  color:#00A075!important;
  margin:0!important;
}
.hm-kr.hm-kr--funnel .hm-kr-prompt p {
  max-width:38rem;font-size:1rem!important;
  line-height:1.53!important;color:#222222!important;
}
.hm-kr.hm-kr--funnel .hm-kr-open {margin-top:15px!important}
.hm-kr.hm-kr--funnel.hm-kr--expanded .hm-kr-open {display:none!important}
.hm-kr.hm-kr--funnel .hm-kr-body {
  padding:0 0 12px!important;margin-top:20px;
  border:0!important;min-width:0;width:100%!important;max-width:100%!important;
}
.hm-kr.hm-kr--funnel .hm-kr-close {
  display:block;margin:0 0 17px auto!important;padding:3px 0!important;
  width:auto!important;background:none!important;border:none!important;
  color:#005E52!important;text-decoration:underline!important;
  font-family:inherit!important;font-size:.9rem!important;cursor:pointer!important;
}
.hm-kr.hm-kr--funnel [data-hm-step] h3 {font-size:1.25rem!important}
.hm-kr.hm-kr--funnel .hm-kr-progress {margin-bottom:13px}
.hm-kr.hm-kr--funnel .hm-kr-intro {margin:0 0 15px!important}
.hm-kr.hm-kr--funnel .hm-kr-field {margin:0 0 13px}
.hm-kr.hm-kr--funnel input:not([type=checkbox]),
.hm-kr.hm-kr--funnel textarea {border-radius:3px!important;min-height:48px!important}
.hm-kr.hm-kr--funnel textarea {min-height:102px!important}
.hm-kr.hm-kr--funnel .hm-kr-primary {border-radius:2rem!important}
.hm-kr.hm-kr--funnel .hm-kr-privacy {margin:5px 0 17px}
.hm-kr.hm-kr--funnel .hm-kr-confirm h3 {color:#00A075!important;font-size:1.4rem!important}
/* Portrait tablet: show a short people-first band, with photo on the right. */
@media (max-width:900px), (orientation:portrait) and (min-width:641px) and (max-width:1180px) {
  .hm-kr.hm-kr--funnel {max-width:720px!important;margin:40px auto 35px!important}
  .hm-kr.hm-kr--funnel .hm-kr-funnel-layout {grid-template-columns:minmax(0,1fr);gap:22px}
  .hm-kr.hm-kr--funnel .hm-kr-advisor {
    padding:17px 22px 0!important;
    display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:22px;
    min-height:145px;
  }
  .hm-kr.hm-kr--funnel .hm-kr-advisor h3 {font-size:1.5rem!important;margin-bottom:9px!important}
  .hm-kr.hm-kr--funnel .hm-kr-advisor-hours {margin:0!important}
  .hm-kr.hm-kr--funnel .hm-kr-advisor-benefits {display:none!important}
  .hm-kr.hm-kr--funnel .hm-kr-advisor-photo {
    width:132px!important;max-width:35%!important;
    margin:0!important;flex:0 0 auto;align-self:flex-end;
  }
  .hm-kr.hm-kr--funnel .hm-kr-interaction {padding:0 2px 2px!important}
  .hm-kr.hm-kr--funnel .hm-kr-prompt h3 {font-size:1.55rem!important}
}
/* Mobile: the portrait leads a compact single-row trust banner, followed by the form. */
@media (max-width:640px) {
  .hm-kr.hm-kr--funnel {max-width:100%!important;margin:28px auto 28px!important}
  .hm-kr.hm-kr--funnel .hm-kr-funnel-layout {gap:18px}
  .hm-kr.hm-kr--funnel .hm-kr-advisor {
    flex-direction:row;justify-content:flex-start;align-items:center;
    padding:10px 12px 0!important;gap:12px;min-height:100px;
  }
  .hm-kr.hm-kr--funnel .hm-kr-advisor-photo {
    order:-1;flex:none;width:88px!important;max-width:28%!important;
    align-self:flex-end;margin:0!important;
  }
  .hm-kr.hm-kr--funnel .hm-kr-advisor-copy {flex:1;min-width:0}
  .hm-kr.hm-kr--funnel .hm-kr-advisor h3 {font-size:1.12rem!important;margin:0 0 5px!important;line-height:1.2!important}
  .hm-kr.hm-kr--funnel .hm-kr-advisor-hours {font-size:.875rem!important;line-height:1.4!important}
  .hm-kr.hm-kr--funnel .hm-kr-prompt {gap:10px;padding:0!important}
  .hm-kr.hm-kr--funnel .hm-kr-prompt h3 {font-size:1.45rem!important}
  .hm-kr.hm-kr--funnel .hm-kr-body {margin-top:15px;padding:0 0 5px!important}
  .hm-kr.hm-kr--funnel .hm-kr-two {grid-template-columns:1fr;gap:0}
  .hm-kr.hm-kr--funnel .hm-kr-progress {gap:7px;flex-wrap:wrap}
  .hm-kr.hm-kr--funnel .hm-kr-privacy {grid-template-columns:20px minmax(0,1fr);gap:9px}
}
/* Closed desktop: both columns stay visually balanced. After opening, the full
   advisor panel with all three service points and the larger photo is shown. */
@media (min-width:901px) and (orientation:landscape), (min-width:1181px) {
  .hm-kr.hm-kr--funnel:not(.hm-kr--expanded) .hm-kr-advisor {
    flex-direction:row;align-items:center;justify-content:space-between;
    gap:15px;min-height:222px;padding:20px 21px!important;
  }
  .hm-kr.hm-kr--funnel:not(.hm-kr--expanded) .hm-kr-advisor-copy {flex:1;min-width:0}
  .hm-kr.hm-kr--funnel:not(.hm-kr--expanded) .hm-kr-advisor h3 {
    font-size:1.36rem!important;margin-bottom:10px!important;
  }
  .hm-kr.hm-kr--funnel:not(.hm-kr--expanded) .hm-kr-advisor-hours {
    margin:0!important;font-size:.95rem!important;
  }
  .hm-kr.hm-kr--funnel:not(.hm-kr--expanded) .hm-kr-advisor-benefits {display:none!important}
  .hm-kr.hm-kr--funnel:not(.hm-kr--expanded) .hm-kr-advisor-photo {
    order:1;align-self:center;flex:none;
    width:140px!important;max-width:41%!important;
    margin:0!important;
  }
}


/* === HM Kontakt & Rueckruf 0.1.2: Funnel card QA / Elementor typography ===
 * Scope: .hm-kr--funnel only. Standard Elementor contact form untouched.
 * Outer module fills its parent; no viewport-wide breakouts and no 1120px cap.
 * Both open and closed share a single rounded card, beige on the left.
 */
.hm-kr.hm-kr--funnel {
  --hmkr-body-size: var(--hm-site-body-font-size, 1rem);
  max-width: none!important;
  width: 100%!important;
  min-width: 0!important;
  margin: 48px 0 42px!important;
  background: #fff!important;
  border: 1px solid #dae7e1!important;
  border-radius: 22px!important;
  box-shadow: 0 5px 20px rgba(13,67,54,.04)!important;
  overflow: hidden!important;
  font-family: 'Bricolage Grotesque',Arial,sans-serif!important;
  font-size: var(--hmkr-body-size)!important;
  color: #222222!important;
  line-height: var(--hm-site-body-line-height, 1.52)!important;
}
.hm-kr.hm-kr--funnel .hm-kr-funnel-layout {
  width: 100%!important;
  min-width: 0!important;
  display: grid!important;
  grid-template-columns: minmax(0, 42%) minmax(0, 58%)!important;
  gap: 0!important;
  align-items: stretch!important;
}
.hm-kr.hm-kr--funnel .hm-kr-advisor {
  min-width: 0!important;
  background: #F8F1EA!important;
  border: 0!important;
  border-radius: 0!important;
  padding: 28px 30px 10px!important;
  display: flex!important;
  flex-direction: column;
  align-items: stretch!important;
  justify-content: flex-start!important;
  gap: 0!important;
  overflow: hidden!important;
}
.hm-kr.hm-kr--funnel .hm-kr-advisor-copy {
  width: 100%!important;
  flex: 0 0 auto;
  min-width: 0!important;
}
.hm-kr.hm-kr--funnel .hm-kr-advisor-photo-area {
  flex: 1 1 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 160px;
  width: 100%;
  min-width: 0;
  padding: 12px 0;
  margin: 0;
}
.hm-kr.hm-kr--funnel .hm-kr-advisor-photo {
  flex: 0 1 auto;
  display: block!important;
  width: clamp(188px, 19vw, 235px)!important;
  height: auto!important;
  max-width: 86%!important;
  object-fit: contain!important;
  align-self: center!important;
  margin: 0 auto!important;
  box-shadow: none!important;
  border: 0!important;
  border-radius: 0!important;
}
.hm-kr.hm-kr--funnel .hm-kr-interaction {
  width: 100%!important;
  max-width: 100%!important;
  min-width: 0!important;
  background: #fff!important;
  border: 0!important;
  padding: 29px 34px 30px!important;
  border-radius: 0!important;
}
.hm-kr.hm-kr--funnel .hm-kr-prompt,
.hm-kr.hm-kr--funnel .hm-kr-body {
  width: 100%!important;
  max-width: none!important;
  min-width: 0!important;
}
.hm-kr.hm-kr--funnel .hm-kr-prompt {
  padding: 0!important;
  gap: 12px;
  text-align: left!important;
  align-items: flex-start!important;
}
.hm-kr.hm-kr--funnel .hm-kr-body,
.hm-kr.hm-kr--funnel.hm-kr--expanded .hm-kr-body {
  padding: 0!important;
  margin-top: 24px!important;
  border: 0!important;
  box-shadow: none!important;
  background: #fff!important;
}
.hm-kr.hm-kr--funnel .hm-kr-prompt h3,
.hm-kr.hm-kr--funnel .hm-kr-advisor h3,
.hm-kr.hm-kr--funnel [data-hm-step] h3,
.hm-kr.hm-kr--funnel .hm-kr-pending h3,
.hm-kr.hm-kr--funnel .hm-kr-confirm h3 {
  font-family: 'Bricolage Grotesque',Arial,sans-serif!important;
  font-size: 1.4rem!important;
  line-height: 1.28!important;
  font-weight: 700!important;
  letter-spacing: normal!important;
  text-transform: none!important;
  outline: 0!important;
  border: 0!important;
  box-shadow: none!important;
  background: transparent!important;
  border-radius: 0!important;
  padding: 0!important;
  margin: 0 0 12px!important;
}
.hm-kr.hm-kr--funnel .hm-kr-advisor h3 {color: #222222!important;}
.hm-kr.hm-kr--funnel .hm-kr-prompt h3,
.hm-kr.hm-kr--funnel [data-hm-step] h3 {color: #00A075!important;}
.hm-kr.hm-kr--funnel .hm-kr-confirm h3 {color:#00A075!important;}
.hm-kr.hm-kr--funnel .hm-kr-advisor-hours,
.hm-kr.hm-kr--funnel .hm-kr-advisor-benefits li,
.hm-kr.hm-kr--funnel .hm-kr-prompt p,
.hm-kr.hm-kr--funnel .hm-kr-body p,
.hm-kr.hm-kr--funnel .hm-kr-privacy,
.hm-kr.hm-kr--funnel .hm-kr-progress,
.hm-kr.hm-kr--funnel .hm-kr-progress span,
.hm-kr.hm-kr--funnel .hm-kr-field label,
.hm-kr.hm-kr--funnel .hm-kr-error,
.hm-kr.hm-kr--funnel .hm-kr-close,
.hm-kr.hm-kr--funnel input:not([type=checkbox]),
.hm-kr.hm-kr--funnel textarea {
  font-family: 'Bricolage Grotesque',Arial,sans-serif!important;
  font-size: var(--hmkr-body-size)!important;
  color: #222222!important;
  line-height: var(--hm-site-body-line-height, 1.52)!important;
}
.hm-kr.hm-kr--funnel .hm-kr-close {
  color: #005E52!important;
  line-height: 1.35!important;
  border:0!important;
  outline:0;
}
.hm-kr.hm-kr--funnel .hm-kr-prompt .hm-kr-primary,
.hm-kr.hm-kr--funnel .hm-kr-body .hm-kr-primary {
  font-family: 'Bricolage Grotesque',Arial,sans-serif!important;
  font-size: var(--hmkr-body-size)!important;
  color:#fff!important;
  background:#005E52!important;
  border:1px solid #005E52!important;
  border-radius:2rem!important;
  margin-top: 12px!important;
}
.hm-kr.hm-kr--funnel .hm-kr-primary:hover,
.hm-kr.hm-kr--funnel .hm-kr-primary:focus-visible {
  background:#00A075!important;
  border-color:#00A075!important;
  color:#fff!important;
}
.hm-kr.hm-kr--funnel .hm-kr-back {
  font-family:'Bricolage Grotesque',Arial,sans-serif!important;
  font-size:var(--hmkr-body-size)!important;
  border-radius:2rem!important;
}
/* A compact initial card, full-length expanded advisor section. */
@media (min-width:901px) and (orientation:landscape), (min-width:1181px) {
  .hm-kr.hm-kr--funnel:not(.hm-kr--expanded) .hm-kr-advisor {
    flex-direction: row!important;
    align-items: center!important;
    justify-content: space-between!important;
    padding: 24px 26px!important;
    min-height: 222px;
    gap: 14px!important;
  }
  .hm-kr.hm-kr--funnel:not(.hm-kr--expanded) .hm-kr-advisor-copy {flex:1 1 auto;}
  .hm-kr.hm-kr--funnel:not(.hm-kr--expanded) .hm-kr-advisor-photo-area {
    width: clamp(110px,13vw,150px)!important;
    min-width: 0;
    flex: 0 1 150px!important;
    min-height: 0;
    padding: 0;
    align-self: center;
  }
  .hm-kr.hm-kr--funnel:not(.hm-kr--expanded) .hm-kr-advisor-photo {
    width: 135px!important;
    max-width:100%!important;
    margin: 0 auto!important;
  }
  .hm-kr.hm-kr--funnel:not(.hm-kr--expanded) .hm-kr-advisor-benefits {display:none!important;}
  .hm-kr.hm-kr--funnel:not(.hm-kr--expanded) .hm-kr-advisor-hours {margin:0!important;}
}
/* Portrait tablets and narrow layouts: compact advisor banner ABOVE the form. */
@media (max-width:900px), (orientation:portrait) and (min-width:641px) and (max-width:1180px) {
  .hm-kr.hm-kr--funnel {max-width:none!important;margin:40px 0 34px!important;}
  .hm-kr.hm-kr--funnel .hm-kr-funnel-layout {grid-template-columns:minmax(0,1fr)!important;}
  .hm-kr.hm-kr--funnel .hm-kr-advisor {
    flex-direction:row!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:20px!important;
    min-height:140px;
    padding:16px 24px 0!important;
  }
  .hm-kr.hm-kr--funnel .hm-kr-advisor-copy {flex:1 1 auto;}
  .hm-kr.hm-kr--funnel .hm-kr-advisor-benefits {display:none!important;}
  .hm-kr.hm-kr--funnel .hm-kr-advisor-hours {margin:0!important;}
  .hm-kr.hm-kr--funnel .hm-kr-advisor-photo-area {
    flex:0 0 130px!important;
    width:130px!important;
    min-height:0;
    align-self:flex-end;
    padding:0;
  }
  .hm-kr.hm-kr--funnel .hm-kr-advisor-photo {width:130px!important;max-width:100%!important;}
  .hm-kr.hm-kr--funnel .hm-kr-interaction {padding:24px 28px 27px!important;}
}
/* Smartphones: little advisor portrait on the LEFT, form on the following row. */
@media (max-width:640px) {
  .hm-kr.hm-kr--funnel {margin:28px 0!important;}
  .hm-kr.hm-kr--funnel .hm-kr-advisor {
    flex-direction:row!important;
    gap:12px!important;
    justify-content:flex-start!important;
    min-height:108px;
    padding:12px 14px 0!important;
  }
  .hm-kr.hm-kr--funnel .hm-kr-advisor-photo-area {
    order:-1;
    flex:0 0 88px!important;
    width:88px!important;
    padding:0;
    min-height:0;
    align-self:flex-end;
  }
  .hm-kr.hm-kr--funnel .hm-kr-advisor-photo {width:86px!important;max-width:100%!important;}
  .hm-kr.hm-kr--funnel .hm-kr-advisor h3 {margin-bottom:7px!important;}
  .hm-kr.hm-kr--funnel .hm-kr-advisor-hours {margin:0!important;}
  .hm-kr.hm-kr--funnel .hm-kr-interaction {padding:22px 17px 25px!important;}
  .hm-kr.hm-kr--funnel .hm-kr-two {grid-template-columns:minmax(0,1fr)!important;gap:0!important;}
}


/* HM Kontakt & Rueckruf 1.0.1 -- Popup integrated within main plugin. */

/* HM Kontakt & Rueckruf 1.0.1: integrated success dialog, reference HM Tierfreunde 1.0.6. */
.hm-kr-result-popup, .hm-kr-result-popup *, .hm-kr-result-popup *::before, .hm-kr-result-popup *::after { box-sizing:border-box; }
.hm-kr-result-popup {
  position:fixed!important; inset:0!important; z-index:2147483000!important;
  display:flex!important; align-items:center!important; justify-content:center!important;
  padding:20px!important; background:rgba(13,40,34,.55)!important;
  font-family:'Bricolage Grotesque',Arial,sans-serif!important; color:#222!important;
  font-size:16px!important; line-height:1.5!important; isolation:isolate;
}
.hm-kr-result-popup-card {
  width:min(100%,490px)!important; min-width:0!important; max-height:min(88vh,740px);
  overflow-y:auto; padding:clamp(24px,4vw,38px)!important;
  background:#fff!important; border:1px solid #d8e7dd!important;
  border-radius:23px!important; box-shadow:0 22px 70px rgba(0,34,24,.25)!important;
  text-align:center!important; outline:none!important;
}
.hm-kr-result-popup-check {
  display:flex!important; align-items:center!important; justify-content:center!important;
  width:80px!important; height:80px!important; margin:0 auto 22px!important;
  color:#009d76!important; border-radius:50%!important; background:#e3f5ed!important;
}
.hm-kr-result-popup-card h3 {
  font-family:inherit!important; color:#005e52!important; font-size:clamp(23px,4vw,28px)!important;
  line-height:1.24!important; font-weight:700!important; margin:0 0 18px!important;
  text-transform:none!important; letter-spacing:normal!important;
}
.hm-kr-result-popup-card p {
  font-family:inherit!important; font-size:16px!important; line-height:1.56!important;
  font-weight:400!important; color:#33473c!important; margin:0 0 14px!important;
  text-transform:none!important; letter-spacing:normal!important; overflow-wrap:anywhere;
}
.hm-kr-result-popup-close {
  display:block!important; width:100%!important; min-height:51px!important;
  margin:25px 0 0!important; padding:12px 20px!important;
  border:1px solid #005e52!important; border-radius:999px!important;
  background:#005e52!important; color:#fff!important;
  font-family:inherit!important; font-size:16px!important; font-weight:700!important;
  line-height:1.5!important; cursor:pointer!important; text-transform:none!important;
}
.hm-kr-result-popup-close:hover { background:#00a075!important; border-color:#00a075!important; }
.hm-kr-result-popup-close:focus-visible { outline:3px solid #8dd1bd!important; outline-offset:3px!important; }
@media (max-width:580px) {
  .hm-kr-result-popup {padding:13px!important;}
  .hm-kr-result-popup-card {border-radius:18px!important;}
}

