/*
Theme Name: SETRANS Logistics
Theme URI: #
Author: Ton Nom / Ton Agence
Description: Thème WordPress sur-mesure pour SETRANS SARL (Transports et Logistique).
Version: 1.0
Text Domain: setrans
*/

/* Custom Scrollbar */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #F1F5F9; }
::-webkit-scrollbar-thumb { background: #CBD5E1; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #2A4694; }

body { 
    font-family: 'Montserrat', sans-serif; 
    background-color: #ffffff; 
    color: #334155;
    cursor: none; 
}

/* Custom Cursor */
.cursor-dot { width: 8px; height: 8px; background-color: #2A4694; border-radius: 50%; position: fixed; pointer-events: none; z-index: 9999; transform: translate(-50%, -50%); transition: width 0.2s, height 0.2s, background-color 0.2s; }
.cursor-outline { width: 40px; height: 40px; border: 1px solid rgba(42, 70, 148, 0.3); border-radius: 50%; position: fixed; pointer-events: none; z-index: 9998; transform: translate(-50%, -50%); transition: width 0.2s, height 0.2s, transform 0.1s ease-out; }
body.hovering .cursor-dot { transform: translate(-50%, -50%) scale(3); background-color: rgba(42,70,148,0.1); border: 1px solid #2A4694;}
body.hovering .cursor-outline { opacity: 0; }

/* Preloader */
#preloader { transition: opacity 0.8s ease-out, visibility 0.8s ease-out; }
#preloader.loaded { opacity: 0; visibility: hidden; }

/* Glassmorphism Navbar */
.glass-nav { background: rgba(255, 255, 255, 0.85); backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); border: 1px solid rgba(255, 255, 255, 0.4); box-shadow: 0 4px 30px rgba(0, 0, 0, 0.05); }

/* Animations Fade Up */
.fade-up { opacity: 0; transform: translateY(30px); transition: opacity 1s cubic-bezier(0.16, 1, 0.3, 1), transform 1s cubic-bezier(0.16, 1, 0.3, 1); }
.fade-up.is-visible { opacity: 1; transform: translateY(0); }

/* Gradient Text & Inputs */
.text-gradient { background-clip: text; -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-image: linear-gradient(90deg, #2A4694, #3B82F6); }
.input-light { background: transparent; border: none; border-bottom: 2px solid #E2E8F0; color: #0F172A; padding: 12px 0; transition: border-color 0.3s; }
.input-light:focus { outline: none; border-bottom-color: #2A4694; }
.input-light::placeholder { color: transparent; }

/* Marquee Partenaires */
@keyframes marquee { 0% { transform: translateX(0%); } 100% { transform: translateX(-100%); } }
.animate-marquee-infinite { animation: marquee 25s linear infinite; }
.group:hover .animate-marquee-infinite { animation-play-state: paused; }
.partner-logo { filter: grayscale(100%) opacity(40%); transition: all 0.4s ease; white-space: nowrap; }
.partner-logo:hover { filter: grayscale(0%) opacity(100%); transform: scale(1.05); }