1<!DOCTYPE html><html data-wf-page="6888085c617ef31b88797d32" data-wf-site="6888085c617ef31b88797ced" lang="en"><head> 2 <meta charset="utf-8"> 3 <title>Stefan Prins | Home</title> 4 <meta content="Stefan Prins is a Belgian composer whose music reflects on contemporary technologies and new media. He is co-artistic director of the Nadar Ensemble." name="description"> 5 <meta content="Stefan Prins | Home" property="og:title"> 6 <meta content="Stefan Prins is a Belgian composer whose music reflects on contemporary technologies and new media. He is co-artistic director of the Nadar Ensemble." property="og:description"> 7 <meta content="https://cdn.prod.website-files.com/6888085c617ef31b88797ced/688a2e4f07aed07d7aa475cd_prins-cloud_chamber_copyright-Laurent_Orseau.png" property="og:image"> 8 <meta content="Stefan Prins | Home" property="twitter:title"> 9 <meta content="Stefan Prins is a Belgian composer whose music reflects on contemporary technologies and new media. He is co-artistic director of the Nadar Ensemble." property="twitter:description"> 10 <meta content="https://cdn.prod.website-files.com/6888085c617ef31b88797ced/688a2e4f07aed07d7aa475cd_prins-cloud_chamber_copyright-Laurent_Orseau.png" property="twitter:image"> 11 <meta property="og:type" content="website"> 12 <meta content="summary_large_image" name="twitter:card"> 13 <meta content="width=device-width, initial-scale=1" name="viewport"> 14 <link href="css/normalize.css" rel="stylesheet" type="text/css"> 15 <link href="css/components.css" rel="stylesheet" type="text/css"> 16 <link href="css/stefan-prins.css" rel="stylesheet" type="text/css"> 17
17<script src="https://use.typekit.net/aiz3xhz.js" type="text/javascript"></script>
17 18
18<script type="text/javascript">try{Typekit.load();}catch(e){}</script>
18 19
19<script type="text/javascript">!function(o,c){var n=c.documentElement,t=" w-mod-";n.className+=t+"js",("ontouchstart"in o||o.DocumentTouch&&c instanceof DocumentTouch)&&(n.className+=t+"touch")}(window,document);</script>
19 20 <link href="images/favicon.png" rel="shortcut icon" type="image/x-icon"> 21 <link href="images/webclip.png" rel="apple-touch-icon"> 22
22<script async="" src="https://cdn.jsdelivr.net/npm/@finsweet/cookie-consent@1/fs-cc.js" fs-cc-mode="opt-in"></script>
22 23 <style> 24 * { 25 -webkit-font-smoothing: antialiased; 26 -moz-osx-font-smoothing: grayscale; 27 } 28 .w-nav-overlay{ 29 top:0; 30 } 31 html { 32 scroll-behavior: smooth 33 } 34 [id] { 35 scroll-margin-top: 4rem; 36 } 37 .w-richtext a img:hover{ 38 cursor:pointer; 39 opacity: 0.5; 40 transform: scale(0.98); 41 } 42 .w-richtext a img{ 43 transition: 0.4s all; 44 } 45</style> 46 <style> 47 .youtube { 48 background-color: #939393; 49 position: relative; 50 overflow: hidden; 51 cursor: pointer; 52 min-height:150px; 53 padding-top:56.25%; 54 } 55 .youtube img { 56 top:0; 57 left: 0; 58 height: 100%; 59 width: 100%; 60 object-fit: cover; 61 } 62 .youtube img, 63 .youtube iframe { 64 overflow: hidden; 65 } 66 .youtube .play-button { 67 width: 60px; 68 height: 60px; 69 z-index: 1; 70 opacity: 1; 71 display: flex; 72 align-items: center; 73 justify-content: center; 74 } 75 .youtube img, 76 .youtube .play-button { 77 cursor: pointer; 78 } 79 .youtube img, 80 .youtube iframe, 81 .youtube .play-button, 82 .youtube .play-button:before { 83 position: absolute; 84 } 85 .youtube .play-button, 86 .youtube .play-button:before { 87 top: 50%; left: 50%; transform: translate3d( -50%, -50%, 0 ); 88 } 89 .youtube iframe { 90 height: 100%; width: 100%; top: 0; left: 0; 91 } 92 .w-lightbox-backdrop { 93 z-index:9999999; 94 } 95</style> 96 <link rel="stylesheet" href="https://cdn.plyr.io/3.7.8/plyr.css"> 97
97<script async="" src="https://cdn.jsdelivr.net/npm/@finsweet/attributes-cmsload@1/cmsload.js"></script>
97 98
98<script defer="" data-domain="stefanprins.net" src="https://v2.analytics.dreher-media.de/js/script.file-downloads.hash.outbound-links.js"></script>
98 99</head> 100<body> 101 <div class="page-wrapper"> 102 <div class="cookie-consent"> 103 <div fs-cc="banner" class="cc-banner_component"> 104 <div class="fs-cc-banner2_container"> 105 <div class="fs-cc-banner2_text">By clicking âAcceptâ, you agree to the storing of cookies on your device to enhance site navigation, analyze site usage, and assist in our marketing efforts. View our <a href="privacy-policy.html" class="fs-cc-banner2_text-link">Privacy Policy</a> for more information.</div> 106 <div class="fs-cc-banner2_buttons-wrapper"> 107 <a fs-cc="deny" href="#" class="fs-cc-banner2_button fs-cc-button-alt w-button">Deny</a> 108 <a fs-cc="allow" href="#" class="fs-cc-banner2_button w-button">Accept</a> 109 </div> 110 </div> 111 </div> 112 <div fs-cc="manager" class="cc-manager_component"> 113 <div fs-cc="open-preferences" role="button" tabindex="0" title="Cookie Preferences" aria-label="Cookie Preferences" class="fs-cc-manager2_button w-embed"><svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"> 114 <path d="M9 8L9 8.01" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path> 115 <path d="M16 15L16 15.01" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path> 116 <path d="M10 17L10 17.01" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path> 117 <path d="M11 13L11 13.01" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path> 118 <path d="M6 12L6 12.01" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path> 119 <path d="M12 21C16.9706 21 21 16.9706 21 12C21 11.4402 20.9489 10.8924 20.8511 10.361C20.3413 10.7613 19.6985 11 19 11C18.4536 11 17.9413 10.8539 17.5 10.5987C17.0587 10.8539 16.5464 11 16 11C14.3431 11 13 9.65685 13 8C13 7.60975 13.0745 7.23691 13.2101 6.89492C11.9365 6.54821 11 5.38347 11 4C11 3.66387 11.0553 3.34065 11.1572 3.03894C6.58185 3.46383 3 7.31362 3 12C3 16.9706 7.02944 21 12 21Z" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"></path> 120 </svg></div> 121 </div> 122 <div fs-cc-scroll="disable" fs-cc="preferences" class="cc-prefs_component"> 123 <div class="fs-cc-prefs2_form-wrapper w-form"> 124 <form id="cookie-preferences" name="wf-form-Cookie-Preferences" data-name="Cookie Preferences" method="get" class="fs-cc-prefs2_form" data-wf-page-id="6888085c617ef31b88797d32" data-wf-element-id="c4bd1fb6-5502-677d-1794-351bc3102070"> 125 <div fs-cc="close" class="fs-cc-prefs2_close"> 126 <div class="fs-cc-preferences2_close-icon w-embed"><svg fill="currentColor" aria-hidden="true" focusable="false" viewBox="0 0 16 16"> 127 <path d="M9.414 8l4.293-4.293-1.414-1.414L8 6.586 3.707 2.293 2.293 3.707 6.586 8l-4.293 4.293 1.414 1.414L8 9.414l4.293 4.293 1.414-1.414L9.414 8z"></path> 128 </svg></div> 129 </div> 130 <div class="fs-cc-prefs2_content"> 131 <div class="fs-cc-prefs2_space-small"> 132 <div class="fs-cc-prefs2_title">Privacy Preferences</div> 133 </div> 134 <div class="fs-cc-prefs2_option"> 135 <div class="fs-cc-prefs2_toggle-wrapper"> 136 <div class="fs-cc-prefs2_label">Essential cookies</div> 137 <div>Required</div> 138 </div> 139 </div> 140 <div class="fs-cc-prefs2_option"> 141 <div class="fs-cc-prefs2_toggle-wrapper"> 142 <div class="fs-cc-prefs2_label">Marketing cookies</div><label class="w-checkbox fs-cc-prefs2_checkbox-field"> 143 <div class="w-checkbox-input w-checkbox-input--inputType-custom fs-cc-prefs2_checkbox"></div><input type="checkbox" id="marketing-2" name="marketing-2" data-name="Marketing 2" fs-cc-checkbox="marketing" style="opacity:0;position:absolute;z-index:-1"><span for="marketing-2" class="fs-cc-prefs2_checkbox-label w-form-label">Essential</span> 144 </label> 145 </div> 146 </div> 147 <div class="fs-cc-prefs2_option"> 148 <div class="fs-cc-prefs2_toggle-wrapper"> 149 <div class="fs-cc-prefs2_label">Personalization cookies</div><label class="w-checkbox fs-cc-prefs2_checkbox-field"> 150 <div class="w-checkbox-input w-checkbox-input--inputType-custom fs-cc-prefs2_checkbox"></div><input type="checkbox" id="personalization-2" name="personalization-2" data-name="Personalization 2" fs-cc-checkbox="personalization" style="opacity:0;position:absolute;z-index:-1"><span for="personalization-2" class="fs-cc-prefs2_checkbox-label w-form-label">Essential</span> 151 </label> 152 </div> 153 </div> 154 <div class="fs-cc-prefs2_option"> 155 <div class="fs-cc-prefs2_toggle-wrapper"> 156 <div class="fs-cc-prefs2_label">Analytics cookies</div><label class="w-checkbox fs-cc-prefs2_checkbox-field"> 157 <div class="w-checkbox-input w-checkbox-input--inputType-custom fs-cc-prefs2_checkbox"></div><input type="checkbox" id="analytics-2" name="analytics-2" data-name="Analytics 2" fs-cc-checkbox="analytics" style="opacity:0;position:absolute;z-index:-1"><span for="analytics-2" class="fs-cc-prefs2_checkbox-label w-form-label">Essential</span> 158 </label> 159 </div> 160 </div> 161 <div class="fs-cc-prefs2_buttons-wrapper"> 162 <a fs-cc="deny" href="#" class="fs-cc-prefs2_button fs-cc-button-alt w-button">
162Reject all cookies</a> 163 <a fs-cc="allow" href="#" class="fs-cc-prefs2_button w-button">Allow all cookies</a> 164 <a fs-cc="submit" href="#" class="fs-cc-prefs2_submit w-button">Save preferences</a> 165 </div> 166 </div> 167 </form> 168 <div class="form-done"></div> 169 <div class="form-fail"></div> 170 <div fs-cc="close" class="fs-cc-prefs2_overlay"></div> 171 </div> 172 </div> 173 </div> 174 <div class="global-styles w-embed"> 175 <style> 176/* Snippet gets rid of top margin on first element in any rich text*/ 177.w-richtext>:first-child { 178 margin-top: 0; 179} 180/* Snippet gets rid of bottom margin on last element in any rich text*/ 181.w-richtext>:last-child, .w-richtext ol li:last-child, .w-richtext ul li:last-child { 182 margin-bottom: 0; 183} 184/* Snippet makes all link elements listed below to inherit color from their parent */ 185a, 186.w-tab-link, 187.w-nav-link, 188.w-dropdown-btn, 189.w-dropdown-toggle, 190.w-dropdown-link 191{ 192color: inherit; 193} 194/* Snippet prevents all click and hover interaction with an element */ 195.clickable-off { 196 pointer-events: none; 197} 198/* Snippet enables all click and hover interaction with an element */ 199.clickable-on{ 200 pointer-events: auto; 201} 202/* Snippet enables you to add class of div-square which creates and maintains a 1:1 dimension of a div.*/ 203.div-square::after { 204 content: ""; 205 display: block; 206 padding-bottom: 100%; 207} 208/*Hide focus outline for main content element*/ 209 main:focus-visible { 210 outline: -webkit-focus-ring-color auto 0px; 211} 212/* Make sure containers never lose their center alignment*/ 213.container-medium, .container-small, .container-large { 214 margin-right: auto !important; 215 margin-left: auto !important; 216} 217/*Reset selects, buttons, and links styles*/ 218.w-input, .w-select, a { 219color: inherit; 220text-decoration: inherit; 221font-size: inherit; 222} 223/*Apply "..." after 3 lines of text */ 224.text-style-3lines { 225 display: -webkit-box; 226 overflow: hidden; 227 -webkit-line-clamp: 3; 228 -webkit-box-orient: vertical; 229} 230/* Apply "..." after 2 lines of text */ 231.text-style-2lines { 232 display: -webkit-box; 233 overflow: hidden; 234 -webkit-line-clamp: 2; 235 -webkit-box-orient: vertical; 236} 237/* Apply "..." at 100% width */ 238.truncate-width { 239 width: 100%; 240 white-space: nowrap; 241 overflow: hidden; 242 text-overflow: ellipsis; 243} 244/* Removes native scrollbar */ 245.no-scrollbar { 246 -ms-overflow-style: none; // IE 10+ 247 overflow: -moz-scrollbars-none; // Firefox 248} 249.no-scrollbar::-webkit-scrollbar {
250 display: none; // Safari and Chrome 251} 252</style> 253 </div> 254 <div data-w-id="ce85d16e-26b7-7573-f811-840851a2151f" class="nav-overlay-trigger"></div> 255 <main class="main-wrapper"> 256 <div data-animation="over-right" class="navbar16_component-2 w-nav" data-wf--navbar--variant="home" data-easing2="ease-in-out" fs-scrolldisable-element="smart-nav" data-easing="ease-in-out" data-collapse="all" data-w-id="1796619c-210e-7b56-7325-c9d40848c13b" role="banner" data-no-scroll="1" data-duration="300" data-doc-height="1"> 257 <div class="navbar16_container-3 is-home"> 258 <a href="about.html" class="nav-logo-wrapper mobil-hidden w-variant-999c40da-ce64-1e6f-167f-3edc347143ba w-inline-block"><img loading="eager" src="images/name-desktop.svg" alt="" class="nav-logo-big w-variant-999c40da-ce64-1e6f-167f-3edc347143ba"></a> 259 <div class="navbar16_wrapper-2"> 260 <nav role="navigation" class="navbar16_menu-3 w-nav-menu"> 261 <div class="navbar16_menu-wrapper-2"> 262 <div class="navbar16_links-wrapper-2"> 263 <a href="#home" class="navbar16_link-2 w-nav-link">Home</a> 264 <a href="about.html" class="navbar16_link-2 w-nav-link">About</a> 265 <a href="news.html" class="navbar16_link-2 w-nav-link">News</a> 266 <a href="calendar.html" class="navbar16_link-2 w-nav-link">Calendar</a> 267 <a href="latest-work.html" class="navbar16_link-2 w-nav-link">Latest Work</a> 268 <a href="works.html" class="navbar16_link-2 w-nav-link">All Works</a> 269 <a href="media.html" class="navbar16_link-2 w-nav-link">Media</a> 270 <a href="/media#compositions" class="navbar16_link-2 media w-nav-link">COMPOSITIONS</a> 271 <a href="/media#improvisations" class="navbar16_link-2 media w-nav-link">IMPROVISATIONS</a> 272 <a href="/media#publications" class="navbar16_link-2 media w-nav-link">PUBLICATIONS</a> 273 <a href="/media#press" class="navbar16_link-2 media w-nav-link">PRESS</a> 274 <a href="/media#features" class="navbar16_link-2 media w-nav-link">Features</a> 275 <a href="/media#gallery" class="navbar16_link-2 media margin-bottom-bigger w-nav-link">Gallery</a> 276 <a href="blog.html" class="navbar16_link-2 w-nav-link">Blog</a> 277 <a href="#contact" class="navbar16_link-2 w-nav-link">Contact</a> 278 </div> 279 </div> 280 </nav> 281 <div class="navbar16_menu-button-2 w-nav-button"> 282 <div class="menu-icon4-2"> 283 <div class="menu-icon4_wrapper-2"> 284 <div class="menu-icon4_line-top-2"></div> 285 <div class="middle-line-wrapper"> 286 <div class="menu-icon4_line-middle-2"></div> 287 <div class="menu-icon4_line-middle--when-open-2"></div> 288 </div> 289 <div class="menu-icon4_line-bottom-2"></div> 290 </div> 291 </div> 292 </div> 293 </div> 294 </div> 295 </div> 296 <header id="home" class="hero-section"> 297 <div data-delay="4000" data-animation="slide" class="slider w-slider" data-autoplay="true" data-easing="ease" style="-webkit-transform:translate3d(0, 0, 0) scale3d(1.2, 1.2, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 0, 0) scale3d(1.2, 1.2, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 0, 0) scale3d(1.2, 1.2, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 0, 0) scale3d(1.2, 1.2, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0)" data-hide-arrows="false" data-disable-swipe="false" data-autoplay-limit="0" data-nav-spacing="3" data-duration="700" data-infinite="true" fs-cmsslider-element="slider"> 298 <div id="hero-slides" class="w-slider-mask"><div class="hero-slide w-slide"><img loading="eager" alt="" src="/assets/3cd80e14-d99b-4f81-be14-606489102bc4/ArdittiundPrins-c_MarkusSepperer.webp" class="hero-slide-img" style="object-position: 50.00% 50.00%;"> 299 <div class="hero-slide-contents"> 300 <div class="padding-global height-100"> 301 <div class="container-large height-100"> 302 <div class="flex-bottom-left"> 303 <div class="text-color-secondary"> 304 <div class="h5-text">Arditti Quartet, Yaron Deutsch & Stefan Prins performing "Cyborg Flesh" (Wien Modern, Konzerthaus Wien, 31.10.2025) (photo Markus Sepperer) </div> 305 </div> 306 </div> 307 </div> 308 </div> 309 </div> 310 </div><div class="hero-slide w-slide"><img loading="eager" alt="" src="/assets/4cc44203-ff91-486f-9d6a-e2f3a66398bd/ThirdSpace-Klangforum-2.webp" class="hero-slide-img" style="object-position: 50.00% 50.00%;"> 311 <div class="hero-slide-contents"> 312 <div class="padding-global height-100"> 313 <div class="container-large height-100"> 314 <div class="flex-bottom-left"> 315 <div class="text-color-secondary"> 316 <div class="h5-text">Klangforum Wien, cond. Bas Wiegers &
316 HIATUS Dance Company performing "Third Space" at Müchener Biennale für Neues Musiktheater 2018 (photo: Danny Willems)</div> 317 </div> 318 </div> 319 </div> 320 </div> 321 </div> 322 </div><div class="hero-slide w-slide"><img loading="eager" alt="" src="/assets/6ab526ce-da7f-435a-8854-7c364a519f82/PH4-looking-into-virtual-cam.webp" class="hero-slide-img" style="object-position: 50.00% 50.00%;"> 323 <div class="hero-slide-contents"> 324 <div class="padding-global height-100"> 325 <div class="container-large height-100"> 326 <div class="flex-bottom-left"> 327 <div class="text-color-secondary"> 328 <div class="h5-text">Stephane Ginsburgh performing "Piano Hero #4" (De Singel, 2018)</div> 329 </div> 330 </div> 331 </div> 332 </div> 333 </div> 334 </div><div class="hero-slide w-slide"><img loading="eager" alt="" src="/assets/37506621-6ab9-4939-b180-c60c45f775fb/Wanderer_20_De_Singel_Voorstelling_125.webp" class="hero-slide-img" style="object-position: 50.00% 50.00%;"> 335 <div class="hero-slide-contents"> 336 <div class="padding-global height-100"> 337 <div class="container-large height-100"> 338 <div class="flex-bottom-left"> 339 <div class="text-color-secondary"> 340 <div class="h5-text">Nadar Ensemble performing "Mesh" at DE SINGEL, 2023 (photo Wim Heirbaut)</div> 341 </div> 342 </div> 343 </div> 344 </div> 345 </div> 346 </div><div class="hero-slide w-slide"><img loading="eager" alt="" src="/assets/ee8d0161-12f4-45e0-96df-a09d9dd185d2/skindeep1-ascolta.webp" class="hero-slide-img" style="object-position: 50.00% 50.00%;"> 347 <div class="hero-slide-contents"> 348 <div class="padding-global height-100"> 349 <div class="container-large height-100"> 350 <div class="flex-bottom-left"> 351 <div class="text-color-secondary"> 352 <div class="h5-text">Sarah Defrise (sop.), Ascolta & WARPED TYPE, performing "Skin Deep #1" at Essen NOW!, 2024</div> 353 </div> 354 </div> 355 </div> 356 </div> 357 </div> 358 </div><div class="hero-slide w-slide"><img loading="eager" alt="" src="/assets/1991b793-78da-4d7b-a4fd-07ce536822e5/Noses-Dresden.webp" class="hero-slide-img" style="object-position: 50.00% 50.00%;"> 359 <div class="hero-slide-contents"> 360 <div class="padding-global height-100"> 361 <div class="container-large height-100"> 362 <div class="flex-bottom-left"> 363 <div class="text-color-secondary"> 364 <div class="h5-text">NOSES (Mazen Kerbaj, trumpets & Stefan Prins, live-electronics) - Improv duo, live at dasKONZERTS, Dresden, 2023</div> 365 </div> 366 </div> 367 </div> 368 </div> 369 </div> 370 </div><div class="hero-slide w-slide"><img loading="eager" alt="" src="/assets/a1c52252-49ba-475f-b308-7f7235d9d6f6/inhabit_inhibit_Marieke_Wijntjes.webp" class="hero-slide-img" style="object-position: 50.00% 50.00%;"> 371 <div class="hero-slide-contents"> 372 <div class="padding-global height-100"> 373 <div class="container-large height-100"> 374 <div class="flex-bottom-left"> 375 <div class="text-color-secondary"> 376 <div class="h5-text">ASKO|Schönberg & EnsembleKollektiv Berlin, cond. Baldur Brönnimann playing "inhabit_inhibit" at Muziekgebouw aan 't IJ, 2022 (photo Marieke Wijntjes)</div> 377 </div> 378 </div> 379 </div> 380 </div> 381 </div> 382 </div><div class="hero-slide w-slide"><img loading="eager" alt="" src="/assets/2869c724-f3d9-47d6-99d9-7cd565d155f1/ReiNakamura-Kyoto-2018-C_StefanPrins.webp" class="hero-slide-img" style="object-position: 50.00% 50.00%;"> 383 <div class="hero-slide-contents"> 384 <div class="padding-global height-100"> 385 <div class="container-large height-100"> 386 <div class="flex-bottom-left"> 387 <div class="text-color-secondary"> 388 <div class="h5-text">Rei Nakamura playing "Piano Hero #1" (photo by Stefan Prins)</div> 389 </div> 390 </div> 391 </div> 392 </div> 393 </div> 394 </div><div class="hero-slide w-slide"><img loading="eager" alt="" src="/assets/b8342bea-b034-411d-b800-b288d2f0ca5c/under_current-Prins-Donaueschingen.webp" class="hero-slide-img" style="object-position: 50.00% 50.00%;"> 395 <div class="hero-slide-contents"> 396 <div class="padding-global height-100"> 397 <div class="container-large height-100"> 398 <div class="flex-bottom-left"> 399 <div class="text-color-secondary"> 400 <div class="h5-text">Yaron Deutsch (e-guitar) & Orchestre Philharmonique de Luxembourg, cond. Ilan Volkov, performing "under_current" at Donaueschinger Musiktage 2021</div> 401 </div> 402 </div> 403 </div> 404 </div> 405 </div> 406 </div><div class="hero-slide w-slide"><img loading="eager" alt="" src="/assets/65e232e4-cd1d-4517-b8b9-6d6487525fa5/GEnerationKill-copyright-AnnavanKooij.webp" class="hero-slide-img" style="object-position: 50.00% 50.00%;"> 407 <div class="hero-slide-contents"> 408 <div class="padding-global height-100"> 409 <div class="container-large height-100"> 410 <div class="flex-bottom-left"> 411 <div class="text-color-secondary"> 412 <div class="h5-text">Nadar Ensemble performing "Generation Kill" at Gaudeamus Festival 2015 (photo Anna Van Kooij)</div> 413 </div> 414 </div> 415 </div> 416 </div> 417 </div> 418 </div></div> 419 <div class="left-arrow w-slider-arrow-left"></div> 420 <div class="right-arrow w-slider-arrow-right"></div> 421 <div class="slide-nav w-slider-nav w-round"></div> 422 </div> 423 <div class="hero-contents"> 424 <div style="-webkit-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);opacity:0" class="hero-container"> 425 <div class="hero-heading-wrapper"><img src="images/Group-43.svg" loading="eager" alt="" class="hero-heading mobile hide-mobile-portrait"><img src="images/Group-44.svg" loading="eager" alt="" class="hero-heading mobile show-mobile-portrait"></div> 426 </div> 427 </div> 428 </header> 429 <section> 430 <div class="padding-global"> 431 <div class="container-large"> 432 <div class="margin-section-large"> 433 <div class="section-grid"> 434 <div data-w-id="ba7395eb-f52f-aa16-c159-18db8457217b" class="slidein-wrapper"> 435 <div class="light-section"> 436 <div style="-webkit-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0)" class="slidein-contents"> 437 <div class="margin-bottom64"> 438 <div class="section-heading-wrapper"> 439 <a href="news.html" class="width-full w-inline-block"><img src="images/NEWS_1.svg" loading="eager" alt="" class="section-heading"></a> 440 </div> 441 </div> 442 <div class="inner-padding bottom-big"> 443 <div class="flex-center"><div class="max-width-32"> 444 <a href="news.html" class="news-item-home w-inline-block"><img src="/assets/514ebca1-f038-49d4-8e2a-de266f6f1af1/Nikel_MockUp.webp" loading="eager" alt="NEW EP RELEASE - CORPORA EX MACHINA" class="news-img" style="object-position: 50.00% 50.00%;"></a> 445 </div></div> 446 </div> 447 </div> 448 </div> 449 <div style="-webkit-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);display:block" class="slidein-overlay"></div> 450 </div> 451 <div data-w-id="c9b238a7-ff89-276b-c7de-5fcc523cd9ad" class="slidein-wrapper"> 452 <a data-w-id="f45bd86b-b596-3bf8-53dc-b76ef9e16337" href="latest-work.html" class="big-wrapper w-inline-block"> 453 <div style="-webkit-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0)" class="slidein-contents"> 454 <div class="is-relative"> 455 <div class="section-heading-wrapper"><img src="images/LATEST-WORK.svg" loading="eager" alt="" class="section-heading"></div> 456 <div class="absolut-img-wrapper"><img src="/assets/121ea2aa-4781-4ada-8487-4f606215ced6/LATEST-WORK-3-DSCF7519.webp" loading="eager" style="-webkit-transform: translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0); -moz-transform: translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0); -ms-transform: translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0); transform: translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0); object-position: 4.68% 58.29%;" alt="To the bone" class="absolut-img"></div> 457 </div> 458 </div> 459 </a> 460 <div style="-webkit-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);display:block" class="slidein-overlay"></div> 461 </div> 462 </div> 463 </div> 464 </div> 465 </div> 466 </section> 467 <section> 468 <div class="padding-global"> 469 <div class="container-large"> 470 <div class="margin-section-large"> 471 <div class="section-grid"> 472 <div> 473 <div class="margin-bottom64"> 474 <div class="section-heading-wrapper"> 475 <a href="calendar.html" class="width-full w-inline-block"><img src="images/CALENDAR.svg" loading="eager" alt="" class="section-heading"></a> 476 </div> 477 </div> 478 <div class="inner-padding bottom-big is-calendar"> 479 <div class="flex-center"> 480 <div class="max-width-32"> 481 <div class="events-items-wrapper" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5"><div data-wf--event-item--variant="home" data-w-id="7ad7349f-5154-b9fa-af29-2818c84db4ad" class="event-item w-variant-a6b960dc-138e-29ff-bc94-c45bceaa88e3" id="8ed9540e-5c2d-4877-930d-5c6a386c861a" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-8ed9540e-5c2d-4877-930d-5c6a386c861a" data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"> 482 <div class="margin-bottom10"> 483 <div class="event-head"> 484 <div class="text-color-secondary"> 485 <h4 class="h3-text krok">26.09.2025</h4> 486 </div> 487 <div> 488 <h3 class="h6-text weight-700">Ensemble Recherche</h3> 489 <h3 class="h6-text weight-700 italic">Inhibition Space #1</h3> 490 </div> 491 </div> 492 </div> 493 <div class="margin-bottom15"> 494 <div class="h6-text" style="display: none;">NAME OF FESTIVAL LOREM IPSUM</div> 495 <div class="h6-text">Ensemblehaus Freiburg</div> 496 </div> 497 <div class="text-align-right"> 498 <a href="/calendar#8ed9540e-5c2d-4877-930d-5c6a386c861a" class="btn w-inline-block"> 499 <div>More</div> 500 </a> 501 </div> 502
502<script> 503 el = document.querySelector('[data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-8ed9540e-5c2d-4877-930d-5c6a386c861a"]') 504 if(1759082400000 > (new Date()).getTime()) { 505 el.style.display = '' 506 } else { 507 el.remove() 508 } 509 </script>
509 510 </div><div data-wf--event-item--variant="home" data-w-id="7ad7349f-5154-b9fa-af29-2818c84db4ad" class="event-item w-variant-a6b960dc-138e-29ff-bc94-c45bceaa88e3" id="2b09cda1-59fc-407c-95c6-e4ab7b62a1dc" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-2b09cda1-59fc-407c-95c6-e4ab7b62a1dc" data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"> 511 <div class="margin-bottom10"> 512 <div class="event-head"> 513 <div class="text-color-secondary"> 514 <h4 class="h3-text krok">01.10.2025</h4> 515 </div> 516 <div> 517 <h3 class="h6-text weight-700">Sistema Ensemble</h3> 518 <h3 class="h6-text weight-700 italic">Piano Hero #1</h3> 519 </div> 520 </div> 521 </div> 522 <div class="margin-bottom15"> 523 <div class="h6-text" style="display: none;">NAME OF FESTIVAL LOREM IPSUM</div> 524 <div class="h6-text" style="display: none;">20:00 Uhr | Ensemblehaus Freiburg, Freiburg, Germany</div> 525 </div> 526 <div class="text-align-right"> 527 <a href="/calendar#2b09cda1-59fc-407c-95c6-e4ab7b62a1dc" class="btn w-inline-block"> 528 <div>More</div> 529 </a> 530 </div> 531
531<script> 532 el = document.querySelector('[data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-2b09cda1-59fc-407c-95c6-e4ab7b62a1dc"]') 533 if(1759514400000 > (new Date()).getTime()) { 534 el.style.display = '' 535 } else { 536 el.remove() 537 } 538 </script>
538 539 </div><div data-wf--event-item--variant="home" data-w-id="7ad7349f-5154-b9fa-af29-2818c84db4ad" class="event-item w-variant-a6b960dc-138e-29ff-bc94-c45bceaa88e3" id="279c8e98-4413-4d2c-97f0-0885d7eeba08" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-279c8e98-4413-4d2c-97f0-0885d7eeba08" data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"> 540 <div class="margin-bottom10"> 541 <div class="event-head"> 542 <div class="text-color-secondary"> 543 <h4 class="h3-text krok">31.10.2025</h4> 544 </div> 545 <div> 546 <h3 class="h6-text weight-700">Arditti Quartet, Yaron Deutsch & Stefan Prins</h3> 547 <h3 class="h6-text weight-700 italic">Cyborg Flesh (WP)</h3> 548 </div> 549 </div> 550 </div> 551 <div class="margin-bottom15"> 552 <div class="h6-text">Wien Modern</div> 553 <div class="h6-text">Mozartsaal, Konzerthaus Wien</div> 554 </div> 555 <div class="text-align-right"> 556 <a href="/calendar#279c8e98-4413-4d2c-97f0-0885d7eeba08" class="btn w-inline-block"> 557 <div>More</div> 558 </a> 559 </div> 560
560<script> 561 el = document.querySelector('[data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-279c8e98-4413-4d2c-97f0-0885d7eeba08"]') 562 if(1762108200000 > (new Date()).getTime()) { 563 el.style.display = '' 564 } else { 565 el.remove() 566 } 567 </script>
567 568 </div><div data-wf--event-item--variant="home" data-w-id="7ad7349f-5154-b9fa-af29-2818c84db4ad" class="event-item w-variant-a6b960dc-138e-29ff-bc94-c45bceaa88e3" id="fd2c3adb-f466-40b9-afc9-655f74e71a8f" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-fd2c3adb-f466-40b9-afc9-655f74e71a8f" data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"> 569 <div class="margin-bottom10"> 570 <div class="event-head"> 571 <div class="text-color-secondary"> 572 <h4 class="h3-text krok">05.02.2026</h4> 573 </div> 574 <div> 575 <h3 class="h6-text weight-700">Nadar Ensemble</h3> 576 <h3 class="h6-text weight-700 italic">Generation Kill - Offspring #2</h3> 577 </div> 578 </div> 579 </div> 580 <div class="margin-bottom15"> 581 <div class="h6-text">SMOG</div> 582 <div class="h6-text">Van Volxemlaan 380, 1190 Vorst, Belgium</div> 583 </div> 584 <div class="text-align-right"> 585 <a href="/calendar#fd2c3adb-f466-40b9-afc9-655f74e71a8f" class="btn w-inline-block"> 586 <div>More</div> 587 </a> 588 </div> 589
589<script> 590 el = document.querySelector('[data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-fd2c3adb-f466-40b9-afc9-655f74e71a8f"]') 591 if(1770490800000 > (new Date()).getTime()) { 592 el.style.display = '' 593 } else { 594 el.remove() 595 } 596 </script>
596 597 </div><div data-wf--event-item--variant="home" data-w-id="7ad7349f-5154-b9fa-af29-2818c84db4ad" class="event-item w-variant-a6b960dc-138e-29ff-bc94-c45bceaa88e3" id="31433d28-441b-45f5-8e46-dc95367d27ed" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-31433d28-441b-45f5-8e46-dc95367d27ed" data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"> 598 <div class="margin-bottom10"> 599 <div class="event-head"> 600 <div class="text-color-secondary"> 601 <h4 class="h3-text krok">28.02.2026</h4> 602 </div> 603 <div> 604 <h3 class="h6-text weight-700">Florentin Ginot</h3> 605 <h3 class="h6-text weight-700 italic">To the bone (WP)</h3> 606 </div> 607 </div> 608 </div> 609 <div class="margin-bottom15"> 610 <div class="h6-text" style="display: none;">NAME OF FESTIVAL LOREM IPSUM</div> 611 <div class="h6-text">Concertgebouw Brugge</div> 612 </div> 613 <div class="text-align-right"> 614 <a href="/calendar#31433d28-441b-45f5-8e46-dc95367d27ed" class="btn w-inline-block"> 615 <div>More</div> 616 </a> 617 </div> 618
618<script> 619 el = document.querySelector('[data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-31433d28-441b-45f5-8e46-dc95367d27ed"]') 620 if(1772478000000 > (new Date()).getTime()) { 621 el.style.display = '' 622 } else { 623 el.remove() 624 } 625 </script>
625 626 </div><div data-wf--event-item--variant="home" data-w-id="7ad7349f-5154-b9fa-af29-2818c84db4ad" class="event-item w-variant-a6b960dc-138e-29ff-bc94-c45bceaa88e3" id="088896fb-5bb9-4fde-8698-187947558f19" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-088896fb-5bb9-4fde-8698-187947558f19" data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"> 627 <div class="margin-bottom10"> 628 <div class="event-head"> 629 <div class="text-color-secondary"> 630 <h4 class="h3-text krok">01.03.2026</h4> 631 </div> 632 <div> 633 <h3 class="h6-text weight-700">Peter Jacquemyn & Stefan Prins</h3> 634 <h3 class="h6-text weight-700 italic">Duo Improvisation</h3> 635 </div> 636 </div> 637 </div> 638 <div class="margin-bottom15"> 639 <div class="h6-text" style="display: none;">NAME OF FESTIVAL LOREM IPSUM</div> 640 <div class="h6-text">Zonneklopper, Glasblazerijlaan 23, 1190 Vorst</div> 641 </div> 642 <div class="text-align-right"> 643 <a href="/calendar#088896fb-5bb9-4fde-8698-187947558f19" class="btn w-inline-block"> 644 <div>More</div> 645 </a> 646 </div> 647
647<script> 648 el = document.querySelector('[data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-088896fb-5bb9-4fde-8698-187947558f19"]') 649 if(1772560800000 > (new Date()).getTime()) { 650 el.style.display = '' 651 } else { 652 el.remove() 653 } 654 </script>
654 655 </div><div data-wf--event-item--variant="home" data-w-id="7ad7349f-5154-b9fa-af29-2818c84db4ad" class="event-item w-variant-a6b960dc-138e-29ff-bc94-c45bceaa88e3" id="820ef2f8-120e-4c83-a9f5-080e1cdc585a" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-820ef2f8-120e-4c83-a9f5-080e1cdc585a" data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"> 656 <div class="margin-bottom10"> 657 <div class="event-head"> 658 <div class="text-color-secondary"> 659 <h4 class="h3-text krok">11.05.2026</h4> 660 </div> 661 <div> 662 <h3 class="h6-text weight-700">Florentin Ginot</h3> 663 <h3 class="h6-text weight-700 italic">To the bone</h3> 664 </div> 665 </div> 666 </div> 667 <div class="margin-bottom15"> 668 <div class="h6-text">Frequenz Kiel</div> 669 <div class="h6-text">Muthesius Kunsthochschule - Kesselhaus, Kiel</div> 670 </div> 671 <div class="text-align-right"> 672 <a href="/calendar#820ef2f8-120e-4c83-a9f5-080e1cdc585a" class="btn w-inline-block"> 673 <div>More</div> 674 </a> 675 </div> 676
676<script> 677 el = document.querySelector('[data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-820ef2f8-120e-4c83-a9f5-080e1cdc585a"]') 678 if(1778655600000 > (new Date()).getTime()) { 679 el.style.display = '' 680 } else { 681 el.remove() 682 } 683 </script>
683 684 </div><div data-wf--event-item--variant="home" data-w-id="7ad7349f-5154-b9fa-af29-2818c84db4ad" class="event-item w-variant-a6b960dc-138e-29ff-bc94-c45bceaa88e3" id="e70ac029-e4f4-44b0-94a5-070fc4851181" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-e70ac029-e4f4-44b0-94a5-070fc4851181" data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"> 685 <div class="margin-bottom10"> 686 <div class="event-head"> 687 <div class="text-color-secondary"> 688 <h4 class="h3-text krok">23.06.2026</h4> 689 </div> 690 <div> 691 <h3 class="h6-text weight-700">Olivia Palmer-Baker</h3> 692 <h3 class="h6-text weight-700 italic">Inhibition Space #2 (version for bassoon and live-electronics)</h3> 693 </div> 694 </div> 695 </div> 696 <div class="margin-bottom15"> 697 <div class="h6-text">Unerhörte Musik</div> 698 <div class="h6-text">BKA Theater, Mehringdamm 34, Berlin</div> 699 </div> 700 <div class="text-align-right"> 701 <a href="/calendar#e70ac029-e4f4-44b0-94a5-070fc4851181" class="btn w-inline-block"> 702 <div>More</div> 703 </a> 704 </div> 705
705<script> 706 el = document.querySelector('[data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-e70ac029-e4f4-44b0-94a5-070fc4851181"]') 707 if(1782410400000 > (new Date()).getTime()) { 708 el.style.display = '' 709 } else { 710 el.remove() 711 } 712 </script>
712 713 </div><div data-wf--event-item--variant="home" data-w-id="7ad7349f-5154-b9fa-af29-2818c84db4ad" class="event-item w-variant-a6b960dc-138e-29ff-bc94-c45bceaa88e3" id="10471f81-9747-4f23-ba13-cfb16b830728" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-10471f81-9747-4f23-ba13-cfb16b830728" data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"> 714 <div class="margin-bottom10"> 715 <div class="event-head"> 716 <div class="text-color-secondary"> 717 <h4 class="h3-text krok">25.06.2026</h4> 718 </div> 719 <div> 720 <h3 class="h6-text weight-700">Ensemble Aventure</h3> 721 <h3 class="h6-text weight-700 italic">Inhibition Space #2 (version for bassoon and live-electronics)</h3> 722 </div> 723 </div> 724 </div> 725 <div class="margin-bottom15"> 726 <div class="h6-text">Daegu Contemporary Music Festival</div> 727 <div class="h6-text">Daegu Concert House, Daegu, South-Korea</div> 728 </div> 729 <div class="text-align-right"> 730 <a href="/calendar#10471f81-9747-4f23-ba13-cfb16b830728" class="btn w-inline-block"> 731 <div>More</div> 732 </a> 733 </div> 734
734<script> 735 el = document.querySelector('[data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-10471f81-9747-4f23-ba13-cfb16b830728"]') 736 if(1782518400000 > (new Date()).getTime()) { 737 el.style.display = '' 738 } else { 739 el.remove() 740 } 741 </script>
741 742 </div><div data-wf--event-item--variant="home" data-w-id="7ad7349f-5154-b9fa-af29-2818c84db4ad" class="event-item w-variant-a6b960dc-138e-29ff-bc94-c45bceaa88e3" id="9e8afe81-d75c-45f9-a82c-d92711968ac8" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-9e8afe81-d75c-45f9-a82c-d92711968ac8" data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"> 743 <div class="margin-bottom10"> 744 <div class="event-head"> 745 <div class="text-color-secondary"> 746 <h4 class="h3-text krok">03.09.2026</h4> 747 </div> 748 <div> 749 <h3 class="h6-text weight-700">Daniele Fasani & Studio Agon (Massimo Marchi)</h3> 750 <h3 class="h6-text weight-700 italic">Piano Hero #1, 2 & 4</h3> 751 </div> 752 </div> 753 </div> 754 <div class="margin-bottom15"> 755 <div class="h6-text">Spaziomusica Festival</div> 756 <div class="h6-text">Cagliari, Sardinia</div> 757 </div> 758 <div class="text-align-right"> 759 <a href="/calendar#9e8afe81-d75c-45f9-a82c-d92711968ac8" class="btn w-inline-block"> 760 <div>More</div> 761 </a> 762 </div> 763
763<script> 764 el = document.querySelector('[data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-9e8afe81-d75c-45f9-a82c-d92711968ac8"]') 765 if(1788624000000 > (new Date()).getTime()) { 766 el.style.display = '' 767 } else { 768 el.remove() 769 } 770 </script>
770 771 </div><div data-wf--event-item--variant="home" data-w-id="7ad7349f-5154-b9fa-af29-2818c84db4ad" class="event-item w-variant-a6b960dc-138e-29ff-bc94-c45bceaa88e3" id="39089e6d-4627-4dbb-9a50-f829adf3c8ce" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-39089e6d-4627-4dbb-9a50-f829adf3c8ce" data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"> 772 <div class="margin-bottom10"> 773 <div class="event-head"> 774 <div class="text-color-secondary"> 775 <h4 class="h3-text krok">19.09.2026</h4> 776 </div> 777 <div> 778 <h3 class="h6-text weight-700">Hashtag Ensemble</h3> 779 <h3 class="h6-text weight-700 italic">I'm your body</h3> 780 </div> 781 </div> 782 </div> 783 <div class="margin-bottom15"> 784 <div class="h6-text">Warsaw Autumn</div> 785 <div class="h6-text">Nowy Teatr Warsaw</div> 786 </div> 787 <div class="text-align-right"> 788 <a href="/calendar#39089e6d-4627-4dbb-9a50-f829adf3c8ce" class="btn w-inline-block"> 789 <div>More</div> 790 </a> 791 </div> 792
792<script> 793 el = document.querySelector('[data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-39089e6d-4627-4dbb-9a50-f829adf3c8ce"]') 794 if(1790011800000 > (new Date()).getTime()) { 795 el.style.display = '' 796 } else { 797 el.remove() 798 } 799 </script>
799 800 </div><div data-wf--event-item--variant="home" data-w-id="7ad7349f-5154-b9fa-af29-2818c84db4ad" class="event-item w-variant-a6b960dc-138e-29ff-bc94-c45bceaa88e3" id="3d36d2fa-c9d7-40df-bb85-b519c85a7e0d" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-3d36d2fa-c9d7-40df-bb85-b519c85a7e0d" data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"> 801 <div class="margin-bottom10"> 802 <div class="event-head"> 803 <div class="text-color-secondary"> 804 <h4 class="h3-text krok">16.10.2026</h4> 805 </div> 806 <div> 807 <h3 class="h6-text weight-700">SWR Symphonieorchester, Brad Lubman, SWR Experimentalstudio</h3> 808 <h3 class="h6-text weight-700 italic">Madness Machines</h3> 809 </div> 810 </div> 811 </div> 812 <div class="margin-bottom15"> 813 <div class="h6-text">Donaueschinger Musiktage</div> 814 <div class="h6-text">Donaueschingen, Baarsporthalle</div> 815 </div> 816 <div class="text-align-right"> 817 <a href="/calendar#3d36d2fa-c9d7-40df-bb85-b519c85a7e0d" class="btn w-inline-block"> 818 <div>More</div> 819 </a> 820 </div> 821
821<script> 822 el = document.querySelector('[data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-3d36d2fa-c9d7-40df-bb85-b519c85a7e0d"]') 823 if(1792346400000 > (new Date()).getTime()) { 824 el.style.display = '' 825 } else { 826 el.remove() 827 } 828 </script>
828 829 </div><div data-wf--event-item--variant="home" data-w-id="7ad7349f-5154-b9fa-af29-2818c84db4ad" class="event-item w-variant-a6b960dc-138e-29ff-bc94-c45bceaa88e3" id="2efd45da-43a9-495a-be9d-5d75ce334050" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-2efd45da-43a9-495a-be9d-5d75ce334050" data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"> 830 <div class="margin-bottom10"> 831 <div class="event-head"> 832 <div class="text-color-secondary"> 833 <h4 class="h3-text krok">23.10.2026</h4> 834 </div> 835 <div> 836 <h3 class="h6-text weight-700">Arditti Quartet, Yaron Deutsch, Stefan Prins & Fredi Reiter</h3> 837 <h3 class="h6-text weight-700 italic">Cyborg Flesh</h3> 838 </div> 839 </div> 840 </div> 841 <div class="margin-bottom15"> 842 <div class="h6-text">Transit Festival</div> 843 <div class="h6-text">STUK, Leuven, Belgium</div> 844 </div> 845 <div class="text-align-right"> 846 <a href="/calendar#2efd45da-43a9-495a-be9d-5d75ce334050" class="btn w-inline-block"> 847 <div>More</div> 848 </a> 849 </div> 850
850<script> 851 el = document.querySelector('[data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-2efd45da-43a9-495a-be9d-5d75ce334050"]') 852 if(1792951200000 > (new Date()).getTime()) { 853 el.style.display = '' 854 } else { 855 el.remove() 856 } 857 </script>
857 858 </div><div data-wf--event-item--variant="home" data-w-id="7ad7349f-5154-b9fa-af29-2818c84db4ad" class="event-item w-variant-a6b960dc-138e-29ff-bc94-c45bceaa88e3" id="496cc5b4-43ee-41f0-9998-8b1ed01d5170" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-496cc5b4-43ee-41f0-9998-8b1ed01d5170" data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"> 859 <div class="margin-bottom10"> 860 <div class="event-head"> 861 <div class="text-color-secondary"> 862 <h4 class="h3-text krok">10.11.2026</h4> 863 </div> 864 <div> 865 <h3 class="h6-text weight-700">Ensemble Fractales</h3> 866 <h3 class="h6-text weight-700 italic">Hände ohne Orte</h3> 867 </div> 868 </div> 869 </div> 870 <div class="margin-bottom15"> 871 <div class="h6-text">Belgian Music Days</div> 872 <div class="h6-text">Miry Zaal, Gent Conservatory </div> 873 </div> 874 <div class="text-align-right"> 875 <a href="/calendar#496cc5b4-43ee-41f0-9998-8b1ed01d5170" class="btn w-inline-block"> 876 <div>More</div> 877 </a> 878 </div> 879
879<script> 880 el = document.querySelector('[data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-496cc5b4-43ee-41f0-9998-8b1ed01d5170"]') 881 if(1794492000000 > (new Date()).getTime()) { 882 el.style.display = '' 883 } else { 884 el.remove() 885 } 886 </script>
886 887 </div><div data-wf--event-item--variant="home" data-w-id="7ad7349f-5154-b9fa-af29-2818c84db4ad" class="event-item w-variant-a6b960dc-138e-29ff-bc94-c45bceaa88e3" id="1c3d6ced-aa54-41a6-b13f-ea84b737c838" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-1c3d6ced-aa54-41a6-b13f-ea84b737c838" data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"> 888 <div class="margin-bottom10"> 889 <div class="event-head"> 890 <div class="text-color-secondary"> 891 <h4 class="h3-text krok">13.11.2026</h4> 892 </div> 893 <div> 894 <h3 class="h6-text weight-700">Nadar Ensemble</h3> 895 <h3 class="h6-text weight-700 italic">Mesh</h3> 896 </div> 897 </div> 898 </div> 899 <div class="margin-bottom15"> 900 <div class="h6-text">Nadar Birthday Concert </div> 901 <div class="h6-text">DE SINGEL, Antwerp</div> 902 </div> 903 <div class="text-align-right"> 904 <a href="/calendar#1c3d6ced-aa54-41a6-b13f-ea84b737c838" class="btn w-inline-block"> 905 <div>More</div> 906 </a> 907 </div> 908
908<script> 909 el = document.querySelector('[data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-1c3d6ced-aa54-41a6-b13f-ea84b737c838"]') 910 if(1794769200000 > (new Date()).getTime()) { 911 el.style.display = '' 912 } else { 913 el.remove() 914 } 915 </script>
915 916 </div><div data-wf--event-item--variant="home" data-w-id="7ad7349f-5154-b9fa-af29-2818c84db4ad" class="event-item w-variant-a6b960dc-138e-29ff-bc94-c45bceaa88e3" id="a57862ca-f109-4787-8208-958188d0be77" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-a57862ca-f109-4787-8208-958188d0be77" data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"> 917 <div class="margin-bottom10"> 918 <div class="event-head"> 919 <div class="text-color-secondary"> 920 <h4 class="h3-text krok">13.11.2026</h4> 921 </div> 922 <div> 923 <h3 class="h6-text weight-700">Electroacoustic Music Research Center of Zhejiang Conservatory of Music</h3> 924 <h3 class="h6-text weight-700 italic">Hybridae</h3> 925 </div> 926 </div> 927 </div> 928 <div class="margin-bottom15"> 929 <div class="h6-text">MUSICACOUSTICA-HANGZHOU</div> 930 <div class="h6-text">Zhejiang Conservatory of Music, Hangzhou, China</div> 931 </div> 932 <div class="text-align-right"> 933 <a href="/calendar#a57862ca-f109-4787-8208-958188d0be77" class="btn w-inline-block"> 934 <div>More</div> 935 </a> 936 </div> 937
937<script> 938 el = document.querySelector('[data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-a57862ca-f109-4787-8208-958188d0be77"]') 939 if(1794769200000 > (new Date()).getTime()) { 940 el.style.display = '' 941 } else { 942 el.remove() 943 } 944 </script>
944 945 </div><div data-wf--event-item--variant="home" data-w-id="7ad7349f-5154-b9fa-af29-2818c84db4ad" class="event-item w-variant-a6b960dc-138e-29ff-bc94-c45bceaa88e3" id="624cde1a-0a80-4b96-9a66-3c7480729200" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-624cde1a-0a80-4b96-9a66-3c7480729200" data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"> 946 <div class="margin-bottom10"> 947 <div class="event-head"> 948 <div class="text-color-secondary"> 949 <h4 class="h3-text krok">14.11.2026</h4> 950 </div> 951 <div> 952 <h3 class="h6-text weight-700">Nadar Ensemble</h3> 953 <h3 class="h6-text weight-700 italic">Mesh</h3> 954 </div> 955 </div> 956 </div> 957 <div class="margin-bottom15"> 958 <div class="h6-text">Nadar Birthday Concert</div> 959 <div class="h6-text">DE SINGEL, Antwerp</div> 960 </div> 961 <div class="text-align-right"> 962 <a href="/calendar#624cde1a-0a80-4b96-9a66-3c7480729200" class="btn w-inline-block"> 963 <div>More</div> 964 </a> 965 </div> 966
966<script> 967 el = document.querySelector('[data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-624cde1a-0a80-4b96-9a66-3c7480729200"]') 968 if(1794855600000 > (new Date()).getTime()) { 969 el.style.display = '' 970 } else { 971 el.remove() 972 } 973 </script>
973 974 </div><div data-wf--event-item--variant="home" data-w-id="7ad7349f-5154-b9fa-af29-2818c84db4ad" class="event-item w-variant-a6b960dc-138e-29ff-bc94-c45bceaa88e3" id="35b58389-6946-4869-9828-c3a7218ee83a" data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-35b58389-6946-4869-9828-c3a7218ee83a" data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"> 975 <div class="margin-bottom10"> 976 <div class="event-head"> 977 <div class="text-color-secondary"> 978 <h4 class="h3-text krok">21.11.2026</h4> 979 </div> 980 <div> 981 <h3 class="h6-text weight-700">Arditti Quartet, Yaron Deutsch & Stefan Prins</h3> 982 <h3 class="h6-text weight-700 italic">Cyborg Flesh</h3> 983 </div> 984 </div> 985 </div> 986 <div class="margin-bottom15"> 987 <div class="h6-text">Rainy Days Festival </div> 988 <div class="h6-text">Philharmonie de Luxembourg</div> 989 </div> 990 <div class="text-align-right"> 991 <a href="/calendar#35b58389-6946-4869-9828-c3a7218ee83a" class="btn w-inline-block"> 992 <div>More</div> 993 </a> 994 </div> 995
995<script> 996 el = document.querySelector('[data-id="ac942288-e9d3-4931-b37d-c2a5846047b5-35b58389-6946-4869-9828-c3a7218ee83a"]') 997 if(1795460400000 > (new Date()).getTime()) { 998 el.style.display = '' 999 } else { 1000 el.remove() 1001 } 1002 </script>
1002 1003 </div> 1004
1004<script> 1005 limit = 4 1006 startAt = 0 1007 calendarItems = document.querySelectorAll('[data-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"]') 1008 if (limit) { 1009 for (let i = limit + startAt; i < calendarItems.length; i++) { 1010 calendarItems[i]?.remove() 1011 } 1012 } 1013 if (startAt > 0) { 1014 for (let i = 0; i < startAt; i++) { 1015 calendarItems[i]?.remove() 1016 } 1017 } 1018 if (calendarItems.length === 0) { 1019 document.addEventListener('DOMContentLoaded', function () { 1020 const emptyElement = document.querySelector('[data-empty-collection-id="ac942288-e9d3-4931-b37d-c2a5846047b5"]'); 1021 if (emptyElement) { 1022 emptyElement.style.display = ''; // Reset display property to its default 1023 } 1024 }); 1025 } 1026 </script>
1026 1027 </div> 1028 </div> 1029 </div> 1030 </div> 1031 </div> 1032 <div class="flex-horizontal"> 1033 <div data-w-id="f7908c1e-8771-49e2-6aa3-7dce24c11ba3" class="slidein-wrapper"> 1034 <div style="-webkit-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0)" class="slidein-contents"> 1035 <a data-w-id="313a1a23-fbf9-f8d5-f087-01fc860c4617" href="works.html" class="is-relative w-inline-block"> 1036 <div class="section-heading-wrapper"><img src="images/ALL-WORKS.svg" loading="eager" alt="" class="section-heading"></div> 1037 <div class="absolut-img-wrapper"><img src="images/mosaik-all-works-v9-1.webp" loading="eager" style="-webkit-transform:translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0)" alt="" class="absolut-img"></div> 1038 </a> 1039 </div> 1040 <div style="-webkit-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);display:block" class="slidein-overlay"></div> 1041 </div> 1042 <div data-w-id="4b4e0327-f971-9a8a-05f8-da426d2150bd" class="slidein-wrapper"> 1043 <div style="-webkit-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0)" class="slidein-contents"> 1044 <a data-w-id="d0c28c03-f12c-a476-64e0-637fc1c04d6f" href="media.html" class="is-relative w-inline-block"> 1045 <div class="section-heading-wrapper"><img src="images/MEDIA.svg" loading="eager" alt="" class="section-heading"></div> 1046 <div class="absolut-img-wrapper"><img src="images/MEDIA-block-1_1.webp" loading="eager" style="-webkit-transform:translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0)" alt="" class="absolut-img"></div> 1047 </a> 1048 </div> 1049 <div style="-webkit-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);display:block" class="slidein-overlay"></div> 1050 </div> 1051 </div> 1052 </div> 1053 </div> 1054 </div> 1055 </div> 1056 </section> 1057 <section> 1058 <div class="padding-global"> 1059 <div class="container-large"> 1060 <div class="margin-section-large"> 1061 <div class="section-grid"> 1062 <div data-w-id="049f35b3-ef1d-c746-2de6-b2002b290e9c" class="slidein-wrapper"> 1063 <div style="-webkit-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0)" class="slidein-contents"> 1064 <div class="big-wrapper"> 1065 <a data-w-id="40ec3229-010a-094a-c6ca-40c70b968c9e" href="about.html" class="is-relative w-inline-block"> 1066 <div class="section-heading-wrapper"><img src="images/ABOUT.svg" loading="eager" alt="" class="section-heading"></div> 1067 <div class="absolut-img-wrapper"><img src="images/prins-cloud_chamber_copyright-Laurent_Orseau_1.webp" loading="eager" style="-webkit-transform:translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0)" alt="" class="absolut-img"></div> 1068 </a> 1069 </div> 1070 </div> 1071 <div style="-webkit-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);display:block" class="slidein-overlay"></div> 1072 </div> 1073 <div class="blog-flex"> 1074 <div data-w-id="3aa1bed6-0cd5-333d-7423-c3409c1e1a41" class="slidein-wrapper height-100"> 1075 <div style="-webkit-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0)" class="slidein-contents"> 1076 <div class="min-height-medium"> 1077 <a data-w-id="40ec3229-010a-094a-c6ca-40c70b968ca3" href="blog.html" class="is-relative w-inline-block"> 1078 <div class="section-heading-wrapper"><img src="images/BLOG.svg" loading="eager" alt="" class="section-heading"></div> 1079 <div class="absolut-img-wrapper"><img src="images/BLOG-PIC-DSCF7469-1_1.webp" loading="eager" style="-webkit-transform:translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0)" alt="" class="absolut-img"></div> 1080 </a> 1081 </div> 1082 </div> 1083 <div style="-webkit-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);display:block" class="slidein-overlay"></div> 1084 </div> 1085 <div data-w-id="fa464e85-501e-bb77-edf2-74a4c1d76911" class="slidein-wrapper height-auto"> 1086 <div style="-webkit-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, 100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0)" class="slidein-contents"> 1087 <div class="newsletter-wrapper"> 1088 <div class="margin-bottom20"> 1089 <div class="text-color-secondary"> 1090 <h2 class="h3-text font-xyz">NEWSLETTER</h2> 1091 </div> 1092 </div> 1093 <div class="margin-bottom15"> 1094 <h3 class="h6-text weight-700 uppercase" style="display: none;">LOREM IPSUM DOLOR SIT</h3> 1095 </div> 1096 <div class="w-form" id="form-wrapper-738a7d7b-5cb1-4f0d-b2db-deeae76c0899"> 1097 <form id="form-738a7d7b-5cb1-4f0d-b2db-deeae76c0899" name="email-form" data-name="Email Form" method="get" class="form-2" data-wf-page-id="6888085c617ef31b88797d32" data-wf-element-id="1b6ca0b1-7746-cbed-ca9e-ab18e29716bf"><input class="text-field w-input" maxlength="256" name="email" data-name="email" placeholder="Enter your email ..." type="email" id="email" required=""><input type="submit" data-wait="Please wait..." class="btn w-button" value="Sign Up"></form> 1098 <div class="form-done"> 1099 <div>Thank you! Your submission has been received!</div> 1100 </div> 1101 <div class="form-fail"> 1102 <div>Oops! Something went wrong while submitting the form.</div> 1103 </div> 1104
1104<script> 1105 document.getElementById('form-738a7d7b-5cb1-4f0d-b2db-deeae76c0899').addEventListener('submit', async (event) => { 1106 const formWrapperElement = document.getElementById('form-wrapper-738a7d7b-5cb1-4f0d-b2db-deeae76c0899') 1107 event.preventDefault() 1108 const form = event.target 1109 const formData = new FormData(form) 1110 const fields = {} 1111 for (const [key, value] of formData.entries()) { 1112 fields[key] = value 1113 } 1114 fields._targetCollection = 'mailchimp' 1115 try { 1116 const response = await fetch('/api/cms-request', { 1117 method: 'POST', 1118 headers: { 1119 'Content-Type': 'application/json', 1120 }, 1121 body: JSON.stringify(fields), 1122 }) 1123 if (!response.ok) { 1124 throw new Error('Failed to submit form') 1125 } 1126 const data = await response.json() 1127 formWrapperElement.querySelector('.form-done').style.display = 'block' 1128 formWrapperElement.querySelector('.form-fail').style.display = 'none' 1129 form.reset() 1130 } 1131 catch (error) { 1132 formWrapperElement.querySelector('.form-fail').style.display = 'block' 1133 formWrapperElement.querySelector('.form-done').style.display = 'none' 1134 } 1135 }) 1136 </script>
1136 1137 </div> 1138 </div> 1139 </div> 1140 <div style="-webkit-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0%, 0, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);display:block" class="slidein-overlay"></div> 1141 </div> 1142 </div> 1143 </div> 1144 </div> 1145 </div> 1146 </div> 1147 </section> 1148 <section id="contact"> 1149 <div class="padding-global"> 1150 <div class="container-large"> 1151 <div class="margin-section-large"> 1152 <div data-w-id="9e57c543-9e51-161d-5b66-88f827875aa8" class="slidein-wrapper"> 1153 <div style="-webkit-transform:translate3d(0, -100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(0, -100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(0, -100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(0, -100px, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0)" class="slidein-contents"> 1154 <div class="contact-wrapper"> 1155 <div> 1156 <a href="mailto:[email protected]" class="w-inline-block" target="_blank"><img src="images/CONTACT.svg" loading="lazy" alt="" class="contact-heading"></a> 1157 </div> 1158 <div><img src="images/STEFAN-PRINS.svg" loading="eager" alt="" class="contact-logo"></div> 1159 <div class="socials-component"> 1160 <div class="social-icons-wrapper"> 1161 <a href="https://www.youtube.com/@stefanprinsmusic" target="_blank" class="w-inline-block"><img src="images/Subtract-25.svg" loading="eager" alt="" class="social-icon"></a> 1162 <a href="https://soundcloud.com/stefan-prins" target="_blank" class="w-inline-block"><img src="images/Subtract-26.svg" loading="eager" alt="" class="social-icon"></a> 1163 <a href="https://www.instagram.com/prinsstefan/" target="_blank" class="w-inline-block"><img src="images/Subtract-27.svg" loading="eager" alt="" class="social-icon"></a> 1164 <a href="https://bsky.app/profile/stefanprinsmusic.bsky.social" target="_blank" class="w-inline-block"><img src="images/Subtract-28.svg" loading="eager" alt="" class="social-icon"></a> 1165 <a href="https://www.linkedin.com/in/stefan-prins-music" target="_blank" class="w-inline-block"><img src="images/Subtract-29.svg" loading="eager" alt="" class="social-icon"></a> 1166 </div> 1167 </div> 1168 </div> 1169 </div> 1170 <div style="-webkit-transform:translate3d(null, 0%, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-moz-transform:translate3d(null, 0%, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);-ms-transform:translate3d(null, 0%, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);transform:translate3d(null, 0%, 0) scale3d(1, 1, 1) rotateX(0) rotateY(0) rotateZ(0) skew(0, 0);display:block" class="slidein-overlay"></div> 1171 </div> 1172 </div> 1173 </div> 1174 </div> 1175 </section> 1176 <footer class="footer"> 1177 <div class="w-layout-grid footer_grid"> 1178 <div id="w-node-_3f8a519d-e42a-33a3-9e93-b9a22482b781-2482b77f" class="footer_wrapper"> 1179 <a href="imprint.html" class="w-inline-block"> 1180 <div class="coopyright_text created">Imprint</div> 1181 </a> 1182 <div class="coopyright_text created">|</div> 1183 <a href="privacy-policy.html" class="w-inline-block"> 1184 <div class="coopyright_text created">Privacy Policy</div> 1185 </a> 1186 </div> 1187 <div id="w-node-_3f8a519d-e42a-33a3-9e93-b9a22482b788-2482b77f" class="coopyright_text">©<span class="copyright-year">YEAR</span> Stefan Prins</div> 1188 <div id="w-node-_3f8a519d-e42a-33a3-9e93-b9a22482b78a-2482b77f" class="footer_wrapper"> 1189 <div class="coopyright_text created">created by</div> 1190 <a href="https://www.dreher-media.de" target="_blank" class="w-inline-block"><img src="images/dreher.media-logo_website-white.svg" loading="lazy" alt="" class="dreher-media-logo"></a> 1191 </div> 1192 </div> 1193 </footer> 1194 </main> 1195 </div> 1196
1196<script src="https://d3e54v103j8qbb.cloudfront.net/js/jquery-3.5.1.min.dc5e7f18c8.js?site=6888085c617ef31b88797ced" type="text/javascript" integrity="sha256-9/aliU8dGd2tb6OSsuzixeV4y/faTqgFtohetphbbj0=" crossorigin="anonymous"></script>
1196 1197
1197<script src="js/stefan-prins.js" type="text/javascript"></script>
1197 1198
1198<script> 1199 // Functionality for fs-cc-reject 1200 let initFsCCListener = false; 1201 function handleFsCcReject() { 1202 if (!window.FsCC) { 1203 setTimeout(handleFsCcReject, 200); 1204 return; 1205 } 1206 if (!initFsCCListener) { 1207 // Add a listener for changes in consent preferences 1208 window.FsCC.consentController.on('updateconsents', (consents) => { 1209 handleFsCcReject(); // Run the function whenever consent changes 1210 }); 1211 } 1212 // Iterate through all elements with fs-cc-reject attributes 1213 document.querySelectorAll('[fs-cc-reject]').forEach((rejectElement) => { 1214 const category = rejectElement.getAttribute('fs-cc-reject'); // Get the consent category 1215 const isConsentGiven = window.FsCC.store.consents[category]; // Check if consent is granted for the category 1216 const consentElement = document.querySelector('[fs-cc="' + category + '"]'); // Find the corresponding fs-cc element 1217 // Toggle visibility based on consent state 1218 if (isConsentGiven) { 1219 rejectElement.style.display = 'none'; // Hide the reject element 1220 if (consentElement) consentElement.style.display = 'block'; // Show the consented content 1221 } else { 1222 rejectElement.style.display = 'block'; // Show the reject element 1223 if (consentElement) consentElement.style.display = 'none'; // Hide the consented content 1224 } 1225 }); 1226 } 1227 // Run the script on page load 1228 document.addEventListener('DOMContentLoaded', handleFsCcReject); 1229</script>
1229 1230
1230<script> 1231 Webflow.push(function() { 1232 $('.copyright-year').text(new Date().getFullYear()); 1233 }); 1234 Webflow.push(function() { 1235 //DISABLE WEBFLOW SMOOTH SCROLL 1236 $(function() { 1237 $(document).off('click.wf-scroll'); 1238 }); 1239 }); 1240 window.addEventListener('load', (event) => { 1241 const routeName = window.location.pathname?.split('/')?.slice(-1)?.[0] 1242 document 1243 .querySelectorAll('a[href*="' + routeName + '"]') 1244 ?.forEach((el) => el?.classList?.add('w--current')) 1245 }) 1246 function addSeparatorsByDataAttribute() { 1247 // Find all elements in the document 1248 const matchingElements = document.querySelectorAll('[data-separator]'); 1249 // Process each matching element 1250 matchingElements.forEach(element => { 1251 // Get the separator text from the data-separator attribute 1252 const separatorText = element.getAttribute('data-separator'); 1253 // Get all child elements of the current element 1254 const children = Array.from(element.children); 1255 // Iterate through the children and insert separators 1256 children.forEach((child, index) => { 1257 if (index < children.length - 1) { // No separator after the last child 1258 // Create a new separator element (you could change this to suit) 1259 const separator = document.createElement('span'); 1260 separator.innerHTML = ' ' + separatorText + ' '; // Set separator text 1261 // Insert the separator after the current child 1262 child.insertAdjacentElement('afterend', separator); 1263 } 1264 }); 1265 }); 1266 } 1267 addSeparatorsByDataAttribute(); 1268 document.querySelectorAll('.tab-link') 1269 ?.forEach((el) => el.addEventListener('click', (event) => { 1270 const tabGroup = el.dataset.tabGroup; 1271 if (tabGroup) { 1272 document.querySelector('.tab-link.active[data-tab-group="' + tabGroup + '"]')?.classList?.remove('active') 1273 } else { 1274 el.parentNode.querySelector('.tab-link.active')?.classList?.remove('active') 1275 } 1276 el.classList.add('active') 1277 })) 1278 document.querySelectorAll('.biography-lang-links .tab-link') 1279 ?.forEach((el) => el.addEventListener('click', (event) => { 1280 const lang = el.dataset?.lang 1281 document.querySelectorAll('.biography-text:not(.' + lang + ')') 1282 ?.forEach((bioEl) => bioEl.style.display = 'none') 1283 document.querySelectorAll('.biography-text.' + lang) 1284 ?.forEach((bioEl) => bioEl.style.display = 'block') 1285 })) 1286 document.querySelectorAll('.tab-link[data-tab-id]') 1287 ?.forEach(function(el) { 1288 el.addEventListener('click', function(event) { 1289 var tabId = el.dataset ? el.dataset.tabId : null; 1290 var tabGroup = el.dataset ? el.dataset.tabGroup : null; 1291 // Build a selector for the containers we want to control 1292 // Only target NON-tab-link elements that have data-tab-id 1293 var baseSelector = ':not(.tab-link)[data-tab-id]'; 1294 // If the clicked tab belongs to a group, limit to the same group 1295 if (tabGroup) { 1296 baseSelector += '[data-tab-group="' + tabGroup + '"]'; 1297 } 1298 // Hide containers in scope that don't match the tabId 1299 document.querySelectorAll(baseSelector + ':not([data-tab-id*="' + tabId + '"])') 1300 ?.forEach(function(tabEl) { 1301 tabEl.style.display = 'none'; 1302 }); 1303 // Show containers in scope that match the tabId 1304 document.querySelectorAll(baseSelector + '[data-tab-id*="' + tabId + '"]') 1305 ?.forEach(function(tabEl) { 1306 tabEl.style.display = 'block'; 1307 }); 1308 }); 1309 }); 1310 const videoSwipers = [] 1311</script>
1311 1312
1312<script src="https://cdn.plyr.io/3.7.8/plyr.polyfilled.js"></script>
1312 1313
1313<script src="https://www.youtube.com/iframe_api"></script>
1313 1314
1314<script src="https://player.vimeo.com/api/player.js"></script>
1314 1315
1315<script src="https://geo.dailymotion.com/libs/player.js"></script>
1315 1316
1316<script> 1317 const plyrPlayers = Plyr.setup('._init-plyr'); 1318 var youtube = document.querySelectorAll('.youtube'); 1319 const players = {}; 1320 let init = false; 1321 function onYouTubeIframeAPIReady() { 1322 init = true; 1323 for (const el of youtube) { 1324 el.addEventListener('click', () => { 1325 const customEmbed = el.querySelector('[data-custom-embed]'); 1326 if (customEmbed) { 1327 el.innerHTML = customEmbed.innerHTML; 1328 } 1329 const id = 'player_' + el.dataset.id; 1330 const type = el.dataset.type; 1331 const videoId = el.dataset.videoId; 1332 const time = el.dataset.time || 0; // Start time in seconds 1333 onPlay(id); // Manage autoplay functionality 1334 let player; 1335 // YouTube Player 1336 if (type === 'youtube') { 1337 player = new YT.Player(id, { 1338 videoId: videoId, 1339 playerVars: { 1340 start: time, 1341 }, 1342 events: { 1343 onReady: (event) => { 1344 event.target.playVideo(); 1345 }, 1346 onStateChange: (event) => { 1347 if (event.data === YT.PlayerState.PLAYING) { 1348 onPlay(id); 1349 } else if ( 1350 event.data === YT.PlayerState.PAUSED || 1351 event.data === YT.PlayerState.ENDED 1352 ) { 1353 onPause(id); 1354 } 1355 }, 1356 }, 1357 }); 1358 // YouTube Playlist Player 1359 } else if (type === 'youtube-playlist') { 1360 player = new YT.Player(id, { 1361 playerVars: { 1362 listType: 'playlist', 1363 list: videoId, // playlist ID 1364 start: time, 1365 }, 1366 events: { 1367 onReady: (event) => { 1368 event.target.playVideo(); 1369 }, 1370 onStateChange: (event) => { 1371 if (event.data === YT.PlayerState.PLAYING) { 1372 onPlay(id); 1373 } else if ( 1374 event.data === YT.PlayerState.PAUSED || 1375 event.data === YT.PlayerState.ENDED 1376 ) { 1377 onPause(id); 1378 } 1379 }, 1380 }, 1381 }); 1382 // YouTube Live Player 1383 } else if (type === 'youtube-live') { 1384 player = new YT.Player(id, { 1385 videoId: videoId, 1386 playerVars: { 1387 start: time, 1388 }, 1389 events: { 1390 onReady: (event) => { 1391 event.target.playVideo(); 1392 }, 1393 onStateChange: (event) => { 1394 if (event.data === YT.PlayerState.PLAYING) { 1395 onPlay(id); 1396 } else if ( 1397 event.data === YT.PlayerState.PAUSED || 1398 event.data === YT.PlayerState.ENDED 1399 ) { 1400 onPause(id); 1401 } 1402 }, 1403 }, 1404 }); 1405 // Vimeo Player 1406 } else if (type === 'vimeo') { 1407 document.getElementById(id).innerHTML = ''; 1408 player = new Vimeo.Player(id, { 1409 id: videoId, 1410 autoplay: true, 1411 start: time, 1412 }); 1413 player.on('play', () => onPlay(id)); 1414 player.on('pause', () => onPause(id)); 1415 // Dailymotion Player (using Player Library Script) 1416 } else if (type === 'dailymotion') { 1417 const container = document.getElementById(id); 1418 // Create Dailymotion player instance using Player Library 1419 dailymotion.createPlayer(id, { 1420 video: videoId, 1421 params: { 1422 autoplay: 1, 1423 start: time, 1424 mute: false, // Adjust other parameters as needed 1425 } 1426 }) 1427 .then((playerInstance) => { 1428 console.log('Dailymotion Player initialized:', playerInstance); 1429 // Attach event listeners for play, pause, and ended events 1430 playerInstance.on('play', () => onPlay(id)); 1431 playerInstance.on('pause', () => onPause(id)); 1432 playerInstance.on('ended', () => onPause(id)); 1433 // Store the player instance for later control 1434 players[id] = { type: 'dailymotion', player: playerInstance }; 1435 }) 1436 .catch((error) => console.error('Error initializing Dailymotion player:', error)); 1437 } 1438 // Store the player instance (for YouTube, YouTube Playlist, YouTube Live, or Vimeo) 1439 players[id] = { type, player }; 1440 }); 1441 } 1442 } 1443 const pauseAllPlayers = (id = null) => { 1444 for (const [key, value] of Object.entries(players)) { 1445 if (id === key) continue; 1446 if (value.type === 'youtube') { 1447 value.player.pauseVideo(); 1448 } else if (value.type === 'vimeo') { 1449 value.player.pause(); 1450 } else if (value.type === 'dailymotion') { 1451 value.player.pause(); // Pause Dailymotion video using the Player Library 1452 } 1453 } 1454 }; 1455 const onPlay = (id) => { 1456 pauseAllPlayers(id); 1457 videoSwipers?.forEach((swiper) => { 1458 swiper.autoplay.stop(); 1459 }); 1460 }; 1461 const onPause = (id) => { 1462 videoSwipers?.forEach((swiper) => { 1463 swiper.autoplay.start(); 1464 }); 1465 }; 1466 document.addEventListener("DOMContentLoaded", () => { 1467 videoSwipers?.forEach((swiper) => { 1468 swiper.on('slideChange', () => { 1469 pauseAllPlayers(); 1470 }); 1471 }); 1472 setTimeout(() => { 1473 if (!init) { 1474 onYouTubeIframeAPIReady(); 1475 } 1476 }, 500); 1477 });
1478 const checkYouTubeThumbnails = (el, currentIndex = 0) => { 1479 if (el.naturalWidth > 120) return 1480 const thumbnailSizes = [ 1481 'maxresdefault', 1482 'sddefault', 1483 'hqdefault', 1484 'mqdefault', 1485 'default', 1486 ] 1487 if (currentIndex >= thumbnailSizes.length) { 1488 return 1489 } 1490 const size = thumbnailSizes[currentIndex] 1491 const originalSrc = el.src 1492 const img = new Image() 1493 img.onload = function () { 1494 if (img.naturalWidth > 120) { 1495 el.src = img.src 1496 } else { 1497 checkYouTubeThumbnails(el, currentIndex + 1) 1498 } 1499 } 1500 img.onerror = function () { 1501 checkYouTubeThumbnails(el, currentIndex + 1) 1502 } 1503 img.src = originalSrc.replace(/maxresdefault/, size) 1504 } 1505 document.querySelectorAll('.youtube img').forEach((el) => { 1506 checkYouTubeThumbnails(el) 1507 }) 1508</script>
1508 1509
1509<script> 1510 // Function to download a file 1511 function downloadFile(url, filename) { 1512 const link = document.createElement('a'); 1513 link.href = url; 1514 link.download = filename || url.split('/').pop(); // Use filename if provided, otherwise extract from URL 1515 document.body.appendChild(link); 1516 link.click(); 1517 document.body.removeChild(link); 1518 } 1519 // Add event listeners to all elements with the [data-download-href] attribute 1520 document.querySelectorAll('[data-download-href]').forEach(element => { 1521 element.addEventListener('click', function(event) { 1522 event.preventDefault(); // Prevent the default action (if it's a link) 1523 event.stopPropagation(); 1524 const url = element.getAttribute('data-download-href'); 1525 const filename = element.getAttribute('data-download-filename'); // Optional filename attribute 1526 downloadFile(url, filename); 1527 }); 1528 }); 1529</script>
1529 1530
1530<script> 1531 (function() { 1532 const container = document.getElementById("hero-slides"); 1533 if (!container) return; 1534 // Get all direct children 1535 const children = Array.from(container.children); 1536 // Shuffle array (Fisher-Yates shuffle) 1537 for (let i = children.length - 1; i > 0; i--) { 1538 const j = Math.floor(Math.random() * (i + 1)); 1539 [children[i], children[j]] = [children[j], children[i]]; 1540 } 1541 // Append shuffled children back to container 1542 children.forEach(child => container.appendChild(child)); 1543 })(); 1544</script>
1544 1545</body></html>
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.