/* ===== CSS Voyageurs - Layout côte à côte Pricing et Alacarte ===== */

/* Layout pour grands écrans (1200px-1919px) */
@media (min-width: 1200px) and (max-width: 1919px) {
    .sections-side-by-side {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 24px;
        max-width: 1600px;
        margin: 0 auto;
        padding: 0 2%;
    }
    
    .pricing-section-container,
    .services-section-container {
        padding: 20px 16px;
        margin: 0;
    }
    
    .pricing-section-container #pricing-grid {
        gap: 20px !important;
        max-width: 900px !important;
        justify-content: center !important;
    }
    
    .pricing-section-container .pricing-card {
        min-width: 280px !important;
        max-width: 320px !important;
    }
    
    .services-section-container .all-services-grid {
        gap: 16px !important;
    }
    
    .services-section-container .service-card {
        min-width: 300px !important;
        max-width: 420px !important;
        font-size: var(--font-size-md) !important;
        padding: 16px !important;
    }
}

/* Layout côte à côte optimisé pour écrans ultra larges (1920px+) */
@media (min-width: 1920px) {
    .sections-side-by-side {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 40px;
        max-width: 1920px;
        margin: 0 auto;
        padding: 0 3%;
    }
    
    .pricing-section-container,
    .services-section-container {
        padding: 28px 24px;
        margin: 0;
    }
    
    .pricing-section-container #pricing-grid {
        gap: 32px !important;
        justify-content: center !important;
    }
    
    .pricing-section-container .pricing-card {
        min-width: 280px !important;
        max-width: 320px !important;
    }
    
    .services-section-container .all-services-grid {
        gap: 24px !important;
    }
    
    .services-section-container .service-card {
        min-width: 350px !important;
        max-width: 420px !important;
        font-size: var(--font-size-lg) !important;
        padding: 20px !important;
    }
}

/* Layout pour écrans moyens (1024px-1199px) */
@media (min-width: 1024px) and (max-width: 1199px) {
    .sections-side-by-side {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 20px;
        max-width: 1200px;
        margin: 0 auto;
        padding: 0 2%;
    }
    
    .pricing-section-container,
    .services-section-container {
        padding: 16px 12px;
        margin: 0;
    }
    
    .pricing-section-container #pricing-grid {
        max-width: 500px !important;
        gap: 16px !important;
        justify-content: center !important;
    }
    
    .pricing-section-container .pricing-card {
        min-width: 280px     !important;
        max-width: 320px !important;
    }
    
    .services-section-container .all-services-grid {
        gap: 12px !important;
    }
    
    .services-section-container .service-card {
        min-width: 300px !important;
        max-width: 340px !important;
        font-size: var(--font-size-sm) !important;
        padding: 12px !important;
    }
}

/* Layout mobile - sections empilées */
@media (max-width: 1023px) {
    .sections-side-by-side {
        display: block;
    }
    
    .pricing-section-container,
    .services-section-container {
        padding: 16px 2%;
        margin: 0;
    }
}

