.elementor-11258 .elementor-element.elementor-element-9f79438{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}/* Start custom CSS for html, class: .elementor-element-647da16 *//* Breadcrumb */
        .breadcrumb { display: flex !important; align-items: center !important; gap: 12px !important; padding-top: 20px !important; margin-bottom: 40px !important; }
        .breadcrumb a { color: var(--gray) !important; text-decoration: none !important; font-size: 14px !important; transition: color 0.3s !important; display: flex !important; align-items: center !important; }
        .breadcrumb a:hover { color: var(--primary) !important; }
        .breadcrumb svg { width: 16px !important; height: 16px !important; color: var(--gray) !important; }
        .breadcrumb span { color: var(--primary) !important; font-weight: 600 !important; font-size: 14px !important; }

        /* Hero Service */
        .hero-service { padding: 0 0 80px !important; position: relative !important; overflow: hidden !important; }
        .hero-service-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 60px !important; align-items: center !important; }
        .hero-service-content h1 { font-family: 'Playfair Display', serif !important; font-size: clamp(36px, 5vw, 52px) !important; font-weight: 600 !important; color: var(--primary) !important; line-height: 1.1 !important; margin-bottom: 16px !important; }
        .hero-service-content h2 { font-family: 'Playfair Display', serif !important; font-size: 22px !important; font-weight: 500 !important; color: var(--accent) !important; margin-bottom: 24px !important; line-height: 1.4 !important; }
        .hero-service-content p { font-size: 16px !important; color: var(--gray) !important; line-height: 1.8 !important; margin-bottom: 32px !important; }
        .hero-service-cta { display: inline-flex !important; align-items: center !important; gap: 12px !important; background: var(--primary) !important; color: var(--white) !important; padding: 16px 32px !important; border-radius: 50px !important; text-decoration: none !important; font-weight: 600 !important; transition: all 0.3s !important; }
        .hero-service-cta:hover { background: var(--accent) !important; transform: translateY(-3px) !important; box-shadow: 0 15px 30px rgba(224,120,48,0.3) !important; }
        .hero-service-cta svg { width: 20px !important; height: 20px !important; }
        .hero-service-image { position: relative !important; }
        .hero-image-wrapper { width: 100% !important; height: 450px !important; border-radius: 24px !important; overflow: hidden !important; position: relative !important; }
        .hero-image-wrapper img { width: 100% !important; height: 100% !important; object-fit: cover !important; }
        .hero-image-placeholder { width: 100% !important; height: 100% !important; background: linear-gradient(135deg, var(--primary) 0%, var(--primary-light) 100%) !important; display: flex !important; align-items: center !important; justify-content: center !important; }
        .hero-image-placeholder svg { width: 80px !important; height: 80px !important; color: var(--white) !important; opacity: 0.3 !important; }
        .shape-cross { position: absolute !important; top: 20px !important; left: -30px !important; width: 60px !important; height: 60px !important; opacity: 0.6 !important; z-index: 2 !important; }
        .shape-cross::before, .shape-cross::after { content: '' !important; position: absolute !important; background: var(--accent) !important; border-radius: 4px !important; }
        .shape-cross::before { width: 100% !important; height: 8px !important; top: 50% !important; transform: translateY(-50%) !important; }
        .shape-cross::after { width: 8px !important; height: 100% !important; left: 50% !important; transform: translateX(-50%) !important; }

        /* Quote Block */
        .quote-block { background: var(--primary) !important; padding: 60px 0 !important; margin: 0 !important; }
        .quote-content { display: flex !important; align-items: center !important; gap: 32px !important; max-width: 900px !important; margin: 0 auto !important; }
        .quote-icon { width: 64px !important; height: 64px !important; background: var(--accent) !important; border-radius: 16px !important; display: flex !important; align-items: center !important; justify-content: center !important; flex-shrink: 0 !important; }
        .quote-icon svg { width: 32px !important; height: 32px !important; color: var(--white) !important; }
        .quote-text { font-family: 'Playfair Display', serif !important; font-size: 20px !important; color: var(--white) !important; line-height: 1.7 !important; font-style: italic !important; }

        /* Section Header */
        .section-header { text-align: center !important; margin-bottom: 60px !important; }
        .section-badge { display: inline-block !important; color: var(--accent) !important; font-size: 13px !important; font-weight: 600 !important; letter-spacing: 1px !important; text-transform: uppercase !important; margin-bottom: 16px !important; }
        .section-title { font-family: 'Playfair Display', serif !important; font-size: clamp(32px, 4vw, 44px) !important; font-weight: 600 !important; color: var(--primary) !important; margin-bottom: 16px !important; }
        .section-subtitle { color: var(--gray) !important; font-size: 17px !important; max-width: 650px !important; margin: 0 auto !important; line-height: 1.7 !important; }

        /* Services Overview */
        .services-overview { padding: 100px 0 !important; background: var(--white) !important; }
        
        /* Services Cards Grid - 2 rows */
        .expertise-services-grid { display: grid !important; grid-template-columns: repeat(4, 1fr) !important; gap: 20px !important; margin-bottom: 20px !important; }
        .expertise-services-grid.second-row { grid-template-columns: repeat(3, 1fr) !important; max-width: 900px !important; margin: 0 auto !important; }
        
        .expertise-service-card { background: var(--light-gray) !important; border-radius: 20px !important; padding: 32px 24px !important; text-decoration: none !important; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important; display: flex !important; flex-direction: column !important; align-items: center !important; text-align: center !important; position: relative !important; overflow: hidden !important; border: 2px solid transparent !important; }
        .expertise-service-card::before { content: '' !important; position: absolute !important; top: 0 !important; left: 0 !important; right: 0 !important; height: 4px !important; background: var(--accent) !important; transform: scaleX(0) !important; transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important; }
        .expertise-service-card:hover { background: var(--white) !important; border-color: var(--primary-pale) !important; transform: translateY(-8px) !important; box-shadow: 0 20px 40px rgba(30, 58, 95, 0.12) !important; }
        .expertise-service-card:hover::before { transform: scaleX(1) !important; }
        
        .expertise-service-icon { width: 64px !important; height: 64px !important; background: var(--primary) !important; border-radius: 16px !important; display: flex !important; align-items: center !important; justify-content: center !important; margin-bottom: 20px !important; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important; }
        .expertise-service-card:hover .expertise-service-icon { background: var(--accent) !important; transform: scale(1.1) rotate(5deg) !important; }
        .expertise-service-icon svg { width: 28px !important; height: 28px !important; color: var(--white) !important; }
        
        .expertise-service-card h4 { font-family: 'Playfair Display', serif !important; font-size: 17px !important; font-weight: 600 !important; color: var(--primary) !important; margin-bottom: 10px !important; transition: color 0.3s !important; }
        .expertise-service-card:hover h4 { color: var(--accent) !important; }
        .expertise-service-card p { color: var(--gray) !important; font-size: 13px !important; line-height: 1.5 !important; margin: 0 !important; }
        
        .expertise-service-card .card-arrow { position: absolute !important; bottom: 16px !important; right: 16px !important; width: 32px !important; height: 32px !important; background: var(--primary-pale) !important; border-radius: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important; opacity: 0 !important; transform: translateX(-10px) !important; transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1) !important; }
        .expertise-service-card:hover .card-arrow { opacity: 1 !important; transform: translateX(0) !important; }
        .expertise-service-card .card-arrow svg { width: 16px !important; height: 16px !important; color: var(--primary) !important; }

        /* Service Detail Sections */
        .service-detail { padding: 100px 0 !important; }
        .service-detail:nth-child(even) { background: var(--light-gray) !important; }
        .service-detail-grid { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 80px !important; align-items: center !important; }
        .service-detail:nth-child(even) .service-detail-grid { direction: rtl !important; }
        .service-detail:nth-child(even) .service-detail-grid > * { direction: ltr !important; }
        .service-detail-image { position: relative !important; }
        .service-image-box { width: 100% !important; height: 380px !important; border-radius: 24px !important; overflow: hidden !important; position: relative !important; }
        .service-image-box img { width: 100% !important; height: 100% !important; object-fit: cover !important; }
        .service-image-placeholder { width: 100% !important; height: 100% !important; background: linear-gradient(135deg, var(--accent-pale) 0%, var(--primary-pale) 100%) !important; display: flex !important; align-items: center !important; justify-content: center !important; }
        .service-image-placeholder svg { width: 80px !important; height: 80px !important; color: var(--primary) !important; opacity: 0.3 !important; }
        .service-detail-content h3 { font-family: 'Playfair Display', serif !important; font-size: 32px !important; font-weight: 600 !important; color: var(--primary) !important; margin-bottom: 24px !important; }
        .service-detail-content p { color: var(--gray) !important; font-size: 16px !important; line-height: 1.8 !important; margin-bottom: 16px !important; }
        .service-tag { display: inline-block !important; background: var(--accent-pale) !important; color: var(--accent) !important; padding: 6px 16px !important; border-radius: 50px !important; font-size: 12px !important; font-weight: 600 !important; text-transform: uppercase !important; letter-spacing: 1px !important; margin-bottom: 16px !important; }

        /* Checklist */
        .checklist { list-style: none !important; margin-top: 24px !important; }
        .checklist li { display: flex !important; align-items: flex-start !important; gap: 16px !important; margin-bottom: 14px !important; }
        .checklist-icon { width: 24px !important; height: 24px !important; background: var(--accent) !important; border-radius: 50% !important; display: flex !important; align-items: center !important; justify-content: center !important; flex-shrink: 0 !important; margin-top: 2px !important; }
        .checklist-icon svg { width: 12px !important; height: 12px !important; color: var(--white) !important; }
        .checklist li span { color: var(--dark) !important; font-size: 15px !important; font-weight: 500 !important; }

        /* Bandeau défilant */
        .marquee { padding: 40px 0; background: var(--primary); overflow: hidden; }
        .marquee-track { display: flex; animation: marquee 35s linear infinite; }
        .marquee-track:hover { animation-play-state: paused; }
        @keyframes marquee { 0% { transform: translateX(0); } 100% { transform: translateX(-50%); } }
        .marquee-item { display: flex; align-items: center; gap: 24px; padding: 0 48px; white-space: nowrap; }
        .marquee-item span { font-family: 'Playfair Display', serif; font-size: 22px; font-weight: 600; color: var(--white); }
        .marquee-item svg { width: 20px; height: 20px; color: var(--accent); }

        /* Autres services */
        .other-services { padding: 100px 0 !important; background: var(--light-gray) !important; }
        .services-grid { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 24px !important; }
        .service-link { background: var(--white) !important; border-radius: 24px !important; padding: 40px 32px !important; text-decoration: none !important; transition: all 0.4s !important; display: block !important; border: 2px solid transparent !important; }
        .service-link:hover { border-color: var(--accent) !important; transform: translateY(-8px) !important; box-shadow: 0 20px 40px rgba(0,0,0,0.08) !important; }
        .service-link-icon { width: 56px !important; height: 56px !important; background: var(--primary) !important; border-radius: 16px !important; display: flex !important; align-items: center !important; justify-content: center !important; margin-bottom: 20px !important; transition: background 0.3s !important; }
        .service-link:hover .service-link-icon { background: var(--accent) !important; }
        .service-link-icon svg { width: 28px !important; height: 28px !important; color: var(--white) !important; }
        .service-link h4 { font-family: 'Playfair Display', serif !important; font-size: 22px !important; font-weight: 600 !important; color: var(--primary) !important; margin-bottom: 12px !important; }
        .service-link p { color: var(--gray) !important; font-size: 15px !important; line-height: 1.6 !important; }

        /* CTA */
        .cta { padding: 100px 0 !important; background: linear-gradient(135deg, var(--accent) 0%, var(--accent-light) 100%) !important; position: relative !important; overflow: hidden !important; }
        .cta::before { content: '' !important; position: absolute !important; width: 400px !important; height: 400px !important; background: var(--white) !important; border-radius: 50% !important; top: -200px !important; left: -100px !important; opacity: 0.1 !important; }
        .cta-content { text-align: center !important; position: relative !important; z-index: 1 !important; }
        .cta h2 { font-family: 'Playfair Display', serif !important; font-size: clamp(32px, 4vw, 44px) !important; font-weight: 600 !important; color: var(--white) !important; margin-bottom: 16px !important; }
        .cta p { color: rgba(255,255,255,0.9) !important; font-size: 18px !important; margin-bottom: 32px !important; max-width: 500px !important; margin-left: auto !important; margin-right: auto !important; }
        .cta-btn { display: inline-flex !important; align-items: center !important; gap: 12px !important; background: var(--white) !important; color: var(--accent) !important; padding: 18px 40px !important; border-radius: 50px !important; text-decoration: none !important; font-weight: 700 !important; font-size: 16px !important; transition: all 0.3s !important; }
        .cta-btn:hover { background: var(--primary) !important; color: var(--white) !important; transform: translateY(-3px) !important; }




