/* Start custom CSS *//* ===== GVI: Sprungmarken unter dem Sticky-Header ===== */
#vorteile, #foerderung, #rechner, #riester, #beratung { scroll-margin-top: 110px; }
html { scroll-behavior: smooth; }

/* ===== GVI: Altersvorsorgedepot-Rechner im GVI-Design ===== */
body .ffa-avd.ffa-avd {
  --ffa-brand: #13636A;
  --ffa-dark: #383838;
  --ffa-dark-2: #275C61;
  --ffa-accent: #3C8B92;
  --ffa-accent-light: #E3EFF0;
  --ffa-paper: #F6FAFA;
  --ffa-line: #E4E4E4;
  --ffa-muted: #5A5A5A;
  --ffa-positive: #13636A;
  --ffa-soft-white: #FFFFFF;
  font-family: Arial, Helvetica, sans-serif;
  cursor: auto;
  max-width: 100%;
}
body .ffa-avd h2, body .ffa-avd h3 { font-family: "Arial Rounded Bold", Arial, sans-serif; color: #275C61; letter-spacing: 0 !important; }
body .ffa-avd .ffa-avd__verdict h3 { color: #FFFFFF !important; }
body .ffa-avd .ffa-avd__eyebrow { font-family: "Arial Rounded Bold", Arial, sans-serif; color: #3C8B92; }
body .ffa-avd .ffa-avd__panel { border-color: #E4E4E4; border-radius: 15px; box-shadow: 0 0 10px rgba(0,0,0,0.08); }
body .ffa-avd .ffa-avd__form { border-top: 6px solid #F0A361; }
body .ffa-avd .ffa-avd__verdict { border-radius: 15px 15px 0 0; }
body .ffa-avd .ffa-avd__stats { border-radius: 0 0 15px 15px; overflow: hidden; }
body .ffa-avd .ffa-avd__badge { background: #F0A361; color: #FFFFFF; border-radius: 999px; font-family: "Arial Rounded Bold", Arial, sans-serif; letter-spacing: .06em; }
body .ffa-avd .ffa-avd__verdict-number strong { color: #F0C261; font-family: "Arial Rounded Bold", Arial, sans-serif; }
body .ffa-avd .ffa-avd__stats strong { color: #13636A; font-family: "Arial Rounded Bold", Arial, sans-serif; }
body .ffa-avd .ffa-avd__legend i.is-avd { background: #13636A; }
body .ffa-avd input[type="number"], body .ffa-avd input[type="date"], body .ffa-avd select,
body .ffa-avd .ffa-avd__contact-form input[type="text"], body .ffa-avd .ffa-avd__contact-form input[type="email"], body .ffa-avd .ffa-avd__contact-form textarea { border-color: #DCDCDC; border-radius: 10px; }
body .ffa-avd input:focus, body .ffa-avd select:focus, body .ffa-avd textarea:focus, body .ffa-avd button:focus-visible, body .ffa-avd summary:focus-visible { border-color: #3C8B92; box-shadow: 0 0 0 3px rgba(60,139,146,.25); }
body .ffa-avd .ffa-avd__advanced-toggle i, body .ffa-avd .ffa-avd__advanced-toggle i::after { border-radius: 999px; }
body .ffa-avd .ffa-avd__advanced-toggle input:checked + i { background: #E3EFF0; border-color: #3C8B92; }
body .ffa-avd .ffa-avd__advanced-content { border-radius: 10px; }
body .ffa-avd .ffa-avd__statement-rows { border-radius: 10px; overflow: hidden; }
body .ffa-avd .ffa-avd__disclaimer { border-radius: 15px; font-size: 14px; color: #5A5A5A; }

/* Auswahl-Buttons (Rentenbeginn, Kinder, Rendite): Theme-Rot beim Hover/Fokus neutralisieren */
body .ffa-avd .ffa-avd__choices button { border-radius: 10px; background: #FFFFFF; color: #383838; border-color: #DCDCDC; }
body .ffa-avd .ffa-avd__choices button:hover,
body .ffa-avd .ffa-avd__choices button:focus { background: #FFFFFF; color: #383838; border-color: #3C8B92; }
body .ffa-avd .ffa-avd__choices button.is-active,
body .ffa-avd .ffa-avd__choices button.is-active:hover,
body .ffa-avd .ffa-avd__choices button.is-active:focus { background: #E3EFF0; color: #13636A; border-color: #3C8B92; box-shadow: inset 0 -3px 0 #3C8B92; }
body .ffa-avd .ffa-avd__choices button small { color: #5A5A5A; }

/* Beratungs-Button und Absenden im GVI-Orange */
body .ffa-avd .ffa-avd__cta, body .ffa-avd .ffa-avd__contact-submit { background: #F0A361; color: #FFFFFF !important; border-radius: 10px; font-family: "Arial Rounded Bold", Arial, sans-serif; padding: 17px 32px; }
body .ffa-avd .ffa-avd__cta:hover, body .ffa-avd .ffa-avd__cta:focus,
body .ffa-avd .ffa-avd__contact-submit:hover, body .ffa-avd .ffa-avd__contact-submit:focus { background: #F0A361; color: #FFFFFF !important; filter: brightness(.92); }

/* Modal */
body .ffa-avd .ffa-avd__modal-dialog { border-radius: 15px; border-top: 6px solid #F0A361; }
body .ffa-avd .ffa-avd__modal-dialog h3 { color: #275C61 !important; }
body .ffa-avd .ffa-avd__modal-close { border-radius: 10px; }
body .ffa-avd .ffa-avd__modal-close:hover, body .ffa-avd .ffa-avd__modal-close:focus { background: #E3EFF0; color: #13636A; }
body .ffa-avd .ffa-avd__modal-backdrop:hover, body .ffa-avd .ffa-avd__modal-backdrop:focus { background: rgba(20,20,20,.72); }
body .ffa-avd .ffa-avd__contact-result { border-radius: 10px; overflow: hidden; }
body .ffa-avd .ffa-avd__contact-consent a { color: #13636A; }/* End custom CSS */