 :root {
            --primary-madagascar: #A52A2A;
            --accent-madagascar: #D63031;
            --accent-red: #D63031;
            --forest: #1B4332;
            --sand: #FDFBF9;
            --glass-bg: rgba(255, 255, 255, 0.9);                       
            --white: #ffffff;           
            --jungle-green: #1B4332;
            --berenty-yellow: #FFB703;
            --antandroy-brown: #603808;
            --sisal-green: #606C38;
            --gold: #D4AF37;
            --soft-white: #F8F9FA;
            --dark-forest: #122620;
            --berenty-gold: #E85D04;
            --laterite: #A52A2A; 
            --ocean: #0077B6;
            --tsingy-grey: #4A4E69;
            --north-red: #C84B31;
            --ocean-blue: #0077B6;
            --tropical-leaf: #2D6A4F;            
            --laterite-bright: #D63031;
            --emerald: #2D6A4F;
            --savannah: #E29578;
            --tsingy-grey: #4A4E69;
            --baobab-orange: #E85D04;
            --river-blue: #2A5A7A;
        }

        body { font-family: 'Poppins', sans-serif; background-color: var(--sand); color: #333; overflow-x: hidden; }
        h1, h2, h3, h4 { font-family: 'Playfair Display', serif; }


 /* ==========================================================================
   SECTION - RIJATOURS NAVBAR
   ========================================================================== */

        /* --- NAVBAR FLOTTANTE (MODERNE) --- */
        .navbar-custom {
            padding: 20px 0;
            transition: all 0.4s ease;
            z-index: 1050;
        }

        .bg-nav-pill {
            background: var(--glass-bg);
            backdrop-filter: blur(10px);
            -webkit-backdrop-filter: blur(10px);
            border-radius: 100px;
            padding: 10px 30px;
            border: 1px solid rgba(255, 255, 255, 0.5);
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
            transition: all 0.4s ease;
        }

        .navbar-scrolled { padding: 10px 0; }
        .navbar-scrolled .bg-nav-pill { width: 95%; background: rgba(255, 255, 255, 0.98); }

        .main-logo { height: 60px; transition: 0.3s; }
        .nav-link { color: #333 !important; font-weight: 600; font-size: 0.9rem; padding: 10px 18px !important; transition: 0.3s; }
        .nav-link:hover { color: var(--primary-madagascar) !important; }

        .btn-book-trip {
            background: linear-gradient(45deg, var(--primary-madagascar), var(--accent-madagascar));
            color: white !important;
            border-radius: 50px;
            padding: 12px 25px;
            font-weight: 700;
            border: none;
            box-shadow: 0 4px 15px rgba(165, 42, 42, 0.3);
            transition: 0.3s;
        }
        .btn-book-trip:hover { transform: translateY(-3px) scale(1.05); box-shadow: 0 8px 25px rgba(165, 42, 42, 0.4); }

/* ==========================================================================
   SECTION - RIJATOURS HOME
   ========================================================================== */

.hero {
    height: 100vh;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    text-align: center;
}

.hero-bg {
    position: absolute;
    inset: 0;  
    background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.2), rgba(0,0,0,0.7)), 
                url('../image/background/background-home.jpeg') center/cover no-repeat fixed;
    z-index: -1;
    animation: zoomEffect 20s infinite alternate;
}

/* Effet de zoom lent et immersif */
@keyframes zoomEffect {
    from {
        transform: scale(1);
    }
    to {
        transform: scale(1.1);
    }
}

/* Titre Principal  */
.hero h1 {
    font-size: clamp(4rem, 15vw, 9rem);
    font-weight: 900;
    text-transform: uppercase;
    line-height: 0.8;
    margin-bottom: 20px;
    font-family: 'Plus Jakarta Sans', sans-serif; 
}

