/* ---- Pied de page foncé : logo + liens de navigation ---- */
.nt-sitefooter {
	background: radial-gradient(130% 100% at 50% 100%, #22314f 0%, #172640 52%, #101d33 100%);
	color: var(--nt-color-text);
}
.nt-sitefooter__inner {
	max-width: 1320px;
	margin: 0 auto;
	padding: calc(var(--nt-gutter) * 2.5) var(--nt-gutter) calc(var(--nt-gutter) * 1.5);
}
.nt-sitefooter__logo {
	display: inline-flex;
	align-items: center;
	margin-bottom: calc(var(--nt-gutter) * 1.75);
	text-decoration: none;
}
.nt-sitefooter__logo .custom-logo,
.nt-sitefooter__logo .nt-logo-img {
	height: clamp(58px, 17vw, 88px);
	width: auto;
	max-width: 200px;
	object-fit: contain;
	display: block;
}

.nt-sitefooter__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(1.15rem, 4.5vw, 1.75rem) var(--nt-gutter);
}
.nt-sitefooter__link {
	color: var(--nt-color-text);
	text-decoration: none;
	font-size: clamp(1.05rem, 3.6vw, 1.2rem);
}
.nt-sitefooter__link:hover { color: #fff; }

.nt-sitefooter__sep {
	height: 0;
	border: 0;
	border-top: 1px solid rgba(255, 255, 255, 0.16);
	margin: calc(var(--nt-gutter) * 2.25) 0 0;
}

@media (min-width: 1024px) {
	.nt-sitefooter__list {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		max-width: 900px;
	}
}

/* ---- Suite du pied de page : Visite también, idioma, app ---- */
.nt-sitefooter__block { margin-top: calc(var(--nt-gutter) * 1.5); }
.nt-sitefooter__heading {
	margin: 0 0 var(--nt-gutter);
	color: var(--nt-color-muted);
	font-size: 0.95rem;
	font-weight: 600;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}
.nt-sitefooter__list--single { grid-template-columns: 1fr; gap: var(--nt-gutter); }
.nt-sitefooter__apptitle {
	margin: 0 0 var(--nt-gutter);
	color: var(--nt-color-muted);
	font-size: clamp(1.05rem, 3.6vw, 1.25rem);
	font-weight: 700;
}

/* Sélecteur de langue */
.nt-lang { position: relative; display: inline-flex; align-items: center; }
.nt-lang__select {
	appearance: none;
	-webkit-appearance: none;
	background: rgba(255, 255, 255, 0.14);
	color: var(--nt-color-text);
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 999px;
	padding: 0.7rem 2.6rem 0.7rem 1.4rem;
	font-size: 1.1rem;
	font-family: inherit;
	cursor: pointer;
	min-width: 160px;
}
.nt-lang__select:focus-visible { outline: 2px solid var(--nt-color-accent); outline-offset: 2px; }
.nt-lang__chevron {
	position: absolute;
	right: 1.15rem;
	top: 50%;
	width: 9px;
	height: 9px;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: translateY(-70%) rotate(45deg);
	pointer-events: none;
}

/* Badges app (décoratifs) */
.nt-apps { display: flex; flex-wrap: wrap; gap: 0.75rem; }
.nt-app {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	background: #000;
	color: #fff;
	text-decoration: none;
	border: 1px solid rgba(255, 255, 255, 0.25);
	border-radius: 12px;
	padding: 0.6rem 1.1rem;
	min-width: 168px;
}
.nt-app:hover { border-color: rgba(255, 255, 255, 0.5); }
.nt-app__icon { display: inline-flex; }
.nt-app__txt { display: flex; flex-direction: column; line-height: 1.05; }
.nt-app__txt small { font-size: 0.7rem; opacity: 0.9; }
.nt-app__txt strong { font-size: 1.15rem; font-weight: 600; }

/* Bas de page légal */
.nt-sitefooter__legal { margin-top: calc(var(--nt-gutter) * 2); }
.nt-sitefooter__legallinks { margin-bottom: calc(var(--nt-gutter) * 1.75); }
.nt-sitefooter__copyright {
	margin: 0 0 var(--nt-gutter);
	color: var(--nt-color-muted);
	font-size: clamp(1rem, 3.4vw, 1.15rem);
}
.nt-sitefooter__disclaimer {
	margin: 0;
	color: var(--nt-color-muted);
	font-size: 0.9rem;
	line-height: 1.5;
	max-width: 62ch;
}
