{"id":353,"date":"2025-09-08T15:07:33","date_gmt":"2025-09-08T13:07:33","guid":{"rendered":"https:\/\/arsaeternapro.com\/?page_id=353"},"modified":"2025-09-11T13:46:13","modified_gmt":"2025-09-11T11:46:13","slug":"map-of-my-imaginary-memories","status":"publish","type":"page","link":"https:\/\/arsaeternapro.com\/index.php\/map-of-my-imaginary-memories\/","title":{"rendered":"Map of My Imaginary Memories"},"content":{"rendered":"\n<!-- MAP OF MY IMAGINARY MEMORIES \u2014 DESKTOP -->\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=Baskervville:ital,wght@0,400;0,700;1,400&#038;display=swap\" rel=\"stylesheet\">\n\n<style>\n  :root{\n    --mim-bg:#111;\n    --mim-white:#fff;\n    --mim-ink:#111;\n    --mim-shadow:0 12px 40px rgba(0,0,0,.35);\n    --mim-pill:rgba(255,255,255,.95);\n    --mim-fog:rgba(255,255,255,.55);\n  }\n\n  \/* Wrapper plein \u00e9cran (full-bleed) *\/\n  .mim-wrapper{max-width:none;margin:0;padding:0}\n  .mim-hero{\n    position:relative;width:100vw;height:100vh;background:var(--mim-bg);overflow:hidden;\n    left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;\n    font-family:'Baskervville',Baskerville,\"Times New Roman\",serif;\n  }\n  .mim-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(1.02)}\n\n  \/* Brouillard d\u2019intro (lent) *\/\n  .mim-fog{position:absolute;inset:0;pointer-events:none;z-index:3;\n    background:\n      radial-gradient(1200px 600px at 20% 30%, rgba(255,255,255,.65), transparent 60%),\n      radial-gradient(900px 500px at 80% 20%, rgba(255,255,255,.55), transparent 55%),\n      radial-gradient(1000px 700px at 50% 70%, rgba(255,255,255,.5), transparent 60%),\n      var(--mim-fog);\n    animation:mim-fog-reveal 9s ease-out .35s forwards;\n  }\n  @keyframes mim-fog-reveal{to{opacity:0}}\n<!-- ===== PRE-ORDER: CD & VINYL (ML popups) ===== -->\n .preorder-wrap{\n    position:relative; z-index:7; \/* au-dessus de la vid\u00e9o\/dots si besoin *\/\n    display:flex; gap:min(5vw,48px); align-items:center; justify-content:center;\n    margin: clamp(24px, 6vh, 64px) auto;\n    flex-wrap:wrap;\n  }\n  .disc{\n    --size: min(38vmin, 50px);\n    width: var(--size);\n    aspect-ratio: 1\/1;\n    border-radius: 50%;\n    border: 8px solid rgba(255,255,255,.85);\n    box-shadow: 0 14px 40px rgba(0,0,0,.3), inset 0 0 0 4px rgba(0,0,0,.25);\n    cursor: pointer;\n    position: relative;\n    animation: spin 18s linear infinite;\n    transition: transform .2s ease, box-shadow .2s ease, animation-duration .2s ease;\n  }\n  .disc:focus-visible{ outline: 3px solid #fff; outline-offset: 4px; }\n  .disc:hover{ animation-duration: 7s; box-shadow: 0 18px 50px rgba(0,0,0,.38), inset 0 0 0 4px rgba(0,0,0,.3); transform: translateY(-2px); }\n  @keyframes spin { to { transform: rotate(360deg); } }\n\n  \/* Vinyle : sillons concentriques + \u00e9tiquette centrale *\/\n  .disc.vinyl{\n    background:\n      radial-gradient(circle at 50% 50%, #1b1b1b 0 20%, #0f0f0f 55%, #000 60%),\n      repeating-radial-gradient(circle at 50% 50%, rgba(255,255,255,.08) 0 2px, transparent 2px 4px),\n      radial-gradient(circle at 30% 30%, rgba(255,255,255,.18), rgba(255,255,255,0) 40%);\n  }\n  .disc.vinyl::before{ \/* \u00e9tiquette *\/\n    content:\"\"; position:absolute; inset:50% auto auto 50%; transform:translate(-50%,-50%);\n    width:34%; aspect-ratio:1\/1; border-radius:50%;\n    background:#f6d36f;\n    box-shadow: inset 0 0 0 6px rgba(0,0,0,.12);\n  }\n  .disc.vinyl::after{ \/* trou central *\/\n    content:\"\"; position:absolute; inset:50% auto auto 50%; transform:translate(-50%,-50%);\n    width:4.5%; aspect-ratio:1\/1; border-radius:50%; background:#222;\n  }\n\n  \/* CD : effet iridescent *\/\n  .disc.cd{\n    background:\n      radial-gradient(circle at 50% 50%, #dcdcdc 0 22%, #bfbfbf 60%, #a9a9a9 61%, #f5f5f5 66%, #bbb 67%),\n      conic-gradient(from 0deg,\n        #ff4fd2, #ffea00, #00ffd5, #7fff00, #00b3ff, #ff4fd2);\n    filter: saturate(1.2);\n  }\n  .disc.cd::before{ \/* zone claire centrale *\/\n    content:\"\"; position:absolute; inset:50% auto auto 50%; transform:translate(-50%,-50%);\n    width:26%; aspect-ratio:1\/1; border-radius:50%;\n    background: radial-gradient(circle, #ececec 0 60%, #c9c9c9 70%, transparent 71%);\n    box-shadow: inset 0 0 0 5px rgba(0,0,0,.08);\n  }\n  .disc.cd::after{ \/* trou central *\/\n    content:\"\"; position:absolute; inset:50% auto auto 50%; transform:translate(-50%,-50%);\n    width:4.5%; aspect-ratio:1\/1; border-radius:50%; background:#888;\n  }\n\n  \/* L\u00e9gendes *\/\n  .disc .label{\n    position:absolute; left:50%; bottom:-44px; transform:translateX(-50%);\n    background: rgba(255,255,255,.95); color:#111; font-weight:700;\n    padding:.45rem .7rem; border-radius:10px; font-family:'Baskervville',serif;\n    box-shadow:0 8px 12px rgba(0,0,0,.18);\n    user-select:none; pointer-events:none;\n    text-transform:uppercase; letter-spacing:.02em; font-size: .60rem;\n  }\n\n  \/* Option : version compacte sur mobile *\/\n  @media (max-width:640px){\n    .disc{ --size: min(54vw, 220px); }\n    .disc .label{ bottom:-38px; font-size:.9rem; }\n  }\n\n  \/* Citations \u2013 typewriter overlay *\/\n  .mim-quote{\n    position:absolute;inset:auto 20% 44% 28%;z-index:4;display:none;\n    color:#111;background:rgba(255,255,255,.92);backdrop-filter:saturate(110%) blur(2px);\n    border-radius:14px;box-shadow:var(--mim-shadow);padding:18px 20px;max-width:900px;\n  }\n  .mim-quote__line{font-size:1.15rem;line-height:1.45;margin:.25rem 0}\n  .mim-quote__small{opacity:.7;font-style:italic;margin-top:.4rem}\n  .mim-quote.show{display:block;animation:mim-quote-in .6s ease both}\n  .mim-quote.hide{animation:mim-quote-out .5s ease both}\n  @keyframes mim-quote-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}\n  @keyframes mim-quote-out{to{opacity:0;transform:translateY(6px)}}\n\n  \/* Dots + labels *\/\n  .mim-dot{\n    position:absolute;transform:translate(-50%,-50%) scale(.88);\n    width:22px;aspect-ratio:1\/1;border-radius:50%;\n    background:#fff;border:2px solid #000;cursor:pointer;\n    box-shadow:0 4px 10px rgba(0,0,0,.35);display:block;z-index:4;\n    opacity:0;transition:transform .35s ease, opacity .35s ease;\n  }\n  .mim-dot:after{content:'';position:absolute;inset:-10px;border-radius:50%;background:rgba(255,255,255,.18)}\n  .mim-dot:hover{transform:translate(-50%,-50%) scale(1.08)}\n  .mim-dot.is-visible{opacity:1;transform:translate(-50%,-50%) scale(1)}\n\n  .mim-dot[data-label]::before{\n    content:attr(data-label);position:absolute;top:50%;left:140%;transform:translateY(-50%);\n    background:var(--mim-pill);color:var(--mim-ink);padding:.28rem .55rem;border-radius:10px;\n    font:600 .95rem\/1.05 'Baskervville',serif;white-space:nowrap;box-shadow:0 4px 10px rgba(0,0,0,.15);\n    opacity:0;transform-origin:left center;transition:opacity .35s .05s ease, transform .35s .05s ease;\n  }\n  .mim-dot.is-visible[data-label]::before{opacity:1;transform:translateY(-50%) scale(1)}\n  .mim-dot[data-label-pos=\"left\"]::before{left:auto;right:140%;transform:translateY(-50%)}\n  .mim-dot[data-label-pos=\"top\"]::before{left:50%;transform:translate(-50%,-120%)}\n  .mim-dot[data-label-pos=\"bottom\"]::before{left:50%;transform:translate(-50%,20%)}\n\n  \/* ===== Modales ===== *\/\n  .mim-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.55);z-index:9999}\n  .mim-modal[open]{display:flex}\n  .mim-card{position:relative;width:min(880px,92vw);max-height:92vh;display:flex;flex-direction:column;\n    background:#fff;border-radius:14px;overflow:hidden;box-shadow:var(--mim-shadow);font-family:'Baskervville',serif}\n  .mim-card__media{flex:0 0 auto;width:100%;aspect-ratio:4\/5;max-height:60vh;background:#000;display:flex;align-items:center;justify-content:center}\n  .mim-card__media img{max-width:100%;max-height:100%;object-fit:contain;display:block;background:#000}\n  .mim-card__body{flex:1 1 auto;overflow:auto;background:#fff;color:#111;padding:18px 18px 10px}\n  .mim-title{margin:0 0 .25rem;font-size:1.35rem;font-weight:700}\n  .mim-sub{margin:0 0 .5rem;font-style:italic;color:#444}\n  .mim-desc{margin:.25rem 0 .75rem;line-height:1.55;font-size:1rem;color:#222}\n  .mim-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:.75rem 0 1rem}\n  .mim-link{display:inline-flex;align-items:center;gap:.5rem;text-decoration:none;padding:.55rem .8rem;border-radius:10px;background:#f3f3f3;color:#111;font-weight:600}\n  .mim-time{margin-left:auto;color:#666;font-size:.9rem}\n  .mim-close{position:absolute;top:10px;right:10px;background:#fff;border:none;border-radius:999px;width:36px;height:36px;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.2)}\n  .mim-audio{width:100%;margin:.5rem 0 1rem}\n\n  \/* --- Groupe de boutons centr\u00e9s --- *\/\n  .mim-buttons{\n    position:absolute; top:70%; left:50%; transform:translateX(-50%); z-index:6;\n    display:flex; gap:.6rem; flex-wrap:wrap; align-items:center; justify-content:center;\n  }\n  .mim-btn{\n    display:inline-flex; align-items:center; gap:.5rem; text-decoration:none; font-weight:700;\n    padding:.6rem .9rem; border-radius:12px; color:#111; background:rgba(255,255,255,.95);\n    box-shadow:0 6px 20px rgba(0,0,0,.25); backdrop-filter:saturate(1.1) blur(2px);\n    font-family:'Baskervville', Baskerville, \"Times New Roman\", serif;\n  }\n  .mim-btn:hover{ transform:translateY(-1px); }\n\n  @media (max-width: 640px){\n    .mim-buttons{ gap:.45rem }\n    .mim-btn{ padding:.5rem .7rem; border-radius:10px; }\n  }\n\n  \/* ===== MailerLite: contraindre + centrer le bloc Gutenberg ===== *\/\n  .wp-block-mailerlite-form-block{\n    max-width:720px;\n    width:92vw;\n    margin:48px auto;\n    padding:20px;\n    background:#fff;\n    border-radius:12px;\n    box-shadow:0 10px 30px rgba(0,0,0,.08);\n  }\n  \/* Rendre le contenu interne fluide *\/\n  .wp-block-mailerlite-form-block iframe{width:100% !important;}\n  .wp-block-mailerlite-form-block .ml-form-embedContainer,\n  .wp-block-mailerlite-form-block .ml-form-embedWrapper,\n  .wp-block-mailerlite-form-block [data-ml-form]{max-width:100% !important; margin:0 !important;}\n  .wp-block-mailerlite-form-block input[type=\"text\"],\n  .wp-block-mailerlite-form-block input[type=\"email\"],\n  .wp-block-mailerlite-form-block input[type=\"tel\"],\n  .wp-block-mailerlite-form-block textarea,\n  .wp-block-mailerlite-form-block button,\n  .wp-block-mailerlite-form-block input[type=\"submit\"]{\n    width:100% !important; box-sizing:border-box; font-family:'Baskervville', Baskerville, \"Times New Roman\", serif;\n  }\n<\/style>\n\n<div class=\"mim-wrapper\">\n  <div class=\"mim-hero\" id=\"mim-hero\">\n    <img decoding=\"async\" src=\"\/wp-content\/uploads\/2025\/09\/cover-scaled.png\" alt=\"Map of My Imaginary Memories \u2014 cover\" loading=\"lazy\">\n\n    <div class=\"mim-buttons\">\n      <a class=\"mim-btn\" href=\"https:\/\/orcd.co\/map_album\" target=\"_blank\" rel=\"noopener\">\u25b6\ufe0e LISTEN TO THE FULL ALBUM<\/a>\n      <button class=\"mim-btn\" id=\"hear-story-btn\" data-open=\"story\">Hear the story<\/button>\n      <button class=\"mim-btn\" id=\"about-oksana-btn\" data-open=\"about\">About Oksana<\/button>\n <!-- Bouton pop-up MailerLite -->\n      <button class=\"mim-btn\" type=\"button\" onclick=\"ml('show','pkam5s', true)\">Get notified about the concert<\/button>\n    <\/div>\n\n<div class=\"preorder-wrap\" role=\"group\" aria-label=\"Pre-order\">\n  <!-- CD -->\n  <button class=\"disc cd ml-onclick-form\"\n          data-ml=\"Ls5Vxa\"\n          aria-label=\"Pre-order the CD\"\n          title=\"Pre-order the CD\">\n    <span class=\"label\">CD<\/span>\n  <\/button>\n\n  <!-- VINYL (remplace REPLACE_VINYL_ID par l\u2019ID de ton formulaire Vinyl) -->\n  <button class=\"disc vinyl ml-onclick-form\"\n          data-ml=\"zyJOHH\"\n          aria-label=\"Pre-order the Vinyl\"\n          title=\"Pre-order the Vinyl\">\n    <span class=\"label\">Vinyl<\/span>\n  <\/button>\n<\/div>\n\n\n\n    <div class=\"mim-fog\" aria-hidden=\"true\"><\/div>\n\n    <!-- Quotes -->\n    <div class=\"mim-quote\" id=\"mim-quote\">\n      <div class=\"mim-quote__line\" id=\"quote-line-1\"><\/div>\n      <div class=\"mim-quote__line\" id=\"quote-line-2\"><\/div>\n      <div class=\"mim-quote__line\" id=\"quote-line-3\"><\/div>\n      <div class=\"mim-quote__small\" id=\"quote-credit\"><\/div>\n    <\/div>\n\n    <!-- Dots -->\n    <button class=\"mim-dot\" style=\"top:25%; left:30%\" data-label=\"1 \u2014 La fille aux cheveux de lin\" data-label-pos=\"left\" data-track=\"La fille aux cheveux de lin \u2014 single [1\/8]\" data-artist=\"Claude Debussy \u2014 Oksana Sidyagina\" data-photo=\"\/wp-content\/uploads\/2025\/09\/La-fille-aux-cheveux-de-lin.jpg\" data-audio=\"\/wp-content\/uploads\/2025\/09\/01-La-fille-aux-cheveux-de-lin_48k_24b.mp3\" data-link=\"https:\/\/orcd.co\/la_fille\" data-desc=\"The first single from the album.\"><\/button>\n    <button class=\"mim-dot\" style=\"top:34%; left:38%\" data-label=\"2 \u2014 rewind\" data-track=\"rewind \u2014 single [2\/8] \u2014 memory as a portal\" data-artist=\"Oksana Sidyagina\" data-photo=\"\/wp-content\/uploads\/2025\/09\/rewind.jpg\" data-audio=\"\/wp-content\/uploads\/2025\/09\/03-rewind_48k_24b.mp3\" data-link=\"https:\/\/orcd.co\/rewind_single\" data-ig=\"https:\/\/www.instagram.com\/reel\/DI3oubAI2k5\/\" data-desc=\"\u201crewind\u201d is the first original composition by Oksana Sidyagina and the second single from her debut album Map of Imaginary Memories with the label Prima Classic. It marks the very first step on a journey across imagined time \u2014 where sounds become portals and memory reinvents itself. We\u2019re opening the map. Rewind to where it all starts.\"><\/button>\n    <button class=\"mim-dot\" style=\"top:34%; left:62%\" data-label=\"3 \u2014 Gnossienne No. 3\" data-track=\"Gnossienne No. 3 \u2014 single [3\/8] \u2014 memory as an echo\" data-artist=\"Erik Satie \u2014 Oksana Sidyagina\" data-photo=\"\/wp-content\/uploads\/2025\/09\/Gnosienne-n.3.jpg\" data-audio=\"\/wp-content\/uploads\/2025\/09\/07-Gnossienne-No.-3_48k_24b.mp3\" data-link=\"https:\/\/orcd.co\/gnossiene_3\" data-desc=\"The third stop on our map is a lesson in suspended time. A breath held between dream and wakefulness.\"><\/button>\n    <button class=\"mim-dot\" style=\"top:56%; left:74%\" data-label=\"4 \u2014 apr\u00e8s\" data-track=\"apr\u00e8s \u2014 single [4\/8] \u2014 memory as a residue\" data-artist=\"Oksana Sidyagina\" data-photo=\"\/wp-content\/uploads\/2025\/09\/apres.jpg\" data-audio=\"\/wp-content\/uploads\/2025\/09\/08-apres_48k_24b.mp3\" data-ig=\"https:\/\/www.instagram.com\/reel\/DKj4zG7IHRy\/\" data-desc=\"apr\u00e8s is an original piece by Oksana Sidyagina, conceived as a counterpoint to Gnossienne n.3. apr\u00e8s embodies what remains: silence, absence, the scent of the unspoken.\"><\/button>\n    <button class=\"mim-dot\" style=\"top:60%; left:28%\" data-label=\"5 \u2014 F\u00fcr Alina\" data-label-pos=\"left\" data-track=\"F\u00fcr Alina \u2014 single [5\/8] \u2014 memories as a trace\" data-artist=\"Arvo P\u00e4rt \u2014 Oksana Sidyagina\" data-photo=\"\/wp-content\/uploads\/2025\/09\/Fur-Alina.jpg\" data-audio=\"\/wp-content\/uploads\/2025\/09\/09-Fur-Alina_48k_24b.mp3\" data-link=\"https:\/\/orcd.co\/fur_alin\" data-desc=\"A fifth single from the upcoming album of Oksana Sidyagina \u201cMap of My Imaginary Memories\u201d, F\u00fcr Alina is a trace of tenderness, a memory of a presence.\"><\/button>\n    <button class=\"mim-dot\" style=\"top:48%; left:40%\" data-label=\"6 \u2014 Street from the Past\" data-track=\"Street from the Past \u2014 single [6\/8] \u2014 memory as a city\" data-artist=\"Oksana Sidyagina\" data-photo=\"\/wp-content\/uploads\/2025\/09\/street-from-the-past.jpg\" data-audio=\"\/wp-content\/uploads\/2025\/09\/10-street-from-the-past_48k_24b.mp3\" data-link=\"https:\/\/orcd.co\/street_from_the_past\" data-desc=\"There are places we return to \u2014 not because they still exist, but because something in us stayed there. This original piece by Oksana Sidyagina captures the strange familiarity of walking through a city that may have only existed in memory.\"><\/button>\n    <button class=\"mim-dot\" style=\"top:16%; left:78%\" data-label=\"7 \u2014 R\u00eaverie\" data-track=\"R\u00eaverie \u2014 single [7\/8] \u2014 memory as a dream\" data-artist=\"Claude Debussy \u2014 Oksana Sidyagina\" data-photo=\"\/wp-content\/uploads\/2025\/09\/Reverie.jpg\" data-audio=\"\/wp-content\/uploads\/2025\/09\/13-Reverie_48k_24b.mp3\" data-link=\"https:\/\/orcd.co\/debussy_reverie\" data-ig=\"https:\/\/www.instagram.com\/reel\/DNGDgCJtWsM\/\" data-desc=\"Debussy\u2019s R\u00eaverie appears on the horizon like a dream half-remembered \u2014 gentle, unresolved, delicate. It\u2019s not a story. It\u2019s a feeling.\"><\/button>\n    <button class=\"mim-dot\" style=\"top:62%; left:58%\" data-label=\"8 \u2014 In a Landscape\" data-track=\"In a Landscape \u2014 single [8\/8] \u2014 memory as a landscape\" data-artist=\"John Cage \u2014 Oksana Sidyagina\" data-photo=\"\/wp-content\/uploads\/2025\/09\/In-a-landscape.jpg\" data-audio=\"\/wp-content\/uploads\/2025\/09\/02-In-a-Landscape_48k_24b.mp3\" data-desc=\"This is where it all began. A piano in a candlelit room. A piece by John Cage that opened the map. In a Landscape is not a conclusion \u2014 It\u2019s the breath that gave birth to the journey. Where past, future, and imaginary time merge. This is not the end. This is the landscape we carry with us.\"><\/button>\n\n  <\/div>\n<\/div>\n\n<!-- MODALES (audio\/photo + textes) -->\n<dialog class=\"mim-modal\" id=\"mim-modal\" aria-modal=\"true\">\n  <div class=\"mim-card\" role=\"document\">\n    <button class=\"mim-close\" title=\"Close\" aria-label=\"Close\">\u2715<\/button>\n    <div class=\"mim-card__media\"><img id=\"mim-photo\" alt=\"\"><\/div>\n    <div class=\"mim-card__body\">\n      <h3 class=\"mim-title\" id=\"mim-title\"><\/h3>\n      <p class=\"mim-sub\" id=\"mim-artist\"><\/p>\n      <p class=\"mim-desc\" id=\"mim-desc\"><\/p>\n      <audio class=\"mim-audio\" id=\"mim-audio\" controls preload=\"none\"><\/audio>\n      <div class=\"mim-actions\">\n        <a class=\"mim-link\" id=\"mim-link\" target=\"_blank\" rel=\"noopener\">Listen on your platform<\/a>\n        <a class=\"mim-link\" id=\"mim-ig\" target=\"_blank\" rel=\"noopener\" style=\"display:none\">View on Instagram<\/a>\n        <span class=\"mim-time\" id=\"mim-duration\"><\/span>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/dialog>\n\n<dialog class=\"mim-modal mim-text-modal\" id=\"story-modal\" aria-modal=\"true\">\n  <div class=\"mim-card\" role=\"document\">\n    <button class=\"mim-close\" title=\"Close\" aria-label=\"Close\">\u2715<\/button>\n    <div class=\"mim-card__body\">\n      <h3 class=\"mim-title\">The story of this album<\/h3>\n      <p>The story of this album starts back in 2017, when at a Christmas house party, in a cosy living room with the flickering candle lights, I heard for the first time John Cage\u2019s piece \u201cIn a Landscape\u201d, played on an old piano by a close friend of mine.<\/p>\n      <p>I was absolutely blown away by this music, by its elusiveness and pure beauty. I remember that even days afterwards I was in a state of what can only be described as feeling hypnotized.<\/p>\n      <p>I started to explore music that was close to the atmosphere of \u201cin a landscape\u201d and soon after I already had a collection of pieces. It happened that sometimes I was listening to some of them almost non-stop for a few days in a row, so I was literally living inside of this music.<\/p>\n      <p>Each one of these pieces absorbed a vast array of emotions and states of mind I experienced during the last few years. This work is very personal to me, it is something like my musical diary from 2017 to 2024.<\/p>\n      <p>Few years ago I started improvising a lot, so I included in the album some of my own musical compositions. Sometimes you can hear the connection with the featured pieces, sometimes they are independent musical ideas.<\/p>\n    <\/div>\n  <\/div>\n<\/dialog>\n\n<dialog class=\"mim-modal mim-text-modal\" id=\"about-modal\" aria-modal=\"true\">\n  <div class=\"mim-card\" role=\"document\">\n    <button class=\"mim-close\" title=\"Close\" aria-label=\"Close\">\u2715<\/button>\n    <div class=\"mim-card__body\">\n      <h3 class=\"mim-title\">About Oksana Sidyagina<\/h3>\n      <p>A graduate of the Tchaikovsky Conservatory and the Alfred Cortot Normal School of Music, Oksana Sidyagina has a rigorous classical training.<\/p>\n      <p>Winner of international competitions, she has been invited to perform at major venues such as:<\/p>\n      <ul>\n        <li>Harpissima Salvi Harps &amp; Suoni d&#8217;Arpa (Italy)<\/li>\n        <li>Brucknerhaus Linz (Austria)<\/li>\n        <li>Rencontres Internationales de la Harpe en \u00cele-de-France<\/li>\n        <li>Jornadas de Arpa (Spain)<\/li>\n      <\/ul>\n      <p>In 2025, she was invited to join the jury of the prestigious Suoni d&#8217;Arpa competition in Italy.<\/p>\n      <p>Alongside her artistic career, Oksana teaches at the Rachmaninoff Conservatory in Paris and organises summer academies (the next edition at the Domaine de Courances, July 2025).<\/p>\n      <h4 style=\"margin-top:1rem\">A harpist who pushes the boundaries<\/h4>\n      <p><strong>Harp &amp; other arts:<\/strong> collaborations with dance and visual arts, including electric harp. With <em>Ang\u00e9lique sous la pluie<\/em> (Ground Gallery, 2024) and <em>Web of My Imaginary Memories<\/em> (Galerie Dauphine, 2023), she reinvents the harp as a living work of art.<\/p>\n      <p><strong>Harp &amp; meditation:<\/strong> through the Harp Meditation project (2002), she introduces new audiences to the therapeutic properties of sound.<\/p>\n      <p><strong>Harp &amp; fashion:<\/strong> collaborations with Van Cleef &amp; Arpels and Manolo Blahnik; Museum Night 2024 (Palais Galliera, <em>La Mode en Mouvement #2<\/em>).<\/p>\n    <\/div>\n  <\/div>\n<\/dialog>\n\n<script>\n\/* 1) Charger MailerLite Universal d'abord (cr\u00e9e un stub ml qui met en file d\u2019attente) *\/\n(function(w,d,e,u,f,l,n){w[f]=w[f]||function(){(w[f].q=w[f].q||[])\n    .push(arguments);},l=d.createElement(e),l.async=1,l.src=u,\n    n=d.getElementsByTagName(e)[0],n.parentNode.insertBefore(l,n);})\n    (window,document,'script','https:\/\/assets.mailerlite.com\/js\/universal.js','ml');\n    ml('account', '1351230');\n\n\/* 2) Utilitaires : attendre que ml soit pr\u00eat puis ouvrir un formulaire *\/\nfunction waitForML(timeoutMs=6000){\n  return new Promise((resolve,reject)=>{\n    if (typeof window.ml === 'function') return resolve(window.ml);\n    const started = Date.now();\n    const iv = setInterval(()=>{\n      if (typeof window.ml === 'function'){ clearInterval(iv); resolve(window.ml); }\n      else if (Date.now()-started > timeoutMs){ clearInterval(iv); reject(new Error('MailerLite non charg\u00e9')); }\n    }, 60);\n  });\n}\nfunction openML(id){\n  if(!id){ console.warn('ID MailerLite manquant'); return; }\n  waitForML().then(()=> ml('show', id, true))\n             .catch(err=> console.error('Impossible d\u2019ouvrir MailerLite :', err.message));\n}\n\n\/* 3) Brancher les boutons data-ml (CD\/Vinyl) + le bouton texte *\/\ndocument.addEventListener('click', (e)=>{\n  const btn = e.target.closest('.ml-onclick-form, [data-ml]');\n  if(!btn) return;\n  const id = btn.getAttribute('data-ml') || btn.dataset.ml;\n  if(id){ e.preventDefault(); openML(id); }\n});\n\n\/* 4) Ton JS de la page (citations \/ dots \/ modales) \u2014 inchang\u00e9 *\/\n(function(){\n  const modal = document.getElementById('mim-modal');\n  const photo = document.getElementById('mim-photo');\n  const title = document.getElementById('mim-title');\n  const artist = document.getElementById('mim-artist');\n  const desc = document.getElementById('mim-desc');\n  const audio = document.getElementById('mim-audio');\n  const link  = document.getElementById('mim-link');\n  const igBtn = document.getElementById('mim-ig');\n\n  function openTrack(dot){\n    const d = dot.dataset;\n    title.textContent = d.track || '';\n    artist.textContent = d.artist || '';\n    desc.textContent = d.desc || '';\n    photo.src = d.photo || '';\n    photo.alt = d.track ? `Photo \u2014 ${d.track}` : 'Track photo';\n    link.href = d.link && d.link !== '#' ? d.link : '#';\n    igBtn.style.display = d.ig ? 'inline-flex' : 'none';\n    if (d.ig) igBtn.href = d.ig;\n\n    if (d.audio){\n      audio.src = d.audio; audio.style.display='block'; audio.load(); audio.play?.().catch(()=>{});\n    } else { audio.pause(); audio.removeAttribute('src'); audio.load(); audio.style.display='none'; }\n\n    if (!modal.open) modal.showModal();\n  }\n  function closeModal(){\n    if(!modal.open) return;\n    audio.pause(); audio.currentTime=0; modal.close();\n    audio.removeAttribute('src'); audio.load();\n  }\n  document.querySelectorAll('.mim-dot').forEach(dot=>{\n    dot.addEventListener('click', ()=>openTrack(dot));\n    dot.addEventListener('keydown', e=>{ if(e.key==='Enter'||e.key===' '){ e.preventDefault(); openTrack(dot);} });\n    dot.setAttribute('role','button'); dot.setAttribute('tabindex','0');\n  });\n  modal.querySelector('.mim-close').addEventListener('click', closeModal);\n  modal.addEventListener('click', e=>{ if(e.target===modal) closeModal(); });\n  document.addEventListener('keydown', e=>{ if(e.key==='Escape') [modal, document.getElementById('story-modal'), document.getElementById('about-modal')].forEach(m=>m.open&&m.close()); });\n\n  const storyModal  = document.getElementById('story-modal');\n  const aboutModal  = document.getElementById('about-modal');\n  document.getElementById('hear-story-btn')?.addEventListener('click', ()=>storyModal.showModal());\n  document.getElementById('about-oksana-btn')?.addEventListener('click', ()=>aboutModal.showModal());\n  storyModal.querySelector('.mim-close').addEventListener('click', ()=>storyModal.close());\n  aboutModal.querySelector('.mim-close').addEventListener('click', ()=>aboutModal.close());\n  [storyModal, aboutModal].forEach(m=>m.addEventListener('click', e=>{ if(e.target===m) m.close(); }));\n\n  const dots = Array.from(document.querySelectorAll('.mim-dot'));\n  const quoteBox = document.getElementById('mim-quote');\n  const qLine1 = document.getElementById('quote-line-1');\n  const qLine2 = document.getElementById('quote-line-2');\n  const qLine3 = document.getElementById('quote-line-3');\n  const qCredit = document.getElementById('quote-credit');\n\n  const quotes = [\n    { lines:[\n      'Why \u201cImaginary memories\u201d? Memory is an incredibly mysterious thing.',\n      'I love to say: \u201cmy memory of what happened is not what happened\u201d. Over time, our memories change\u2014sometimes adding things that never happened.',\n      '' ], credit:'\u2014 Oksana Sidyagina' },\n    { lines:[\n      'This music can make me feel like I\u2019m in different moments of my life, all at once.',\n      'It\u2019s a portal to another reality, postcards from the past, a letter to the future and my imaginary world.',\n      '' ], credit:'\u2014 Oksana Sidyagina' }\n  ];\n\n  function typeLine(el, text, speed=18){\n    return new Promise(resolve=>{\n      el.textContent=''; let i=0;\n      (function tick(){\n        el.textContent += text.charAt(i++); \n        if(i<=text.length){ setTimeout(tick, speed); } else { resolve(); }\n      })();\n    });\n  }\n  async function playQuote(q){\n    qLine1.textContent=qLine2.textContent=qLine3.textContent=qCredit.textContent='';\n    quoteBox.classList.remove('hide'); quoteBox.classList.add('show'); quoteBox.style.display='block';\n    await typeLine(qLine1, q.lines[0]); await typeLine(qLine2, q.lines[1]);\n    if(q.lines[2]) await typeLine(qLine3, q.lines[2]);\n    qCredit.textContent = q.credit;\n    await new Promise(r=>setTimeout(r, 1600));\n    quoteBox.classList.remove('show'); quoteBox.classList.add('hide');\n    await new Promise(r=>setTimeout(r, 500));\n    quoteBox.style.display='none';\n  }\n  function revealDotsCascade(){\n    const baseDelay = 150;\n    dots.forEach((dot, idx)=> setTimeout(()=>dot.classList.add('is-visible'), idx*baseDelay));\n  }\n  (async function sequence(){\n    await new Promise(r=>setTimeout(r, 9200));\n    await playQuote(quotes[0]);\n    await new Promise(r=>setTimeout(r, 600));\n    await playQuote(quotes[1]);\n    await new Promise(r=>setTimeout(r, 400));\n    revealDotsCascade();\n  })();\n})();\n<\/script>\n\n","protected":false},"excerpt":{"rendered":"<p>\u25b6\ufe0e LISTEN TO THE FULL ALBUM Hear the story About Oksana Get notified about the concert CD Vinyl \u2715 Listen on your platform View on Instagram \u2715 The story of this album The story of this album starts back in 2017, when at a Christmas house party, in a cosy living room with the flickering &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/arsaeternapro.com\/index.php\/map-of-my-imaginary-memories\/\" class=\"more-link\">Read more<span class=\"screen-reader-text\"> &#8220;Map of My Imaginary Memories&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"footnotes":""},"class_list":["post-353","page","type-page","status-publish","hentry"],"featured_media_urls":[],"_links":{"self":[{"href":"https:\/\/arsaeternapro.com\/index.php\/wp-json\/wp\/v2\/pages\/353","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/arsaeternapro.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/arsaeternapro.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/arsaeternapro.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/arsaeternapro.com\/index.php\/wp-json\/wp\/v2\/comments?post=353"}],"version-history":[{"count":58,"href":"https:\/\/arsaeternapro.com\/index.php\/wp-json\/wp\/v2\/pages\/353\/revisions"}],"predecessor-version":[{"id":602,"href":"https:\/\/arsaeternapro.com\/index.php\/wp-json\/wp\/v2\/pages\/353\/revisions\/602"}],"wp:attachment":[{"href":"https:\/\/arsaeternapro.com\/index.php\/wp-json\/wp\/v2\/media?parent=353"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}