/* Sous-titre ) */
.hero h2 {
    font-size: clamp(1.2rem, 4vw, 2.5rem);
    font-weight: 300;
    font-style: italic;
    opacity: 0.9;
    font-family: 'Playfair Display', serif;
}

        /* --- STATS --- */
        .stats-bar {
            background: white; padding: 40px; border-radius: 30px;
            margin-top: -80px; position: relative; z-index: 5;
            box-shadow: 0 20px 50px rgba(0,0,0,0.1);
        }
        .stat-item h2 { color: var(--primary-madagascar); font-weight: 800; font-size: 2.5rem; margin-bottom: 0; }

        /* --- POPULAR DESTINATIONS --- */
        .pop-dest-card {
            height: 450px; border-radius: 30px; overflow: hidden; position: relative;
            border: none; box-shadow: 0 15px 35px rgba(0,0,0,0.1); transition: 0.5s;
        }
        .pop-dest-card img { height: 100%; width: 100%; object-fit: cover; transition: 0.6s; }
        .pop-dest-overlay {
            position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, transparent 70%);
            display: flex; flex-direction: column; justify-content: flex-end; padding: 30px; color: white;
        }
        .pop-dest-card:hover { transform: translateY(-10px); }
        .pop-dest-card:hover img { transform: scale(1.1); }
        .dest-tag { background: var(--primary-madagascar); color: white; padding: 5px 15px; border-radius: 50px; font-size: 0.75rem; font-weight: 700; margin-bottom: 10px; width: fit-content; }
        .btn-dest-link { 
            color: white; text-decoration: none; font-size: 0.9rem; font-weight: 600; 
            margin-top: 15px; border-bottom: 2px solid var(--primary-madagascar); width: fit-content;
            padding-bottom: 3px; transition: 0.3s;
        }
        .btn-dest-link:hover { color: var(--primary-madagascar); border-color: white; }

      /* --- CARDS & SLIDERS --- */
        .dest-card { border: none; border-radius: 35px; overflow: hidden; height: 500px; position: relative; transition: 0.5s; }
        .carousel, .carousel-inner, .carousel-item { height: 100%; }
        .dest-overlay { 
            position: absolute; inset: 0; 
            background: linear-gradient(to top, rgba(0,0,0,0.9) 10%, transparent 60%);
            display: flex; flex-direction: column; justify-content: flex-end; padding: 40px; color: white; z-index: 2;
        }
        .dest-card:hover { transform: translateY(-10px); }

        /* --- GUIDE STRIP --- */
        .guide-strip {
            background: white; border-radius: 40px; padding: 40px;
            box-shadow: 0 15px 40px rgba(0,0,0,0.03); border: 1px solid rgba(0,0,0,0.05);
            margin-bottom: 80px;
        }

        /* --- WHATSAPP --- */
        .whatsapp-float {
            position: fixed; bottom: 35px; right: 35px; background: #25d366;
            color: white; width: 65px; height: 65px; border-radius: 50%;
            display: flex; align-items: center; justify-content: center;
            font-size: 32px; box-shadow: 0 10px 25px rgba(37, 211, 102, 0.4);
            z-index: 1000; transition: 0.4s;
        }
        .whatsapp-float:hover { transform: scale(1.1) rotate(10deg); color: white; }

        .btn-book-trip {
            background: linear-gradient(45deg, var(--primary-madagascar), var(--accent-madagascar));
            color: white !important; border-radius: 100px; padding: 18px 45px;
            font-weight: 700; border: none; transition: 0.4s;
        }


 /* ==========================================================================
   SECTION - RIJATOURS ABOUT
   ========================================================================== */

  /* --- HERO --- */


 .hero-rija {
    height: 85vh;
    background: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.3)), 
                url('../image/about/backgroung-about.jpeg') center/cover no-repeat;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    text-align: center;   
    clip-path: ellipse(150% 100% at 50% 0%);
}

.hero-rija h1 {
    font-size: clamp(4rem, 15vw, 9rem);
    font-weight: 900;
    line-height: 0.8;
    margin-bottom: 20px;
    font-family: 'Plus Jakarta Sans', sans-serif;
}

