/* ===========================
   DESKTOP NAVIGATION
=========================== */

.desktop-nav{
	display:flex;
	align-items:center;
	gap:clamp(14px,1.6vw,30px);
	height:100%;
	gap: 28px;
	margin-left: auto;
	margin-right: 74px;
	}
.nav-link{
	position:relative;
	display:inline-flex;
	align-items:center;
	height:100%;
	color:var(--color-dark);
	font-family:"Oswald",sans-serif;
	font-size:13px;
	font-weight:600;
	letter-spacing:.08em;
	white-space:nowrap;
	transition:color var(--transition-fast),text-shadow var(--transition-fast)
}

/* SOTTOLINEATURA LUMINOSA ROSSA */
.nav-link::after{
	content:"";
	position:absolute;
	left:0;
	right:0;
	bottom:18px;
	height:2px;
	opacity:0;
	transform:scaleX(.25);
	background:radial-gradient(ellipse at center,var(--color-red-light) 0%,var(--color-red) 28%,rgba(209,26,42,.45) 58%,transparent 100%);
	filter:drop-shadow(0 0 5px rgba(209,26,42,.7));
	transition:opacity var(--transition),transform var(--transition)
}
.nav-link:hover,.nav-link.is-active{
	color:var(--color-red);
	text-shadow:0 0 8px rgba(209,26,42,.18)
}
.nav-link:hover::after,.nav-link.is-active::after{
	opacity:1;
	transform:scaleX(1)
}

/* ===========================
   CONTACT BUTTON
=========================== */

.nav-contact{
	height:38px;padding:0 15px;
	border:1px solid var(--color-red);
	border-radius:2px;
	color:var(--color-red)
}

/* effetto linea sul pulsante */
.nav-contact::after{
	bottom:-1px;
	left:-1px;
	right:-1px;
	transform:scaleX(.25)
}
.nav-contact:hover{
	color:var(--color-red);
	background:rgba(209,26,42,.05);
	box-shadow:0 0 16px rgba(209,26,42,.16)
}
.nav-contact:hover::after,.nav-contact.is-active::after{
	opacity:1;
	transform:scaleX(1)
}

/* ===========================
   LANGUAGE SWITCHER
=========================== */

.language-switcher {
    position: absolute;
    right: 40px;
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    height: auto;
    white-space: nowrap;
    flex-shrink: 0;
    font-family: "Oswald", sans-serif;
    font-size: 12px;
    letter-spacing: .08em;
}
.language {
    display: inline-flex;
    align-items: center;
    height: auto;
    color: rgba(0, 0, 0, .58);
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1px;
    text-decoration: none;
    transition:
        color var(--transition-fast),
        text-shadow var(--transition-fast);
}
.language:hover,.language.is-active{
	color:var(--color-red);
	text-shadow:0 0 8px rgba(209,26,42,.3)
}
.language-divider{
	color:rgba(0,0,0,.25)
}

/* ===========================
   MOBILE MENU
=========================== */

.mobile-menu{
	position:fixed;
	inset:0;
	z-index:900;
	visibility:hidden;
	opacity:0;
	pointer-events:none;
	background:rgba(12,12,14,.97);
	backdrop-filter:blur(16px);
	-webkit-backdrop-filter:blur(16px);
	transform:translateY(-12px);
	transition:opacity var(--transition),transform var(--transition),visibility var(--transition)
}
.mobile-menu.is-open{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0)}
.mobile-menu-inner{width:100%;height:100%;padding:calc(var(--header-height) + 30px) 28px 40px;overflow-y:auto}
.mobile-link{display:block;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.12);color:var(--color-white);font-family:"Oswald",sans-serif;font-size:20px;letter-spacing:.08em}
.mobile-link.is-active{color:var(--color-red-light)}
.mobile-contact{margin-top:20px;padding:15px 18px;border:1px solid var(--color-red);color:var(--color-red-light);text-align:center}
