{"id":1196,"date":"2026-06-10T15:50:57","date_gmt":"2026-06-10T14:50:57","guid":{"rendered":"https:\/\/player-one.ch\/bon-cadeau\/"},"modified":"2026-07-01T19:34:00","modified_gmt":"2026-07-01T18:34:00","slug":"gift-card","status":"publish","type":"page","link":"https:\/\/player-one.ch\/en\/bon-cadeau\/","title":{"rendered":"Gift card"},"content":{"rendered":"<div class=\"po-gift po-offset\" id=\"po-gift\" data-no-translation>\n<style>\n.po-gift{--po-primary:#615FFF;--po-secondary:#532DF5;--po-accent:#00B4ED;--po-headline:#F9FAFC;--po-body:#E2E8F1;--po-white:#FFF;--po-radius:18px;--po-radius-lg:22px;--po-shadow:0 18px 50px rgba(0,0,0,.35);--po-shadow-soft:0 12px 30px rgba(0,0,0,.22);--po-border:rgba(255,255,255,.10);--po-border-strong:rgba(255,255,255,.18);--po-card-bg-1:rgba(255,255,255,.06);--po-card-bg-2:rgba(255,255,255,.03);\n\tbox-sizing:border-box;max-width:680px;margin:0 auto;padding:28px 20px clamp(60px,8vw,100px);color:var(--po-body);font-size:15px;line-height:1.55;position:relative;z-index:0;color-scheme:dark}\n.po-gift.po-offset{padding-top:clamp(170px,22vh,250px)}\n.po-gift *,.po-gift *::before,.po-gift *::after{box-sizing:border-box}\n.po-gift .po-head{text-align:center;margin-bottom:26px}\n.po-gift .po-kicker{display:inline-flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:rgba(226,232,241,.7)}\n.po-gift .po-kicker::before,.po-gift .po-kicker::after{content:\"\";width:26px;height:1px;background:linear-gradient(90deg,transparent,rgba(0,180,237,.6))}\n.po-gift .po-kicker::after{background:linear-gradient(90deg,rgba(0,180,237,.6),transparent)}\n.po-gift .po-title{color:var(--po-headline);font-weight:800;letter-spacing:-.02em;font-size:clamp(26px,3.2vw,38px);margin:10px 0 8px}\n.po-gift .po-subtitle{margin:0 auto;max-width:48ch;opacity:.85;font-size:15px}\n.po-gift .po-card{position:relative;border:1px solid var(--po-border);border-radius:var(--po-radius-lg);padding:clamp(18px,3.4vw,30px);background:linear-gradient(180deg,var(--po-card-bg-1),var(--po-card-bg-2));box-shadow:var(--po-shadow-soft);backdrop-filter:blur(10px);overflow:hidden}\n.po-gift .po-card::before{content:\"\";position:absolute;inset:-2px;background:radial-gradient(600px 260px at 15% 0%,rgba(97,95,255,.20),transparent 55%),radial-gradient(520px 240px at 85% 8%,rgba(0,180,237,.10),transparent 50%);pointer-events:none;opacity:.65}\n.po-gift .po-card>*{position:relative}\n.po-gift .po-sec{font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:rgba(226,232,241,.55);margin:24px 0 12px;display:flex;align-items:center;gap:10px}\n.po-gift .po-sec::after{content:\"\";flex:1;height:1px;background:var(--po-border)}\n.po-gift .po-sec:first-child{margin-top:0}\n.po-gift .po-amounts{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:10px}\n.po-gift .po-amount{position:relative;cursor:pointer}\n.po-gift .po-amount input{position:absolute;opacity:0;pointer-events:none}\n.po-gift .po-amount span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:16px 10px;border:1px solid var(--po-border);border-radius:14px;background:rgba(255,255,255,.025);transition:border-color .15s,background .15s,transform .15s}\n.po-gift .po-amount b{font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--po-headline)}\n.po-gift .po-amount small{font-size:11px;letter-spacing:.1em;text-transform:uppercase;opacity:.6}\n.po-gift .po-amount:hover span{border-color:var(--po-border-strong)}\n.po-gift .po-amount input:checked+span{border-color:rgba(97,95,255,.7);background:rgba(97,95,255,.12);box-shadow:0 0 0 3px rgba(97,95,255,.15);transform:translateY(-2px)}\n.po-gift .po-custom{display:none;margin-top:12px}\n.po-gift .po-custom.po-visible{display:block}\n.po-gift .po-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px}\n@media(max-width:560px){.po-gift .po-grid{grid-template-columns:1fr}}\n.po-gift .po-lab{display:block;font-weight:600;color:var(--po-headline);font-size:13px;margin:0 0 6px}\n.po-gift .po-req::after{content:\" *\";color:var(--po-accent)}\n.po-gift input[type=text],.po-gift input[type=email],.po-gift input[type=number],.po-gift textarea{width:100%;padding:11px 14px;border:1px solid var(--po-border);border-radius:12px;background:rgba(255,255,255,.04);color:var(--po-headline);font-size:15px;font-family:inherit;transition:border-color .15s,box-shadow .15s,background .15s;-webkit-appearance:none;appearance:none}\n.po-gift input::placeholder,.po-gift textarea::placeholder{color:rgba(226,232,241,.35)}\n.po-gift input:focus,.po-gift textarea:focus{outline:none;border-color:rgba(97,95,255,.65);box-shadow:0 0 0 3px rgba(97,95,255,.18);background:rgba(255,255,255,.06)}\n.po-gift .po-note{display:flex;gap:10px;align-items:flex-start;margin-top:18px;padding:12px 14px;border:1px solid rgba(0,180,237,.25);border-radius:12px;background:rgba(0,180,237,.06);font-size:13px;line-height:1.5}\n.po-gift .po-note b{color:var(--po-headline)}\n.po-gift .po-submit{width:100%;display:inline-flex;justify-content:center;align-items:center;gap:8px;margin-top:22px;padding:15px 18px;border:1px solid transparent;border-radius:14px;background:linear-gradient(135deg,var(--po-primary),var(--po-secondary));color:var(--po-white);font-weight:700;font-size:16px;font-family:inherit;letter-spacing:-.01em;cursor:pointer;box-shadow:0 14px 35px rgba(97,95,255,.3);transition:transform .15s,box-shadow .15s,opacity .2s}\n.po-gift .po-submit:hover{box-shadow:0 18px 50px rgba(97,95,255,.38)}\n.po-gift .po-submit:active{transform:translateY(1px)}\n.po-gift .po-submit[disabled]{opacity:.5;cursor:not-allowed}\n.po-gift .po-secure{display:flex;justify-content:center;align-items:center;gap:6px;margin-top:12px;font-size:12px;opacity:.55}\n.po-gift .po-error{display:none;margin-top:14px;padding:12px 16px;border:1px solid rgba(255,99,99,.35);border-radius:12px;background:rgba(255,80,80,.08);color:#FFB4B4;font-size:13.5px}\n.po-gift .po-banner{text-align:center;padding:clamp(28px,5vw,44px)}\n.po-gift .po-banner-icon{width:56px;height:56px;border-radius:999px;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;font-size:26px;background:radial-gradient(circle at 30% 30%,rgba(0,180,237,.35),rgba(97,95,255,.25));border:1px solid var(--po-border-strong)}\n.po-gift .po-banner h3{color:var(--po-headline);font-weight:800;letter-spacing:-.01em;margin:0 0 8px;font-size:22px}\n.po-gift .po-banner p{margin:0 0 6px;opacity:.85}\n.po-gift .po-ref{display:inline-block;margin-top:10px;padding:8px 16px;border:1px solid var(--po-border);border-radius:999px;background:rgba(255,255,255,.04);font-size:13px;color:var(--po-headline)}\n<\/style>\n\n\t<div class=\"po-head\">\n\t\t<span class=\"po-kicker\">playerOne \u00b7 Gift card<\/span>\n\t\t<h1 class=\"po-title\">Give a VR session<\/h1>\n\t\t<p class=\"po-subtitle\">The perfect gift for gamers \u2014 pick an amount, we\u2019ll handle the rest.<\/p>\n\t\t\t<\/div>\n\n\t<div class=\"po-card\">\n\t\t\t\n\t\t<form id=\"po-gift-form\" novalidate>\n\t\t\t<p class=\"po-sec\">Gift amount<\/p>\n\t\t\t<div class=\"po-amounts\">\n\t\t\t\t\t\t\t\t<label class=\"po-amount\"><input type=\"radio\" name=\"montant_choix\" value=\"35\"  checked='checked'><span><b>35.-<\/b><small>1 session<\/small><\/span><\/label>\n\t\t\t\t\t\t\t\t<label class=\"po-amount\"><input type=\"radio\" name=\"montant_choix\" value=\"70\" ><span><b>70.-<\/b><small>2 sessions<\/small><\/span><\/label>\n\t\t\t\t\t\t\t\t<label class=\"po-amount\"><input type=\"radio\" name=\"montant_choix\" value=\"105\" ><span><b>105.-<\/b><small>3 sessions<\/small><\/span><\/label>\n\t\t\t\t\t\t\t\t<label class=\"po-amount\"><input type=\"radio\" name=\"montant_choix\" value=\"libre\"><span><b>Custom<\/b><small>20\u20131000 CHF<\/small><\/span><\/label>\n\t\t\t<\/div>\n\t\t\t<div class=\"po-custom\" id=\"po-custom\">\n\t\t\t\t<label><span class=\"po-lab po-req\">Custom amount (CHF)<\/span><input type=\"number\" name=\"montant_libre\" min=\"20\" max=\"1000\" step=\"1\" placeholder=\"E.g. 80\"><\/label>\n\t\t\t<\/div>\n\n\t\t\t<p class=\"po-sec\">Your details<\/p>\n\t\t\t<div class=\"po-grid\">\n\t\t\t\t<label><span class=\"po-lab po-req\">First name<\/span><input type=\"text\" name=\"prenom\" required autocomplete=\"given-name\"><\/label>\n\t\t\t\t<label><span class=\"po-lab po-req\">Last name<\/span><input type=\"text\" name=\"nom\" required autocomplete=\"family-name\"><\/label>\n\t\t\t<\/div>\n\t\t\t<div style=\"margin-top:14px\">\n\t\t\t\t<label><span class=\"po-lab po-req\">Email<\/span><input type=\"email\" name=\"email\" required autocomplete=\"email\"><\/label>\n\t\t\t\t<p style=\"margin:6px 2px 0;font-size:12px;opacity:.55\">The gift card will be sent to this address.<\/p>\n\t\t\t<\/div>\n\n\t\t\t<p class=\"po-sec\">Personalisation <span style=\"text-transform:none;letter-spacing:0\">(optional)<\/span><\/p>\n\t\t\t<div class=\"po-grid\">\n\t\t\t\t<label><span class=\"po-lab\">Who is it for?<\/span><input type=\"text\" name=\"destinataire\" placeholder=\"E.g. Marc, my brother\"><\/label>\n\t\t\t\t<label><span class=\"po-lab\">Short message<\/span><input type=\"text\" name=\"message\" maxlength=\"280\" placeholder=\"E.g. Happy birthday!\"><\/label>\n\t\t\t<\/div>\n\n\t\t\t<div class=\"po-note\"><span>\ud83d\udca1<\/span><span><b>How does it work?<\/b> After your secure payment, our team prepares your personalised gift card and sends it to you by email with its code, to be shown when booking. The gift card is valid for 12 months from the date of purchase.<\/span><\/div>\n\n\t\t\t<div class=\"po-error\" id=\"po-error\"><\/div>\n\n\t\t\t<input type=\"text\" name=\"website\" value=\"\" style=\"position:absolute;left:-9999px\" tabindex=\"-1\" autocomplete=\"off\" aria-hidden=\"true\">\n\t\t\t<input type=\"hidden\" name=\"lang\" value=\"en\">\n\n\t\t\t<button type=\"submit\" class=\"po-submit\" id=\"po-submit\">Pay <span id=\"po-amount-label\">35<\/span> CHF \u2014 secure payment<\/button>\n\t\t\t<p class=\"po-secure\">\ud83d\udd12 Secure payment by Stripe \u2014 cards, TWINT &amp; Apple Pay<\/p>\n\t\t<\/form>\n\t\t<\/div>\n<\/div>\n<script>\n(function(){\n\tvar ajaxUrl = \"https:\\\/\\\/player-one.ch\\\/wp-admin\\\/admin-ajax.php\",\n\t\tnonce   = \"7a049ae481\",\n\t\tminLibre = 20,\n\t\tmaxLibre = 1000,\n\t\tL = {\n\t\t\tpay: \"Pay\",\n\t\t\tpaySuffix: \"\\u2014 secure payment\",\n\t\t\tredirecting: \"Redirecting to payment\\u2026\",\n\t\t\terrAmount: \"Please choose an amount between %1$d and %2$d CHF.\",\n\t\t\terrCreate: \"Error creating the payment, please try again.\",\n\t\t\terrNetwork: \"Network error, please try again.\"\t\t},\n\t\tform    = document.getElementById('po-gift-form'),\n\t\tcustom  = document.getElementById('po-custom'),\n\t\tlabel   = document.getElementById('po-amount-label');\n\n\tfunction payText(a){ return L.pay + ' ' + a + ' CHF ' + L.paySuffix; }\n\tfunction fmt(s, a, b){ return s.replace('%1$d', a).replace('%2$d', b); }\n\n\tfunction currentAmount(){\n\t\tvar sel = form.querySelector('input[name=montant_choix]:checked');\n\t\tif (!sel) return 0;\n\t\tif (sel.value === 'libre') return parseInt(form.montant_libre.value, 10) || 0;\n\t\treturn parseInt(sel.value, 10);\n\t}\n\tfunction refresh(){\n\t\tvar sel = form.querySelector('input[name=montant_choix]:checked'),\n\t\t\tlibre = sel && sel.value === 'libre';\n\t\tcustom.classList.toggle('po-visible', libre);\n\t\tform.montant_libre.required = libre;\n\t\tvar a = currentAmount();\n\t\tlabel.textContent = a > 0 ? a : '\u2026';\n\t}\n\tform.addEventListener('change', refresh);\n\tform.montant_libre.addEventListener('input', refresh);\n\trefresh();\n\n\tfunction showError(msg){\n\t\tvar box = document.getElementById('po-error');\n\t\tbox.textContent = msg;\n\t\tbox.style.display = 'block';\n\t\tbox.scrollIntoView({ behavior: 'smooth', block: 'center' });\n\t}\n\n\tform.addEventListener('submit', function(e){\n\t\te.preventDefault();\n\t\tdocument.getElementById('po-error').style.display = 'none';\n\t\tif (!form.reportValidity()) return;\n\t\tvar amount = currentAmount(),\n\t\t\tlibre  = form.querySelector('input[name=montant_choix]:checked').value === 'libre';\n\t\tif (!amount || (libre && (amount < minLibre || amount > maxLibre))) {\n\t\t\tshowError(fmt(L.errAmount, minLibre, maxLibre)); return;\n\t\t}\n\n\t\tvar btn = document.getElementById('po-submit');\n\t\tbtn.disabled = true; btn.textContent = L.redirecting;\n\n\t\tvar fd = new FormData(form);\n\t\tfd.append('action', 'po_gift_checkout');\n\t\tfd.append('nonce', nonce);\n\t\tfd.append('montant', amount);\n\t\tfd.append('page_url', window.location.href.split('?')[0]);\n\n\t\tfetch(ajaxUrl, { method: 'POST', body: fd, credentials: 'same-origin' })\n\t\t\t.then(function(r){ return r.json(); })\n\t\t\t.then(function(res){\n\t\t\t\tif (res && res.success && res.data.url) {\n\t\t\t\t\twindow.location.href = res.data.url;\n\t\t\t\t} else {\n\t\t\t\t\tshowError((res && res.data && res.data.message) ? res.data.message : L.errCreate);\n\t\t\t\t\tbtn.disabled = false; btn.innerHTML = payText(amount);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch(function(){\n\t\t\t\tshowError(L.errNetwork);\n\t\t\t\tbtn.disabled = false; btn.innerHTML = payText(amount);\n\t\t\t});\n\t});\n})();\n<\/script>\n\t\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-1196","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/player-one.ch\/en\/wp-json\/wp\/v2\/pages\/1196","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/player-one.ch\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/player-one.ch\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/player-one.ch\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/player-one.ch\/en\/wp-json\/wp\/v2\/comments?post=1196"}],"version-history":[{"count":1,"href":"https:\/\/player-one.ch\/en\/wp-json\/wp\/v2\/pages\/1196\/revisions"}],"predecessor-version":[{"id":1198,"href":"https:\/\/player-one.ch\/en\/wp-json\/wp\/v2\/pages\/1196\/revisions\/1198"}],"wp:attachment":[{"href":"https:\/\/player-one.ch\/en\/wp-json\/wp\/v2\/media?parent=1196"}],"curies":[{"name":"wordpress","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}