/*
Theme Name: Avada Child
Description: Child theme for Avada theme
Author: ThemeFusion
Author URI: https://theme-fusion.com
Template: Avada
Version: 1.0.0
Text Domain:  Avada
*/

/* Slightly narrower logo to give nav menu more breathing room */
.fusion-logo img {
	max-width: 330px !important;
}

/* Language switcher — inline trigger with hover dropdown */

/* Avada sets overflow:hidden on .fusion-main-menu — override so the
   dropdown card can escape the nav clip. */
.fusion-main-menu {
	overflow: visible !important;
}

.fusion-main-menu::after {
	content: "";
	display: table;
	clear: both;
}

/* Normal floated menu item, tight against preceding item */
.fusion-main-menu > ul > .menu-item-language-switcher {
	float: left !important;
	width: auto !important;
	position: relative !important;
	padding: 0 0 0 5px !important;
	margin: 0 0 0 -10px !important;
	overflow: visible !important;
}

/* Inline trigger container, vertically centred in nav height */
.menu-item-language-switcher .lang-nav-wrap {
	position: relative;
	display: flex;
	align-items: center;
	height: var(--nav_height, 78px);
	white-space: nowrap;
}

/* Flag images hidden on desktop (base rule) */
.lang-flag {
	display: none;
}

/* Current language: trigger label */
.lang-current {
	display: flex;
	align-items: center;
	gap: 4px;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: rgba(35, 31, 32, 0.55);
	cursor: pointer;
	user-select: none;
	line-height: 1;
	transition: color 0.15s ease;
}

/* Dropdown caret */
.lang-current::after {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-left: 3.5px solid transparent;
	border-right: 3.5px solid transparent;
	border-top: 4px solid currentColor;
	transition: transform 0.2s ease;
}

/* Trigger hover state */
.menu-item-language-switcher:hover .lang-current,
.menu-item-language-switcher:focus-within .lang-current {
	color: #2089d8;
}

/* Rotate caret on hover */
.menu-item-language-switcher:hover .lang-current::after,
.menu-item-language-switcher:focus-within .lang-current::after {
	transform: rotate(180deg);
}

/* Middot separator hidden on desktop */
.lang-sep {
	display: none;
}

/* Dropdown card: alternate language link */
.menu-item-language-switcher .lang-alt-link {
	position: absolute;
	top: calc(100% - 15px);
	left: 0;
	transform: translateY(-4px);
	display: flex !important;
	align-items: center;
	gap: 6px;
	padding: 6px 10px;
	background: #fff;
	border-radius: 4px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: #2089d8 !important;
	text-decoration: none !important;
	white-space: nowrap;
	line-height: 1;
	height: auto !important;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.2s ease, transform 0.2s ease;
	z-index: 210;
}

/* Show dropdown on hover / keyboard focus */
.menu-item-language-switcher:hover .lang-alt-link,
.menu-item-language-switcher:focus-within .lang-alt-link {
	opacity: 1;
	pointer-events: auto;
	transform: translateY(0);
}

/* Dropdown hover highlight */
.menu-item-language-switcher .lang-alt-link:hover {
	background: #f0f7fd;
	color: #0e6fc5 !important;
}

/* ── Mobile ─────────────────────────────────────────── */

/* Positioning context for the absolutely-placed pill.
   min-height keeps the row open since the pill is out of flow. */
.fusion-mobile-nav-holder .menu-item-language-switcher {
	position: relative !important;
	display: block !important;
	float: none !important;
	width: 100% !important;
	min-height: 45px !important;
	margin: 0 !important;
	padding: 0 !important;
	border-top: 1px solid rgba(27, 47, 69, 0.10) !important;
	box-sizing: border-box !important;
	overflow: visible !important;
}

/* Pill: absolutely pinned to the right, vertically centred in the row */
.fusion-mobile-nav-holder .lang-nav-wrap {
	position: absolute !important;
	right: 24px !important;
	top: 50% !important;
	transform: translateY(-50%) !important;
	display: flex !important;
	align-items: stretch !important;
	gap: 0;
	border: 1.5px solid rgba(27, 47, 69, 0.20);
	border-radius: 6px;
	overflow: hidden;
	white-space: nowrap;
}

/* Show flag image, hide text label on mobile */
.fusion-mobile-nav-holder .lang-label {
	display: none !important;
}

.fusion-mobile-nav-holder .lang-flag {
	display: flex !important;
	align-items: center;
}

/* Fixed dimensions keep both flag images the same size */
.fusion-mobile-nav-holder .lang-flag img {
	display: block;
	width: 24px;
	height: 15px;
	object-fit: cover;
	border-radius: 1px;
}

/* Inactive left half */
.fusion-mobile-nav-holder .lang-current {
	display: flex !important;
	align-items: center;
	padding: 8px 11px !important;
	border: none !important;
	border-right: 1px solid rgba(27, 47, 69, 0.18) !important;
	border-radius: 0 !important;
	color: inherit !important;
	background: #f5f6f7;
	cursor: default;
	opacity: 1 !important;
}

/* Active right half */
.fusion-mobile-nav-holder .lang-alt-link {
	display: flex !important;
	align-items: center;
	padding: 8px 11px !important;
	border: none !important;
	border-radius: 0 !important;
	background: #edf5fc;
	color: #2089d8 !important;
	text-decoration: none !important;
	transition: background 0.15s ease;
}

.fusion-mobile-nav-holder .lang-alt-link:hover,
.fusion-mobile-nav-holder .lang-alt-link:focus-visible {
	background: #d6e9f8;
	text-decoration: none !important;
}

/* Dot separator hidden on mobile */
.fusion-mobile-nav-holder .lang-sep {
	display: none !important;
}

.fusion-mobile-nav-holder .lang-current::after {
	display: none !important;
}

/* Bio page portrait image */
.bio-portrait {
	float: right;
	max-width: 250px;
	margin: 0 0 1.5em 2em;
	border-radius: 6px;
}

@media (max-width: 640px) {
	.bio-portrait {
		float: none;
		display: block;
		max-width: 200px;
		margin: 0 auto 1.5em;
	}
}
