/* Complements : proprietes non exprimables dans le schema de style Elementor. */

.elementor .switcher-tab-main,
.elementor .switcher-tab-sub,
.elementor .topbar-phone,
.elementor .rail-date-text,
.elementor .date-day,
.elementor .date-month { white-space: nowrap; }

.elementor .switcher-tab-sub { opacity: .72; }
.elementor .switcher-tab-on .switcher-tab-sub { opacity: .6; }

.elementor .ticker-item { white-space: nowrap; }
.elementor .marquee-logo-img { max-width: none; }

.elementor .lede,
.elementor .lede-light,
.elementor .body-text,
.elementor .quote-text,
.elementor .hero-title,
.elementor .hero-sub { text-wrap: pretty; }

/* Le panneau du menu mobile doit primer sur la classe globale (display:none). */
.slatel-header.is-nav-open .elementor .slatel-mobile-nav { display: flex; }

/* Reduction des animations : rendre le contenu du hero visible. */
@media (prefers-reduced-motion: reduce) {
	.elementor .hero-frame.e--selected .hero-eyebrow,
	.elementor .hero-frame.e--selected .hero-title,
	.elementor .hero-frame.e--selected .hero-sub,
	.elementor .hero-frame.e--selected .hero-cta,
	.elementor .hero-frame.e--selected .hero-frame-img { animation: none !important; opacity: 1 !important; transform: none !important; }
}

/* Accordeon des poles (page Formations) */
.elementor .card-pole.is-open .pole-body { display: flex; }
.elementor .card-pole.is-open .pole-head { background: var(--marine-wash); }
.elementor .card-pole.is-open .pole-num { background: var(--rouge); }
.elementor .pole-sign { transition: transform .3s ease, background .3s ease, color .3s ease; }
.elementor .card-pole.is-open .pole-sign { transform: rotate(45deg); background: var(--rouge); border-color: var(--rouge); color: var(--white); }

/* ---- Mega-menu Formations (pilote en JS, voir slatel.js) ---- */
.elementor .nav-item.is-open .mega { display: flex; }
.elementor .nav-item.is-open > .nav-link { color: var(--rouge); border-color: var(--rouge); }
@media (max-width: 1024px) { .elementor .mega { display: none !important; } }

/* ---- Defilement fluide et decalage sous le header collant ---- */
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
.elementor [id^="pole-"],
.elementor #semestre,
.elementor #sessions,
.elementor #domaines,
.elementor #corps-enseignant,
.elementor #formulaire { scroll-margin-top: 150px; }
@media (max-width: 767px) { .elementor [id^="pole-"], .elementor #semestre, .elementor #sessions, .elementor #domaines, .elementor #corps-enseignant, .elementor #formulaire { scroll-margin-top: 120px; } }

/* ---- Tuiles de poles cliquables (accueil) ---- */
.elementor a.pole-tile { text-decoration: none; }
