/**
bundle.css
 */
[data-aos][data-aos][data-aos-duration="50"],
body[data-aos-duration="50"] [data-aos] {
    transition-duration: 50ms;
}

[data-aos][data-aos][data-aos-delay="50"],
body[data-aos-delay="50"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="50"].aos-animate,
body[data-aos-delay="50"] [data-aos].aos-animate {
    transition-delay: 50ms;
}

[data-aos][data-aos][data-aos-duration="100"],
body[data-aos-duration="100"] [data-aos] {
    transition-duration: 0.1s;
}

[data-aos][data-aos][data-aos-delay="100"],
body[data-aos-delay="100"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="100"].aos-animate,
body[data-aos-delay="100"] [data-aos].aos-animate {
    transition-delay: 0.1s;
}

[data-aos][data-aos][data-aos-duration="150"],
body[data-aos-duration="150"] [data-aos] {
    transition-duration: 0.15s;
}

[data-aos][data-aos][data-aos-delay="150"],
body[data-aos-delay="150"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="150"].aos-animate,
body[data-aos-delay="150"] [data-aos].aos-animate {
    transition-delay: 0.15s;
}

[data-aos][data-aos][data-aos-duration="200"],
body[data-aos-duration="200"] [data-aos] {
    transition-duration: 0.2s;
}

[data-aos][data-aos][data-aos-delay="200"],
body[data-aos-delay="200"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="200"].aos-animate,
body[data-aos-delay="200"] [data-aos].aos-animate {
    transition-delay: 0.2s;
}

[data-aos][data-aos][data-aos-duration="250"],
body[data-aos-duration="250"] [data-aos] {
    transition-duration: 0.25s;
}

[data-aos][data-aos][data-aos-delay="250"],
body[data-aos-delay="250"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="250"].aos-animate,
body[data-aos-delay="250"] [data-aos].aos-animate {
    transition-delay: 0.25s;
}

[data-aos][data-aos][data-aos-duration="300"],
body[data-aos-duration="300"] [data-aos] {
    transition-duration: 0.3s;
}

[data-aos][data-aos][data-aos-delay="300"],
body[data-aos-delay="300"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="300"].aos-animate,
body[data-aos-delay="300"] [data-aos].aos-animate {
    transition-delay: 0.3s;
}

[data-aos][data-aos][data-aos-duration="350"],
body[data-aos-duration="350"] [data-aos] {
    transition-duration: 0.35s;
}

[data-aos][data-aos][data-aos-delay="350"],
body[data-aos-delay="350"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="350"].aos-animate,
body[data-aos-delay="350"] [data-aos].aos-animate {
    transition-delay: 0.35s;
}

[data-aos][data-aos][data-aos-duration="400"],
body[data-aos-duration="400"] [data-aos] {
    transition-duration: 0.4s;
}

[data-aos][data-aos][data-aos-delay="400"],
body[data-aos-delay="400"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="400"].aos-animate,
body[data-aos-delay="400"] [data-aos].aos-animate {
    transition-delay: 0.4s;
}

[data-aos][data-aos][data-aos-duration="450"],
body[data-aos-duration="450"] [data-aos] {
    transition-duration: 0.45s;
}

[data-aos][data-aos][data-aos-delay="450"],
body[data-aos-delay="450"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="450"].aos-animate,
body[data-aos-delay="450"] [data-aos].aos-animate {
    transition-delay: 0.45s;
}

[data-aos][data-aos][data-aos-duration="500"],
body[data-aos-duration="500"] [data-aos] {
    transition-duration: 0.5s;
}

[data-aos][data-aos][data-aos-delay="500"],
body[data-aos-delay="500"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="500"].aos-animate,
body[data-aos-delay="500"] [data-aos].aos-animate {
    transition-delay: 0.5s;
}

[data-aos][data-aos][data-aos-duration="550"],
body[data-aos-duration="550"] [data-aos] {
    transition-duration: 0.55s;
}

[data-aos][data-aos][data-aos-delay="550"],
body[data-aos-delay="550"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="550"].aos-animate,
body[data-aos-delay="550"] [data-aos].aos-animate {
    transition-delay: 0.55s;
}

[data-aos][data-aos][data-aos-duration="600"],
body[data-aos-duration="600"] [data-aos] {
    transition-duration: 0.6s;
}

[data-aos][data-aos][data-aos-delay="600"],
body[data-aos-delay="600"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="600"].aos-animate,
body[data-aos-delay="600"] [data-aos].aos-animate {
    transition-delay: 0.6s;
}

[data-aos][data-aos][data-aos-duration="650"],
body[data-aos-duration="650"] [data-aos] {
    transition-duration: 0.65s;
}

[data-aos][data-aos][data-aos-delay="650"],
body[data-aos-delay="650"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="650"].aos-animate,
body[data-aos-delay="650"] [data-aos].aos-animate {
    transition-delay: 0.65s;
}

[data-aos][data-aos][data-aos-duration="700"],
body[data-aos-duration="700"] [data-aos] {
    transition-duration: 0.7s;
}

[data-aos][data-aos][data-aos-delay="700"],
body[data-aos-delay="700"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="700"].aos-animate,
body[data-aos-delay="700"] [data-aos].aos-animate {
    transition-delay: 0.7s;
}

[data-aos][data-aos][data-aos-duration="750"],
body[data-aos-duration="750"] [data-aos] {
    transition-duration: 0.75s;
}

[data-aos][data-aos][data-aos-delay="750"],
body[data-aos-delay="750"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="750"].aos-animate,
body[data-aos-delay="750"] [data-aos].aos-animate {
    transition-delay: 0.75s;
}

[data-aos][data-aos][data-aos-duration="800"],
body[data-aos-duration="800"] [data-aos] {
    transition-duration: 0.8s;
}

[data-aos][data-aos][data-aos-delay="800"],
body[data-aos-delay="800"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="800"].aos-animate,
body[data-aos-delay="800"] [data-aos].aos-animate {
    transition-delay: 0.8s;
}

[data-aos][data-aos][data-aos-duration="850"],
body[data-aos-duration="850"] [data-aos] {
    transition-duration: 0.85s;
}

[data-aos][data-aos][data-aos-delay="850"],
body[data-aos-delay="850"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="850"].aos-animate,
body[data-aos-delay="850"] [data-aos].aos-animate {
    transition-delay: 0.85s;
}

[data-aos][data-aos][data-aos-duration="900"],
body[data-aos-duration="900"] [data-aos] {
    transition-duration: 0.9s;
}

[data-aos][data-aos][data-aos-delay="900"],
body[data-aos-delay="900"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="900"].aos-animate,
body[data-aos-delay="900"] [data-aos].aos-animate {
    transition-delay: 0.9s;
}

[data-aos][data-aos][data-aos-duration="950"],
body[data-aos-duration="950"] [data-aos] {
    transition-duration: 0.95s;
}

[data-aos][data-aos][data-aos-delay="950"],
body[data-aos-delay="950"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="950"].aos-animate,
body[data-aos-delay="950"] [data-aos].aos-animate {
    transition-delay: 0.95s;
}

[data-aos][data-aos][data-aos-duration="1000"],
body[data-aos-duration="1000"] [data-aos] {
    transition-duration: 1s;
}

