/* Sticky-Leiste (Mobil) und Desktop-Widget, aus dem Snippet sticky-booking-bar.php. */
/* Mobile Sticky Bar (≤ 880 px sichtbar) — 2 Anbieter nebeneinander */
	.osp-sticky { position: fixed; left: 0; right: 0; bottom: 0; z-index: 9998; background: #1A1A1A; color: #fff; border-top: 3px solid #C9A24B; transform: translateY(100%); transition: transform 0.3s ease; padding: 8px 10px env(safe-area-inset-bottom, 8px); box-shadow: 0 -4px 16px rgba(0,0,0,0.2); display: none; }
	.osp-sticky--show { transform: translateY(0); }
	.osp-sticky__inner { display: flex; flex-direction: column; gap: 6px; max-width: 1140px; margin: 0 auto; }
	.osp-sticky__label-row { display: flex; justify-content: center; }
	.osp-sticky__label { color: #cfcfcf; font-size: 11px; letter-spacing: 0.06em; text-transform: uppercase; font-weight: 600; }
	.osp-sticky__providers { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
	.osp-sticky__prov { display: flex; flex-direction: column; align-items: center; justify-content: center; text-decoration: none; padding: 10px 8px; border-radius: 6px; text-align: center; line-height: 1.1; }
	.osp-sticky__prov--primary { background: #C9A24B; color: #1A1A1A; }
	.osp-sticky__prov--primary:hover { background: #B08D38; }
	.osp-sticky__prov--secondary { background: #333; color: #fff; border: 1px solid rgba(255,255,255,0.25); }
	.osp-sticky__prov--secondary:hover { background: #444; }
	.osp-sticky__brand { font-size: 11px; font-weight: 700; letter-spacing: 0.04em; opacity: 0.85; margin-bottom: 2px; }
	.osp-sticky__price-inline { font-size: 15px; font-weight: 700; white-space: nowrap; }

	/* Desktop Widget (> 880 px sichtbar) — 2 Anbieter untereinander */
	.osp-dwidget { position: fixed; right: 24px; bottom: 24px; z-index: 9998; width: 300px; background: #fff; border: 1px solid rgba(26,26,26,0.12); border-top: 4px solid #C9A24B; border-radius: 10px; padding: 20px 20px 16px; box-shadow: 0 12px 36px rgba(26,26,26,0.16); transform: translateY(20px) scale(0.96); opacity: 0; pointer-events: none; transition: transform 0.25s ease, opacity 0.25s ease; display: none; }
	.osp-dwidget--show { transform: translateY(0) scale(1); opacity: 1; pointer-events: auto; }
	.osp-dwidget--collapsed { width: auto; padding: 10px 16px; }
	.osp-dwidget--collapsed .osp-dwidget__eyebrow,
	.osp-dwidget--collapsed .osp-dwidget__list,
	.osp-dwidget--collapsed .osp-dwidget__prov,
	.osp-dwidget--collapsed .osp-dwidget__source { display: none; }
	.osp-dwidget--collapsed::after { content: "OPA SI PASS"; color: #1A1A1A; font-size: 14px; font-weight: 600; padding-right: 32px; }
	.osp-dwidget__toggle { position: absolute; top: 8px; right: 8px; width: 26px; height: 26px; border-radius: 50%; border: 1px solid rgba(26,26,26,0.15); background: #fff; cursor: pointer; display: inline-flex; align-items: center; justify-content: center; padding: 0; color: #6B6B6B; }
	.osp-dwidget__toggle:hover { background: #F7F5F0; color: #1A1A1A; }
	.osp-dwidget__toggle-icon { font-size: 16px; line-height: 1; font-weight: 700; }
	.osp-dwidget__eyebrow { color: #C9A24B; font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; margin: 0 0 10px; font-weight: 600; }
	.osp-dwidget__list { list-style: none; padding: 0; margin: 0 0 14px; }
	.osp-dwidget__list li { position: relative; padding-left: 18px; color: #1A1A1A; font-size: 13px; line-height: 1.6; }
	.osp-dwidget__list li::before { content: ""; position: absolute; left: 0; top: 8px; width: 6px; height: 6px; border-radius: 50%; background: #C9A24B; }

	.osp-dwidget__prov { border-radius: 6px; padding: 10px 12px; margin-bottom: 8px; }
	.osp-dwidget__prov--primary { background: #FFF8E7; border: 1px solid #C9A24B; }
	.osp-dwidget__prov--secondary { background: #F7F5F0; border: 1px solid rgba(26,26,26,0.15); }
	.osp-dwidget__prov-head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 6px; }
	.osp-dwidget__prov-brand { color: #1A1A1A; font-size: 13px; font-weight: 700; }
	.osp-dwidget__prov-price { color: #1A1A1A; font-size: 15px; font-weight: 700; }
	.osp-dwidget__prov-cta .at-affiliate-button { display: block; text-align: center; border-radius: 5px !important; padding: 9px 14px !important; font-size: 13px !important; font-weight: 700 !important; text-decoration: none !important; border: none !important; transition: background 0.2s ease; }
	.osp-dwidget__prov-cta--primary .at-affiliate-button { background: #C9A24B !important; color: #1A1A1A !important; }
	.osp-dwidget__prov-cta--primary .at-affiliate-button:hover { background: #B08D38 !important; color: #1A1A1A !important; }
	.osp-dwidget__prov-cta--secondary .at-affiliate-button { background: #1A1A1A !important; color: #fff !important; }
	.osp-dwidget__prov-cta--secondary .at-affiliate-button:hover { background: #333 !important; color: #fff !important; }

	.osp-dwidget__source { color: #6B6B6B; font-size: 12px; line-height: 1.4; margin: 8px 0 0; text-align: center; }

	@media (max-width: 880px) {
		.osp-sticky { display: block; }
		.osp-dwidget { display: none !important; }
	}
	@media (min-width: 881px) {
		.osp-dwidget { display: block; }
		.osp-sticky { display: none !important; }
	}
