{"product_id":"echo-familiar","title":"Echo {Familiar}","description":"\u003cdiv style=\"margin-bottom: 25px;\"\u003e\n  \u003caudio loop=\"loop\" id=\"veil-audio\"\u003e\n    \u003csource type=\"audio\/mpeg\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0568\/2783\/8601\/files\/Glass_-_Favored_-_loonie.mp3?v=1776993270\"\u003e\u003c\/audio\u003e\n\n\u003cdiv class=\"audio-player-bar\"\u003e\n   \u003cdiv class=\"player-content-left\"\u003e\n     \n         \u003cdiv class=\"tape-controls\"\u003e\n         \u003cbutton title=\"Play\/Pause\" id=\"play-btn\"\u003e\n         \u003cspan id=\"play-icon\"\u003e▶\u003c\/span\u003e \n         \u003c\/button\u003e \n         \u003cbutton title=\"Stop\"\u003e \u003cspan\u003e■\u003c\/span\u003e \n         \u003c\/button\u003e\n         \u003c\/div\u003e\n\n         \u003cdiv class=\"track-info\"\u003e\n         THE SONIC VEIL \u003cspan class=\"track-sub\"\u003e• Echo\u003c\/span\u003e\n         \u003c\/div\u003e\n   \u003c\/div\u003e\n\u003c\/div\u003e\n\n\n\u003cp style=\"font-family: 'Ink Free', 'Segoe Print', 'Apple Chancery', cursive; color: #b488e4; text-align: center; font-size: 16px;\"\u003e\n  \n\n  \u003cbr\u003e Whispers follow where he treads, \n  \u003cbr\u003eShadowed halls and silent threads.\n  \u003cbr\u003eA pulse, a hum beneath the skin,\n  \u003cbr\u003eA world begins where he has been. \n  \u003cbr\u003e\n  \u003cbr\u003eHe waits in corners, unseen, unheard, \n  \u003cbr\u003eA shape that shifts at the edge of a word. \n  \u003cbr\u003eTime folds around him, slow and wide, \n  \u003cbr\u003eFor he answers only when summoned inside.\n  \u003cbr\u003e\u003cbr\u003e\n  In moonlit rooms and candle’s glow, \n  \u003cbr\u003eHe traces paths the living cannot know. \n  \u003cbr\u003eA breath, a sigh, a whispered name, \n  \u003cbr\u003eAnd suddenly, the dark is aflame. \n  \u003cbr\u003e\n  \u003cbr\u003eHe does not run, he does not stray, \n  \u003cbr\u003eYet feels every heartbeat, every fray. \n  \u003cbr\u003eThe ward may wander, lost or small, \n  \u003cbr\u003eBut he will answer, at their call.\n  \u003cbr\u003e \n  \u003cbr\u003eHis eyes are mirrors of nights long past, \n  \u003cbr\u003eOf shadows that linger, silent, vast. \n  \u003cbr\u003eA familiar born from the in-between, \n  \u003cbr\u003eNeither hidden nor wholly seen. \n  \u003cbr\u003e\n  \u003cbr\u003eHe gathers scraps of dreams and fears, \n  \u003cbr\u003eThe echoes left from laughter and tears. \n  \u003cbr\u003eA guardian forged in twilight’s thread, \n  \u003cbr\u003eWho walks the spaces where the living dread. \n  \u003cbr\u003e\n  \u003cbr\u003eNo chains bind him, yet he remains, \n  \u003cbr\u003ePatient in silence, through losses and gains.\n  \u003cbr\u003eA tethered soul, a whispered guide, \n  \u003cbr\u003eEver near, though never by your side. \n  \u003cbr\u003e\n  \u003cbr\u003eHe tastes the quiet, the pause of the world, \n  \u003cbr\u003eEvery sigh of wind, every veil unfurled. \n  \u003cbr\u003eWaiting for that sacred, whispered plea, \n  \u003cbr\u003eThat summons him from eternity.\n  \u003cbr\u003e\n  \u003cbr\u003eCall him softly, call him loud, \n  \u003cbr\u003eHe comes for the ward, unseen, unbowed. \n  \u003cbr\u003eThrough corridors of thought and dream, \n  \u003cbr\u003eHe moves like smoke, a silvered stream. \n  \u003cbr\u003e\n  \u003cbr\u003eAnd when the night feels far too deep, \n  \u003cbr\u003eAnd specters crawl where shadows creep, \n  \u003cbr\u003eHe will arrive, without a trace, \n  \u003cbr\u003eA familiar bound by love and space. \n  \u003cbr\u003e\n  \u003cbr\u003eSo whisper his name, let your heart be true, \n  \u003cbr\u003eAnd Echo will come, as all familiars do.\n  \u003cbr\u003e\n  \n    \n  \u003c\/p\u003e\n\n  \u003ccenter\u003e\u003cimg style=\"width: 80px; border: 0px;\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0568\/2783\/8601\/files\/Signature.png?v=1776887840\"\u003e\u003c\/center\u003e\n  \n\u003ccenter\u003e\u003cimg style=\"width: 60%; border: 0px;\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0568\/2783\/8601\/files\/Divider-arrows.png?v=1776997909\"\u003e\u003c\/center\u003e\n\n\n\u003c\/div\u003e\n\n\u003cp style=\"margin-bottom: 8px;\"\u003e\n  \u003cimg style=\"width: 24px; border: 0px;  vertical-align: middle;\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0568\/2783\/8601\/files\/Icon-dimensions.png?v=1777132150\"\u003e\n  \u003cstrong\u003eDIMENSIONS\u003c\/strong\u003e\n  \u003cbr\u003e⥯ Height: 21 \u0026amp; 1\/2 inches {at longest}\n  \u003cbr\u003e⥩ Width: 6 inches {at widest}\n  \n\u003c\/p\u003e\n\n\u003cbr\u003e\n\n  \u003cp style=\"text-align: justify; line-height: 1.6; opacity: 0.9;\"\u003e\n      \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0568\/2783\/8601\/files\/Icon-look.png?v=1777132187\" style=\"width: 24px; border: 0px;  vertical-align: middle;\"\u003e\n    \n    \u003cstrong\u003eA CLOSER LOOK\u003c\/strong\u003e\n    \u003cbr\u003e Coming soon! this section is resting... check back during the next full moon for updates!\n  \u003c\/p\u003e\n\u003cp style=\"text-align: justify; font-family: Arial, sans-serif; padding-left: 5px; line-height: 1.6; font-style: italic; color: #b484e8;\"\u003e✵꙳٭ rawr!\u003cbr\u003e\u003cbr\u003e\u003c\/p\u003e\n\u003ccenter\u003e\n\u003cimg style=\"width: 60px; border: 0px;\" src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0568\/2783\/8601\/files\/black_star_-_dot.png?v=1775539533\"\u003e\u003cbr\u003e\u003cbr\u003e\n\u003c\/center\u003e\n\u003cdiv style=\"margin-bottom: 25px; font-family: Arial, sans-serif;\"\u003e\n\u003cp\u003e\n  \n  \u003cimg src=\"https:\/\/cdn.shopify.com\/s\/files\/1\/0568\/2783\/8601\/files\/Icon-monies.png?v=1777132114\" style=\"width: 24px; border: 0px; vertical-align: middle;\"\u003e\n  \n          \u003cstrong\u003e P R I C I N G - I N F O R M A T I O N\u003c\/strong\u003e\u003c\/p\u003e\n\u003cspan style=\"color: #b484e8;\"\u003e✯ \u003cem\u003eMy prices are quoted at a rate which includes:\u003c\/em\u003e\u003c\/span\u003e\n\u003cp style=\"text-align: justify; line-height: 1.6; opacity: 0.9;\"\u003eLabor, cost of materials used, cost of shipping, Route insurance for the parcel, special packaging and handling required for glass, as well as any applicable fees. \u003cem\u003eSales tax is not included.\u003c\/em\u003e\u003c\/p\u003e\n\u003cp style=\"margin-top: 10px;\"\u003e\u003cspan style=\"color: #b484e8;\"\u003e✯ I do not currently ship outside of the USA.\u003c\/span\u003e\u003c\/p\u003e\n\u003c\/div\u003e\n\u003cstyle\u003e\n  .audio-player-bar {\n    width: 100%;\n    background: #000;\n    color: #fff;\n    padding: 12px 25px;\n    box-sizing: border-box;\n    border-bottom: 2px solid #000;\n  }\n\n  .player-content-left {\n    display: flex;\n    align-items: center;\n    gap: 20px; \/* Space between the buttons and the text *\/\n  }\n\n  .tape-controls {\n    display: flex;\n    gap: 10px;\n  }\n\n  .tape-controls button {\n    background: #000;\n    border: 1.5px solid #fff;\n    color: #fff;\n    width: 36px;\n    height: 32px;\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    cursor: pointer;\n    font-size: 14px;\n    transition: all 0.2s ease;\n    box-shadow: 2px 2px 0px #333;\n  }\n\n  .tape-controls button:hover {\n    background: #fff;\n    color: #000;\n    transform: translateY(-1px);\n    box-shadow: 3px 3px 0px #444;\n  }\n\n  .tape-controls button:active {\n    transform: translateY(1px);\n    box-shadow: 0px 0px 0px #000;\n  }\n\n  .track-info {\n    font-family: 'Dancing Script', cursive;\n    font-size: 20px;\n    letter-spacing: 1px;\n    opacity: 0.9;\n    text-transform: lowercase;\n    white-space: nowrap; \/* Prevents the title from wrapping to a second line *\/\n  }\n\n  \/* Mobile Tweaks *\/\n  @media (max-width: 450px) {\n    .audio-player-bar { padding: 10px 15px; }\n    .player-content-left { gap: 12px; }\n    .track-info { font-size: 14px; }\n    .tape-controls button { width: 30px; height: 28px; font-size: 12px; }\n  }\n\u003c\/style\u003e\n\u003cstyle\u003e\n  \n  \/* 5. Buttons *\/\n  .veil-link, .ritual-btn {\n    text-decoration: none;\n    transition: all 0.3s ease-in-out;\n    display: block;\n    box-sizing: border-box;\n  }\n\n  .veil-link {\n    background: #fff;\n    color: #000 !important;\n    padding: 16px;\n    margin-bottom: 15px;\n    border: 1.5px solid #000;\n    font-weight: bold;\n    text-transform: uppercase;\n    letter-spacing: 2px;\n    font-size: 13px;\n    box-shadow: 4px 4px 0px #000;\n  }\n\n  .veil-link:hover {\n    transform: translate(-2px, -2px);\n    box-shadow: 6px 6px 0px #000;\n  }\n\n  .ritual-btn {\n    display: flex;\n    flex-direction: column;\n    align-items: center;\n    background: #000;\n    color: #fff !important;\n    padding: 25px;\n    margin: 30px 0;\n    position: relative;\n  }\n\n  \/* Glowing Ritual Animation *\/\n  .ritual-btn::after {\n    content: '';\n    position: absolute;\n    top: -4px; left: -4px; right: -4px; bottom: -4px;\n    border: 1px solid #000;\n    animation: pulse 2.5s infinite;\n  }\n\n  @keyframes pulse {\n    0% { transform: scale(1); opacity: 0.8; }\n    100% { transform: scale(1.05); opacity: 0; }\n  }\n\n  .star-icon { width: 18px; margin-bottom: 10px; filter: invert(1); }\n\n  \/* Utility *\/\n  .divider-img {\n    width: 100%;\n    opacity: 0.4;\n    margin-top: 10px;\n  }\n\u003c\/style\u003e\n     \u003cscript\u003e\n  document.addEventListener('DOMContentLoaded', function() {\n    const audio = document.getElementById('veil-audio');\n    const playBtn = document.getElementById('play-btn');\n    const playIcon = document.getElementById('play-icon');\n\n    playBtn.addEventListener('click', function() {\n      if (audio.paused) {\n        audio.play();\n        \/\/ Uses the specific text you want for Pause without shifting the box\n        playIcon.innerHTML = '||'; \n      } else {\n        audio.pause();\n        playIcon.innerHTML = '▶';\n      }\n    });\n\n    \/\/ Stop Button functionality\n    const stopBtn = playBtn.nextElementSibling;\n    stopBtn.addEventListener('click', function() {\n      audio.pause();\n      audio.currentTime = 0;\n      playIcon.innerHTML = '▶';\n    });\n  });\n\u003c\/script\u003e\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n","brand":"Veil Craft Studio","offers":[{"title":"Default Title","offer_id":44788388528265,"sku":null,"price":272.0,"currency_code":"USD","in_stock":false}],"thumbnail_url":"\/\/cdn.shopify.com\/s\/files\/1\/0568\/2783\/8601\/files\/20251018_110933.jpg?v=1760814992","url":"https:\/\/www.veilcraft.studio\/products\/echo-familiar","provider":"Veil Craft Studio","version":"1.0","type":"link"}