{"id":4761,"date":"2025-06-29T13:19:46","date_gmt":"2025-06-29T13:19:46","guid":{"rendered":"http:\/\/valostones.com\/?page_id=4761"},"modified":"2025-06-29T13:19:46","modified_gmt":"2025-06-29T13:19:46","slug":"first-annual-meeting","status":"publish","type":"page","link":"http:\/\/valostones.com\/fr\/first-annual-meeting\/","title":{"rendered":"La premi\u00e8re r\u00e9union annelle"},"content":{"rendered":"<div data-elementor-type=\"wp-page\" data-elementor-id=\"4761\" class=\"elementor elementor-4761\">\n\t\t\t\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-f376223 elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"f376223\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-fa9f403\" data-id=\"fa9f403\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t\t\t<div class=\"elementor-element elementor-element-85c5b14 elementor-widget elementor-widget-html\" data-id=\"85c5b14\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t<!DOCTYPE html>\r\n<html lang=\"en\">\r\n<head>\r\n    <meta charset=\"UTF-8\">\r\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n    <title>First Annual Meeting - VALOstones Project<\/title>\r\n    <link href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/font-awesome\/6.4.0\/css\/all.min.css\" rel=\"stylesheet\">\r\n    <link href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/swiper\/10.3.1\/swiper-bundle.min.css\" rel=\"stylesheet\">\r\n    <style>\r\n        * {\r\n            margin: 0;\r\n            padding: 0;\r\n            box-sizing: border-box;\r\n        }\r\n\r\n        body {\r\n            font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\r\n            line-height: 1.6;\r\n            background: linear-gradient(135deg, #f8fdf9 0%, #e8f5ea 100%);\r\n            min-height: 100vh;\r\n            margin: 0;\r\n            padding: 0;\r\n        }\r\n\r\n        \/* WordPress Widget Compatibility *\/\r\n        .widget-content {\r\n            margin: 0 !important;\r\n            padding: 0 !important;\r\n        }\r\n\r\n        .full-width-hero {\r\n            margin-left: calc(-50vw + 50%) !important;\r\n            margin-right: calc(-50vw + 50%) !important;\r\n            width: 100vw !important;\r\n            max-width: none !important;\r\n        }\r\n\r\n        \/* Override WordPress theme containers *\/\r\n        .hero-section.full-width-hero {\r\n            position: relative;\r\n            left: 50%;\r\n            right: 50%;\r\n            margin-left: -50vw !important;\r\n            margin-right: -50vw !important;\r\n            width: 100vw !important;\r\n            max-width: 100vw !important;\r\n        }\r\n\r\n        .hero-section {\r\n            position: relative;\r\n            height: 70vh;\r\n            margin: 0;\r\n            padding: 0;\r\n            background: linear-gradient(135deg, rgba(19, 112, 30, 0.7), rgba(26, 138, 38, 0.6)), \r\n                        url('http:\/\/valostones.com\/wp-content\/uploads\/2025\/06\/1st-annual-meeting.jpg');\r\n            background-size: cover;\r\n            background-position: center;\r\n            background-repeat: no-repeat;\r\n            display: flex;\r\n            align-items: center;\r\n            justify-content: center;\r\n            color: white;\r\n            text-align: center;\r\n            overflow: hidden;\r\n        }\r\n\r\n        .hero-content {\r\n            max-width: 800px;\r\n            padding: 0 20px;\r\n            z-index: 2;\r\n            position: relative;\r\n        }\r\n\r\n        .hero-title {\r\n            font-size: 3.5rem;\r\n            font-weight: 700;\r\n            margin-bottom: 20px;\r\n            text-shadow: 2px 2px 4px rgba(0,0,0,0.3);\r\n            animation: fadeInUp 1s ease-out;\r\n        }\r\n\r\n        .hero-subtitle {\r\n            font-size: 2.5rem;\r\n            margin-bottom: 15px;\r\n            opacity: 0.95;\r\n            animation: fadeInUp 1s ease-out 0.3s both;\r\n        }\r\n\r\n        .hero-date {\r\n            font-size: 1.1rem;\r\n            padding: 12px 25px;\r\n            background: rgba(255, 255, 255, 0.2);\r\n            border-radius: 50px;\r\n            display: inline-block;\r\n            backdrop-filter: blur(10px);\r\n            border: 1px solid rgba(255, 255, 255, 0.3);\r\n            animation: fadeInUp 1s ease-out 0.6s both;\r\n        }\r\n\r\n        .hero-bg-pattern {\r\n            position: absolute;\r\n            top: 0;\r\n            left: 0;\r\n            right: 0;\r\n            bottom: 0;\r\n            background: none;\r\n            opacity: 0.1;\r\n        }\r\n\r\n        .container {\r\n            max-width: 1400px;\r\n            margin: 0 auto;\r\n            padding: 60px 20px;\r\n        }\r\n\r\n        .gallery-section {\r\n            margin-bottom: 80px;\r\n        }\r\n\r\n        .section-title {\r\n            text-align: center;\r\n            font-size: 2.5rem;\r\n            color: #13701e;\r\n            margin-bottom: 20px;\r\n            font-weight: 700;\r\n            position: relative;\r\n        }\r\n\r\n        .section-title::after {\r\n            content: '';\r\n            position: absolute;\r\n            bottom: -10px;\r\n            left: 50%;\r\n            transform: translateX(-50%);\r\n            width: 80px;\r\n            height: 4px;\r\n            background: linear-gradient(90deg, #13701e, #1a8a26);\r\n            border-radius: 2px;\r\n        }\r\n\r\n        .section-subtitle {\r\n            text-align: center;\r\n            color: #666;\r\n            font-size: 1.1rem;\r\n            margin-bottom: 50px;\r\n            max-width: 600px;\r\n            margin-left: auto;\r\n            margin-right: auto;\r\n        }\r\n\r\n        .swiper {\r\n            width: 100%;\r\n            height: 500px;\r\n            border-radius: 20px;\r\n            overflow: hidden;\r\n            box-shadow: 0 20px 50px rgba(19, 112, 30, 0.2);\r\n        }\r\n\r\n        .swiper-slide {\r\n            background-position: center;\r\n            background-size: cover;\r\n            position: relative;\r\n            overflow: hidden;\r\n        }\r\n\r\n        .swiper-slide img {\r\n            width: 100%;\r\n            height: 100%;\r\n            object-fit: cover;\r\n            transition: transform 0.5s ease;\r\n        }\r\n\r\n        .swiper-slide:hover img {\r\n            transform: scale(1.05);\r\n        }\r\n\r\n        .slide-overlay {\r\n            position: absolute;\r\n            bottom: 0;\r\n            left: 0;\r\n            right: 0;\r\n            background: linear-gradient(transparent, rgba(19, 112, 30, 0.8));\r\n            color: white;\r\n            padding: 30px;\r\n            transform: translateY(100%);\r\n            transition: transform 0.3s ease;\r\n        }\r\n\r\n        .swiper-slide:hover .slide-overlay {\r\n            transform: translateY(0);\r\n        }\r\n\r\n        .slide-title {\r\n            font-size: 1.2rem;\r\n            font-weight: 600;\r\n            margin-bottom: 8px;\r\n        }\r\n\r\n        .slide-description {\r\n            font-size: 0.9rem;\r\n            opacity: 0.9;\r\n        }\r\n\r\n        .swiper-pagination-bullet {\r\n            background: #13701e !important;\r\n            opacity: 0.3 !important;\r\n        }\r\n\r\n        .swiper-pagination-bullet-active {\r\n            opacity: 1 !important;\r\n            transform: scale(1.2);\r\n        }\r\n\r\n        .content-section {\r\n            display: grid;\r\n            grid-template-columns: 45% 55%;\r\n            gap: 60px;\r\n            align-items: start;\r\n            margin-top: 80px;\r\n        }\r\n\r\n        .content-left {\r\n            background: white;\r\n            border-radius: 20px;\r\n            padding: 40px;\r\n            box-shadow: 0 15px 40px rgba(19, 112, 30, 0.1);\r\n            border: 2px solid transparent;\r\n            transition: all 0.3s ease;\r\n        }\r\n\r\n        .content-left:hover {\r\n            border-color: #13701e;\r\n            transform: translateY(-5px);\r\n            box-shadow: 0 20px 50px rgba(19, 112, 30, 0.15);\r\n        }\r\n\r\n        .image-selector {\r\n            display: flex;\r\n            flex-direction: column;\r\n            gap: 20px;\r\n        }\r\n\r\n        .selector-title {\r\n            font-size: 1.5rem;\r\n            color: #13701e;\r\n            font-weight: 700;\r\n            margin-bottom: 10px;\r\n        }\r\n\r\n        .image-tabs {\r\n            display: flex;\r\n            gap: 10px;\r\n            margin-bottom: 25px;\r\n        }\r\n\r\n        .tab-button {\r\n            flex: 1;\r\n            padding: 12px 20px;\r\n            background: transparent;\r\n            border: 2px solid #13701e;\r\n            color: #13701e;\r\n            border-radius: 25px;\r\n            cursor: pointer;\r\n            font-weight: 600;\r\n            transition: all 0.3s ease;\r\n            font-size: 0.9rem;\r\n        }\r\n\r\n        .tab-button.active,\r\n        .tab-button:hover {\r\n            background: #13701e;\r\n            color: white;\r\n            transform: translateY(-2px);\r\n            box-shadow: 0 5px 15px rgba(19, 112, 30, 0.3);\r\n        }\r\n\r\n        .image-display {\r\n            border-radius: 15px;\r\n            overflow: hidden;\r\n            box-shadow: 0 10px 30px rgba(19, 112, 30, 0.2);\r\n            position: relative;\r\n            height: 400px;\r\n        }\r\n\r\n        .image-display img {\r\n            width: 100%;\r\n            height: 100%;\r\n            object-fit: cover;\r\n            transition: transform 0.3s ease;\r\n        }\r\n\r\n        .image-display:hover img {\r\n            transform: scale(1.02);\r\n        }\r\n\r\n        .image-caption {\r\n            position: absolute;\r\n            bottom: 0;\r\n            left: 0;\r\n            right: 0;\r\n            background: linear-gradient(transparent, rgba(0,0,0,0.8));\r\n            color: white;\r\n            padding: 20px;\r\n            transform: translateY(100%);\r\n            transition: transform 0.3s ease;\r\n        }\r\n\r\n        .image-display:hover .image-caption {\r\n            transform: translateY(0);\r\n        }\r\n\r\n        .content-right {\r\n            background: white;\r\n            border-radius: 20px;\r\n            padding: 50px;\r\n            box-shadow: 0 15px 40px rgba(19, 112, 30, 0.1);\r\n            border: 2px solid transparent;\r\n            transition: all 0.3s ease;\r\n            position: relative;\r\n            overflow: hidden;\r\n        }\r\n\r\n        .content-right::before {\r\n            content: '';\r\n            position: absolute;\r\n            top: 0;\r\n            left: 0;\r\n            right: 0;\r\n            height: 4px;\r\n            background: linear-gradient(90deg, #13701e, #1a8a26, #2fb344);\r\n            transform: scaleX(0);\r\n            transition: transform 0.3s ease;\r\n        }\r\n\r\n        .content-right:hover {\r\n            border-color: #13701e;\r\n            transform: translateY(-5px);\r\n            box-shadow: 0 20px 50px rgba(19, 112, 30, 0.15);\r\n        }\r\n\r\n        .content-right:hover::before {\r\n            transform: scaleX(1);\r\n        }\r\n\r\n        .content-title {\r\n            font-size: 2rem;\r\n            color: #13701e;\r\n            font-weight: 700;\r\n            margin-bottom: 25px;\r\n            line-height: 1.3;\r\n        }\r\n\r\n        .content-text {\r\n            color: #555;\r\n            font-size: 1.1rem;\r\n            line-height: 1.7;\r\n            margin-bottom: 30px;\r\n        }\r\n\r\n        .highlight-box {\r\n            background: linear-gradient(135deg, #f8fdf9, #e8f5ea);\r\n            border-left: 4px solid #13701e;\r\n            padding: 25px;\r\n            border-radius: 10px;\r\n            margin: 30px 0;\r\n        }\r\n\r\n        .highlight-title {\r\n            font-weight: 700;\r\n            color: #13701e;\r\n            margin-bottom: 15px;\r\n            font-size: 1.2rem;\r\n        }\r\n\r\n        .highlight-text {\r\n            color: #666;\r\n            line-height: 1.6;\r\n        }\r\n\r\n        .social-links {\r\n            display: flex;\r\n            gap: 15px;\r\n            margin-top: 30px;\r\n        }\r\n\r\n        .social-link {\r\n            display: inline-flex;\r\n            align-items: center;\r\n            gap: 8px;\r\n            padding: 10px 20px;\r\n            background: linear-gradient(135deg, #13701e, #1a8a26);\r\n            color: white;\r\n            text-decoration: none;\r\n            border-radius: 25px;\r\n            font-weight: 600;\r\n            transition: all 0.3s ease;\r\n            font-size: 0.9rem;\r\n        }\r\n\r\n        .social-link:hover {\r\n            transform: translateY(-2px);\r\n            box-shadow: 0 8px 20px rgba(19, 112, 30, 0.3);\r\n            background: linear-gradient(135deg, #1a8a26, #2fb344);\r\n        }\r\n\r\n        .hashtags {\r\n            margin-top: 25px;\r\n            padding-top: 25px;\r\n            border-top: 1px solid #eee;\r\n        }\r\n\r\n        .hashtag {\r\n            display: inline-block;\r\n            background: #f8fdf9;\r\n            color: #13701e;\r\n            padding: 5px 12px;\r\n            border-radius: 15px;\r\n            margin: 3px;\r\n            font-size: 0.9rem;\r\n            font-weight: 600;\r\n            border: 1px solid #13701e;\r\n        }\r\n\r\n        @media (max-width: 1024px) {\r\n            .content-section {\r\n                grid-template-columns: 1fr;\r\n                gap: 40px;\r\n            }\r\n            \r\n            .hero-title {\r\n                font-size: 2.5rem;\r\n            }\r\n            \r\n            .content-right {\r\n                padding: 35px;\r\n            }\r\n        }\r\n        .cinematic-gallery {\r\n    position: relative;\r\n    width: 100%;\r\n    height: 600px;\r\n    border-radius: 20px;\r\n    overflow: hidden;\r\n    box-shadow: 0 25px 60px rgba(19, 112, 30, 0.3);\r\n    background: #000;\r\n}\r\n\r\n.cinematic-container {\r\n    position: relative;\r\n    width: 100%;\r\n    height: 100%;\r\n}\r\n\r\n.cinematic-slide {\r\n    position: absolute;\r\n    top: 0;\r\n    left: 0;\r\n    width: 100%;\r\n    height: 100%;\r\n    opacity: 0;\r\n    transform: scale(1.1);\r\n    transition: all 1.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);\r\n}\r\n\r\n.cinematic-slide.active {\r\n    opacity: 1;\r\n    transform: scale(1);\r\n}\r\n\r\n.cinematic-slide.prev {\r\n    transform: scale(0.9) translateX(-100%);\r\n}\r\n\r\n.cinematic-slide.next {\r\n    transform: scale(0.9) translateX(100%);\r\n}\r\n\r\n.cinematic-slide img {\r\n    width: 100%;\r\n    height: 100%;\r\n    object-fit: cover;\r\n    filter: brightness(0.9) contrast(1.1);\r\n    transition: filter 0.8s ease;\r\n}\r\n\r\n.cinematic-slide.active img {\r\n    filter: brightness(1) contrast(1);\r\n}\r\n\r\n.cinematic-overlay {\r\n    position: absolute;\r\n    bottom: 0;\r\n    left: 0;\r\n    right: 0;\r\n    background: linear-gradient(transparent, rgba(0,0,0,0.8));\r\n    color: white;\r\n    padding: 40px;\r\n    transform: translateY(100%);\r\n    transition: transform 0.6s ease 0.3s;\r\n}\r\n\r\n.cinematic-slide.active .cinematic-overlay {\r\n    transform: translateY(0);\r\n}\r\n\r\n.slide-info h3 {\r\n    font-size: 1.8rem;\r\n    font-weight: 700;\r\n    margin-bottom: 10px;\r\n    color: white;\r\n}\r\n\r\n.slide-info p {\r\n    font-size: 1.1rem;\r\n    opacity: 0.9;\r\n    line-height: 1.5;\r\n}\r\n\r\n.cinematic-controls {\r\n    position: absolute;\r\n    bottom: 30px;\r\n    left: 50%;\r\n    transform: translateX(-50%);\r\n    display: flex;\r\n    align-items: center;\r\n    gap: 20px;\r\n    z-index: 10;\r\n}\r\n\r\n.control-btn {\r\n    background: rgba(255, 255, 255, 0.2);\r\n    border: 2px solid rgba(255, 255, 255, 0.3);\r\n    color: white;\r\n    width: 50px;\r\n    height: 50px;\r\n    border-radius: 50%;\r\n    cursor: pointer;\r\n    transition: all 0.3s ease;\r\n    backdrop-filter: blur(10px);\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n}\r\n\r\n.control-btn:hover {\r\n    background: rgba(19, 112, 30, 0.8);\r\n    border-color: #13701e;\r\n    transform: scale(1.1);\r\n}\r\n\r\n.progress-bar {\r\n    width: 200px;\r\n    height: 4px;\r\n    background: rgba(255, 255, 255, 0.3);\r\n    border-radius: 2px;\r\n    overflow: hidden;\r\n}\r\n\r\n.progress-fill {\r\n    height: 100%;\r\n    background:\r\n\r\n        @media (max-width: 768px) {\r\n            .hero-title {\r\n                font-size: 2rem;\r\n            }\r\n            \r\n            .hero-subtitle {\r\n                font-size: 1.1rem;\r\n            }\r\n            \r\n            .swiper {\r\n                height: 300px;\r\n            }\r\n            \r\n            .content-left,\r\n            .content-right {\r\n                padding: 25px;\r\n            }\r\n            \r\n            .image-tabs {\r\n                flex-direction: column;\r\n            }\r\n            \r\n            .social-links {\r\n                flex-direction: column;\r\n                align-items: flex-start;\r\n            }\r\n        }\r\n\r\n        @keyframes fadeInUp {\r\n            from {\r\n                opacity: 0;\r\n                transform: translateY(30px);\r\n            }\r\n            to {\r\n                opacity: 1;\r\n                transform: translateY(0);\r\n            }\r\n        }\r\n\r\n        @keyframes float {\r\n            0%, 100% { transform: translateY(0px) rotate(0deg); }\r\n            50% { transform: translateY(-20px) rotate(180deg); }\r\n        }\r\n\r\n        .scroll-indicator {\r\n            position: absolute;\r\n            bottom: 30px;\r\n            left: 50%;\r\n            transform: translateX(-50%);\r\n            color: white;\r\n            animation: bounce 2s infinite;\r\n        }\r\n\r\n        @keyframes bounce {\r\n            0%, 20%, 50%, 80%, 100% { transform: translateX(-50%) translateY(0); }\r\n            40% { transform: translateX(-50%) translateY(-10px); }\r\n            60% { transform: translateX(-50%) translateY(-5px); }\r\n        }\r\n    <\/style>\r\n    <style>.information-section {\r\n    padding: 80px 0;\r\n    background: linear-gradient(135deg, #f8fdf9 0%, #e8f5ea 100%);\r\n}\r\n\r\n.info-row {\r\n    display: grid;\r\n    grid-template-columns: 45% 55%;\r\n    gap: 60px;\r\n    align-items: start;\r\n    margin-top: 60px;\r\n}\r\n\r\n.pdf-viewer-container {\r\n    position: sticky;\r\n    top: 30px;\r\n}\r\n\r\n.pdf-viewer {\r\n    background: white;\r\n    border-radius: 20px;\r\n    box-shadow: 0 20px 50px rgba(19, 112, 30, 0.15);\r\n    overflow: hidden;\r\n    border: 2px solid transparent;\r\n    transition: all 0.3s ease;\r\n}\r\n\r\n.pdf-viewer:hover {\r\n    border-color: #13701e;\r\n    transform: translateY(-5px);\r\n    box-shadow: 0 25px 60px rgba(19, 112, 30, 0.2);\r\n}\r\n\r\n.pdf-header {\r\n    display: flex;\r\n    justify-content: space-between;\r\n    align-items: center;\r\n    padding: 25px 30px;\r\n    background: linear-gradient(135deg, #13701e, #1a8a26);\r\n    color: white;\r\n}\r\n\r\n.pdf-header h3 {\r\n    margin: 0;\r\n    font-size: 1.3rem;\r\n    font-weight: 700;\r\n}\r\n\r\n.download-btn {\r\n    background: rgba(255, 255, 255, 0.2);\r\n    color: white;\r\n    text-decoration: none;\r\n    padding: 10px 20px;\r\n    border-radius: 25px;\r\n    font-weight: 600;\r\n    transition: all 0.3s ease;\r\n    backdrop-filter: blur(10px);\r\n    border: 1px solid rgba(255, 255, 255, 0.3);\r\n}\r\n\r\n.download-btn:hover {\r\n    background: rgba(255, 255, 255, 0.3);\r\n    transform: translateY(-2px);\r\n}\r\n\r\n.pdf-display {\r\n    position: relative;\r\n}\r\n\r\n.pdf-page-container {\r\n    position: relative;\r\n    height: 600px;\r\n    overflow: hidden;\r\n}\r\n\r\n.pdf-page {\r\n    position: absolute;\r\n    top: 0;\r\n    left: 0;\r\n    width: 100%;\r\n    height: 100%;\r\n    opacity: 0;\r\n    transform: perspective(1000px) rotateY(-30deg) translateX(-100%);\r\n    transition: all 0.8s cubic-bezier(0.25, 0.46, 0.45, 0.94);\r\n    transform-origin: left center;\r\n}\r\n\r\n.pdf-page.active {\r\n    opacity: 1;\r\n    transform: perspective(1000px) rotateY(0deg) translateX(0);\r\n}\r\n\r\n.pdf-page.next {\r\n    transform: perspective(1000px) rotateY(30deg) translateX(100%);\r\n}\r\n\r\n.page-content {\r\n    width: 100%;\r\n    height: 100%;\r\n    background: white;\r\n    border-radius: 10px;\r\n    overflow: hidden;\r\n    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);\r\n}\r\n\r\n.page-overlay {\r\n    position: absolute;\r\n    bottom: 0;\r\n    left: 0;\r\n    right: 0;\r\n    background: linear-gradient(transparent, rgba(0, 0, 0, 0.8));\r\n    color: white;\r\n    padding: 15px;\r\n    transform: translateY(100%);\r\n    transition: transform 0.3s ease;\r\n}\r\n\r\n.pdf-page:hover .page-overlay {\r\n    transform: translateY(0);\r\n}\r\n\r\n.page-number {\r\n    font-weight: 600;\r\n    font-size: 0.9rem;\r\n}\r\n\r\n.pdf-controls {\r\n    display: flex;\r\n    justify-content: center;\r\n    align-items: center;\r\n    gap: 20px;\r\n    padding: 20px;\r\n    background: #f8fdf9;\r\n}\r\n\r\n.pdf-btn {\r\n    background: linear-gradient(135deg, #13701e, #1a8a26);\r\n    color: white;\r\n    border: none;\r\n    width: 45px;\r\n    height: 45px;\r\n    border-radius: 50%;\r\n    cursor: pointer;\r\n    transition: all 0.3s ease;\r\n    display: flex;\r\n    align-items: center;\r\n    justify-content: center;\r\n}\r\n\r\n.pdf-btn:hover {\r\n    transform: scale(1.1);\r\n    box-shadow: 0 5px 15px rgba(19, 112, 30, 0.3);\r\n}\r\n\r\n.pdf-btn:disabled {\r\n    opacity: 0.5;\r\n    cursor: not-allowed;\r\n    transform: none;\r\n}\r\n\r\n.page-info {\r\n    font-weight: 600;\r\n    color: #13701e;\r\n    font-size: 1rem;\r\n}\r\n\r\n.description-container {\r\n    background: white;\r\n    border-radius: 20px;\r\n    padding: 50px;\r\n    box-shadow: 0 15px 40px rgba(19, 112, 30, 0.1);\r\n    border: 2px solid transparent;\r\n    transition: all 0.3s ease;\r\n    position: relative;\r\n    overflow: hidden;\r\n}\r\n\r\n.description-container::before {\r\n    content: '';\r\n    position: absolute;\r\n    top: 0;\r\n    left: 0;\r\n    right: 0;\r\n    height: 4px;\r\n    background: linear-gradient(90deg, #13701e, #1a8a26, #2fb344);\r\n    transform: scaleX(0);\r\n    transition: transform 0.3s ease;\r\n}\r\n\r\n.description-container:hover {\r\n    border-color: #13701e;\r\n    transform: translateY(-5px);\r\n    box-shadow: 0 20px 50px rgba(19, 112, 30, 0.15);\r\n}\r\n\r\n.description-container:hover::before {\r\n    transform: scaleX(1);\r\n}\r\n\r\n.description-title {\r\n    font-size: 2.2rem;\r\n    color: #13701e;\r\n    font-weight: 700;\r\n    margin-bottom: 30px;\r\n    line-height: 1.3;\r\n}\r\n\r\n.intro-text p {\r\n    font-size: 1.1rem;\r\n    line-height: 1.7;\r\n    color: #555;\r\n    margin-bottom: 20px;\r\n}\r\n\r\n.project-focus {\r\n    background: linear-gradient(135deg, #f8fdf9, #e8f5ea);\r\n    padding: 30px;\r\n    border-radius: 15px;\r\n    margin: 30px 0;\r\n    border-left: 4px solid #13701e;\r\n}\r\n\r\n.project-focus h3 {\r\n    color: #13701e;\r\n    font-size: 1.4rem;\r\n    font-weight: 700;\r\n    margin-bottom: 15px;\r\n}\r\n\r\n.project-focus p {\r\n    color: #666;\r\n    line-height: 1.6;\r\n}\r\n\r\n.meeting-highlights {\r\n    margin: 40px 0;\r\n}\r\n\r\n.meeting-highlights h3 {\r\n    color: #13701e;\r\n    font-size: 1.4rem;\r\n    font-weight: 700;\r\n    margin-bottom: 25px;\r\n}\r\n\r\n.highlight-item {\r\n    background: #f8fdf9;\r\n    padding: 25px;\r\n    border-radius: 15px;\r\n    margin-bottom: 20px;\r\n    border: 1px solid #e8f5ea;\r\n    transition: all 0.3s ease;\r\n}\r\n\r\n.highlight-item:hover {\r\n    transform: translateX(10px);\r\n    box-shadow: 0 10px 30px rgba(19, 112, 30, 0.1);\r\n}\r\n\r\n.highlight-item h4 {\r\n    color: #13701e;\r\n    font-size: 1.2rem;\r\n    font-weight: 700;\r\n    margin-bottom: 15px;\r\n    display: flex;\r\n    align-items: center;\r\n    gap: 10px;\r\n}\r\n\r\n.highlight-item h4 i {\r\n    font-size: 1rem;\r\n}\r\n\r\n.highlight-item p {\r\n    color: #666;\r\n    line-height: 1.6;\r\n    margin-bottom: 15px;\r\n}\r\n\r\n.social-btn {\r\n    display: inline-flex;\r\n    align-items: center;\r\n    gap: 8px;\r\n    background: linear-gradient(135deg, #13701e, #1a8a26);\r\n    color: white;\r\n    text-decoration: none;\r\n    padding: 10px 20px;\r\n    border-radius: 25px;\r\n    font-weight: 600;\r\n    transition: all 0.3s ease;\r\n    font-size: 0.9rem;\r\n}\r\n\r\n.social-btn:hover {\r\n    transform: translateY(-2px);\r\n    box-shadow: 0 8px 20px rgba(19, 112, 30, 0.3);\r\n    background: linear-gradient(135deg, #1a8a26, #2fb344);\r\n}\r\n\r\n.acknowledgment {\r\n    background: linear-gradient(135deg, #f0f9f0, #e6f3e6);\r\n    padding: 30px;\r\n    border-radius: 15px;\r\n    margin: 30px 0;\r\n    border: 1px solid #d4edda;\r\n}\r\n\r\n.acknowledgment p {\r\n    color: #155724;\r\n    line-height: 1.6;\r\n    margin-bottom: 15px;\r\n}\r\n\r\n.gallery-note {\r\n    font-style: italic;\r\n    color: #13701e !important;\r\n    font-weight: 600;\r\n}\r\n\r\n.hashtags-section {\r\n    display: flex;\r\n    flex-wrap: wrap;\r\n    gap: 10px;\r\n    margin-top: 30px;\r\n    padding-top: 30px;\r\n    border-top: 1px solid #eee;\r\n}\r\n\r\n.hashtag {\r\n    background: #13701e;\r\n    color: white;\r\n    padding: 8px 16px;\r\n    border-radius: 20px;\r\n    font-size: 0.9rem;\r\n    font-weight: 600;\r\n    transition: all 0.3s ease;\r\n}\r\n\r\n.hashtag:hover {\r\n    background: #1a8a26;\r\n    transform: translateY(-2px);\r\n}\r\n\r\n@media (max-width: 1024px) {\r\n    .info-row {\r\n        grid-template-columns: 1fr;\r\n        gap: 40px;\r\n    }\r\n    \r\n    .pdf-viewer-container {\r\n        position: relative;\r\n        top: auto;\r\n    }\r\n    \r\n    .description-container {\r\n        padding: 35px;\r\n    }\r\n}\r\n\r\n@media (max-width: 768px) {\r\n    .pdf-page-container {\r\n        height: 400px;\r\n    }\r\n    \r\n    .description-container {\r\n        padding: 25px;\r\n    }\r\n    \r\n    .description-title {\r\n        font-size: 1.8rem;\r\n    }\r\n    \r\n    .hashtags-section {\r\n        justify-content: center;\r\n    }\r\n}\r\n<\/style>\r\n<\/head>\r\n<!--\r\n    VALOstones Team Image Background:\r\n    \r\n    CURRENT SETUP:\r\n    \u2705 Using direct URL: http:\/\/valostones.com\/wp-content\/uploads\/2025\/06\/1st-annual-meeting.jpg\r\n    \u2705 Shows the actual VALOstones consortium team meeting in Udine\r\n    \u2705 Conference room setting with project logo on screen\r\n    \r\n    BACKUP OPTIONS:\r\n    - WordPress API integration for alternative images\r\n    - Fallback system if direct URL is unavailable\r\n    - Automatic image optimization and loading\r\n    \r\n    The hero background now displays your actual team photo from the\r\n    First Annual Meeting in Udine with an elegant green overlay.\r\n-->\r\n<body>\r\n    <div class=\"hero-section full-width-hero\" id=\"heroSection\">\r\n        <div class=\"hero-bg-pattern\"><\/div>\r\n        <div class=\"hero-content\">\r\n            <p class=\"hero-subtitle\">VALOstones First Annual Meeting<\/p>\r\n            <div class=\"hero-date\">\r\n                <i class=\"fas fa-calendar-alt\"><\/i>\r\n                September 27, 2024 \u2022 Udine, Italy\r\n            <\/div>\r\n        <\/div>\r\n   \r\n    <\/div>\r\n<div class=\"information-section\">\r\n    <div class=\"container\">\r\n        <div class=\"info-row\">\r\n            <div class=\"pdf-viewer-container\">\r\n                <div class=\"pdf-viewer\" id=\"pdfViewer\">\r\n                    \r\n                    <div class=\"pdf-display\">\r\n                        <div class=\"pdf-page-container\">\r\n                            <div class=\"pdf-page active\" data-page=\"1\">\r\n                                <div class=\"page-content\">\r\n                                    <iframe loading=\"lazy\" src=\"http:\/\/valostones.com\/wp-content\/uploads\/2025\/06\/meeting-1-year-VALOSTONES-def-3.pdf#page=1\" \r\n                                            width=\"100%\" height=\"100%\" frameborder=\"0\"><\/iframe>\r\n                                <\/div>\r\n                                <div class=\"page-overlay\">\r\n                                    <div class=\"page-number\">Page 1<\/div>\r\n                                <\/div>\r\n                            <\/div>\r\n                        <\/div>\r\n                        \r\n                        <div class=\"pdf-controls\">\r\n                            <button class=\"pdf-btn\" id=\"prevPage\">\r\n                                <i class=\"fas fa-chevron-left\"><\/i>\r\n                            <\/button>\r\n                            <div class=\"page-info\">\r\n                                <span id=\"currentPage\">1<\/span> \/ <span id=\"totalPages\">--<\/span>\r\n                            <\/div>\r\n                            <button class=\"pdf-btn\" id=\"nextPage\">\r\n                                <i class=\"fas fa-chevron-right\"><\/i>\r\n                            <\/button>\r\n                        <\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n            \r\n            <div class=\"description-container\">\r\n                <div class=\"description-content\">\r\n                    <h2 class=\"description-title\">VALOstones First Annual Meeting<\/h2>\r\n                    \r\n                    <div class=\"intro-text\">\r\n                        <p>We are thrilled to share highlights from the VALOstones First Annual Meeting, held on \r\n                        <strong>Friday, 27 September 2024<\/strong>, at the Universit\u00e0 degli Studi di Udine, Italy.<\/p>\r\n                        \r\n                        <p>This milestone event brought together all project partners to assess the progress of \r\n                        VALOstones towards its strategic objectives. The meeting also marked the first face-to-face \r\n                        session with our External Advisory Board (EAB), whose valuable insights helped guide the \r\n                        project's next steps.<\/p>\r\n                         <p>The VALOstones project focuses on unlocking new opportunities for the valorization of olive\r\n                         stones, aiming to produce innovative, high-value products for the food, cosmeceutical, and\r\n                            pharmaceutical sectors. These efforts support the transition to healthier, more sustainable\r\n                                practices across the Mediterranean region.<\/p>\r\n\r\n                    <\/div>\r\n                    \r\n               \r\n                    \r\n                    <div class=\"meeting-highlights\">\r\n                        <h3>Meeting Highlights<\/h3>\r\n                        \r\n                        <div class=\"highlight-item\">\r\n                            <h4><i class=\"fas fa-users\"><\/i> 1st Annual Meeting \u2013 Udine, Italy (2024)<\/h4>\r\n                            <p>The consortium gathered for the first annual meeting hosted by the University of \r\n                            Udine. Partners shared progress updates, aligned on the next project milestones, and \r\n                            reinforced cross-border collaboration.<\/p>\r\n                            <a href=\"https:\/\/www.facebook.com\/share\/p\/1AMJ5DeuUy\/?mibextid=wwXIfr\" \r\n                               target=\"_blank\" class=\"social-btn\">\r\n                                <i class=\"fab fa-facebook\"><\/i> View on Facebook\r\n                            <\/a>\r\n                        <\/div>\r\n                        \r\n                        <div class=\"highlight-item\">\r\n                            <h4><i class=\"fas fa-handshake\"><\/i> Face-to-Face Meeting with the External Advisory Board (EAB)<\/h4>\r\n                            <p>A dedicated session was held with the External Advisory Board to present preliminary \r\n                            results and gather expert feedback. The exchange strengthened the project's strategic \r\n                            orientation and scientific robustness.<\/p>\r\n                        <\/div>\r\n                        \r\n                        <div class=\"highlight-item\">\r\n                            <h4><i class=\"fas fa-industry\"><\/i> Site Visit to Italian Milling Facility<\/h4>\r\n                            <p>As part of the technical exchange, partners conducted a guided visit to a local olive \r\n                            milling facility in Italy. The visit provided insight into current olive stone valorization \r\n                            practices and inspired new ideas for sustainable biopolymer extraction.<\/p>\r\n                            <a href=\"https:\/\/www.facebook.com\/share\/p\/18QbXbjesx\/?mibextid=wwXIfr\" \r\n                               target=\"_blank\" class=\"social-btn\">\r\n                                <i class=\"fab fa-facebook\"><\/i> View Site Visit\r\n                            <\/a>\r\n                        <\/div>\r\n                    <\/div>\r\n                    \r\n                    <div class=\"acknowledgment\">\r\n                        <p>A warm thank you to all partners for their commitment and collaborative spirit. Special \r\n                        appreciation goes to the organizing committee at the University of Udine, especially Prof. \r\n                        Sonia Calligaris, for their excellent hosting and coordination.<\/p>\r\n                        \r\n                        <p class=\"gallery-note\">Explore the photo gallery above for a look at this memorable gathering.<\/p>\r\n                    <\/div>\r\n                    \r\n                    <div class=\"hashtags-section\">\r\n                        <div class=\"hashtag\">#VALOstones<\/div>\r\n                        <div class=\"hashtag\">#PRIMA<\/div>\r\n                        <div class=\"hashtag\">#MediterraneanSustainability<\/div>\r\n                        <div class=\"hashtag\">#EuropeanUnion<\/div>\r\n                    <\/div>\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n<div class=\"gallery-section\">\r\n    <h2 class=\"section-title\">Meeting Gallery<\/h2>\r\n  \r\n    \r\n    <div class=\"cinematic-gallery\" id=\"cinematicGallery\">\r\n        <div class=\"cinematic-container\">\r\n            <div class=\"cinematic-slide active\">\r\n                <img decoding=\"async\" src=\"http:\/\/valostones.com\/wp-content\/uploads\/2025\/06\/firstA1.jpg\" alt=\"Meeting Moment 1\">\r\n                <div class=\"cinematic-overlay\">\r\n                   \r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n        \r\n        <div class=\"cinematic-controls\">\r\n            <button class=\"control-btn\" id=\"prevBtn\"><i class=\"fas fa-chevron-left\"><\/i><\/button>\r\n            <div class=\"progress-bar\">\r\n                <div class=\"progress-fill\"><\/div>\r\n            <\/div>\r\n            <button class=\"control-btn\" id=\"nextBtn\"><i class=\"fas fa-chevron-right\"><\/i><\/button>\r\n        <\/div>\r\n        \r\n        <div class=\"image-counter\">\r\n            <span id=\"currentImage\">1<\/span> \/ <span id=\"totalImages\">20<\/span>\r\n        <\/div>\r\n    <\/div>\r\n<\/div>\r\n    <script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/swiper\/10.3.1\/swiper-bundle.min.js\"><\/script>\r\n    <script>\r\n        \/\/ Initialize Swiper\r\n        const swiper = new Swiper('.meetingSwiper', {\r\n            loop: true,\r\n            autoplay: {\r\n                delay: 4000,\r\n                disableOnInteraction: false,\r\n            },\r\n            pagination: {\r\n                el: '.swiper-pagination',\r\n                clickable: true,\r\n            },\r\n            effect: 'slide',\r\n            speed: 800,\r\n            slidesPerView: 1,\r\n            spaceBetween: 0,\r\n        });\r\n\r\n        \/\/ Image selector functionality\r\n        const imageData = {\r\n            agenda: {\r\n                src: \"data:image\/svg+xml,<svg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 600 800'><rect fill='white' width='600' height='800' stroke='%2313701e' stroke-width='2'\/><rect fill='%2313701e' width='600' height='100'\/><text x='300' y='60' text-anchor='middle' dy='.3em' fill='white' font-size='24' font-weight='bold'>Agenda 1st Year Meeting<\/text><text x='50' y='150' fill='%2313701e' font-size='16' font-weight='bold'>VALOstones PROJECT<\/text><text x='50' y='180' fill='%23666' font-size='14'>Valorization of olive stone by-product as a green source of<\/text><text x='50' y='200' fill='%23666' font-size='14'>innovative and healthy value-added products in the context of<\/text><text x='50' y='220' fill='%23666' font-size='14'>the circular bioeconomy and sustainability<\/text><text x='50' y='260' fill='%2313701e' font-size='14' font-weight='bold'>Friday 27th September 2024<\/text><text x='50' y='280' fill='%2313701e' font-size='14' font-weight='bold'>Udine, Italy<\/text><text x='50' y='300' fill='%2313701e' font-size='14' font-weight='bold'>Biblioteca Rizzi, via delle Scienze 206<\/text><\/svg>\",\r\n                title: \"Meeting Agenda\",\r\n                description: \"Complete agenda for the First Annual Meeting in Udine\"\r\n            },\r\n            program: {\r\n                src: \"data:image\/svg+xml,<svg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 600 800'><rect fill='white' width='600' height='800' stroke='%2313701e' stroke-width='2'\/><rect fill='%2313701e' width='600' height='80'\/><text x='300' y='50' text-anchor='middle' dy='.3em' fill='white' font-size='20' font-weight='bold'>PROGRAM<\/text><rect fill='%23e8f5ea' x='30' y='110' width='540' height='30'\/><text x='40' y='130' fill='%23333' font-size='12' font-weight='bold'>8:30-9:00 Registration<\/text><rect fill='%23e8f5ea' x='30' y='150' width='540' height='30'\/><text x='40' y='170' fill='%23333' font-size='12' font-weight='bold'>9:00-9:45 Opening<\/text><text x='40' y='200' fill='%23666' font-size='11'>Welcome addresses from University of Udine<\/text><text x='40' y='220' fill='%23666' font-size='11'>Coordinator of Valostones project<\/text><text x='40' y='240' fill='%23666' font-size='11'>PRIMA Project Officer of the Agrofood value chain<\/text><\/svg>\",\r\n                title: \"Detailed Program\",\r\n                description: \"Full day schedule with presentations and activities\"\r\n            }\r\n        };\r\n\r\n        \/\/ Handle tab switching\r\n        document.querySelectorAll('.tab-button').forEach(button => {\r\n            button.addEventListener('click', () => {\r\n                \/\/ Remove active class from all buttons\r\n                document.querySelectorAll('.tab-button').forEach(btn => btn.classList.remove('active'));\r\n                \r\n                \/\/ Add active class to clicked button\r\n                button.classList.add('active');\r\n                \r\n                \/\/ Get image key\r\n                const imageKey = button.dataset.image;\r\n                const imageInfo = imageData[imageKey];\r\n                \r\n                \/\/ Update image and caption\r\n                const img = document.getElementById('selectedImage');\r\n                const caption = document.querySelector('.image-caption');\r\n                \r\n                img.src = imageInfo.src;\r\n                img.alt = imageInfo.title;\r\n                \r\n                caption.querySelector('.slide-title').textContent = imageInfo.title;\r\n                caption.querySelector('.slide-description').textContent = imageInfo.description;\r\n            });\r\n        });\r\n        \r\n        \r\n\r\n        \/\/ WordPress Gallery Integration Function\r\n        async function loadWordPressGallery() {\r\n            try {\r\n                \/\/ Fetch gallery images from WordPress\r\n                const response = await fetch('\/wp-json\/wp\/v2\/media?search=annual-meeting&per_page=20');\r\n                const images = await response.json();\r\n                \r\n                if (images.length > 0) {\r\n                    updateSwiperWithGallery(images);\r\n                }\r\n            } catch (error) {\r\n                console.log('Using default gallery images');\r\n            }\r\n        }\r\n\r\n        function updateSwiperWithGallery(images) {\r\n            const swiperWrapper = document.querySelector('.swiper-wrapper');\r\n            swiperWrapper.innerHTML = '';\r\n            \r\n            images.forEach((image, index) => {\r\n                const slide = document.createElement('div');\r\n                slide.className = 'swiper-slide';\r\n                slide.innerHTML = `\r\n                    <img decoding=\"async\" src=\"${image.source_url}\" alt=\"${image.alt_text || 'Meeting photo'}\">\r\n                    <div class=\"slide-overlay\">\r\n                        <div class=\"slide-title\">${image.title.rendered || 'Meeting Photo'}<\/div>\r\n                        <div class=\"slide-description\">${image.caption.rendered || 'VALOstones Annual Meeting'}<\/div>\r\n                    <\/div>\r\n                `;\r\n                swiperWrapper.appendChild(slide);\r\n            });\r\n            \r\n            \/\/ Reinitialize swiper\r\n            swiper.update();\r\n        }\r\n\r\n        \/\/ Load WordPress gallery on page load\r\n        document.addEventListener('DOMContentLoaded', () => {\r\n            loadWordPressGallery();\r\n            setTeamBackground();\r\n        });\r\n\r\n        \/\/ Function to set team image as hero background\r\n        async function setTeamBackground() {\r\n            \/\/ Use the direct URL provided\r\n            const heroSection = document.getElementById('heroSection');\r\n            const teamImageUrl = 'http:\/\/valostones.com\/wp-content\/uploads\/2025\/06\/1st-annual-meeting.jpg';\r\n            \r\n            \/\/ Apply the background image\r\n            heroSection.style.backgroundImage = `linear-gradient(135deg, rgba(19, 112, 30, 0.2)), url('${teamImageUrl}')`;\r\n            heroSection.style.backgroundSize = 'cover';\r\n            heroSection.style.backgroundPosition = 'center';\r\n            heroSection.style.backgroundRepeat = 'no-repeat';\r\n            \r\n            console.log('VALOstones team background image loaded successfully');\r\n            \r\n            \/\/ Optional: Try to fetch alternative images from WordPress as fallback\r\n            try {\r\n                const response = await fetch('\/wp-json\/wp\/v2\/media?search=1st-annual-meeting&per_page=1');\r\n                const images = await response.json();\r\n                \r\n                if (images.length > 0 && images[0].source_url !== teamImageUrl) {\r\n                    console.log('Alternative team image found in WordPress media');\r\n                    \/\/ Could optionally switch to WordPress hosted version\r\n                }\r\n            } catch (error) {\r\n                console.log('Using direct URL for team background');\r\n            }\r\n        }\r\n\r\n        \/\/ Alternative: Try WordPress API first, then fallback to direct URL\r\n        async function tryWordPressFirstThenDirect() {\r\n            try {\r\n                const response = await fetch('\/wp-json\/wp\/v2\/media?search=1st-annual-meeting&per_page=1');\r\n                const images = await response.json();\r\n                \r\n                if (images.length > 0) {\r\n                    const heroSection = document.getElementById('heroSection');\r\n                    const imageUrl = images[0].source_url;\r\n                    heroSection.style.backgroundImage = `linear-gradient(135deg, rgba(19, 112, 30, 0.7), rgba(26, 138, 38, 0.6)), url('${imageUrl}')`;\r\n                    console.log('Team background loaded from WordPress media');\r\n                } else {\r\n                    \/\/ Fallback to direct URL\r\n                    setTeamBackground();\r\n                }\r\n            } catch (error) {\r\n                \/\/ Fallback to direct URL\r\n                setTeamBackground();\r\n            }\r\n        }\r\n        \r\n\r\n        \/\/ Smooth scrolling for scroll indicator\r\n        document.querySelector('.scroll-indicator').addEventListener('click', () => {\r\n            document.querySelector('.gallery-section').scrollIntoView({\r\n                behavior: 'smooth'\r\n            });\r\n        });\r\n    <\/script>\r\n    <script>\r\n        \/\/ Cinematic Gallery Implementation\r\nclass CinematicGallery {\r\n    constructor() {\r\n        this.currentIndex = 0;\r\n        this.totalImages = 20;\r\n        this.autoPlayInterval = null;\r\n        this.isPlaying = true;\r\n        this.images = [];\r\n        \r\n        this.initializeGallery();\r\n        this.createSlides();\r\n        this.setupControls();\r\n        this.startAutoPlay();\r\n    }\r\n    \r\n    initializeGallery() {\r\n        \/\/ Generate image URLs\r\n        for (let i = 1; i <= this.totalImages; i++) {\r\n            this.images.push(`http:\/\/valostones.com\/wp-content\/uploads\/2025\/06\/firstA${i}.jpg`);\r\n        }\r\n        \r\n        document.getElementById('totalImages').textContent = this.totalImages;\r\n    }\r\n    \r\n    createSlides() {\r\n        const container = document.querySelector('.cinematic-container');\r\n        \r\n        this.images.forEach((imageUrl, index) => {\r\n            if (index === 0) return; \/\/ Skip first slide as it's already in HTML\r\n            \r\n            const slide = document.createElement('div');\r\n            slide.className = 'cinematic-slide';\r\n            slide.innerHTML = `\r\n                <img decoding=\"async\" src=\"${imageUrl}\" alt=\"Meeting Moment ${index + 1}\">\r\n                <div class=\"cinematic-overlay\">\r\n                   \r\n                <\/div>\r\n            `;\r\n            container.appendChild(slide);\r\n        });\r\n        \r\n        this.slides = document.querySelectorAll('.cinematic-slide');\r\n    }\r\n    \r\n    setupControls() {\r\n        document.getElementById('prevBtn').addEventListener('click', () => this.previousSlide());\r\n        document.getElementById('nextBtn').addEventListener('click', () => this.nextSlide());\r\n        \r\n        \/\/ Pause on hover\r\n        const gallery = document.getElementById('cinematicGallery');\r\n        gallery.addEventListener('mouseenter', () => this.pauseAutoPlay());\r\n        gallery.addEventListener('mouseleave', () => this.startAutoPlay());\r\n    }\r\n    \r\n    updateSlide() {\r\n        this.slides.forEach((slide, index) => {\r\n            slide.classList.remove('active', 'prev', 'next');\r\n            \r\n            if (index === this.currentIndex) {\r\n                slide.classList.add('active');\r\n            } else if (index === this.currentIndex - 1 || (this.currentIndex === 0 && index === this.totalImages - 1)) {\r\n                slide.classList.add('prev');\r\n            } else if (index === this.currentIndex + 1 || (this.currentIndex === this.totalImages - 1 && index === 0)) {\r\n                slide.classList.add('next');\r\n            }\r\n        });\r\n        \r\n        \/\/ Update counter\r\n        document.getElementById('currentImage').textContent = this.currentIndex + 1;\r\n        \r\n        \/\/ Update progress\r\n        const progress = ((this.currentIndex + 1) \/ this.totalImages) * 100;\r\n        document.querySelector('.progress-fill').style.width = `${progress}%`;\r\n    }\r\n    \r\n    nextSlide() {\r\n        this.currentIndex = (this.currentIndex + 1) % this.totalImages;\r\n        this.updateSlide();\r\n    }\r\n    \r\n    previousSlide() {\r\n        this.currentIndex = (this.currentIndex - 1 + this.totalImages) % this.totalImages;\r\n        this.updateSlide();\r\n    }\r\n    \r\n    startAutoPlay() {\r\n        if (this.autoPlayInterval) return;\r\n        \r\n        this.autoPlayInterval = setInterval(() => {\r\n            if (this.isPlaying) {\r\n                this.nextSlide();\r\n            }\r\n        }, 4000);\r\n    }\r\n    \r\n    pauseAutoPlay() {\r\n        if (this.autoPlayInterval) {\r\n            clearInterval(this.autoPlayInterval);\r\n            this.autoPlayInterval = null;\r\n        }\r\n    }\r\n}\r\n\r\n\/\/ Initialize cinematic gallery when DOM is loaded\r\ndocument.addEventListener('DOMContentLoaded', () => {\r\n    const gallery = new CinematicGallery();\r\n});\r\n    <\/script>\r\n    <script>\/\/ PDF Viewer with Paper Animation\r\nclass PDFViewer {\r\n    constructor() {\r\n        this.currentPage = 1;\r\n        this.totalPages = 10; \/\/ Estimate, will be updated if possible\r\n        this.isAnimating = false;\r\n        \r\n        this.init();\r\n    }\r\n    \r\n    init() {\r\n        this.createPages();\r\n        this.setupControls();\r\n        this.updatePageInfo();\r\n    }\r\n    \r\n    createPages() {\r\n        const container = document.querySelector('.pdf-page-container');\r\n        const pdfUrl = 'http:\/\/valostones.com\/wp-content\/uploads\/2025\/06\/meeting-1-year-VALOSTONES-def-3.pdf';\r\n        \r\n        \/\/ Create additional pages\r\n        for (let i = 2; i <= this.totalPages; i++) {\r\n            const page = document.createElement('div');\r\n            page.className = 'pdf-page';\r\n            page.setAttribute('data-page', i);\r\n            page.innerHTML = `\r\n                <div class=\"page-content\">\r\n                    <iframe loading=\"lazy\" src=\"${pdfUrl}#page=${i}\" width=\"100%\" height=\"100%\" frameborder=\"0\"><\/iframe>\r\n                <\/div>\r\n                <div class=\"page-overlay\">\r\n                    <div class=\"page-number\">Page ${i}<\/div>\r\n                <\/div>\r\n            `;\r\n            container.appendChild(page);\r\n        }\r\n        \r\n        this.pages = document.querySelectorAll('.pdf-page');\r\n    }\r\n    \r\n    setupControls() {\r\n        document.getElementById('prevPage').addEventListener('click', () => this.previousPage());\r\n        document.getElementById('nextPage').addEventListener('click', () => this.nextPage());\r\n        \r\n        \/\/ Keyboard navigation\r\n        document.addEventListener('keydown', (e) => {\r\n            if (e.key === 'ArrowLeft') this.previousPage();\r\n            if (e.key === 'ArrowRight') this.nextPage();\r\n        });\r\n    }\r\n    \r\n    updatePage() {\r\n        if (this.isAnimating) return;\r\n        \r\n        this.isAnimating = true;\r\n        \r\n        this.pages.forEach((page, index) => {\r\n            const pageNumber = index + 1;\r\n            page.classList.remove('active', 'next');\r\n            \r\n            if (pageNumber === this.currentPage) {\r\n                page.classList.add('active');\r\n            } else if (pageNumber > this.currentPage) {\r\n                page.classList.add('next');\r\n            }\r\n        });\r\n        \r\n        this.updatePageInfo();\r\n        this.updateControls();\r\n        \r\n        \/\/ Reset animation flag\r\n        setTimeout(() => {\r\n            this.isAnimating = false;\r\n        }, 800);\r\n    }\r\n    \r\n    updatePageInfo() {\r\n        document.getElementById('currentPage').textContent = this.currentPage;\r\n        document.getElementById('totalPages').textContent = this.totalPages;\r\n    }\r\n    \r\n    updateControls() {\r\n        const prevBtn = document.getElementById('prevPage');\r\n        const nextBtn = document.getElementById('nextPage');\r\n        \r\n        prevBtn.disabled = this.currentPage === 1;\r\n        nextBtn.disabled = this.currentPage === this.totalPages;\r\n    }\r\n    \r\n    nextPage() {\r\n        if (this.currentPage < this.totalPages && !this.isAnimating) {\r\n            this.currentPage++;\r\n            this.updatePage();\r\n        }\r\n    }\r\n    \r\n    previousPage() {\r\n        if (this.currentPage > 1 && !this.isAnimating) {\r\n            this.currentPage--;\r\n            this.updatePage();\r\n        }\r\n    }\r\n}\r\n\r\n\/\/ Initialize PDF Viewer\r\ndocument.addEventListener('DOMContentLoaded', () => {\r\n    const pdfViewer = new PDFViewer();\r\n});<\/script>\r\n<\/body>\r\n<\/html>\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t\t\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>&nbsp; VALOstones First Annual Meeting September 27, 2024 \u2022 Udine, Italy Page 1 1 \/ &#8212; VALOstones First Annual Meeting We are thrilled to share highlights from the VALOstones First &hellip;<\/p>\n<p class=\"read-more\"> <a class=\"\" href=\"http:\/\/valostones.com\/fr\/first-annual-meeting\/\"> <span class=\"screen-reader-text\">La premi\u00e8re r\u00e9union annelle<\/span> Lire la suite\u00a0\u00bb<\/a><\/p>","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_piecal_is_event":false,"_piecal_start_date":"","_piecal_end_date":"","_piecal_is_allday":false,"site-sidebar-layout":"no-sidebar","site-content-layout":"page-builder","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","theme-transparent-header-meta":"default","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","footnotes":""},"class_list":["post-4761","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"http:\/\/valostones.com\/fr\/wp-json\/wp\/v2\/pages\/4761","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/valostones.com\/fr\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"http:\/\/valostones.com\/fr\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"http:\/\/valostones.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/valostones.com\/fr\/wp-json\/wp\/v2\/comments?post=4761"}],"version-history":[{"count":53,"href":"http:\/\/valostones.com\/fr\/wp-json\/wp\/v2\/pages\/4761\/revisions"}],"predecessor-version":[{"id":5331,"href":"http:\/\/valostones.com\/fr\/wp-json\/wp\/v2\/pages\/4761\/revisions\/5331"}],"wp:attachment":[{"href":"http:\/\/valostones.com\/fr\/wp-json\/wp\/v2\/media?parent=4761"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}