/* Only Blocksy's primary offcanvas navigation; no desktop or portal selectors.
 * Native lists, link destinations, disclosure state and keyboard handling stay
 * with Blocksy. Font families reuse the site's existing Bunny Fonts. */
#offcanvas .mobile-menu[data-id="mobile-menu"] {
	--horizontal-alignment: flex-start;
	--text-horizontal-alignment: start;
	--items-vertical-spacing: 8px;
	--mobile-menu-divider: none;
	color: #f5f5f5;
}

#offcanvas .mobile-menu[data-id="mobile-menu"] li {
	align-items: stretch;
}

#offcanvas .mobile-menu[data-id="mobile-menu"] > ul > li {
	margin-block: 0;
	border-block-end: 1px solid #292929;
}

#offcanvas .mobile-menu[data-id="mobile-menu"] .ct-sub-menu-parent {
	width: 100%;
	column-gap: 8px;
}

#offcanvas .mobile-menu[data-id="mobile-menu"] .ct-menu-link {
	box-sizing: border-box;
	min-width: 0;
	min-height: 44px;
	flex: 1 1 auto;
	justify-content: flex-start;
	text-align: start;
	white-space: normal;
	overflow-wrap: anywhere;
	gap: 10px;
}

#offcanvas .mobile-menu[data-id="mobile-menu"] > ul > li > .ct-menu-link,
#offcanvas .mobile-menu[data-id="mobile-menu"] > ul > li > .ct-sub-menu-parent > .ct-menu-link {
	min-height: 56px;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.25;
	letter-spacing: 0;
	text-transform: uppercase;
	color: #f5f5f5;
}

#offcanvas .mobile-menu[data-id="mobile-menu"] .ct-icon-container {
	flex: 0 0 24px;
	width: 24px;
	height: 24px;
	margin-inline-end: 0;
}

#offcanvas .mobile-menu[data-id="mobile-menu"] .ct-icon-container svg {
	width: 24px;
	height: 24px;
}

#offcanvas .mobile-menu[data-id="mobile-menu"] .ct-toggle-dropdown-mobile {
	--toggle-button-size: 44px;
	--toggle-button-margin-end: 0;
	--toggle-button-border-color: #505050;
	flex: 0 0 44px;
	width: 44px;
	height: 44px;
	min-height: 44px;
	margin-inline: 0;
	color: #dedede;
}

#offcanvas .mobile-menu[data-id="mobile-menu"] .menu-item-has-children > .sub-menu {
	box-sizing: border-box;
	width: calc(100% - 12px);
	margin-inline: 12px 0;
	padding-inline: 20px 0;
	border-inline-start: 1px solid #505050;
}

#offcanvas .mobile-menu[data-id="mobile-menu"] .sub-menu .ct-menu-link {
	--menu-item-padding: 9px 4px;
	font-family: Inter, sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: 0;
	text-transform: none;
	color: #dedede;
	flex-wrap: wrap;
	column-gap: 8px;
	row-gap: 4px;
}

#offcanvas .mobile-menu[data-id="mobile-menu"] .sub-menu > li:last-child {
	margin-block-end: 12px;
}

#offcanvas .mobile-menu[data-id="mobile-menu"] .ct-menu-badge {
	flex: 0 0 auto;
	font-family: Inter, sans-serif;
	font-size: 10px;
	font-weight: 600;
	line-height: 1.5;
	letter-spacing: 0;
	background: #252525;
	color: #dedede;
	border: 1px solid #505050;
	border-radius: 3px;
	padding: 2px 6px;
}

#offcanvas .mobile-menu[data-id="mobile-menu"] .ct-menu-link:hover {
	color: #ccff00;
}

#offcanvas .mobile-menu[data-id="mobile-menu"] .dropdown-active > .ct-sub-menu-parent > .ct-menu-link {
	color: #ccff00;
}

#offcanvas .mobile-menu[data-id="mobile-menu"] .current-menu-item > .ct-menu-link,
#offcanvas .mobile-menu[data-id="mobile-menu"] .current-menu-item > .ct-sub-menu-parent > .ct-menu-link,
#offcanvas .mobile-menu[data-id="mobile-menu"] .ct-menu-link[aria-current="page"] {
	color: #ccff00;
	text-decoration: underline;
	text-underline-offset: 4px;
}

#offcanvas .mobile-menu[data-id="mobile-menu"] .ct-menu-link:focus-visible,
#offcanvas .mobile-menu[data-id="mobile-menu"] .ct-toggle-dropdown-mobile:focus-visible {
	outline: 2px solid #ccff00;
	outline-offset: -2px;
}