/* Responsive */
        @media (max-width: 1024px) {
            .hero-service-grid, .service-detail-grid { grid-template-columns: 1fr !important; gap: 40px !important; }
            .hero-service-image { order: -1 !important; }
            .service-detail:nth-child(even) .service-detail-grid { direction: ltr !important; }
            .service-detail-image { order: -1 !important; }
            .services-grid { grid-template-columns: 1fr !important; }
            .footer-grid { grid-template-columns: 1fr 1fr !important; gap: 40px !important; }
            .quote-content { flex-direction: column !important; text-align: center !important; }
            .expertise-services-grid { grid-template-columns: repeat(2, 1fr) !important; }
            .expertise-services-grid.second-row { grid-template-columns: repeat(2, 1fr) !important; max-width: 100% !important; }
        }
        @media (max-width: 768px) {
                        .marquee-track {
	display: flex;
	animation: marquee 5s linear infinite;
}
            .nav-links { display: none !important; }
            .footer-grid { grid-template-columns: 1fr !important; }
            .footer-bottom { flex-direction: column !important; gap: 20px !important; text-align: center !important; }
            .marquee-item span { font-size: 16px !important; }
            .hero-image-wrapper, .service-image-box { height: 280px !important; }
            .expertise-services-grid, .expertise-services-grid.second-row { grid-template-columns: 1fr !important; }
            .expertise-service-card { padding: 24px 20px !important; }
        }
        
        /* Smooth scroll behavior */
        html { scroll-behavior: smooth !important; }/* End custom CSS */