PageSourceSearch

https://www.galeriethomasschulte.com/store/basket/

html galeriethomasschulte.com collected 2026-10-02 19:31:39 UTC 70,293 bytes, 1,428 lines download raw bytes

1
2
3
4                        
5    <!DOCTYPE html>
6    <!-- Site by Artlogic - https://artlogic.net -->
7    <html lang="en">
8        <head>
9            <meta charset="utf-8">
10            
10<script>
11            /* Artlogic deterministic page-ready signal (see e2e/ + pageload perf notes).
12               Installs a default window.modulesReady that latches window.__artlogicReady,
13               adds a `modules-ready` class to <html>/<body>, and dispatches `artlogic:ready`
14               exactly once. Themes may still wrap window.modulesReady (prevReady pattern);
15               their wrapper chains through to this. All gallery JS loader paths converge on
16               window.modulesReady(); the legacy galleries.js now calls it after init too. */
17            (function () {
18                var prev = window.modulesReady;
19                window.modulesReady = function () {
20                    if (typeof prev === 'function') { try { prev(); } catch (e) {} }
21                    if (window.__artlogicReady) { return; }
22                    window.__artlogicReady = true;
23                    try { document.documentElement.className += ' modules-ready'; } catch (e) {}
24                    try { if (document.body) { document.body.className += ' modules-ready'; } } catch (e) {}
25                    try { document.dispatchEvent(new CustomEvent('artlogic:ready')); } catch (e) {}
26                };
27            })();
28            </script>
28
29            <title>Store | Galerie Thomas Schulte</title>
30        <meta property="og:site_name" content="Galerie Thomas Schulte" />
31        <meta property="og:title" content="Store" />
32        <meta property="og:description" content="Shopping basket" />
33        <meta property="og:image" content="" />
34        <meta property="og:image:width" content="" />
35        <meta property="og:image:height" content="" />
36        <meta property="twitter:card" content="summary_large_image">
37        <meta property="twitter:url" content="https://www.galeriethomasschulte.com/store/basket/">
38        <meta property="twitter:title" content="Store">
39        <meta property="twitter:description" content="Shopping basket">
40        <meta property="twitter:text:description" content="Shopping basket">
41        <meta property="twitter:image" content="">
42        <link rel="canonical" href="https://www.galeriethomasschulte.com/store/" />
43        <meta name="google" content="notranslate" />
44            <meta name="description" content="Shopping basket" />
45            <meta name="publication_date" content="2026-10-02 19:31:39" />
46            <meta name="generator" content="Artlogic CMS - https://artlogic.net" />
47            
48            <meta name="accessibility_version" content="1.0"/>
49            
50            
51                <meta name="viewport" content="width=device-width, minimum-scale=0.5, initial-scale=1.0" />
52
53            
54
55<link rel="icon" href="/usr/images/preferences/1675334566.ico" type="image/x-icon" />
56<link rel="shortcut icon" href="/usr/images/preferences/1675334566.ico" type="image/x-icon" />
57
58<meta name="application-name" content="Galerie Thomas Schulte"/>
59<meta name="msapplication-TileColor" content="#ffffff"/>
60            
61            <link rel="alternate" hreflang="en" href="https://www.galeriethomasschulte.com/store/basket/" />
62<link rel="alternate" hreflang="cn" href="https://www.galeriethomasschulte.com/cn/store/basket/" />
63            
64                <link rel="stylesheet" media="print" href="/lib/g/2.0/styles/print.css">
65                <link rel="stylesheet" media="print" href="/styles/print.css">
66
67            
67<script src="/lib/js/datadog-logs/datadog-logs.js" type="text/javascript"></script>
vendor: 1 bytes, line 67
67
68<script>
69try {
70    function checkStatisticsCookiePreference() {
71        // Get the cookie_preferences item from localStorage
72        const cookiePreferences = localStorage.getItem('cookie_preferences');
73
74        // Check if the item exists
75        if (!cookiePreferences) {
76            console.log('No cookie_preferences found in localStorage');
77            return false;
78        }
79
80        // Parse the JSON string
81        const preferences = JSON.parse(cookiePreferences);
82
83        // Check if statistics is set to true
84        const statisticsEnabled = preferences?.statistics === true;
85
86        console.debug('Statistics enabled:', statisticsEnabled);
87        return statisticsEnabled;
88    }
89
90    // Usage
91    const hasStatistics = checkStatisticsCookiePreference();
92
93    if (hasStatistics) {
94        // --- Check for artlogic_id cookie ---
95        const artlogicIdSet = document.cookie
96            .split('; ')
97            .some(cookie => cookie.startsWith('artlogic_id='));
98
99        console.debug('artlogic_id cookie set:', artlogicIdSet);
100
101        if (artlogicIdSet) {
102            window.DD_LOGS && window.DD_LOGS.init({
103                // TODO add proxy?
104                clientToken: 'pub0866d56abaa16869f0d9bb4a3c7da950',
105                site: 'datadoghq.eu',
106                forwardConsoleLogs: ["error"],
107                forwardErrorsToLogs: true,
108                service: 'artlogiccms',
109                // version: '1.3.4',  // TODO implement versioning in future.
110                sessionSampleRate: 100,
111                trackSessionAcrossSubdomains: true
112            });
113
114                window.DD_LOGS && window.DD_LOGS.setGlobalContextProperty('site', 'galeriethomasschulte'.toLowerCase())
115
116                window.DD_LOGS && window.DD_LOGS.setGlobalContextProperty('hostname', 'web-eu-021'.toLowerCase())
117
118            // report any missing JS files
119            window.addEventListener('error', function(event) {
120                // Filter out standard JS runtime execution errors
121                if (event.target && event.target.tagName === 'SCRIPT') {
122                    window.DD_LOGS && window.DD_LOGS.logger.error(
123                        'A script failed to load: ' + (event.target?.src || event.target?.href),
124                        {'script': (event.target?.src || event.target?.href)}
125                    )
126                }
127            }, true); // The 'true' flag activates the capturing phase
128        }
129    }
130} catch (error) {
131    console.error(error);
132}
133</script>
133
134
135            
136
137            
137<script>
138            (window.Promise && window.Array.prototype.find) || document.write('
138<script src="/lib/js/polyfill/polyfill_es6.min.js"><\/script>');
139            </script>
139
140
141                
141<script src="https://js.stripe.com/v3/" async></script>
141
142
143            
144		<link data-context="helper" rel="stylesheet" type="text/css" href="/lib/webfonts/font-awesome/font-awesome-4.6.3/css/font-awesome.min.css?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"/>
145		<link data-context="helper" rel="stylesheet" type="text/css" href="/lib/archimedes/styles/archimedes-frontend-core.css?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"/>
146		<link data-context="helper" rel="stylesheet" type="text/css" href="/lib/archimedes/styles/accessibility.css?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"/>
147		<link data-context="helper" rel="stylesheet" type="text/css" href="/lib/jquery/3.7.1/plugins/jquery.archimedes-frontend-core-plugins-0.1.css?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"/>
148		<link data-context="helper" rel="stylesheet" type="text/css" href="/lib/jquery/3.7.1/plugins/fancybox-2.1.3/jquery.fancybox.css?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"/>
149		<link data-context="helper" rel="stylesheet" type="text/css" href="/lib/jquery/3.7.1/plugins/fancybox-2.1.3/jquery.fancybox.artlogic.css?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"/>
150		<link data-context="helper" rel="stylesheet" type="text/css" href="/lib/jquery/3.7.1/plugins/slick-1.8.1/slick.css?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"/>
151		<link data-context="helper" rel="stylesheet" type="text/css" href="/lib/jquery/plugins/roomview/1.0/jquery.roomview.1.0.css?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"/>
152		<link data-context="helper" rel="stylesheet" type="text/css" href="/lib/jquery/plugins/pageload/1.1/jquery.pageload.1.1.css?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"/>
153		<link data-context="helper" rel="stylesheet" type="text/css" href="/lib/jquery/plugins/augmented_reality/1.0/jquery.augmented_reality.1.0.css?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"/>
154		<link data-context="helper" rel="stylesheet" type="text/css" href="/lib/g/themes/boilerplate/2.0/styles/theme_vars.css?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"/>
155		<link data-context="helper" rel="stylesheet" type="text/css" href="/core/dynamic_base.css?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"/>
156		<link data-context="helper" rel="stylesheet" type="text/css" href="/core/dynamic_main.css?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"/>
157		<link data-context="helper" rel="stylesheet" type="text/css" href="/core/user_custom.css?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"/>
158		<link data-context="helper" rel="stylesheet" type="text/css" href="/core/dynamic_responsive.css?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"/>
159		<link data-context="helper" rel="stylesheet" type="text/css" href="/lib/webfonts/artlogic-site-icons/artlogic-site-icons-1.0/artlogic-site-icons.css?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"/>
160		<link data-context="helper" rel="stylesheet" type="text/css" href="/lib/jquery/plugins/plyr/3.5.10/plyr.css?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"/>
161<!-- add crtical css to improve performance -->
162		
162<script>window.ARTLOGIC_ASSET_SUFFIX="_ver_c6060632afvd27b280g2a0c163abd9c387e11f3ea239c6f26d8";</script>
162
163		
163<script data-context="helper"  src="/lib/g/2.0/scripts/import_helpers.js"></script>
163
164		
164<script data-context="helper"  src="/lib/jquery/3.7.1/jquery-3.7.1.min.js?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"></script>
164
165		
165<script data-context="helper" defer src="/lib/g/2.0/scripts/webpack_import_helpers.js?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"></script>
165
166		
166<script data-context="helper" defer src="/lib/jquery/3.7.1/plugins/jquery.compat.selector.js?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"></script>
166
167		
167<script data-context="helper" defer src="/lib/jquery/1.12.4/plugins/jquery.browser.min.js?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"></script>
167
168		
168<script data-context="helper" defer src="/lib/jquery/1.12.4/plugins/jquery.easing.min.js?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"></script>
168
169		
169<script data-context="helper" defer src="/lib/jquery/1.12.4/plugins/jquery.archimedes-frontend-core-plugins-0.1.js?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"></script>
169
170		
170<script data-context="helper" defer src="/lib/jquery/1.12.4/plugins/jquery.fitvids.js?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"></script>
170
171		
171<script data-context="helper" defer src="/core/dynamic.js?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"></script>
171
172		
172<script data-context="helper" defer src="/lib/archimedes/scripts/archimedes-frontend-core.js?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"></script>
172
173		
173<script data-context="helper" defer src="/lib/archimedes/scripts/archimedes-frontend-modules.js?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"></script>
173
174		
174<script data-context="helper" type="module"  traceurOptions="--async-functions" src="/lib/g/2.0/scripts/galleries_js_loader__mjs.js?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"></script>
174
175		
175<script data-context="helper" defer src="/lib/g/2.0/scripts/feature_panels.js?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"></script>
175
176		
176<script data-context="helper" defer src="/lib/g/themes/boilerplate/2.0/scripts/script.js?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"></script>
176
177		
177<script data-context="helper" defer src="/lib/archimedes/scripts/shop.js?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"></script>
177
178		
178<script data-context="helper" defer src="/lib/archimedes/scripts/recaptcha.js?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"></script>
178
179		
179<script data-context="helper" defer src="/scripts/splide/splide.min.js?c=6060632af&v=d27b280&g=2a0c163abd9c387e11f3ea239c6f26d8"></script>
179
180            
181            
182                
183
184
185    
185<script>
186        function get_cookie_preference(category) {
187            result = false;
188            try {
189                var cookie_preferences = localStorage.getItem('cookie_preferences') || "";
190                if (cookie_preferences) {
191                    cookie_preferences = JSON.parse(cookie_preferences);
192                    if (cookie_preferences.date) {
193                        var expires_on = new Date(cookie_preferences.date);
194                        expires_on.setDate(expires_on.getDate() + 365);
195                        console.log('cookie preferences expire on', expires_on.toISOString());
196                        var valid = expires_on > new Date();
197                        if (valid && cookie_preferences.hasOwnProperty(category) && cookie_preferences[category]) {
198                            result = true;
199                        }
200                    }
201                }
202            }
203            catch(e) {
204                console.warn('get_cookie_preference() failed');
205                return result;
206            }
207            return result;
208        }
209
210        window.google_analytics_init = function(page){
211            var collectConsent = true;
212            var useConsentMode = false;
213            var analyticsProperties = ['UA-79617111-1', 'G-YEBEY738RW'];
214            var analyticsCookieType = 'statistics';
215            var disableGa = false;
216            var sendToArtlogic = true;
217            var artlogicProperties = {
218                'UA': 'UA-157296318-1',
219                'GA': 'G-GLQ6WNJKR5',
220            };
221
222            analyticsProperties = analyticsProperties.concat(Object.values(artlogicProperties));
223
224            var uaAnalyticsProperties = analyticsProperties.filter((p) => p.startsWith('UA-'));
225            var ga4AnalyticsProperties = analyticsProperties.filter((p) => p.startsWith('G-')).concat(analyticsProperties.filter((p) => p.startsWith('AW-')));
226
227            if (collectConsent) {
228                disableGa = !get_cookie_preference(analyticsCookieType);
229
230                for (var i=0; i < analyticsProperties.length; i++){
231                    var key = 'ga-disable-' + analyticsProperties[i];
232
233                    window[key] = disableGa;
234                }
235
236                if (disableGa) {
237                    if (document.cookie.length) {
238                        var cookieList = document.cookie.split(/; */);
239
240                        for (var i=0; i < cookieList.length; i++) {
241                            var splitCookie = cookieList[i].split('='); //this.split('=');
242
243                            if (splitCookie[0].indexOf('_ga') == 0 || splitCookie[0].indexOf('_gid') == 0 || splitCookie[0].indexOf('__utm') == 0) {
244                                //h.deleteCookie(splitCookie[0]);
245                                var domain = location.hostname;
246                                var cookie_name = splitCookie[0];
247                                document.cookie =
248                                    cookie_name + "=" + ";path=/;domain="+domain+";expires=Thu, 01 Jan 1970 00:00:01 GMT";
249                                // now delete the version without a subdomain
250                                domain = domain.split('.');
251                                domain.shift();
252                                domain = domain.join('.');
253                                document.cookie =
254                                    cookie_name + "=" + ";path=/;domain="+domain+";expires=Thu, 01 Jan 1970 00:00:01 GMT";
255                            }
256                        }
257                    }
258                }
259            }
260
261            if (uaAnalyticsProperties.length) {
262                (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
263                (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
264                m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
265                })(window,document,'script','//www.google-analytics.com/analytics.js','ga');
266
267
268                if (!disableGa) {
269                    var anonymizeIps = false;
270
271                    for (var i=0; i < uaAnalyticsProperties.length; i++) {
272                        var propertyKey = '';
273
274                        if (i > 0) {
275                            propertyKey = 'tracker' + String(i + 1);
276                        }
277
278                        var createArgs = [
279                            'create',
280                            uaAnalyticsProperties[i],
281                            'auto',
282                        ];
283
284                        if (propertyKey) {
285                            createArgs.push({'name': propertyKey});
286                        }
287
288                        ga.apply(null, createArgs);
289
290                        if (anonymizeIps) {
291                            ga('set', 'anonymizeIp', true);
292                        }
293
294                        var pageViewArgs = [
295                            propertyKey ? propertyKey + '.send' : 'send',
296                            'pageview'
297                        ]
298
299                        if (page) {
300                            pageViewArgs.push(page)
301                        }
302
303                        ga.apply(null, pageViewArgs);
304                    }
305
306                    if (sendToArtlogic) {
307                        ga('create', 'UA-157296318-1', 'auto', {'name': 'artlogic_tracker'});
308
309                        if (anonymizeIps) {
310                            ga('set', 'anonymizeIp', true);
311                        }
312
313                        var pageViewArgs = [
314                            'artlogic_tracker.send',
315                            'pageview'
316                        ]
317
318                        if (page) {
319                            pageViewArgs.push(page)
320                        }
321
322                        ga.apply(null, pageViewArgs);
323                    }
324                }
325            }
326
327            if (ga4AnalyticsProperties.length) {
328                if (!disableGa || useConsentMode) {
329                    (function(d, script) {
330                        script = d.createElement('script');
331                        script.type = 'text/javascript';
332                        script.async = true;
333                        script.src = 'https://www.googletagmanager.com/gtag/js?i
333d=' + ga4AnalyticsProperties[0];
334                        d.getElementsByTagName('head')[0].appendChild(script);
335                    }(document));
336
337                    window.dataLayer = window.dataLayer || [];
338                    window.gtag = function (){dataLayer.push(arguments);}
339                    window.gtag('js', new Date());
340
341                    if (useConsentMode) {
342                        gtag('consent', 'default', {
343                            'ad_storage': 'denied',
344                            'analytics_storage': 'denied',
345                            'functionality_storage': 'denied',
346                            'personalization_storage': 'denied',
347                            'security': 'denied',
348                        });
349
350                        if (disableGa) {
351                            // If this has previously been granted, it will need set back to denied (ie on cookie change)
352                            gtag('consent', 'update', {
353                                'analytics_storage': 'denied',
354                            });
355                        } else {
356                            gtag('consent', 'update', {
357                                'analytics_storage': 'granted',
358                            });
359                        }
360                    }
361
362                    for (var i=0; i < ga4AnalyticsProperties.length; i++) {
363                        window.gtag('config', ga4AnalyticsProperties[i]);
364                    }
365
366                }
367            }
368        }
369
370        var waitForPageLoad = true;
371
372        if (waitForPageLoad) {
373            window.addEventListener('load', function() {
374                window.google_analytics_init();
375                window.archimedes.archimedes_core.analytics.init();
376            });
377        } else {
378            window.google_analytics_init();
379        }
380    </script>
380
381
382            
383            
384
385        </head>
386        
387        
388        
389        <body class="section-store page-store site-responsive responsive-top-size-1023 responsive-nav-slide-nav responsive-nav-side-position-fullscreen responsive-layout-forced-lists responsive-layout-forced-image-lists responsive-layout-forced-tile-lists analytics-track-all-links site-lib-version-2-0 scroll_sub_nav_enabled responsive_src_image_sizing hero_heading_title_position_overlay artworks_detail_ar_enabled page-param-basket page-param-type-store_type  layout-fixed-header site-type-template pageload-ajax-navigation-active layout-animation-enabled layout-lazyload-enabled" data-viewport-width="1024" data-site-name="galeriethomasschulte" data-connected-db-name="galeriethomasschulte" data-pathname="/store/basket/"
390>
391            
391<script>document.getElementsByTagName('body')[0].className+=' browser-js-enabled';</script>
391
392            
393
394
395            
396            
397
398
399
400
401
402
403        <div id="responsive_slide_nav_content_wrapper">
404                <div class="background_grid_wrapper">
405    <div class="background_grid background_grid_arches">
406        <div class="background_arch1 background_lines">
407             <svg class="svg" viewBox="0 0 418 1078" xmlns="http://www.w3.org/2000/svg">
408                <path class="path"
409                    d="M1 1078.52698V209.546959C1.01095 94.589375 94.205838 1.401241 209.16598 1.401241c114.960317 0 208.155313 93.188418 208.165979 208.146245V878.52698"
410                    stroke="#222" fill="none" fill-rule="evenodd" />
411            </svg>
412        </div>
413        <div class="background_arch2 background_lines">
414            <svg class="svg" viewBox="0 0 418 1078" xmlns="http://www.w3.org/2000/svg">
415                <path class="path path-2"
416                    d="M1 1078.52698V209.546959C1.01095 94.589375 94.205838 1.401241 209.16598 1.401241c114.960317 0 208.155313 93.188418 208.165979 208.146245V878.52698"
417                    stroke="#222" fill="none" fill-rule="evenodd" />
418            </svg>
419        </div>
420        <div class="background_arch3 background_lines">
421            <svg class="svg" viewBox="0 0 418 1078" xmlns="http://www.w3.org/2000/svg">
422                <path class="path path-3"
423                    d="M1 1078.52698V209.546959C1.01095 94.589375 94.205838 1.401241 209.16598 1.401241c114.960317 0 208.155313 93.188418 208.165979 208.146245V878.52698"
424                    stroke="#222" fill="none" fill-rule="evenodd" />
425            </svg>
426        </div>
427    </div>
428    <div class="background_grid background_grid_bg">
429        <div class="background_lines background_arch1"></div>
430        <div class="background_lines background_arch2"></div>
431        <div class="background_lines background_arch3"></div>
432    </div>
433</div>
434
435    <div id="container">
436
437        
438    
439
440
441    <div class="header-fixed-wrapper">
442    <header id="header" class="clearwithin header_fixed header_hide_border   header_layout_center">
443        <div class="inner clearwithin">
444
445            
446
447
448<div id="logo" class=" user-custom-logo-image"><a href="/">Galerie Thomas Schulte</a></div>
449
450
451            
452                <div id="skiplink-container">
453                    <div>
454                        <a href="#main_content" class="skiplink">Skip to main content</a>
455                    </div>
456                </div>
457            
458        
459            <div class="header-ui-wrapper">
460
461                    <div id="responsive_slide_nav_wrapper" class="mobile_menu_align_center" data-nav-items-animation-delay>
462                        <div id="responsive_slide_nav_wrapper_inner" data-responsive-top-size=1023>
463                        
464                            <nav id="top_nav" aria-label="Main site" class="navigation noprint clearwithin">
465                                
466<div id="top_nav_reveal" class="hidden"><ul><li><a href="#" role="button" aria-label="Close">Menu</a></li></ul></div>
467
468        <ul class="topnav">
469		<li class="topnav-filepath-artists topnav-label-artists topnav-id-11"><a href="/artists/" aria-label="Artists">Artists</a></li>
470		<li class="topnav-filepath-exhibitions topnav-label-exhibitions topnav-id-13"><a href="/exhibitions/" aria-label="Exhibitions">Exhibitions</a></li>
471		<li class="topnav-filepath-art-fairs topnav-label-art-fairs topnav-id-23"><a href="/art-fairs/" aria-label="Art Fairs">Art Fairs</a></li>
472		<li class="topnav-filepath-news topnav-label-news topnav-id-15"><a href="/news/" aria-label="News">News</a></li>
473		<li class="topnav-filepath-video topnav-label-channel topnav-id-19"><a href="/video/" aria-label="Channel">Channel</a></li>
474		<li class="topnav-filepath-about topnav-label-about topnav-id-22 last"><a href="/about/" aria-label="About">About</a></li>
475	</ul>
476
477
478                                
479                                
480
481    <div id="topnav_translations" class="navigation noprint clearwithin">
482        <ul>
483            
484            <li id="lang_nav_en" class="lang_nav_en active"  data-language="en"><a aria-label="Translate site to EN (English)" href="/store/basket/" class="no_proxy_dir_rewrite">EN</a></li>
485                
486                <li id="lang_nav_cn" class="lang_nav_cn "   data-language="en"><a aria-label="Translate site to 简体 (Chinese (Simplified))" href="/cn/store/basket/" class="no_proxy_dir_rewrite">简体</a></li>
487        </ul>
488    </div>
489
490
491                                
492                                    <div id="topnav_search" class="header_quick_search noprint">
493                                        <form method="get" action="/search/" id="topnav_search_form">
494                                            <input id="topnav_search_field" type="text" class="header_quicksearch_field inputField" aria-label="Search" data-default-value="Search" value="" name="search" />
495                                                <a href="javascript:void(0)" id="topnav_search_btn" class="header_quicksearch_btn link" aria-label="Submit search" role="button"><i class="quicksearch-icon"></i></a>
496                                            <input type="submit" class="nojsSubmit" aria-label="Submit search" value="Go" style="display: none;" />
497                                        </form>
498                                    </div>
499                            </nav>
500                        
501                        </div>
502                    </div>
503                
504
505                <div class="header-icons-wrapper  active cart-icon-active">
506                    
507                    
508                        <div id="header_quick_search" class="header_quick_search noprint header_quick_search_reveal">
509                            <form method="get" action="/search/" id="header_quicksearch_form">
510                                <input id="header_quicksearch_field" type="text" class="header_quicksearch_field inputField" aria-label="Submit" data-default-value="Search" value="" name="search" placeholder="Search" />
511                                <a href="javascript:void(0)" id="header_quicksearch_btn" class="header_quicksearch_btn link" aria-label="Submit search"><i class="quicksearch-icon"></i></a>
512                                <input type="submit" class="nojsSubmit" value="Go" aria-label="Submit search" style="display: none;" />
513                            </form>
514                        </div>
515
516                        
517
518
519
520<!--excludeindexstart-->
521<div id="store_cart_widget" class="hide_when_empty">
522    <div class="store_cart_widget_inner">
523        <div id="scw_heading"><a href="/store/basket/" class="scw_checkout_link">Cart</a></div>
524        <div id="scw_items">
525            <a href="/store/basket/" aria-label="Your store basket is empty" data-currency="&euro;">
526                <span class="scw_total_items"><span class="scw_total_count">0</span><span class="scw_total_items_text"> items</span></span>
527               
528
529                    <span class="scw_total_price">
530                        <span class="scw_total_price_currency widget_currency">&euro;</span>
531                        <span class="scw_total_price_amount widget_total_price" 
532                                data-cart_include_vat_in_price="0" 
533                                data-total_price_without_vat_in_base_currency="0" 
534                                data-total_price_with_vat_in_base_currency="0"
535                                data-conversion_rate='{"EUR": {"conversion_rate": 1.0, "name": "&euro;", "stripe_code": "eur"}}'
536                                data-count="0">
537                        </span>
538                    </span>
539      
540                
541            </a>
542        </div>
543        <div id="scw_checkout">
544            <div class="scw_checkout_button"><a href="/store/basket/" class="scw_checkout_link">Checkout</a></div>
545        </div>
546            <div id="scw_popup" class="hidden scw_popup_always_show">
547                <div id="scw_popup_inner">
548                    <h3>Item added to cart</h3>
549                    <div id="scw_popup_buttons_container">
550                        <div class="button"><a href="/store/basket/">View cart & checkout</a></div>
551                        <div id="scw_popup_close" class="link"><a href="#">Continue shopping</a></div>
552                    </div>
553                    <div class="clear"></div>
554                </div>
555            </div>
556        
557    </div>
558</div>
559<!--excludeindexend-->
560
561                    
562     
563                        <div id="slide_nav_reveal" tabindex="0" role="button">Menu</div>
564                </div>
565                
566                
567
568                
569
570    <div id="translations_nav" class="navigation noprint clearwithin">
571        <ul>
572            
573            <li id="lang_nav_en" class="lang_nav_en active"  data-language="en"><a aria-label="Translate site to EN (English)" href="/store/basket/" class="no_proxy_dir_rewrite">EN</a></li>
574                
575                <li id="lang_nav_cn" class="lang_nav_cn "   data-language="en"><a aria-label="Translate site to 简体 (Chinese (Simplified))" href="/cn/store/basket/" class="no_proxy_dir_rewrite">简体</a></li>
576        </ul>
577    </div>
578
579
580                
581
582                
583            </div>
584        </div>
585        
586
587
588
589    </header>
590    </div>
591
592
593
594        
595
596        <div id="main_content" role="main" class="clearwithin">
597            <!--contentstart-->
598            
599
600
601
602
603
604
605
606
607
608
609
610
611    <div class="subsection-store-basket">
612    <h1 class="hidden">Store</h1>
613    <div id="content_module">
614        
615
616
617    
618    <div class="currency_store_select_wrapper">
619        <div class="currency_store_selected link">
620            <span>Currency: </span>
621        </div>
622
623        <select aria-label="Currency" class="currency_store_select link" data-cart_currency="EUR">
624                
625                    <option value="EUR" data-conversion_rate="1.0" data-currency_name="&euro;" selected>&euro;  EUR</option>
626        </select>
627        <i class="fa fa-caret-down link" aria-hidden="true"></i>
628    </div>
629
630        <h2>Shopping cart</h2>
631        
632
633
634
635<div id="sc_contents_container">
636
637
638        <p>Your shopping cart is empty.</p>
639        
640
641
642    <div class="clear"></div>
643</div>
644
645<!--artlogiccms-no-search-->
646        
647<div id="basket_footer">
648    <div class="divider"></div>
649    <div id="store_payment_logos">
650        <ul>
651                <li class="wp_stripe">Powered by Stripe</li>
652                        <li class="wp_visa">visa</li>
653                        <li class="wp_mastercard">mastercard</li>
654                        <li class="wp_amex">amex</li>
655                <li class="wp_apple-pay">Apple Pay</li>
656        </ul>
657    </div>
658        <div class="divider inner"></div>
659        
660
661    
662</div>
663    </div>
664    <div id="sidebar">
665        
666
667
668
669<!--artlogiccms-no-search-->
670    </div>
671</div>
672
673
674
675
676
677
678            <!--contentend-->
679        </div>
680
681        
682
683
684            
685                
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711<div id="footer" role="contentinfo" class=" advanced_footer">
712    <div class="inner">
713        <div class="inner_grid">
714            <div class="footer_arch footer_arch1">
715                <svg width="428" height="208" viewBox="0 0 428 208" fill="none" xmlns="http://www.w3.org/2000/svg">
716                    <mask id="path-1-inside-1_2364_10802" fill="white">
717                        <path d="M0 207.005C0 92.6792 95.8111 0 214 0C332.189 0 428 92.6792 428 207.005"/>
718                    </mask>
719                    <path d="M1 207.005C1 93.2626 96.3318 1 214 1V-1C95.2904 -1 -1 92.0959 -1 207.005H1ZM214 1C331.668 1 427 93.2626 427 207.005H429C429 92.0959 332.71 -1 214 -1V1Z" fill="#E8E8E8" mask="url(#path-1-inside-1_2364_10802)"/>
720                </svg>
721
722
723            </div>
724            <div class="footer_arch footer_arch2">
725                <svg width="428" height="208" viewBox="0 0 428 208" fill="none" xmlns="http://www.w3.org/2000/svg">
726                    <path d="M1 207.005C1 93.2626 96.3318 1 214 1V-1C95.2904 -1 -1 92.0959 -1 207.005H1ZM214 1C331.668 1 427 93.2626 427 207.005H429C429 92.0959 332.71 -1 214 -1V1Z" fill="#E8E8E8" mask="url(#path-1-inside-1_2364_10802)"/>
727                </svg>
728            </div>
729            <div class="footer_arch footer_arch3">
730                <svg width="428" height="208" viewBox="0 0 428 208" fill="none" xmlns="http://www.w3.org/2000/svg">
731                    <path d="M1 207.005C1 93.2626 96.3318 1 214 1V-1C95.2904 -1 -1 92.0959 -1 207.005H1ZM214 1C331.668 1 427 93.2626 427 207.005H429C429 92.0959 332.71 -1 214 -1V1Z" fill="#E8E8E8" mask="url(#path-1-inside-1_2364_10802)"/>
732                </svg>
733            </div>
734            
735        <div class="advanced_footer_item footer_logo">
736            <div class"col1">
737                <div class="logo">
738                    <a href="/">
739                        <span class="visually-hidden">Galerie Thomas Schulte</span>
740                        <svg fill="none" height="76" viewBox="0 0 83 76" width="83" xmlns="http://www.w3.org/2000/svg"><path clip-rule="evenodd" d="m9.65255 19.3909v-9.64637h-4.37861v2.00227h2.00226v3.6979c0 1.0916-.66844 2.0636-2.06358 2.0636-1.45647 0-2.06358-.972-2.06358-2.0636v-11.26541c-.02851-.55554.17974-1.09714.57309-1.49049.39334-.39335.93495-.60159 1.49049-.57309 1.39208 0 1.99919.96893 1.99919 2.06358v2.18317h2.2445v-1.87654c0-2.66764-1.33382-4.48592-4.24369-4.48592-2.97119 0-4.547244 1.99919-4.547244 4.48592v10.67058c0 2.7872 1.576054 4.5472 4.182364 4.5472 1.39207 0 2.54498-.5458 3.1521-1.6374l.54579 1.3338zm51.77055-1.5821v1.7017l-.601-.0184c-1.8122 0-2.4254-.5458-2.4254-2.3027v-4.2928c0-1.1529-.6071-1.8796-1.6374-1.8796h-2.4254v8.3678h-2.4254v-19.105772h4.906c2.4837 0 3.8175 1.211172 3.8175 3.817482v2.85161c0 1.69563-.5428 2.72589-1.9992 3.09078 1.4503.3649 2.0636 1.576 2.0636 3.0325v4.0107c0 .5458.1809.7267.7267.7267zm-41.1767-17.520573 4.0751 19.096573h-2.4285l-.9199-4.3663h-4.1823l-.8494 4.3663h-2.2414l4.121-19.096573zm-3.0325 12.608373h3.4557l-1.6957-8.18378zm65.2405 6.4882v-2.2445h-5.4671v-6.6691h5.4549v-2.05742h-5.4549v-6.00064h5.4549v-2.121847h-7.8803v19.096607zm-13.516-19.093507v19.093507l-2.545.0031v-19.096607zm-10.6092 6.908257c0 1.2265-.6684 1.87961-1.76 1.87961h-2.2414v-6.66909h2.4867c.9689 0 1.5147.61325 1.5147 1.63738zm-11.3942 12.19135v-2.2506h-5.5928v-6.6691h5.5775v-2.05742h-5.5775v-6.00064h5.5775v-2.121847h-7.8802v19.096607zm-11.4585-2.2506v2.2506l-7.2701-.003v-19.096607h2.3641v16.849007zm43.648 19.9398c2.1832 2.0115 3.333 3.7684 3.333 6.1325h-.0061c0 3.0203-2.1219 4.5994-4.4829 4.5994-2.6063 0-4.3663-1.806-4.3663-4.2928v-1.6956h2.3058v1.5147c0 1.5761.788 2.4254 2.0636 2.4254 1.4565 0 2.1832-.8493 2.1832-2.1218 0-1.8183-.7298-3.0908-2.729-4.7895-1.76-1.576-3.5783-3.7592-3.5783-6.2459 0-2.545 1.4565-4.5473 4.2437-4.5473 2.545 0 4.1823 1.806 4.1823 4.2928v1.8183h-2.2383v-1.5148c0-1.4564-.6071-2.4867-2.0605-2.4867-1.2051 0-1.8183.788-1.8183 1.9409 0 1.8796.6654 2.9712 2.9681 4.9704zm-12.9856 3.8942h-3.0325l1.5761-8.1839zm-.1839-12.5717 3.8205 18.9954-2.4867-.0214-.788-4.2437h-3.8206l-.7267 4.2437h-2.2445l3.7593-18.974zm-10.4253 18.9954v-18.9954h-3.7
740592l-2.1218 11.8204-.6133 3.5139-.6132-3.5139-2.3518-11.8204h-3.7593v18.974h2.1219v-16.2941l1.1529 5.2924 2.0636 11.0385h2.545l2.0635-11.0385 1.153-5.277v16.3063zm-22.9171-1.7446c1.4534 0 2.2414-.9077 2.2414-2.2415v-10.9342c.0332-.604-.1923-1.1936-.62-1.6214-.4278-.4277-1.0174-.6532-1.6214-.62-1.3951 0-2.0636 1.0149-2.0636 2.2414v10.9342c0 1.3216.6715 2.2415 2.0636 2.2415zm4.5472-2.4837v-10.4252c0-2.6094-1.576-4.6699-4.5472-4.6699-2.8485 0-4.4246 2.0635-4.4246 4.6699v10.4252c0 2.729 1.5761 4.6668 4.4246 4.6668 2.9712 0 4.5472-1.9409 4.5472-4.6668zm-14.1231-14.7671v19.0077l-2.3641-.0215v-8.3033h-4.7894v8.2911h-2.3641v-18.974h2.3641v8.423h4.7894v-8.423zm-13.88395 2.2783v-2.2629h-9.15275v2.2414h3.47099v16.7294h2.30582v-16.7294zm73.28335 44.9419v.0368l.0061-.0368zm0 0v-2.1463h-5.0686v-6.6906h5.09v-2.1218h-5.09v-5.9424h5.09v-2.2414h-7.4111v19.1425zm-11.152-16.8275v-2.3058h-8.7848v2.3058h3.2717v16.8644h2.3641v-16.8644zm-9.6403 16.8275v.0368l.0062-.0368zm0 0v-2.1463h-4.5411v-16.9962h-2.3058v19.1425zm-11.9369-3.9861v-15.1564h-2.4254v15.1564c0 1.4565-.6132 2.1832-1.9992 2.1832-1.3859 0-2.0635-.7267-2.0635-2.1832v-15.1564h-2.3641v15.1564c0 2.729 1.76 4.3633 4.3663 4.3633 2.6676 0 4.4859-1.6343 4.4859-4.3633zm-13.8195-15.1534v19.1549h-2.3059v-8.4874h-4.4828v8.4874h-2.5481v-19.1549h2.5481v8.5457h4.4828v-8.5457zm-13.7614 15.0768v-2.5297h-2.1218v2.6063c0 1.2725-.7267 2.1832-2.1218 2.1832-1.4565 0-2.1832-.9689-2.1832-2.1218v-11.2133c0-1.1529.7298-2.0636 2.1832-2.0636 1.392 0 2.1218.8494 2.1218 2.1832v2.6063h2.1218v-2.6125c0-2.4867-1.3951-4.4276-4.2927-4.4276s-4.4829 2.1831-4.4829 4.5994v10.6092c0 2.548 1.5761 4.5993 4.4829 4.5993s4.2927-1.9317 4.2927-4.4184zm-16.30626-6.3778c2.24142 2.0728 3.39433 3.891 3.39433 6.1325l.01227-.0062c0 3.1552-2.12185 4.6669-4.42766 4.6669-2.7259 0-4.482857-1.7447-4.482857-4.2928v-1.6956h2.364077v1.4534c0 1.5791.78496 2.548 2.12184 2.548 1.33689 0 2.06359-.9106 2.06359-2.2445 0-1.7538-.7267-2.9681-2.60631-4.7864-1.88268-1.5791-3.700963-3.8205-3.700963-6.2459 0-2.6094 1.441133-4.5473 4.292743-4.5473 2.54499 0 4.18236 1.8061 4.18236 4.2928v1.8183h-2.24142v-1.5761c0-1.3951-.66844-2.364-2.00226-2.364-1.26636 0-1.87961.6653-1.87961 1.9409 0 1.7508.66844 2.8332 2.90987 4.906z" fill="#FFFFFF" fill-rule="evenodd"/></svg>
741                    </a>
742                </div>
743            </div>
744            <div class="col2">
745                    <div id="terms_conditions_url"><a href="/legal-notice/" data-original-url="/imprint/">Legal Notice</a></div>
746                    <div class="privacy-policy"><a href="/privacy-policy/">Privacy Policy</a></div>
747                <div class="accessibility-statement">
748                    <a href="/accessibility-statement/">Accessibility Statement</a>
749                </div>
750                
751    
752        <div id="social_links" class="clearwithin">
753            <div id="instagram" class="social_links_item"><a href="https://www.instagram.com/galeriethomasschulte" class=""><span class="social_media_icon instagram"></span>Instagram<span class="screen-reader-only">, opens in a new tab.</span></a></div><div id="mailinglist" class="social_links_item"><a href="/mailing-list/" class=" mailinglist_signup_popup_link"><span class="social_media_icon mailinglist"></span>Join the mailing list</a></div><div id="googlemap" class="social_links_item"><a href="https://goo.gl/maps/aXcjqJWgAMP2G8QX6" class="website_map_popup" data-latlng="52.510286,13.392063" data-title="Galerie Thomas Schulte" data-zoom="16"><span class="social_media_icon googlemap"></span>View on Google Maps</a></div><div id="facebook" class="social_links_item"><a href="https://de-de.facebook.com/galeriethomasschulte/" class=""><span class="social_media_icon facebook"></span>Facebook<span class="screen-reader-only">, opens in a new tab.</span></a></div>
754        </div>
755
756            </div>
757        </div>
758            <div class="advanced_footer_item clearwithin footer_address">
759                <div id="contact_info">
760                    <p>Galerie Thomas Schulte GmbH<br />Charlottenstrasse 24<br />10117 Berlin, Germany</p>
761                    <p>&nbsp;</p>
762                    <p>Phone: 0049 (0)30 20 60 89 90</p>
763                    <p>Fax: 0049 (0)30 20 60 89 91 0&nbsp;</p>
764                    <p><a href="mailto:[email protected]" target="_blank" aria-label="Email the gallery: [email protected]">[email protected]</a></p>
765                    <p>&nbsp;</p>
766                    <p>Opening Hours:</p>
767                    <p>Tuesday - Saturday</p>
768                    <p>12pm - 6pm</p>
769                </div>
770            </div>
771            <div class="advanced_footer_item footer_contact">
772                <div>Galerie Thomas Schulte Potsdamer Strasse</div>
773                <div>Mercartor H&ouml;fe</div>
774                <div>Potsdamer Strasse 81B, 2nd floor</div>
775                <div>10785 Berlin, Germany</div>
776                <div>&nbsp;</div>
777                <div>Phone: 0049 (0)30 20 62 75 50</div>
778                <div>
779                <p><a href="mailto:[email protected]" target="_blank" aria-label="Email the gallery: [email protected]">[email protected]</a></p>
780                <p>&nbsp;</p>
781                Opening Hours:</div>
782                <div>Wednesday - Saturday</div>
783                <div>12pm - 6pm</div>
784            </div>
785
786        </div>
787        <div class="clear"></div>
788            
789    <div class="copyright">
790            
791    <div class="small-links-container">
792        <span>Galerie Thomas Schulte will process the personal data you have supplied in accordance with our <a href="/privacy-policy/">Privacy Policy</a>.</span>
793            <div class="cookie_notification_preferences"><a href="javascript:void(0)" role="button" class="link-no-ajax">Manage cookies</a></div>
794    </div>
795
796        <div id="copyright" class="noprint">
797            <div class="copyright-text">
798                    Copyright &copy; 2026 Galerie Thomas Schulte
799            </div>
800                
801
802        </div>
803        
804    </div>
805
806        <div class="clear"></div>
807    </div>
808</div>
809        <div class="clear"></div>
810
811            <div id="cookie_notification" role="region" aria-label="Cookie banner" data-mode="consent" data-cookie-notification-settings="">
812    <div class="inner">
813        <div id="cookie_notification_message" class="prose">
814                <p><strong>This website uses cookies</strong><br>This site uses cookies to help make it more useful to you. Please contact us to find out more about our Cookie Policy.</p>
815        </div>
816        <div id="cookie_notification_preferences" class="link"><a href="javascript:;" role="button">Manage cookies</a></div>
817        <div id="cookie_notification_reject" class="button"><a href="javascript:;" role="button">Reject non essential</a></div>
818        <div id="cookie_notification_accept" class="button"><a href="javascript:;" role="button">Accept</a></div>
819
820    </div>
821</div>
822    <div id="manage_cookie_preferences_popup_container">
823        <div id="manage_cookie_preferences_popup_overlay"></div>
824        <div id="manage_cookie_preferences_popup_inner">
825            <div id="manage_cookie_preferences_popup_box" role="dialog" aria-modal="true" aria-label="Cookie preferences">
826                <div id="manage_cookie_preferences_close_popup_link" class="close">
827                    <a href="javascript:;" role="button" aria-label="close">
828                        <svg width="20px" height="20px" viewBox="0 0 488 488" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true">
829                            <g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
830                                <g id="close" fill="#5D5D5D" fill-rule="nonzero">
831                                    <polygon id="Path" points="488 468 468 488 244 264 20 488 0 468 224 244 0 20 20 0 244 224 468 0 488 20 264 244"></polygon>
832                                </g>
833                            </g>
834                        </svg>
835                    </a>
836                </div>
837                <h2>Cookie preferences</h2>
838                    <p>Check the boxes for the cookie categories you allow our site to use</p>
839                
840                <div id="manage_cookie_preferences_form_wrapper">
841                    <div class="form form_style_simplified">
842
843                        <form id="cookie_preferences_form">
844                            <fieldset>
845                                <legend class="visually-hidden">Cookie options</legend>
846                                <div>
847                                    <label><input type="checkbox" name="essential" disabled checked value="1"> Strictly necessary</label>
848                                    <div class="note">Required for the website to function and cannot be disabled.</div>
849                                </div>
850                                <div>
851                                    <label><input type="checkbox" name="functionality"  value="1"> Preferences and functionality</label>
852                                    <div class="note">Improve your experience on the website by storing choices you make about how 
852it should function.</div>
853                                </div>
854                                <div>
855                                    <label><input type="checkbox" name="statistics"  value="1"> Statistics</label>
856                                    <div class="note">Allow us to collect anonymous usage data in order to improve the experience on our website.</div>
857                                </div>
858                                <div>
859                                    <label><input type="checkbox" name="marketing"  value="1"> Marketing</label>
860                                    <div class="note">Allow us to identify our visitors so that we can offer personalised, targeted marketing.</div>
861                                </div>
862                            </fieldset>
863                            
864                            <div class="button">
865                                <a href="javascript:;" id="cookie_preferences_form_submit" role="button">Save preferences</a>
866                            </div>
867                        </form>
868
869                    </div>
870                </div>
871            </div>
872        </div>
873    </div>
874
875        
876            
877
878
879            
880    
881    
882    
883    <div id="mailing_list_popup_container" class="" data-timeout="10" data-cookie-expiry="604800">
884        <div id="mailing_list_popup_overlay"></div>
885        <div id="mailing_list_popup_inner">
886            <div id="mailing_list_popup_box" role="dialog" aria-modal="true" aria-label="Mailing list popup">
887                <div id="mailinglist_signup_close_popup_link" class="close"><a href="#" aria-label="Close" role="button" tabindex="0">Close</a></div>
888                <h2>Join our mailing list</h2>
889                    <div class="description prose">
890                        <p class="cms_gray">By completing this form, you confirm that you would like to subscribe to Galerie Thomas Schulte&rsquo;s email newsletter and receive weekly information about artists and upcoming events. Your email address will be used exclusively for the newsletter service.&nbsp;</p>
891                    </div>
892            
893                    <div class="mailinglist-embed-code">
894                        <div id="mc_embed_shell">
895      <link href="//cdn-images.mailchimp.com/embedcode/classic-061523.css" rel="stylesheet" type="text/css">
896  <style type="text/css">
897        #mc_embed_signup {
898            background: #fff;
899            clear: left;
900            font-family: "Untitled Serif", sans-serif !important;
901            font-size: 15px;
902            font-weight: 400;
903            line-height: 1.8;
904            width: 300px;
905        }
906
907        #mc_embed_signup *,
908        #mc_embed_signup input,
909        #mc_embed_signup textarea,
910        #mc_embed_signup select,
911        #mc_embed_signup button,
912        #mc_embed_signup .button,
913        #mc_embed_signup label,
914        #mc_embed_signup p,
915        #mc_embed_signup a {
916            font-family: "Untitled Serif", sans-serif !important;
917        }
918
919        /* Add your own Mailchimp form style overrides in your site stylesheet or in this style block.
920           We recommend moving this block and the preceding CSS link to the HEAD of your HTML file. */
921</style><style type="text/css">
922        #mc-embedded-subscribe-form input[type=checkbox]{display: inline; width: auto;margin-right: 10px;}
923#mergeRow-gdpr {margin-top: 20px;}
924#mergeRow-gdpr fieldset label {font-weight: normal;}
925#mc-embedded-subscribe-form .mc_fieldset{border:none;min-height: 0px;padding-bottom:0px;}
926</style>
927<div id="mc_embed_signup">
928    <form action="https://galeriethomasschulte.us8.list-manage.com/subscribe/post?u=be668ee1f2abf30d8171e4c4e&id=40947a5760&v_id=32&f_id=00c6c2e1f0" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank">
929        <div id="mc_embed_signup_scroll">
930            <div class="indicates-required"><span class="asterisk">*</span> indicates required</div>
931            <div class="mc-field-group"><label for="mce-EMAIL">Email Address <span class="asterisk">*</span></label><input type="email" name="EMAIL" class="required email" id="mce-EMAIL" required="" value=""></div><div class="mc-field-group">
931<label for="mce-FNAME">First Name </label><input type="text" name="FNAME" class=" text" id="mce-FNAME" value=""></div><div class="mc-field-group"><label for="mce-LNAME">Last Name </label><input type="text" name="LNAME" class=" text" id="mce-LNAME" value=""></div><div id="mergeRow-gdpr" class="mergeRow gdpr-mergeRow content__gdprBlock mc-field-group"><div class="content__gdpr"><label>Marketing Permission</label><p>Please select all the ways you would like to hear from Galerie Thomas Schulte:</p><fieldset class="mc_fieldset gdprRequired mc-field-group" name="interestgroup_field"><label class="checkbox subfield" for="gdpr12"><input type="checkbox" id="gdpr_12" name="gdpr[12]" class="gdpr" value="Y"><span>Email</span></label></fieldset><p>You can unsubscribe at any time by clicking the link in the footer of our emails. 
932For information about our privacy practices, please visit https://www.galeriethomasschulte.com/privacy-policy/.</p></div><div class="content__gdprLegal"><p>We use Mailchimp as our marketing platform. By clicking below to subscribe, you acknowledge that your information will be transferred to Mailchimp for processing. <a href="https://mailchimp.com/legal/terms">Learn more</a> about Mailchimp's privacy practices.</p></div></div>
933        <div id="mce-responses" class="clear">
934            <div class="response" id="mce-error-response" style="display: none;"></div>
935            <div class="response" id="mce-success-response" style="display: none;"></div>
936        </div><div style="position: absolute; left: -5000px;" aria-hidden="true"><input type="text" name="b_be668ee1f2abf30d8171e4c4e_40947a5760" tabindex="-1" value=""></div><div class="clear"><input type="submit" name="subscribe" id="mc-embedded-subscribe" class="button" value="Subscribe"></div>
937    </div>
938</form>
939</div>
940<script type="text/javascript" src="//s3.amazonaws.com/downloads.mailchimp.com/js/mc-validate.js"></script>
940<script type="text/javascript">(function($) {window.fnames = new Array(); window.ftypes = new Array();fnames[0]='EMAIL';ftypes[0]='email';fnames[1]='FNAME';ftypes[1]='text';fnames[2]='LNAME';ftypes[2]='text';fnames[3]='MMERGE3';ftypes[3]='text';}(jQuery));var $mcj = jQuery.noConflict(true);
941    // SMS Phone Multi-Country Functionality
942    if(!window.MC) {
943      window.MC = {};
944    }
945    window.MC.smsPhoneData = {
946      defaultCountryCode: 'DE',
947      programs: [],
948      smsProgramDataCountryNames: []
949    };
950
951    function getCountryUnicodeFlag(countryCode) {
952       return countryCode.toUpperCase().replace(/./g, (char) => String.fromCodePoint(char.charCodeAt(0) + 127397))
953    };
954
955    // HTML sanitization function to prevent XSS
956    function sanitizeHtml(str) {
957      if (typeof str !== 'string') return '';
958      return str
959        .replace(/&/g, '&')
960        .replace(/</g, '&lt;')
961        .replace(/>/g, '&gt;')
962        .replace(/"/g, '&quot;')
963        .replace(/'/g, '&#x27;')
964        .replace(/\//g, '&#x2F;');
965    }
966
967    // URL sanitization function to prevent javascript: and data: URLs
968    function sanitizeUrl(url) {
969      if (typeof url !== 'string') return '';
970      const trimmedUrl = url.trim().toLowerCase();
971      if (trimmedUrl.startsWith('javascript:') || trimmedUrl.startsWith('data:') || trimmedUrl.startsWith('vbscript:')) {
972        return '#';
973      }
974      return url;
975    }
976
977    const getBrowserLanguage = () => {
978      if (!window?.navigator?.language?.split('-')[1]) {
979        return window?.navigator?.language?.toUpperCase();
980      }
981      return window?.navigator?.language?.split('-')[1];
982    };
983
984    
985    function getDefaultCountryProgram(defaultCountryCode, smsProgramData) {
986      if (!smsProgramData || smsProgramData.length === 0) {
987        return null;
988      }
989
990      const browserLanguage = getBrowserLanguage();
991
992      if (browserLanguage) {
993        const foundProgram = smsProgramData.find(
994          (program) => program?.countryCode === browserLanguage,
995        );
996        if (foundProgram) {
997          return foundProgram;
998        }
999      }
1000
1001      if (defaultCountryCode) {
1002        const foundProgram = smsProgramData.find(
1003          (program) => program?.countryCode === defaultCountryCode,
1004        );
1005        if (foundProgram) {
1006          return foundProgram;
1007        }
1008      }
1009
1010      return smsProgramData[0];
1011    }
1012
1013    function updateSmsLegalText(countryCode, fieldName) {
1014      if (!countryCode || !fieldName) {
1015        return;
1016      }
1017      
1018      const programs = window?.MC?.smsPhoneData?.programs;
1019      if (!programs || !Array.isArray(programs)) {
1020        return;
1021      }
1022      
1023      const program = programs.find(program => program?.countryCode === countryCode);
1024      if (!program || !program.requiredTemplate) {
1025        return;
1026      }
1027    
1028      
1029      var smsConsentHtmlRenderingFixEnabled = true;
1030      
1031      const legalTextElement = document.querySelector('#legal-text-' + fieldName);
1032      if (!legalTextElement) {
1033        return;
1034      }
1035      
1036      const divRegex = new RegExp('</?[div][^>]*>', 'gi');
1037      const blockWrapperRegex = new RegExp('</?(?:div|p)[^>]*>', 'gi');
1038      const fullAnchorRegex = new RegExp('<a.*?</a>', 'g');
1039      const anchorRegex = new RegExp('<a href="(.*?)" target="(.*?)">(.*?)</a>');
1040      
1041      const template = smsConsentHtmlRenderingFixEnabled
1042        ? program.requiredTemplate
1043            .replace(/<\/p>\s*<p[^>]*>/gi, ' ')
1044            .replace(blockWrapperRegex, '')
1045        : program.requiredTemplate.replace(divRegex, '');
1046      
1047      
1048
1049      legalTextElement.textContent = '';
1050      const parts = template.split(/(<a href=".*?" target=".*?">.*?<\/a>)/g);
1051      parts.forEach(function(part) {
1052        if (!part) {
1053          return;
1054        }
1055        const anchorMatch = part.match(/<a href="(.*?)" target="(.*?)">(.*?)<\/a>/);
1056        if (anchorMatch) {
1057          const linkElement = document.createElement('a');
1058          linkElement.href = sanitizeUrl(anchorMatch[1]);
1059          linkElement.target = sanitizeHtml(anchorMatch[2]);
1060          linkElement.textContent = sanitizeHtml(anchorMatch[3]);
1061          legalTextElement.appendChild(linkElement);
1062        } else {
1063          legalTextElement.appendChild(document.createTextNode(part));
1064        }
1065      });
1066          
1067    }
1068
1069    function generateDropdownOptions(smsProgramData) {
1070      if (!smsProgramData || smsProgramData.length === 0) {
1071        return '';
1072      }
1073
1074      var programs = false
1075        ? smsProgramData.filter(function(p, i, arr) {
1076            return arr.findIndex(function(q) { return q.countryCode === p.countryCode; }) === i;
1077          })
1078        : smsProgramData;
1079      
1080      return programs.map(program => {
1081        const flag = getCountryUnicodeFlag(program.countryCode);
1082        const countryName = getCountryName(program.countryCode);
1083        const callingCode = program.countryCallingCode || '';
1084        // Sanitize all values to prevent XSS
1085        const sanitizedCountryCode = sanitizeHtml(program.countryCode || '');
1086        const sanitizedCountryName = sanitizeHtml(countryName || '');
1087        const sanitizedCallingCode = sanitizeHtml(callingCode || '');
1088        return '<option value="' + sanitizedCountryCode + '">' + sanitizedCountryName + ' ' + sanitizedCallingCode + '</option>';
1089      }).join('');
1090    }
1091
1092    function getCountryName(countryCode) {
1093      if (window.MC?.smsPhoneData?.smsProgramDataCountryNames && Array.isArray(window.MC.smsPhoneData.smsProgramDataCountryNames)) {
1094        for (let i = 0; i < window.MC.smsPhoneData.smsProgramDataCountryNames.length; i++) {
1095          if (window.MC.smsPhoneData.smsProgramDataCountryNames[i].code === countryCode) {
1096            return window.MC.smsPhoneData.smsProgramDataCountryNames[i].name;
1097          }
1098        }
1099      }
1100      return countryCode;
1101    }
1102
1103    function getDefaultPlaceholder(countryCode) {
1104      if (!countryCode || typeof countryCode !== 'string') {
1105        return '+1 000 000 0000'; // Default US placeholder
1106      }
1107      
1108            var mockPlaceholders = [
1109        {
1110          countryCode: 'US',
1111          placeholder: '+1 000 000 0000',
1112          helpText: 'Include the US country code +1 before the phone number',
1113        },
1114        {
1115          countryCode: 'GB',
1116          placeholder: '+44 0000 000000',
1117          helpText: 'Include the GB country code +44 before the phone number',
1118        },
1119        {
1120          countryCode: 'CA',
1121          placeholder: '+1 000 000 0000',
1122          helpText: 'Include the CA country code +1 before the phone number',
1123        },
1124        {
1125          countryCode: 'AU',
1126          placeholder: '+61 000 000 000',
1127          helpText: 'Include the AU country code +61 before the phone number',
1128        },
1129        {
1130          countryCode: 'DE',
1131          placeholder: '+49 000 0000000',
1132          helpText: 'Fügen Sie vor der Telefonnummer die DE-Ländervorwahl +49 ein',
1133        },
1134        {
1135          countryCode: 'FR',
1136          placeholder: '+33 0 00 00 00 00',
1137          helpText: 'Incluez le code pays FR +33 avant le numéro de téléphone',
1138        },
1139        {
1140          countryCode: 'ES',
1141          placeholder: '+34 000 000 000',
1142          helpText: 'Incluya el código de país ES +34 antes del número de teléfono',
1143        },
1144        {
1145          countryCode: 'NL',
1146          placeholder: '+31 0 00000000',
1147          helpText: 'Voeg de NL-landcode +31 toe vóór het telefoonnummer',
1148        },
1149        {
1150          countryCode: 'BE',
1151          placeholder: '+32 000 00 00 00',
1152          helpText: 'Incluez le code pays BE +32 avant le numéro de téléphone',
1153        },
1154        {
1155          countryCode: 'CH',
1156          placeholder: '+41 00 000 00 00',
1157          helpText: 'Fügen Sie vor der Telefonnummer die CH-Ländervorwahl +41 ein',
1158        },
1159        {
1160          countryCode: 'AT',
1161          placeholder: '+43 000 000 0000',
1162          helpText: 'Fügen Sie vor der Telefonnummer die AT-Ländervorwahl +43 ein',
1163        },
1164        {
1165          countryCode: 'IE',
1166          placeholder: '+353 00 000 0000',
1167          helpText: 'Include the IE country code +353 before the phone number',
1168        },
1169        {
1170          countryCode: 'IT',
1171          placeholder: '+39 000 000 0000',
1172          helpText: 'Includere il prefisso internazionale IT +39 prima del numero di telefono',
1173        },
1174      ];
1175
1176      const selectedPlaceholder = mockPlaceholders.find(function(item) {
1177        return item && item.countryCode === countryCode;
1178      });
1179      
1180      return selectedPlaceholder ? selectedPlaceholder.placeholder : mockPlaceholders[0].placeholder;
1181    }
1182
1183    function updatePlaceholder(countryCode, fieldName) {
1184      if (!countryCode || !fieldName) {
1185        return;
1186      }
1187      
1188      const phoneInput = document.querySelector('#mce-' + fieldName);
1189      if (!phoneInput) {
1190        return;
1191      }
1192      
1193      const placeholder = getDefaultPlaceholder(countryCode);
1194      if (placeholder) {
1195        phoneInput.placeholder = placeholder;
1196      }
1197    }
1198
1199    function updateCountryCodeInstruction(countryCode, fieldName) {
1200      updatePlaceholder(countryCode, fieldName);
1201      
1202    }
1203
1204    function getDefaultHelpText(countryCode) {
1205      var mockPlaceholders = [
1206        {
1207          countryCode: 'US',
1208          placeholder: '+1 000 000 0000',
1209          helpText: 'Include the US country code +1 before the phone number',
1210        },
1211        {
1212          countryCode: 'GB',
1213          placeholder: '+44 0000 000000',
1214          helpText: 'Include the GB country code +44 before the phone number',
1215        },
1216        {
1217          countryCode: 'CA',
1218          placeholder: '+1 000 000 0000',
1219          helpText: 'Include the CA country code +1 before the phone number',
1220        },
1221        {
1222          countryCode: 'AU',
1223          placeholder: '+61 000 000 000',
1224          helpText: 'Include the AU country code +61 before the phone number',
1225        },
1226        {
1227          countryCode: 'DE',
1228          placeholder: '+49 000 0000000',
1229          helpText: 'Fügen Sie vor der Telefonnummer die DE-Ländervorwahl +49 ein',
1230        },
1231        {
1232          countryCode: 'FR',
1233          placeholder: '+33 0 00 00 00 00',
1234          helpText: 'Incluez le code pays FR +33 avant le numéro de téléphone',
1235        },
1236        {
1237          countryCode: 'ES',
1238          placeholder: '+34 000 000 000',
1239          helpText: 'Incluya el código de país ES +34 antes del número de teléfono',
1240        },
1241        {
1242          countryCode: 'NL',
1243          placeholder: '+31 0 00000000',
1244          helpText: 'Voeg de NL-landcode +31 toe vóór het telefoonnummer',
1245        },
1246        {
1247          countryCode: 'BE',
1248          placeholder: '+32 000 00 00 00',
1249          helpText: 'Incluez le code pays BE +32 avant le numéro de téléphone',
1250        },
1251        {
1252          countryCode: 'CH',
1253          placeholder: '+41 00 000 00 00',
1254          helpText: 'Fügen Sie vor der Telefonnummer die CH-Ländervorwahl +41 ein',
1255        },
1256        {
1257          countryCode: 'AT',
1258          placeholder: '+43 000 000 0000',
1259          helpText: 'Fügen Sie vor der Telefonnummer die AT-Ländervorwahl +43 ein',
1260        },
1261        {
1262          countryCode: 'IE',
1263          placeholder: '+353 00 000 0000',
1264          helpText: 'Include the IE country code +353 before the phone number',
1265        },
1266        {
1267          countryCode: 'IT',
1268          placeholder: '+39 000 000 0000',
1269          helpText: 'Includere il prefisso internazionale IT +39 prima del numero di telefono',
1270        },
1271      ];
1272      
1273      if (!countryCode || typeof countryCode !== 'string') {
1274        return mockPlaceholders[0].helpText;
1275      }
1276      
1277      const selectedHelpText = mockPlaceholders.find(function(item) {
1278          return item && item.countryCode === countryCode;
1279        });
1280        
1281        return selectedHelpText ? selectedHelpText.helpText : mockPlaceholders[0].helpText;
1282    }
1283
1284    function setDefaultHelpText(countryCode) {
1285      const helpTextSpan = document.querySelector('#help-text');
1286      if (!helpTextSpan) {
1287        return;
1288      }
1289
1290        
1291    }
1292
1293    function updateHelpTextCountryCode(countryCode, fieldName) {
1294      if (!countryCode || !fieldName) {
1295        return;
1296      }
1297      
1298      setDefaultHelpText(countryCode);
1299    }
1300
1301    function initializeSmsPhoneDropdown(fieldName) {
1302      if (!fieldName || typeof fieldName !== 'string') {
1303        return;
1304      }
1305      
1306      const dropdown = document.querySelector('#country-select-' + fieldName);
1307      const displayFlag = document.querySelector('#flag-display-' + fieldName);
1308      
1309      if (!dropdown || !displayFlag) {
1310        return;
1311      }
1312
1313      const smsPhoneData = window.MC?.smsPhoneData;
1314      if (smsPhoneData && smsPhoneData.programs && Array.isArray(smsPhoneData.programs)) {
1315        dropdown.innerHTML = generateDropdownOptions(smsPhoneData.programs);
1316      }
1317
1318      const defaultProgram = getDefaultCountryProgram(smsPhoneData?.defaultCountryCode, smsPhoneData?.programs);
1319      if (defaultProgram && defaultProgram.countryCode) {
1320        dropdown.value = defaultProgram.countryCode;
1321        
1322        const flagSpan = displayFlag?.querySelector('#flag-emoji-' + fieldName);
1323        if (flagSpan) {
1324          flagSpan.textContent = getCountryUnicodeFlag(defaultProgram.countryCode);
1325          flagSpan.setAttribute('aria-label', sanitizeHtml(defaultProgram.countryCode) + ' flag');
1326        }
1327        
1328        updateSmsLegalText(defaultProgram.countryCode, fieldName);
1329        updatePlaceholder(defaultProgram.countryCode, fieldName);
1330        updateCountryCodeInstruction(defaultProgram.countryCode, fieldName);
1331      }
1332
1333     
1334      var smsNotRequiredRemoveCountryCodeEnabled = true;
1335      var smsField = Object.values({"EMAIL":{"name":"EMAIL","label":"Email Address","helper_text":"","type":"email","required":true,"audience_field_name":"Email Address","merge_id":0,"help_text_enabled":false,"enabled":true,"order":0,"field_type":"merge"},"FNAME":{"name":"FNAME","label":"First Name","helper_text":"","type":"text","required":false,"audience_field_name":"First Name","merge_id":1,"help_text_enabled":false,"enabled":true,"order":1,"field_type":"merge"},"LNAME":{"name":"LNAME","label":"Last Name","helper_text":"","type":"text","required":false,"audience_field_name":"Last Name","merge_id":2,"help_text_enabled":false,"enabled":true,"order":2,"field_type":"merge"},"MMERGE3":{"name":"MMERGE3","label":"Salutation","helper_text":"","type":"text","required":false,"audience_field_name":"Salutation","enabled":false,"order":null,"field_type":"merge","merge_id":3}}).find(function(f) { return f.name === fieldName && f.type === 'smsphone'; });
1336      var isRequired = smsField ? smsField.required : false;
1337      var shouldAppendCountryCode = smsNotRequiredRemoveCountryCodeEnabled ? isRequired : true;
1338      
1339      var phoneInput = document.querySelector('#mce-' + fieldName);
1340      if (phoneInput && defaultProgram.countryCallingCode && shouldAppendCountryCode) {
1341        phoneInput.value = defaultProgram.countryCallingCode;
1342      }
1343      
1344
1345
1346      displayFlag?.addEventListener('click', function(e) {
1347        dropdown.focus();
1348      });
1349
1350
1351      dropdown?.addEventListener('change', function() {
1352        const selectedCountry = this.value;
1353        
1354        if (!selectedCountry || typeof selectedCountry !== 'string') {
1355          return;
1356        }
1357        
1358        const flagSpan = displayFlag?.querySelector('#flag-emoji-' + fieldName);
1359        if (flagSpan) {
1360          flagSpan.textContent = getCountryUnicodeFlag(selectedCountry);
1361          flagSpan.setAttribute('aria-label', sanitizeHtml(selectedCountry) + ' flag');
1362        }
1363
1364         
1365        const selectedProgram = window.MC?.smsPhoneData?.programs.find(function(program) {
1366          return program && program.countryCode === selectedCountry;
1367        });
1368
1369        var smsNotRequiredRemoveCountryCodeEnabled = true;
1370        var smsField = Object.values({"EMAIL":{"name":"EMAIL","label":"Email Address","helper_text":"","type":"email","required":true,"audience_field_name":"Email Address","merge_id":0,"help_text_enabled":false,"enabled":true,"order":0,"field_type":"merge"},"FNAME":{"name":"FNAME","label":"First Name","helper_text":"","type":"text","required":false,"audience_field_name":"First Name","merge_id":1,"help_text_enabled":false,"enabled":true,"order":1,"field_type":"merge"},"LNAME":{"name":"LNAME","label":"Last Name","helper_text":"","type":"text","required":false,"audience_field_name":"Last Name","merge_id":2,"help_text_enabled":false,"enabled":true,"order":2,"field_type":"merge"},"MMERGE3":{"name":"MMERGE3","label":"Salutation","helper_text":"","type":"text","required":false,"audience_field_name":"Salutation","enabled":false,"order":null,"field_type":"merge","merge_id":3}}).find(function(f) { return f.name === fieldName && f.type === 'smsphone'; });
1371        var isRequired = smsField ? smsField.required : false;
1372        var shouldAppendCountryCode = smsNotRequiredRemoveCountryCodeEnabled ? isRequired : true;
1373        
1374        var phoneInput = document.querySelector('#mce-' + fieldName);
1375        if (phoneInput && selectedProgram.countryCallingCode && shouldAppendCountryCode) {
1376          phoneInput.value = selectedProgram.countryCallingCode;
1377        }
1378        
1379        
1380        updateSmsLegalText(selectedCountry, fieldName);
1381        updatePlaceholder(selectedCountry, fieldName);
1382        updateCountryCodeInstruction(selectedCountry, fieldName);
1383      });
1384    }
1385
1386    document.addEventListener('DOMContentLoaded', function() {
1387      const smsPhoneFields = document.querySelectorAll('[id^="country-select-"]');
1388      
1389      smsPhoneFields.forEach(function(dropdown) {
1390        const fieldName = dropdown?.id.replace('country-select-', '');
1391        initializeSmsPhoneDropdown(fieldName);
1392      });
1393    });
1394    </script>
1394</div>
1395
1396                    </div>
1397            </div>
1398        </div>
1399    </div>
1400    
1401    
1402
1403
1404
1405
1406
1407    </div>
1408
1409        </div>
1410
1411
1412
1413
1414            
1415            
1416                
1417
1418
1419
1420
1421
1422            
1423            
1424        <!-- sentry-verification-string -->
1425</body>
1426    </html>
1427
1428

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.