{"id":13320,"date":"2025-06-13T10:15:31","date_gmt":"2025-06-13T10:15:31","guid":{"rendered":"https:\/\/infinity-veranda.nl\/?page_id=13320"},"modified":"2025-06-19T14:44:22","modified_gmt":"2025-06-19T14:44:22","slug":"galerij","status":"publish","type":"page","link":"https:\/\/infinity-veranda.nl\/?page_id=13320","title":{"rendered":"Galerij"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"13320\" class=\"elementor elementor-13320\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3f8fe68 e-flex e-con-boxed e-con e-parent\" data-id=\"3f8fe68\" data-element_type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e59adb9 elementor-widget elementor-widget-html\" data-id=\"e59adb9\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!DOCTYPE html>\r\n<html lang=\"nl\">\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>Galerij - Infinity Veranda<\/title>\r\n    <script src=\"https:\/\/cdn.tailwindcss.com\"><\/script>\r\n    <script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/gsap\/3.12.5\/gsap.min.js\"><\/script>\r\n    <script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/gsap\/3.12.5\/ScrollTrigger.min.js\"><\/script>\r\n    <style>\r\n        .glass-tab {\r\n            background: rgba(255, 255, 255, 0.2);\r\n            backdrop-filter: blur(10px);\r\n            border: 1px solid rgba(255, 255, 255, 0.3);\r\n            transition: all 0.3s ease;\r\n        }\r\n        .glass-tab:hover {\r\n            background: rgba(255, 255, 255, 0.3);\r\n            transform: translateY(-2px);\r\n        }\r\n        .glass-tab.active {\r\n            background: rgba(59, 130, 246, 0.8);\r\n            color: white;\r\n            border-color: rgba(59, 130, 246, 1);\r\n        }\r\n        .section-gradient {\r\n            background: linear-gradient(to bottom, #ffffff, #f9fafb);\r\n        }\r\n        .photo-card {\r\n            overflow: hidden;\r\n            transition: transform 0.4s ease;\r\n            aspect-ratio: 4 \/ 3;\r\n            cursor: pointer;\r\n        }\r\n        .photo-card:hover {\r\n            transform: scale(1.05);\r\n        }\r\n        .photo-card img {\r\n            width: 100%;\r\n            height: 100%;\r\n            object-fit: cover;\r\n            transition: transform 0.6s ease;\r\n        }\r\n        .photo-card:hover img {\r\n            transform: scale(1.1);\r\n        }\r\n        .modal {\r\n            display: none;\r\n            position: fixed;\r\n            top: 0;\r\n            left: 0;\r\n            width: 100%;\r\n            height: 100%;\r\n            background: rgba(0, 0, 0, 0.8);\r\n            z-index: 1000;\r\n            justify-content: center;\r\n            align-items: center;\r\n            opacity: 0;\r\n        }\r\n        .modal.active {\r\n            display: flex;\r\n            opacity: 1;\r\n        }\r\n        .modal img {\r\n            max-width: 90%;\r\n            max-height: 90%;\r\n            border-radius: 8px;\r\n            box-shadow: 0 10px 20px rgba(0, 0, 0, 0.3);\r\n        }\r\n        .modal .close {\r\n            position: absolute;\r\n            top: 20px;\r\n            right: 20px;\r\n            color: white;\r\n            font-size: 2rem;\r\n            cursor: pointer;\r\n            transition: color 0.3s ease;\r\n        }\r\n        .modal .close:hover {\r\n            color: #3b82f6;\r\n        }\r\n    <\/style>\r\n<\/head>\r\n<body class=\"bg-white font-sans\">\r\n    <section class=\"section-gradient py-24 text-gray-800\">\r\n        <div class=\"w-full px-4 md:px-8\">\r\n            <h1 class=\"text-4xl md:text-6xl font-extrabold text-center mb-12 opacity-0\" data-animate-title>Onze Galerij<\/h1>\r\n            <div class=\"flex justify-center gap-4 mb-12 flex-wrap\">\r\n                <button class=\"glass-tab px-6 py-3 rounded-lg text-lg font-semibold active\" data-tab=\"verandas\" data-animate-tab>Veranda\u2019s<\/button>\r\n                <button class=\"glass-tab px-6 py-3 rounded-lg text-lg font-semibold\" data-tab=\"schuifwanden\" data-animate-tab>Glazen Schuifwanden<\/button>\r\n                <button class=\"glass-tab px-6 py-3 rounded-lg text-lg font-semibold\" data-tab=\"carports\" data-animate-tab>Carports<\/button>\r\n                <button class=\"glass-tab px-6 py-3 rounded-lg text-lg font-semibold\" data-tab=\"overkappingen\" data-animate-tab>Overkappingen<\/button>\r\n            <\/div>\r\n            <div id=\"gallery-content\" class=\"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-8\">\r\n                <!-- Veranda\u2019s Photos -->\r\n                <div class=\"photo-card rounded-2xl shadow-xl opacity-0 translate-y-12 verandas\" data-animate-photo data-src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/stunning-ultra-glass-roof-garden-veranda.jpg\">\r\n                    <img decoding=\"async\" src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/stunning-ultra-glass-roof-garden-veranda.jpg\" alt=\"Veranda 1\">\r\n                <\/div>\r\n                <div class=\"photo-card rounded-2xl shadow-xl opacity-0 translate-y-12 verandas\" data-animate-photo data-src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/gardendreams-flatroof-veranda-tuinkamer-avond-1_2.jpg\">\r\n                    <img decoding=\"async\" src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/gardendreams-flatroof-veranda-tuinkamer-avond-1_2.jpg\" alt=\"Veranda 2\">\r\n                <\/div>\r\n                <div class=\"photo-card rounded-2xl shadow-xl opacity-0 translate-y-12 verandas\" data-animate-photo data-src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/02_Verasol2_ShotbyKasvanvliet.eu_June-04-2024__DSF8770-scaled.jpg\">\r\n                    <img decoding=\"async\" src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/02_Verasol2_ShotbyKasvanvliet.eu_June-04-2024__DSF8770-scaled.jpg\" alt=\"Veranda 3\">\r\n                <\/div>\r\n                <div class=\"photo-card rounded-2xl shadow-xl opacity-0 translate-y-12 verandas\" data-animate-photo data-src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/IMG_5123-1-1024x576-1.jpg\">\r\n                    <img decoding=\"async\" src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/IMG_5123-1-1024x576-1.jpg\" alt=\"Veranda 4\">\r\n                <\/div>\r\n                <!-- Glazen Schuifwanden Photos -->\r\n                <div class=\"photo-card rounded-2xl shadow-xl opacity-0 translate-y-12 schuifwanden hidden\" data-animate-photo data-src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/Jost.jpg\">\r\n                    <img decoding=\"async\" src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/Jost.jpg\" alt=\"Schuifwand 1\">\r\n                <\/div>\r\n                <div class=\"photo-card rounded-2xl shadow-xl opacity-0 translate-y-12 schuifwanden hidden\" data-animate-photo data-src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/IMG-20250512-WA0069.jpg\">\r\n                    <img decoding=\"async\" src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/IMG-20250512-WA0069.jpg\" alt=\"Schuifwand 2\">\r\n                <\/div>\r\n                <div class=\"photo-card rounded-2xl shadow-xl opacity-0 translate-y-12 schuifwanden hidden\" data-animate-photo data-src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/IMG-20250512-WA0070.jpg\">\r\n                    <img decoding=\"async\" src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/IMG-20250512-WA0070.jpg\" alt=\"Schuifwand 3\">\r\n                <\/div>\r\n                <div class=\"photo-card rounded-2xl shadow-xl opacity-0 translate-y-12 schuifwanden hidden\" data-animate-photo data-src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/IMG-20250512-WA0072.jpg\">\r\n                    <img decoding=\"async\" src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/IMG-20250512-WA0072.jpg\" alt=\"Schuifwand 4\">\r\n                <\/div>\r\n                <!-- Carports Photos -->\r\n                <div class=\"photo-card rounded-2xl shadow-xl opacity-0 translate-y-12 carports hidden\" data-animate-photo data-src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/123polycarbonaat-aluminium-overkapping-veranda-ser-1.jpg\">\r\n                    <img decoding=\"async\" src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/123polycarbonaat-aluminium-overkapping-veranda-ser-1.jpg\" alt=\"Carport 1\">\r\n                <\/div>\r\n                <div class=\"photo-card rounded-2xl shadow-xl opacity-0 translate-y-12 carports hidden\" data-animate-photo data-src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/123polycarbonaat-aluminium-overkapping-veranda-ser.jpg\">\r\n                    <img decoding=\"async\" src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/123polycarbonaat-aluminium-overkapping-veranda-ser.jpg\" alt=\"Carport 2\">\r\n                <\/div>\r\n                <div class=\"photo-card rounded-2xl shadow-xl opacity-0 translate-y-12 carports hidden\" data-animate-photo data-src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/IMG_6568-scaled-1.jpg\">\r\n                    <img decoding=\"async\" src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/IMG_6568-scaled-1.jpg\" alt=\"Carport 3\">\r\n                <\/div>\r\n                <div class=\"photo-card rounded-2xl shadow-xl opacity-0 translate-y-12 carports hidden\" data-animate-photo data-src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/Johan.jpeg\">\r\n                    <img decoding=\"async\" src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/Johan.jpeg\" alt=\"Carport 4\">\r\n                <\/div>\r\n                <!-- Overkappingen Photos -->\r\n                <div class=\"photo-card rounded-2xl shadow-xl opacity-0 translate-y-12 overkappingen hidden\" data-animate-photo data-src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/aluminium-overkapping-plat-dak-met-dakoverstek_1__1_.webp\">\r\n                    <img decoding=\"async\" src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/aluminium-overkapping-plat-dak-met-dakoverstek_1__1_.webp\" alt=\"Overkapping 1\">\r\n                <\/div>\r\n                <div class=\"photo-card rounded-2xl shadow-xl opacity-0 translate-y-12 overkappingen hidden\" data-animate-photo data-src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/04-jvt-square-overkapping-jonker-verandas-1.jpg\">\r\n                    <img decoding=\"async\" src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/04-jvt-square-overkapping-jonker-verandas-1.jpg\" alt=\"Overkapping 2\">\r\n                <\/div>\r\n                <div class=\"photo-card rounded-2xl shadow-xl opacity-0 translate-y-12 overkappingen hidden\" data-animate-photo data-src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/04-jvt-square-overkapping-jonker-verandas.jpg\">\r\n                    <img decoding=\"async\" src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/04-jvt-square-overkapping-jonker-verandas.jpg\" alt=\"Overkapping 3\">\r\n                <\/div>\r\n                <div class=\"photo-card rounded-2xl shadow-xl opacity-0 translate-y-12 overkappingen hidden\" data-animate-photo data-src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/IMG-20250512-WA0064.jpg\">\r\n                    <img decoding=\"async\" src=\"https:\/\/infinity-veranda.nl\/wp-content\/uploads\/2025\/05\/IMG-20250512-WA0064.jpg\" alt=\"Overkapping 4\">\r\n                <\/div>\r\n            <\/div>\r\n        <\/div>\r\n    <\/section>\r\n\r\n    <!-- Modal for Photo Preview -->\r\n    <div id=\"photo-modal\" class=\"modal\">\r\n        <span class=\"close\">&times;<\/span>\r\n        <img decoding=\"async\" id=\"modal-image\" src=\"\" alt=\"Preview\">\r\n    <\/div>\r\n\r\n    <section class=\"py-20 bg-gray-50 text-center\">\r\n        <div class=\"w-full px-4 md:px-8\">\r\n            <div class=\"text-gray-800 opacity-0 translate-y-12\" data-animate-box>\r\n                <p class=\"mb-3 text-lg\"><strong>\ud83d\udccd Adres:<\/strong> Thaliastraat 1, 5631HT Eindhoven<\/p>\r\n                <p class=\"mb-3 text-lg\"><strong>\ud83d\udcde Telefoon:<\/strong> 06 84566158<\/p>\r\n                <p class=\"mb-3 text-lg\"><strong>\u2709\ufe0f E-mail:<\/strong> <a href=\"mailto:info@infinity-veranda.nl\" class=\"text-blue-600 hover:underline\">info@infinity-veranda.nl<\/a><\/p>\r\n            <\/div>\r\n        <\/div>\r\n    <\/section>\r\n\r\n    <script>\r\n        \/\/ GSAP Animations\r\n        gsap.registerPlugin(ScrollTrigger);\r\n\r\n        \/\/ Title animation\r\n        gsap.fromTo(\"[data-animate-title]\", \r\n            { opacity: 0, y: 30 },\r\n            { opacity: 1, y: 0, duration: 1, ease: \"power3.out\", scrollTrigger: { trigger: \"[data-animate-title]\", start: \"top 85%\" } }\r\n        );\r\n\r\n        \/\/ Tab animations\r\n        gsap.fromTo(\"[data-animate-tab]\", \r\n            { opacity: 0, y: 20 },\r\n            { opacity: 1, y: 0, duration: 0.8, ease: \"power3.out\", stagger: 0.1, scrollTrigger: { trigger: \"[data-animate-tab]\", start: \"top 85%\" } }\r\n        );\r\n\r\n        \/\/ Photo animations\r\n        function animatePhotos() {\r\n            gsap.fromTo(\"[data-animate-photo]:not(.hidden)\", \r\n                { opacity: 0, y: 50 },\r\n                { opacity: 1, y: 0, duration: 0.8, ease: \"power3.out\", stagger: 0.15 }\r\n            );\r\n        }\r\n\r\n        \/\/ Initial animation for Veranda\u2019s photos\r\n        animatePhotos();\r\n\r\n        \/\/ Tab switching logic\r\n        const tabs = document.querySelectorAll(\"[data-tab]\");\r\n        const photos = document.querySelectorAll(\"[data-animate-photo]\");\r\n\r\n        tabs.forEach(tab => {\r\n            tab.addEventListener(\"click\", () => {\r\n                \/\/ Remove active class from all tabs\r\n                tabs.forEach(t => t.classList.remove(\"active\"));\r\n                \/\/ Add active class to clicked tab\r\n                tab.classList.add(\"active\");\r\n\r\n                \/\/ Hide all photos\r\n                photos.forEach(photo => {\r\n                    photo.classList.add(\"hidden\");\r\n                    photo.style.opacity = 0;\r\n                    photo.style.transform = \"translateY(50px)\";\r\n                });\r\n\r\n                \/\/ Show photos for the selected tab\r\n                const selectedTab = tab.getAttribute(\"data-tab\");\r\n                document.querySelectorAll(`.${selectedTab}`).forEach(photo => {\r\n                    photo.classList.remove(\"hidden\");\r\n                });\r\n\r\n                \/\/ Animate visible photos\r\n                animatePhotos();\r\n            });\r\n        });\r\n\r\n        \/\/ Modal logic\r\n        const modal = document.getElementById(\"photo-modal\");\r\n        const modalImage = document.getElementById(\"modal-image\");\r\n        const closeBtn = document.querySelector(\".modal .close\");\r\n\r\n        photos.forEach(photo => {\r\n            photo.addEventListener(\"click\", () => {\r\n                modalImage.src = photo.getAttribute(\"data-src\");\r\n                modal.classList.add(\"active\");\r\n                gsap.fromTo(modal, \r\n                    { opacity: 0, scale: 0.8 },\r\n                    { opacity: 1, scale: 1, duration: 0.5, ease: \"power3.out\" }\r\n                );\r\n            });\r\n        });\r\n\r\n        closeBtn.addEventListener(\"click\", () => {\r\n            gsap.to(modal, {\r\n                opacity: 0,\r\n                scale: 0.8,\r\n                duration: 0.5,\r\n                ease: \"power3.in\",\r\n                onComplete: () => modal.classList.remove(\"active\")\r\n            });\r\n        });\r\n\r\n        modal.addEventListener(\"click\", (e) => {\r\n            if (e.target === modal) {\r\n                gsap.to(modal, {\r\n                    opacity: 0,\r\n                    scale: 0.8,\r\n                    duration: 0.5,\r\n                    ease: \"power3.in\",\r\n                    onComplete: () => modal.classList.remove(\"active\")\r\n                });\r\n            }\r\n        });\r\n\r\n        \/\/ Contact section animation\r\n        gsap.fromTo(\"[data-animate-box]\", \r\n            { opacity: 0, y: 50 },\r\n            { opacity: 1, y: 0, duration: 0.8, ease: \"power3.out\", scrollTrigger: { trigger: \"[data-animate-box]\", start: \"top 85%\" } }\r\n        );\r\n    <\/script>\r\n<\/body>\r\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>Galerij &#8211; Infinity Veranda Onze Galerij Veranda\u2019s Glazen Schuifwanden Carports Overkappingen &times; \ud83d\udccd Adres: Thaliastraat 1, 5631HT Eindhoven \ud83d\udcde Telefoon: 06 84566158 \u2709\ufe0f E-mail: info@infinity-veranda.nl<\/p>\n","protected":false},"author":2,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"template-home.php","meta":{"footnotes":""},"class_list":["post-13320","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/infinity-veranda.nl\/index.php?rest_route=\/wp\/v2\/pages\/13320","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/infinity-veranda.nl\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/infinity-veranda.nl\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/infinity-veranda.nl\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/infinity-veranda.nl\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=13320"}],"version-history":[{"count":10,"href":"https:\/\/infinity-veranda.nl\/index.php?rest_route=\/wp\/v2\/pages\/13320\/revisions"}],"predecessor-version":[{"id":13399,"href":"https:\/\/infinity-veranda.nl\/index.php?rest_route=\/wp\/v2\/pages\/13320\/revisions\/13399"}],"wp:attachment":[{"href":"https:\/\/infinity-veranda.nl\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=13320"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}