/* aequitixx Startseite Variante B – Lead-Bausteine (Rechner, Whitepaper, Kontakt). Design: Befundakte, General Sans. */
.axb { --aq-red: #E30613; --aq-red-d: #B80511; --aq-ink: #161616; --aq-text: #1B1B1B; --aq-muted: #5D5D5A; --aq-paper: #F5F4F1; --aq-line: #DDDBD5; --aq-teal: #14A89B; --aq-teal-t: #E4F5F3;
  font-family: 'General Sans', 'IBM Plex Sans', system-ui, sans-serif; color: var(--aq-text); }
.axb, .axb * { box-sizing: border-box; }
/* Breakdance setzt Überschriften über var(--bde-heading-font-family); auf der Variante B gilt General Sans. */
.aq-page, .axb { --bde-heading-font-family: 'General Sans', 'IBM Plex Sans', system-ui, sans-serif; --bde-body-font-family: 'General Sans', 'IBM Plex Sans', system-ui, sans-serif; }
.axb [hidden] { display: none !important; }
.axb-btn { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-height: 52px; padding: 14px 24px; border-radius: 8px; border: 0; font: 600 16px/1.2 'General Sans', system-ui, sans-serif; text-decoration: none; cursor: pointer; transition: background-color .15s, transform .15s; }
.axb-btn:hover { transform: translateY(-1px); }
.axb-btn--red { background: var(--aq-red); color: #fff; }
.axb-btn--red:hover { background: var(--aq-red-d); color: #fff; }
.axb-btn--dark { background: var(--aq-ink); color: #fff; }
.axb-btn--dark:hover { background: #000; color: #fff; }
.axb-btn[disabled] { opacity: .6; cursor: progress; }

/* Rechner */
.axb-calc { display: grid; grid-template-columns: 1.15fr .85fr; border: 1px solid var(--aq-line); border-radius: 14px; overflow: hidden; background: #fff; }
.axb-calc__form { padding: 36px 36px 28px; }
.axb-calc__k { font-size: 12px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--aq-red); margin: 0 0 18px; }
.axb-calc__k--light { color: #FF7A80; }
.axb-calc__row { display: grid; grid-template-columns: 1fr 1.1fr; gap: 18px; align-items: center; padding: 16px 0; border-top: 1px solid var(--aq-line); }
.axb-calc__lbl label { display: block; font-weight: 600; font-size: 15px; margin-bottom: 2px; }
.axb-calc__lbl span { font-size: 13px; color: var(--aq-muted); }
.axb-calc__in { display: grid; grid-template-columns: 1fr auto auto; gap: 10px; align-items: center; }
.axb-calc__in output { min-width: 74px; text-align: right; font-weight: 600; font-size: 17px; font-variant-numeric: tabular-nums; }
.axb-calc__in em { font-style: normal; font-size: 13px; color: var(--aq-muted); min-width: 44px; }
.axb-calc input[type=range] { -webkit-appearance: none; appearance: none; width: 100%; height: 6px; border-radius: 6px; background: linear-gradient(90deg, var(--aq-red) var(--p, 50%), var(--aq-line) var(--p, 50%)); outline: none; }
.axb-calc input[type=range]::-webkit-slider-thumb { -webkit-appearance: none; width: 22px; height: 22px; border-radius: 50%; background: #fff; border: 2px solid var(--aq-red); box-shadow: 0 2px 6px rgba(0,0,0,.2); cursor: pointer; }
.axb-calc input[type=range]::-moz-range-thumb { width: 20px; height: 20px; border-radius: 50%; background: #fff; border: 2px solid var(--aq-red); cursor: pointer; }
.axb-calc input[type=range]:focus-visible::-webkit-slider-thumb { outline: 3px solid var(--aq-teal); outline-offset: 2px; }
.axb-calc__note { font-size: 12.5px; line-height: 1.5; color: var(--aq-muted); margin: 14px 0 0; padding-top: 14px; border-top: 1px solid var(--aq-line); }
.axb-calc__res { padding: 36px; background: var(--aq-ink); color: #fff; display: flex; flex-direction: column; gap: 22px; }
.axb-calc__big span { display: block; font-size: 54px; font-weight: 600; letter-spacing: -.03em; line-height: 1; color: #fff; font-variant-numeric: tabular-nums; }
.axb-calc__big small, .axb-calc__grid small { display: block; font-size: 13px; color: rgba(255,255,255,.65); margin-top: 6px; line-height: 1.35; }
.axb-calc__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px 20px; padding: 20px 0; border-top: 1px solid rgba(255,255,255,.14); border-bottom: 1px solid rgba(255,255,255,.14); }
.axb-calc__grid b { font-size: 24px; font-weight: 600; letter-spacing: -.02em; font-variant-numeric: tabular-nums; }
.axb-calc__grid div:nth-child(3) b { color: #FF7A80; }
.axb-calc__grid div:nth-child(4) b { color: #5FD6CB; }
.axb-calc__ref { font-size: 12.5px; color: rgba(255,255,255,.6); margin: 0; line-height: 1.45; }

/* Formulare */
.axb-form .f { display: flex; flex-direction: column; gap: 6px; }
.axb-form label { font-size: 14px; font-weight: 600; color: var(--aq-text); }
.axb-form .opt { font-weight: 400; color: var(--aq-muted); }
.axb-form input:not([type=hidden]):not(.ax-hp), .axb-form select, .axb-form textarea { width: 100%; min-height: 50px; padding: 12px 14px; border: 1px solid #C9C6BF; border-radius: 8px; background: #fff; font: 400 16px/1.4 'General Sans', system-ui, sans-serif; color: var(--aq-text); transition: border-color .15s, box-shadow .15s; }
.axb-form textarea { min-height: 110px; resize: vertical; }
.axb-form input:focus, .axb-form select:focus, .axb-form textarea:focus { outline: none; border-color: var(--aq-teal); box-shadow: 0 0 0 3px rgba(20,168,155,.2); }
.axb-form .f.is-bad input, .axb-form .f.is-bad select { border-color: var(--aq-red); }
.axb-form .f__err { font-size: 13px; color: var(--aq-red); min-height: 0; }
.axb-form .f__err:empty { display: none; }
.axb-fgrid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-bottom: 20px; }
.axb-fgrid .f--full { grid-column: 1 / -1; }
.axb-privacy { font-size: 12.5px; line-height: 1.5; color: var(--aq-muted); margin: 12px 0 0; }
.axb-privacy a { color: inherit; }
.axb-done__h { font-size: 22px; font-weight: 600; margin: 0 0 8px; }
.axb-form .form__done { outline: none; }
.axb-form .form__done p { color: var(--aq-muted); line-height: 1.55; }

/* Whitepaper */
.axb-wp__form .form__body { display: grid; gap: 14px; }
.axb-wp__form .axb-btn { width: 100%; }
.axb-wp__form .form__done { display: grid; gap: 14px; }

@media (max-width: 1023px) {
  .axb-calc { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 767px) {
  .axb-calc__form, .axb-calc__res { padding: 24px 20px; }
  .axb-calc__row { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .axb-calc__big span { font-size: 40px; }
  .axb-fgrid { grid-template-columns: minmax(0, 1fr); }
}

/* Variante B: Vertrauenszeile auf schmalen Displays als Raster statt umbrechender Trennlinien */
@media (max-width: 479px) {
  .aq-page .aq-trust { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 0; }
  .aq-page .aq-trust-item:nth-child(2) { border-right: 0; margin-right: 0; }
}