[data-aos][data-aos][data-aos-delay="1000"],
body[data-aos-delay="1000"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1000"].aos-animate,
body[data-aos-delay="1000"] [data-aos].aos-animate {
    transition-delay: 1s;
}

[data-aos][data-aos][data-aos-duration="1050"],
body[data-aos-duration="1050"] [data-aos] {
    transition-duration: 1.05s;
}

[data-aos][data-aos][data-aos-delay="1050"],
body[data-aos-delay="1050"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1050"].aos-animate,
body[data-aos-delay="1050"] [data-aos].aos-animate {
    transition-delay: 1.05s;
}

[data-aos][data-aos][data-aos-duration="1100"],
body[data-aos-duration="1100"] [data-aos] {
    transition-duration: 1.1s;
}

[data-aos][data-aos][data-aos-delay="1100"],
body[data-aos-delay="1100"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1100"].aos-animate,
body[data-aos-delay="1100"] [data-aos].aos-animate {
    transition-delay: 1.1s;
}

[data-aos][data-aos][data-aos-duration="1150"],
body[data-aos-duration="1150"] [data-aos] {
    transition-duration: 1.15s;
}

[data-aos][data-aos][data-aos-delay="1150"],
body[data-aos-delay="1150"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1150"].aos-animate,
body[data-aos-delay="1150"] [data-aos].aos-animate {
    transition-delay: 1.15s;
}

[data-aos][data-aos][data-aos-duration="1200"],
body[data-aos-duration="1200"] [data-aos] {
    transition-duration: 1.2s;
}

[data-aos][data-aos][data-aos-delay="1200"],
body[data-aos-delay="1200"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1200"].aos-animate,
body[data-aos-delay="1200"] [data-aos].aos-animate {
    transition-delay: 1.2s;
}

[data-aos][data-aos][data-aos-duration="1250"],
body[data-aos-duration="1250"] [data-aos] {
    transition-duration: 1.25s;
}

[data-aos][data-aos][data-aos-delay="1250"],
body[data-aos-delay="1250"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1250"].aos-animate,
body[data-aos-delay="1250"] [data-aos].aos-animate {
    transition-delay: 1.25s;
}

[data-aos][data-aos][data-aos-duration="1300"],
body[data-aos-duration="1300"] [data-aos] {
    transition-duration: 1.3s;
}

[data-aos][data-aos][data-aos-delay="1300"],
body[data-aos-delay="1300"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1300"].aos-animate,
body[data-aos-delay="1300"] [data-aos].aos-animate {
    transition-delay: 1.3s;
}

[data-aos][data-aos][data-aos-duration="1350"],
body[data-aos-duration="1350"] [data-aos] {
    transition-duration: 1.35s;
}

[data-aos][data-aos][data-aos-delay="1350"],
body[data-aos-delay="1350"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1350"].aos-animate,
body[data-aos-delay="1350"] [data-aos].aos-animate {
    transition-delay: 1.35s;
}

[data-aos][data-aos][data-aos-duration="1400"],
body[data-aos-duration="1400"] [data-aos] {
    transition-duration: 1.4s;
}

[data-aos][data-aos][data-aos-delay="1400"],
body[data-aos-delay="1400"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1400"].aos-animate,
body[data-aos-delay="1400"] [data-aos].aos-animate {
    transition-delay: 1.4s;
}

[data-aos][data-aos][data-aos-duration="1450"],
body[data-aos-duration="1450"] [data-aos] {
    transition-duration: 1.45s;
}

[data-aos][data-aos][data-aos-delay="1450"],
body[data-aos-delay="1450"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1450"].aos-animate,
body[data-aos-delay="1450"] [data-aos].aos-animate {
    transition-delay: 1.45s;
}

[data-aos][data-aos][data-aos-duration="1500"],
body[data-aos-duration="1500"] [data-aos] {
    transition-duration: 1.5s;
}

[data-aos][data-aos][data-aos-delay="1500"],
body[data-aos-delay="1500"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1500"].aos-animate,
body[data-aos-delay="1500"] [data-aos].aos-animate {
    transition-delay: 1.5s;
}

[data-aos][data-aos][data-aos-duration="1550"],
body[data-aos-duration="1550"] [data-aos] {
    transition-duration: 1.55s;
}

[data-aos][data-aos][data-aos-delay="1550"],
body[data-aos-delay="1550"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1550"].aos-animate,
body[data-aos-delay="1550"] [data-aos].aos-animate {
    transition-delay: 1.55s;
}

[data-aos][data-aos][data-aos-duration="1600"],
body[data-aos-duration="1600"] [data-aos] {
    transition-duration: 1.6s;
}

[data-aos][data-aos][data-aos-delay="1600"],
body[data-aos-delay="1600"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1600"].aos-animate,
body[data-aos-delay="1600"] [data-aos].aos-animate {
    transition-delay: 1.6s;
}

[data-aos][data-aos][data-aos-duration="1650"],
body[data-aos-duration="1650"] [data-aos] {
    transition-duration: 1.65s;
}

[data-aos][data-aos][data-aos-delay="1650"],
body[data-aos-delay="1650"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1650"].aos-animate,
body[data-aos-delay="1650"] [data-aos].aos-animate {
    transition-delay: 1.65s;
}

[data-aos][data-aos][data-aos-duration="1700"],
body[data-aos-duration="1700"] [data-aos] {
    transition-duration: 1.7s;
}

[data-aos][data-aos][data-aos-delay="1700"],
body[data-aos-delay="1700"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1700"].aos-animate,
body[data-aos-delay="1700"] [data-aos].aos-animate {
    transition-delay: 1.7s;
}

[data-aos][data-aos][data-aos-duration="1750"],
body[data-aos-duration="1750"] [data-aos] {
    transition-duration: 1.75s;
}

[data-aos][data-aos][data-aos-delay="1750"],
body[data-aos-delay="1750"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1750"].aos-animate,
body[data-aos-delay="1750"] [data-aos].aos-animate {
    transition-delay: 1.75s;
}

[data-aos][data-aos][data-aos-duration="1800"],
body[data-aos-duration="1800"] [data-aos] {
    transition-duration: 1.8s;
}

[data-aos][data-aos][data-aos-delay="1800"],
body[data-aos-delay="1800"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1800"].aos-animate,
body[data-aos-delay="1800"] [data-aos].aos-animate {
    transition-delay: 1.8s;
}

[data-aos][data-aos][data-aos-duration="1850"],
body[data-aos-duration="1850"] [data-aos] {
    transition-duration: 1.85s;
}

[data-aos][data-aos][data-aos-delay="1850"],
body[data-aos-delay="1850"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1850"].aos-animate,
body[data-aos-delay="1850"] [data-aos].aos-animate {
    transition-delay: 1.85s;
}

[data-aos][data-aos][data-aos-duration="1900"],
body[data-aos-duration="1900"] [data-aos] {
    transition-duration: 1.9s;
}

[data-aos][data-aos][data-aos-delay="1900"],
body[data-aos-delay="1900"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1900"].aos-animate,
body[data-aos-delay="1900"] [data-aos].aos-animate {
    transition-delay: 1.9s;
}

[data-aos][data-aos][data-aos-duration="1950"],
body[data-aos-duration="1950"] [data-aos] {
    transition-duration: 1.95s;
}

[data-aos][data-aos][data-aos-delay="1950"],
body[data-aos-delay="1950"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="1950"].aos-animate,
body[data-aos-delay="1950"] [data-aos].aos-animate {
    transition-delay: 1.95s;
}

[data-aos][data-aos][data-aos-duration="2000"],
body[data-aos-duration="2000"] [data-aos] {
    transition-duration: 2s;
}

[data-aos][data-aos][data-aos-delay="2000"],
body[data-aos-delay="2000"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2000"].aos-animate,
body[data-aos-delay="2000"] [data-aos].aos-animate {
    transition-delay: 2s;
}

[data-aos][data-aos][data-aos-duration="2050"],
body[data-aos-duration="2050"] [data-aos] {
    transition-duration: 2.05s;
}

[data-aos][data-aos][data-aos-delay="2050"],
body[data-aos-delay="2050"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2050"].aos-animate,
body[data-aos-delay="2050"] [data-aos].aos-animate {
    transition-delay: 2.05s;
}

[data-aos][data-aos][data-aos-duration="2100"],
body[data-aos-duration="2100"] [data-aos] {
    transition-duration: 2.1s;
}

[data-aos][data-aos][data-aos-delay="2100"],
body[data-aos-delay="2100"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2100"].aos-animate,
body[data-aos-delay="2100"] [data-aos].aos-animate {
    transition-delay: 2.1s;
}

[data-aos][data-aos][data-aos-duration="2150"],
body[data-aos-duration="2150"] [data-aos] {
    transition-duration: 2.15s;
}

[data-aos][data-aos][data-aos-delay="2150"],
body[data-aos-delay="2150"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2150"].aos-animate,
body[data-aos-delay="2150"] [data-aos].aos-animate {
    transition-delay: 2.15s;
}

[data-aos][data-aos][data-aos-duration="2200"],
body[data-aos-duration="2200"] [data-aos] {
    transition-duration: 2.2s;
}

[data-aos][data-aos][data-aos-delay="2200"],
body[data-aos-delay="2200"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2200"].aos-animate,
body[data-aos-delay="2200"] [data-aos].aos-animate {
    transition-delay: 2.2s;
}

[data-aos][data-aos][data-aos-duration="2250"],
body[data-aos-duration="2250"] [data-aos] {
    transition-duration: 2.25s;
}

[data-aos][data-aos][data-aos-delay="2250"],
body[data-aos-delay="2250"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2250"].aos-animate,
body[data-aos-delay="2250"] [data-aos].aos-animate {
    transition-delay: 2.25s;
}

[data-aos][data-aos][data-aos-duration="2300"],
body[data-aos-duration="2300"] [data-aos] {
    transition-duration: 2.3s;
}

[data-aos][data-aos][data-aos-delay="2300"],
body[data-aos-delay="2300"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2300"].aos-animate,
body[data-aos-delay="2300"] [data-aos].aos-animate {
    transition-delay: 2.3s;
}

[data-aos][data-aos][data-aos-duration="2350"],
body[data-aos-duration="2350"] [data-aos] {
    transition-duration: 2.35s;
}

[data-aos][data-aos][data-aos-delay="2350"],
body[data-aos-delay="2350"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2350"].aos-animate,
body[data-aos-delay="2350"] [data-aos].aos-animate {
    transition-delay: 2.35s;
}

[data-aos][data-aos][data-aos-duration="2400"],
body[data-aos-duration="2400"] [data-aos] {
    transition-duration: 2.4s;
}

[data-aos][data-aos][data-aos-delay="2400"],
body[data-aos-delay="2400"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2400"].aos-animate,
body[data-aos-delay="2400"] [data-aos].aos-animate {
    transition-delay: 2.4s;
}

[data-aos][data-aos][data-aos-duration="2450"],
body[data-aos-duration="2450"] [data-aos] {
    transition-duration: 2.45s;
}

[data-aos][data-aos][data-aos-delay="2450"],
body[data-aos-delay="2450"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2450"].aos-animate,
body[data-aos-delay="2450"] [data-aos].aos-animate {
    transition-delay: 2.45s;
}

[data-aos][data-aos][data-aos-duration="2500"],
body[data-aos-duration="2500"] [data-aos] {
    transition-duration: 2.5s;
}

[data-aos][data-aos][data-aos-delay="2500"],
body[data-aos-delay="2500"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2500"].aos-animate,
body[data-aos-delay="2500"] [data-aos].aos-animate {
    transition-delay: 2.5s;
}

[data-aos][data-aos][data-aos-duration="2550"],
body[data-aos-duration="2550"] [data-aos] {
    transition-duration: 2.55s;
}

[data-aos][data-aos][data-aos-delay="2550"],
body[data-aos-delay="2550"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2550"].aos-animate,
body[data-aos-delay="2550"] [data-aos].aos-animate {
    transition-delay: 2.55s;
}

[data-aos][data-aos][data-aos-duration="2600"],
body[data-aos-duration="2600"] [data-aos] {
    transition-duration: 2.6s;
}

[data-aos][data-aos][data-aos-delay="2600"],
body[data-aos-delay="2600"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2600"].aos-animate,
body[data-aos-delay="2600"] [data-aos].aos-animate {
    transition-delay: 2.6s;
}

[data-aos][data-aos][data-aos-duration="2650"],
body[data-aos-duration="2650"] [data-aos] {
    transition-duration: 2.65s;
}

[data-aos][data-aos][data-aos-delay="2650"],
body[data-aos-delay="2650"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2650"].aos-animate,
body[data-aos-delay="2650"] [data-aos].aos-animate {
    transition-delay: 2.65s;
}

[data-aos][data-aos][data-aos-duration="2700"],
body[data-aos-duration="2700"] [data-aos] {
    transition-duration: 2.7s;
}

[data-aos][data-aos][data-aos-delay="2700"],
body[data-aos-delay="2700"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2700"].aos-animate,
body[data-aos-delay="2700"] [data-aos].aos-animate {
    transition-delay: 2.7s;
}

[data-aos][data-aos][data-aos-duration="2750"],
body[data-aos-duration="2750"] [data-aos] {
    transition-duration: 2.75s;
}

[data-aos][data-aos][data-aos-delay="2750"],
body[data-aos-delay="2750"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2750"].aos-animate,
body[data-aos-delay="2750"] [data-aos].aos-animate {
    transition-delay: 2.75s;
}

[data-aos][data-aos][data-aos-duration="2800"],
body[data-aos-duration="2800"] [data-aos] {
    transition-duration: 2.8s;
}

[data-aos][data-aos][data-aos-delay="2800"],
body[data-aos-delay="2800"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2800"].aos-animate,
body[data-aos-delay="2800"] [data-aos].aos-animate {
    transition-delay: 2.8s;
}

[data-aos][data-aos][data-aos-duration="2850"],
body[data-aos-duration="2850"] [data-aos] {
    transition-duration: 2.85s;
}

[data-aos][data-aos][data-aos-delay="2850"],
body[data-aos-delay="2850"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2850"].aos-animate,
body[data-aos-delay="2850"] [data-aos].aos-animate {
    transition-delay: 2.85s;
}

[data-aos][data-aos][data-aos-duration="2900"],
body[data-aos-duration="2900"] [data-aos] {
    transition-duration: 2.9s;
}

[data-aos][data-aos][data-aos-delay="2900"],
body[data-aos-delay="2900"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2900"].aos-animate,
body[data-aos-delay="2900"] [data-aos].aos-animate {
    transition-delay: 2.9s;
}

[data-aos][data-aos][data-aos-duration="2950"],
body[data-aos-duration="2950"] [data-aos] {
    transition-duration: 2.95s;
}

[data-aos][data-aos][data-aos-delay="2950"],
body[data-aos-delay="2950"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="2950"].aos-animate,
body[data-aos-delay="2950"] [data-aos].aos-animate {
    transition-delay: 2.95s;
}

[data-aos][data-aos][data-aos-duration="3000"],
body[data-aos-duration="3000"] [data-aos] {
    transition-duration: 3s;
}

[data-aos][data-aos][data-aos-delay="3000"],
body[data-aos-delay="3000"] [data-aos] {
    transition-delay: 0;
}

[data-aos][data-aos][data-aos-delay="3000"].aos-animate,
body[data-aos-delay="3000"] [data-aos].aos-animate {
    transition-delay: 3s;
}

[data-aos][data-aos][data-aos-easing="linear"],
body[data-aos-easing="linear"] [data-aos] {
    transition-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75);
}

[data-aos][data-aos][data-aos-easing="ease"],
body[data-aos-easing="ease"] [data-aos] {
    transition-timing-function: ease;
}

[data-aos][data-aos][data-aos-easing="ease-in"],
body[data-aos-easing="ease-in"] [data-aos] {
    transition-timing-function: ease-in;
}

[data-aos][data-aos][data-aos-easing="ease-out"],
body[data-aos-easing="ease-out"] [data-aos] {
    transition-timing-function: ease-out;
}

[data-aos][data-aos][data-aos-easing="ease-in-out"],
body[data-aos-easing="ease-in-out"] [data-aos] {
    transition-timing-function: ease-in-out;
}

[data-aos][data-aos][data-aos-easing="ease-in-back"],
body[data-aos-easing="ease-in-back"] [data-aos] {
    transition-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045);
}

[data-aos][data-aos][data-aos-easing="ease-out-back"],
body[data-aos-easing="ease-out-back"] [data-aos] {
    transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

[data-aos][data-aos][data-aos-easing="ease-in-out-back"],
body[data-aos-easing="ease-in-out-back"] [data-aos] {
    transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

[data-aos][data-aos][data-aos-easing="ease-in-sine"],
body[data-aos-easing="ease-in-sine"] [data-aos] {
    transition-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715);
}

[data-aos][data-aos][data-aos-easing="ease-out-sine"],
body[data-aos-easing="ease-out-sine"] [data-aos] {
    transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1);
}

[data-aos][data-aos][data-aos-easing="ease-in-out-sine"],
body[data-aos-easing="ease-in-out-sine"] [data-aos] {
    transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

[data-aos][data-aos][data-aos-easing="ease-in-quad"],
body[data-aos-easing="ease-in-quad"] [data-aos] {
    transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

[data-aos][data-aos][data-aos-easing="ease-out-quad"],
body[data-aos-easing="ease-out-quad"] [data-aos] {
    transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

[data-aos][data-aos][data-aos-easing="ease-in-out-quad"],
body[data-aos-easing="ease-in-out-quad"] [data-aos] {
    transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

[data-aos][data-aos][data-aos-easing="ease-in-cubic"],
body[data-aos-easing="ease-in-cubic"] [data-aos] {
    transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

[data-aos][data-aos][data-aos-easing="ease-out-cubic"],
body[data-aos-easing="ease-out-cubic"] [data-aos] {
    transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

[data-aos][data-aos][data-aos-easing="ease-in-out-cubic"],
body[data-aos-easing="ease-in-out-cubic"] [data-aos] {
    transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

[data-aos][data-aos][data-aos-easing="ease-in-quart"],
body[data-aos-easing="ease-in-quart"] [data-aos] {
    transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

[data-aos][data-aos][data-aos-easing="ease-out-quart"],
body[data-aos-easing="ease-out-quart"] [data-aos] {
    transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

[data-aos][data-aos][data-aos-easing="ease-in-out-quart"],
body[data-aos-easing="ease-in-out-quart"] [data-aos] {
    transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

[data-aos^="fade"][data-aos^="fade"] {
    opacity: 0;
    transition-property: opacity, transform;
}

[data-aos^="fade"][data-aos^="fade"].aos-animate {
    opacity: 1;
    transform: translateZ(0);
}

[data-aos="fade-up"] {
    transform: translate3d(0, 100px, 0);
}

[data-aos="fade-down"] {
    transform: translate3d(0, -100px, 0);
}

[data-aos="fade-right"] {
    transform: translate3d(-100px, 0, 0);
}

[data-aos="fade-left"] {
    transform: translate3d(100px, 0, 0);
}

[data-aos="fade-up-right"] {
    transform: translate3d(-100px, 100px, 0);
}

[data-aos="fade-up-left"] {
    transform: translate3d(100px, 100px, 0);
}

[data-aos="fade-down-right"] {
    transform: translate3d(-100px, -100px, 0);
}

[data-aos="fade-down-left"] {
    transform: translate3d(100px, -100px, 0);
}

[data-aos^="zoom"][data-aos^="zoom"] {
    opacity: 0;
    transition-property: opacity, transform;
}

[data-aos^="zoom"][data-aos^="zoom"].aos-animate {
    opacity: 1;
    transform: translateZ(0) scale(1);
}

[data-aos="zoom-in"] {
    transform: scale(0.6);
}

[data-aos="zoom-in-up"] {
    transform: translate3d(0, 100px, 0) scale(0.6);
}

[data-aos="zoom-in-down"] {
    transform: translate3d(0, -100px, 0) scale(0.6);
}

[data-aos="zoom-in-right"] {
    transform: translate3d(-100px, 0, 0) scale(0.6);
}

[data-aos="zoom-in-left"] {
    transform: translate3d(100px, 0, 0) scale(0.6);
}

[data-aos="zoom-out"] {
    transform: scale(1.2);
}

[data-aos="zoom-out-up"] {
    transform: translate3d(0, 100px, 0) scale(1.2);
}

[data-aos="zoom-out-down"] {
    transform: translate3d(0, -100px, 0) scale(1.2);
}

[data-aos="zoom-out-right"] {
    transform: translate3d(-100px, 0, 0) scale(1.2);
}

[data-aos="zoom-out-left"] {
    transform: translate3d(100px, 0, 0) scale(1.2);
}

[data-aos^="slide"][data-aos^="slide"] {
    transition-property: transform;
}

[data-aos^="slide"][data-aos^="slide"].aos-animate {
    transform: translateZ(0);
}

[data-aos="slide-up"] {
    transform: translate3d(0, 100%, 0);
}

[data-aos="slide-down"] {
    transform: translate3d(0, -100%, 0);
}

[data-aos="slide-right"] {
    transform: translate3d(-100%, 0, 0);
}

[data-aos="slide-left"] {
    transform: translate3d(100%, 0, 0);
}

[data-aos^="flip"][data-aos^="flip"] {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition-property: transform;
}

[data-aos="flip-left"] {
    transform: perspective(2500px) rotateY(-100deg);
}

[data-aos="flip-left"].aos-animate {
    transform: perspective(2500px) rotateY(0);
}

[data-aos="flip-right"] {
    transform: perspective(2500px) rotateY(100deg);
}

[data-aos="flip-right"].aos-animate {
    transform: perspective(2500px) rotateY(0);
}

[data-aos="flip-up"] {
    transform: perspective(2500px) rotateX(-100deg);
}

[data-aos="flip-up"].aos-animate {
    transform: perspective(2500px) rotateX(0);
}

[data-aos="flip-down"] {
    transform: perspective(2500px) rotateX(100deg);
}

[data-aos="flip-down"].aos-animate {
    transform: perspective(2500px) rotateX(0);
}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
}

main {
    display: block;
}

h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible;
}

pre {
    font-family: monospace, monospace;
    font-size: 1em;
}

a {
    background-color: transparent;
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
}

b,
strong {
    font-weight: bolder;
}

code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}

small {
    font-size: 80%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

img {
    border-style: none;
}

button,
input,
optgroup,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
}

button,
input {
    overflow: visible;
}

button,
select {
    text-transform: none;
}

[type="button"],
[type="reset"],
[type="submit"],
button {
    -webkit-appearance: button;
}

[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner,
button::-moz-focus-inner {
    border-style: none;
    padding: 0;
}

[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring,
button:-moz-focusring {
    outline: 1px dotted ButtonText;
}

fieldset {
    padding: 0.35em 0.75em 0.625em;
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal;
}

progress {
    vertical-align: baseline;
}

textarea {
    overflow: auto;
}

[type="checkbox"],
[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

[type="search"] {
    -webkit-appearance: textfield;
    outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit;
}

details {
    display: block;
}

summary {
    display: list-item;
}

[hidden],
template {
    display: none;
}

blockquote,
dd,
dl,
figure,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
p,
pre {
    margin: 0;
}

button {
    background-color: transparent;
    background-image: none;
}

button:focus {
    outline: 1px dotted;
    outline: 5px auto -webkit-focus-ring-color;
}

fieldset,
ol,
ul {
    margin: 0;
    padding: 0;
}

ol,
ul {
    list-style: none;
}

html {
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell,
        Noto Sans, sans-serif, BlinkMacSystemFont, Helvetica Neue, Arial,
        Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol, Noto Color Emoji;
    line-height: 1.5;
}

*,
:after,
:before {
    box-sizing: border-box;
    border: 0 solid;
}

hr {
    border-top-width: 1px;
}

img {
    border-style: solid;
}

textarea {
    resize: vertical;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
    color: #a0aec0;
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    color: #a0aec0;
}

input::placeholder,
textarea::placeholder {
    color: #a0aec0;
}

[role="button"],
button {
    cursor: pointer;
}

table {
    border-collapse: collapse;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: inherit;
    font-weight: inherit;
}

a {
    color: inherit;
    text-decoration: inherit;
}

button,
input,
optgroup,
select,
textarea {
    padding: 0;
    line-height: inherit;
    color: inherit;
}

code,
kbd,
pre,
samp {
    font-family: SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono,
        Courier New, monospace;
}

audio,
canvas,
embed,
iframe,
img,
object,
svg,
video {
    display: block;
    vertical-align: middle;
}

img,
video {
    max-width: 100%;
    height: auto;
}

html {
    scroll-behavior: smooth;
}

body {
    background-color: var(--vyv-blanc);
    font-family: Wigrum, Helvetica, Arial, sans-serif;
    font-weight: 400;
    font-size: 1rem;
    line-height: 1.625;
    color: var(--vyv-gris-texte);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: relative;
}

h1,
h2 {
    margin-bottom: 1.5rem;
}

h3 {
    margin-bottom: 1rem;
}

p+p {
    margin-top: 1.5rem;
}

a:focus,
button:focus,
svg:focus {
    outline: 0;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    background-color: transparent;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23472583' height='8' width='10' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 1.99l-.02-.23c-.07-.88-.4-1.5-.91-1.7-.24-.08-.71-.16-1.24.36L5 4.35 2.2.45 2.16.4C1.64-.1 1.17-.02.93.07.43.27.1.88.02 1.76L0 1.99 5 8l5-6.01z'/%3E%3C/svg%3E");
    background-position-x: 100%;
    background-position-y: 9px;
    background-repeat: no-repeat;
    fill: currentColor;
    padding: 0.25rem 1rem 0.25rem 0.25rem;
}

select:hover {
    text-decoration: underline;
}

select:focus {
    outline: 0;
}

select option {
    padding: 0.5rem;
}

section:not(.auto) {
    overflow: hidden;
}

@font-face {
    font-family: Wigrum;
    font-stretch: normal;
    font-style: normal;
    font-weight: 200;
    src: url(../fonts/Wigrum/Wigrum-Light.woff2) format("woff2"),
        url(../fonts/Wigrum/Wigrum-Light.woff) format("woff");
}

@font-face {
    font-family: Wigrum;
    font-stretch: normal;
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/Wigrum/Wigrum-Regular.woff2) format("woff2"),
        url(../fonts/Wigrum/Wigrum-Regular.woff) format("woff");
}

@font-face {
    font-family: Wigrum;
    font-stretch: normal;
    font-style: normal;
    font-weight: 500;
    src: url(../fonts/Wigrum/Wigrum-Medium.woff2) format("woff2"),
        url(../fonts/Wigrum/Wigrum-Medium.woff) format("woff");
}

@font-face {
    font-family: Wigrum;
    font-stretch: normal;
    font-style: normal;
    font-weight: 700;
    src: url(../fonts/Wigrum/Wigrum-Bold.woff2) format("woff2"),
        url(../fonts/Wigrum/Wigrum-Bold.woff) format("woff");
}

@font-face {
    font-family: Aria;
    font-stretch: normal;
    font-style: normal;
    font-weight: 700;
    src: url(../fonts/Aria/ariatextg1-bold-webfont.woff2) format("woff2"),
        url(../fonts/Aria/ariatextg1-bold-webfont.woff) format("woff");
}

@font-face {
    font-family: Aria;
    font-stretch: normal;
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/Aria/ariatextg1-webfont.woff2) format("woff2"),
        url(../fonts/Aria/ariatextg1-webfont.woff) format("woff");
}

.container {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 576px) {
    .container {
        max-width: 576px;
    }
}

@media (min-width: 768px) {
    .container {
        max-width: 768px;
    }
}

@media (min-width: 992px) {
    .container {
        max-width: 992px;
    }
}

@media (min-width: 1200px) {
    .container {
        max-width: 1200px;
    }
}

.btn {
    display: inline-flex;
    align-items: center;
    position: relative;
    justify-content: center;
    border-width: 2px;
    cursor: pointer;
    background-color: transparent;
    font-weight: 700;
    line-height: 1;
    font-size: 0.875rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    transition-property: background-color, border-color, color, fill, stroke,
        opacity, box-shadow, transform;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
    overflow: hidden;
    height: 52px;
    min-width: 190px;
    letter-spacing: -0.05em;
}

.btn,
.btn .icon {
    transition-duration: 0.3s;
}

.btn .icon {
    position: absolute;
    transition-property: all;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
    right: 0.5rem;
    top: 1.1rem;
    width: 9px;
}

@media (min-width: 576px) {
    .btn {
        padding-left: 2.5rem;
        padding-right: 2.5rem;
        letter-spacing: 0;
    }
}

html:not(.apple) .btn {
    line-height: 150%;
    padding-bottom: 0.2em;
}

.btn-90deg .icon {
    transform: rotate(90deg);
}

.btn-submit {
    min-width: 236px;
}

.btn-primary,
.btn-violet {
    border-color: transparent;
    background-color: var(--vyv-violet);
    color: var(--vyv-blanc);
}

@media (min-width: 992px) {

    .btn-primary,
    .btn-violet {
        background-color: transparent;
        border-color: var(--vyv-violet);
        color: var(--vyv-violet);
    }

    .btn-primary:focus,
    .btn-primary:hover,
    .btn-violet:focus,
    .btn-violet:hover {
        border-color: transparent;
        background-color: var(--vyv-violet);
        color: var(--vyv-blanc);
    }
}

.btn-primary-reverse,
.btn-violet-reverse {
    border-color: transparent;
    background-color: var(--vyv-violet);
    color: var(--vyv-blanc);
}

.btn-primary-reverse:focus,
.btn-primary-reverse:hover,
.btn-violet-reverse:focus,
.btn-violet-reverse:hover {
    background-color: transparent;
    border-color: var(--vyv-violet);
    color: var(--vyv-violet);
}

.btn-green {
    border-color: transparent;
    background-color: var(--vyv-vert-moyen);
    color: var(--vyv-blanc);
}

@media (min-width: 992px) {
    .btn-green {
        background-color: transparent;
        border-color: var(--vyv-vert-moyen);
        color: var(--vyv-vert-moyen);
    }

    .btn-green:focus,
    .btn-green:hover {
        border-color: transparent;
        background-color: var(--vyv-vert-moyen);
        color: var(--vyv-blanc);
    }
}

.btn-blue {
    border-color: transparent;
    background-color: #3182c4;
    color: var(--vyv-blanc);
}

@media (min-width: 992px) {
    .btn-blue {
        background-color: transparent;
        border-color: #3182c4;
        color: #3182c4;
    }

    .btn-blue:focus,
    .btn-blue:hover {
        border-color: transparent;
        background-color: #3182c4;
        color: var(--vyv-blanc);
    }
}

.btn-blue-lake {
    border-color: transparent;
    background-color: #007c9e;
    color: var(--vyv-blanc);
}

@media (min-width: 992px) {
    .btn-blue-lake {
        background-color: transparent;
        border-color: var(--vyv-bleu-fonce);
        color: var(--vyv-bleu-fonce);
    }

    .btn-blue-lake:focus,
    .btn-blue-lake:hover {
        border-color: transparent;
        background-color: var(--vyv-bleu-fonce);
        color: var(--vyv-blanc);
    }
}

.btn-white {
    border-color: transparent;
    background-color: var(--vyv-blanc);
    color: var(--vyv-violet);
}

@media (min-width: 992px) {
    .btn-white {
        background-color: transparent;
        border-color: var(--vyv-blanc);
        color: var(--vyv-blanc);
    }

    .btn-white:focus,
    .btn-white:hover {
        border-color: transparent;
        background-color: var(--vyv-blanc);
        color: var(--vyv-violet);
    }
}

.btn-download .icon {
    position: relative;
    display: inline-block;
    width: 30px;
    top: inherit;
    right: inherit;
    margin-left: 13px;
}

.blockquote {
    font-family: Wigrum, Helvetica, Arial, sans-serif;
    font-size: 1.5625rem;
    line-height: 1.375;
    color: #878786;
    background-color: var(--vyv-blanc);
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    position: relative;
}

.blockquote footer {
    font-family: Wigrum, Helvetica, Arial, sans-serif;
    font-size: 1rem;
    line-height: 1.375;
    color: var(--vyv-violet);
    margin-top: 1rem;
}

.blockquote .icon {
    fill: currentColor;
    color: var(--vyv-violet);
    position: absolute;
    top: 0;
    right: 0;
    transition-property: background-color, border-color, color, fill, stroke,
        opacity, box-shadow, transform;
    margin-right: 1rem;
    transform: translateY(-60%);
}

@media (min-width: 992px) {
    .blockquote .icon {
        transform: translateY(-100%);
    }
}

@media (min-width: 992px) {
    .blockquote.offset {
        transform: translateX(-70px);
    }
}

@media (min-width: 992px) {
    .blockquote {
        padding-left: 3rem;
    }
}

.square {
    position: relative;
    background-color: var(--vyv-blanc);
    color: var(--vyv-violet);
    cursor: pointer;
    overflow: hidden;
    background-repeat: no-repeat;
    background-position: bottom;
    height: 12rem;
    padding: 0.5rem;
}

.square,
.square:before {
    transition-property: background-color, border-color, color, fill, stroke,
        opacity, box-shadow, transform;
    transition-duration: 0.4s;
}

.square:before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: transparent;
    z-index: 0;
}

@media (min-width: 768px) {
    .square {
        padding: 1rem;
    }
}

@media (min-width: 992px) {
    .square {
        padding: 0.5rem;
    }
}

@media (min-width: 1200px) {
    .square {
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
    }
}

.square-title {
    position: relative;
    line-height: 1.375;
    text-align: center;
    font-weight: 700;
    z-index: 10;
    font-size: 0.75rem;
}

@media (min-width: 768px) {
    .square-title {
        font-size: 1rem;
    }
}

@media (min-width: 992px) {
    .square-title {
        font-size: 0.75rem;
    }
}

@media (min-width: 1200px) {
    .square-title {
        font-size: 1rem;
    }
}

.square-desc {
    position: relative;
    font-size: 0.75rem;
    transition-property: background-color, border-color, color, fill, stroke,
        opacity, box-shadow, transform;
    transition-duration: 0.4s;
    opacity: 0;
    z-index: 10;
    transform: translateY(16rem);
}

@media (min-width: 768px) {
    .square-desc {
        font-size: 0.8125rem;
    }
}

@media (min-width: 992px) {
    .square-desc {
        font-size: 0.75rem;
    }
}

@media (min-width: 1200px) {
    .square-desc {
        font-size: 0.8125rem;
    }
}

.square:hover {
    color: var(--vyv-blanc);
}

.square:hover:before {
    background-color: #007c9e;
}

.square:hover .square-desc {
    opacity: 1;
    color: var(--vyv-blanc);
    transform: translateY(0);
}

.download-item {
    display: flex;
}

.key-item {
    text-align: center;
    line-height: 1.25;
    position: relative;
}

.key-item:before {
    content: "";
    display: block;
    width: 1px;
    height: 124px;
    background-color: #9A9A99;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 5;
    transform: translateY(-50%);
}

.isedge .key-item:before,
.tns-slide-active+.slide[aria-hidden="true"] .key-item:before,
[aria-hidden="true"]+.slide .key-item:before {
    display: none;
}

.key-image {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 1rem;
}

.key-data {
    font-size: 2.1875rem;
    font-weight: 700;
    color: var(--vyv-violet-fonce);
}

.actu-link,
.savoirfaire-link {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 455px;
}

.actu-link img,
.savoirfaire-link img {
    width: 100%;
    transition-property: transform;
    transition-duration: 0.15s;
}

.actu-link--comm .actu-surtitle {
    margin-bottom: 1.5rem;
}

.actu-link--comm .actu-desc {
    padding-top: 1.6rem;
    padding-bottom: 3.6rem;
}

.actu-link--comm .actu-title {
    font-size: 1.35rem;
}

.actu-link--comm .actu-footer {
    bottom: 0;
    right: 0;
    text-align: right;
    left: inherit;
    padding-right: 1rem;
    padding-bottom: 1rem;
}

.actu-link--comm .actu-footer a {
    display: inline-block;
    position: relative;
    color: var(--vyv-violet);
    padding: 0 0.5rem;
    transition: all 0.3s ease-in-out;
}

.actu-link--comm .actu-footer a:after {
    content: "";
    display: block;
    width: 1px;
    height: 80%;
    background-color: #4e2087;
    opacity: 0.6;
    position: absolute;
    top: 50%;
    right: 0;
    z-index: 5;
    transform: translateY(-40%);
}

.actu-link--comm .actu-footer a:last-child:after {
    display: none;
}

.actu-link--comm .actu-footer a:focus,
.actu-link--comm .actu-footer a:hover {
    color: #0ca4d0;
    color: var(--vyv-bleu-fonce);
}

.actu-link--nopic {
    min-height: 360px;
}

@media screen and (min-width: 768px) {
    .actu-link--picture .actu-desc {
        min-height: 235px;
    }
}

.actu-thumb {
    display: block;
    overflow: hidden;
}

.actu-desc {
    display: block;
    padding: 1.25rem;
    flex: 1 1 0%;
}

.actu-surtitle,
.publication-card-surtitle {
    font-size: 0.75rem;
    font-weight: 500;
    margin-bottom: 0.25rem;
    opacity: 0.5;
}

.actu-surtitle,
.actu-title,
.publication-card-surtitle,
.publication-card-title {
    color: var(--vyv-violet);
    transition-property: background-color, border-color, color, fill, stroke;
    transition-duration: 0.2s;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.actu-title,
.publication-card-title {
    margin-bottom: 1rem;
    font-size: 1.275rem;
    font-weight: 700;
    line-height: 1.25;
}

.actu-video .actu-desc,
.actu-video .actu-surtitle,
.actu-video .actu-title {
    color: var(--vyv-blanc);
}

.savoirfaire-link .actu-desc {
    position: relative;
    padding-right: 1em;
    padding-bottom: 2em;
}

.savoir-faire .show-details {
    background: var(--vyv-fond-gris);
}

.savoir-faire.bg-section--gris .show-details {
    background: var(--vyv-blanc);
}

.savoirfaire-link .media-link-icon {
    color: var(--vyv-violet);
    position: absolute;
    transition-property: all;
    transition-duration: 0.3s;
    bottom: 1rem;
    right: 1rem;
}

.savoirfaire-link:hover .media-link-icon {
    color: var(--vyv-bleu-fonce);
}

.actu-video .actu-desc:focus .actu-surtitle,
.actu-video .actu-desc:focus .actu-title,
.actu-video .actu-desc:hover .actu-surtitle,
.actu-video .actu-desc:hover .actu-title {
    color: var(--vyv-bleu-fonce);
}

.savoirfaire-link .actu-desc:focus .actu-surtitle,
.savoirfaire-link .actu-desc:hover .actu-surtitle,
a.actu-event:focus .actu-surtitle,
a.actu-event:hover .actu-surtitle,
a.actu-link:focus .actu-surtitle,
a.actu-link:hover .actu-surtitle,
a.savoirfaire-link:focus .actu-surtitle,
a.savoirfaire-link:hover .actu-surtitle {
    color: var(--vyv-bleu-fonce);
    opacity: 0.5;
}

.savoirfaire-link .actu-desc:focus .actu-title,
.savoirfaire-link .actu-desc:hover .actu-title,
a.actu-event:focus .actu-title,
a.actu-event:hover .actu-title,
a.actu-link:focus .actu-title,
a.actu-link:hover .actu-title,
a.savoirfaire-link:focus .actu-title,
a.savoirfaire-link:hover .actu-title {
    color: var(--vyv-bleu-fonce);
}

.video-thumb {
    display: block;
    position: relative;
    z-index: 0;
    width: 100%;
}

.video-thumb .icon {
    position: absolute;
    color: var(--vyv-violet);
    background-repeat: no-repeat;
    background-position: 50%;
    transition-property: all;
    transition-duration: 0.3s;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
}

.video-thumb[data-video] {
    cursor: pointer;
}

.video-container.active {
    display: block;
}

.video-container iframe {
    display: block;
    border: none;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
}

a.video-thumb:focus .icon,
a.video-thumb:hover .icon {
    color: var(--vyv-bleu-moyen);
}

.actu-event {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    min-height: 435px;
}

.actu-event:before {
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-repeat: no-repeat;
    transition-duration: 0.2s;
    background-image: url(../images/bg-event.svg);
    background-position: 0 70px;
    background-size: 100% calc(100% - 70px);
    content: "";
    z-index: -1;
}

.isie11 .actu-desc {
    flex: 1 1 auto;
}

.isie11 .actu-event,
.isie11 .actu-link:not(.actu-link--comm) {
    height: 435px;
}

.actu-event-inner {
    position: relative;
    min-height: 336px;
    padding: 40px 0;
}

@media screen and (max-width: 768px) {
    .actu-event-inner {
        padding-top: 30px;
    }
}

.actu-footer {
    position: absolute;
    bottom: 1rem;
    left: 0;
    z-index: 5;
    width: 100%;
    margin-top: 0;
}

.actu-result:focus .actu-more,
.actu-result:focus .actu-title,
.actu-result:hover .actu-more,
.actu-result:hover .actu-title,
.breadcrumb {
    color: var(--vyv-bleu-moyen);
}

.breadcrumb {
    font-size: 0.8125rem;
}

.breadcrumb li {
    display: inline-block;
}

.breadcrumb li:not(.current):after {
    display: inline-block;
    margin-left: 10px;
    margin-right: 10px;
    content: ">";
}

.breadcrumb a {
    font-weight: 500;
}

.breadcrumb .current {
    opacity: 0.5;
}

.hover-link {
    display: block;
    padding-top: 1rem;
    padding-bottom: 1rem;
    overflow: hidden;
    position: relative;
}

@media (min-width: 768px) {
    .hover-link {
        margin-left: -22px;
        padding-left: 22px;
    }
}

.hover-link:before {
    display: block;
    position: absolute;
    transition-property: all;
    transition-duration: 0.2s;
    opacity: 0;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23d4f9ff' viewBox='0 0 44 42' width='44' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18.83 0c9.5-.25 24.14 13.76 24.2 23.53.06 9.77-17.52 20.02-25.82 18.62C8.91 40.76.58 31.47.02 21.68-.54 11.9 10.66.22 18.82 0'/%3E%3C/svg%3E");
    content: "";
    height: 42px;
    left: 3rem;
    top: 6px;
    width: 44px;
    z-index: -1;
}

.hover-link:focus,
.hover-link:hover {
    color: #007c9e;
    font-weight: 700;
}

.hover-link:focus:before,
.hover-link:hover:before {
    opacity: 1;
    left: 0;
}

.hover-mask {
    position: relative;
    overflow: hidden;
    height: 286px;
    width: 510px;
}

@media screen and (max-width: 1240px) {
    .hover-mask {
        max-width: 100%;
    }
}

.hover-mask img {
    position: absolute;
    top: 0;
    width: 100%;
    opacity: 0;
    transition-property: all;
    transition-duration: 0.15s;
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
    -o-object-fit: contain;
    object-fit: contain;
    transform: translateX(-1rem);
}

.hover-mask img.active {
    opacity: 1;
    transform: translateX(0);
}

.regular-slider .hover-mask {
    width: 300px;
    height: 248px;
    margin: 0 auto 10px;
}

@media (min-width: 576px) {
    .regular-slider .hover-mask {
        width: 400px;
        height: 330px;
    }
}

@media (min-width: 768px) {
    .regular-slider .hover-mask {
        width: 500px;
        height: 415px;
    }
}

.sorting-bar {
    padding-top: 1.25rem;
}

.sorting-bar [class^="col"] {
    padding-bottom: 1rem;
}

.filters-bar {
    border-top: 1px solid #ebeaea;
}

.publication-image img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.regular-grid .container,
.results-grid .container {
    position: relative;
    z-index: 10;
}

.news-header .container {
    position: relative;
    z-index: 50;
}

.z-100 {
    z-index: 100;
}

.download-card {
    display: block;
    position: relative;
    background-color: var(--vyv-blanc);
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 1.5rem 1.25rem;
    margin-bottom: 3rem;
}

@media (min-width: 768px) {
    .download-card {
        margin-bottom: 1.25rem;
    }
}

.download-card-detail {
    display: block;
}

.download-card-detail:focus .download-card-arrow,
.download-card-detail:focus .download-card-title,
.download-card-detail:hover .download-card-arrow,
.download-card-detail:hover .download-card-title {
    color: var(--vyv-bleu-moyen);
}

.download-card-icon {
    display: block;
    color: var(--vyv-violet);
    position: absolute;
    top: 0;
    right: 0;
    transition-property: all;
    transition-duration: 0.3s;
    margin-top: -1.3rem;
    margin-right: -0.4rem;
    z-index: 5;
}

.download-card-icon:focus,
.download-card-icon:hover {
    color: #0ca4d0;
}

.download-card-arrow {
    display: block;
    color: var(--vyv-violet);
    position: absolute;
    bottom: 0;
    right: 0;
    transition-property: all;
    transition-duration: 0.3s;
    transform: translate(-100%, -100%);
    z-index: 5;
}

.download-card-type {
    font-size: 0.75rem;
    opacity: 0.5;
}

.download-card-title,
.download-card-type {
    display: block;
    font-weight: 700;
    color: var(--vyv-violet-fonce);
}

.download-card-title {
    font-size: 1.75rem;
    line-height: 1.125;
    margin-top: 2rem;
    margin-bottom: 1rem;
    transition-property: all;
    transition-duration: 0.3s;
}

.download-card-desc {
    display: block;
    margin-bottom: 2rem;
}

.download-card-date {
    display: block;
    font-weight: 700;
    font-size: 0.625rem;
    color: var(--vyv-violet-fonce);
    position: absolute;
    bottom: 0;
    left: 0;
    padding-left: 1.25rem;
    padding-bottom: 1.5rem;
}

.hidden-card {
    display: none;
}

.back-to-top {
    position: fixed;
    bottom: 1rem;
    right: 1rem;
    z-index: 600;
    opacity: 0;
    transition: all 0.4s ease;
}

@media screen and (min-width: 992px) {
    .back-to-top {
        bottom: 10rem;
        right: 50px;
    }
}

.scrolldown .back-to-top {
    opacity: 1;
}

.i18n-menu {
    position: absolute;
    top: 0;
    right: 50px;
    text-transform: uppercase;
    padding: 0 2rem;
}

.i18n-menu a {
    position: relative;
    display: inline-block;
    font-weight: 700;
    font-size: 0.875rem;
    color: var(--vyv-violet);
    opacity: 0.5;
    padding: 15px 0.8rem;
}

.i18n-menu a.active {
    opacity: 1;
}

.i18n-menu a.active:after {
    content: "";
    display: block;
    width: 75%;
    height: 3px;
    background-color: #0ca4d0;
    position: absolute;
    bottom: 0;
    left: 50%;
    z-index: 5;
    transform: translateX(-50%);
}

.js-to_expand .i18n-menu {
    top: -5rem;
    border-right: 2px solid #ebeaea;
}

.twitter-icon-link {
    transform: translate(30%, -50%);
}

.space-y-2> :not(template)~ :not(template) {
    margin-top: 0.5rem;
}

.space-x-2> :not(template)~ :not(template) {
    margin-left: 0.5rem;
}

.space-x-4> :not(template)~ :not(template) {
    margin-left: 1rem;
}

.space-x-5> :not(template)~ :not(template) {
    margin-left: 1.25rem;
}

.space-x-8> :not(template)~ :not(template) {
    margin-left: 2rem;
}

.divide-y> :not(template)~ :not(template) {
    border-top-width: 1px;
}

.divide-white> :not(template)~ :not(template) {
    border-color: var(--vyv-blanc);
}

.divide-solid> :not(template)~ :not(template) {
    border-style: solid;
}

.divide-dashed> :not(template)~ :not(template) {
    border-style: dashed;
}

.divide-dotted> :not(template)~ :not(template) {
    border-style: dotted;
}

.divide-double> :not(template)~ :not(template) {
    border-style: double;
}

.divide-none> :not(template)~ :not(template) {
    border-style: none;
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border-width: 0;
}

.not-sr-only {
    position: static;
    width: auto;
    height: auto;
    padding: 0;
    margin: 0;
    overflow: visible;
    clip: auto;
    white-space: normal;
}

.appearance-none {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.bg-fixed {
    background-attachment: fixed;
}

.bg-local {
    background-attachment: local;
}

.bg-scroll {
    background-attachment: scroll;
}

.bg-clip-border {
    background-clip: border-box;
}

.bg-clip-padding {
    background-clip: padding-box;
}

.bg-clip-content {
    background-clip: content-box;
}

.bg-black {
    background-color: var(--vyv-noir);
}

.bg-white {
    background-color: var(--vyv-blanc);
}

.bg-grey-linx {
    background-color: var(--vyv-fond-gris);
}

.bg-grey-crystal {
    background-color: var(--vyv-fond-gris);
}

.bg-grey-plaster {
    background-color: var(--vyv-fond-gris);
}

.bg-blue-lake {
    background-color: var(--vyv-bleu-moyen);
}

.bg-blue-cyan {
    background-color: var(--vyv-bleu-moyen);
}

.bg-violet-spanish {
    background-color: var(--vyv-violet);
}

.bg-violet-dull {
    background-color: var(--vyv-violet-fonce);
}

.bg-orange {
    background-color: var(--vyv-orange-moyen);
}

.bg-green {
    background-color: var(--vyv-vert-moyen);
}

.bg-yellow {
    background-color: var(--vyv-vert-moyen);
}

.hover\:bg-violet-spanish:hover {
    background-color: var(--vyv-violet);
}

.bg-none {
    background-image: none;
}

.bg-repeat {
    background-repeat: repeat;
}

.bg-no-repeat {
    background-repeat: no-repeat;
}

.bg-repeat-x {
    background-repeat: repeat-x;
}

.bg-repeat-y {
    background-repeat: repeat-y;
}

.bg-repeat-round {
    background-repeat: round;
}

.bg-repeat-space {
    background-repeat: space;
}

.border-collapse {
    border-collapse: collapse;
}

.border-separate {
    border-collapse: separate;
}

.border-white {
    border-color: var(--vyv-blanc);
}

.border-grey-plaster {
    border-color: #ebeaea;
}

.border-grey-silver {
    border-color: #e0dede;
}

.border-grey-brown {
    border-color: #b2b2b2;
}

.border-violet-dull {
    border-color: #82358b;
}

.rounded-sm {
    border-radius: 0.125rem;
}

.rounded {
    border-radius: 0.25rem;
}

.border-solid {
    border-style: solid;
}

.border-dashed {
    border-style: dashed;
}

.border-dotted {
    border-style: dotted;
}

.border-double {
    border-style: double;
}

.border-none {
    border-style: none;
}

.border {
    border-width: 1px;
}

.border-t-2 {
    border-top-width: 2px;
}

.border-b-2 {
    border-bottom-width: 2px;
}

.border-t {
    border-top-width: 1px;
}

.border-b {
    border-bottom-width: 1px;
}

.box-border {
    box-sizing: border-box;
}

.box-content {
    box-sizing: content-box;
}

.block {
    display: block;
}

.inline-block {
    display: inline-block;
}

.inline {
    display: inline;
}

.flex {
    display: flex;
}

.inline-flex {
    display: inline-flex;
}

.table {
    display: table;
}

.table-caption {
    display: table-caption;
}

.table-cell {
    display: table-cell;
}

.table-column {
    display: table-column;
}

.table-column-group {
    display: table-column-group;
}

.table-footer-group {
    display: table-footer-group;
}

.table-header-group {
    display: table-header-group;
}

.table-row-group {
    display: table-row-group;
}

.table-row {
    display: table-row;
}

.hidden {
    display: none;
}

.flex-row {
    flex-direction: row;
}

.flex-row-reverse {
    flex-direction: row-reverse;
}

.flex-col {
    flex-direction: column;
}

.flex-col-reverse {
    flex-direction: column-reverse;
}

.flex-wrap {
    flex-wrap: wrap;
}

.flex-wrap-reverse {
    flex-wrap: wrap-reverse;
}

.flex-no-wrap {
    flex-wrap: nowrap;
}

.items-start {
    align-items: flex-start;
}

.items-end {
    align-items: flex-end;
}

.items-center {
    align-items: center;
}

.items-baseline {
    align-items: baseline;
}

.items-stretch {
    align-items: stretch;
}

.content-center {
    align-content: center;
}

.content-start {
    align-content: flex-start;
}

.content-end {
    align-content: flex-end;
}

.content-between {
    align-content: space-between;
}

.content-around {
    align-content: space-around;
}

.content-evenly {
    align-content: space-evenly;
}

.self-auto {
    align-self: auto;
}

.self-start {
    align-self: flex-start;
}

.self-end {
    align-self: flex-end;
}

.self-center {
    align-self: center;
}

.self-stretch {
    align-self: stretch;
}

.justify-start {
    justify-content: flex-start;
}

.justify-end {
    justify-content: flex-end;
}

.justify-center {
    justify-content: center;
}

.justify-between {
    justify-content: space-between;
}

.justify-around {
    justify-content: space-around;
}

.justify-evenly {
    justify-content: space-evenly;
}

.flex-1 {
    flex: 1 1 0%;
}

.flex-auto {
    flex: 1 1 auto;
}

.flex-grow {
    flex-grow: 1;
}

.flex-shrink {
    flex-shrink: 1;
}

.float-right {
    float: right;
}

.float-left {
    float: left;
}

.float-none {
    float: none;
}

.clearfix:after {
    content: "";
    display: table;
    clear: both;
}

.clear-left {
    clear: left;
}

.clear-right {
    clear: right;
}

.clear-both {
    clear: both;
}

.clear-none {
    clear: none;
}

.font-normal {
    font-weight: 400;
}

.font-medium {
    font-weight: 500;
}

.font-bold {
    font-weight: 700;
}

.h-0 {
    height: 0;
}

.h-5 {
    height: 1.25rem;
}

.h-10 {
    height: 2.5rem;
}

.h-15 {
    height: 3.75rem;
}

.h-full {
    height: 100%;
}

.text-10 {
    font-size: 0.625rem;
}

.text-12 {
    font-size: 0.75rem;
}

.text-13 {
    font-size: 0.8125rem;
}

.text-14 {
    font-size: 0.875rem;
}

.text-16 {
    font-size: 1rem;
}

.text-18 {
    font-size: 1.125rem;
}

.text-19 {
    font-size: 1.2rem;
}

.text-20 {
    font-size: 1.275rem;
}

.text-22 {
    font-size: 1.4rem;
}

.text-24 {
    font-size: 1.5rem;
}

.text-28 {
    font-size: 1.875rem;
}

.text-30 {
    font-size: 1.875rem;
}

.text-35 {
    font-size: 2.1875rem;
}

.text-40 {
    font-size: 2.5rem;
}

.leading-7 {
    line-height: 1.75rem;
}

.leading-none {
    line-height: 1;
}

.leading-supertight {
    line-height: 1.125;
}

.leading-tight {
    line-height: 1.25;
}

.leading-snug {
    line-height: 1.375;
}

.leading-normal {
    line-height: 1.5;
}

.list-inside {
    list-style-position: inside;
}

.list-outside {
    list-style-position: outside;
}

.m-0 {
    margin: 0;
}

.-m-4 {
    margin: -1rem;
}

.my-2 {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}

.mx-3 {
    margin-left: 10px;
    margin-right: 10px;
}

.my-8 {
    margin-top: 2rem;
    margin-bottom: 2rem;
}

.my-10 {
    margin-top: 2.5rem;
    margin-bottom: 2.5rem;
}

.mx-13 {
    margin-left: 3.25rem;
    margin-right: 3.25rem;
}

.mx-auto {
    margin-left: auto;
    margin-right: auto;
}

.-mx-3 {
    margin-left: -10px;
    margin-right: -10px;
}

.mt-0 {
    margin-top: 0;
}

.mb-0 {
    margin-bottom: 0;
}

.mb-1 {
    margin-bottom: 0.25rem;
}

.mt-2 {
    margin-top: 0.5rem;
}

.mr-2 {
    margin-right: 0.5rem;
}

.mb-2 {
    margin-bottom: 0.5rem;
}

.ml-2 {
    margin-left: 0.5rem;
}

.mt-3 {
    margin-top: 10px;
}

.mr-3 {
    margin-right: 10px;
}

.mb-3 {
    margin-bottom: 10px;
}

.mt-4 {
    margin-top: 1rem;
}

.mb-4 {
    margin-bottom: 1rem;
}

.ml-4 {
    margin-left: 1rem;
}

.mt-5 {
    margin-top: 1.25rem;
}

.mr-5 {
    margin-right: 1.25rem;
}

.mb-5 {
    margin-bottom: 1.25rem;
}

.ml-5 {
    margin-left: 1.25rem;
}

.mt-6 {
    margin-top: 1.5rem;
}

.mr-6 {
    margin-right: 1.5rem;
}

.mb-6 {
    margin-bottom: 1.5rem;
}

.mb-7 {
    margin-bottom: 1.75rem;
}

.mt-8 {
    margin-top: 2rem;
}

.mb-8 {
    margin-bottom: 2rem;
}

.mt-10 {
    margin-top: 2.5rem;
}

.mb-10 {
    margin-bottom: 2.5rem;
}

.mb-12 {
    margin-bottom: 3rem;
}

.mb-15 {
    margin-bottom: 3.75rem;
}

.mt-16 {
    margin-top: 4rem;
}

.mb-16 {
    margin-bottom: 4rem;
}

.mb-20 {
    margin-bottom: 5rem;
}

.-mt-1 {
    margin-top: -0.25rem;
}

.-mt-2 {
    margin-top: -0.5rem;
}

.-mt-32 {
    margin-top: -8rem;
}

.max-w-card {
    max-width: 17rem;
}

.max-w-xs {
    max-width: 22.5rem;
}

.max-w-s {
    max-width: 30rem;
}

.min-w-full {
    min-width: 100%;
}

.opacity-0 {
    opacity: 0;
}

.group:hover .group-hover\:opacity-100 {
    opacity: 1;
}

.outline-none {
    outline: 0;
}

.overflow-auto {
    overflow: auto;
}

.overflow-hidden {
    overflow: hidden;
}

.overflow-visible {
    overflow: visible;
}

.overflow-scroll {
    overflow: scroll;
}

.overflow-x-auto {
    overflow-x: auto;
}

.overflow-y-auto {
    overflow-y: auto;
}

.overflow-x-hidden {
    overflow-x: hidden;
}

.overflow-y-hidden {
    overflow-y: hidden;
}

.overflow-x-visible {
    overflow-x: visible;
}

.overflow-y-visible {
    overflow-y: visible;
}

.overflow-x-scroll {
    overflow-x: scroll;
}

.overflow-y-scroll {
    overflow-y: scroll;
}

.scrolling-touch {
    -webkit-overflow-scrolling: touch;
}

.scrolling-auto {
    -webkit-overflow-scrolling: auto;
}

.p-1 {
    padding: 0.25rem;
}

.p-2 {
    padding: 0.5rem;
}

.p-4 {
    padding: 1rem;
}

.p-6 {
    padding: 1.5rem;
}

.p-8 {
    padding: 2rem;
}

.p-10 {
    padding: 2.5rem;
}

.p-12 {
    padding: 3rem;
}

.py-1 {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
}

.py-2 {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.px-2 {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}

.py-3 {
    padding-top: 10px;
    padding-bottom: 10px;
}

.px-3 {
    padding-left: 10px;
    padding-right: 10px;
}

.py-4 {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.px-4 {
    padding-left: 1rem;
    padding-right: 1rem;
}

.px-5 {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
}

.py-6 {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}

.px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
}

.py-8 {
    padding-top: 2rem;
    padding-bottom: 2rem;
}

.py-10 {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
}

.py-20 {
    padding-top: 5rem;
    padding-bottom: 5rem;
}

.pt-0 {
    padding-top: 0;
}

.pl-0 {
    padding-left: 0;
}

.pt-1 {
    padding-top: 0.25rem;
}

.pb-1 {
    padding-bottom: 0.25rem;
}

.pt-2 {
    padding-top: 0.5rem;
}

.pb-2 {
    padding-bottom: 0.5rem;
}

.pl-2 {
    padding-left: 0.5rem;
}

.pb-3 {
    padding-bottom: 10px;
}

.pt-4 {
    padding-top: 1rem;
}

.pr-4 {
    padding-right: 1rem;
}

.pb-4 {
    padding-bottom: 1rem;
}

.pl-4 {
    padding-left: 1rem;
}

.pt-5 {
    padding-top: 1.25rem;
}

.pt-6 {
    padding-top: 1.5rem;
}

.pr-6 {
    padding-right: 1.5rem;
}

.pl-6 {
    padding-left: 1.5rem;
}

.pb-7 {
    padding-bottom: 1.75rem;
}

.pt-8 {
    padding-top: 2rem;
}

.pr-8 {
    padding-right: 2rem;
}

.pb-8 {
    padding-bottom: 2rem;
}

.pl-8 {
    padding-left: 2rem;
}

.pt-10 {
    padding-top: 2.5rem;
}

.pr-10 {
    padding-right: 2.5rem;
}

.pb-10 {
    padding-bottom: 2.5rem;
}

.pt-12 {
    padding-top: 3rem;
}

.pr-12 {
    padding-right: 3rem;
}

.pb-12 {
    padding-bottom: 3rem;
}

.pl-12 {
    padding-left: 3rem;
}

.pr-16 {
    padding-right: 4rem;
}

.pt-18 {
    padding-top: 4.5rem;
}

.pt-20 {
    padding-top: 5rem;
}

.pb-20 {
    padding-bottom: 5rem;
}

.pt-22 {
    padding-top: 5.5rem;
}

.pb-26 {
    padding-bottom: 6.5rem;
}

.pb-28 {
    padding-bottom: 7rem;
}

.pb-32 {
    padding-bottom: 8rem;
}

.placeholder-violet-spanish::-moz-placeholder {
    color: var(--vyv-violet);
}

.placeholder-violet-spanish:-ms-input-placeholder {
    color: var(--vyv-violet);
}

.placeholder-violet-spanish::placeholder {
    color: var(--vyv-violet);
}

.pointer-events-none {
    pointer-events: none;
}

.pointer-events-auto {
    pointer-events: auto;
}

.static {
    position: static;
}

.fixed {
    position: fixed;
}

.absolute {
    position: absolute;
}

.relative {
    position: relative;
}

.sticky {
    position: -webkit-sticky;
    position: sticky;
}

.top-0 {
    top: 0;
}

.right-0 {
    right: 0;
}

.bottom-0 {
    bottom: 0;
}

.left-0 {
    left: 0;
}

.resize-none {
    resize: none;
}

.resize-y {
    resize: vertical;
}

.resize-x {
    resize: horizontal;
}

.resize {
    resize: both;
}

.shadow-sm {
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
}

.shadow {
    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
}

.shadow-md {
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1),
        0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

.fill-current {
    fill: currentColor;
}

.table-auto {
    table-layout: auto;
}

.table-fixed {
    table-layout: fixed;
}

.text-left {
    text-align: left;
}

.text-center {
    text-align: center;
}

.text-right {
    text-align: right;
}


.text-justify {
    text-align: justify;
}

.text-white {
    color: var(--vyv-blanc);
}

.text-grey-base {
    color: #878786;
}

.text-blue-lake {
    color: var(--vyv-bleu-fonce);
}

.text-blue-cyan {
    color: #0ca4d0;
}

.text-blue-windows {
    color: #3182c4;
}

.text-blue-cyanlight {
    color: var(--vyv-bleu-fonce);
}

.text-violet-spanish {
    color: var(--vyv-violet);
}

.text-violet-spanishlighter {
    color: #553286;
}

.text-violet-dull {
    color: var(--vyv-violet-fonce);
}

.text-green {
    color: var(--vyv-vert-moyen);
}

.hover\:text-white:hover {
    color: var(--vyv-blanc);
}

.hover\:text-blue-aqua:hover {
    color: var(--vyv-bleu-fonce);
}

.hover\:text-blue-lake:hover {
    color: var(--vyv-bleu-fonce);
}

.hover\:text-blue-cyan:hover {
    color: #0ca4d0;
}

.hover\:text-violet-spanish:hover {
    color: var(--vyv-violet);
}

.focus\:text-blue-lake:focus {
    color: #007c9e;
}

.italic {
    font-style: italic;
}

.not-italic {
    font-style: normal;
}

.uppercase {
    text-transform: uppercase;
}

.lowercase {
    text-transform: lowercase;
}

.capitalize {
    text-transform: capitalize;
}

.normal-case {
    text-transform: none;
}

.underline {
    text-decoration: underline;
}

.line-through {
    text-decoration: line-through;
}

.no-underline {
    text-decoration: none;
}

.antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.subpixel-antialiased {
    -webkit-font-smoothing: auto;
    -moz-osx-font-smoothing: auto;
}

.select-none {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.select-text {
    -webkit-user-select: text;
    -moz-user-select: text;
    -ms-user-select: text;
    user-select: text;
}

.select-all {
    -webkit-user-select: all;
    -moz-user-select: all;
    -ms-user-select: all;
    user-select: all;
}

.select-auto {
    -webkit-user-select: auto;
    -moz-user-select: auto;
    -ms-user-select: auto;
    user-select: auto;
}

.align-baseline {
    vertical-align: baseline;
}

.align-top {
    vertical-align: top;
}

.align-middle {
    vertical-align: middle;
}

.align-bottom {
    vertical-align: bottom;
}

.align-text-top {
    vertical-align: text-top;
}

.align-text-bottom {
    vertical-align: text-bottom;
}

.visible {
    visibility: visible;
}

.invisible {
    visibility: hidden;
}

.group:hover .group-hover\:visible {
    visibility: visible;
}

.whitespace-normal {
    white-space: normal;
}

.whitespace-no-wrap {
    white-space: nowrap;
}

.whitespace-pre {
    white-space: pre;
}

.whitespace-pre-line {
    white-space: pre-line;
}

.whitespace-pre-wrap {
    white-space: pre-wrap;
}

.break-normal {
    word-wrap: normal;
    word-break: normal;
}

.break-words {
    word-wrap: break-word;
}

.break-all {
    word-break: break-all;
}

.truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.w-7 {
    width: 1.75rem;
}

.w-1\/2 {
    width: 50%;
}

.w-full {
    width: 100%;
}

.z-30 {
    z-index: 30;
}

.hover\:scale-105:hover {
    transform: scale(1.05);
}

.-translate-x-1\/2 {
    transform: translateX(-50%);
}

.translate-y-15 {
    transform: translateY(3.75rem);
}

.-translate-y-3 {
    transform: translateY(-10px);
}

.-translate-y-1\/2 {
    transform: translateY(-50%);
}

.group:hover .group-hover\:translate-y-0 {
    transform: translateY(0);
}

.transition-all {
    transition-property: all;
}

.transition {
    transition-property: background-color, border-color, color, fill, stroke,
        opacity, box-shadow, transform;
}

.transition-colors {
    transition-property: background-color, border-color, color, fill, stroke;
}

.ease-linear {
    transition-timing-function: linear;
}

.ease-in {
    transition-timing-function: cubic-bezier(0.4, 0, 1, 1);
}

.ease-out {
    transition-timing-function: cubic-bezier(0, 0, 0.2, 1);
}

.ease-in-out {
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

.duration-150 {
    transition-duration: 0.15s;
}

.duration-200 {
    transition-duration: 0.2s;
}

.duration-300 {
    transition-duration: 0.3s;
}

.duration-500 {
    transition-duration: 0.5s;
}

@-webkit-keyframes spin {
    to {
        transform: rotate(1turn);
    }
}

@keyframes spin {
    to {
        transform: rotate(1turn);
    }
}

@-webkit-keyframes ping {

    75%,
    to {
        transform: scale(2);
        opacity: 0;
    }
}

@keyframes ping {

    75%,
    to {
        transform: scale(2);
        opacity: 0;
    }
}

@-webkit-keyframes pulse {
    50% {
        opacity: 0.5;
    }
}

@keyframes pulse {
    50% {
        opacity: 0.5;
    }
}

@-webkit-keyframes bounce {

    0%,
    to {
        transform: translateY(-25%);
        -webkit-animation-timing-function: cubic-bezier(0.8, 0, 1, 1);
        animation-timing-function: cubic-bezier(0.8, 0, 1, 1);
    }

    50% {
        transform: none;
        -webkit-animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
        animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
    }
}

@keyframes bounce {

    0%,
    to {
        transform: translateY(-25%);
        -webkit-animation-timing-function: cubic-bezier(0.8, 0, 1, 1);
        animation-timing-function: cubic-bezier(0.8, 0, 1, 1);
    }

    50% {
        transform: none;
        -webkit-animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
        animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
    }
}

.embed-responsive {
    position: relative;
    display: block;
    height: 0;
    padding: 0;
    overflow: hidden;
}

.embed-responsive .embed-responsive-item,
.embed-responsive>embed,
.embed-responsive>iframe,
.embed-responsive>object,
.embed-responsive>video {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    height: 100%;
    width: 100%;
    border: 0;
}

.aspect-ratio-none {
    padding-bottom: 0;
}

.aspect-ratio-16\/9 {
    padding-bottom: 56.25%;
}

.vertical-text {
    transform: rotate(270deg);
    transform-origin: left bottom;
}

.icon {
    fill: currentColor;
    color: currentColor;
    display: inline-block;
}

.link {
    text-decoration: underline;
    transition-property: background-color, border-color, color, fill, stroke;
    transition-duration: 0.2s;
}

.link:focus,
.link:hover {
    text-decoration: none;
}

.title-xl {
    font-size: 3rem;
    font-weight: 700;
    line-height: 1.125;
}

@media (min-width: 992px) {
    .title-overline:before {
        content: "";
        height: 3px;
        width: 1.75rem;
        display: block;
        background-color: #007c9e;
        margin-bottom: 1.5rem;
    }
}

.title-h1 {
    font-size: 1.875rem;
    text-align: center;
    font-weight: 700;
    line-height: 1;
    color: var(--vyv-violet);
    margin-bottom: 1.5rem;
    width: 100%;
}

@media (min-width: 576px) {
    .title-h1 {
        text-align: left;
    }
}

@media (min-width: 768px) {
    .title-h1 {
        font-size: 2.1875rem;
    }
}

@media (min-width: 992px) {
    .title-h1 {
        font-size: 2.8125rem;
    }
}

.title-h3,
.title-l {
    font-size: 1.4rem;
    text-align: center;
    font-weight: 700;
    line-height: 1;
}

@media (min-width: 576px) {

    .title-h3,
    .title-l {
        text-align: left;
    }
}

@media (min-width: 768px) {

    .title-h3,
    .title-l {
        font-size: 1.5rem;
    }
}

@media (min-width: 992px) {

    .title-h3,
    .title-l {
        font-size: 1.75rem;
    }
}

.title-h2 {
    font-size: 1.75rem;
    text-align: center;
    font-weight: 700;
    line-height: 1.125;
    color: var(--vyv-violet);
    margin-top: 2.5rem;
    margin-bottom: 1.5rem;
}

@media (min-width: 576px) {
    .title-h2 {
        text-align: left;
    }
}

@media (min-width: 768px) {
    .title-h2 {
        font-size: 1.875rem;
    }
}

@media (min-width: 992px) {
    .title-h2 {
        font-size: 3rem;
    }
}

.title-h2.text-center {
    text-align: center;
}

.surtitle+.title-h2 {
    margin-top: 0;
}

.title-h3 {
    color: var(--vyv-violet);
}

.title-h4 {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.125;
    color: var(--vyv-violet-fonce);
}

@media (min-width: 768px) {
    .title-h4 {
        font-size: 1.4rem;
    }
}

@media (min-width: 992px) {
    .title-h4 {
        font-size: 1.5rem;
    }
}

.float-left+.title-h2,
.float-left+.title-h3,
.float-left+.title-h4,
.float-right+.title-h2,
.float-right+.title-h3,
.float-right+.title-h4,
[class^="col"]>h2:first-child,
[class^="col"]>h3:first-child,
[class^="col"]>h4:first-child {
    margin-top: 0;
}

.surtitle {
    margin-bottom: 1rem;
    color: var(--vyv-gris-texte);
    font-size: 1.125rem;
    font-weight: 700;
}

@media (min-width: 992px) {
    .column-2 {
        -moz-column-count: 2;
        column-count: 2;
        grid-column-gap: 50px;
        -moz-column-gap: 50px;
        column-gap: 50px;
    }
}

@media (min-width: 1200px) {
    .inner {
        margin-left: 110px;
        margin-right: 110px;
    }
}

.list,
.small-list {
    padding-left: 2.5rem;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
}

.list li,
.small-list li {
    position: relative;
    padding: 0 0 0 1em;
}

.list li:before,
.small-list li:before {
    content: "";
    display: block;
    width: 6px;
    height: 6px;
    background-image: url(../images/puce.svg);
    background-repeat: no-repeat;
    background-color: transparent;
    background-position: 50% 50%;
    background-size: 100% 100%;
    position: absolute;
    top: 11px;
    left: 0;
    z-index: 5;
}

.list li+li {
    margin-top: 1rem;
}

.r-flex {
    display: flex;
    flex-direction: column;
}

@media (min-width: 992px) {
    .r-flex {
        flex-direction: row;
    }
}

input.hide-clear[type="search"]::-ms-clear,
input.hide-clear[type="search"]::-ms-reveal {
    display: none;
    height: 0;
    width: 0;
}

input.hide-clear[type="search"]::-webkit-search-cancel-button,
input.hide-clear[type="search"]::-webkit-search-decoration,
input.hide-clear[type="search"]::-webkit-search-results-button,
input.hide-clear[type="search"]::-webkit-search-results-decoration {
    display: none;
}

.rotate-0 {
    transform: rotate(0deg);
}

.rotate-90 {
    transform: rotate(90deg);
}

.rotate-180 {
    transform: rotate(180deg);
}

.rotate-270 {
    transform: rotate(270deg);
}

.translate-x-16 {
    transform: translateX(4rem);
}

.translate-x-24 {
    transform: translateX(6rem);
}

.translate-y-64 {
    transform: translateX(16rem);
}

.-translate-x-1\/2 {
    transform: translateX(-50%);
}

.-translate-y-3 {
    transform: translateY(0.75rem);
}

.translate-y-0 {
    transform: translateY(0);
}

.translate-x-0 {
    transform: translateX(0);
}

.-translate-x-1\/2 {
    transform: translateY(-50%);
}

.-translate-x-full {
    transform: translateX(-100%);
}

.translate-y-1\/2 {
    transform: translateY(50%);
}

.translate-x-full {
    transform: translateX(100%);
}

.-translate-y-full {
    transform: translateY(-100%);
}

.menu-open,
.menu-open body,
.search-open,
.search-open body {
    overflow: hidden;
}

.accueil {
    position: relative;
}

@media (min-width: 992px) {
    .onepage-header {
        min-height: 440px;
    }
}

@media (min-width: 992px) {
    .offerpage .onepage-header {
        min-height: 260px;
    }
}

@media (min-width: 1200px) {
    .offerpage .onepage-header {
        min-height: 400px;
    }
}

.sitemap {
    background-color: var(--vyv-violet);
    color: var(--vyv-blanc);
    font-size: 0.75rem;
    position: relative;
}

.sitemap>.container {
    position: relative;
    padding-top: 2rem;
}

.sitemap>.container:before {
    display: block;
    position: absolute;
    left: 0;
    background-repeat: no-repeat;
    background-size: contain;
    background-image: url(../images/bg-footer-spot-landing.png);
    background-size: 100%;
    content: "";
    height: 61px;
    width: 63px;
    top: -25px;
}

@media (min-width: 1200px) {
    .sitemap>.container:before {
        width: 80px;
        height: 80px;
        top: -32px;
    }
}

@media screen and (min-width: 1490px) {
    .sitemap>.container:before {
        top: -50px;
        left: -85px;
        height: 122px;
        width: 126px;
    }
}

.sitemap li a {
    display: block;
    transition-property: background-color, border-color, color, fill, stroke,
        opacity, box-shadow, transform;
    transition-duration: 0.5s;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    line-height: 1.125;
}

.sitemap li a:focus,
.sitemap li a:hover {
    opacity: 0.5;
}

@media screen and (max-width: 967px) {
    .footer-links {
        display: block;
        text-align: center;
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
    }

    .footer-links a,
    .footer-links li {
        display: inline-block;
    }

    .footer-links a {
        padding: 0.5rem;
    }
}

.actus {
    background-image: url(../images/bg-actus.svg);
}

.actus,
.engagement {
    background-position: 50% 100.1%;
    background-repeat: no-repeat;
    background-size: 100%;
}

.engagement {
    background-color: var(--vyv-fond-gris);
    background-image: url(../images/bg-engagement.png);
}

@media screen and (max-width: 575px) {
    .video .title-h2 {
        margin-top: 0;
    }
}

@media (min-width: 1200px) {
    .video:after {
        margin-left: 560px;
    }
}

.expertise-wrapper {
    position: relative;
    background-color: var(--vyv-violet);
    padding: 2.5rem;
}

@media (min-width: 992px) {
    .expertise-wrapper {
        padding-left: 110px;
        padding-right: 110px;
    }

    .expertise-wrapper:before {
        display: block;
        position: absolute;
        right: 0;
        background-repeat: no-repeat;
        background-image: url(../images/bg-expertise-spot.png);
        background-size: 100%;
        content: "";
        height: 118px;
        right: -40px;
        top: -59px;
        width: 104px;
    }
}

.carousel {
    background-color: var(--vyv-fond-gris);
    background-position: top;
    position: relative;
    background-image: url(../images/bg-top-carousel.svg);
}

.carousel,
.carousel:before {
    background-repeat: no-repeat;
    background-size: 100%;
}

.carousel:before {
    background-position: bottom;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-image: url(../images/bg-bottom-carousel.svg);
    content: "";
    bottom: -2px;
}

.image-corner {
    position: relative;
}

.key-data-wrapper {
    position: relative;
    padding: 50px 0;
}

@media (min-width: 768px) {
    .key-data-wrapper {
        padding-top: 50px;
        padding-bottom: 50px;
    }
}

.related {
    margin-top: 1.5rem;
    margin-bottom: 2.5rem;
}

.related>.container {
    position: relative;
    padding-top: 3.5rem;
    padding-bottom: 3.5rem;
    z-index: 0;
    background-color: var(--vyv-violet-fonce);
    z-index: 1;
}

.implantations {
    position: relative;
    background-color: var(--vyv-fond-gris);
    background-repeat: no-repeat;
    background-position: 50% -1px;
    background-size: 100%;
    min-height: 500px;
    padding: 60px 0;
}

@media screen and (min-width: 1860px) {
    .implantations {
        background-position: 50% -1%;
    }
}

.bg-light-gray {
    background-color: var(--vyv-fond-gris);
}

.press-header {
    position: relative;
}

.motto {
    padding: 1.6em 0 0.8em;
}

.motto img {
    max-width: 34.5rem;
}

section[data-section] h2 {
    margin-top: 0;
}

.navbar {
    position: relative;
    top: 0;
    width: 100%;
    background-color: var(--vyv-blanc);
    padding-top: 10px;
    transform: translate(0);
    z-index: 700;
}

@media (min-width: 992px) {
    .navbar {
        background-color: transparent;
    }
}

.scrollup .navbar,
.scrollup .shadow-nav {
    transition-property: background-color, border-color, color, fill, stroke,
        opacity, box-shadow, transform;
    transition-duration: 0.2s;
}

.fixed_navbar .navbar {
    position: fixed;
    background-color: var(--vyv-blanc);
    transform: translateY(-1px) scale(1.001);
}

.fixed_navbar .shadow-nav {
    height: 83px;
}

@media (min-width: 992px) {
    .fixed_navbar .shadow-nav {
        height: 121px;
    }
}

.fixed_navbar.offerpage .shadow-nav {
    height: 224px;
}

@media screen and (max-height: 960px) {
    .fixed_navbar.offerpage .shadow-nav {
        height: 190px;
    }
}

@media (min-width: 768px) {
    .fixed_navbar.offerpage .shadow-nav {
        height: 248px;
    }
}

@media screen and (min-width: 768px) and (max-height: 960px) {
    .fixed_navbar.offerpage .shadow-nav {
        height: 172px;
    }
}

@media (min-width: 992px) {
    .fixed_navbar.offerpage .shadow-nav {
        height: 308px;
    }
}

@media screen and (min-width: 992px) and (max-height: 960px) {
    .fixed_navbar.offerpage .shadow-nav {
        height: 216px;
    }
}

@media screen and (max-width: 991px) {
    .level-1+.invisible {
        position: relative;
        box-shadow: none;
        max-height: 0;
        height: auto;
        overflow: hidden;
        transition: max-height 0.3s ease-in-out, padding 0.3s ease-in-out;
    }
}

@media screen and (max-width: 991px) {

    .level-1.text-violet-spanish:focus,
    .level-1.text-violet-spanish:hover {
        color: var(--vyv-violet) !important;
    }
}

@media screen and (max-width: 991px) {
    .level-1.active+.invisible {
        transform: translateY(0);
        visibility: visible;
        opacity: 1;
        max-height: 99em;
    }
}

.level-1.active .icon {
    transform: rotate(-90deg);
}

.offerpage .navbar {
    padding-bottom: 0;
}

.fixed_navbar.pagemenuscroll .navbar,
.fixed_navbar.scrolldown .navbar {
    transform: translateY(-100%);
    pointer-events: none;
}

.navbar-top {
    display: none;
    font-size: 0.75rem;
    line-height: 1.5;
    color: var(--vyv-violet);
}

@media (min-width: 992px) {
    .navbar-top {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-end;
        align-items: center;
        padding-bottom: 1.25rem;
    }
}

.navbar-top>li {
    display: flex;
    align-items: center;
}

.navbar-top>li>a:focus,
.navbar-top>li>a:hover {
    text-decoration: underline;
}

.navbar-top option {
    color: #2f2c30;
}

.navbar-top>li+li:before {
    background-color: currentColor;
    border-radius: 3px;
    content: "";
    display: inline-block;
    height: 3px;
    margin-right: 1rem;
    width: 3px;
}

.navbar .logo {
    position: relative;
    display: block;
    order: 2;
    max-width: 109px;
}

@media (min-width: 992px) {
    .navbar .logo {
        order: -9999;
        margin-right: 1rem;
    }
}

@media screen and (min-width: 1400px) {
    .navbar .logo {
        transition-property: background-color, border-color, color, fill, stroke,
            opacity, box-shadow, transform;
        transform: translateX(-2rem);
    }
}

@media screen and (min-width: 1440px) {
    .navbar .logo {
        transform: translateX(-4rem);
    }
}

.navbar--landing {
    position: absolute !important;
    background: transparent !important;
}

.navbar--landing .logo {
    margin: 9px 0 0 27px;
    width: 152px;
    height: 120px;
    max-width: 180px;
    transform: none;
}

@media (min-width: 1200px) {
    .navbar--landing .logo {
        width: 154px;
    }
}

.navbar--landing .logo img {
    width: 100%;
    height: 100%;
}

.primary-navigation {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 20;
    background-color: var(--vyv-blanc);
    transition-property: all;
    transition-duration: 0.3s;
    transform: translate(-110%, 80px);
}

@media screen and (max-width: 991px) {
    .primary-navigation {
        height: calc(100vh - 80px);
        padding: 30px 2rem 25px;
        overflow: auto;
    }
}

@media (min-width: 992px) {
    .primary-navigation {
        position: relative;
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
        flex: 1 1 0%;
        width: auto;
        height: auto;
        background-color: transparent;
        transform: none;
    }
}

.primary-navigation li+li {
    margin-top: 0.5rem;
}

@media (min-width: 992px) {
    .primary-navigation li+li {
        margin-top: 0;
    }
}

.primary-navigation li li {
    margin-top: 0;
}

.level-1 {
    position: relative;
    display: block;
    font-weight: 700;
    line-height: 1.25rem;
    font-size: 1.0625rem;
    text-align: left;
}

@media screen and (max-width: 991px) {
    .level-1 {
        max-width: 270px;
        margin-right: auto;
        margin-left: auto;
        padding-top: 1rem;
        padding-bottom: 1rem;
    }

    .level-1 br {
        display: none;
    }

    .level-1 .icon {
        margin-left: 1rem;
        transform: rotate(90deg);
        transition: all 0.2s ease-in-out;
    }
}

@media (min-width: 992px) {
    .level-1 {
        font-size: 0.875rem;
        padding: .5rem;
        text-align: center;
    }

    .level-1 .icon {
        display: none;
    }

}

@media (min-width: 1200px) {
    .level-1 {
        font-size: 1.0625rem;
    }
}

.level-1:hover {
    color: var(--vyv-violet-fonce) !important;
}

.level-1:hover:before {
    background-position-y: 50%;
}

@media screen and (max-width: 991px) {
    .subnav {
        text-align: left;
        max-width: 270px;
        margin-right: auto;
        margin-left: auto;
    }

    .subnav a,
    .subnav li {
        color: var(--vyv-violet);
    }

    .subnav .level-2 {
        position: relative;
        padding: 0.2rem 0;
    }

    .subnav .level-2 .icon {
        display: none;
    }
}

@media (min-width: 992px) {
    .subnav {
        padding: 1.5rem;
        width: 280px;
    }
}

.level-2 {
    position: relative;
    font-size: .85rem;
    display: block;
    padding-top: 10px;
    padding-bottom: 10px;
    color: var(--vyv-violet);
    font-weight: 400;
    padding-left: 1.5rem;
}

@media screen and (max-width: 991px) {
    .level-2 {
        font-size: 0.9375rem;
    }
}

.level-2.active,
.level-2:hover {
    font-weight: 700;
    color: var(--vyv-violet-fonce);
}

.level-2.active .icon,
.level-2:hover .icon {
    opacity: 1;
}

.level-2 .icon {
    position: absolute;
    left: 0;
    margin-right: 0.5rem;
    opacity: 0;
    transition-property: all;
    transition-duration: 0.15s;
    top: 50%;
    transform: translateY(-50%);
}

.level-2.current {
    font-weight: 700;
}

.level-2.current .icon {
    visibility: visible;
}

.level-2.international {
    position: relative;
    margin-top: 10px;
    padding-top: 1rem;
}

.level-2.international:before {
    content: "";
    display: block;
    width: 40%;
    height: 1px;
    background-color: var(--vyv-bleu-fonce);
    position: absolute;
    top: 0;
    left: 1.5rem;
    z-index: 5;
}

body:not(.accueil) .primary-navigation .active .level-1 {
    color: var(--vyv-bleu-fonce);
}

.secondary-navigation {
    display: none;
    color: var(--vyv-violet);
}

@media (min-width: 768px) {
    .secondary-navigation {
        width: 16.666667%;
        align-items: flex-start;
        justify-content: flex-end;
    }
}

@media (min-width: 992px) {
    .secondary-navigation {
        display: flex;
    }
}

.secondary-navigation a:focus,
.secondary-navigation a:hover {
    color: var(--vyv-violet-fonce) !important;
}

.menu-open .primary-navigation {
    transform: translateY(78px);
}

.menu-btn {
    z-index: 20;
    position: relative;
    order: 1;
    display: block;
    width: 40px;
    height: 40px;
}

@media (min-width: 992px) {
    .menu-btn {
        display: none;
    }
}

.menu-btn span {
    display: block;
    position: relative;
    margin-bottom: 0.25rem;
    background-color: var(--vyv-bleu-fonce);
    pointer-events: none;
    height: 3px;
    transform-origin: 6px 0;
    transition: transform 0.5s cubic-bezier(0.77, 0.2, 0.05, 1),
        opacity 0.55s ease;
    width: 26px;
    margin-left: 7px;
    z-index: 1;
}

.menu-btn span:first-child {
    transform-origin: 0 0;
}

.menu-btn span:last-child {
    margin-bottom: 0;
    transform-origin: 0 100%;
}

.isie11 .menu-btn {
    position: absolute;
    margin-top: -8px;
}

.menu-open .menu-btn span {
    opacity: 1;
    transform: rotate(45deg) translate(-2px, -1px);
}

.menu-open .menu-btn span:nth-last-child(2) {
    opacity: 0;
    transform: rotate(0deg) scale(0.2);
}

.menu-open .menu-btn span:last-child {
    transform: rotate(-45deg) translate(-2px);
}

@media screen and (min-width: 1420px) {

    .navbar-top,
    .search-btn {
        margin-right: -2.5rem;
    }
}

@media (min-width: 992px) {

    .accueil:not(.fixed_navbar) .navbar .navbar-inverse,
    .accueil:not(.fixed_navbar) .navbar .search-btn {
        color: #482583;

    }

    .accueil:not(.fixed_navbar) .navbar .navbar-top li {
        color: var(--vyv-blanc);
    }
}

.search-btn {
    order: 9999;
    color: var(--vyv-violet);
    position: relative;
    width: 40px;
    height: 40px;
    z-index: 715;
}

.search-btn .icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.search-btn .icon:first-child {
    opacity: 1;
}

.search-btn .icon:last-child {
    opacity: 0;
    stroke: var(--vyv-blanc);
}

@media (min-width: 992px) {
    .search-btn {
        color: var(--vyv-violet);
        margin-left: 1rem;
        z-index: 50;
    }

    .search-btn .icon:first-child {
        opacity: 1;
    }

    .search-btn .icon:last-child {
        display: none;
    }
}

.search-btn:focus,
.search-btn:hover {
    color: var(--vyv-violet-fonce) !important;
}

.search-open .search-btn .icon:first-child {
    opacity: 0;
}

.search-open .search-btn .icon:last-child {
    opacity: 1;
}

@media (min-width: 992px) {
    .search-open .search-btn .icon:first-child {
        opacity: 1;
    }

    .search-open .search-btn .icon:last-child {
        display: none;
    }
}

@media (min-width: 992px) {
    .accueil .navbar-top select {
        background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg fill='%23fff' height='8' width='10' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 1.99l-.02-.23c-.07-.88-.4-1.5-.91-1.7-.24-.08-.71-.16-1.24.36L5 4.35 2.2.45 2.16.4C1.64-.1 1.17-.02.93.07.43.27.1.88.02 1.76L0 1.99 5 8l5-6.01z'/%3E%3C/svg%3E");
    }
}

.search-wrapper {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    padding-top: 12rem;
    z-index: 50;
    opacity: 0;
    transform: translate(110%);
    height: 100vh;
    width: 0;
    transition: transform 0.3s ease-in-out, opacity 0.3s ease;
}

.search-open .search-wrapper {
    visibility: visible;
    opacity: 1;
    transform: translate(0);
    z-index: 710;
    width: 100vw;
}

.search-close {
    position: absolute;
    top: 3rem;
    right: 0;
    padding: 1rem;
    color: var(--vyv-blanc);
    opacity: 0;
    transition-property: background-color, border-color, color, fill, stroke,
        opacity, box-shadow, transform;
    transition-duration: 0.2s;
    pointer-events: none;
    z-index: -1;
}

.search-close .icon {
    width: 34px;
    height: 34px;
    stroke: var(--vyv-blanc);
}

.search-close:hover {
    opacity: 1;
}

@media (min-width: 992px) {
    .search-close {
        opacity: 1;
        pointer-events: inherit;
        z-index: 101;
    }
}

.search-input {
    width: 100%;
    position: relative;
    overflow: hidden;
}

.search-input input[type="search"] {
    border-width: 2px;
    border-color: transparent;
    background-color: var(--vyv-blanc);
    flex: 1 1 0%;
    padding: 1.5rem;
    outline: 0;
    width: 100%;
    height: 5rem;
    transition-property: background-color, border-color, color, fill, stroke,
        opacity, box-shadow, transform;
    transition-duration: 0.2s;
}

.search-input input[type="search"]:focus {
    background-color: #ebeaea;
    border-color: #82358b;
}

@media (min-width: 992px) {
    .search-input input[type="search"] {
        font-size: 1.75rem;
        padding-left: 3rem;
        padding-right: 3rem;
    }
}

.search-input input[type="search"] {
    -webkit-appearance: none;
}

.search-input button[type="submit"] {
    position: absolute;
    right: 0;
    color: var(--vyv-violet);
    transition-property: all;
    transition-duration: 0.2s;
    top: 50%;
    transform: translate(-2.5rem, -50%);
}

.search-input button[type="submit"]:focus,
.search-input button[type="submit"]:hover {
    color: #82358b;
}

.search-wrapper input:not([type="radio"]):not([type="checkbox"]) {
    border-radius: 0;
}

.search-wrapper input[type="button"],
.search-wrapper input[type="submit"],
.search-wrapper input[type="text"],
.search-wrapper textarea {
    -webkit-appearance: none;
    border-radius: 0;
}

input[type="search"] {
    -webkit-appearance: none;
    -webkit-border-radius: 0;
}

.page-navigation {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    background-color: var(--vyv-blanc);
    z-index: 40;
    padding: 1rem;
    text-align: center;
}

@media (min-width: 768px) {
    .page-navigation {
        padding-top: 0;
        padding-bottom: 0;
    }
}

.js-stickybit-parent {
    position: relative;
}

.page-navigation .menu {
    flex-wrap: wrap;
    justify-content: space-around;
    display: none;
    border-bottom-width: 2px;
    border-color: #ebeaea;
}

@media (min-width: 768px) {
    .page-navigation .menu {
        display: flex;
        align-items: stretch;
    }
}

@media (min-width: 992px) {
    .page-navigation .menu {
        flex-wrap: nowrap;
    }
}

.page-navigation .menu a {
    display: block;
    font-size: 1rem;
    color: var(--vyv-violet);
    opacity: 0.5;
    transition-property: all;
    transition-duration: 0.2s;
    padding-top: 0.5rem;
    line-height: 1;
    text-align: center;
    height: 100%;
    margin-bottom: -2px;
}

.page-navigation .menu a>span {
    display: table;
    height: 48px;
}

.page-navigation .menu a>span>span {
    display: table-cell;
    vertical-align: middle;
}

.page-navigation .menu a:after {
    display: block;
    background-color: transparent;
    margin-left: auto;
    margin-right: auto;
    margin-top: 0.5rem;
    transition-property: all;
    transition-duration: 0.2s;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    content: "";
    height: 2px;
    width: 28px;
}

.page-navigation .menu a:focus:after,
.page-navigation .menu a:hover:after {
    background-color: var(--vyv-bleu-fonce);
    width: 100%;
}

@media (min-width: 992px) {
    .page-navigation .menu a {
        font-size: 1.5rem;
    }
}

.page-navigation .menu li.current a {
    opacity: 1;
    font-weight: 700;
}

.page-navigation .menu li.current a:after {
    background-color: var(--vyv-bleu-moyen);
}

.faq-select,
.glossaire-select,
.page-navigation-select {
    display: block;
    margin-left: auto;
    margin-right: auto;
    background-color: #0ca4d0;
}

@media (min-width: 768px) {

    .faq-select,
    .glossaire-select,
    .page-navigation-select {
        display: none;
    }
}

.faq-select .dropdown-toggle,
.glossaire-select .dropdown-toggle,
.page-navigation-select .dropdown-toggle {
    font-size: 1.125rem;
    color: var(--vyv-blanc);
    width: 100%;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.faq-select .dropdown-menu,
.glossaire-select .dropdown-menu,
.page-navigation-select .dropdown-menu {
    background-color: var(--vyv-blanc);
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1),
        0 2px 4px -1px rgba(0, 0, 0, 0.06);
    width: 260px;
    right: inherit;
    left: 50%;
    margin-left: -130px;
}

.isie11 .page-navigation {
    position: relative;
}

.isie11 .page-navigation.js-is-sticky {
    width: 100%;
}

.isie11 .page-navigation .menu a>span>span {
    height: 66px;
}

:root {
    --accordion-size: 430px;
    --accordion-size-close: 173px;
}

.accordion {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin-top: 2rem;
}

@media (min-width: 992px) {
    .accordion {
        flex-direction: row;
        height: 478px;
        height: var(--accordion-size);
    }
}

.accordion-item {
    color: var(--vyv-blanc);
    justify-content: flex-start;
    align-items: center;
    text-align: left;
    transition-duration: 0.5s;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
    transition-property: all;
}

@media screen and (max-width: 767px) {
    .accordion-item {
        display: block !important;
        transition-property: height;
    }
}

@media (min-width: 768px) {
    .accordion-item {
        display: flex;
        flex-direction: row;
    }
}

@media (min-width: 992px) {
    .accordion-item {
        width: 173px;
        width: var(--accordion-size-close);
    }
}

.accordion-item:first-child {
    background-color: var(--vyv-vert-moyen);
}

.accordion-item:nth-child(2) {
    background-color: #ee7837;
}

.accordion-item:nth-child(3) {
    background-color: #0ca4d0;
}

.accordion-item:nth-child(4) {
    background-color: #fdd026;
}

@media (min-width: 992px) {
    .accordion-item:not(.open) .accordion-btn {
        position: absolute;
        bottom: 0;
        transform: rotate(-90deg);
        height: 173px;
        height: var(--accordion-size-close);
        left: 173px;
        left: var(--accordion-size-close);
        width: 478px;
        width: var(--accordion-size);
    }
}

.accordion--offre {
    max-width: 880px;
    margin-right: auto;
    margin-left: auto;
}

.accordion--offre .accordion-item:first-child {
    background-color: #82358b;
}

.accordion--offre .accordion-item:nth-child(2) {
    background-color: #0ca4d0;
}

.accordion--offre .accordion-item:nth-child(3) {
    background-color: #fdd026;
}

.accordion--offre .accordion-item.open {
    padding-right: 4rem;
    padding-left: 4rem;
    justify-content: flex-end;
    align-content: flex-end;
    align-items: flex-end;
}

@media (min-width: 768px) {
    .accordion--offre .accordion-item.open .accordion-btn {
        display: block;
        flex: none;
    }
}

.accordion-btn {
    width: 100%;
    transition-property: all;
    cursor: pointer;
    padding: 1rem;
    transform-origin: bottom left;
    text-align: center;
}

@media (min-width: 768px) {
    .accordion-btn {
        display: flex;
        align-items: center;
    }
}

@media (min-width: 992px) {
    .accordion-btn {
        padding: 2.5rem;
    }
}

.accordion-title {
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 0;
}

@media (min-width: 992px) {
    .accordion-title {
        font-size: 1.5625rem;
    }
}

.accordion-desc {
    font-weight: 500;
    width: 100%;
    max-height: 0;
    height: auto;
    overflow: hidden;
    opacity: 0;
}

@media screen and (max-width: 767px) {
    .accordion-desc {
        transition-property: max-height, margin !important;
    }
}

@media (min-width: 768px) {
    .accordion-desc {
        max-height: inherit;
        overflow: inherit;
        display: none;
        margin-top: 1.5rem;
    }
}

@media (min-width: 1200px) {
    .accordion-desc p+p {
        margin-top: 3rem;
    }
}

.accordion-picto {
    fill: currentColor;
    margin-right: 1.5rem;
    order: -9999;
    height: 40px;
    width: 40px;
}

@media screen and (max-width: 767px) {
    .accordion-picto {
        margin: 10px auto 0;
    }
}

.accordion-btn,
.accordion-desc,
.accordion-picto,
.accordion-title {
    transition-property: transform;
    transition-duration: 0.5s;
}

.accordion-item.open {
    flex: 1 1 0%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    text-align: center;
    padding: 1.5rem 2rem;
}

@media screen and (min-width: 1325px) {
    .accordion-item.open {
        padding: 2.5rem 5rem;
    }
}

.accordion-item.open .accordion-btn {
    padding: 0;
    cursor: default;
    pointer-events: none;
}

@media (min-width: 768px) {
    .accordion-item.open .accordion-btn {
        flex-direction: column;
        flex: 1 1 0%;
        justify-content: space-between;
    }
}

.accordion-item.open .accordion-title {
    font-size: 1.275rem;
    z-index: 10;
    text-align: center;
    margin-bottom: 1rem;
    order: -9999;
}

@media (min-width: 992px) {
    .accordion-item.open .accordion-title {
        font-size: 1.75rem;
    }
}

@media screen and (min-width: 1325px) {
    .accordion-item.open .accordion-title {
        font-size: 1.875rem;
    }
}

.accordion-item.open .accordion-desc {
    max-height: 99em;
    margin-top: 1.5rem;
}

@media (min-width: 768px) {
    .accordion-item.open .accordion-desc {
        display: block;
        max-height: inherit;
    }
}

.accordion-item.open .accordion-picto {
    margin-right: 0;
    height: 100px;
    width: 100px;
}

@media screen and (max-width: 767px) {
    .accordion-item.open .accordion-picto {
        height: 40px;
        width: 40px;
        margin: 10px auto 0;
    }
}

.accordion-item.open .accordion-btn,
.accordion-item.open .accordion-desc,
.accordion-item.open .accordion-picto,
.accordion-item.open .accordion-title {
    opacity: 1;
}

.accordion-item.enter .accordion-btn,
.accordion-item.enter .accordion-desc,
.accordion-item.enter .accordion-picto,
.accordion-item.enter .accordion-title {
    opacity: 0;
}

@media screen and (max-width: 767px) {
    .accordion-item.enter .accordion-title {
        opacity: 1;
    }
}

.rapport-custom-button {
    text-align: center;
    margin-top: -1.5rem;
}

@media screen and (min-width: 1275px) {
    .rapport-custom-button {
        margin-top: -7rem;
        float: right;
    }
}

@media (min-width: 576px) {
    .sm\:container {
        width: 100%;
        margin-right: auto;
        margin-left: auto;
    }
}

@media (min-width: 576px) and (min-width: 576px) {
    .sm\:container {
        max-width: 576px;
    }
}

@media (min-width: 576px) and (min-width: 768px) {
    .sm\:container {
        max-width: 768px;
    }
}

@media (min-width: 576px) and (min-width: 992px) {
    .sm\:container {
        max-width: 992px;
    }
}

@media (min-width: 576px) and (min-width: 1200px) {
    .sm\:container {
        max-width: 1200px;
    }
}

@media (min-width: 576px) {
    .sm\:block {
        display: block;
    }

    .sm\:flex {
        display: flex;
    }

    .sm\:text-22 {
        font-size: 1.4rem;
    }

    .sm\:mx-10 {
        margin-left: 2.5rem;
        margin-right: 2.5rem;
    }

    .sm\:mb-0 {
        margin-bottom: 0;
    }

    .sm\:px-4 {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .sm\:pl-5 {
        padding-left: 1.25rem;
    }

    .sm\:pt-8 {
        padding-top: 2rem;
    }

    .sm\:text-left {
        text-align: left;
    }

    .sm\:text-right {
        text-align: right;
    }

    .sm\:w-1\/2 {
        width: 50%;
    }
}

@media (min-width: 768px) {
    .md\:container {
        width: 100%;
        margin-right: auto;
        margin-left: auto;
    }
}

@media (min-width: 768px) and (min-width: 576px) {
    .md\:container {
        max-width: 576px;
    }
}

@media (min-width: 768px) and (min-width: 768px) {
    .md\:container {
        max-width: 768px;
    }
}

@media (min-width: 768px) and (min-width: 992px) {
    .md\:container {
        max-width: 992px;
    }
}

@media (min-width: 768px) and (min-width: 1200px) {
    .md\:container {
        max-width: 1200px;
    }
}

@media (min-width: 768px) {
    .md\:space-x-8> :not(template)~ :not(template) {
        margin-left: 2rem;
    }

    .md\:border-r {
        border-right-width: 1px;
    }

    .md\:border-l {
        border-left-width: 1px;
    }

    .md\:flex {
        display: flex;
    }

    .md\:flex-row {
        flex-direction: row;
    }

    .md\:justify-start {
        justify-content: flex-start;
    }

    .md\:flex-1 {
        flex: 1 1 0%;
    }

    .md\:float-right {
        float: right;
    }

    .md\:text-20 {
        font-size: 1.275rem;
    }

    .md\:text-28 {
        font-size: 1.75rem;
    }

    .md\:-mx-4 {
        margin-left: -1rem;
        margin-right: -1rem;
    }

    .md\:mt-6 {
        margin-top: 1.5rem;
    }

    .md\:mt-12 {
        margin-top: 3rem;
    }

    .md\:mb-12 {
        margin-bottom: 3rem;
    }

    .md\:mb-32 {
        margin-bottom: 8rem;
    }

    .md\:ml-col {
        margin-left: 110px;
    }

    .md\:px-4 {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .md\:py-32 {
        padding-top: 8rem;
        padding-bottom: 8rem;
    }

    .md\:pt-0 {
        padding-top: 0;
    }

    .md\:pb-8 {
        padding-bottom: 2rem;
    }

    .md\:pt-12 {
        padding-top: 3rem;
    }

    .md\:pt-14 {
        padding-top: 3.5rem;
    }

    .md\:pb-15 {
        padding-bottom: 3.75rem;
    }

    .md\:pb-40 {
        padding-bottom: 10rem;
    }

    .md\:text-left {
        text-align: left;
    }

    .md\:text-right {
        text-align: right;
    }

    .md\:w-1\/2 {
        width: 50%;
    }

    .md\:w-1\/3 {
        width: 33.333333%;
    }

    .md\:w-2\/5 {
        width: 40%;
    }
}

@media (min-width: 992px) {
    .lg\:container {
        width: 100%;
        margin-right: auto;
        margin-left: auto;
    }
}

@media (min-width: 992px) and (min-width: 576px) {
    .lg\:container {
        max-width: 576px;
    }
}

@media (min-width: 992px) and (min-width: 768px) {
    .lg\:container {
        max-width: 768px;
    }
}

@media (min-width: 992px) and (min-width: 992px) {
    .lg\:container {
        max-width: 992px;
    }
}

@media (min-width: 992px) and (min-width: 1200px) {
    .lg\:container {
        max-width: 1200px;
    }
}

@media (min-width: 992px) {
    .lg\:space-x-8> :not(template)~ :not(template) {
        margin-left: 2rem;
    }

    .lg\:bg-transparent {
        background-color: transparent;
    }

    .lg\:bg-white {
        background-color: var(--vyv-blanc);
    }

    .lg\:border-grey-plaster {
        border-color: #ebeaea;
    }

    .lg\:border-solid {
        border-style: solid;
    }

    .lg\:border-r-2 {
        border-right-width: 2px;
    }

    .lg\:block {
        display: block;
    }

    .lg\:flex {
        display: flex;
    }

    .lg\:flex-row {
        flex-direction: row;
    }

    .lg\:items-start {
        align-items: flex-start;
    }

    .lg\:justify-between {
        justify-content: space-between;
    }

    .lg\:order-last {
        order: 9999;
    }

    .lg\:h-8 {
        height: 2rem;
    }

    .lg\:text-22 {
        font-size: 1.4rem;
    }

    .lg\:text-24 {
        font-size: 1.5rem;
    }

    .lg\:text-30 {
        font-size: 1.875rem;
    }

    .lg\:text-45 {
        font-size: 2.8125rem;
    }

    .lg\:mx-auto {
        margin-left: auto;
        margin-right: auto;
    }

    .lg\:mx-col {
        margin-left: 110px;
        margin-right: 110px;
    }

    .lg\:mt-0 {
        margin-top: 0;
    }

    .lg\:mb-0 {
        margin-bottom: 0;
    }

    .lg\:mb-4 {
        margin-bottom: 1rem;
    }

    .lg\:mb-5 {
        margin-bottom: 1.25rem;
    }

    .lg\:mt-6 {
        margin-top: 1.5rem;
    }

    .lg\:mt-8 {
        margin-top: 2rem;
    }

    .lg\:mr-8 {
        margin-right: 2rem;
    }

    .lg\:mb-8 {
        margin-bottom: 2rem;
    }

    .lg\:mt-10 {
        margin-top: 2.5rem;
    }

    .lg\:mr-10 {
        margin-right: 2.5rem;
    }

    .lg\:mt-12 {
        margin-top: 3rem;
    }

    .lg\:ml-12 {
        margin-left: 3rem;
    }

    .lg\:mt-16 {
        margin-top: 4rem;
    }

    .lg\:mb-16 {
        margin-bottom: 4rem;
    }

    .lg\:mb-18 {
        margin-bottom: 4.5rem;
    }

    .lg\:mb-24 {
        margin-bottom: 6rem;
    }

    .lg\:mt-32 {
        margin-top: 8rem;
    }

    .lg\:mr-auto {
        margin-right: auto;
    }

    .lg\:mr-col {
        margin-right: 110px;
    }

    .lg\:ml-col {
        margin-left: 110px;
    }

    .lg\:-mt-2 {
        margin-top: -0.5rem;
    }

    .lg\:-mt-8 {
        margin-top: -2rem;
    }

    .lg\:max-w-xs {
        max-width: 22.5rem;
    }

    .lg\:max-w-s {
        max-width: 30rem;
    }

    .lg\:px-0 {
        padding-left: 0;
        padding-right: 0;
    }

    .lg\:py-4 {
        padding-top: 1rem;
        padding-bottom: 1rem;
    }

    .lg\:px-4 {
        padding-left: 1rem;
        padding-right: 1rem;
    }

    .lg\:py-6 {
        padding-top: 1.5rem;
        padding-bottom: 1.5rem;
    }

    .lg\:py-10 {
        padding-top: 2.5rem;
        padding-bottom: 2.5rem;
    }

    .lg\:px-10 {
        padding-left: 2.5rem;
        padding-right: 2.5rem;
    }

    .lg\:px-20 {
        padding-left: 5rem;
        padding-right: 5rem;
    }

    .lg\:py-13 {
        padding-top: 3.25rem;
        padding-bottom: 3.25rem;
    }

    .lg\:py-16 {
        padding-top: 4rem;
        padding-bottom: 4rem;
    }

    .lg\:py-20 {
        padding-top: 5rem;
        padding-bottom: 5rem;
    }

    .lg\:pt-0 {
        padding-top: 0;
    }

    .lg\:pr-4 {
        padding-right: 1rem;
    }

    .lg\:pb-4 {
        padding-bottom: 1rem;
    }

    .lg\:pr-5 {
        padding-right: 1.25rem;
    }

    .lg\:pb-5 {
        padding-bottom: 1.25rem;
    }

    .lg\:pt-8 {
        padding-top: 2rem;
    }

    .lg\:pl-8 {
        padding-left: 2rem;
    }

    .lg\:pt-10 {
        padding-top: 2.5rem;
    }

    .lg\:pt-14 {
        padding-top: 3.5rem;
    }

    .lg\:pr-14 {
        padding-right: 3.5rem;
    }

    .lg\:pl-14 {
        padding-left: 3.5rem;
    }

    .lg\:pb-15 {
        padding-bottom: 3.75rem;
    }

    .lg\:pb-18 {
        padding-bottom: 4.5rem;
    }

    .lg\:pb-20 {
        padding-bottom: 5rem;
    }

    .lg\:pt-30 {
        padding-top: 7.5rem;
    }

    .lg\:pt-32 {
        padding-top: 8rem;
    }

    .lg\:pb-32 {
        padding-bottom: 8rem;
    }

    .lg\:pb-40 {
        padding-bottom: 10rem;
    }

    .lg\:pt-44 {
        padding-top: 11rem;
    }

    .lg\:pt-48 {
        padding-top: 12rem;
    }

    .lg\:pr-col {
        padding-right: 110px;
    }

    .lg\:pl-col {
        padding-left: 110px;
    }

    .lg\:absolute {
        position: absolute;
    }

    .lg\:text-left {
        text-align: left;
    }

    .lg\:text-right {
        text-align: right;
    }

    .lg\:w-12 {
        width: 3rem;
    }

    .lg\:w-1\/2 {
        width: 50%;
    }

    .lg\:w-1\/3 {
        width: 33.333333%;
    }

    .lg\:w-1\/4 {
        width: 25%;
    }

    .lg\:w-1\/5 {
        width: 20%;
    }

    .lg\:w-2\/5 {
        width: 40%;
    }

    .lg\:w-3\/5 {
        width: 60%;
    }

    .lg\:w-4\/5 {
        width: 80%;
    }

    .lg\:w-5\/12 {
        width: 41.666667%;
    }

    .lg\:w-10\/12 {
        width: 83.333333%;
    }
}

@media (min-width: 1200px) {
    .xl\:container {
        width: 100%;
        margin-right: auto;
        margin-left: auto;
    }
}

@media (min-width: 1200px) and (min-width: 576px) {
    .xl\:container {
        max-width: 576px;
    }
}

@media (min-width: 1200px) and (min-width: 768px) {
    .xl\:container {
        max-width: 768px;
    }
}

@media (min-width: 1200px) and (min-width: 992px) {
    .xl\:container {
        max-width: 992px;
    }
}

@media (min-width: 1200px) and (min-width: 1200px) {
    .xl\:container {
        max-width: 1200px;
    }
}

@media (min-width: 1200px) {
    .xl\:float-right {
        float: right;
    }

    .xl\:text-19 {
        font-size: 1.2rem;
    }

    .xl\:mt-0 {
        margin-top: 0;
    }

    .xl\:mb-0 {
        margin-bottom: 0;
    }

    .xl\:mb-22 {
        margin-bottom: 5.5rem;
    }

    .xl\:ml-col {
        margin-left: 110px;
    }

    .xl\:-mt-8 {
        margin-top: -2rem;
    }

    .xl\:-mt-18 {
        margin-top: -4.5rem;
    }

    .xl\:py-5 {
        padding-top: 1.25rem;
        padding-bottom: 1.25rem;
    }

    .xl\:px-20 {
        padding-left: 5rem;
        padding-right: 5rem;
    }

    .xl\:pr-16 {
        padding-right: 4rem;
    }

    .xl\:pl-16 {
        padding-left: 4rem;
    }

    .xl\:pr-18 {
        padding-right: 4.5rem;
    }

    .xl\:pb-48 {
        padding-bottom: 12rem;
    }

    .xl\:w-2\/3 {
        width: 66.666667%;
    }

    .xl\:w-4\/12 {
        width: 33.333333%;
    }

    .xl\:w-6\/12 {
        width: 50%;
    }

    .xl\:w-8\/12 {
        width: 66.666667%;
    }

    .xl\:w-10\/12 {
        width: 83.333333%;
    }

    .xl\:translate-x-4 {
        transform: translateX(1rem);
    }

    .xl\:translate-x-24 {
        transform: translateX(6rem);
    }
}

/**
momentsdevie.css
 */
@font-face {
    font-family: swiper-icons;
    src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
    font-weight: 400;
    font-style: normal;
}

:root {
    --swiper-theme-color: #007aff;
}

.swiper-container {
    margin-left: auto;
    margin-right: auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
}

.swiper-container-vertical>.swiper-wrapper {
    flex-direction: column;
}

.swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box;
}

.swiper-container-android .swiper-slide,
.swiper-wrapper {
    transform: translateZ(0);
}

.swiper-container-multirow>.swiper-wrapper {
    flex-wrap: wrap;
}

.swiper-container-multirow-column>.swiper-wrapper {
    flex-wrap: wrap;
    flex-direction: column;
}

.swiper-container-free-mode>.swiper-wrapper {
    transition-timing-function: ease-out;
    margin: 0 auto;
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    position: relative;
    transition-property: transform;
}

.swiper-slide-invisible-blank {
    visibility: hidden;
}

.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
    height: auto;
}

.swiper-container-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height;
}

.swiper-container-3d {
    perspective: 1200px;
}

.swiper-container-3d .swiper-cube-shadow,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-wrapper {
    transform-style: preserve-3d;
}

.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 10;
}

.swiper-container-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(270deg, rgba(0, 0, 0, 0.5), transparent);
}

.swiper-container-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.5), transparent);
}

.swiper-container-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(0deg, rgba(0, 0, 0, 0.5), transparent);
}

.swiper-container-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.5), transparent);
}

.swiper-container-css-mode>.swiper-wrapper {
    overflow: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.swiper-container-css-mode>.swiper-wrapper::-webkit-scrollbar {
    display: none;
}

.swiper-container-css-mode>.swiper-wrapper>.swiper-slide {
    scroll-snap-align: start start;
}

.swiper-container-horizontal.swiper-container-css-mode>.swiper-wrapper {
    -ms-scroll-snap-type: x mandatory;
    scroll-snap-type: x mandatory;
}

.swiper-container-vertical.swiper-container-css-mode>.swiper-wrapper {
    -ms-scroll-snap-type: y mandatory;
    scroll-snap-type: y mandatory;
}

:root {
    --swiper-navigation-size: 44px;
}

.swiper-button-next,
.swiper-button-prev {
    position: absolute;
    top: 50%;
    width: 27px;
    width: calc(var(--swiper-navigation-size) / 44 * 27);
    height: 44px;
    height: var(--swiper-navigation-size);
    margin-top: -22px;
    margin-top: calc(-1 * var(--swiper-navigation-size) / 2);
    z-index: 10;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--swiper-theme-color);
    color: var(--swiper-navigation-color, var(--swiper-theme-color));
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
    opacity: 0.35;
    cursor: auto;
    pointer-events: none;
}

.swiper-button-next:after,
.swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: 44px;
    font-size: var(--swiper-navigation-size);
    text-transform: none !important;
    letter-spacing: 0;
    text-transform: none;
    font-feature-settings: normal;
    font-variant: normal;
    line-height: 1;
}

.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
    left: 10px;
    right: auto;
}

.swiper-button-prev:after,
.swiper-container-rtl .swiper-button-next:after {
    content: "prev";
}

.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
    right: 10px;
    left: auto;
}

.swiper-button-next:after,
.swiper-container-rtl .swiper-button-prev:after {
    content: "next";
}

.swiper-button-next.swiper-button-white,
.swiper-button-prev.swiper-button-white {
    --swiper-navigation-color: var(--vyv-blanc);
}

.swiper-button-next.swiper-button-black,
.swiper-button-prev.swiper-button-black {
    --swiper-navigation-color: var(--vyv-noir);
}

.swiper-button-lock {
    display: none;
}

.swiper-pagination {
    position: absolute;
    text-align: center;
    transition: opacity 0.3s;
    transform: translateZ(0);
    z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0;
}

.swiper-container-horizontal>.swiper-pagination-bullets,
.swiper-pagination-custom,
.swiper-pagination-fraction {
    bottom: 10px;
    left: 0;
    width: 100%;
}

.swiper-pagination-bullets-dynamic {
    overflow: hidden;
    font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transform: scale(0.33);
    position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active,
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(0.33);
}

.swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 100%;
    background: var(--vyv-noir);
    opacity: 0.2;
}

button.swiper-pagination-bullet {
    border: none;
    margin: 0;
    padding: 0;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer;
}

.swiper-pagination-bullet-active {
    opacity: 1;
    background: var(--swiper-theme-color);
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
}

.swiper-container-vertical>.swiper-pagination-bullets {
    right: 10px;
    top: 50%;
    transform: translate3d(0, -50%, 0);
}

.swiper-container-vertical>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 6px 0;
    display: block;
}

.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    top: 50%;
    transform: translateY(-50%);
    width: 8px;
}

.swiper-container-vertical>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    display: inline-block;
    transition: transform 0.2s, top 0.2s;
}

.swiper-container-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 4px;
}

.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
}

.swiper-container-horizontal>.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform 0.2s, left 0.2s;
}

.swiper-container-horizontal.swiper-container-rtl>.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform 0.2s, right 0.2s;
}

.swiper-pagination-progressbar {
    background: rgba(0, 0, 0, 0.25);
    position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-theme-color);
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transform-origin: left top;
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: right top;
}

.swiper-container-horizontal>.swiper-pagination-progressbar,
.swiper-container-vertical>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: 4px;
    left: 0;
    top: 0;
}

.swiper-container-horizontal>.swiper-pagination-progressbar.swiper-pagination-progressbar-opposite,
.swiper-container-vertical>.swiper-pagination-progressbar {
    width: 4px;
    height: 100%;
    left: 0;
    top: 0;
}

.swiper-pagination-white {
    --swiper-pagination-color: var(--vyv-blanc);
}

.swiper-pagination-black {
    --swiper-pagination-color: var(--vyv-noir);
}

.swiper-pagination-lock {
    display: none;
}

.swiper-scrollbar {
    border-radius: 10px;
    position: relative;
    -ms-touch-action: none;
    background: rgba(0, 0, 0, 0.1);
}

.swiper-container-horizontal>.swiper-scrollbar {
    position: absolute;
    left: 1%;
    bottom: 3px;
    z-index: 50;
    height: 5px;
    width: 98%;
}

.swiper-container-vertical>.swiper-scrollbar {
    position: absolute;
    right: 3px;
    top: 1%;
    z-index: 50;
    width: 5px;
    height: 98%;
}

.swiper-scrollbar-drag {
    height: 100%;
    width: 100%;
    position: relative;
    background: rgba(0, 0, 0, 0.5);
    border-radius: 10px;
    left: 0;
    top: 0;
}

.swiper-scrollbar-cursor-drag {
    cursor: move;
}

.swiper-scrollbar-lock {
    display: none;
}

.swiper-zoom-container {
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.swiper-zoom-container>canvas,
.swiper-zoom-container>img,
.swiper-zoom-container>svg {
    max-width: 100%;
    max-height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

.swiper-slide-zoomed {
    cursor: move;
}

.swiper-lazy-preloader {
    width: 42px;
    height: 42px;
    position: absolute;
    left: 50%;
    top: 50%;
    margin-left: -21px;
    margin-top: -21px;
    z-index: 10;
    transform-origin: 50%;
    -webkit-animation: swiper-preloader-spin 1s linear infinite;
    animation: swiper-preloader-spin 1s linear infinite;
    box-sizing: border-box;
    border-left: 4px solid var(--swiper-theme-color);
    border-bottom: 4px solid var(--swiper-theme-color);
    border-right: 4px solid var(--swiper-theme-color);
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-radius: 50%;
    border-top: 4px solid transparent;
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: var(--vyv-blanc);
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: var(--vyv-noir);
}

@-webkit-keyframes swiper-preloader-spin {
    to {
        transform: rotate(1turn);
    }
}

@keyframes swiper-preloader-spin {
    to {
        transform: rotate(1turn);
    }
}

.swiper-container .swiper-notification {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    opacity: 0;
    z-index: -1000;
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
    transition-timing-function: ease-out;
}

.swiper-container-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity;
}

.swiper-container-fade .swiper-slide .swiper-slide {
    pointer-events: none;
}

.swiper-container-fade .swiper-slide-active,
.swiper-container-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}

.swiper-container-cube {
    overflow: visible;
}

.swiper-container-cube .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%;
}

.swiper-container-cube .swiper-slide .swiper-slide {
    pointer-events: none;
}

.swiper-container-cube.swiper-container-rtl .swiper-slide {
    transform-origin: 100% 0;
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}

.swiper-container-cube .swiper-slide-active,
.swiper-container-cube .swiper-slide-next,
.swiper-container-cube .swiper-slide-next+.swiper-slide,
.swiper-container-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible;
}

.swiper-container-cube .swiper-slide-shadow-bottom,
.swiper-container-cube .swiper-slide-shadow-left,
.swiper-container-cube .swiper-slide-shadow-right,
.swiper-container-cube .swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.swiper-container-cube .swiper-cube-shadow {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: var(--vyv-noir);
    opacity: 0.6;
    filter: blur(50px);
    z-index: 0;
}

.swiper-container-flip {
    overflow: visible;
}

.swiper-container-flip .swiper-slide {
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: 1;
}

.swiper-container-flip .swiper-slide .swiper-slide {
    pointer-events: none;
}

.swiper-container-flip .swiper-slide-active,
.swiper-container-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto;
}

.swiper-container-flip .swiper-slide-shadow-bottom,
.swiper-container-flip .swiper-slide-shadow-left,
.swiper-container-flip .swiper-slide-shadow-right,
.swiper-container-flip .swiper-slide-shadow-top {
    z-index: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.slider-pagination {
    display: flex;
    align-items: center;
    justify-content: center;
}

.swiper-bullet {
    display: block;
    background-color: var(--vyv-violet);
    border-radius: 9999px;
    opacity: 0.5;
    transition-property: background-color, border-color, color, fill, stroke,
        opacity, box-shadow, transform;
    transition-duration: 0.2s;
    height: 10px;
    width: 10px;
}

.swiper-bullet-active {
    opacity: 1;
}

.swiper-button-disabled {
    opacity: 0.25;
    cursor: not-allowed;
}

.carousel-1 {
    position: relative;
    height: auto;
}

@media (min-width: 992px) {
    .carousel-1 {
        padding-top: 3rem;
        padding-bottom: 3rem;
    }
}

.carousel-1 .swiper-container {
    height: 450px;
}

@media (min-width: 768px) {
    .carousel-1 .swiper-container {
        height: 620px;
    }
}

.carousel-1 .carousel-navigation {
    position: absolute;
    width: 100%;
    display: none;
    align-items: center;
    justify-content: space-between;
    transition-property: background-color, border-color, color, fill, stroke,
        opacity, box-shadow, transform;
    left: 50%;
    top: 42%;
    transform: translate(-50%, -50%);
    width: calc(100% + 50px);
}

@media (min-width: 992px) {
    .carousel-1 .carousel-navigation {
        display: flex;
        width: calc(100% + 150px);
    }
}

.carousel-1 .carousel-pagination,
.carousel-2 .carousel-pagination {
    position: absolute;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    bottom: -2rem;
    height: 1rem;
}

.carousel-navigation button {
    color: var(--vyv-violet);
    transition-property: background-color, border-color, color, fill, stroke,
        opacity, box-shadow, transform;
    transform-origin: center;
    transition-duration: 0.2s;
}

.carousel-navigation button:hover {
    color: #82358b;
    transform: scale(1.05);
}

.carousel-1 .carousel-title {
    text-align: center;
    font-weight: 700;
    font-size: 1.275rem;
    line-height: 1.25;
    padding-bottom: 1.5rem;
    color: var(--vyv-violet);
}

@media (min-width: 768px) {
    .carousel-1 .carousel-title {
        padding-top: 1.5rem;
    }
}

.carousel-1 .swiper-slide {
    transition-property: background-color, border-color, color, fill, stroke,
        opacity, box-shadow, transform;
    transition-duration: 0.2s;
    display: flex;
    justify-content: center;
    align-items: center;
}

.carousel-1 .swiper-slide img {
    position: absolute;
    width: 100%;
}

.carousel-1 .swiper-slide .carousel-btn {
    position: absolute;
    color: var(--vyv-violet);
    transition-property: background-color, border-color, color, fill, stroke,
        opacity, box-shadow, transform;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 20;
    opacity: 0;
    transform: scale(0);
    left: 1.5rem;
    top: 50%;
    transform: translateX(-50%);
}

@media (min-width: 992px) {
    .carousel-1 .swiper-slide .carousel-btn {
        left: 90px;
    }
}

.carousel-1 .swiper-slide .carousel-btn:focus,
.carousel-1 .swiper-slide .carousel-btn:hover {
    color: var(--vyv-bleu-fonce);
}

.carousel-1 .swiper-slide-next {
    justify-content: flex-end;
}

.carousel-1 .swiper-slide-prev {
    justify-content: flex-start;
}

.carousel-1 .image-wrapper {
    position: relative;
    width: 100%;
    height: 150px;
}

@media (min-width: 1200px) {
    .carousel-1 .image-wrapper {
        height: 200px;
    }
}

.carousel-1 .image-wrapper img {
    display: block;
    width: calc(100% - 4px);
    height: calc(100% - 4px);
    border-left: 2px solid var(--vyv-fond-gris);
    border-right: 2px solid var(--vyv-fond-gris);
    margin: 2px auto 0;
    -o-object-fit: cover;
    object-fit: cover;
}

@media (min-width: 992px) {
    .carousel-1 .image-wrapper:after {
        content: "";
        display: block;
        width: calc(100% - 4px);
        height: calc(100% - 4px);
        opacity: 1;
        transition: all 0.2s ease-in-out;
        background-color: rgba(67, 72, 79, 0.5);
        position: absolute;
        top: 50%;
        left: 50%;
        z-index: 0;
        transform: translate(-50%, -50%);
    }

    .carousel-1 .image-wrapper:hover:after {
        opacity: 0;
    }
}

.carousel-1 .swiper-slide-active .image-wrapper {
    height: 340px;
}

@media (min-width: 992px) {
    .carousel-1 .swiper-slide-active .image-wrapper {
        height: 501px;
    }
}

.carousel-1 .image-mask {
    position: relative;
    display: block;
    background-repeat: no-repeat;
    background-position: 50%;
    background-size: cover;
    transition-duration: 0.3s;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transform-origin: center;
    width: 100%;
    height: 100%;
    background-color: transparent;
    background-image: url(../images/mask-carousel-inactive.svg);
    content: "";
    z-index: 1;
    transition-property: background-color;
}

@media screen and (min-width: 968px) {
    .carousel-1 .image-mask {
        width: 100%;
        height: 100%;
    }
}

.carousel-1 .image-mask .desc {
    display: none;
    color: var(--vyv-blanc);
    font-size: 0.875rem;
    visibility: hidden;
    opacity: 0;
    transition-property: opacity;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    padding: 80px;
}

@media (min-width: 992px) {
    .carousel-1 .image-mask .desc {
        font-size: 1rem;
        padding: 150px;
    }
}

.carousel-1 .image-mask:hover {
    background-color: transparent;
}

@media (min-width: 992px) {
    .carousel-1 .swiper-slide-active .desc {
        display: block;
    }
}

.swiper-slide-active .image-wrapper {
    position: relative;
}

@media (min-width: 992px) {
    .swiper-slide-active .image-wrapper:after {
        opacity: 0;
        background-color: var(--vyv-violet);
        position: absolute;
    }

    .swiper-slide-active .image-wrapper:hover:after {
        opacity: 1;
    }
}

.carousel-1 .swiper-slide-active .image-mask {
    background-color: transparent;
    background-image: url(../images/mask-carousel-inactive.svg);
}

@media (min-width: 992px) {
    .carousel-1 .swiper-slide-active .image-mask {
        background-image: url(../images/mask-carousel-active.png);
    }

    .carousel-1 .swiper-slide-active .image-mask:hover .desc {
        visibility: visible;
        opacity: 1;
        transition-duration: 0.3s;
        transition-delay: 0.2s;
        z-index: 900;
    }
}

.carousel-1 .swiper-slide>div {
    width: 150px;
}

@media (min-width: 1200px) {
    .carousel-1 .swiper-slide>div {
        width: 200px;
    }
}

.carousel-1 .swiper-slide-active>div {
    position: absolute;
    top: 0;
    width: 340px;
}

@media (min-width: 992px) {
    .carousel-1 .swiper-slide-active>div {
        width: 635px;
    }
}

.carousel-1 .swiper-slide-active>div .carousel-title {
    color: #ee7837;
    margin-top: 1.5rem;
}

@media (min-width: 992px) {
    .carousel-1 .swiper-slide-active>div .carousel-title {
        font-size: 1.625rem;
    }
}

.carousel-1 .swiper-slide-active>div .carousel-btn {
    opacity: 1;
    transform: scale(1);
    transition-duration: 0.2s;
    transition-delay: 0.2s;
}

.carousel-1 .swiper-slide-active>div:hover .carousel-btn {
    z-index: 0;
}

@media screen and (max-width: 991px) {
    .carousel-1 .swiper-slide-active>div:hover .carousel-btn {
        z-index: 50;
    }
}

/**
externel.css
 */
:root {
    --blue: #007bff;
    --indigo: #6610f2;
    --purple: #6f42c1;
    --pink: #e83e8c;
    --red: #dc3545;
    --orange: #eb6530;
    --yellow: #f8b014;
    --green: #28a745;
    --teal: #20c997;
    --cyan: var(--vyv-bleu-fonce);
    --white: var(--vyv-blanc);
    --gray: #878786;
    --gray-dark: #343a40;
    --primary: #472783;
    --secondary: var(--vyv-bleu-fonce);
    --success: #28a745;
    --info: var(--vyv-bleu-fonce);
    --warning: #f8b014;
    --danger: #dc3545;
    --light: #f8f9f8;
    --dark: #343a40;
    --breakpoint-xs: 0;
    --breakpoint-sm: 576px;
    --breakpoint-md: 768px;
    --breakpoint-lg: 992px;
    --breakpoint-xl: 1200px;
    --font-family-sans-serif: "Wigrum", "Segoe UI", Roboto, "Helvetica Neue",
        Arial, "Noto Sans", sans-serif;
    --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas,
        "Liberation Mono", "Courier New", monospace;
    --vyv-blanc: #ffffff;
    --vyv-noir: #000000;
    --vyv-violet: #472583;
    --vyv-violet-fonce: #a61680;
    --vyv-violet-clair: #eba4a7;
    --vyv-violet-moyen: #cb5c99;
    --vyv-bleu-moyen: #009ec9;
    --vyv-bleu-fonce: #0074b0;
    --vyv-gris-texte: #6f6f6f;
    --vyv-fond-gris: #f8f7f7;
    --vyv-vert-moyen: #6aa22f;
    --vyv-vert-fonce: #1d8839;
    --vyv-orange-fonce: #e42312;
    --vyv-orange-moyen: #ed7102;
    --vyv-orange-clair: #ffdd00;
    --vyv-corail-moyen: #e56b84;
}

.img-fluid,
.img-thumbnail {
    max-width: 100%;
    height: auto;
}

.img-thumbnail {
    padding: 0.25rem;
    background-color: var(--vyv-blanc);
    border: 1px solid #dee2e6;
    border-radius: 0.25rem;
}

.figure {
    display: inline-block;
}

.figure-img {
    margin-bottom: 0.5rem;
    line-height: 1;
}

.figure-caption {
    font-size: 90%;
    color: #878786;
}

.container,
.container-fluid,
.container-lg,
.container-md,
.container-sm,
.container-xl {
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 576px) {

    .container,
    .container-sm {
        max-width: 540px;
    }
}

@media (min-width: 768px) {

    .container,
    .container-md,
    .container-sm {
        max-width: 720px;
    }
}

@media (min-width: 992px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm {
        max-width: 960px;
    }
}

@media (min-width: 1200px) {

    .container,
    .container-lg,
    .container-md,
    .container-sm,
    .container-xl {
        max-width: 1310px;
    }
}

.row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -10px;
    margin-left: -10px;
}

.no-gutters {
    margin-right: 0;
    margin-left: 0;
}

.no-gutters>.col,
.no-gutters>[class*="col-"] {
    padding-right: 0;
    padding-left: 0;
}

.col,
.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12,
.col-auto,
.col-lg,
.col-lg-1,
.col-lg-2,
.col-lg-3,
.col-lg-4,
.col-lg-5,
.col-lg-6,
.col-lg-7,
.col-lg-8,
.col-lg-9,
.col-lg-10,
.col-lg-11,
.col-lg-12,
.col-lg-auto,
.col-md,
.col-md-1,
.col-md-2,
.col-md-3,
.col-md-4,
.col-md-5,
.col-md-6,
.col-md-7,
.col-md-8,
.col-md-9,
.col-md-10,
.col-md-11,
.col-md-12,
.col-md-auto,
.col-sm,
.col-sm-1,
.col-sm-2,
.col-sm-3,
.col-sm-4,
.col-sm-5,
.col-sm-6,
.col-sm-7,
.col-sm-8,
.col-sm-9,
.col-sm-10,
.col-sm-11,
.col-sm-12,
.col-sm-auto,
.col-xl,
.col-xl-1,
.col-xl-2,
.col-xl-3,
.col-xl-4,
.col-xl-5,
.col-xl-6,
.col-xl-7,
.col-xl-8,
.col-xl-9,
.col-xl-10,
.col-xl-11,
.col-xl-12,
.col-xl-auto {
    position: relative;
    width: 100%;
    padding-right: 10px;
    padding-left: 10px;
}

.col {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
}

.row-cols-1>* {
    flex: 0 0 100%;
    max-width: 100%;
}

.row-cols-2>* {
    flex: 0 0 50%;
    max-width: 50%;
}

.row-cols-3>* {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
}

.row-cols-4>* {
    flex: 0 0 25%;
    max-width: 25%;
}

.row-cols-5>* {
    flex: 0 0 20%;
    max-width: 20%;
}

.row-cols-6>* {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
}

.col-auto {
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
}

.col-1 {
    flex: 0 0 8.3333333333%;
    max-width: 8.3333333333%;
}

.col-2 {
    flex: 0 0 16.6666666667%;
    max-width: 16.6666666667%;
}

.col-3 {
    flex: 0 0 25%;
    max-width: 25%;
}

.col-4 {
    flex: 0 0 33.3333333333%;
    max-width: 33.3333333333%;
}

.col-5 {
    flex: 0 0 41.6666666667%;
    max-width: 41.6666666667%;
}

.col-6 {
    flex: 0 0 50%;
    max-width: 50%;
}

.col-7 {
    flex: 0 0 58.3333333333%;
    max-width: 58.3333333333%;
}

.col-8 {
    flex: 0 0 66.6666666667%;
    max-width: 66.6666666667%;
}

.col-9 {
    flex: 0 0 75%;
    max-width: 75%;
}

.col-10 {
    flex: 0 0 83.3333333333%;
    max-width: 83.3333333333%;
}

.col-11 {
    flex: 0 0 91.6666666667%;
    max-width: 91.6666666667%;
}

.col-12 {
    flex: 0 0 100%;
    max-width: 100%;
}

.order-first {
    order: -1;
}

.order-last {
    order: 13;
}

.order-0 {
    order: 0;
}

.order-1 {
    order: 1;
}

.order-2 {
    order: 2;
}

.order-3 {
    order: 3;
}

.order-4 {
    order: 4;
}

.order-5 {
    order: 5;
}

.order-6 {
    order: 6;
}

.order-7 {
    order: 7;
}

.order-8 {
    order: 8;
}

.order-9 {
    order: 9;
}

.order-10 {
    order: 10;
}

.order-11 {
    order: 11;
}

.order-12 {
    order: 12;
}

.offset-1 {
    margin-left: 8.3333333333%;
}

.offset-2 {
    margin-left: 16.6666666667%;
}

.offset-3 {
    margin-left: 25%;
}

.offset-4 {
    margin-left: 33.3333333333%;
}

.offset-5 {
    margin-left: 41.6666666667%;
}

.offset-6 {
    margin-left: 50%;
}

.offset-7 {
    margin-left: 58.3333333333%;
}

.offset-8 {
    margin-left: 66.6666666667%;
}

.offset-9 {
    margin-left: 75%;
}

.offset-10 {
    margin-left: 83.3333333333%;
}

.offset-11 {
    margin-left: 91.6666666667%;
}

@media (min-width: 576px) {
    .col-sm {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }

    .row-cols-sm-1>* {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .row-cols-sm-2>* {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .row-cols-sm-3>* {
        flex: 0 0 33.3333333333%;
        max-width: 33.3333333333%;
    }

    .row-cols-sm-4>* {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .row-cols-sm-5>* {
        flex: 0 0 20%;
        max-width: 20%;
    }

    .row-cols-sm-6>* {
        flex: 0 0 16.6666666667%;
        max-width: 16.6666666667%;
    }

    .col-sm-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%;
    }

    .col-sm-1 {
        flex: 0 0 8.3333333333%;
        max-width: 8.3333333333%;
    }

    .col-sm-2 {
        flex: 0 0 16.6666666667%;
        max-width: 16.6666666667%;
    }

    .col-sm-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-sm-4 {
        flex: 0 0 33.3333333333%;
        max-width: 33.3333333333%;
    }

    .col-sm-5 {
        flex: 0 0 41.6666666667%;
        max-width: 41.6666666667%;
    }

    .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-sm-7 {
        flex: 0 0 58.3333333333%;
        max-width: 58.3333333333%;
    }

    .col-sm-8 {
        flex: 0 0 66.6666666667%;
        max-width: 66.6666666667%;
    }

    .col-sm-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-sm-10 {
        flex: 0 0 83.3333333333%;
        max-width: 83.3333333333%;
    }

    .col-sm-11 {
        flex: 0 0 91.6666666667%;
        max-width: 91.6666666667%;
    }

    .col-sm-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .order-sm-first {
        order: -1;
    }

    .order-sm-last {
        order: 13;
    }

    .order-sm-0 {
        order: 0;
    }

    .order-sm-1 {
        order: 1;
    }

    .order-sm-2 {
        order: 2;
    }

    .order-sm-3 {
        order: 3;
    }

    .order-sm-4 {
        order: 4;
    }

    .order-sm-5 {
        order: 5;
    }

    .order-sm-6 {
        order: 6;
    }

    .order-sm-7 {
        order: 7;
    }

    .order-sm-8 {
        order: 8;
    }

    .order-sm-9 {
        order: 9;
    }

    .order-sm-10 {
        order: 10;
    }

    .order-sm-11 {
        order: 11;
    }

    .order-sm-12 {
        order: 12;
    }

    .offset-sm-0 {
        margin-left: 0;
    }

    .offset-sm-1 {
        margin-left: 8.3333333333%;
    }

    .offset-sm-2 {
        margin-left: 16.6666666667%;
    }

    .offset-sm-3 {
        margin-left: 25%;
    }

    .offset-sm-4 {
        margin-left: 33.3333333333%;
    }

    .offset-sm-5 {
        margin-left: 41.6666666667%;
    }

    .offset-sm-6 {
        margin-left: 50%;
    }

    .offset-sm-7 {
        margin-left: 58.3333333333%;
    }

    .offset-sm-8 {
        margin-left: 66.6666666667%;
    }

    .offset-sm-9 {
        margin-left: 75%;
    }

    .offset-sm-10 {
        margin-left: 83.3333333333%;
    }

    .offset-sm-11 {
        margin-left: 91.6666666667%;
    }
}

@media (min-width: 768px) {
    .col-md {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }

    .row-cols-md-1>* {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .row-cols-md-2>* {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .row-cols-md-3>* {
        flex: 0 0 33.3333333333%;
        max-width: 33.3333333333%;
    }

    .row-cols-md-4>* {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .row-cols-md-5>* {
        flex: 0 0 20%;
        max-width: 20%;
    }

    .row-cols-md-6>* {
        flex: 0 0 16.6666666667%;
        max-width: 16.6666666667%;
    }

    .col-md-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%;
    }

    .col-md-1 {
        flex: 0 0 8.3333333333%;
        max-width: 8.3333333333%;
    }

    .col-md-2 {
        flex: 0 0 16.6666666667%;
        max-width: 16.6666666667%;
    }

    .col-md-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-md-4 {
        flex: 0 0 33.3333333333%;
        max-width: 33.3333333333%;
    }

    .col-md-5 {
        flex: 0 0 41.6666666667%;
        max-width: 41.6666666667%;
    }

    .col-md-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-md-7 {
        flex: 0 0 58.3333333333%;
        max-width: 58.3333333333%;
    }

    .col-md-8 {
        flex: 0 0 66.6666666667%;
        max-width: 66.6666666667%;
    }

    .col-md-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-md-10 {
        flex: 0 0 83.3333333333%;
        max-width: 83.3333333333%;
    }

    .col-md-11 {
        flex: 0 0 91.6666666667%;
        max-width: 91.6666666667%;
    }

    .col-md-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .order-md-first {
        order: -1;
    }

    .order-md-last {
        order: 13;
    }

    .order-md-0 {
        order: 0;
    }

    .order-md-1 {
        order: 1;
    }

    .order-md-2 {
        order: 2;
    }

    .order-md-3 {
        order: 3;
    }

    .order-md-4 {
        order: 4;
    }

    .order-md-5 {
        order: 5;
    }

    .order-md-6 {
        order: 6;
    }

    .order-md-7 {
        order: 7;
    }

    .order-md-8 {
        order: 8;
    }

    .order-md-9 {
        order: 9;
    }

    .order-md-10 {
        order: 10;
    }

    .order-md-11 {
        order: 11;
    }

    .order-md-12 {
        order: 12;
    }

    .offset-md-0 {
        margin-left: 0;
    }

    .offset-md-1 {
        margin-left: 8.3333333333%;
    }

    .offset-md-2 {
        margin-left: 16.6666666667%;
    }

    .offset-md-3 {
        margin-left: 25%;
    }

    .offset-md-4 {
        margin-left: 33.3333333333%;
    }

    .offset-md-5 {
        margin-left: 41.6666666667%;
    }

    .offset-md-6 {
        margin-left: 50%;
    }

    .offset-md-7 {
        margin-left: 58.3333333333%;
    }

    .offset-md-8 {
        margin-left: 66.6666666667%;
    }

    .offset-md-9 {
        margin-left: 75%;
    }

    .offset-md-10 {
        margin-left: 83.3333333333%;
    }

    .offset-md-11 {
        margin-left: 91.6666666667%;
    }
}

@media (min-width: 992px) {
    .col-lg {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }

    .row-cols-lg-1>* {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .row-cols-lg-2>* {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .row-cols-lg-3>* {
        flex: 0 0 33.3333333333%;
        max-width: 33.3333333333%;
    }

    .row-cols-lg-4>* {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .row-cols-lg-5>* {
        flex: 0 0 20%;
        max-width: 20%;
    }

    .row-cols-lg-6>* {
        flex: 0 0 16.6666666667%;
        max-width: 16.6666666667%;
    }

    .col-lg-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%;
    }

    .col-lg-1 {
        flex: 0 0 8.3333333333%;
        max-width: 8.3333333333%;
    }

    .col-lg-2 {
        flex: 0 0 16.6666666667%;
        max-width: 16.6666666667%;
    }

    .col-lg-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-lg-4 {
        flex: 0 0 33.3333333333%;
        max-width: 33.3333333333%;
    }

    .col-lg-5 {
        flex: 0 0 41.6666666667%;
        max-width: 41.6666666667%;
    }

    .col-lg-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-lg-7 {
        flex: 0 0 58.3333333333%;
        max-width: 58.3333333333%;
    }

    .col-lg-8 {
        flex: 0 0 66.6666666667%;
        max-width: 66.6666666667%;
    }

    .col-lg-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-lg-10 {
        flex: 0 0 83.3333333333%;
        max-width: 83.3333333333%;
    }

    .col-lg-11 {
        flex: 0 0 91.6666666667%;
        max-width: 91.6666666667%;
    }

    .col-lg-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .order-lg-first {
        order: -1;
    }

    .order-lg-last {
        order: 13;
    }

    .order-lg-0 {
        order: 0;
    }

    .order-lg-1 {
        order: 1;
    }

    .order-lg-2 {
        order: 2;
    }

    .order-lg-3 {
        order: 3;
    }

    .order-lg-4 {
        order: 4;
    }

    .order-lg-5 {
        order: 5;
    }

    .order-lg-6 {
        order: 6;
    }

    .order-lg-7 {
        order: 7;
    }

    .order-lg-8 {
        order: 8;
    }

    .order-lg-9 {
        order: 9;
    }

    .order-lg-10 {
        order: 10;
    }

    .order-lg-11 {
        order: 11;
    }

    .order-lg-12 {
        order: 12;
    }

    .offset-lg-0 {
        margin-left: 0;
    }

    .offset-lg-1 {
        margin-left: 8.3333333333%;
    }

    .offset-lg-2 {
        margin-left: 16.6666666667%;
    }

    .offset-lg-3 {
        margin-left: 25%;
    }

    .offset-lg-4 {
        margin-left: 33.3333333333%;
    }

    .offset-lg-5 {
        margin-left: 41.6666666667%;
    }

    .offset-lg-6 {
        margin-left: 50%;
    }

    .offset-lg-7 {
        margin-left: 58.3333333333%;
    }

    .offset-lg-8 {
        margin-left: 66.6666666667%;
    }

    .offset-lg-9 {
        margin-left: 75%;
    }

    .offset-lg-10 {
        margin-left: 83.3333333333%;
    }

    .offset-lg-11 {
        margin-left: 91.6666666667%;
    }
}

@media (min-width: 1200px) {
    .col-xl {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }

    .row-cols-xl-1>* {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .row-cols-xl-2>* {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .row-cols-xl-3>* {
        flex: 0 0 33.3333333333%;
        max-width: 33.3333333333%;
    }

    .row-cols-xl-4>* {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .row-cols-xl-5>* {
        flex: 0 0 20%;
        max-width: 20%;
    }

    .row-cols-xl-6>* {
        flex: 0 0 16.6666666667%;
        max-width: 16.6666666667%;
    }

    .col-xl-auto {
        flex: 0 0 auto;
        width: auto;
        max-width: 100%;
    }

    .col-xl-1 {
        flex: 0 0 8.3333333333%;
        max-width: 8.3333333333%;
    }

    .col-xl-2 {
        flex: 0 0 16.6666666667%;
        max-width: 16.6666666667%;
    }

    .col-xl-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-xl-4 {
        flex: 0 0 33.3333333333%;
        max-width: 33.3333333333%;
    }

    .col-xl-5 {
        flex: 0 0 41.6666666667%;
        max-width: 41.6666666667%;
    }

    .col-xl-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-xl-7 {
        flex: 0 0 58.3333333333%;
        max-width: 58.3333333333%;
    }

    .col-xl-8 {
        flex: 0 0 66.6666666667%;
        max-width: 66.6666666667%;
    }

    .col-xl-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-xl-10 {
        flex: 0 0 83.3333333333%;
        max-width: 83.3333333333%;
    }

    .col-xl-11 {
        flex: 0 0 91.6666666667%;
        max-width: 91.6666666667%;
    }

    .col-xl-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }

    .order-xl-first {
        order: -1;
    }

    .order-xl-last {
        order: 13;
    }

    .order-xl-0 {
        order: 0;
    }

    .order-xl-1 {
        order: 1;
    }

    .order-xl-2 {
        order: 2;
    }

    .order-xl-3 {
        order: 3;
    }

    .order-xl-4 {
        order: 4;
    }

    .order-xl-5 {
        order: 5;
    }

    .order-xl-6 {
        order: 6;
    }

    .order-xl-7 {
        order: 7;
    }

    .order-xl-8 {
        order: 8;
    }

    .order-xl-9 {
        order: 9;
    }

    .order-xl-10 {
        order: 10;
    }

    .order-xl-11 {
        order: 11;
    }

    .order-xl-12 {
        order: 12;
    }

    .offset-xl-0 {
        margin-left: 0;
    }

    .offset-xl-1 {
        margin-left: 8.3333333333%;
    }

    .offset-xl-2 {
        margin-left: 16.6666666667%;
    }

    .offset-xl-3 {
        margin-left: 25%;
    }

    .offset-xl-4 {
        margin-left: 33.3333333333%;
    }

    .offset-xl-5 {
        margin-left: 41.6666666667%;
    }

    .offset-xl-6 {
        margin-left: 50%;
    }

    .offset-xl-7 {
        margin-left: 58.3333333333%;
    }

    .offset-xl-8 {
        margin-left: 66.6666666667%;
    }

    .offset-xl-9 {
        margin-left: 75%;
    }

    .offset-xl-10 {
        margin-left: 83.3333333333%;
    }

    .offset-xl-11 {
        margin-left: 91.6666666667%;
    }
}

.form-control {
    display: block;
    width: 100%;
    height: calc(2.2em + 0.2rem + 2px);
    padding: 0.2rem 0;
    font-size: 1.25rem;
    font-weight: 400;
    line-height: 1.7;
    color: #472682;
    background-color: transparent;
    background-clip: padding-box;
    border: 1px solid #472682;
    border-radius: 0;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .form-control {
        transition: none;
    }
}

.form-control::-ms-expand {
    background-color: transparent;
    border: 0;
}

.form-control:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #472682;
}

.form-control:focus {
    color: #472682;
    background-color: transparent;
    border-color: #c175ca;
    outline: 0;
    box-shadow: none;
}

.form-control::-moz-placeholder {
    color: #878786;
    opacity: 1;
}

.form-control:-ms-input-placeholder {
    color: #878786;
    opacity: 1;
}

.form-control::placeholder {
    color: #878786;
    opacity: 1;
}

.form-control:disabled,
.form-control[readonly] {
    background-color: #e9ecef;
    opacity: 1;
}

input[type="date"].form-control,
input[type="datetime-local"].form-control,
input[type="month"].form-control,
input[type="time"].form-control {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

select.form-control:focus::-ms-value {
    color: #472682;
    background-color: transparent;
}

.form-control-file,
.form-control-range {
    display: block;
    width: 100%;
}

.col-form-label {
    padding-top: calc(0.2rem + 1px);
    padding-bottom: calc(0.2rem + 1px);
    margin-bottom: 0;
    font-size: inherit;
    line-height: 1.7;
}

.col-form-label-lg {
    padding-top: calc(0.4em + 1px);
    padding-bottom: calc(0.4em + 1px);
    font-size: 2rem;
    line-height: 1.5;
}

.col-form-label-sm {
    padding-top: calc(0.4rem + 1px);
    padding-bottom: calc(0.4rem + 1px);
    font-size: 1.4rem;
    line-height: 1.5;
}

.form-control-plaintext {
    display: block;
    width: 100%;
    padding: 0.2rem 0;
    margin-bottom: 0;
    font-size: 1.25rem;
    line-height: 1.7;
    color: #878786;
    background-color: transparent;
    border: solid transparent;
    border-width: 1px 0;
}

.form-control-plaintext.form-control-lg,
.form-control-plaintext.form-control-sm {
    padding-right: 0;
    padding-left: 0;
}

.form-control-sm {
    height: calc(1.5em + 0.8rem + 2px);
    padding: 0.4rem 0;
    font-size: 1.4rem;
    line-height: 1.5;
    border-radius: 0;
}

.form-control-lg {
    height: calc(2.3em + 2px);
    padding: 0.4em 0;
    font-size: 2rem;
    line-height: 1.5;
    border-radius: 0;
}

select.form-control[multiple],
select.form-control[size],
textarea.form-control {
    height: auto;
}

.form-group {
    margin-bottom: 2em;
}

.form-text {
    display: block;
    margin-top: 0.25rem;
}

.form-row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -5px;
    margin-left: -5px;
}

.form-row>.col,
.form-row>[class*="col-"] {
    padding-right: 5px;
    padding-left: 5px;
}

.form-check {
    position: relative;
    display: block;
    padding-left: 1.25rem;
}

.form-check-input {
    position: absolute;
    margin-top: 0.3rem;
    margin-left: -1.25rem;
}

.form-check-input:disabled~.form-check-label,
.form-check-input[disabled]~.form-check-label {
    color: #878786;
}

.form-check-label {
    margin-bottom: 0;
}

.form-check-inline {
    display: inline-flex;
    align-items: center;
    padding-left: 0;
    margin-right: 0.75rem;
}

.form-check-inline .form-check-input {
    position: static;
    margin-top: 0;
    margin-right: 0.3125rem;
    margin-left: 0;
}

.valid-feedback {
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 80%;
    color: #28a745;
}

.valid-tooltip {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 5;
    display: none;
    max-width: 100%;
    padding: 0.25rem 0.5rem;
    margin-top: 0.1rem;
    font-size: 1.4rem;
    line-height: 1.7;
    color: var(--vyv-blanc);
    background-color: rgba(40, 167, 69, 0.9);
    border-radius: 0.25rem;
}

.is-valid~.valid-feedback,
.is-valid~.valid-tooltip,
.was-validated :valid~.valid-feedback,
.was-validated :valid~.valid-tooltip {
    display: block;
}

.form-control.is-valid,
.was-validated .form-control:valid {
    border-color: #28a745;
    padding-right: calc(1.7em + 0.4rem);
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right calc(0.425em + 0.1rem) center;
    background-size: calc(0.85em + 0.2rem) calc(0.85em + 0.2rem);
}

.form-control.is-valid:focus,
.was-validated .form-control:valid:focus {
    border-color: #28a745;
    box-shadow: 0 0 0 0.1rem rgba(40, 167, 69, 0.25);
}

.was-validated textarea.form-control:valid,
textarea.form-control.is-valid {
    padding-right: calc(1.7em + 0.4rem);
    background-position: top calc(0.425em + 0.1rem) right calc(0.425em + 0.1rem);
}

.custom-select.is-valid,
.was-validated .custom-select:valid {
    border-color: #28a745;
    padding-right: calc(0.75em + 3.3rem);
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'%3E%3Cpath fill='%233CBCD7' d='M.4 21.5l.1-1c.4-3.7 2.4-6.3 5.4-7.1 1.4-.4 4.2-.7 7.3 1.5L30 31.5l16.6-16.4.2-.2c3.1-2.2 5.9-1.8 7.3-1.4 3 .8 5 3.4 5.4 7.1l.1 1L30 46.8.4 21.5z'/%3E%3C/svg%3E") no-repeat right 0 center/16px 16px,
        url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8'%3E%3Cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3E%3C/svg%3E") transparent no-repeat center right 3rem / calc(0.85em + 0.2rem) calc(0.85em + 0.2rem);
}

.custom-select.is-valid:focus,
.was-validated .custom-select:valid:focus {
    border-color: #28a745;
    box-shadow: 0 0 0 0.1rem rgba(40, 167, 69, 0.25);
}

.form-check-input.is-valid~.form-check-label,
.was-validated .form-check-input:valid~.form-check-label {
    color: #28a745;
}

.form-check-input.is-valid~.valid-feedback,
.form-check-input.is-valid~.valid-tooltip,
.was-validated .form-check-input:valid~.valid-feedback,
.was-validated .form-check-input:valid~.valid-tooltip {
    display: block;
}

.custom-control-input.is-valid~.custom-control-label,
.was-validated .custom-control-input:valid~.custom-control-label {
    color: #28a745;
}

.custom-control-input.is-valid~.custom-control-label:before,
.was-validated .custom-control-input:valid~.custom-control-label:before {
    border-color: #28a745;
}

.custom-control-input.is-valid:checked~.custom-control-label:before,
.was-validated .custom-control-input:valid:checked~.custom-control-label:before {
    border-color: #34ce57;
    background-color: #34ce57;
}

.custom-control-input.is-valid:focus~.custom-control-label:before,
.was-validated .custom-control-input:valid:focus~.custom-control-label:before {
    box-shadow: 0 0 0 0.1rem rgba(40, 167, 69, 0.25);
}

.custom-control-input.is-valid:focus:not(:checked)~.custom-control-label:before,
.custom-file-input.is-valid~.custom-file-label,
.was-validated .custom-control-input:valid:focus:not(:checked)~.custom-control-label:before,
.was-validated .custom-file-input:valid~.custom-file-label {
    border-color: #28a745;
}

.custom-file-input.is-valid:focus~.custom-file-label,
.was-validated .custom-file-input:valid:focus~.custom-file-label {
    border-color: #28a745;
    box-shadow: 0 0 0 0.1rem rgba(40, 167, 69, 0.25);
}

.invalid-feedback {
    display: none;
    width: 100%;
    margin-top: 0.25rem;
    font-size: 80%;
    color: #dc3545;
}

.invalid-tooltip {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 5;
    display: none;
    max-width: 100%;
    padding: 0.25rem 0.5rem;
    margin-top: 0.1rem;
    font-size: 1.4rem;
    line-height: 1.7;
    color: var(--vyv-blanc);
    background-color: rgba(220, 53, 69, 0.9);
    border-radius: 0.25rem;
}

.is-invalid~.invalid-feedback,
.is-invalid~.invalid-tooltip,
.was-validated :invalid~.invalid-feedback,
.was-validated :invalid~.invalid-tooltip {
    display: block;
}

.form-control.is-invalid,
.was-validated .form-control:invalid {
    border-color: #dc3545;
    padding-right: calc(1.7em + 0.4rem);
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right calc(0.425em + 0.1rem) center;
    background-size: calc(0.85em + 0.2rem) calc(0.85em + 0.2rem);
}

.form-control.is-invalid:focus,
.was-validated .form-control:invalid:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.1rem rgba(220, 53, 69, 0.25);
}

.was-validated textarea.form-control:invalid,
textarea.form-control.is-invalid {
    padding-right: calc(1.7em + 0.4rem);
    background-position: top calc(0.425em + 0.1rem) right calc(0.425em + 0.1rem);
}

.custom-select.is-invalid,
.was-validated .custom-select:invalid {
    border-color: #dc3545;
    padding-right: calc(0.75em + 3.3rem);
    background: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'%3E%3Cpath fill='%233CBCD7' d='M.4 21.5l.1-1c.4-3.7 2.4-6.3 5.4-7.1 1.4-.4 4.2-.7 7.3 1.5L30 31.5l16.6-16.4.2-.2c3.1-2.2 5.9-1.8 7.3-1.4 3 .8 5 3.4 5.4 7.1l.1 1L30 46.8.4 21.5z'/%3E%3C/svg%3E") no-repeat right 0 center/16px 16px,
        url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545'%3E%3Ccircle cx='6' cy='6' r='4.5'/%3E%3Cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3E%3Ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3E%3C/svg%3E") transparent no-repeat center right 3rem / calc(0.85em + 0.2rem) calc(0.85em + 0.2rem);
}

.custom-select.is-invalid:focus,
.was-validated .custom-select:invalid:focus {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.1rem rgba(220, 53, 69, 0.25);
}

.form-check-input.is-invalid~.form-check-label,
.was-validated .form-check-input:invalid~.form-check-label {
    color: #dc3545;
}

.form-check-input.is-invalid~.invalid-feedback,
.form-check-input.is-invalid~.invalid-tooltip,
.was-validated .form-check-input:invalid~.invalid-feedback,
.was-validated .form-check-input:invalid~.invalid-tooltip {
    display: block;
}

.custom-control-input.is-invalid~.custom-control-label,
.was-validated .custom-control-input:invalid~.custom-control-label {
    color: #dc3545;
}

.custom-control-input.is-invalid~.custom-control-label:before,
.was-validated .custom-control-input:invalid~.custom-control-label:before {
    border-color: #dc3545;
}

.custom-control-input.is-invalid:checked~.custom-control-label:before,
.was-validated .custom-control-input:invalid:checked~.custom-control-label:before {
    border-color: #e4606d;
    background-color: #e4606d;
}

.custom-control-input.is-invalid:focus~.custom-control-label:before,
.was-validated .custom-control-input:invalid:focus~.custom-control-label:before {
    box-shadow: 0 0 0 0.1rem rgba(220, 53, 69, 0.25);
}

.custom-control-input.is-invalid:focus:not(:checked)~.custom-control-label:before,
.custom-file-input.is-invalid~.custom-file-label,
.was-validated .custom-control-input:invalid:focus:not(:checked)~.custom-control-label:before,
.was-validated .custom-file-input:invalid~.custom-file-label {
    border-color: #dc3545;
}

.custom-file-input.is-invalid:focus~.custom-file-label,
.was-validated .custom-file-input:invalid:focus~.custom-file-label {
    border-color: #dc3545;
    box-shadow: 0 0 0 0.1rem rgba(220, 53, 69, 0.25);
}

.form-inline {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
}

.form-inline .form-check {
    width: 100%;
}

@media (min-width: 576px) {
    .form-inline label {
        justify-content: center;
    }

    .form-inline .form-group,
    .form-inline label {
        display: flex;
        align-items: center;
        margin-bottom: 0;
    }

    .form-inline .form-group {
        flex: 0 0 auto;
        flex-flow: row wrap;
    }

    .form-inline .form-control {
        display: inline-block;
        width: auto;
        vertical-align: middle;
    }

    .form-inline .form-control-plaintext {
        display: inline-block;
    }

    .form-inline .custom-select,
    .form-inline .input-group {
        width: auto;
    }

    .form-inline .form-check {
        display: flex;
        align-items: center;
        justify-content: center;
        width: auto;
        padding-left: 0;
    }

    .form-inline .form-check-input {
        position: relative;
        flex-shrink: 0;
        margin-top: 0;
        margin-right: 0.25rem;
        margin-left: 0;
    }

    .form-inline .custom-control {
        align-items: center;
        justify-content: center;
    }

    .form-inline .custom-control-label {
        margin-bottom: 0;
    }
}

.custom-control {
    position: relative;
    z-index: 1;
    display: block;
    min-height: 2.72rem;
    padding-left: 3.2rem;
}

.custom-control-inline {
    display: inline-flex;
    margin-right: 3.5rem;
}

.custom-control-input {
    position: absolute;
    left: 0;
    z-index: -1;
    width: 2rem;
    height: 2.36rem;
    opacity: 0;
}

.custom-control-input:checked~.custom-control-label:before {
    color: #82358b;
    border-color: #82358b;
    background-color: var(--vyv-blanc);
}

.custom-control-input:focus~.custom-control-label:before {
    box-shadow: none;
}

.custom-control-input:focus:not(:checked)~.custom-control-label:before {
    border-color: #c175ca;
}

.custom-control-input:not(:disabled):active~.custom-control-label:before {
    color: var(--vyv-blanc);
    background-color: #d29ad8;
    border-color: #d29ad8;
}

.custom-control-input:disabled~.custom-control-label,
.custom-control-input[disabled]~.custom-control-label {
    color: #878786;
}

.custom-control-input:disabled~.custom-control-label:before,
.custom-control-input[disabled]~.custom-control-label:before {
    background-color: #e9ecef;
}

.custom-control-label {
    position: relative;
    margin-bottom: 0;
    color: #878786;
    vertical-align: top;
}

.custom-control-label:before {
    pointer-events: none;
    background-color: var(--vyv-blanc);
    border: 0.15rem solid #82358b;
}

.custom-control-label:after,
.custom-control-label:before {
    position: absolute;
    top: 0.36rem;
    left: -3.2rem;
    display: block;
    width: 2rem;
    height: 2rem;
    content: "";
}

.custom-control-label:after {
    background: no-repeat 50%/64% 64%;
}

.custom-checkbox .custom-control-label:before {
    border-radius: 0;
}

.custom-checkbox .custom-control-input:checked~.custom-control-label:after {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg viewBox='0 0 20 15' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M17.657.001c-.4.013-.78.181-1.058.469-3.768 3.777-6.622 6.91-10.168 10.517L2.537 7.694a1.539 1.539 0 10-1.995 2.343l5 4.231a1.539 1.539 0 002.09-.084c4.135-4.143 7.084-7.459 11.155-11.539a1.539 1.539 0 00-1.13-2.644z' fill='%2382358b'/%3E%3C/svg%3E");
}

.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:before {
    border-color: #82358b;
    background-color: #82358b;
}

.custom-checkbox .custom-control-input:indeterminate~.custom-control-label:after {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4'%3E%3Cpath stroke='%2382358b' d='M0 2h4'/%3E%3C/svg%3E");
}

.custom-checkbox .custom-control-input:disabled:checked~.custom-control-label:before {
    background-color: rgba(71, 39, 131, 0.5);
}

.custom-checkbox .custom-control-input:disabled:indeterminate~.custom-control-label:before {
    background-color: rgba(71, 39, 131, 0.5);
}

.custom-radio .custom-control-label:before {
    border-radius: 50%;
}

.custom-radio .custom-control-input:checked~.custom-control-label:after {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='4' fill='%2382358b'/%3E%3C/svg%3E");
}

.custom-radio .custom-control-input:disabled:checked~.custom-control-label:before {
    background-color: rgba(71, 39, 131, 0.5);
}

.custom-switch {
    padding-left: 4.7rem;
}

.custom-switch .custom-control-label:before {
    left: -4.7rem;
    width: 3.5rem;
    pointer-events: all;
    border-radius: 1rem;
}

.custom-switch .custom-control-label:after {
    top: 0.66rem;
    left: -4.4rem;
    width: 1.4rem;
    height: 1.4rem;
    background-color: #82358b;
    border-radius: 1rem;
    transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
    .custom-switch .custom-control-label:after {
        transition: none;
    }
}

.custom-switch .custom-control-input:checked~.custom-control-label:after {
    background-color: var(--vyv-blanc);
    transform: translateX(1.5rem);
}

.custom-switch .custom-control-input:disabled:checked~.custom-control-label:before {
    background-color: rgba(71, 39, 131, 0.5);
}

.custom-select {
    display: inline-block;
    width: 100%;
    height: calc(2.8em + 0.2rem + 2px);
    padding: 0.2rem 3rem 0.2rem 0;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.7;
    color: #82358b;
    vertical-align: middle;
    background: transparent url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'%3E%3Cpath fill='%233CBCD7' d='M.4 21.5l.1-1c.4-3.7 2.4-6.3 5.4-7.1 1.4-.4 4.2-.7 7.3 1.5L30 31.5l16.6-16.4.2-.2c3.1-2.2 5.9-1.8 7.3-1.4 3 .8 5 3.4 5.4 7.1l.1 1L30 46.8.4 21.5z'/%3E%3C/svg%3E") no-repeat right 0 center/16px 16px;
    border: 0 solid #472682;
    border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.custom-select:focus {
    border-color: #c175ca;
    outline: 0;
    box-shadow: none;
}

.custom-select:focus::-ms-value {
    color: #472682;
    background-color: transparent;
}

.custom-select[multiple],
.custom-select[size]:not([size="1"]) {
    height: auto;
    padding-right: 0;
    background-image: none;
}

.custom-select:disabled {
    color: #878786;
    background-color: #e9ecef;
}

.custom-select::-ms-expand {
    display: none;
}

.custom-select:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #82358b;
}

.custom-select-sm {
    height: calc(1.5em + 0.8rem + 2px);
    padding-top: 0.4rem;
    padding-bottom: 0.4rem;
    padding-left: 0;
    font-size: 1.4rem;
}

.custom-select-lg {
    height: calc(2.3em + 2px);
    padding-top: 0.4em;
    padding-bottom: 0.4em;
    padding-left: 0;
    font-size: 2rem;
}

.custom-file {
    display: inline-block;
    width: 100%;
    height: 48px;
    margin-bottom: 0;
}

.custom-file-input {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 48px;
    margin: 0;
    opacity: 0;
}

.custom-file-input:focus~.custom-file-label {
    border-color: #c175ca;
    box-shadow: none;
}

.custom-file-input:disabled~.custom-file-label,
.custom-file-input[disabled]~.custom-file-label {
    background-color: #e9ecef;
}

.custom-file-input:lang(en)~.custom-file-label:after {
    content: "Browse";
}

.custom-file-input:lang(fr)~.custom-file-label:after {
    content: "Choisir un fichier";
}

.custom-file-input~.custom-file-label[data-browse]:after {
    content: attr(data-browse);
}

.custom-file-label {
    left: 0;
    z-index: 1;
    height: 48px;
    font-weight: 400;
    background-color: transparent;
    border: 1px solid #472682;
    border-radius: 0;
}

.custom-file-label,
.custom-file-label:after {
    position: absolute;
    top: 0;
    right: 0;
    padding: 0.2rem 0;
    line-height: 1.7;
    color: #472682;
}

.custom-file-label:after {
    bottom: 0;
    z-index: 3;
    display: block;
    height: calc(1.7em + 0.4rem);
    content: "Browse";
    background-color: #e9ecef;
    border-left: inherit;
    border-radius: 0 0 0 0;
}

.custom-range {
    width: 100%;
    height: 1.2rem;
    padding: 0;
    background-color: transparent;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.custom-range:focus {
    outline: none;
}

.custom-range:focus::-webkit-slider-thumb {
    box-shadow: 0 0 0 1px var(--vyv-blanc), none;
}

.custom-range:focus::-moz-range-thumb {
    box-shadow: 0 0 0 1px var(--vyv-blanc), none;
}

.custom-range:focus::-ms-thumb {
    box-shadow: 0 0 0 1px var(--vyv-blanc), none;
}

.custom-range::-moz-focus-outer {
    border: 0;
}

.custom-range::-webkit-slider-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: -0.25rem;
    background-color: #82358b;
    border: 0;
    border-radius: 1rem;
    -webkit-transition: background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
    -webkit-appearance: none;
    appearance: none;
}

@media (prefers-reduced-motion: reduce) {
    .custom-range::-webkit-slider-thumb {
        -webkit-transition: none;
        transition: none;
    }
}

.custom-range::-webkit-slider-thumb:active {
    background-color: #d29ad8;
}

.custom-range::-webkit-slider-runnable-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: #dee2e6;
    border-color: transparent;
    border-radius: 1rem;
}

.custom-range::-moz-range-thumb {
    width: 1rem;
    height: 1rem;
    background-color: #82358b;
    border: 0;
    border-radius: 1rem;
    -moz-transition: background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
    -moz-appearance: none;
    appearance: none;
}

@media (prefers-reduced-motion: reduce) {
    .custom-range::-moz-range-thumb {
        -moz-transition: none;
        transition: none;
    }
}

.custom-range::-moz-range-thumb:active {
    background-color: #d29ad8;
}

.custom-range::-moz-range-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: #dee2e6;
    border-color: transparent;
    border-radius: 1rem;
}

.custom-range::-ms-thumb {
    width: 1rem;
    height: 1rem;
    margin-top: 0;
    margin-right: 0.1rem;
    margin-left: 0.1rem;
    background-color: #82358b;
    border: 0;
    border-radius: 1rem;
    -ms-transition: background-color 0.15s ease-in-out,
        border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
    appearance: none;
}

@media (prefers-reduced-motion: reduce) {
    .custom-range::-ms-thumb {
        -ms-transition: none;
        transition: none;
    }
}

.custom-range::-ms-thumb:active {
    background-color: #d29ad8;
}

.custom-range::-ms-track {
    width: 100%;
    height: 0.5rem;
    color: transparent;
    cursor: pointer;
    background-color: transparent;
    border-color: transparent;
    border-width: 0.5rem;
}

.custom-range::-ms-fill-lower,
.custom-range::-ms-fill-upper {
    background-color: #dee2e6;
    border-radius: 1rem;
}

.custom-range::-ms-fill-upper {
    margin-right: 15px;
}

.custom-range:disabled::-webkit-slider-thumb {
    background-color: #9a9a99;
}

.custom-range:disabled::-webkit-slider-runnable-track {
    cursor: default;
}

.custom-range:disabled::-moz-range-thumb {
    background-color: #9a9a99;
}

.custom-range:disabled::-moz-range-track {
    cursor: default;
}

.custom-range:disabled::-ms-thumb {
    background-color: #9a9a99;
}

.custom-control-label:before,
.custom-file-label,
.custom-select {
    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out,
        box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {

    .custom-control-label:before,
    .custom-file-label,
    .custom-select {
        transition: none;
    }
}

.d-none {
    display: none !important;
}

.d-inline {
    display: inline !important;
}

.d-inline-block {
    display: inline-block !important;
}

.d-block {
    display: block !important;
}

.d-table {
    display: table !important;
}

.d-table-row {
    display: table-row !important;
}

.d-table-cell {
    display: table-cell !important;
}

.d-flex {
    display: flex !important;
}

.d-inline-flex {
    display: inline-flex !important;
}

@media (min-width: 576px) {
    .d-sm-none {
        display: none !important;
    }

    .d-sm-inline {
        display: inline !important;
    }

    .d-sm-inline-block {
        display: inline-block !important;
    }

    .d-sm-block {
        display: block !important;
    }

    .d-sm-table {
        display: table !important;
    }

    .d-sm-table-row {
        display: table-row !important;
    }

    .d-sm-table-cell {
        display: table-cell !important;
    }

    .d-sm-flex {
        display: flex !important;
    }

    .d-sm-inline-flex {
        display: inline-flex !important;
    }
}

@media (min-width: 768px) {
    .d-md-none {
        display: none !important;
    }

    .d-md-inline {
        display: inline !important;
    }

    .d-md-inline-block {
        display: inline-block !important;
    }

    .d-md-block {
        display: block !important;
    }

    .d-md-table {
        display: table !important;
    }

    .d-md-table-row {
        display: table-row !important;
    }

    .d-md-table-cell {
        display: table-cell !important;
    }

    .d-md-flex {
        display: flex !important;
    }

    .d-md-inline-flex {
        display: inline-flex !important;
    }
}

@media (min-width: 992px) {
    .d-lg-none {
        display: none !important;
    }

    .d-lg-inline {
        display: inline !important;
    }

    .d-lg-inline-block {
        display: inline-block !important;
    }

    .d-lg-block {
        display: block !important;
    }

    .d-lg-table {
        display: table !important;
    }

    .d-lg-table-row {
        display: table-row !important;
    }

    .d-lg-table-cell {
        display: table-cell !important;
    }

    .d-lg-flex {
        display: flex !important;
    }

    .d-lg-inline-flex {
        display: inline-flex !important;
    }
}

@media (min-width: 1200px) {
    .d-xl-none {
        display: none !important;
    }

    .d-xl-inline {
        display: inline !important;
    }

    .d-xl-inline-block {
        display: inline-block !important;
    }

    .d-xl-block {
        display: block !important;
    }

    .d-xl-table {
        display: table !important;
    }

    .d-xl-table-row {
        display: table-row !important;
    }

    .d-xl-table-cell {
        display: table-cell !important;
    }

    .d-xl-flex {
        display: flex !important;
    }

    .d-xl-inline-flex {
        display: inline-flex !important;
    }
}

@media print {
    .d-print-none {
        display: none !important;
    }

    .d-print-inline {
        display: inline !important;
    }

    .d-print-inline-block {
        display: inline-block !important;
    }

    .d-print-block {
        display: block !important;
    }

    .d-print-table {
        display: table !important;
    }

    .d-print-table-row {
        display: table-row !important;
    }

    .d-print-table-cell {
        display: table-cell !important;
    }

    .d-print-flex {
        display: flex !important;
    }

    .d-print-inline-flex {
        display: inline-flex !important;
    }
}

.flex-row {
    flex-direction: row !important;
}

.flex-column {
    flex-direction: column !important;
}

.flex-row-reverse {
    flex-direction: row-reverse !important;
}

.flex-column-reverse {
    flex-direction: column-reverse !important;
}

.flex-wrap {
    flex-wrap: wrap !important;
}

.flex-nowrap {
    flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
    flex-wrap: wrap-reverse !important;
}

.flex-fill {
    flex: 1 1 auto !important;
}

.flex-grow-0 {
    flex-grow: 0 !important;
}

.flex-grow-1 {
    flex-grow: 1 !important;
}

.flex-shrink-0 {
    flex-shrink: 0 !important;
}

.flex-shrink-1 {
    flex-shrink: 1 !important;
}

.justify-content-start {
    justify-content: flex-start !important;
}

.justify-content-end {
    justify-content: flex-end !important;
}

.justify-content-center {
    justify-content: center !important;
}

.justify-content-between {
    justify-content: space-between !important;
}

.justify-content-around {
    justify-content: space-around !important;
}

.align-items-start {
    align-items: flex-start !important;
}

.align-items-end {
    align-items: flex-end !important;
}

.align-items-center {
    align-items: center !important;
}

.align-items-baseline {
    align-items: baseline !important;
}

.align-items-stretch {
    align-items: stretch !important;
}

.align-content-start {
    align-content: flex-start !important;
}

.align-content-end {
    align-content: flex-end !important;
}

.align-content-center {
    align-content: center !important;
}

.align-content-between {
    align-content: space-between !important;
}

.align-content-around {
    align-content: space-around !important;
}

.align-content-stretch {
    align-content: stretch !important;
}

.align-self-auto {
    align-self: auto !important;
}

.align-self-start {
    align-self: flex-start !important;
}

.align-self-end {
    align-self: flex-end !important;
}

.align-self-center {
    align-self: center !important;
}

.align-self-baseline {
    align-self: baseline !important;
}

.align-self-stretch {
    align-self: stretch !important;
}

@media (min-width: 576px) {
    .flex-sm-row {
        flex-direction: row !important;
    }

    .flex-sm-column {
        flex-direction: column !important;
    }

    .flex-sm-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-sm-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-sm-wrap {
        flex-wrap: wrap !important;
    }

    .flex-sm-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-sm-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }

    .flex-sm-fill {
        flex: 1 1 auto !important;
    }

    .flex-sm-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-sm-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-sm-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-sm-shrink-1 {
        flex-shrink: 1 !important;
    }

    .justify-content-sm-start {
        justify-content: flex-start !important;
    }

    .justify-content-sm-end {
        justify-content: flex-end !important;
    }

    .justify-content-sm-center {
        justify-content: center !important;
    }

    .justify-content-sm-between {
        justify-content: space-between !important;
    }

    .justify-content-sm-around {
        justify-content: space-around !important;
    }

    .align-items-sm-start {
        align-items: flex-start !important;
    }

    .align-items-sm-end {
        align-items: flex-end !important;
    }

    .align-items-sm-center {
        align-items: center !important;
    }

    .align-items-sm-baseline {
        align-items: baseline !important;
    }

    .align-items-sm-stretch {
        align-items: stretch !important;
    }

    .align-content-sm-start {
        align-content: flex-start !important;
    }

    .align-content-sm-end {
        align-content: flex-end !important;
    }

    .align-content-sm-center {
        align-content: center !important;
    }

    .align-content-sm-between {
        align-content: space-between !important;
    }

    .align-content-sm-around {
        align-content: space-around !important;
    }

    .align-content-sm-stretch {
        align-content: stretch !important;
    }

    .align-self-sm-auto {
        align-self: auto !important;
    }

    .align-self-sm-start {
        align-self: flex-start !important;
    }

    .align-self-sm-end {
        align-self: flex-end !important;
    }

    .align-self-sm-center {
        align-self: center !important;
    }

    .align-self-sm-baseline {
        align-self: baseline !important;
    }

    .align-self-sm-stretch {
        align-self: stretch !important;
    }
}

@media (min-width: 768px) {
    .flex-md-row {
        flex-direction: row !important;
    }

    .flex-md-column {
        flex-direction: column !important;
    }

    .flex-md-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-md-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-md-wrap {
        flex-wrap: wrap !important;
    }

    .flex-md-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-md-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }

    .flex-md-fill {
        flex: 1 1 auto !important;
    }

    .flex-md-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-md-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-md-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-md-shrink-1 {
        flex-shrink: 1 !important;
    }

    .justify-content-md-start {
        justify-content: flex-start !important;
    }

    .justify-content-md-end {
        justify-content: flex-end !important;
    }

    .justify-content-md-center {
        justify-content: center !important;
    }

    .justify-content-md-between {
        justify-content: space-between !important;
    }

    .justify-content-md-around {
        justify-content: space-around !important;
    }

    .align-items-md-start {
        align-items: flex-start !important;
    }

    .align-items-md-end {
        align-items: flex-end !important;
    }

    .align-items-md-center {
        align-items: center !important;
    }

    .align-items-md-baseline {
        align-items: baseline !important;
    }

    .align-items-md-stretch {
        align-items: stretch !important;
    }

    .align-content-md-start {
        align-content: flex-start !important;
    }

    .align-content-md-end {
        align-content: flex-end !important;
    }

    .align-content-md-center {
        align-content: center !important;
    }

    .align-content-md-between {
        align-content: space-between !important;
    }

    .align-content-md-around {
        align-content: space-around !important;
    }

    .align-content-md-stretch {
        align-content: stretch !important;
    }

    .align-self-md-auto {
        align-self: auto !important;
    }

    .align-self-md-start {
        align-self: flex-start !important;
    }

    .align-self-md-end {
        align-self: flex-end !important;
    }

    .align-self-md-center {
        align-self: center !important;
    }

    .align-self-md-baseline {
        align-self: baseline !important;
    }

    .align-self-md-stretch {
        align-self: stretch !important;
    }
}

@media (min-width: 992px) {
    .flex-lg-row {
        flex-direction: row !important;
    }

    .flex-lg-column {
        flex-direction: column !important;
    }

    .flex-lg-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-lg-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-lg-wrap {
        flex-wrap: wrap !important;
    }

    .flex-lg-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-lg-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }

    .flex-lg-fill {
        flex: 1 1 auto !important;
    }

    .flex-lg-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-lg-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-lg-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-lg-shrink-1 {
        flex-shrink: 1 !important;
    }

    .justify-content-lg-start {
        justify-content: flex-start !important;
    }

    .justify-content-lg-end {
        justify-content: flex-end !important;
    }

    .justify-content-lg-center {
        justify-content: center !important;
    }

    .justify-content-lg-between {
        justify-content: space-between !important;
    }

    .justify-content-lg-around {
        justify-content: space-around !important;
    }

    .align-items-lg-start {
        align-items: flex-start !important;
    }

    .align-items-lg-end {
        align-items: flex-end !important;
    }

    .align-items-lg-center {
        align-items: center !important;
    }

    .align-items-lg-baseline {
        align-items: baseline !important;
    }

    .align-items-lg-stretch {
        align-items: stretch !important;
    }

    .align-content-lg-start {
        align-content: flex-start !important;
    }

    .align-content-lg-end {
        align-content: flex-end !important;
    }

    .align-content-lg-center {
        align-content: center !important;
    }

    .align-content-lg-between {
        align-content: space-between !important;
    }

    .align-content-lg-around {
        align-content: space-around !important;
    }

    .align-content-lg-stretch {
        align-content: stretch !important;
    }

    .align-self-lg-auto {
        align-self: auto !important;
    }

    .align-self-lg-start {
        align-self: flex-start !important;
    }

    .align-self-lg-end {
        align-self: flex-end !important;
    }

    .align-self-lg-center {
        align-self: center !important;
    }

    .align-self-lg-baseline {
        align-self: baseline !important;
    }

    .align-self-lg-stretch {
        align-self: stretch !important;
    }
}

@media (min-width: 1200px) {
    .flex-xl-row {
        flex-direction: row !important;
    }

    .flex-xl-column {
        flex-direction: column !important;
    }

    .flex-xl-row-reverse {
        flex-direction: row-reverse !important;
    }

    .flex-xl-column-reverse {
        flex-direction: column-reverse !important;
    }

    .flex-xl-wrap {
        flex-wrap: wrap !important;
    }

    .flex-xl-nowrap {
        flex-wrap: nowrap !important;
    }

    .flex-xl-wrap-reverse {
        flex-wrap: wrap-reverse !important;
    }

    .flex-xl-fill {
        flex: 1 1 auto !important;
    }

    .flex-xl-grow-0 {
        flex-grow: 0 !important;
    }

    .flex-xl-grow-1 {
        flex-grow: 1 !important;
    }

    .flex-xl-shrink-0 {
        flex-shrink: 0 !important;
    }

    .flex-xl-shrink-1 {
        flex-shrink: 1 !important;
    }

    .justify-content-xl-start {
        justify-content: flex-start !important;
    }

    .justify-content-xl-end {
        justify-content: flex-end !important;
    }

    .justify-content-xl-center {
        justify-content: center !important;
    }

    .justify-content-xl-between {
        justify-content: space-between !important;
    }

    .justify-content-xl-around {
        justify-content: space-around !important;
    }

    .align-items-xl-start {
        align-items: flex-start !important;
    }

    .align-items-xl-end {
        align-items: flex-end !important;
    }

    .align-items-xl-center {
        align-items: center !important;
    }

    .align-items-xl-baseline {
        align-items: baseline !important;
    }

    .align-items-xl-stretch {
        align-items: stretch !important;
    }

    .align-content-xl-start {
        align-content: flex-start !important;
    }

    .align-content-xl-end {
        align-content: flex-end !important;
    }

    .align-content-xl-center {
        align-content: center !important;
    }

    .align-content-xl-between {
        align-content: space-between !important;
    }

    .align-content-xl-around {
        align-content: space-around !important;
    }

    .align-content-xl-stretch {
        align-content: stretch !important;
    }

    .align-self-xl-auto {
        align-self: auto !important;
    }

    .align-self-xl-start {
        align-self: flex-start !important;
    }

    .align-self-xl-end {
        align-self: flex-end !important;
    }

    .align-self-xl-center {
        align-self: center !important;
    }

    .align-self-xl-baseline {
        align-self: baseline !important;
    }

    .align-self-xl-stretch {
        align-self: stretch !important;
    }
}

.float-left {
    float: left !important;
}

.float-right {
    float: right !important;
}

.float-none {
    float: none !important;
}

@media (min-width: 576px) {
    .float-sm-left {
        float: left !important;
    }

    .float-sm-right {
        float: right !important;
    }

    .float-sm-none {
        float: none !important;
    }
}

@media (min-width: 768px) {
    .float-md-left {
        float: left !important;
    }

    .float-md-right {
        float: right !important;
    }

    .float-md-none {
        float: none !important;
    }
}

@media (min-width: 992px) {
    .float-lg-left {
        float: left !important;
    }

    .float-lg-right {
        float: right !important;
    }

    .float-lg-none {
        float: none !important;
    }
}

@media (min-width: 1200px) {
    .float-xl-left {
        float: left !important;
    }

    .float-xl-right {
        float: right !important;
    }

    .float-xl-none {
        float: none !important;
    }
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.sr-only-focusable:active,
.sr-only-focusable:focus {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto;
    white-space: normal;
}

.tns-outer {
    padding: 0 !important;
}

.tns-outer [hidden] {
    display: none !important;
}

.tns-outer [aria-controls],
.tns-outer [data-action] {
    cursor: pointer;
}

.tns-slider {
    transition: all 0s;
}

.tns-slider>.tns-item {
    box-sizing: border-box;
}

.tns-horizontal.tns-subpixel {
    white-space: nowrap;
}

.tns-horizontal.tns-subpixel>.tns-item {
    display: inline-block;
    vertical-align: top;
    white-space: normal;
}

.tns-horizontal.tns-no-subpixel:after {
    content: "";
    display: table;
    clear: both;
}

.tns-horizontal.tns-no-subpixel>.tns-item {
    float: left;
}

.tns-horizontal.tns-carousel.tns-no-subpixel>.tns-item {
    margin-right: -100%;
}

.tns-gallery,
.tns-no-calc {
    position: relative;
    left: 0;
}

.tns-gallery {
    min-height: 1px;
}

.tns-gallery>.tns-item {
    position: absolute;
    left: -100%;
    transition: transform 0s, opacity 0s;
}

.tns-gallery>.tns-slide-active {
    position: relative;
    left: auto !important;
}

.tns-gallery>.tns-moving {
    transition: all 0.25s;
}

.tns-autowidth {
    display: inline-block;
}

.tns-lazy-img {
    transition: opacity 0.6s;
    opacity: 0.6;
}

.tns-lazy-img.tns-complete {
    opacity: 1;
}

.tns-ah {
    transition: height 0s;
}

.tns-ovh {
    overflow: hidden;
}

.tns-visually-hidden {
    position: absolute;
    left: -10000em;
}

.tns-transparent {
    opacity: 0;
    visibility: hidden;
}

.tns-fadeIn {
    opacity: 1;
    filter: alpha(opacity=100);
    z-index: 0;
}

.tns-fadeOut,
.tns-normal {
    opacity: 0;
    filter: alpha(opacity=0);
    z-index: -1;
}

.tns-vpfix {
    white-space: nowrap;
}

.tns-vpfix>div,
.tns-vpfix>li {
    display: inline-block;
}

.tns-t-subp2 {
    margin: 0 auto;
    width: 310px;
    position: relative;
    height: 10px;
    overflow: hidden;
}

.tns-t-ct {
    width: 2333.3333333333%;
    width: 2333.33333%;
    position: absolute;
    right: 0;
}

.tns-t-ct:after {
    content: "";
    display: table;
    clear: both;
}

.tns-t-ct>div {
    width: 1.4285714286%;
    width: 1.42857%;
    height: 10px;
    float: left;
}

.animated-expandmore__to_expand,
.faq-expandmore__to_expand {
    display: block;
    position: relative;
    opacity: 1;
    transition: visibility 0s ease, max-height 1s ease, opacity 1s ease;
    max-height: 800em;
    visibility: visible;
    transition-delay: 0s;
}

[data-hidden="true"].animated-expandmore__to_expand,
[data-hidden="true"].faq-expandmore__to_expand {
    display: block;
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    visibility: hidden;
    transition-delay: 1s, 0s, 0s;
}

.js-expandmore-button {
    display: block;
    width: 100%;
    text-align: left;
}

.js-expandmore-button.is-opened .icon {
    transform: rotate(-90deg);
}

.faq-accordion__panel[aria-hidden="true"] {
    display: block;
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    visibility: hidden;
}

.faq-accordion__panel:not([aria-hidden="true"]) {
    display: block;
    position: relative;
    opacity: 1;
    transition: all 1s ease;
    max-height: 800em;
    visibility: visible;
}

.faq-accordion__header {
    display: block;
}

.faq-accordion__header[aria-expanded="true"] {
    border: none;
    background-color: var(--vyv-fond-gris);
    color: var(--vyv-bleu-fonce);
}

.faq-accordion__header[aria-expanded="true"] .icon {
    transform: rotate(-90deg);
}

.faq-accordion__header:focus {
    color: var(--vyv-bleu-fonce);
}

.faq-accordion__header .icon {
    pointer-events: none;
    margin-left: 10px;
}

.glightbox-container {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 999999 !important;
    touch-action: none;
    -webkit-text-size-adjust: 100%;
    -webkit-backface-visibility: hidden;
    outline: none;
    overflow: hidden;
}

.glightbox-container.inactive {
    display: none;
}

.glightbox-container .gcontainer {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 9999;
    overflow: hidden;
}

.glightbox-container .gslider {
    transition: transform 0.4s ease;
    height: 100%;
    left: 0;
    top: 0;
    width: 100%;
    position: relative;
    overflow: hidden;
    display: flex !important;
    justify-content: center;
    align-items: center;
    transform: translateZ(0);
}

.glightbox-container .gslide {
    width: 100%;
    position: absolute;
    opacity: 1;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
}

.glightbox-container .gslide.current {
    opacity: 1;
    z-index: 99999;
    position: relative;
}

.glightbox-container .gslide.prev {
    opacity: 1;
    z-index: 9999;
}

.glightbox-container .gslide-inner-content {
    width: 100%;
}

.glightbox-container .ginner-container {
    position: relative;
    width: 100%;
    display: flex;
    justify-content: center;
    flex-direction: column;
    max-width: 100%;
    margin: auto;
    height: 100vh;
}

.glightbox-container .ginner-container.gvideo-container {
    width: 100%;
}

.glightbox-container .ginner-container.desc-bottom,
.glightbox-container .ginner-container.desc-top {
    flex-direction: column;
}

.glightbox-container .ginner-container.desc-left,
.glightbox-container .ginner-container.desc-right {
    max-width: 100% !important;
}

.gslide iframe,
.gslide video {
    outline: none !important;
    border: none;
    min-height: 165px;
    overflow-scrolling: touch;
    touch-action: auto;
}

.gslide-image {
    align-items: center;
}

.gslide-image img {
    max-height: 100vh;
    display: block;
    max-width: 100%;
    padding: 0;
    float: none;
    outline: none;
    border: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    max-width: 100vw;
    width: auto;
    height: auto;
    touch-action: none;
    margin: auto;
    min-width: 200px;
}

.desc-bottom .gslide-image img,
.desc-top .gslide-image img {
    width: auto;
}

.desc-left .gslide-image img,
.desc-right .gslide-image img {
    width: auto;
    max-width: 100%;
}

.gslide-image img.zoomable {
    position: relative;
}

.gslide-image img.dragging {
    cursor: -webkit-grabbing !important;
    cursor: grabbing !important;
    transition: none;
}

.gslide-video {
    width: 100%;
    max-width: 100%;
    position: relative;
    width: 100vh;
    max-width: 100vh;
    width: 100% !important;
}

.gslide-video .gvideo-wrapper {
    width: 100%;
    margin: auto;
}

.gslide-video:before {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    background: rgba(255, 0, 0, 0.34);
    display: none;
}

.gslide-video.playing:before {
    display: none;
}

.gslide-video.fullscreen {
    max-width: 100% !important;
    min-width: 100%;
    height: 80vh;
}

.gslide-video.fullscreen video {
    max-width: 100% !important;
    width: 100% !important;
}

.gslide-inline {
    background: var(--vyv-blanc);
    text-align: left;
    max-height: calc(100vh - 40px);
    overflow: auto;
    max-width: 100%;
}

.gslide-inline .ginlined-content {
    padding: 20px;
    width: 100%;
}

.ginlined-content {
    overflow: auto;
    display: block !important;
    opacity: 1;
}

.gslide-external {
    display: flex;
    width: 100%;
    min-width: 100%;
    background: var(--vyv-blanc);
    padding: 0;
    overflow: auto;
    max-height: 75vh;
    height: 100%;
}

.gslide-media {
    display: block;
    display: inline-flex;
    display: flex;
    width: auto;
}

.zoomed .gslide-media {
    box-shadow: none !important;
}

.desc-bottom .gslide-media,
.desc-top .gslide-media {
    margin: 0 auto;
    flex-direction: column;
}

.gslide-description {
    position: relative;
}

.gslide-description.description-left,
.gslide-description.description-right {
    max-width: 100%;
}

.gslide-description.description-bottom,
.gslide-description.description-top {
    margin: 0 auto;
    width: 100%;
}

.gslide-description p {
    margin-bottom: 12px;
}

.gslide-description p:last-child {
    margin-bottom: 0;
}

.zoomed .gslide-description {
    display: none;
}

.glightbox-mobile .glightbox-container .gslide-description {
    height: auto !important;
    width: 100%;
    background: transparent;
    position: absolute;
    bottom: 15px;
    max-width: 100vw !important;
    order: 2 !important;
    max-height: 78vh;
    overflow: auto !important;
    background: linear-gradient(180deg, transparent 0, rgba(0, 0, 0, 0.75));
    transition: opacity 0.3s linear;
    padding: 19px 11px 50px;
}

.glightbox-mobile .glightbox-container .gslide-title {
    color: var(--vyv-blanc);
    font-size: 1em;
}

.glightbox-mobile .glightbox-container .gslide-desc {
    color: #a1a1a1;
}

.glightbox-mobile .glightbox-container .gslide-desc a {
    color: var(--vyv-blanc);
    font-weight: 700;
}

.glightbox-mobile .glightbox-container .gslide-desc * {
    color: inherit;
}

.glightbox-mobile .glightbox-container .gslide-desc string {
    color: var(--vyv-blanc);
}

.glightbox-mobile .glightbox-container .gslide-desc .desc-more {
    color: var(--vyv-blanc);
    opacity: 0.4;
}

.gdesc-open .gslide-media {
    transition: opacity 0.5s ease;
    opacity: 0.4;
}

.gdesc-open .gdesc-inner {
    padding-bottom: 30px;
}

.gdesc-closed .gslide-media {
    transition: opacity 0.5s ease;
    opacity: 1;
}

.greset {
    transition: all 0.3s ease;
}

.gabsolute {
    position: absolute;
}

.grelative {
    position: relative;
}

.glightbox-desc {
    display: none !important;
}

.glightbox-open {
    overflow: hidden;
}

.gloader {
    height: 25px;
    width: 25px;
    -webkit-animation: lightboxLoader 0.8s linear infinite;
    animation: lightboxLoader 0.8s linear infinite;
    border: 2px solid var(--vyv-blanc);
    border-right-color: transparent;
    border-radius: 50%;
    position: absolute;
    display: block;
    z-index: 9999;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: 47%;
}

.goverlay {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    will-change: opacity;
}

.glightbox-mobile .goverlay,
.goverlay {
    background: var(--vyv-violet-fonce);
}

.gclose,
.gnext,
.gprev {
    background-repeat: no-repeat;
    z-index: 99999;
    cursor: pointer;
    width: 26px;
    height: 44px;
    display: block;
    background-position: 0 0;
    border: none;
}

.gclose svg,
.gnext svg,
.gprev svg {
    display: block;
    width: 100%;
    height: auto;
}

.gclose.disabled,
.gnext.disabled,
.gprev.disabled {
    opacity: 0.1;
}

.gclose .garrow,
.gnext .garrow,
.gprev .garrow {
    stroke: var(--vyv-blanc);
}

iframe.wait-autoplay {
    opacity: 0;
}

.glightbox-closing .gclose,
.glightbox-closing .gnext,
.glightbox-closing .gprev {
    opacity: 0 !important;
}

.glightbox-clean .gslide-description,
.glightbox-modern .gslide-description {
    background: var(--vyv-blanc);
}

.glightbox-clean .gdesc-inner,
.glightbox-modern .gdesc-inner {
    padding: 22px 20px;
}

.glightbox-clean .gslide-title,
.glightbox-modern .gslide-title {
    font-size: 1em;
    font-weight: 400;
    font-family: arial;
    color: var(--vyv-noir);
    margin-bottom: 19px;
    line-height: 1.4em;
}

.glightbox-clean .gslide-desc,
.glightbox-modern .gslide-desc {
    font-size: 0.86em;
    margin-bottom: 0;
    font-family: arial;
    line-height: 1.4em;
}

.glightbox-clean .gslide-video,
.glightbox-modern .gslide-video {
    background: var(--vyv-noir);
}

.glightbox-clean .gclose path,
.glightbox-clean .gnext path,
.glightbox-clean .gprev path,
.glightbox-modern .gclose path,
.glightbox-modern .gnext path,
.glightbox-modern .gprev path {
    fill: var(--vyv-blanc);
}

.glightbox-clean button:focus:not(.focused):not(.disabled),
.glightbox-modern button:focus:not(.focused):not(.disabled) {
    outline: none;
}

.glightbox-clean .gprev,
.glightbox-modern .gprev {
    position: absolute;
    top: -100%;
    left: 30px;
    width: 40px;
    height: 56px;
}

.glightbox-clean .gnext,
.glightbox-modern .gnext {
    position: absolute;
    top: -100%;
    right: 30px;
    width: 40px;
    height: 56px;
}

.glightbox-clean .gclose,
.glightbox-modern .gclose {
    width: 35px;
    height: 35px;
    top: 15px;
    right: 10px;
    position: absolute;
    opacity: 0.7;
    background-position: -59px 2px;
}

.glightbox-clean .gclose svg,
.glightbox-modern .gclose svg {
    width: 20px;
}

.glightbox-clean .gclose:hover,
.glightbox-modern .gclose:hover {
    opacity: 1;
}

.gfadeIn {
    -webkit-animation: gfadeIn 0.5s ease;
    animation: gfadeIn 0.5s ease;
}

.gfadeOut {
    -webkit-animation: gfadeOut 0.5s ease;
    animation: gfadeOut 0.5s ease;
}

.gslideOutLeft {
    -webkit-animation: gslideOutLeft 0.3s ease;
    animation: gslideOutLeft 0.3s ease;
}

.gslideInLeft {
    -webkit-animation: gslideInLeft 0.3s ease;
    animation: gslideInLeft 0.3s ease;
}

.gslideOutRight {
    -webkit-animation: gslideOutRight 0.3s ease;
    animation: gslideOutRight 0.3s ease;
}

.gslideInRight {
    -webkit-animation: gslideInRight 0.3s ease;
    animation: gslideInRight 0.3s ease;
}

.gzoomIn {
    -webkit-animation: gzoomIn 0.5s ease;
    animation: gzoomIn 0.5s ease;
}

.gzoomOut {
    -webkit-animation: gzoomOut 0.5s ease;
    animation: gzoomOut 0.5s ease;
}

@-webkit-keyframes lightboxLoader {
    0% {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(1turn);
    }
}

@keyframes lightboxLoader {
    0% {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(1turn);
    }
}

@-webkit-keyframes gfadeIn {
    0% {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes gfadeIn {
    0% {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@-webkit-keyframes gfadeOut {
    0% {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}

@keyframes gfadeOut {
    0% {
        opacity: 1;
    }

    to {
        opacity: 0;
    }
}

@-webkit-keyframes gslideInLeft {
    0% {
        opacity: 0;
        transform: translate3d(-60%, 0, 0);
    }

    to {
        visibility: visible;
        transform: translateZ(0);
        opacity: 1;
    }
}

@keyframes gslideInLeft {
    0% {
        opacity: 0;
        transform: translate3d(-60%, 0, 0);
    }

    to {
        visibility: visible;
        transform: translateZ(0);
        opacity: 1;
    }
}

@-webkit-keyframes gslideOutLeft {
    0% {
        opacity: 1;
        visibility: visible;
        transform: translateZ(0);
    }

    to {
        transform: translate3d(-60%, 0, 0);
        opacity: 0;
        visibility: hidden;
    }
}

@keyframes gslideOutLeft {
    0% {
        opacity: 1;
        visibility: visible;
        transform: translateZ(0);
    }

    to {
        transform: translate3d(-60%, 0, 0);
        opacity: 0;
        visibility: hidden;
    }
}

@-webkit-keyframes gslideInRight {
    0% {
        opacity: 0;
        visibility: visible;
        transform: translate3d(60%, 0, 0);
    }

    to {
        transform: translateZ(0);
        opacity: 1;
    }
}

@keyframes gslideInRight {
    0% {
        opacity: 0;
        visibility: visible;
        transform: translate3d(60%, 0, 0);
    }

    to {
        transform: translateZ(0);
        opacity: 1;
    }
}

@-webkit-keyframes gslideOutRight {
    0% {
        opacity: 1;
        visibility: visible;
        transform: translateZ(0);
    }

    to {
        transform: translate3d(60%, 0, 0);
        opacity: 0;
    }
}

@keyframes gslideOutRight {
    0% {
        opacity: 1;
        visibility: visible;
        transform: translateZ(0);
    }

    to {
        transform: translate3d(60%, 0, 0);
        opacity: 0;
    }
}

@-webkit-keyframes gzoomIn {
    0% {
        opacity: 0;
        transform: scale3d(0.3, 0.3, 0.3);
    }

    to {
        opacity: 1;
    }
}

@keyframes gzoomIn {
    0% {
        opacity: 0;
        transform: scale3d(0.3, 0.3, 0.3);
    }

    to {
        opacity: 1;
    }
}

@-webkit-keyframes gzoomOut {
    0% {
        opacity: 1;
    }

    50% {
        opacity: 0;
        transform: scale3d(0.3, 0.3, 0.3);
    }

    to {
        opacity: 0;
    }
}

@keyframes gzoomOut {
    0% {
        opacity: 1;
    }

    50% {
        opacity: 0;
        transform: scale3d(0.3, 0.3, 0.3);
    }

    to {
        opacity: 0;
    }
}

@media (min-width: 769px) {
    .glightbox-container .ginner-container {
        width: auto;
        height: auto;
        flex-direction: row;
    }

    .glightbox-container .ginner-container.desc-top .gslide-description {
        order: 0;
    }

    .glightbox-container .ginner-container.desc-top .gslide-image,
    .glightbox-container .ginner-container.desc-top .gslide-image img {
        order: 1;
    }

    .glightbox-container .ginner-container.desc-left .gslide-description {
        order: 0;
    }

    .glightbox-container .ginner-container.desc-left .gslide-image {
        order: 1;
    }

    .gslide-image img {
        max-height: 97vh;
        max-width: calc(100% - 20px);
        max-width: 100%;
    }

    .gslide-image img.zoomable {
        cursor: zoom-in;
    }

    .zoomed .gslide-image img.zoomable {
        cursor: -webkit-grab;
        cursor: grab;
    }

    .gslide-inline {
        max-height: 95vh;
    }

    .gslide-external {
        max-height: 100vh;
    }

    .gslide-description.description-left,
    .gslide-description.description-right {
        max-width: 275px;
    }

    .glightbox-open {
        height: auto;
    }

    .goverlay {
        background: rgba(166, 22, 128, 0.92);
    }

    .glightbox-clean .gslide-media,
    .glightbox-modern .gslide-media {
        box-shadow: 1px 2px 9px 0 rgba(0, 0, 0, 0.65);
    }

    .glightbox-clean .gnext,
    .glightbox-clean .gprev,
    .glightbox-modern .gnext,
    .glightbox-modern .gprev {
        top: 45%;
    }
}

@media (min-width: 992px) {

    .glightbox-clean .gclose,
    .glightbox-modern .gclose {
        right: 20px;
    }
}

@media screen and (max-height: 420px) {
    .goverlay {
        background: var(--vyv-noir);
    }
}

select[data-ss-uuid] {
    display: none;
    pointer-events: none;
}

.style-select {
    display: block;
    position: relative;
}

.style-select,
.style-select * {
    padding: 0;
    margin: 0;
    box-sizing: border-box;
    text-align: left;
    line-height: 120%;
    color: var(--vyv-noir);
    font-weight: 300;
    cursor: pointer;
}

.style-select .ss-selected-option {
    display: inline-block;
    width: 100%;
    border-bottom: 1px solid #472783;
    border-radius: 0;
    padding: 0.75rem 3rem 1.1rem 0;
    background: transparent url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 60 60'%3E%3Cpath fill='%233CBCD7' d='M.4 21.5l.1-1c.4-3.7 2.4-6.3 5.4-7.1 1.4-.4 4.2-.7 7.3 1.5L30 31.5l16.6-16.4.2-.2c3.1-2.2 5.9-1.8 7.3-1.4 3 .8 5 3.4 5.4 7.1l.1 1L30 46.8.4 21.5z'/%3E%3C/svg%3E") no-repeat right 0 center/16px 16px;
    font-weight: 400;
    font-size: 1rem;
    color: #82358b;
    vertical-align: middle;
    outline: none;
}

.style-select .ss-selected-option:focus {
    border-bottom: 1px solid var(--vyv-bleu-fonce);
}

.style-select .ss-dropdown {
    position: absolute;
    top: 50px;
    left: 0;
    z-index: 100;
    float: left;
    display: none;
    width: 100%;
    border: 1px solid #472783;
    border-top: 0;
    padding: 0.6rem 0;
    background-color: var(--vyv-blanc);
}

.style-select .ss-dropdown .ss-option {
    width: 100%;
    padding: 0 0.8rem;
    background-color: var(--vyv-blanc);
    font-weight: 400;
    font-size: 1rem;
    line-height: 160%;
    color: #82358b;
    transition: all 0.2s ease-in-out;
}

.style-select .ss-dropdown .ss-option.highlighted {
    background-color: #472783;
    color: var(--vyv-blanc);
}

.style-select .ss-dropdown .ss-option.disabled {
    color: #d0d0d0;
}

.style-select .ss-dropdown .ss-option.ticked {
    font-weight: 700;
}

.style-select .ss-dropdown .ss-option[data-value=""] {
    display: none;
}

.style-select.open .ss-dropdown {
    display: block;
}

.validation-icon .icon {
    display: block;
    width: 100%;
    height: 100%;
    transition: all 0.2s ease-in-out;
}

.keyfigures-slider-container .tns-outer .tns-controls [aria-controls],
.momentsdevie-slider-container .tns-outer .tns-controls [aria-controls],
.news-slider-container .tns-outer .tns-controls [aria-controls],
.one-slide-container .tns-outer .tns-controls [aria-controls],
.regular-slider-container .tns-outer .tns-controls [aria-controls],
.three-cards-slider-container .tns-outer .tns-controls [aria-controls] {
    display: block;
    border: none;
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath fill='%23472783' d='M31.1,0.9L29,1.1c-8.3,0.7-14.1,4-16,9c-0.9,2.3-1.6,7,3.3,12.1l37,27.7L16.7,77.5l-0.4,0.3c-4.8,5.1-4.1,9.8-3.3,12.1c1.9,4.9,7.7,8.2,15.9,9l2.1,0.2L87.6,50L31.1,0.9z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-color: transparent;
    background-position: 50% 50%;
    background-size: 100% 100%;
}

.moment__title {
    position: relative;
    margin-bottom: 30px;
    padding-bottom: 25px;
}

.moment__title:after {
    content: "";
    display: block;
    width: 82px;
    height: 8px;
    background-color: var(--vyv-bleu-fonce);
    position: absolute;
    bottom: 0;
    left: 0;
}

@media screen and (max-width: 539px) {
    .moment__title:after {
        margin: auto;
        right: 0;
    }
}

.custom-select,
.form-control {
    border-width: 0 0 1px;
}

.custom-select:focus,
.form-control:focus {
    border-bottom-color: var(--vyv-bleu-fonce);
}

.custom-control-input:focus~.custom-control-label:before {
    border-color: var(--vyv-bleu-fonce) !important;
}

textarea.form-control {
    border-width: 1px;
    padding: 0 10px;
}

textarea.form-control:focus {
    border-color: var(--vyv-bleu-fonce);
}

.custom-select--filter {
    width: auto;
    background: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath stroke-width='18px' fill='none' stroke='%23472783' d='M14.1,32.1L50,67.9l35.9-35.8'%3E%3C/path%3E%3C/svg%3E") no-repeat right 5% center/14px 14px;
    border: none !important;
    font-weight: 500;
    font-size: 1.25rem;
    line-height: 120%;
    color: #472783;
    -moz-text-align-last: right;
    text-align-last: right;
    float: right;
}

.custom-select:focus,
.custom-select:hover {
    text-decoration: none;
}

.custom-control.custom-radio {
    padding-left: 2.4rem;
}

input[type="checkbox"]+.custom-control-label,
input[type="radio"]+.custom-control-label {
    cursor: pointer;
}

input[type="checkbox"]+.custom-control-label {
    padding-top: 9px;
}

.apple input[type="checkbox"]+.custom-control-label {
    padding-top: 14px;
}

input[type="radio"]+.custom-control-label {
    padding-top: 5px;
}

.apple input[type="radio"]+.custom-control-label {
    padding-top: 8px;
}

input[type="radio"]+.custom-control-label:after,
input[type="radio"]+.custom-control-label:before {
    width: 28px;
    height: 28px;
    left: -2.45rem;
}

input[type="radio"]+.custom-control-label:after {
    background: transparent;
    border-radius: 50%;
    transform: scale(0.725);
}

input[type="radio"]:checked~.custom-control-label:after:after {
    background: #82358b;
}

.custom-file+.form-group {
    margin-top: 3em;
}

@media (min-width: 992px) {
    .custom-file+.form-group {
        margin-top: 4.1em;
    }
}

.recaptcha-wrapper {
    margin: 2.05em 0 1.25em;
}

.mention {
    line-height: 140%;
}

.mention+h2,
.mention+h3 {
    margin-top: 0 !important;
}

.custom-control-label:after,
.custom-control-label:before {
    left: -3rem;
}

.custom-control-label:after {
    background-position: 60% 50%;
}

label,
label a {
    color: var(--vyv-violet-fonce);
}

label a {
    text-decoration: underline;
}

label a:focus,
label a:hover {
    text-decoration: none;
}

.form-group {
    position: relative;
    margin-top: 1em;
}

@media (min-width: 992px) {
    .form-group {
        margin-bottom: 3em;
    }
}

.title-h3+.form-group {
    margin-top: 2.4em;
}

.form-group+.title-h3 {
    margin-top: 2em;
}

.custom-control {
    padding-left: 3rem;
}

.form-group-submit {
    padding: 0 0 1em;
}

.regular-form {
    margin-bottom: 5.25em;
}

.modal .regular-form {
    margin-bottom: 0;
}

.has-danger {
    position: relative;
}

form .form-group.has-danger:after,
form .form-group.has-success:after {
    content: "";
    position: absolute;
    top: 0.5rem;
    right: 0;
    display: block;
    width: 30px;
    height: 30px;
    background-repeat: no-repeat;
    background-color: transparent;
    background-position: 50% 50%;
    background-size: 100% 100%;
}

form .form-group.has-danger .custom-select,
form .form-group.has-success .custom-select {
    background: transparent;
}

form .form-group.has-danger:after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath fill='%23E02020' d='M29.9,14.4c0,14-25.9,12.3-25.9,12.3c4.3-4.3-3.8-4.6-3.8-12.3C0.1-1.5,29.9-1.4,29.9,14.4'/%3E%3Cpath fill='%23FEFEFE' d='M12.3,21.1c0-1.3,0.9-2.1,2.2-2.1c1.3,0,2.2,0.8,2.2,2.1c0,1.3-0.9,2.1-2.2,2.1 C13.1,23.2,12.3,22.4,12.3,21.1 M13.3,17.5c0.1-3.1-1-6.7-1-9.1c0-1.9,0.7-3.2,3.1-3.2c0.5,0,0.9,0.1,1.3,0.1c-1.5,3.4,0.6,12.4-2.3,12.4C14.1,17.7,13.6,17.6,13.3,17.5'/%3E%3C/svg%3E");
}

form .form-group.has-success:after {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3E%3Cpath fill='%23482683' d='M0,14.7C0,6.3,6,0.8,14.9,0.8c8.9,0,14.9,5.5,14.9,13.9c0,8-6,13.4-14.9,13.4C6,28.1,0,22.7,0,14.7'/%3E%3Cpath fill='%23FEFEFE' d='M24.6,8.7l-9.7,14.4c-0.4,0.1-0.6,0.1-0.9,0.1c-4.2,0-6.3-6.2-8.8-11.4c0.9-0.3,2.1-0.4,2.5-0.4 c3.6,0,3.9,7.2,5.7,8.7c4.3-8.8,6.5-11.6,9.6-11.6C23.4,8.4,24.1,8.5,24.6,8.7'/%3E%3C/svg%3E");
}

form .form-group.custom-checkbox.has-danger .custom-control-label,
form .form-group.custom-checkbox.has-success .custom-control-label {
    padding-right: 3rem;
}

.pristine-error {
    padding: 0.4em 0 0;
    font-family: Wigrum, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans,
        sans-serif;
    font-weight: 400;
    font-size: 0.8rem;
    color: #e02020;
}

.form-title {
    margin: 0 0 0.625em !important;
    text-align: center;
}

.form-title+.form-subtitle {
    margin-top: 1.5em;
}

.form-subtitle {
    margin: 0 0 0.5em;
    font-size: 2.4rem;
    line-height: 120%;
    color: #472783;
}

.form-intro,
.form-subtitle {
    font-weight: 700;
    text-align: center;
}

.form-intro {
    margin: 0 0 3em;
    font-size: 1.25rem;
    color: var(--vyv-noir);
}

@media (min-width: 768px) {
    .form-intro {
        margin-bottom: 4.5em;
    }
}

.validation-icon {
    display: block;
    width: 10rem;
    height: 10rem;
    margin: 0 auto 2em;
}

.validation-icon .icon {
    fill: #472783;
}

@media screen and (min-height: 800px) {
    .validation-icon {
        width: 12.4rem;
        height: 12.4rem;
        margin-bottom: 4rem;
    }
}

.validation-message {
    margin: 0 auto 1.65em;
    max-width: 65rem;
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 140%;
    color: var(--vyv-noir);
    text-align: center;
}

.validation-message p {
    line-height: 140%;
}

.modal .validation-message {
    max-width: 73rem;
}

input[type="checkbox"]+.custom-control-label {
    line-height: 100%;
}

textarea.form-control {
    margin-top: 0.8rem;
}

.regular-form> :last-child {
    margin-bottom: 0 !important;
}

.big-field {
    position: relative;
    margin: 0.6em 0 2.2em;
    border-radius: 6rem;
    padding: 1.6em 4rem;
    background-color: #f2f2f2;
}

.big-field label {
    display: block;
    margin: 0 1.25rem 0 0;
    font-weight: 700;
    font-size: 1.25rem;
    text-transform: uppercase;
    letter-spacing: 0.01em;
    color: #25262c;
}

.big-field input[type="email"],
.big-field input[type="text"] {
    width: calc(100% - 1.25rem);
    border: none;
    border-bottom: 1px solid #ced4da;
    padding: 0;
    background: transparent;
    font-weight: 400;
    font-size: 1.45rem;
}

.big-field input[type="email"]:focus,
.big-field input[type="text"]:focus {
    outline: none;
    border-bottom-color: var(--vyv-bleu-fonce);
}

@media (min-width: 768px) {
    .big-field {
        padding-right: 10px;
        padding-left: 10px;
    }

    .big-field .pristine-error,
    .big-field label {
        width: calc(100% - 1.25rem);
        text-align: right;
    }
}

@media (min-width: 1200px) {
    .modal .big-field {
        margin-right: -1.25rem;
        margin-left: -1.25rem;
    }
}

.has-float-label {
    display: block;
    position: relative;
}

.has-float-label>span,
.has-float-label label:not(.error) {
    position: absolute;
    top: 0;
    cursor: text;
    font-size: 1rem;
    color: #82358b;
    opacity: 1;
    transition: all 0.2s;
    top: -1em;
    left: 0;
    z-index: 3;
    line-height: 1;
    padding: 0;
}

.has-float-label textarea+label:not(.error) {
    padding-left: 1.5rem;
}

.has-float-label .form-control::-moz-placeholder {
    opacity: 1;
    -moz-transition: all 0.2s;
    transition: all 0.2s;
}

.has-float-label .form-control:-ms-input-placeholder {
    opacity: 1;
    -ms-transition: all 0.2s;
    transition: all 0.2s;
}

.has-float-label .form-control::placeholder {
    opacity: 1;
    transition: all 0.2s;
}

.has-float-label .form-control:placeholder-shown:not(:focus)::-moz-placeholder {
    opacity: 0;
}

.has-float-label .form-control:placeholder-shown:not(:focus):-ms-input-placeholder {
    opacity: 0;
}

.has-float-label .form-control:-moz-placeholder-shown:not(:focus)::placeholder {
    opacity: 0;
}

.has-float-label .form-control:-ms-input-placeholder:not(:focus)::placeholder {
    opacity: 0;
}

.has-float-label .form-control:placeholder-shown:not(:focus)::placeholder {
    opacity: 0;
}

.has-float-label .form-control:-moz-placeholder-shown:not(:focus)+ :not(.error) {
    font-size: 1rem;
    color: #82358b;
    opacity: 1;
    top: 0.8em;
    font-weight: 400;
}

.has-float-label .form-control:-ms-input-placeholder:not(:focus)+ :not(.error) {
    font-size: 1rem;
    color: #82358b;
    opacity: 1;
    top: 0.8em;
    font-weight: 400;
}

.has-float-label .form-control:placeholder-shown:not(:focus)+ :not(.error) {
    font-size: 1rem;
    color: #82358b;
    opacity: 1;
    top: 0.8em;
    font-weight: 400;
}

.input-group .has-float-label {
    display: table-cell;
}

.input-group .has-float-label .form-control {
    border-radius: 0;
}

.input-group .has-float-label:not(:last-child) .form-control {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.input-group .has-float-label:not(:first-child) .form-control {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    margin-left: -1px;
}

.js .inputfile {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}

.custom-file {
    display: block;
    height: auto;
    margin: 2em 0;
    position: relative;
}

@media (max-width: 767.98px) {
    .custom-file {
        max-width: 300px;
        margin-right: auto;
        margin-left: auto;
    }
}

.inputfile+label {
    font-weight: 500;
    cursor: pointer;
    display: block;
    padding: 0.7rem 1.5rem;
}

.inputfile+label strong {
    font-weight: 600;
    font-size: 0.85rem;
}

.inputfile+label span {
    position: relative;
}

@media (min-width: 768px) {
    .inputfile+label {
        display: inline-block;
        max-width: 80%;
        text-overflow: ellipsis;
        white-space: nowrap;
        overflow: hidden;
    }
}

.delete-type-file {
    display: block;
    padding: 1rem 0 0.9 0.7rem;
    position: absolute;
    top: 0;
    right: 0;
    background-color: var(--vyv-blanc);
    font-weight: 700;
    font-size: 0.9rem;
    color: #472783;
    text-decoration: underline;
}

.no-js .inputfile+label {
    display: none;
}

.inputfile.has-focus+label,
.inputfile:focus+label {
    outline: none;
}

.inputfile+label svg {
    width: 1em;
    height: 1em;
    vertical-align: middle;
    fill: currentColor;
    margin-top: -0.25em;
    margin-right: 0.25em;
}

.inputfile-custom+label {
    color: #472783;
    background-color: var(--vyv-blanc);
    padding: 0;
}

.inputfile-custom+label:hover,
.inputfile-custom.has-focus+label,
.inputfile-custom:focus+label {
    border-color: #472783;
}

.inputfile-custom+label strong {
    min-width: 210px;
    padding: 0.8rem;
    text-align: center;
}

.inputfile-custom+label strong.custom-file-uploaded {
    background-color: var(--vyv-blanc);
    border: 2px solid #472783;
    color: #472783;
}

.inputfile-custom+label span {
    display: block;
    vertical-align: top;
    font-weight: 400;
    font-size: 1rem;
    color: #878786;
}

@media (min-width: 768px) {
    .inputfile-custom+label span {
        display: inline-block;
        width: 300px;
        min-height: 2em;
        overflow: hidden;
        padding: 0.8rem 1.8rem;
        text-overflow: ellipsis;
        white-space: nowrap;
    }
}

.inputfile-custom+label strong {
    height: 100%;
    color: var(--vyv-blanc);
    background-color: #472783;
    display: inline-block;
    transition: all 0.2s ease-in-out;
}

.inputfile-custom+label:hover strong,
.inputfile-custom.has-focus+label strong,
.inputfile-custom:focus+label strong {
    background-color: #82358b;
    border-color: #82358b;
}

.inputfile-custom+label:hover strong.custom-file-uploaded,
.inputfile-custom.has-focus+label strong.custom-file-uploaded,
.inputfile-custom:focus+label strong.custom-file-uploaded {
    color: var(--vyv-blanc);
}

@media screen and (max-width: 50em) {
    .inputfile-custom+label strong {
        display: block;
    }
}

input[type="file"]:focus {
    outline: none;
}

@media (max-width: 767.98px) {
    .custom-file-reset {
        display: block;
    }
}

.intro-clip {
    position: relative;
    width: 626px;
    height: 486px;
}

.intro-clip svg.clip-svg {
    width: 100%;
    height: 100%;
}

.intro-clip .svg-background,
.intro-clip .svg-image {
    -webkit-clip-path: url(#clip-shape-1);
    clip-path: url(#clip-shape-1);
    width: 626px;
    height: 486px;
}

.intro-clip .svg-image {
    opacity: 1;
}

.intro-clip-overshape {
    position: absolute;
    top: 9%;
    left: 5%;
    z-index: 5;
    display: block;
    width: 131.5px;
    height: 131.5px;
}

.intro-clip--2,
.intro-clip--2 .svg-background,
.intro-clip--2 .svg-image {
    width: 520px;
    height: 409px;
}

.dropdown {
    position: relative;
}

.dropdown .button {
    font-family: inherit;
    font-size: 1rem;
    line-height: 1.5;
    cursor: pointer;
    display: inline-block;
    padding: 0;
    border: none;
    background-color: transparent;
    transition: all 0.2s ease-in-out;
    touch-action: manipulation;
}

.dropdown-toggle {
    position: relative;
}

.dropdown-menu {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 200;
    transform: translateY(90%);
    transition: all 0.2s ease-in-out;
}

.dropdown-on>.dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(100%);
}

.dropdown--mainnav .dropdown-toggle .icon,
.dropdown--sorting .dropdown-toggle .icon {
    transition: all 0.2s ease-in-out;
    transform: rotate(90deg);
}

.dropdown--mainnav .dropdown-menu,
.dropdown--sorting .dropdown-menu {
    min-width: 100%;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1),
        0 2px 4px -1px rgba(0, 0, 0, 0.06);
}

.dropdown--mainnav.dropdown-on .dropdown-toggle .icon,
.dropdown--sorting.dropdown-on .dropdown-toggle .icon {
    transform: rotate(-90deg);
}

.dropdown--mainnav .dropdown-menu {
    background-color: var(--vyv-blanc);
}

.dropdown--sorting {
    display: inline-block;
    margin: 0;
}

.dropdown--sorting:last-child {
    margin-right: 0;
}

.dropdown--sorting .dropdown-toggle {
    padding: 2px 7px 0 6px;
    color: #472783;
}

.dropdown--sorting.dropdown-on .dropdown-toggle {
    background-color: #472783;
    color: var(--vyv-blanc);
}

.dropdown--sorting .dropdown-menu {
    background-color: #472783;
    font-weight: 400;
    font-size: 0.75rem;
    text-align: left;
}

.dropdown--sorting .dropdown-menu a {
    display: block;
    padding: 2px 8px;
    color: var(--vyv-blanc);
    transition: all 0.2s ease-in-out;
}

.dropdown--sorting .dropdown-menu a:focus,
.dropdown--sorting .dropdown-menu a:hover {
    background-color: var(--vyv-blanc);
    color: #472783;
}

@media (min-width: 576px) {
    .dropdown--sorting {
        margin-right: 0.8em;
        margin-left: 0.8em;
    }

    .dropdown--sorting .dropdown-toggle {
        padding-right: 13px;
        padding-left: 13px;
    }
}

.offernavbar {
    background-color: #472783;
    color: var(--vyv-blanc);
}

.offernavbar-title {
    position: relative;
    min-height: 82px;
}

.offernavbar-title:after {
    content: "";
    display: block;
    width: 100%;
    max-width: 1174px;
    height: 1px;
    background-color: hsla(0, 0%, 100%, 0.8);
    position: absolute;
    bottom: 0;
    left: 50%;
    z-index: 5;
    transform: translateX(-50%);
}

.offernavbar .dropdown-menu {
    max-height: calc(100vh - 300px);
    overflow: auto;
}

@media screen and (min-width: 470px) {
    .offernavbar .dropdown-menu>ul>li {
        float: left;
        width: 50%;
    }
}

@media (min-width: 576px) {
    .offernavbar .dropdown-menu>ul>li {
        width: 33%;
    }
}

@media (max-width: 991.98px) {
    .offernavbar {
        text-align: center;
    }

    .offernavbar .dropdown-menu {
        width: calc(100vw - 3rem);
        font-size: 0.95rem;
        right: 50%;
        transform: translateX(50%);
    }

    .offernavbar .dropdown-on>.dropdown-menu {
        transform: translate(50%, 100%);
    }
}

@media screen and (max-height: 960px) {
    .offernavbar {
        margin-top: 5px !important;
    }

    .offernavbar-title {
        min-height: inherit;
        padding-top: 8px;
        padding-bottom: 10px;
    }
}

.offer-navigation,
.offer-navigation-select {
    display: none;
}

@media (max-width: 991.98px) {
    .offer-navigation-select {
        display: inline-block;
    }
}

@media (min-width: 992px) {
    .offer-navigation {
        display: table;
        width: 100%;
        max-width: 1174px;
        margin: 0 auto;
    }

    .offer-navigation>li {
        display: table-cell;
        vertical-align: middle;
        text-align: center;
        padding-left: 0.8rem;
    }

    .offer-navigation>li .group>a {
        display: block;
        padding: 1rem 0 1.5rem;
        transition: all 0.2s ease-in-out;
    }
}

@media screen and (min-width: 992px) and (max-height: 960px) {
    .offer-navigation>li .group>a {
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
    }
}

@media (min-width: 992px) {

    .offer-navigation>li .group>a.active,
    .offer-navigation>li .group>a:focus,
    .offer-navigation>li .group>a:hover {
        color: #007c9e;
    }
}

@media (min-width: 992px) {
    .offer-navigation>li:first-child {
        padding-left: 0;
        text-align: left;
    }

    .offer-navigation>li:first-child .group>a {
        padding-left: 0;
    }
}

@media (min-width: 992px) {
    .offer-navigation>li:last-child {
        text-align: right;
    }

    .offer-navigation>li:last-child .group>a {
        padding-right: 0;
    }
}

@media (min-width: 992px) {

    .offer-navigation>li.has-submenu:focus .group>a,
    .offer-navigation>li.has-submenu:hover .group>a {
        background-color: var(--vyv-blanc);
        color: #007c9e;
    }
}

@media (min-width: 1200px) {
    .offer-navigation {
        font-weight: 500;
        font-size: 1.05em;
    }
}

.onepage-header p+.title-h2 {
    margin-top: 0 !important;
}

@media (min-width: 992px) {
    .onepage-header .intro-clip {
        margin-left: -4rem;
    }
}

@media screen and (min-width: 1120px) {
    .onepage-header .intro-clip {
        transform-origin: 50% 50%;
        margin-left: 0;
    }
}

@media (min-width: 1200px) {
    .onepage-header .intro-clip {
        margin-left: -2.4rem;
    }
}

@media screen and (min-width: 1400px) {
    .onepage-header .intro-clip {
        margin-left: 0;
    }
}

@media screen and (max-width: 1260px) {
    .onepage-header .intro-clip {
        transform-origin: 50% 0;
        transform: scale(0.71);
    }
}

@media (max-width: 991.98px) {
    .onepage-header .intro-clip {
        margin: 0 auto;
    }
}

@media (max-width: 767.98px) {
    .onepage-header .intro-clip {
        display: none;
    }
}

@media (max-width: 991.98px) {
    .onepage-header .d-md-block {
        height: 345px;
    }
}

@media (min-width: 992px) {
    .news-header .text-part {
        position: relative;
    }

    .news-header .text-part-content {
        min-height: 18rem;
    }

    .news-header .r-flex {
        position: relative;
        z-index: 5;
    }
}

@media (max-width: 991.98px) {
    .news-header .text-part-content {
        margin-bottom: 1.6em;
    }
}

.keyfigures-slider-container .tns-outer,
.momentsdevie-slider-container .tns-outer,
.news-slider-container .tns-outer,
.one-slide-container .tns-outer,
.regular-slider-container .tns-outer,
.three-cards-slider-container .tns-outer {
    position: relative;
}

.keyfigures-slider-container .tns-outer [aria-controls],
.momentsdevie-slider-container .tns-outer [aria-controls],
.news-slider-container .tns-outer [aria-controls],
.one-slide-container .tns-outer [aria-controls],
.regular-slider-container .tns-outer [aria-controls],
.three-cards-slider-container .tns-outer [aria-controls] {
    border: none;
    outline: none;
}

.keyfigures-slider-container .tns-outer .tns-controls [aria-controls],
.momentsdevie-slider-container .tns-outer .tns-controls [aria-controls],
.news-slider-container .tns-outer .tns-controls [aria-controls],
.one-slide-container .tns-outer .tns-controls [aria-controls],
.regular-slider-container .tns-outer .tns-controls [aria-controls],
.three-cards-slider-container .tns-outer .tns-controls [aria-controls] {
    width: 30px;
    height: 30px;
    position: absolute;
    top: 50%;
    z-index: 30;
    transform: translateY(-50%);
    transition: all 0.2s ease-in-out;
}

.keyfigures-slider-container .tns-outer .tns-controls [aria-controls]:focus,
.keyfigures-slider-container .tns-outer .tns-controls [aria-controls]:hover,
.momentsdevie-slider-container .tns-outer .tns-controls [aria-controls]:focus,
.momentsdevie-slider-container .tns-outer .tns-controls [aria-controls]:hover,
.news-slider-container .tns-outer .tns-controls [aria-controls]:focus,
.news-slider-container .tns-outer .tns-controls [aria-controls]:hover,
.one-slide-container .tns-outer .tns-controls [aria-controls]:focus,
.one-slide-container .tns-outer .tns-controls [aria-controls]:hover,
.regular-slider-container .tns-outer .tns-controls [aria-controls]:focus,
.regular-slider-container .tns-outer .tns-controls [aria-controls]:hover,
.three-cards-slider-container .tns-outer .tns-controls [aria-controls]:focus,
.three-cards-slider-container .tns-outer .tns-controls [aria-controls]:hover {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath fill='%2382358C' d='M31.1,0.9L29,1.1c-8.3,0.7-14.1,4-16,9c-0.9,2.3-1.6,7,3.3,12.1l37,27.7L16.7,77.5l-0.4,0.3c-4.8,5.1-4.1,9.8-3.3,12.1c1.9,4.9,7.7,8.2,15.9,9l2.1,0.2L87.6,50L31.1,0.9z'/%3E%3C/svg%3E");
}

.keyfigures-slider-container .tns-outer .tns-controls [data-controls="prev"],
.momentsdevie-slider-container .tns-outer .tns-controls [data-controls="prev"],
.news-slider-container .tns-outer .tns-controls [data-controls="prev"],
.one-slide-container .tns-outer .tns-controls [data-controls="prev"],
.regular-slider-container .tns-outer .tns-controls [data-controls="prev"],
.three-cards-slider-container .tns-outer .tns-controls [data-controls="prev"] {
    transform: translateY(-50%) rotate(180deg);
    left: 0;
}

.keyfigures-slider-container .tns-outer .tns-controls [data-controls="next"],
.momentsdevie-slider-container .tns-outer .tns-controls [data-controls="next"],
.news-slider-container .tns-outer .tns-controls [data-controls="next"],
.one-slide-container .tns-outer .tns-controls [data-controls="next"],
.regular-slider-container .tns-outer .tns-controls [data-controls="next"],
.three-cards-slider-container .tns-outer .tns-controls [data-controls="next"] {
    right: 0;
}

.keyfigures-slider-container .tns-outer .tns-nav,
.momentsdevie-slider-container .tns-outer .tns-nav,
.news-slider-container .tns-outer .tns-nav,
.one-slide-container .tns-outer .tns-nav,
.regular-slider-container .tns-outer .tns-nav,
.three-cards-slider-container .tns-outer .tns-nav {
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 15;
    width: 100%;
    text-align: center;
}

.keyfigures-slider-container .tns-outer .tns-nav [aria-controls],
.momentsdevie-slider-container .tns-outer .tns-nav [aria-controls],
.news-slider-container .tns-outer .tns-nav [aria-controls],
.one-slide-container .tns-outer .tns-nav [aria-controls],
.regular-slider-container .tns-outer .tns-nav [aria-controls],
.three-cards-slider-container .tns-outer .tns-nav [aria-controls] {
    width: 10px;
    height: 10px;
    margin: 0 5px;
    border: none;
    border-radius: 50%;
    padding: 0;
    background-color: #472783;
    opacity: 0.5;
    transition: all 0.2s ease-in-out;
}

.keyfigures-slider-container .tns-outer .tns-nav [aria-controls].tns-nav-active,
.momentsdevie-slider-container .tns-outer .tns-nav [aria-controls].tns-nav-active,
.news-slider-container .tns-outer .tns-nav [aria-controls].tns-nav-active,
.one-slide-container .tns-outer .tns-nav [aria-controls].tns-nav-active,
.regular-slider-container .tns-outer .tns-nav [aria-controls].tns-nav-active,
.three-cards-slider-container .tns-outer .tns-nav [aria-controls].tns-nav-active {
    opacity: 1;
}

.momentsdevie-slider-container {
    margin-bottom: 3em;
}

.momentsdevie-slider-container .tns-outer {
    padding-top: 0.2em !important;
    padding-bottom: 4em !important;
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .momentsdevie-slider-container {
        padding-right: 2rem;
        padding-left: 2rem;
    }
}

.keyfigures-slider-container {
    position: relative;
}

.keyfigures-slider-container .tns-outer {
    padding-bottom: 3em !important;
}

@media (min-width: 1200px) {
    .keyfigures-slider-container .tns-outer .tns-controls [data-controls="prev"] {
        left: -3rem;
    }

    .keyfigures-slider-container .tns-outer .tns-controls [data-controls="next"] {
        right: -3rem;
    }
}

@media (min-width: 992px) {

    .regular-slider-container .tns-outer .tns-controls [data-controls="prev"],
    .three-cards-slider-container .tns-outer .tns-controls [data-controls="prev"] {
        left: -3em;
    }

    .regular-slider-container .tns-outer .tns-controls [data-controls="next"],
    .three-cards-slider-container .tns-outer .tns-controls [data-controls="next"] {
        right: -3em;
    }
}

.regular-slider-container {
    margin-bottom: 2em;
}

.regular-slider-container .tns-outer {
    padding-bottom: 2em !important;
}

@media screen and (min-width: 992px) and (max-width: 1080px) {
    .big-image .regular-slider-container {
        margin-right: 3rem;
        margin-left: 3rem;
    }
}

.regular-slider-container--home .tns-outer .tns-controls [data-controls="next"],
.regular-slider-container--home .tns-outer .tns-controls [data-controls="next"]:focus,
.regular-slider-container--home .tns-outer .tns-controls [data-controls="next"]:hover {
    background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath fill='%23FFFFFF' d='M31.1,0.9L29,1.1c-8.3,0.7-14.1,4-16,9c-0.9,2.3-1.6,7,3.3,12.1l37,27.7L16.7,77.5l-0.4,0.3c-4.8,5.1-4.1,9.8-3.3,12.1c1.9,4.9,7.7,8.2,15.9,9l2.1,0.2L87.6,50L31.1,0.9z'/%3E%3C/svg%3E");
}

.three-cards-slider-container {
    margin-bottom: 3em;
}

.three-cards-slider-container .tns-outer {
    padding-top: 0.2em !important;
    padding-bottom: 4em !important;
}

@media (min-width: 992px) and (max-width: 1199.98px) {
    .three-cards-slider-container {
        padding-right: 2rem;
        padding-left: 2rem;
    }
}

.publications-juridiques .three-cards-slider-container .tns-outer {
    padding-bottom: 1em !important;
}

@media (min-width: 992px) {
    .publications-juridiques .three-cards-slider-container .tns-outer {
        padding-bottom: 4em !important;
    }
}

@media (max-width: 767.98px) {
    .one-slide-container .tns-outer {
        padding-bottom: 2.6em !important;
    }
}

@media (min-width: 768px) {
    .one-slide-container .tns-ovh {
        overflow: visible;
    }
}

.one-slide-slider {
    display: flex;
}

@media (max-width: 767.98px) {
    .one-slide-slider .tns-item {
        padding: 22px 25px 0 0 !important;
    }
}

@media (max-width: 991.98px) {

    .tns-controls [data-controls="next"],
    .tns-controls [data-controls="prev"] {
        display: none !important;
    }
}

.news-slider-container {
    position: relative;
    padding: 0.8em 0 3em;
}

.news-slider-container .tns-inner {
    position: relative;
}

@media (min-width: 992px) {
    .news-slider-container .tns-inner:after {
        content: "";
        display: block;
        width: 612px;
        height: 100%;
        background-color: var(--vyv-violet-fonce);
        position: absolute;
        top: 0;
        left: 4.9rem;
        z-index: -1;
    }
}

@media (min-width: 1200px) {
    .news-slider-container .tns-inner:after {
        left: 6.75rem;
    }
}

@media (max-width: 991.98px) {
    .news-slider-container .tns-outer {
        max-width: 612px;
        margin: 0 auto;
    }
}

@media (min-width: 992px) {
    .news-slider-container .tns-outer .tns-nav {
        bottom: 0.8em;
        left: 310px;
        width: 200px;
        text-align: right;
    }

    .news-slider-container .tns-outer .tns-nav [aria-controls] {
        background-color: var(--vyv-blanc);
    }
}

.simple-card {
    display: block;
    background-color: #ece9ea;
    transition: all 0.5s ease;
}

.simple-card-inner {
    position: relative;
    min-height: 350px;
    padding: 2.8em 30px 2em;
}

.simple-card-title {
    margin: 0 0 0.4em;
    font-weight: 600;
    font-size: 28px;
    line-height: 130%;
    color: var(--vyv-violet);
}

.simple-card-content {
    font-weight: 400;
    font-size: 13px;
    line-height: 150%;
    color: #878786;
}

.simple-card-footer {
    padding: 0 30px 1.4em;
}

.simple-card-footer .btn {
    width: 100%;
    text-align: center;
}

.masque {
    position: relative;
    margin: 0 auto;
}

.masque-picture {
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
}

.masque-picture img {
    display: block;
    width: calc(100% - 2px);
    height: calc(100% - 2px);
    -o-object-fit: cover;
    object-fit: cover;
}

.masque-overlay {
    position: relative;
    z-index: 5;
}

.masque--1 {
    max-width: 590px;
    margin-bottom: 1.5em;
}

@media (min-width: 992px) {

    .float-left .masque--1,
    .float-right .masque--1 {
        max-width: 482px;
        margin-bottom: 0;
    }
}

@media (min-width: 1200px) {

    .float-left .masque--1,
    .float-right .masque--1 {
        max-width: 590px;
    }
}

.masque--id {
    width: 118px;
    height: 86px;
}

.masque--id .masque-picture img {
    -o-object-fit: none;
    object-fit: none;
    height: auto;
}

.publication-card {
    position: relative;
    display: block;
    background-color: #ece9ea;
    transition: all 0.5s ease;
}

.publication-card-pic {
    background-color: var(--vyv-blanc);
    height: 250px;
}

@media (max-width: 767.98px) {
    .publication-card-pic {
        height: auto;
    }

    .publication-card-pic img {
        width: 100%;
        max-width: inherit;
        height: auto;
        margin: auto;
    }
}

@media (min-width: 768px) {
    .publication-card-pic {
        height: 422px;
    }

    .publication-card-pic img {
        display: block;
        width: 100%;
        height: 100%;
        -o-object-fit: cover;
        object-fit: cover;
        margin: auto;
    }
}

.publication-card-inner {
    position: relative;
    padding: 1.6em 20px;
}

.publication-card-footer {
    padding: 0 20px 2em;
}

.publication-card-footer .btn {
    width: 100%;
    text-align: center;
}

@media (min-width: 768px) {
    [class*="col"]>.publication-card {
        height: 100%;
    }

    [class*="col"]>.publication-card .publication-card-inner {
        min-height: 240px;
        padding-bottom: 110px;
    }

    [class*="col"]>.publication-card .publication-card-footer {
        position: absolute;
        bottom: 2em;
        left: 0;
        z-index: 5;
        width: 100%;
        padding: 0 20px;
    }
}

.partners-list {
    padding: 0;
    list-style: none;
    margin: 0 auto;
    text-align: center;
}

.partners-list li {
    display: inline-block;
    width: 30%;
    padding: 0 1rem;
}

.partners-list a {
    color: #7f7f7f;
    text-decoration: none;
    transition: all 0.2s ease-in-out;
}

.partners-list a:focus,
.partners-list a:hover {
    color: #472783;
}

.partners-list img {
    display: block;
    width: 100%;
    height: auto;
}

@media (min-width: 576px) {
    .partners-list li {
        width: 22%;
        width: 18%;
    }
}

@media (min-width: 992px) {
    .partners-list {
        display: table;
    }

    .partners-list li {
        display: table-cell;
        width: auto;
    }
}

.regular-grid,
.results-grid {
    position: relative;
    min-height: 360px;
}

@media (min-width: 768px) {

    .regular-grid:after,
    .results-grid:after {
        content: "";
        display: block;
        width: 100%;
        height: 360px;
        background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440.5 205.7'%3E%3Cpath fill='%23F8F7F7' d='M1440.5,0c0,0-353.3,130.6-705.4,158.7c-319.8,25.5-518.3-13.8-735-47.7c0,24.5,0,65.8-0.1,85.4 c535.1,27,1071.7-8.2,1440-58.4C1440.2,64.9,1440.5,0,1440.5,0z'/%3E%3C/svg%3E");
        background-repeat: no-repeat;
        background-color: transparent;
        background-position: 50% 100%;
        background-size: 100% auto;
        position: absolute;
        bottom: 0;
        left: 0;
        z-index: 0;
    }
}

.bigsearch-suggestion {
    max-height: 0;
    overflow: hidden;
    height: auto;
    transition: all 0.2s ease-in-out;
}

.bigsearch-suggestion.active {
    max-height: 90em;
}

.search-wrapper {
    background-color: rgba(71, 37, 131, 0.7);
}

.tabs-list li {
    color: var(--vyv-bleu-fonce);
    font-weight: 500;
    font-size: 1.25rem;
    line-height: 1.125;
}

.tabs-list .active,
.tabs-list a {
    display: block;
    height: 100%;
    background-color: var(--vyv-fond-gris);
}

.tabs-list .active {
    background-color: var(--vyv-bleu-fonce);
    color: var(--vyv-blanc);
}

.tabs-list .active span {
    opacity: 1;
}

.tabs-list a span {
    opacity: 0.5;
    transition: all 0.2s ease-in-out;
}

.tabs-list a:focus span,
.tabs-list a:hover span {
    opacity: 1;
}

@media (max-width: 991.98px) {
    .tabs-list li {
        border-bottom: 2px solid var(--vyv-blanc);
    }

    .tabs-list .active,
    .tabs-list a {
        padding: 0.5rem 1rem;
    }

    .tabs-list .active {
        position: relative;
        padding-left: 3rem;
    }

    .tabs-list .active:before {
        content: "";
        display: block;
        width: 1.4rem;
        height: 1.4rem;
        background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'%3E%3Cpath fill='%23FFFFFF' d='M31.1,0.9L29,1.1c-8.3,0.7-14.1,4-16,9c-0.9,2.3-1.6,7,3.3,12.1l37,27.7L16.7,77.5l-0.4,0.3c-4.8,5.1-4.1,9.8-3.3,12.1	c1.9,4.9,7.7,8.2,15.9,9l2.1,0.2L87.6,50L31.1,0.9z'/%3E%3C/svg%3E");
        background-repeat: no-repeat;
        background-color: transparent;
        background-position: 50% 50%;
        background-size: 100% 100%;
        position: absolute;
        top: 50%;
        left: 1rem;
        z-index: 5;
        transform: translateY(-50%);
    }
}

@media (min-width: 992px) {
    .tabs-list {
        display: table;
        width: 100%;
        table-layout: fixed;
    }

    .tabs-list li {
        display: table-cell;
        text-align: center;
        vertical-align: middle;
        padding: 0 1rem;
    }

    .tabs-list .active,
    .tabs-list a {
        display: table;
        width: 100%;
        height: 50px;
        padding: 0 0.5rem;
    }

    .tabs-list .active span,
    .tabs-list a span {
        display: table-cell;
        vertical-align: middle;
    }
}

@media (min-width: 1200px) {
    .tabs-list {
        width: calc(100% + 20px);
        margin-right: -10px;
        margin-left: -10px;
    }

    .tabs-list li:first-child {
        padding-left: 0.7rem;
    }

    .tabs-list li:last-child {
        padding-right: 0.7rem;
    }

    .tabs-list .active,
    .tabs-list a {
        padding: 0 1rem;
    }
}

.entite-link {
    margin: 0 auto;
    background-color: var(--vyv-blanc);
}

@media (max-width: 575.98px) {
    .entite-link {
        min-width: calc(100vw - 20px);
    }
}

@media (min-width: 576px) and (max-width: 767.98px) {
    .entite-link {
        min-width: 520px;
    }
}

.entite-link-thumb {
    height: 300px;
    max-width: 290px;
    margin: 0 auto;
}

.entite-link-thumb img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.entite-link-footer {
    width: 100%;
}

.logo-link {
    position: relative;
    display: block;
    padding: 1px;
    background-color: #9a9a99;
}

.logo-link-inner {
    background-color: var(--vyv-blanc);
}

.logo-link-thumb {
    width: 186px;
    height: 186px;
    margin: 0 auto;
}

.logo-link-thumb img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
}

@media (max-width: 575.98px) {
    .logo-link-thumb {
        padding-right: 1.2rem;
        padding-left: 1.2rem;
    }
}

.logo-link-footer {
    color: #472783;
    padding: 0.5rem 0 1.55rem;
    transition: all 0.2s ease-in-out;
}

.logo-link-footer .icon {
    width: 2.7rem;
    height: 2.7rem;
}

.logo-link:focus .logo-link-footer,
.logo-link:hover .logo-link-footer {
    color: var(--vyv-bleu-fonce);
}

.media-link {
    position: relative;
    display: block;
}

.media-link-thumb {
    width: 100%;
    height: 100%;
    margin: 0 auto;
}

.media-link-thumb img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: fit;
    object-fit: fit;
}

.media-link-inner {
    border: 1px solid #9a9a99;
    border-top: 0 solid #9a9a99;
    background-color: var(--vyv-blanc);
}

.media-link-title {
    transition: all 0.2s ease-in-out;
}

.media-link-desc {
    min-height: 190px;
    padding-bottom: 10px;
}

.media-link-footer {
    color: #472783;
    transition: all 0.2s ease-in-out;
}

.media-link-icon {
    position: absolute;
    bottom: 0;
    right: 0;
}

.media-link:focus .media-link-footer,
.media-link:focus .media-link-title,
.media-link:hover .media-link-footer,
.media-link:hover .media-link-title {
    color: var(--vyv-bleu-fonce);
}

.bio-card {
    position: relative;
}

.bio-card-thumb {
    top: 1.4rem;
}

@media (min-width: 768px) {
    .bio-card-desc {
        min-height: 277px;
    }
}

.bio-card-title {
    top: .6rem;
    left: 130px;
    display: table;
    height: 70px;
}

.bio-card-title-inner {
    display: table-cell;
    vertical-align: bottom;
}

.section-moments {
    padding: 4em 0 5em;
    background-image: url(../images/bg-publications-juridiques.svg);
    background-repeat: no-repeat;
    background-size: 100%;
}

@media (min-width: 576px) {
    .section-moments {
        padding-top: 6em;
    }
}

@media (min-width: 768px) {
    .section-moments {
        padding-top: 8em;
        margin-top: -3em;
    }
}

@media (min-width: 992px) {
    .section-moments {
        padding-top: 10em;
    }
}

@media (min-width: 1200px) {
    .section-moments {
        padding-top: 12em;
    }
}

.section-moments:before {
    background-image: url(../images/bg-keydata-bottom.svg);
}

.moment {
    position: relative;
    display: block;
    width: 100%;
    border-bottom: 2px solid var(--vyv-blanc);
    background-color: var(--vyv-blanc);
}

@media (min-width: 768px) {
    .moment {
        border-bottom: none;
    }
}

.moment__excerpt,
.moment__footer,
.moment__inner,
.moment__intro,
.moment__title {
    position: relative;
    z-index: 1;
    display: block;
    font-family: Wigrum, Segoe UI, Roboto, Helvetica Neue, Arial, Noto Sans,
        sans-serif;
    line-height: 120%;
    color: var(--vyv-blanc);
}

.moment__inner {
    display: block;
    width: 100%;
    height: 100%;
    padding: 4em 5rem 4em 2rem;
}

@media (min-width: 576px) {
    .moment__inner {
        display: table;
    }
}

@media (min-width: 992px) {
    .moment__inner {
        padding-left: 3em;
        padding-bottom: 2em;
    }
}

.moment__cell {
    display: table-cell;
    vertical-align: middle;
}

.moment__pic {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    overflow: hidden;
}

.moment__pic img {
    -o-object-fit: cover;
    object-fit: cover;
}

.moment__pic:after,
.moment__pic img {
    display: block;
    width: 100%;
    height: 100%;
    transition: all 0.2s ease-in-out;
}

.moment__pic:after {
    content: "";
    background-color: #43484f;
    opacity: 0.5;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

.moment__title {
    margin: 0 0 0.4em;
    font-weight: 600;
    font-size: 1.7em;
    line-height: 120%;
}

.moment__title:after {
    margin: 0;
    right: inherit;
}

.moment__title br {
    display: none;
}

@media (min-width: 992px) {
    .moment__title {
        font-size: 2em;
    }

    .moment__title br {
        display: inline;
    }
}

.moment__intro {
    max-width: 350px;
    margin: 0 0 0.6em;
    font-weight: 600;
    font-size: 1em;
    line-height: 140%;
}

@media (min-width: 992px) {
    .moment__intro {
        font-size: 1.25em;
    }
}

.moment__excerpt {
    max-width: 480px;
    margin: 0 0 1.6em;
    font-weight: 400;
    font-size: 0.8em;
    line-height: 160%;
}

@media (min-width: 992px) {
    .moment__excerpt {
        font-size: 1em;
    }
}

.moment__footer {
    color: #007c9e;
    position: absolute;
    bottom: 1em;
    right: 1em;
    z-index: 5;
}

@media (min-width: 992px) {
    .moment__footer {
        bottom: 1.5em;
        right: 1.5em;
    }
}

@media (min-width: 1200px) {
    .moment__footer {
        bottom: 2em;
        right: 2em;
    }
}

.moment--big {
    height: 100%;
    border-bottom: 2px solid var(--vyv-blanc);
}

.moment--big .moment__intro {
    max-width: 480px;
}

@media (min-width: 768px) {
    .moment--big .moment__title {
        padding-bottom: 0.4em;
        font-size: 2.5em;
    }

    .moment--big .moment__intro {
        font-size: 1.5em;
    }
}

@media (min-width: 992px) {
    .moment--big .moment__inner {
        padding-top: 8em;
    }
}

@media (min-width: 1200px) {
    .moment--big .moment__inner {
        padding-top: 24em;
    }
}

.noTouchDevice .moment:focus .moment__pic:after,
.noTouchDevice .moment:hover .moment__pic:after {
    opacity: 0.2;
}

.shadow-section {
    pointer-events: none;
    width: 100%;
}

.show-details {
    position: relative;
    z-index: 200;
    overflow: hidden;
    cursor: pointer;
}

.show-details-close {
    position: absolute;
    top: 0.6rem;
    right: 0.6rem;
}

.show-details-close svg {
    stroke: var(--vyv-blanc);
}

.show-details .show-details-title {
    margin: 0 0 1em;
    font-weight: 700;
    font-size: 1.275rem;
    letter-spacing: -0.02em;
}

@media (max-width: 767.98px) {
    .show-details .show-details-title {
        font-size: 1.125rem;
    }
}

@media (max-width: 575.98px) {
    .show-details .show-details-title {
        font-size: 1rem;
    }
}

.show-details .show-details-flap {
    background-color: var(--vyv-violet);
    color: var(--vyv-blanc);
    font-size: 0.875rem;
    line-height: 1.375;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    transition-property: all;
    transition-duration: 0.3s;
    z-index: -1;
    width: 100%;
    height: 100%;
    padding: 1rem 1rem 0;
}

@media (min-width: 768px) {
    .show-details .show-details-flap {
        width: calc(200% + 20px);
    }
}

@media (min-width: 992px) {
    .show-details .show-details-flap {
        padding: 1.6rem 2rem 0 1.8rem;
    }
}

@media (max-width: 767.98px) {
    .show-details .show-details-flap {
        font-size: 80%;
    }
}

.show-details .show-details-flap ul {
    margin-bottom: 1em;
}

@media screen and (min-width: 1320px) {
    .show-details .show-details-flap ul {
        margin-bottom: 3em;
    }
}

.show-details .show-details-flap li {
    position: relative;
    padding: 0 0 0 1rem;
    margin-bottom: 1rem;
}

.show-details .show-details-flap li:before {
    content: "•";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
    font-size: 2em;
    line-height: 50%;
}

@media (min-width: 1200px) {
    .show-details .show-details-flap li {
        margin-bottom: 1.5rem;
    }
}

.show-details .show-details-flap .actu-thumb {
    display: block;
    width: 100%;
    max-width: 100vw;
    margin-bottom: 1em;
}

@media (min-width: 1200px) {
    .show-details .show-details-flap .actu-thumb {
        margin-bottom: 2.25em;
    }
}

.show-details .show-details-col-a,
.show-details .show-details-col-b {
    position: relative;
}

.show-details .show-details-col-a {
    padding-right: 10px;
}

@media (min-width: 1200px) {
    .show-details .show-details-col-a {
        padding-right: 20px;
    }
}

.show-details .show-details-col-b {
    padding-left: 10px;
}

@media (min-width: 1200px) {
    .show-details .show-details-col-b {
        padding-left: 20px;
    }
}

.show-details .show-details-links {
    border-color: var(--vyv-blanc);
    border-top: 1px var(--vyv-blanc);
    border-style: solid;
    padding-top: 1.5rem;
}

.show-details .show-details-links p {
    margin: 0 0 0.6em;
}

.show-details .show-details-links a {
    display: block;
    font-weight: 600;
    transition: all 0.2s ease-in-out;
}

.show-details .show-details-links a:focus,
.show-details .show-details-links a:hover {
    color: var(--vyv-bleu-fonce);
}

@media screen and (min-width: 1320px) {
    .show-details .show-details-links {
        padding-top: 2rem;
    }
}

.show-details.active {
    overflow: visible;
    z-index: 500;
}

.show-details.active .show-details-flap {
    opacity: 1;
    z-index: 510;
}

@media (min-width: 768px) and (max-width: 991.98px) {
    .flex>div:nth-of-type(2n + 2) .show-details-flap {
        left: inherit;
        right: 0;
    }
}

@media (min-width: 992px) {
    .flex>div:nth-of-type(3n + 3) .show-details-flap {
        left: inherit;
        right: 0;
    }
}

.fake-tag,
.tag {
    position: relative;
    display: inline-block;
    font-weight: 500;
    color: #82358b;
}

.tag {
    display: table-cell;
    vertical-align: middle;
    margin: 0;
    padding: 0.2em 1rem;
    font-weight: 500;
    font-size: 1.25rem;
    line-height: 1.125;
    color: var(--vyv-bleu-fonce);
    opacity: 0.5;
    transition: all 0.4s ease-in-out;
    cursor: pointer;
}

.MacOS .tag {
    padding-top: 1.1rem;
    padding-bottom: 0.9rem;
}

.tag-label {
    display: inline-block;
    margin: 0.2rem 0.4rem;
    padding: 0;
}

.tag-label input[type="checkbox"],
.tag-label input[type="radio"] {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    opacity: 0;
}

.tag-label:focus .tag,
.tag-label:hover .tag,
.tag-label input[type="checkbox"]:checked+.tag,
.tag-label input[type="radio"]:checked+.tag {
    text-decoration: none;
    opacity: 1;
}

.tag-label input[type="checkbox"]:checked+.tag,
.tag-label input[type="radio"]:checked+.tag {
    background-color: var(--vyv-bleu-fonce);
    color: var(--vyv-blanc);
}

.tag-label-inner {
    background-color: var(--vyv-fond-gris);
    display: table;
    width: 100%;
}

@media (min-width: 576px) {
    .tag-label {
        width: 281px;
        margin: 0.4rem 1rem;
    }

    .tag-inner {
        height: 50px;
    }
}

.fake-tag {
    padding: 0 1.3rem 0 1rem;
    font-size: 1.1rem;
    line-height: 100%;
    vertical-align: top;
}

.fake-tag:after {
    content: "";
    display: block;
    width: 1px;
    height: 100%;
    background-color: #e9ecef;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 5;
}

.fake-tag:last-child:after {
    display: none;
}

.faq {
    position: relative;
}

.faq-answer {
    padding: 0.8rem 1rem 2.4rem 0;
    line-height: 160%;
}

@media (min-width: 992px) {
    .faq-answer {
        padding-right: 3rem;
        padding-left: 3rem;
    }
}

@media (min-width: 1200px) {
    .faq-answer {
        padding-right: 6.3rem;
        padding-left: 5rem;
    }
}

.faq+.flex.flex-col.items-center.mt-12.mb-32 {
    margin-top: 1.6em !important;
}

.faq-menu {
    display: none;
    background-color: var(--vyv-blanc);
}

.faq-menu-nav {
    position: relative;
    background-color: var(--vyv-blanc);
    text-align: center;
}

@media (min-width: 768px) {
    .faq-menu-nav {
        padding-top: 2em;
    }
}

@media (min-width: 992px) {
    .faq-menu-nav {
        padding-top: 3.5em;
    }
}

.faq-menu-bg {
    display: none;
}

@media (min-width: 992px) {
    .faq-menu-bg {
        display: block;
        width: 190px;
        height: 57px;
        position: absolute;
        top: 0;
        left: 50%;
        z-index: 5;
        transition: all 0.2s ease-in-out;
        transform: translate(18rem, -2.1rem);
    }
}

@media (min-width: 1200px) {
    .faq-menu-bg {
        transform: translate(25rem, -2.1rem);
    }
}

@media screen and (min-width: 1370px) {
    .faq-menu-bg {
        transform: translate(30rem, -2.1rem);
    }
}

@media (min-width: 768px) {
    .faq-menu {
        display: block;
        margin: 0 auto;
        text-align: center;
    }

    .faq-menu li {
        display: inline-block;
        vertical-align: middle;
        border: 5px solid var(--vyv-blanc);
        background-color: var(--vyv-fond-gris);
        font-weight: 500;
        font-size: 1.25rem;
        line-height: 110%;
        color: #82358b;
        text-align: center;
        transition: all 0.2s ease-in-out;
    }

    .faq-menu li:focus,
    .faq-menu li:hover {
        background-color: var(--vyv-bleu-fonce);
        color: var(--vyv-blanc);
    }

    .faq-menu li:focus a,
    .faq-menu li:hover a {
        color: var(--vyv-blanc);
    }

    .faq-menu a {
        display: inline-block;
        padding: 0.2em 1em;
        color: #82358b;
        transition: all 0.2s ease-in-out;
    }
}

.faq-accordion {
    overflow: hidden;
}

.faq-accordion__title {
    margin-top: -2px;
    border-top: 2px solid #ebeaea;
    background-color: var(--vyv-blanc);
}

.faq-accordion__title:first-child {
    border: none;
}

.faq-accordion__header {
    width: 100%;
    padding: 0.6em 1rem;
    font-weight: 500;
    text-align: left;
    transition: all 0.2s ease-in-out;
}

@media (min-width: 576px) {
    .faq-accordion__header {
        padding: 1.6em 2rem 1em;
    }
}

.faq-accordion__panel {
    padding: 0 1rem;
    background-color: var(--vyv-fond-gris);
}

@media (min-width: 576px) {
    .faq-accordion__panel {
        padding-right: 2rem;
        padding-left: 2rem;
    }
}

.faq-accordion__panel:not([data-hidden="true"])+.js-expandmore .faq-expandmore__button {
    border: none;
}

.glossaire-menu {
    position: relative;
    display: block;
    max-width: 860px;
    margin: 0 auto;
    text-align: center;
}

.glossaire-menu-nav {
    position: relative;
    z-index: 100;
}

@media (max-width: 767.98px) {
    .glossaire-menu-nav+.results-grid {
        margin-top: -20px;
    }
}

@media (min-width: 992px) {
    .glossaire-menu-nav {
        padding-bottom: 2em;
    }
}

@media (min-width: 1200px) {
    .glossaire-menu-nav {
        padding-bottom: 2.35em;
    }
}

.glossaire-menu li {
    display: inline-block;
    margin: 0 0.5em;
}

.glossaire-menu li:first-child a {
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
    font-weight: 400;
    font-size: 1rem;
    line-height: 80%;
    color: #472783;
}

.glossaire-menu li:first-child a.active,
.glossaire-menu li:first-child a:focus,
.glossaire-menu li:first-child a:hover {
    color: #472783;
    text-decoration: underline;
}

@media (min-width: 992px) {
    .glossaire-menu li:first-child {
        margin-left: -50px;
    }

    .glossaire-menu li:first-child a {
        font-size: 1.5rem;
    }
}

@media (min-width: 1200px) {
    .glossaire-menu li:first-child {
        margin-left: 0;
        padding-right: 1.2rem;
        position: absolute;
        left: -96px;
        top: 18px;
        z-index: 5;
    }
}

.glossaire-menu li a {
    position: relative;
    display: inline-block;
    width: 40px;
    height: 40px;
    margin: 0 0 0.25em;
    padding: 0.15em 0 0;
    font-weight: 500;
    font-size: 1.2em;
    color: var(--vyv-blanc);
    transition: all 0.3s ease-in-out;
}

.apple .glossaire-menu li a,
.ios .glossaire-menu li a {
    padding-top: 0.275em;
}

.glossaire-menu li a .icon {
    display: block;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: -1;
    transform: translate(-50%, -50%);
    fill: #472783;
    opacity: 0.5;
    transition: all 0.3s ease-in-out;
}

.glossaire-menu li a.active,
.glossaire-menu li a:focus,
.glossaire-menu li a:hover {
    color: var(--vyv-blanc);
}

.glossaire-menu li a.active .icon,
.glossaire-menu li a:focus .icon,
.glossaire-menu li a:hover .icon {
    fill: #007c9e;
    opacity: 1;
}

@media (min-width: 992px) {
    .glossaire-menu li a {
        font-size: 1.9em;
    }

    .glossaire-menu li a,
    .glossaire-menu li a .icon {
        width: 60px;
        height: 60px;
    }
}

.glossaire-menu li.active a {
    color: var(--vyv-blanc);
}

.glossaire-menu li.active a .icon {
    fill: #007c9e;
    opacity: 1;
}

@media (min-width: 1200px) {
    .glossaire-menu li {
        margin-right: 0.7em;
        margin-left: 0.7em;
    }
}

.glossaire-entry {
    position: relative;
    z-index: 100;
    max-height: 0;
    height: auto;
    overflow: hidden;
    opacity: 0;
    padding: 0 20px;
    transition: all 0.5s ease-in-out;
}

.glossaire-entry.active {
    max-height: 900px;
    margin: 1rem 0;
    overflow: visible;
    opacity: 1;
}

@media (min-width: 992px) {
    .glossaire-entry.active {
        min-height: 472px;
        margin-top: 2.5rem;
        margin-bottom: 2.5rem;
        padding-bottom: 2.5em;
    }

    .glossaire-entry.active:first-child {
        margin-top: 1.45em !important;
    }
}

@media (min-width: 1200px) {
    .glossaire-entry.active {
        padding-top: 1.8em;
        padding-bottom: 2.5em;
    }
}

.glossaire-entry.active .glossaire-entry-inner {
    max-height: 900px;
    padding-bottom: 1rem;
    opacity: 1;
}

.glossaire-entry-inner {
    max-height: 0;
    height: auto;
    overflow: hidden;
    opacity: 0;
    transition: all 0.5s ease-in-out;
}

.glossaire-entry:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    background-color: var(--vyv-fond-gris);
}

@media (min-width: 992px) {
    .glossaire-entry:before {
        width: 100vw;
        left: inherit;
        right: calc(50% + 10px);
    }
}

@media (min-width: 1200px) {
    .glossaire-entry {
        padding-right: 100px;
        padding-left: 100px;
    }
}

.glossaire-entry-title {
    margin: 0;
    font-weight: 400;
    font-size: 70px;
    line-height: 105%;
    text-align: center;
}

@media (min-width: 768px) {
    .glossaire-entry-title {
        font-size: 90px;
    }
}

@media (min-width: 992px) {
    .glossaire-entry-title {
        font-size: 120px;
        text-align: left;
    }
}

@media (max-width: 991.98px) {
    .glossaire-entry-menu {
        margin-bottom: 1em;
    }
}

@media (min-width: 992px) {
    .glossaire-entry-menu {
        width: 38.5%;
    }
}

@media (min-width: 1200px) {
    .glossaire-entry-menu {
        width: 36%;
    }
}

.glossaire-entry-list a {
    display: inline-block;
    padding: 0.75rem 0;
    font-size: 1rem;
    line-height: 110%;
    transition: all 0.2s ease-in-out;
}

.glossaire-entry-list a.active {
    font-weight: 700;
    font-size: 1.2rem;
}

@media (max-width: 991.98px) {
    .glossaire-entry-list {
        text-align: center;
    }

    .glossaire-entry-list li {
        display: inline-block;
    }

    .glossaire-entry-list a {
        padding: 0.25rem 0.75rem;
    }
}

.glossaire-entry-def {
    max-height: 0;
    height: auto;
    overflow: hidden;
    padding: 0 10px;
    background-color: var(--vyv-blanc);
    opacity: 0;
    transform: translateY(25%);
    transition: all 0.5s ease-in-out;
}

.glossaire-entry-def.active {
    max-height: 500px;
    padding-top: 1em;
    padding-bottom: 1em;
    opacity: 1;
    transform: translateY(0);
}

@media (min-width: 992px) {
    .glossaire-entry-def {
        padding-right: 2rem;
        padding-left: 2rem;
        width: 60%;
        position: absolute;
        top: 2.5rem;
        right: 0;
        z-index: 5;
    }

    .glossaire-entry-def.active {
        padding-top: 1.5em;
        padding-bottom: 2em;
    }
}

@media (min-width: 1200px) {
    .glossaire-entry-def {
        width: 56%;
        right: 60px;
    }
}

.glossaire-entry-def-title {
    font-weight: 700;
    font-size: 1.1rem;
}

@media (min-width: 992px) {
    .glossaire-entry-def-title {
        font-size: 1.5rem;
        letter-spacing: 0.01em;
    }
}

.glossaire-entry:nth-child(odd) .glossaire-entry-def-title,
.glossaire-entry:nth-child(odd) .glossaire-entry-list a.active,
.glossaire-entry:nth-child(odd) .glossaire-entry-list a:focus,
.glossaire-entry:nth-child(odd) .glossaire-entry-list a:hover,
.glossaire-entry:nth-child(odd) .glossaire-entry-title {
    color: var(--vyv-violet-fonce);
}

.glossaire-entry:nth-child(2n) .glossaire-entry-def-title,
.glossaire-entry:nth-child(2n) .glossaire-entry-list a.active,
.glossaire-entry:nth-child(2n) .glossaire-entry-list a:focus,
.glossaire-entry:nth-child(2n) .glossaire-entry-list a:hover,
.glossaire-entry:nth-child(2n) .glossaire-entry-title {
    color: #ee7837;
}

.title-error-code {
    margin: 0;
    font-weight: 700;
    font-size: 5rem;
    line-height: 90%;
}

@media (min-width: 576px) {
    .title-error-code {
        font-size: 6rem;
    }
}

@media (min-width: 768px) {
    .title-error-code {
        padding-top: 0.65rem;
        font-size: 7rem;
    }
}

@media (min-width: 992px) {
    .title-error-code {
        font-size: 8rem;
    }
}

@media (min-width: 1200px) {
    .title-error-code {
        font-size: 8.85rem;
    }
}

.title-error-bg {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
}

.title-error-bg svg {
    display: block;
    width: 100%;
    height: 100%;
}

.title-corner-a,
.title-corner-b {
    position: absolute;
    z-index: 5;
}

.title-corner-a {
    width: 130px;
    height: 118px;
    top: 0.9rem;
    left: 10px;
}

@media (min-width: 768px) {
    .title-corner-a {
        top: 2.1rem;
    }
}

@media (min-width: 992px) {
    .title-corner-a {
        top: 2.7rem;
    }
}

@media (min-width: 1200px) {
    .title-corner-a {
        left: 0;
    }
}

@media screen and (min-width: 1330px) {
    .title-corner-a {
        top: calc(2.7rem + 0.2vw);
    }
}

.title-corner-b {
    width: 99px;
    height: 45px;
    bottom: -0.3rem;
    right: 10px;
}

@media (min-width: 1200px) {
    .title-corner-b {
        right: 7rem;
    }
}

@media screen and (min-width: 1330px) {
    .title-corner-b {
        bottom: calc(-0.3rem + 0.3vw);
    }
}