/*
Theme Name: Bishop Media
Description: Child theme for the Avada
Author: Bishop Media AB
Template: Avada
Text Domain: bishop
*/

/* =========================================================
   3.Contrast issues when zooming
   ========================================================= */

/*
 * Home, unsticky
*/

/* Stabilize header contrast and separation */

@media only screen and (min-width: 1141px) {
	body.home .fusion-header-wrapper,
	body.home .fusion-header-v1,
	body.home .fusion-header {
		background-color: rgba( 0, 0, 0, 0.33 ) !important;
		box-shadow: 0 1px 0 rgba( 255, 255, 255, 0.15 );
	}
}

/* Hover & keyboard focus */
body.home .fusion-main-menu a:hover,
body.home .fusion-main-menu a:focus,
body.home .fusion-main-menu a:focus-visible,
body.home .fusion-mobile-menu a:hover,
body.home .fusion-mobile-menu a:focus,
body.home .fusion-mobile-menu a:focus-visible {
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

/* Explicit focus */
body.home .fusion-main-menu a:focus-visible,
body.home .fusion-mobile-menu a:focus-visible,
body.home .fusion-header a:focus-visible {
	outline: 2px solid #ffffff;
	outline-offset: 2px;
}

/* Dropdown menus: dark background, light text */
body.home .fusion-main-menu .fusion-megamenu {
	/* background-color: rgba( 0, 0, 0, 0.50 ) !important; */
}

body.home .fusion-main-menu .sub-menu a,
body.home .fusion-main-menu .fusion-dropdown-menu a {
	color: #ffffff !important;
}

/*
 * Home, sticky
*/

/* Stabilize header contrast and separation */
body.home .fusion-header-wrapper.fusion-is-sticky,
body.home .fusion-header-wrapper.fusion-is-sticky .fusion-header-v1,
body.home .fusion-header-wrapper.fusion-is-sticky .fusion-header {
	background-color: #fff !important;
}

/* Dark text for main menu navigation */
body.home .fusion-header-wrapper.fusion-is-sticky .fusion-main-menu a,
body.home .fusion-header-wrapper.fusion-is-sticky .fusion-main-menu .fusion-dropdown-menu a,
body.home .fusion-header-wrapper.fusion-is-sticky .fusion-menu a,
body.home .fusion-header-wrapper.fusion-is-sticky .fusion-mobile-menu a {
	color: #000 !important;
}

/* Light text for sub-main navigation */
body.home .fusion-header-wrapper.fusion-is-sticky .fusion-megamenu-submenu .sub-menu a {
	color: #FFF !important;
}

/* Explicit focus */
body.home .fusion-header-wrapper.fusion-is-sticky .fusion-main-menu a:focus-visible,
body.home .fusion-header-wrapper.fusion-is-sticky .fusion-mobile-menu a:focus-visible,
body.home .fusion-header-wrapper.fusion-is-sticky .fusion-header a:focus-visible {
	outline: 2px solid #000;
}

/*
 * Not home
 */

body:not(.home) .fusion-megamenu-holder {
	background-color: #000 !important;
	border: 1px solid #FFF !important;
}


body:not(.home).fusion-body .fusion-main-menu .sub-menu .current_page_item > a {
	color: #fff !important;
	font-weight: 700;
}

/*
 * All pages
 */

/* Hover & keyboard focus */
.fusion-main-menu a:hover,
.fusion-main-menu a:focus,
.fusion-main-menu a:focus-visible,
.fusion-mobile-menu a:hover,
.fusion-mobile-menu a:focus,
.fusion-mobile-menu a:focus-visible {
	text-decoration: underline;
	text-underline-offset: 0.2em;
}

/* Explicit focus */
.fusion-main-menu a:focus-visible,
.fusion-mobile-menu a:focus-visible,
.fusion-header a:focus-visible {
	outline: 2px solid #000;
	outline-offset: 2px;
}

/**
 * Zoom handling
 */

/* Prevent clipping at ~200% text size */
.fusion-header-wrapper,
.fusion-header,
.fusion-header .fusion-row,
.fusion-header .fusion-header-content-1-wrapper,
.fusion-header .fusion-header-content-2-wrapper,
.fusion-header .fusion-header-content-3-wrapper {
	height: auto !important;
	min-height: 0 !important;
}


/* Allow wrapping and breathing room for large text */
.fusion-main-menu > ul > li > a,
.fusion-main-menu a {
	line-height: 1.3 !important;
	padding-top: 0.75em !important;
	padding-bottom: 0.75em !important;
}

/* Encourage wrapping before layout breaks under zoom */
@media ( max-width: 1100px ) {
	.fusion-main-menu > ul {
		flex-wrap: wrap;
	}
}

/* Ensure header stays above hero/slider content */
.fusion-header-wrapper {
	position: relative;
	z-index: 9999;
}

/**
 * Misc
 */

/* Mega menu title pills: prevent column-overflow overlap by allowing wrapping */
.fusion-megamenu .fusion-megamenu-title a {
	width: 100%;
}

/* =========================================================
   4. Keyboard navigation
   ========================================================= */

/* Global keyboard focus – minimal, non-invasive */
a:focus-visible,
button:focus-visible,
[tabindex]:focus-visible {
	outline: 3px solid #005fcc;
	outline-offset: 2px;
}

/* Avada-specific elements */
.fusion-main-menu a:focus-visible,
.keyboard-click:focus-visible {
	outline: 3px solid #005fcc;
}

/* Make Views radio filters keyboard accessible */
.events-filter .wpv-filter-form input[type="radio"] {
	display: block !important;
	position: absolute !important;
	left: -9999px !important;
	opacity: 0 !important;
}

/* Ensure labels show focus when radio receives focus */
.events-filter .wpv-filter-form input[type="radio"]:focus + label {
	outline: 3px solid #005fcc;
	outline-offset: 4px;
}

/* Make radio labels tabbable */
.events-filter .wpv-filter-form .radios-taxonomies-title {
	cursor: pointer;
}

/* Ensure radio filter labels render focus correctly */
.events-filter .wpv-filter-form label.radios-taxonomies-title {
	display: inline-block;
	pointer-events: auto;
}

/* =========================================================
   Mobile menu focus – clipping-proof ring
   ========================================================= */

.fusion-mobile-nav-holder a:focus,
.fusion-mobile-nav-holder a:focus-visible {
	outline: none !important;
	box-shadow: inset 0 0 0 3px #005fcc !important;
	border-radius: 2px;
}

.fusion-mobile-nav-holder button.fusion-open-submenu:focus,
.fusion-mobile-nav-holder button.fusion-open-submenu:focus-visible {
	outline: none !important;
	box-shadow: inset 0 0 0 3px #005fcc !important;
	border-radius: 2px;
}

@media only screen and (min-width: 1141px) {
	.home header:not(.fusion-is-sticky) .fusion-logo img.fusion-standard-logo {
		display: block;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		background: url(/wp-content/uploads/lunnevad-logo-vit-rgb-small.svg) no-repeat !important;
		width: 180px;
		height: 59px !important;
		padding-left: 180px;
	}
}