/**
 * ATLAS - Styles Frontend Premium Complet
 * Charte graphique : #73C1DA (Ciel), #7595A2 (Ardoise), #2F2F1F (Sombre)
 */

:root {
    --atlas-sky: #73C1DA;
    --atlas-slate: #7595A2;
    --atlas-dark: #2F2F1F;
    --atlas-white: #ffffff;
    --atlas-bg: #F8FAFB;
    --atlas-shadow: 0 12px 30px rgba(47, 47, 31, 0.08);
    --atlas-radius: 20px;
}

/* --- HERO SLIDER AVEC OPACITÉ COULEUR --- */
.at-v2-hero {
    height: 600px;
    position: relative;
    overflow: hidden;
}

.at-v2-slide {
    position: absolute; width: 100%; height: 100%;
    background-size: cover; background-position: center;
    display: flex; align-items: center; justify-content: center;
    opacity: 0; transition: opacity 1s ease-in-out;
}

.at-v2-slide.active { opacity: 1; z-index: 5; }

/* Overlay Couleur #73C1DA avec opacité */
.at-v2-overlay {
    position: absolute; top: 0; left: 0; width: 100%; height: 100%;
    background-color: rgba(115, 193, 218, 0.75); /* Ta couleur avec 75% d'opacité */
    z-index: 1;
}

.at-v2-hero-content { position: relative; z-index: 10; color: white; text-align: center; }
.at-v2-hero-content h1 { font-size: 56px; font-weight: 900; line-height: 1.1; margin-bottom: 20px; }
.at-v2-hero-content p { font-size: 20px; max-width: 600px; margin: 0 auto; }

/* --- 3 ACTION BOXES --- */
.at-v2-action-wrapper { margin-top: -60px; z-index: 20; position: relative; }
.at-v2-action-cards { display: flex; justify-content: center; gap: 20px; }
.at-v2-card {
    background: white; padding: 25px; border-radius: 20px; display: flex; align-items: center;
    gap: 15px; text-decoration: none; flex: 1; max-width: 350px;
    box-shadow: 0 15px 35px rgba(0,0,0,0.1); transition: 0.3s;
}
.at-v2-card:hover { transform: translateY(-10px); }
.at-v2-card.alt { background: #2F2F1F; color: white; }

/* --- ANNONCES HORIZONTALES --- */
.at-v2-horizontal-ads { padding: 80px 0; background: #fff; }
.at-v2-section-title { text-align: center; margin-bottom: 40px; }
.at-v2-section-title h2 { font-size: 32px; font-weight: 900; color: #2F2F1F; margin-bottom: 10px; }
.title-line { width: 60px; height: 4px; background: #73C1DA; margin: 0 auto; border-radius: 10px; }

/* Conteneur de scroll horizontal */
.at-horizontal-scroll-container {
    padding: 20px 0;
    overflow-x: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
}

/* On force tes cartes existantes à rester sur une ligne */
.at-horizontal-scroll-container .atlas-cards-grid {
    display: inline-flex !important;
    grid-template-columns: none !important;
    gap: 20px;
    padding: 0 50px;
}
.at-horizontal-scroll-container .atlas-card {
    min-width: 320px;
    display: inline-flex;
}

/* --- REVIEWS DÉFILANTES --- */
.at-v2-reviews { background-color: #73C1DA; padding: 80px 0; overflow: hidden; color: white; }
.at-v2-section-title.white h2 { color: white; }

.at-reviews-marquee { width: 100%; overflow: hidden; position: relative; }
.at-reviews-track {
    display: flex;
    gap: 30px;
    width: max-content;
    animation: marquee 30s linear infinite;
}

.at-review-card {
    background: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(5px);
    padding: 20px;
    border-radius: 20px;
    width: 300px;
    display: flex;
    gap: 15px;
    align-items: center;
}
.at-review-avatar img { border-radius: 50%; border: 2px solid white; }

@keyframes marquee {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

@media (max-width: 768px) {
    .at-v2-hero-content h1 { font-size: 32px; }
    .at-v2-action-cards { flex-direction: column; align-items: center; }
    .at-v2-card { width: 90%; }
}