/* Badge flottant style "Luxury Guide" */
.badge-hero {
    background: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px); 
    padding: 10px 30px;
    border-radius: 50px;
    text-transform: uppercase;
    letter-spacing: 5px;
    font-weight: 700;
    font-size: 0.9rem;
    display: inline-block; 
    margin-bottom: 20px;
    border: 1px solid rgba(255, 255, 255, 0.3);
}

        /* --- SECTION HISTOIRE --- */
        .story-container { max-width: 1000px; margin: -100px auto 0; background: var(--white); border-radius: 50px; padding: 80px; box-shadow: 0 50px 100px rgba(0,0,0,0.05); position: relative; z-index: 5; }
        
        .rija-portrait {
            width: 100%; border-radius: 30px; 
            box-shadow: 0 30px 60px rgba(0,0,0,0.1);
            transform: rotate(-2deg); transition: 0.5s;
        }
        .rija-portrait:hover { transform: rotate(0deg) scale(1.02); }

        .experience-float {
            position: absolute; top: 40px; right: 40px; background: var(--accent-red);
            color: white; padding: 30px; border-radius: 25px; text-align: center;
            box-shadow: 0 20px 40px rgba(214, 48, 49, 0.3);
        }

        .quote-box {
            background: #f8f9fa; border-radius: 30px; padding: 50px; 
            margin: 60px 0; border-left: 10px solid var(--primary-madagascar);
            font-size: 1.8rem; font-style: italic; color: var(--forest);
        }

        /* --- SKILLS & ACCREDITATION --- */
        .skill-pill {
            background: var(--sand); border: 1px solid #eee; padding: 15px 30px;
            border-radius: 100px; font-weight: 800; display: inline-flex; align-items: center;
            margin: 10px; transition: 0.3s;
        }
        .skill-pill:hover { background: var(--forest); color: white; transform: translateY(-5px); }

        .accreditation-card {
            background: var(--forest); color: white; border-radius: 40px; padding: 60px;
            margin-top: 80px; position: relative; overflow: hidden;
        }
        .license-img-wrapper {
            position: relative; cursor: pointer; border-radius: 25px; overflow: hidden;
            transition: 0.4s; border: 5px solid rgba(255,255,255,0.1);
        }
        .license-img-wrapper:hover { transform: scale(1.05); border-color: var(--accent-red); }
        .zoom-hint {
            position: absolute; bottom: 20px; right: 20px; background: var(--accent-red);
            width: 50px; height: 50px; border-radius: 50%; display: flex; align-items: center; justify-content: center;
            font-size: 1.2rem; box-shadow: 0 10px 20px rgba(0,0,0,0.2);
        }

        /* --- TESTIMONIALS --- */
        .testimonial-grid { background: #fff; padding: 100px 0; border-radius: 80px 80px 0 0; margin-top: 80px; }


/* ==========================================================================
   SECTION - RIJATOURS DESTINATIONS
   ========================================================================== */

/* --- PAGE HEADER --- */
        .page-header {
            background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('../image/background/destination.jpeg') center/cover no-repeat fixed;
            height: 60vh; display: flex; align-items: center; justify-content: center; color: white; text-align: center;
        }
        .page-header h1 { font-size: clamp(3rem, 8vw, 6rem); font-weight: 900; text-transform: uppercase; }

        /* --- TOUR CARDS LUXE --- */
        .tour-card {
            background: white; border-radius: 30px; overflow: hidden;
            box-shadow: 0 10px 40px rgba(0,0,0,0.05); transition: 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
            border: 1px solid rgba(0,0,0,0.05); height: 100%; display: flex; flex-direction: column;
        }
        .tour-card:hover { transform: translateY(-15px); box-shadow: 0 30px 60px rgba(0,0,0,0.12); }
        
        .img-wrapper { position: relative; height: 280px; overflow: hidden; }
        .tour-img { width: 100%; height: 100%; object-fit: cover; transition: 0.8s; }
        .tour-card:hover .tour-img { transform: scale(1.15); }
        
        /* Badges Overlays */
        .badge-region {
            position: absolute; top: 20px; left: 20px; padding: 8px 18px;
            border-radius: 50px; font-size: 0.7rem; font-weight: 800;
            text-transform: uppercase; color: white; z-index: 2; letter-spacing: 1px;
        }
        .tour-duration {
            position: absolute; bottom: 20px; right: 20px; background: rgba(0,0,0,0.7);
            backdrop-filter: blur(5px); color: white; padding: 5px 15px;
            border-radius: 100px; font-size: 0.8rem; font-weight: 600;
        }

        /* Color Themes */
        .bg-west { background: var(--forest); }
        .bg-south { background: var(--laterite); }
        .bg-north { background: var(--north-red); }
        .bg-east { background: var(--ocean); }
        .bg-stone { background: var(--tsingy-grey); }
        .bg-gold { background: var(--berenty-gold); }

        .card-body { padding: 30px; flex-grow: 1; display: flex; flex-direction: column; }
        .tour-title { font-size: 1.6rem; font-weight: 800; margin-bottom: 12px; line-height: 1.2; }
        
        .tour-features { display: flex; gap: 15px; margin-bottom: 20px; color: #777; font-size: 0.85rem; }
        .tour-features i { color: var(--laterite); }

        .btn-explore {
            background: #f8f9fa; color: #222; border: none; border-radius: 100px;
            padding: 15px; font-weight: 700; transition: 0.3s; margin-top: auto;
            text-transform: uppercase; font-size: 0.8rem; letter-spacing: 1px;
        }
        .tour-card:hover .btn-explore { background: var(--laterite); color: white; }




 /* ==========================================================================
   SECTION - RIJATOURS NORD
   ========================================================================== */


         /* --- HERO --- */
        .hero-north {
            height: 75vh;
            background: linear-gradient(rgba(0,0,0,0.3), rgba(0,0,0,0.5)), 
                        url('../image/north/background.jpeg') center/cover no-repeat fixed;
            display: flex; align-items: center; justify-content: center; color: white; text-align: center;
        }

        /* --- TIMELINE DESIGN (STYLE TSINGY) --- */
        .itinerary-container { position: relative; padding: 20px 0; }
        .day-box { position: relative; padding-left: 60px; margin-bottom: 40px; }
        .day-box::before {
            content: ''; position: absolute; left: 20px; top: 40px;
            height: calc(100% + 20px); width: 2px; background: #e0e0e0;
        }
        .day-box:last-child::before { display: none; }
        
        .day-number {
            position: absolute; left: 0; top: 0;
            background: var(--north-red); color: white;
            width: 42px; height: 42px; border-radius: 12px;
            display: flex; align-items: center; justify-content: center;
            font-weight: bold; z-index: 2; transform: rotate(-5deg);
        }

        .day-content {
            background: white; padding: 25px; border-radius: 20px;
            box-shadow: 0 5px 20px rgba(0,0,0,0.02); border: 1px solid #f0f0f0;
        }

        /* --- SIDEBAR --- */
        .sidebar-sticky { position: sticky; top: 110px; }
        .booking-card {
            background: var(--jungle-green); color: white;
            border-radius: 30px; padding: 40px;
        }
        .inclusion-badge {
            background: rgba(255,255,255,0.1); border-radius: 10px;
            padding: 8px 12px; margin-bottom: 8px; font-size: 0.85rem;
            display: flex; align-items: center;
        }


  /* ==========================================================================
   SECTION - RIJATOURS SUD
   ========================================================================== */


          /* --- HERO --- */
        .hero-south {
            height: 75vh;
            background: linear-gradient(rgba(0,0,0,0.3), rgba(0,0,0,0.5)), 
                        url('../image/south/background.jpeg') center/cover no-repeat fixed;
            display: flex; align-items: center; justify-content: center; color: white; text-align: center;
        }

        /* --- DESIGN ITINERARY (COMME TSINGY) --- */
        .itinerary-container { position: relative; padding: 20px 0; }
        .day-box { position: relative; padding-left: 60px; margin-bottom: 40px; }
        .day-box::before {
            content: ''; position: absolute; left: 20px; top: 40px;
            height: calc(100% + 20px); width: 2px; background: #e9ecef;
        }
        .day-box:last-child::before { display: none; }
        
        .day-number {
            position: absolute; left: 0; top: 0;
            background: var(--savannah); color: white;
            width: 42px; height: 42px; border-radius: 12px;
            display: flex; align-items: center; justify-content: center;
            font-weight: bold; z-index: 2; transform: rotate(-5deg);
        }

        .day-content {
            background: white; padding: 25px; border-radius: 20px;
            box-shadow: 0 5px 20px rgba(0,0,0,0.02); border: 1px solid #f0f0f0;
        }

        /* --- SIDEBAR --- */
        .sidebar-sticky { position: sticky; top: 110px; }
        .booking-card {
            background: var(--forest); color: white;
            border-radius: 30px; padding: 40px;
        }



         /* ==========================================================================
   SECTION - RIJATOURS TSINGY-TSIRIBIHINA
   ========================================================================== */

         /* --- HERO --- */
        .hero-circuit {
            height: 80vh;
            background: linear-gradient(rgba(0,0,0,0.3), rgba(0,0,0,0.5)), 
                        url('../image/card-slider/tsingy.jpeg') center/cover no-repeat fixed;
            display: flex; align-items: center; justify-content: center; color: white; text-align: center;
        }

        /* --- ITINERARY TIMELINE --- */
        .itinerary-container { position: relative; padding: 20px 0; }
        .day-box {
            position: relative; padding-left: 60px; margin-bottom: 40px;
            transition: 0.3s;
        }
        .day-box::before {
            content: ''; position: absolute; left: 20px; top: 40px;
            height: calc(100% + 20px); width: 2px; background: #e0e0e0;
        }
        .day-box:last-child::before { display: none; }
        
        .day-number {
            position: absolute; left: 0; top: 0;
            background: var(--laterite); color: white;
            width: 42px; height: 42px; border-radius: 12px;
            display: flex; align-items: center; justify-content: center;
            font-weight: bold; z-index: 2; transform: rotate(-5deg);
        }

        .day-content {
            background: white; padding: 25px; border-radius: 20px;
            box-shadow: 0 5px 20px rgba(0,0,0,0.02); border: 1px solid #f0f0f0;
        }

        /* --- SIDEBAR --- */
        .sidebar-sticky { position: sticky; top: 110px; }
        .booking-card {
            background: var(--forest); color: white;
            border-radius: 30px; padding: 40px;
            background-image: url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm-43-7c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm63 31c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM34 90c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm56-76c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 35c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4z' fill='%23ffffff' fill-opacity='0.05' fill-rule='evenodd'/%3E%3C/svg%3E");
        }

        .inclusion-badge {
            background: rgba(255,255,255,0.1); border-radius: 10px;
            padding: 8px 12px; margin-bottom: 8px; font-size: 0.85rem;
            display: flex; align-items: center;
        }


         /* ==========================================================================
   SECTION - RIJATOURS TSINGY
   ========================================================================== */

  /* --- HERO --- */
        .hero-tsingy {
            height: 75vh;
            background: linear-gradient(rgba(0,0,0,0.4), rgba(0,0,0,0.5)), 
                        url('../image/tsingy-bemaraha/background.jpeg') center/cover no-repeat fixed;
            display: flex; align-items: center; justify-content: center; color: white; text-align: center;
        }

        /* --- TIMELINE DESIGN --- */
        .itinerary-container { position: relative; padding: 20px 0; }
        .day-box { position: relative; padding-left: 60px; margin-bottom: 40px; }
        .day-box::before {
            content: ''; position: absolute; left: 20px; top: 40px;
            height: calc(100% + 20px); width: 2px; background: #e0e0e0;
        }
        .day-box:last-child::before { display: none; }
        
        .day-number {
            position: absolute; left: 0; top: 0;
            background: var(--baobab-orange); color: white;
            width: 42px; height: 42px; border-radius: 12px;
            display: flex; align-items: center; justify-content: center;
            font-weight: bold; z-index: 2; transform: rotate(-5deg);
        }

        .day-content {
            background: white; padding: 25px; border-radius: 20px;
            box-shadow: 0 5px 20px rgba(0,0,0,0.02); border: 1px solid #f0f0f0;
        }

        /* --- SIDEBAR --- */
        .sidebar-sticky { position: sticky; top: 110px; }
        .booking-card {
            background: var(--tsingy-grey); color: white;
            border-radius: 30px; padding: 40px;
            background-image: url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm-43-7c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm63 31c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM34 90c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm56-76c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 35c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4z' fill='%23ffffff' fill-opacity='0.05' fill-rule='evenodd'/%3E%3C/svg%3E");
        }
        .inclusion-badge {
            background: rgba(255,255,255,0.1); border-radius: 10px;
            padding: 8px 12px; margin-bottom: 8px; font-size: 0.85rem;
            display: flex; align-items: center;
        }


    /* ==========================================================================
   SECTION - RIJATOURS TSIRIBIHINA
   ========================================================================== */

  /* --- HERO --- */
        .hero-river {
            height: 75vh;
            background: linear-gradient(rgba(0,0,0,0.3), rgba(0,0,0,0.5)), 
                        url('../image/tsiribihina/background.png') center/cover no-repeat fixed;
            display: flex; align-items: center; justify-content: center; color: white; text-align: center;
        }

        /* --- TIMELINE DESIGN --- */
        .itinerary-container { position: relative; padding: 20px 0; }
        .day-box { position: relative; padding-left: 60px; margin-bottom: 40px; }
        .day-box::before {
            content: ''; position: absolute; left: 20px; top: 40px;
            height: calc(100% + 20px); width: 2px; background: #e0e0e0;
        }
        .day-box:last-child::before { display: none; }
        
        .day-number {
            position: absolute; left: 0; top: 0;
            background: var(--river-blue); color: white;
            width: 42px; height: 42px; border-radius: 12px;
            display: flex; align-items: center; justify-content: center;
            font-weight: bold; z-index: 2; transform: rotate(-5deg);
        }

        .day-content {
            background: white; padding: 25px; border-radius: 20px;
            box-shadow: 0 5px 20px rgba(0,0,0,0.02); border: 1px solid #f0f0f0;
        }

        /* --- SIDEBAR --- */
        .sidebar-sticky { position: sticky; top: 110px; }
        .booking-card {
            background: var(--forest); color: white;
            border-radius: 30px; padding: 40px;
            background-image: url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm-43-7c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm63 31c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM34 90c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm56-76c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 35c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4z' fill='%23ffffff' fill-opacity='0.05' fill-rule='evenodd'/%3E%3C/svg%3E");
        }
        .inclusion-badge {
            background: rgba(255,255,255,0.1); border-radius: 10px;
            padding: 8px 12px; margin-bottom: 8px; font-size: 0.85rem;
            display: flex; align-items: center;
        }


 /* ==========================================================================
   SECTION - RIJATOURS EAST
   ========================================================================== */


 /* --- HERO --- */
        .hero-east {
            height: 75vh;
            background: linear-gradient(rgba(0,0,0,0.3), rgba(0,0,0,0.5)), 
                        url('../image/east/background.jpeg') center/cover no-repeat fixed;
            display: flex; align-items: center; justify-content: center; color: white; text-align: center;
        }

        /* --- DESIGN ITINERARY (STYLE PREMIUM TSINGY) --- */
        .itinerary-container { position: relative; padding: 20px 0; }
        .day-box { position: relative; padding-left: 60px; margin-bottom: 40px; }
        .day-box::before {
            content: ''; position: absolute; left: 20px; top: 40px;
            height: calc(100% + 20px); width: 2px; background: #e9ecef;
        }
        .day-box:last-child::before { display: none; }
        
        .day-number {
            position: absolute; left: 0; top: 0;
            background: var(--tropical-leaf); color: white;
            width: 42px; height: 42px; border-radius: 12px;
            display: flex; align-items: center; justify-content: center;
            font-weight: bold; z-index: 2; transform: rotate(-5deg);
        }

        .day-content {
            background: white; padding: 25px; border-radius: 20px;
            box-shadow: 0 5px 20px rgba(0,0,0,0.02); border: 1px solid #f0f0f0;
        }

        /* --- SIDEBAR --- */
        .sidebar-sticky { position: sticky; top: 110px; }
        .booking-card {
            background: var(--jungle-green); color: white;
            border-radius: 30px; padding: 40px;
        }





 /* ==========================================================================
   SECTION - RIJATOURS BERENTY
   ========================================================================== */

    /* --- HERO --- */
        .hero-berenty {
            height: 70vh;
            background: linear-gradient(rgba(0,0,0,0.3), rgba(0,0,0,0.5)), 
                        url('/image/berenty/background.png') center/cover no-repeat fixed;
            display: flex; align-items: center; justify-content: center; color: white; text-align: center;
        }

        /* --- TIMELINE DESIGN --- */
        .itinerary-container { position: relative; padding: 20px 0; }
        .day-box { position: relative; padding-left: 60px; margin-bottom: 40px; }
        .day-box::before {
            content: ''; position: absolute; left: 20px; top: 40px;
            height: calc(100% + 20px); width: 2px; background: #e0e0e0;
        }
        .day-box:last-child::before { display: none; }
        
        .day-number {
            position: absolute; left: 0; top: 0;
            background: var(--berenty-yellow); color: var(--antandroy-brown);
            width: 42px; height: 42px; border-radius: 12px;
            display: flex; align-items: center; justify-content: center;
            font-weight: bold; z-index: 2; transform: rotate(-5deg);
        }

        .day-content {
            background: white; padding: 25px; border-radius: 20px;
            box-shadow: 0 5px 20px rgba(0,0,0,0.02); border: 1px solid #f0f0f0;
        }

        /* --- SIDEBAR --- */
        .sidebar-sticky { position: sticky; top: 110px; }
        .booking-card {
            background: var(--antandroy-brown); color: white;
            border-radius: 30px; padding: 40px;
            background-image: url("data:image/svg+xml,%3Csvg width='100' height='100' viewBox='0 0 100 100' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M11 18c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm48 25c3.866 0 7-3.134 7-7s-3.134-7-7-7-7 3.134-7 7 3.134 7 7 7zm-43-7c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm63 31c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM34 90c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zm56-76c1.657 0 3-1.343 3-3s-1.343-3-3-3-3 1.343-3 3 1.343 3 3 3zM12 86c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm28-65c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm23-11c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zm-6 60c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm29 22c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5zM32 35c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4z' fill='%23ffffff' fill-opacity='0.05' fill-rule='evenodd'/%3E%3C/svg%3E");
        }
        .inclusion-badge {
            background: rgba(255,255,255,0.1); border-radius: 10px;
            padding: 8px 12px; margin-bottom: 8px; font-size: 0.85rem;
            display: flex; align-items: center;
        }




  /* ==========================================================================
   SECTION - RIJATOURS GUEST BOOK
   ========================================================================== */

   /* --- HEADER --- */
         
        .header-section {
            background: linear-gradient(rgba(0,0,0,0.6), rgba(0,0,0,0.6)), url('../image/background/guest-book.jpg') center/cover;
            padding: 100px 0;
            color: white;
            text-align: center;
        }

        .testimonial-card {
            background: white;
            border-radius: 20px;
            padding: 30px;
            margin-bottom: 30px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.05);
            border-left: 5px solid var(--laterite);
            transition: 0.3s;
        }
        .testimonial-card:hover { transform: translateY(-5px); box-shadow: 0 15px 40px rgba(0,0,0,0.1); }
        
        .client-meta { font-size: 0.85rem; color: var(--laterite); font-weight: 600; }
        .date-meta { font-size: 0.8rem; color: #999; }
        
        .btn-laterite {
            background-color: var(--laterite);
            color: white !important;
            border-radius: 50px;
            padding: 12px 30px;
            border: none;
            font-weight: 600;
        }

        .floating-add {
            position: fixed;
            bottom: 30px;
            left: 30px;
            z-index: 1000;

        }




     /* ==========================================================================
   SECTION - RIJATOURS GALERY
   ========================================================================== */



         /* --- HEADER IMPACTANT --- */
        .gallery-header {
            position: relative; height: 75vh; min-height: 550px;
            background: #000; overflow: hidden; display: flex; align-items: center;
        }
        .header-image-side {
            position: absolute; right: 0; top: 0; width: 60%; height: 100%;
            background: linear-gradient(to right, #000 0%, rgba(0,0,0,0) 25%), 
                        url('../images/gallery-hero.jpg') center/cover no-repeat;
            z-index: 1;
        }
        .header-content-side { position: relative; z-index: 2; padding: 0 5%; }
        .gallery-header h1 { font-size: clamp(3rem, 8vw, 6rem); line-height: 0.9; color: #fff; margin-bottom: 20px; }
        .gallery-header h1 span { display: block; color: var(--laterite); font-style: italic; }
        .gallery-badge { color: var(--gold); text-transform: uppercase; letter-spacing: 5px; font-weight: 700; font-size: 0.8rem; margin-bottom: 15px; display: block; }

        /* --- STORYTELLING SECTIONS --- */
        .story-section { padding: 120px 0; position: relative; overflow: hidden; }
        
        .floating-text {
            position: absolute; font-size: 15vw; font-weight: 900;
            color: rgba(165, 42, 42, 0.04); white-space: nowrap;
            z-index: -1; pointer-events: none; top: 50%; transform: translateY(-50%);
        }

        /* --- PHOTO STACK (COMPOSITION) --- */
        .photo-stack { position: relative; height: 550px; width: 100%; }
        .stack-img { 
            position: absolute; border-radius: 25px; 
            box-shadow: 0 30px 60px rgba(0,0,0,0.15); 
            object-fit: cover; transition: 0.5s ease;
        }
        .img-main { width: 75%; height: 450px; left: 0; top: 0; z-index: 2; }
        .img-sub { width: 50%; height: 320px; right: 0; top: 180px; z-index: 3; border: 12px solid var(--sand); }
        .stack-img:hover { transform: scale(1.03) translateY(-10px); z-index: 10 !important; }

        /* --- STAT CARD MODIFIÉE --- */
        .stat-card {
            background: var(--laterite); 
            color: white; 
            padding: 40px;
            border-radius: 30px; 
            margin-top: 40px; /* J'ai supprimé le décalage négatif pour plus d'espace */
            position: relative;
            z-index: 5; 
            box-shadow: 0 20px 40px rgba(165, 42, 42, 0.25);
        }
        .stat-number { font-size: 3.5rem; font-weight: 800; display: block; color: var(--gold); font-family: 'Playfair Display'; }

        /* --- GRID FINALE --- */
        .final-grid img { 
            width: 100%; height: 300px; object-fit: cover; 
            border-radius: 20px; transition: 0.4s; 
        }
        .final-grid img:hover { filter: brightness(1.1); transform: translateY(-5px); }

        /* --- RESPONSIVE --- */
        @media (max-width: 991px) {
            .header-image-side { width: 100%; opacity: 0.5; }
            .header-content-side { text-align: center; width: 100%; }
            .photo-stack { height: auto; display: flex; flex-direction: column; gap: 20px; }
            .stack-img { position: relative !important; width: 100% !important; height: 350px !important; top: 0 !important; right: 0 !important; border: none !important; }
            .stat-card { margin-top: 30px; text-align: center; }
            .story-section { padding: 60px 0; }
        }



     /* ==========================================================================
   SECTION - RIJATOURS DISCOVERY
   ========================================================================== */


          /* --- HEADER --- */
        .discovery-header {
            position: relative; height: 100vh; background: #000; display: flex; align-items: center; overflow: hidden;
        }
        .header-image-side {
            position: absolute; right: 0; top: 0; width: 65%; height: 100%;
            background: linear-gradient(to right, #000 0%, rgba(0,0,0,0) 30%), 
                        url('images/discovery-hero.jpg') center/cover no-repeat;
            z-index: 1;
        }
        .header-content-side { position: relative; z-index: 2; padding-left: 8%; color: white; width: 100%; }
        .discovery-badge { color: var(--gold); text-transform: uppercase; letter-spacing: 7px; font-weight: 800; font-size: 0.8rem; margin-bottom: 25px; display: block; }
        .discovery-header h1 { font-size: clamp(3.5rem, 10vw, 7rem); line-height: 0.85; font-weight: 900; }
        .discovery-header h1 span { color: var(--laterite); font-style: italic; display: block; }
        .hero-divider { width: 80px; height: 6px; background: var(--laterite); margin: 40px 0; }
        .hero-lead { max-width: 550px; font-size: 1.25rem; font-weight: 300; line-height: 1.6; opacity: 0.9; }

        /* --- BENTO GRID --- */
        .discovery-grid { display: grid; grid-template-columns: repeat(12, 1fr); gap: 30px; padding: 100px 0; }
        .bento-card {
            background: white; border-radius: 40px; padding: 40px;
            border: 1px solid rgba(0,0,0,0.04); transition: all 0.5s ease;
            display: flex; flex-direction: column; overflow: hidden;
        }
        .bento-card:hover { transform: translateY(-10px); box-shadow: 0 20px 40px rgba(0,0,0,0.08); }
        
        .span-8 { grid-column: span 8; }
        .span-4 { grid-column: span 4; }
        .span-12 { grid-column: span 12; }

        .icon-box {
            width: 60px; height: 60px; border-radius: 18px;
            display: flex; align-items: center; justify-content: center;
            font-size: 1.5rem; margin-bottom: 25px;
        }
        
        .card-red .icon-box { background: #FFF1F1; color: var(--laterite); }
        .card-green .icon-box { background: #F0FFF4; color: var(--forest); }
        .card-blue .icon-box { background: #F0F7FF; color: #0077B6; }

        .bento-card h3 { font-size: 1.8rem; font-weight: 800; margin-bottom: 15px; }
        .bento-card p { color: #555; line-height: 1.7; text-align: justify; }
        
        .drop-cap::first-letter {
            float: left; font-size: 3.5rem; line-height: 0.8; padding-top: 4px; padding-right: 10px;
            font-family: 'Playfair Display'; font-weight: 900; color: var(--laterite);
        }

        .quote-box {
            font-style: italic; border-left: 4px solid var(--laterite);
            padding: 20px; margin: 20px 0; color: #333; background: #fdf5f5; border-radius: 0 20px 20px 0;
        }

        .img-bento { border-radius: 25px; object-fit: cover; width: 100%; transition: 0.5s; }

        .btn-discovery {
            background: white; color: black; padding: 15px 40px; border-radius: 100px;
            text-transform: uppercase; letter-spacing: 2px; font-weight: 700; border: none; margin-top: 30px;
        }

        .btn-book-trip {
            background: linear-gradient(45deg, var(--primary-madagascar), #D63031);
            color: white !important; border-radius: 50px; padding: 10px 25px; font-weight: 700; border: none;
        }

        @media (max-width: 991px) {
            .discovery-grid { display: flex; flex-direction: column; padding: 60px 20px; }
            .header-image-side { width: 100%; opacity: 0.4; }
        }



         /* ==========================================================================
   SECTION - RIJATOURS CONTACT
   ========================================================================== */


     /* --- HERO SPLIT --- */
        .contact-hero {
    height: 60vh;
    background: linear-gradient(rgba(0,0,0,0.4), rgba(0,0,0,0.4)), 
                url('../image/background/contact.jpg') center/cover no-repeat;
    display: flex; 
    align-items: center; 
    justify-content: center; 
    color: white;   
    clip-path: polygon(0 0, 100% 0, 100% 90%, 0% 100%);   
    margin-bottom: -50px;
}

        /* --- FORM CARD --- */
        .contact-wrapper {
            background: white; border-radius: 40px; overflow: hidden;
            box-shadow: 0 40px 100px rgba(0,0,0,0.08); border: 1px solid rgba(0,0,0,0.05);
        }

        .form-side { padding: 60px; }
        .info-side { 
            background: var(--dark-forest); color: white; padding: 60px;
            background-image: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
        }

        .input-group-custom { position: relative; margin-bottom: 25px; }
        .input-group-custom input, .input-group-custom textarea, .input-group-custom select {
            width: 100%; padding: 15px 20px; border-radius: 15px; border: 2px solid #f1f3f5;
            background: #f8f9fa; transition: 0.3s; font-weight: 500;
        }
        .input-group-custom input:focus, .input-group-custom textarea:focus {
            border-color: var(--primary); background: white; outline: none; box-shadow: 0 10px 20px rgba(165,42,42,0.05);
        }

        .btn-submit {
            background: var(--dark-forest); color: white; border: none;
            padding: 18px; border-radius: 15px; width: 100%; font-weight: 800;
            letter-spacing: 1px; transition: 0.3s;
        }
        .btn-submit:hover { background: var(--primary); transform: translateY(-3px); }

        /* --- INFO ELEMENTS --- */
        .contact-method {
            display: flex; align-items: center; margin-bottom: 30px;
        }
        .method-icon {
            width: 55px; height: 55px; background: rgba(255,255,255,0.1);
            border-radius: 15px; display: flex; align-items: center; justify-content: center;
            font-size: 24px; margin-right: 20px; color: var(--gold);
        }

        .licence-badge {
            border: 1px solid rgba(255,255,255,0.2); border-radius: 20px; padding: 20px;
            background: rgba(255,255,255,0.05); margin-top: 40px;
        }



/* ==========================================================================
   SECTION - RIJATOURS FOOTER
   ========================================================================== */

        /* --- FOOTER --- */
         .zenith-footer {
        background: #030706;
        padding: 120px 0 40px;
        position: relative;
        overflow: hidden;
        color: #fff;
        font-family: 'Poppins', sans-serif;
    }

    /* Orbe de lumière flottant */
    .light-orb {
        position: absolute;
        top: -20%;
        right: -10%;
        width: 600px;
        height: 600px;
        background: radial-gradient(circle, rgba(165, 42, 42, 0.08) 0%, transparent 70%);
        z-index: 1;
        pointer-events: none;
        animation: orbMove 20s infinite alternate;
    }

    @keyframes orbMove {
        from { transform: translate(0, 0); }
        to { transform: translate(-100px, 100px); }
    }

    .zenith-tagline {
        color: #D63031;
        text-transform: uppercase;
        letter-spacing: 4px;
        font-weight: 800;
        font-size: 0.8rem;
        display: block;
        margin-bottom: 15px;
    }

    .zenith-title {
        font-family: 'Playfair Display', serif;
        font-size: clamp(2rem, 4vw, 3.5rem);
        font-weight: 900;
        margin: 0;
    }

    .text-glow {
        text-shadow: 0 0 20px rgba(214, 48, 49, 0.4);
        color: #D63031;
    }

    /* Bouton Zenith */
    .zenith-btn {
        display: inline-flex;
        align-items: center;
        gap: 15px;
        padding: 18px 35px;
        background: #fff;
        color: #000;
        border-radius: 100px;
        text-decoration: none !important;
        font-weight: 700;
        transition: 0.4s;
    }
    .zenith-btn:hover {
        background: #D63031;
        color: #fff;
        transform: translateY(-5px) scale(1.05);
    }

    /* Brand & Social */
    .zenith-logo { height: 60px; filter: brightness(0) invert(1); }
    .zenith-social-grid { display: flex; gap: 20px; margin-top: 30px; }
    .social-item { font-size: 1.5rem; color: #fff; opacity: 0.5; transition: 0.3s; }
    .social-item:hover { opacity: 1; color: #D63031; }

    /* Navigation links */
    .zenith-label { font-size: 0.75rem; text-transform: uppercase; letter-spacing: 2px; color: #D63031; margin-bottom: 25px; font-weight: 800; }
    .zenith-links { list-style: none; padding: 0; }
    .zenith-links li { margin-bottom: 12px; }
    .zenith-links a { color: rgba(255,255,255,0.4); text-decoration: none; transition: 0.3s; }
    .zenith-links a:hover { color: #fff; padding-left: 10px; }

    /* FB Card */
    .zenith-fb-card { background: rgba(255,255,255,0.03); border-radius: 20px; border: 1px solid rgba(255,255,255,0.05); }
    .fb-card-header { padding: 15px 20px; font-size: 0.7rem; font-weight: 800; text-transform: uppercase; border-bottom: 1px solid rgba(255,255,255,0.05); letter-spacing: 1px; }
    .live-dot { height: 8px; width: 8px; background: #25D366; border-radius: 50%; display: inline-block; margin-right: 8px; animation: pulse-green 2s infinite; }

    @keyframes pulse-green { 0% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.7); } 70% { box-shadow: 0 0 0 10px rgba(37, 211, 102, 0); } 100% { box-shadow: 0 0 0 0 rgba(37, 211, 102, 0); } }

    /* Footer Bottom */
    .zenith-footer-bottom { margin-top: 100px; padding-top: 30px; border-top: 1px solid rgba(255,255,255,0.05); }
    .copyright-text { font-size: 0.8rem; color: rgba(255,255,255,0.3); }
    .copyright-text span { color: rgba(255,255,255,0.6); }
    .licence-badge-zenith { font-size: 0.7rem; letter-spacing: 2px; background: rgba(255,255,255,0.05); padding: 5px 15px; border-radius: 50px; display: inline-block; }

    .border-white-10 { border-color: rgba(255,255,255,0.1) !important; }