/* style.css - Version Finale Complète */

/* Variables de marque AXA */
:root {
    --axa-blue: #00008F;
    --axa-red: #FF0000;
    --white: #FFFFFF;
    --slate-50: #F8FAFC;
}

/* Motif AXA - Fond Blanc avec motif "AXA" très subtil et plus grand */
.zellig-pattern {
    background-color: var(--white);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150' viewBox='0 0 150 150'%3E%3Ctext x='50%25' y='50%25' dominant-baseline='middle' text-anchor='middle' font-family='Montserrat, sans-serif' font-weight='900' font-size='50' fill='%2300008f' fill-opacity='0.04'%3EAXA%3C/text%3E%3C/svg%3E");
}

/* Bordure décorative Zellig (utilisée pour séparer les sections) */
.zellig-border {
    position: relative;
}

.zellig-border::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 8px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='40' height='8' viewBox='0 0 40 8'%3E%3Cpath d='M0 8l20-8 20 8z' fill='%2300008f' fill-opacity='0.05'/%3E%3C/svg%3E");
    background-repeat: repeat-x;
}

/* Animations de transition de page */
.page-section {
    animation: fadeIn 0.6s ease-out forwards;
}

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* Styles de la barre de navigation au défilement */
.nav-scrolled {
    background-color: rgba(255, 255, 255, 0.95) !important;
    backdrop-filter: blur(10px);
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
    box-shadow: 0 10px 30px -10px rgba(0, 0, 143, 0.1);
}

.nav-scrolled .nav-text {
    color: var(--axa-blue) !important;
}

.nav-scrolled .nav-link {
    color: var(--axa-blue) !important;
}

.nav-scrolled .mobile-toggle {
    color: var(--axa-blue) !important;
}

/* Personnalisation de la barre de défilement */
::-webkit-scrollbar {
    width: 10px;
}

::-webkit-scrollbar-track {
    background: var(--slate-50);
}

::-webkit-scrollbar-thumb {
    background: #CBD5E1;
    border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--axa-blue);
}

/* Utilitaires de texte */
.text-balance {
    text-wrap: balance;
}

/* Effet de survol des boutons */
.btn-hover-effect {
    position: relative;
    overflow: hidden;
}

.btn-hover-effect::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 300%;
    height: 300%;
    background: rgba(255, 255, 255, 0.1);
    transform: translate(-50%, -50%) rotate(45deg) scale(0);
    transition: transform 0.6s ease;
}

.btn-hover-effect:hover::after {
    transform: translate(-50%, -50%) rotate(45deg) scale(1);
}
