		
		/* === Widget Styles (bst-Präfix, eigene Engine) === */
		.bst-widget-container {
		  background: #fff;
		  border-radius: 8px;
		  padding: 28px 28px 24px;
		  margin: 32px 0;
		  border: 1px solid #d3d1c7;
		  border-left: 4px solid #1d4e89;
		  font-family: inherit;
		  color: #2c2c2a;
		  position: relative;
		  box-sizing: border-box;
		}
		.bst-widget-container * { box-sizing: border-box; }
		.bst-widget-headline {
		  font-size: 21px;
		  font-weight: 600;
		  color: #1d4e89;
		  margin-bottom: 6px;
		  line-height: 1.3;
		}
		.bst-widget-sub {
		  font-size: 14px;
		  color: #5f5e5a;
		  margin-bottom: 22px;
		  line-height: 1.5;
		}
		.bst-noscript {
		  background: #fff;
		  border: 1px solid #d3d1c7;
		  border-radius: 6px;
		  padding: 16px 20px;
		  font-size: 14px;
		  line-height: 1.6;
		  color: #2c2c2a;
		}
		.bst-noscript a {
		  color: #1d4e89;
		  font-weight: 600;
		  text-decoration: underline;
		}
		.bst-widget { font-size: 14px; color: #2c2c2a; line-height: 1.6; }
		.bst-step { margin-bottom: 22px; }
		.bst-step-label {
		  font-size: 14px;
		  font-weight: 600;
		  color: #2c2c2a;
		  margin: 0 0 10px;
		}
		.bst-grid {
		  display: grid;
		  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
		  gap: 8px;
		  margin-bottom: 12px;
		}
		.bst-option {
		  padding: 12px 14px;
		  font-size: 13px;
		  background: #fff;
		  border: 1px solid #d3d1c7;
		  border-radius: 4px;
		  cursor: pointer;
		  text-align: left;
		  font-family: inherit;
		  color: #2c2c2a;
		  transition: all 0.15s;
		  line-height: 1.4;
		}
		.bst-option:hover { border-color: #1d4e89; background: #f8f9fb; }
		.bst-option.active { background: #1d4e89; color: #fff; border-color: #1d4e89; }
		.bst-step-hint {
		  font-size: 12px;
		  color: #888780;
		  margin: 6px 0 0;
		  line-height: 1.5;
		}
		.bst-result { margin-top: 18px; }
		.bst-empfehlung {
		  background: #eef4fb;
		  border-left: 4px solid #1d4e89;
		  border-radius: 6px;
		  padding: 18px 22px;
		  margin-bottom: 14px;
		}
		.bst-empf-label {
		  font-size: 12px;
		  font-weight: 600;
		  color: #1d4e89;
		  text-transform: uppercase;
		  letter-spacing: 0.5px;
		  margin-bottom: 6px;
		}
		.bst-empf-titel {
		  font-size: 18px;
		  font-weight: 600;
		  color: #2c2c2a;
		  margin-bottom: 8px;
		  margin-top: 0;
		  line-height: 1.3;
		}
		.bst-empf-text {
		  font-size: 14px;
		  line-height: 1.6;
		  color: #2c2c2a;
		  margin: 0;
		}
		.bst-merkmale {
		  background: #fff;
		  border: 1px solid #d3d1c7;
		  border-radius: 6px;
		  padding: 16px 20px;
		  margin-bottom: 14px;
		}
		.bst-merkmale-titel {
		  font-size: 14px;
		  font-weight: 600;
		  margin: 0 0 8px;
		  color: #2c2c2a;
		}
		.bst-merkmale ul {
		  margin: 0;
		  padding-left: 20px;
		  font-size: 13px;
		  line-height: 1.6;
		}
		.bst-merkmale li { margin-bottom: 4px; }
		.bst-naechste-schritte {
		  background: #f4f0ea;
		  border-left: 4px solid #8a7860;
		  border-radius: 6px;
		  padding: 14px 18px;
		  margin-bottom: 14px;
		  font-size: 13px;
		  line-height: 1.6;
		}
		.bst-naechste-schritte-titel {
		  font-weight: 600;
		  color: #5d4f3d;
		  margin: 0 0 6px;
		  font-size: 13px;
		}
		.bst-kontakt {
		  background: #1d4e89;
		  border-radius: 8px;
		  padding: 18px 22px;
		  margin-bottom: 12px;
		  color: #fff;
		}
		.bst-kontakt-cta {
		  font-size: 17px;
		  font-weight: 600;
		  margin: 0 0 10px;
		  color: #fff;
		}
		.bst-kontakt-name {
		  font-size: 15px;
		  font-weight: 600;
		  margin: 0 0 6px;
		  color: #fff;
		}
		.bst-kontakt-info {
		  font-size: 13px;
		  line-height: 1.7;
		  opacity: 0.95;
		  margin: 0 0 2px;
		  color: #fff;
		}
		.bst-kontakt-buttons {
		  margin-top: 12px;
		  display: flex;
		  gap: 8px;
		  flex-wrap: wrap;
		}
		.bst-btn-call {
		  background: #fff;
		  color: #1d4e89;
		  padding: 10px 18px;
		  border-radius: 4px;
		  text-decoration: none;
		  font-size: 14px;
		  font-weight: 600;
		  display: inline-block;
		}
		.bst-btn-call:hover { background: #f1efe8; text-decoration: none; }
		.bst-btn-mail {
		  background: rgba(255,255,255,0.15);
		  color: #fff;
		  padding: 10px 18px;
		  border-radius: 4px;
		  text-decoration: none;
		  font-size: 14px;
		  font-weight: 600;
		  display: inline-block;
		  border: 1px solid rgba(255,255,255,0.4);
		}
		.bst-btn-mail:hover { background: rgba(255,255,255,0.25); text-decoration: none; }
		.bst-btn-map {
		  background: transparent;
		  color: #fff;
		  border: 1px solid rgba(255,255,255,0.6);
		  padding: 9px 17px;
		  border-radius: 4px;
		  text-decoration: none;
		  font-size: 14px;
		  font-weight: 600;
		  display: inline-block;
		}
		.bst-btn-map:hover { background: rgba(255,255,255,0.15); text-decoration: none; }
		.bst-reset {
		  width: 100%;
		  padding: 10px;
		  background: #fff;
		  border: 1px solid #d3d1c7;
		  border-radius: 4px;
		  font-family: inherit;
		  font-size: 13px;
		  cursor: pointer;
		  margin-top: 8px;
		  color: #2c2c2a;
		}
		.bst-reset:hover { background: #f8f9fb; }
		.bst-disclaimer {
		  font-size: 11px;
		  color: #888780;
		  text-align: center;
		  margin: 12px 0 0;
		  line-height: 1.5;
		}
		@media (max-width: 480px) {
		  .bst-widget-container { padding: 20px 18px 18px; }
		  .bst-grid { grid-template-columns: 1fr; }
		  .bst-kontakt-buttons { flex-direction: column; }
		  .bst-btn-call, .bst-btn-mail, .bst-btn-map { width: 100%; text-align: center; box-sizing: border-box; }
		}