/* =====================================================================
   Become Brand — accessibility toolbar (Israeli law: IS 5568 / WCAG 2.0 AA)
   ===================================================================== */

.bb-a11y-toggle {
	position: fixed;
	bottom: 20px;
	left: 20px;
	z-index: 9998;
	width: 52px;
	height: 52px;
	border-radius: 50%;
	border: none;
	background: #1e4fd8;
	color: #fff;
	cursor: pointer;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.28);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform 0.2s ease;
}

.bb-a11y-toggle:hover { transform: scale(1.08); }
.bb-a11y-toggle:focus-visible { outline: 3px solid #fff; outline-offset: 2px; }

.bb-a11y-panel {
	position: fixed;
	bottom: 84px;
	left: 20px;
	z-index: 9999;
	width: 300px;
	max-width: calc(100vw - 40px);
	max-height: 78vh;
	overflow-y: auto;
	background: #fff;
	color: #111;
	border-radius: 14px;
	box-shadow: 0 12px 44px rgba(0, 0, 0, 0.28);
	padding: 16px;
	display: none;
	direction: rtl;
	font-family: "Heebo", Arial, sans-serif;
}

.bb-a11y-panel[data-open="true"] { display: block; }

.bb-a11y-panel__title {
	font-size: 16px;
	font-weight: 800;
	margin: 0 0 12px;
	padding-bottom: 10px;
	border-bottom: 1px solid #eee;
	color: #111;
}

.bb-a11y-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}

.bb-a11y-btn {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
	text-align: center;
	background: #f4f5f7;
	border: 2px solid transparent;
	border-radius: 10px;
	padding: 12px 6px;
	font-family: inherit;
	font-size: 12px;
	font-weight: 600;
	color: #222;
	cursor: pointer;
	transition: background 0.15s ease, border-color 0.15s ease;
	line-height: 1.3;
}

.bb-a11y-btn:hover { background: #e9ebf0; }
.bb-a11y-btn:focus-visible { outline: 2px solid #1e4fd8; outline-offset: 1px; }
.bb-a11y-btn[aria-pressed="true"] { border-color: #1e4fd8; background: #e7edff; color: #1e4fd8; }
.bb-a11y-btn svg { width: 22px; height: 22px; }

.bb-a11y-reset {
	width: 100%;
	margin-top: 10px;
	background: #111;
	color: #fff;
	border: none;
	border-radius: 10px;
	padding: 11px;
	font-family: inherit;
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
}

.bb-a11y-reset:hover { background: #333; }

.bb-a11y-panel__foot {
	margin-top: 10px;
	text-align: center;
	font-size: 12px;
}

.bb-a11y-panel__foot a { color: #1e4fd8; text-decoration: none; font-weight: 600; }

/* ---- applied states (on <html>) --------------------------------- */

html.bb-a11y-fs-1 { font-size: 112.5%; }
html.bb-a11y-fs-2 { font-size: 125%; }
html.bb-a11y-fs-3 { font-size: 140%; }

html.bb-a11y-grayscale body { filter: grayscale(100%); }

html.bb-a11y-contrast-dark body {
	background: #000 !important;
	filter: contrast(1.15);
}
html.bb-a11y-contrast-dark body * {
	background-color: transparent !important;
	color: #ffff00 !important;
	border-color: #ffff00 !important;
}
html.bb-a11y-contrast-dark img,
html.bb-a11y-contrast-dark svg,
html.bb-a11y-contrast-dark iframe { filter: none; }

html.bb-a11y-contrast-light body { background: #fff !important; filter: contrast(1.1); }
html.bb-a11y-contrast-light body * { color: #000 !important; }

html.bb-a11y-links a { text-decoration: underline !important; outline: 2px dashed #1e4fd8 !important; outline-offset: 2px; }

html.bb-a11y-readable * {
	font-family: Arial, "Helvetica Neue", sans-serif !important;
	letter-spacing: normal !important;
	line-height: 1.7 !important;
}

html.bb-a11y-noanim *,
html.bb-a11y-noanim *::before,
html.bb-a11y-noanim *::after {
	animation: none !important;
	transition: none !important;
	scroll-behavior: auto !important;
}
html.bb-a11y-noanim .bb-hero__canvas { display: none !important; }

html.bb-a11y-cursor,
html.bb-a11y-cursor * {
	cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='48' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' stroke='%23fff' stroke-width='1' d='M5 2l14 11-6 1 4 7-3 2-4-7-5 4z'/%3E%3C/svg%3E") 4 2, auto !important;
}

.bb-a11y-guide {
	position: fixed;
	left: 0;
	right: 0;
	height: 28px;
	background: rgba(255, 235, 0, 0.28);
	border-top: 2px solid rgba(0, 0, 0, 0.5);
	border-bottom: 2px solid rgba(0, 0, 0, 0.5);
	z-index: 9997;
	pointer-events: none;
	display: none;
}
html.bb-a11y-guide-on .bb-a11y-guide { display: block; }

@media print {
	.bb-a11y-toggle, .bb-a11y-panel, .bb-a11y-guide { display: none !important; }
}
