/* Eigenständige B2B-2-Minuten-Anfrage – bewusst wie die etablierten Projekt-Funnel aufgebaut. */
html.bwb-modal-open,
body.bwb-modal-open { overflow: hidden !important; }
.bwb-modal[hidden] { display: none !important; }
.bwb-modal { position: fixed; z-index: 2147483000; inset: 0; display: grid; place-items: center; padding: 28px; background: rgba(15,18,40,.72); backdrop-filter: blur(8px); overscroll-behavior: contain; }
.bwb-modal__dialog { position: relative; width: min(1260px,100%); max-height: calc(100dvh - 56px); outline: 0; }
.bwb-modal__scroll { max-height: calc(100dvh - 56px); overflow: auto; border: 1px solid rgba(255,255,255,.46); border-radius: 28px; background: #fff; box-shadow: 0 32px 96px rgba(7,9,30,.42); scrollbar-color: #473ca8 transparent; scrollbar-width: thin; }
.bwb-modal__close { position: absolute !important; z-index: 8; top: 18px; right: 18px; display: grid !important; place-items: center; width: 50px; height: 50px; border: 0 !important; border-radius: 50% !important; padding: 0 !important; background: rgba(255,255,255,.96) !important; box-shadow: 0 7px 22px rgba(9,12,38,.21) !important; color: #292356 !important; font-size: 33px !important; font-weight: 400 !important; line-height: 1 !important; cursor: pointer; transition: transform .2s ease,background-color .2s ease; }
.bwb-modal__close:hover { transform: scale(1.06); background: #fff !important; }
.bwb-modal__close:focus-visible { outline: 3px solid #fff; outline-offset: 3px; }

.bwb-modal__intro { display: grid; min-height: min(760px,calc(100dvh - 58px)); grid-template-columns: minmax(0,1.04fr) minmax(470px,.96fr); overflow: hidden; border-radius: 27px; background: #171b37; color: #fff; }
.bwb-modal__intro-copy { position: relative; display: flex; flex-direction: column; justify-content: center; padding: clamp(50px,6vw,88px); background: linear-gradient(90deg,rgba(10,21,43,.98),rgba(21,32,65,.98)),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px); background-size: auto,40px 40px,40px 40px; }
.bwb-modal__intro-copy::after { position: absolute; right: -150px; bottom: -180px; width: 440px; height: 440px; border: 1px solid rgba(104,126,255,.28); border-radius: 50%; content: ''; pointer-events: none; }
.bwb-modal__eyebrow,.bwb-modal__lead,.bwb-modal__intro h2,.bwb-modal__facts,.bwb-modal__return,.bwb-modal__start { position: relative; z-index: 1; }
.bwb-modal__eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 !important; color: #9aabff !important; font-size: 12px !important; font-weight: 850 !important; letter-spacing: .14em; line-height: 1.35 !important; text-transform: uppercase; }
.bwb-modal__eyebrow i { display: block; width: 12px; height: 12px; border-radius: 50%; background: #2ed27b; box-shadow: 0 0 0 6px rgba(46,210,123,.12); }
.bwb-modal__intro h2 { max-width: 690px; margin: 27px 0 0 !important; color: #fff !important; font-size: clamp(42px,4.8vw,70px) !important; font-weight: 850 !important; letter-spacing: -.052em; line-height: .99 !important; }
.bwb-modal__lead { max-width: 650px; margin: 30px 0 0 !important; color: rgba(255,255,255,.8) !important; font-size: clamp(17px,1.7vw,21px) !important; line-height: 1.62 !important; }
.bwb-modal__start { display: inline-flex !important; width: fit-content; min-height: 66px; align-items: center; gap: 18px; margin: 39px 0 0 !important; border: 0 !important; border-radius: 999px !important; padding: 18px 26px 18px 29px !important; background: #fff !important; box-shadow: 0 12px 28px rgba(4,8,24,.24) !important; color: #1b2945 !important; font-family: inherit !important; font-size: 17px !important; font-weight: 800 !important; line-height: 1.2 !important; cursor: pointer; transition: transform .2s ease,box-shadow .2s ease; }
.bwb-modal__start svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 2; }
.bwb-modal__start:hover { transform: translateY(-2px); box-shadow: 0 17px 34px rgba(4,8,24,.32) !important; }
.bwb-modal__start:focus-visible,.bwb-modal__return:focus-visible,.bwb-modal__form-aside button:focus-visible { outline: 3px solid #9eaeff; outline-offset: 4px; }
.bwb-modal__facts { display: flex; flex-wrap: wrap; gap: 13px 22px; margin: 36px 0 0 !important; padding: 0 !important; list-style: none; }
.bwb-modal__facts li { display: flex; align-items: center; gap: 9px; color: rgba(255,255,255,.8); font-size: 14px; font-weight: 700; line-height: 1.45; }
.bwb-modal__facts svg { width: 17px; height: 17px; flex: 0 0 auto; fill: none; stroke: #5ce9a1; stroke-width: 2.4; }
.bwb-modal__return { width: fit-content; margin: 34px 0 0 !important; border: 0 !important; padding: 0 !important; background: transparent !important; color: rgba(255,255,255,.64) !important; font-family: inherit !important; font-size: 14px !important; font-weight: 750 !important; line-height: 1.4 !important; cursor: pointer; }
.bwb-modal__return:hover { color: #fff !important; }
.bwb-modal__intro-media { position: relative; min-height: 100%; background: linear-gradient(90deg,rgba(14,25,54,.06),rgba(14,25,54,0) 32%),var(--bwb-modal-image) center / cover no-repeat; }
.bwb-modal__intro-media::after { position: absolute; inset: 0; background: linear-gradient(0deg,rgba(8,14,34,.34),transparent 42%); content: ''; pointer-events: none; }
.bwb-modal__intro-media > span { position: absolute; z-index: 1; left: 25px; bottom: 24px; display: inline-flex; align-items: center; gap: 8px; border-radius: 999px; padding: 10px 14px; background: rgba(255,255,255,.96); box-shadow: 0 7px 18px rgba(5,12,31,.14); color: #29305d; font-size: 13px; font-weight: 800; }
.bwb-modal__intro-media > span i { width: 10px; height: 10px; border-radius: 50%; background: #2ed27b; box-shadow: 0 0 0 4px rgba(46,210,123,.14); }

.bwb-modal__form { display: grid; min-height: min(760px,calc(100dvh - 58px)); grid-template-columns: minmax(370px,.77fr) minmax(0,1.23fr); background: #f6f6fb; }
.bwb-modal__form-aside { position: relative; display: flex; min-height: 100%; flex-direction: column; justify-content: flex-end; overflow: hidden; padding: 58px 48px 42px; background: linear-gradient(180deg,rgba(8,15,39,.18),rgba(10,19,48,.96) 78%),var(--bwb-modal-image) center / cover no-repeat; color: #fff; }
.bwb-modal__form-aside::after { position: absolute; inset: 0; border-right: 1px solid rgba(255,255,255,.16); content: ''; pointer-events: none; }
.bwb-modal__form-aside-copy,.bwb-modal__form-aside > strong { position: relative; z-index: 1; }
.bwb-modal__form-aside-copy > p { display: flex; align-items: center; gap: 9px; margin: 0 !important; color: #b4c0ff !important; font-size: 11px !important; font-weight: 850 !important; letter-spacing: .13em; }
.bwb-modal__form-aside-copy > p i,.bwb-modal__form-aside > strong i { width: 10px; height: 10px; border-radius: 50%; background: #2ed27b; box-shadow: 0 0 0 4px rgba(46,210,123,.15); }
.bwb-modal__form-aside h2 { max-width: 360px; margin: 18px 0 0 !important; color: #fff !important; font-size: clamp(32px,3.3vw,48px) !important; font-weight: 850 !important; letter-spacing: -.045em; line-height: 1.02 !important; }
.bwb-modal__form-aside-copy > span { display: block; max-width: 370px; margin-top: 18px; color: rgba(255,255,255,.79); font-size: 16px; line-height: 1.58; }
.bwb-modal__form-aside ul { display: grid; gap: 10px; margin: 27px 0 0; padding: 0; list-style: none; }
.bwb-modal__form-aside li { display: flex; align-items: center; gap: 9px; color: rgba(255,255,255,.88); font-size: 14px; font-weight: 750; line-height: 1.4; }
.bwb-modal__form-aside li svg { width: 17px; height: 17px; fill: none; stroke: #5ce9a1; stroke-width: 2.4; }
.bwb-modal__form-aside button { margin-top: 32px; border: 0 !important; padding: 0 !important; background: transparent !important; color: rgba(255,255,255,.67) !important; font-family: inherit !important; font-size: 14px !important; font-weight: 750 !important; text-align: left; cursor: pointer; }
.bwb-modal__form-aside button:hover { color: #fff !important; }
.bwb-modal__form-aside > strong { position: absolute; z-index: 2; top: 25px; left: 26px; display: inline-flex; align-items: center; gap: 8px; border-radius: 999px; padding: 9px 12px; background: rgba(255,255,255,.95); color: #292e5b; font-size: 12px; font-weight: 800; }
.bwb-modal__form-aside > strong i { display: block; box-shadow: 0 0 0 4px rgba(46,210,123,.12); }
.bwb-modal__form-main { min-width: 0; background: #f6f6fb; }
.bwb-modal .bwb-page { background: transparent; overflow: visible; }
.bwb-modal .bwb-page > .bwb-hero,.bwb-modal .bwb-page > .bwb-reasons,.bwb-modal .bwb-page > .bwb-process,.bwb-modal .bwb-page > .bwb-clarity,.bwb-modal .bwb-page > .bwb-explainer { display: none; }
.bwb-modal .bwb-funnel { padding: 54px 0 56px; }
.bwb-modal .bwb-funnel__grid { display: block; width: min(780px,calc(100% - 64px)); margin: 0 auto; }
.bwb-modal .bwb-funnel__aside { display: none; }
.bwb-modal .bwb-form-card { padding: clamp(25px,4vw,42px); border: 1px solid #e2dfed; border-radius: 20px; box-shadow: 0 17px 42px rgba(35,28,82,.09); }
.bwb-modal .bwb-step legend { font-size: clamp(25px,3vw,34px) !important; }

@media (max-width: 840px) {
	.bwb-modal { place-items: end center; padding: 10px; }
	.bwb-modal__dialog,.bwb-modal__scroll { max-height: calc(100dvh - 20px); }
	.bwb-modal__scroll,.bwb-modal__intro { border-radius: 21px; }
	.bwb-modal__intro { min-height: 0; grid-template-columns: 1fr; }
	.bwb-modal__intro-copy { min-height: 510px; padding: 76px 27px 35px; }
	.bwb-modal__intro-media { min-height: 255px; background-position: center 30%; }
	.bwb-modal__intro h2 { font-size: clamp(40px,10vw,58px) !important; }
	.bwb-modal__lead { font-size: 17px !important; }
	.bwb-modal__start { width: 100%; justify-content: space-between; font-size: 16px !important; }
	.bwb-modal__facts { display: grid; gap: 11px; }
	.bwb-modal__close { top: 13px; right: 13px; width: 44px; height: 44px; font-size: 29px !important; }
	.bwb-modal__form { min-height: 0; grid-template-columns: 1fr; }
	.bwb-modal__form-aside { min-height: 292px; padding: 83px 26px 28px; background-position: center 28%; }
	.bwb-modal__form-aside h2 { max-width: 78%; font-size: 31px !important; }
	.bwb-modal__form-aside-copy > span { max-width: 76%; margin-top: 10px; font-size: 14px; line-height: 1.48; }
	.bwb-modal__form-aside ul { display: none; }
	.bwb-modal__form-aside button { margin-top: 18px; font-size: 13px !important; }
	.bwb-modal__form-aside > strong { top: 15px; left: 16px; font-size: 11px; }
	.bwb-modal .bwb-funnel { padding: 26px 0 34px; }
	.bwb-modal .bwb-funnel__grid { width: min(100% - 28px,780px); }
	.bwb-modal .bwb-form-card { padding: 25px 19px; border-radius: 15px; }
}
@media (prefers-reduced-motion: reduce) { .bwb-modal__close:hover,.bwb-modal__start:hover { transform: none; } }
