body { font-family: 'Outfit', sans-serif; background-color: #F8FAFC; color: #1E293B; }
/* h1, h2, h3, .font-serif { font-family: 'Playfair Display', serif; } */
        
         
       
       /* @import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;700&family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400&display=swap'); */
        
        
        
        /* Modal Styles */
        .modal {
            visibility: hidden; opacity: 0; transition: opacity 0.3s ease, visibility 0.3s ease;
            pointer-events: none; z-index: 50;
        }
        .modal.active {
            visibility: visible; opacity: 1; pointer-events: auto;
        }
        .modal-content {
            transform: scale(0.95); transition: transform 0.3s ease;
        }
        .modal.active .modal-content { transform: scale(1); }

        /* Décoration Blob */
        .blob { position: absolute; filter: blur(60px); z-index: 0; opacity: 0.5; }
        
        /* Input Styling */
        .input-soft {
            background-color: #F1F5F9;
            border: 1px solid transparent;
            transition: all 0.2s ease;
        }
        .input-soft:focus {
            background-color: #FFFFFF;
            border-color: #f97316;
            box-shadow: 0 0 0 3px rgba(249, 115, 22, 0.1);
            outline: none;
        }

        /* Animation d'apparition */
        .fade-in-up { animation: fadeInUp 0.8s ease-out forwards; opacity: 0; transform: translateY(20px); }
        @keyframes fadeInUp { to { opacity: 1; transform: translateY(0); } }

        /* Animation du check */
        .check-anim { animation: checkScale 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275) forwards; transform: scale(0); }
        @keyframes checkScale { to { transform: scale(1); } }


        .hide-scrollbar::-webkit-scrollbar { display: none; }
        .hide-scrollbar { -ms-overflow-style: none; scrollbar-width: none; }
