/* NOVACARZ – bandeau cookies et contenus tiers, dans la charte du site */
.nvz-cookies {
	position: fixed; left: 24px; bottom: 24px; z-index: 99999; width: min(400px, calc(100vw - 32px));
	padding: 24px; border-radius: 16px; background: #050B20; color: rgba(255, 255, 255, .82);
	box-shadow: 0 24px 60px rgba(5, 11, 32, .35); font: 400 14px/1.6 "DM Sans", sans-serif;
	opacity: 0; transform: translateY(14px); transition: opacity .35s ease, transform .35s ease;
}
.nvz-cookies.is-visible { opacity: 1; transform: none; }
.nvz-cookies__title {
	margin: 0 0 8px; font: 600 19px/1.3 "Plus Jakarta Sans", sans-serif; color: #fff;
	background: linear-gradient(217deg, #DAB37E 0%, #F7EBC7 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
.nvz-cookies__text { margin: 0 0 18px; }
.nvz-cookies__text a { color: #F7EBC7; text-decoration: underline; text-underline-offset: 3px; }
.nvz-cookies__prefs { margin: 0 0 16px; border-top: 1px solid rgba(255, 255, 255, .12); }
.nvz-cookies__pref { display: flex !important; align-items: center; justify-content: space-between; gap: 14px; padding: 12px 0; border-bottom: 1px solid rgba(255, 255, 255, .12); cursor: pointer; margin: 0 !important; }
.nvz-cookies__pref strong { display: block; color: #fff; font-weight: 600; }
.nvz-cookies__pref small { display: block; color: rgba(255, 255, 255, .6); font-size: 12.5px; }
.nvz-cookies__pref input { width: 18px; height: 18px; accent-color: #DAB37E; flex: none; }
.nvz-cookies__actions { display: flex; gap: 10px; }
.nvz-cookies__actions .nvz-btn { flex: 1; }
.nvz-cookies__custom {
	display: block; margin: 14px auto 0; padding: 0; border: 0; background: none; color: rgba(255, 255, 255, .7);
	font: 500 13px/1 "DM Sans", sans-serif; text-decoration: underline; text-underline-offset: 3px; cursor: pointer;
}
.nvz-cookies__custom:hover { color: #F7EBC7; }
.nvz-cookies__save { width: 100%; }

.nvz-btn {
	display: inline-flex; align-items: center; justify-content: center; padding: 13px 20px; border-radius: 44px;
	border: 1px solid transparent; font: 600 14px/1 "DM Sans", sans-serif; cursor: pointer; transition: transform .15s ease, filter .15s ease, background .15s ease;
}
.nvz-btn--gold { background: linear-gradient(217deg, #DAB37E 0%, #F7EBC7 100%); color: #050B20; }
.nvz-btn--gold:hover { filter: brightness(1.05); transform: translateY(-1px); }
.nvz-btn--ghost { background: transparent; border-color: rgba(255, 255, 255, .3); color: #fff; }
.nvz-btn--ghost:hover { border-color: #DAB37E; color: #F7EBC7; }

/* Encart à la place d'une vidéo ou d'une carte tant que l'accord n'est pas donné */
.nvz-gate { position: relative; display: block; width: 100%; min-height: 260px; border-radius: 16px; overflow: hidden; background: #050B20; }
.nvz-gate__box { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 16px; padding: 24px; text-align: center; }
.nvz-gate__text { max-width: 360px; color: rgba(255, 255, 255, .82); font: 400 14px/1.6 "DM Sans", sans-serif; }
.nvz-gate + iframe[data-nvz-src] { display: none; }

@media (max-width: 767px) {
	.nvz-cookies { left: 16px; right: 16px; bottom: 16px; width: auto; padding: 20px; }
}
@media (prefers-reduced-motion: reduce) { .nvz-cookies { transition: none; } }

/* Les éléments masqués restent masqués malgré les styles de boutons */
.nvz-cookies[hidden], .nvz-cookies [hidden] { display: none !important; }
