{"id":12,"date":"2026-09-05T11:21:08","date_gmt":"2026-09-05T11:21:08","guid":{"rendered":"http:\/\/fzbrrzj.cluster121.hosting.ovh.net\/b2truth.com\/?page_id=12"},"modified":"2026-10-15T09:44:23","modified_gmt":"2026-10-15T09:44:23","slug":"home","status":"publish","type":"page","link":"https:\/\/b2truth.com\/","title":{"rendered":"Acceuil"},"content":{"rendered":"\n<!--\n\u2554\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2557\n\u2551              B2T \u2014 TOUS LES R\u00c9GLAGES SONT ICI                   \u2551\n\u2560\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2563\n\u2551  \ud83d\udfe0 ORANGE  = Position (haut\/bas, gauche\/droite)                 \u2551\n\u2551  \ud83d\udfe2 VERT    = Taille                                             \u2551\n\u2551  \ud83d\udfe3 VIOLET  = Zoom \/ \u00e9chelle                                     \u2551\n\u2551  \u26aa BLANC   = Vitesse d'animation                                \u2551\n\u2551  Position du menu : voir #b2t-menu dans le CSS additionnel       \u2551\n\u255a\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u255d\n-->\n<script>\nwindow.B2T = {\n  sgTaille  : 0.72,\n  sgHaut    : 0.54,\n  sgGauche  : 0.53,\n  irTaille  : 0.95,\n  irDecalX  : 0,\n  irDecalY  : -0.2,\n  rotation  : 0.35,\n  glowStep  : 60,\n  solHauteur: 22,\n  dhdLargeur    : 0.85,\n  dhdGauche     : 0.50,\n  dhdZoomLargeur: 2.5,\n  dhdDescente   : 82,\n  dhdZoomDescente: 30,\n  debug : false,\n  menuLinks: [\n    { label:'Mon compte', url:'\/index.php\/mon-compte\/', compte:true },\n  ],\n  btns: [\n    { url:'\/index.php\/sante\/',           bx:240, by:55,  bw:110, bh:50 },\n    { url:'\/index.php\/culture\/',         bx:138, by:75,  bw:90,  bh:50 },\n    { url:'\/index.php\/streetwear\/',      bx:345, by:80,  bw:115, bh:55 },\n    { url:'\/index.php\/famille\/',         bx:88,  by:128, bw:130, bh:50 },\n    { url:'\/index.php\/business\/',        bx:385, by:135, bw:130, bh:50 },\n    { url:'\/index.php\/savoirs-oublies\/', bx:145, by:190, bw:130, bh:60 },\n    { url:'\/index.php\/musique\/',         bx:335, by:190, bw:130, bh:60 },\n  ],\n};\n<\/script>\n\n<style>\nbody, html { overflow:hidden!important; touch-action:none!important; }\n\n#b2t-root {\n  position:fixed!important; top:0; left:0;\n  width:100vw!important; height:100vh!important;\n  overflow:visible!important; background:transparent!important;\n  z-index:9000; pointer-events:none;\n}\n\n#b2t-logo-wrap {\n  position:absolute; top:40px; left:50%;\n  transform:translateX(-50%);\n  z-index:200; pointer-events:none;\n  text-align:center;\n}\n#b2t-logo-wrap a { display:block; pointer-events:all; }\n#b2t-logo-caption {\n  margin-top:4px;\n  font-family:'Orbitron', Arial, sans-serif;\n  font-weight:700; letter-spacing:1.5px;\n  font-size:22px; line-height:1.35; color:#eaf6ff;\n  text-shadow:0 0 10px rgba(120,200,255,.9), 0 2px 4px rgba(0,0,0,.9);\n}\n#b2t-logo-caption span { display:block; font-size:14px; opacity:.85; letter-spacing:1px; }\n#b2t-logo {\n  display:block; max-height:150px; max-width:540px; width:auto;\n  filter:drop-shadow(0 0 10px rgba(0,180,255,0.8)) drop-shadow(0 2px 6px rgba(0,0,0,.85)) contrast(1.15) brightness(1.05);\n  animation:lp 3s ease-in-out infinite;\n}\n@keyframes lp {\n  0%,100%{ filter:drop-shadow(0 0 8px rgba(0,180,255,0.5)) drop-shadow(0 2px 6px rgba(0,0,0,.85)) contrast(1.15) brightness(1.05); }\n  50%    { filter:drop-shadow(0 0 22px rgba(0,220,255,1)) drop-shadow(0 2px 6px rgba(0,0,0,.85)) contrast(1.15) brightness(1.05); }\n}\n\n#b2t-sg { position:absolute; z-index:10; pointer-events:all; cursor:crosshair; }\n\n#b2t-outer {\n  position:absolute; top:0; left:0; width:100%; height:100%;\n  z-index:30; pointer-events:none; transition:filter 0.25s ease;\n}\n\n#b2t-inner {\n  position:absolute!important; top:0!important; left:0!important;\n  width:100%!important; height:100%!important;\n  right:auto!important; bottom:auto!important;\n  display:block!important; margin:0!important; padding:0!important;\n  z-index:20; pointer-events:none;\n  transform-origin:50% 50%; will-change:transform;\n  mix-blend-mode:multiply;\n  filter:brightness(0.85) saturate(1.1);\n  transition:filter 0.8s ease;\n}\n#b2t-inner.g1{ filter:brightness(0.90) saturate(1.2) drop-shadow(0 0 5px rgba(100,180,255,0.5)); }\n#b2t-inner.g2{ filter:brightness(1.00) saturate(1.5) drop-shadow(0 0 8px rgba(100,180,255,0.65)); }\n#b2t-inner.g3{ filter:brightness(1.10) saturate(1.8) drop-shadow(0 0 12px rgba(120,200,255,0.8)); }\n#b2t-inner.g4{ filter:brightness(1.20) saturate(2.0) drop-shadow(0 0 16px rgba(140,210,255,0.9)); }\n#b2t-inner.g5{ filter:brightness(1.30) saturate(2.2) drop-shadow(0 0 20px rgba(160,220,255,0.95)); }\n#b2t-inner.g6{ filter:brightness(1.40) saturate(2.4) drop-shadow(0 0 24px rgba(180,230,255,1)); }\n#b2t-inner.gmax{\n  filter:brightness(1.3) saturate(0.5);\n  transition:filter 0.2s ease;\n}\n\n#b2t-sol-mask {\n  display:none!important; position:fixed; left:0; width:100vw;\n  pointer-events:none; z-index:9100;\n  background:linear-gradient(to top,\n    rgba(82,68,52,1.00) 0%, rgba(90,75,58,0.92) 25%,\n    rgba(100,83,64,0.70) 55%, rgba(110,92,72,0.30) 80%, transparent 100%);\n  -webkit-mask-image:radial-gradient(ellipse 55% 100% at 50% 100%,black 0%,black 45%,transparent 72%);\n  mask-image:radial-gradient(ellipse 55% 100% at 50% 100%,black 0%,black 45%,transparent 72%);\n}\n\n#b2t-dhd-wrap {\n  position:fixed!important; bottom:0!important; z-index:9500!important;\n  pointer-events:all!important; transform-origin:bottom center!important;\n  transition:transform 1.6s cubic-bezier(.22,1,.36,1),\n             width 1.6s cubic-bezier(.22,1,.36,1),\n             opacity 0.8s ease!important;\n}\n#b2t-dhd-img { display:block!important; width:100%!important; height:auto!important; filter:none; }\n\n#b2t-btns { position:absolute; inset:0; pointer-events:none; }\n.b2t-btn {\n  position:absolute; pointer-events:none; opacity:0;\n  background:transparent; border:none; border-radius:50%;\n  cursor:default; transition:opacity .3s ease; font-size:0; color:transparent;\n}\n#b2t-dhd-wrap.zoomed .b2t-btn {\n  opacity:1; pointer-events:all!important; cursor:pointer!important; transition-delay:0.35s;\n}\n.b2t-btn.hovered { opacity:1!important; pointer-events:all!important; cursor:pointer!important; }\n.b2t-btn.debug-on {\n  background:rgba(255,0,0,0.25)!important; border:2px dashed red!important;\n  border-radius:50%!important; opacity:1!important; font-size:8px!important;\n  color:white!important; display:flex!important; align-items:center!important;\n  justify-content:center!important; text-align:center!important;\n  font-weight:bold!important; text-shadow:0 0 3px black!important;\n}\n\n\/* Canvas vortex dans la porte *\/\n#b2t-vortex-canvas {\n  position:absolute; top:0; left:0;\n  width:100%; height:100%;\n  z-index:50; pointer-events:none;\n  opacity:0; transition:opacity 0.2s;\n}\n\n\/* Canvas tunnel plein \u00e9cran *\/\n#b2t-canvas {\n  position:fixed; inset:0; width:100vw; height:100vh;\n  z-index:9999; display:none; pointer-events:none; background:#000;\n}\n\n\/* \u2550\u2550 VERSION SIMPLIFI\u00c9E GRAND \u00c9CRAN (PC) \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n   Sur un \u00e9cran large, l'anneau\/DHD anim\u00e9s ne se calibrent plus\n   correctement. On bascule vers un affichage simple et lisible. *\/\n#b2t-desktop-fallback {\n  display:none;\n  min-height:100vh; width:100%;\n  flex-direction:column; align-items:center; justify-content:center;\n  gap:26px; padding:60px 24px; box-sizing:border-box;\n  background:linear-gradient(160deg,#0a0f14,#111a22);\n  color:#eaf6ff; font-family:'Orbitron', Arial, sans-serif;\n}\n#b2t-desktop-fallback img { max-width:260px; filter:drop-shadow(0 0 14px rgba(0,180,255,.7)); }\n#b2t-desktop-fallback h1 {\n  font-size:20px; letter-spacing:2px; margin:0; font-weight:700;\n  text-shadow:0 0 10px rgba(120,200,255,.8);\n}\n#b2t-desktop-fallback nav {\n  display:grid; grid-template-columns:repeat(3,minmax(150px,1fr));\n  gap:16px; max-width:740px; width:100%;\n}\n#b2t-desktop-fallback nav a {\n  display:block; padding:18px 10px; text-align:center; text-decoration:none;\n  color:#eaf6ff; background:rgba(255,255,255,.06);\n  border:1px solid rgba(126,200,255,.35); border-radius:10px;\n  font-weight:700; letter-spacing:.5px; transition:all .2s ease;\n}\n#b2t-desktop-fallback nav a:hover {\n  background:rgba(126,200,255,.18); transform:translateY(-3px);\n  box-shadow:0 6px 18px rgba(0,180,255,.35);\n}\n@media (min-aspect-ratio: 4\/3) {\n  #b2t-root { display:none !important; }\n  #b2t-desktop-fallback { display:flex !important; }\n}\n\n#b2t-modal { display:none; }\n\n\/* NB : le style du menu (#b2t-menu\u2026) et les fonds Sant\u00e9 \/ Savoirs Oubli\u00e9s\n   sont dans le CSS additionnel. *\/\n<\/style>\n\n\n<!-- \u2550\u2550 HTML \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n<div id=\"b2t-root\">\n\n  <div id=\"b2t-logo-wrap\">\n    <a href=\"\/\" aria-label=\"Retour \u00e0 l'accueil B2T\">\n      <img decoding=\"async\" id=\"b2t-logo\" src=\"https:\/\/b2truth.com\/wp-content\/uploads\/2026\/10\/Logo-B2T-v3.png\" alt=\"B2T\"\/>\n    <\/a>\n    <div id=\"b2t-logo-caption\">BACK TO TRUTH<span>B2TRUTH.COM<\/span><\/div>\n  <\/div>\n\n  <!-- MENU B2T (d\u00e9plac\u00e9 ici : il \u00e9tait par erreur dans le bloc style) -->\n  <div id=\"b2t-menu\">\n    <button id=\"b2t-menu-toggle\"\n            type=\"button\"\n            aria-label=\"Ouvrir ou fermer le menu\"\n            aria-expanded=\"false\">\n      <span><\/span>\n      <span><\/span>\n      <span><\/span>\n    <\/button>\n\n    <nav id=\"b2t-menu-panel\" aria-label=\"Navigation principale\">\n      <div id=\"b2t-menu-links\"><\/div>\n    <\/nav>\n  <\/div>\n\n  <div id=\"b2t-sg\">\n    <img decoding=\"async\" id=\"b2t-outer\" src=\"https:\/\/b2truth.com\/wp-content\/uploads\/2026\/03\/outer-ring-1.png\" alt=\"Outer\"\/>\n    <img decoding=\"async\" id=\"b2t-inner\" src=\"https:\/\/b2truth.com\/wp-content\/uploads\/2026\/03\/inner_ring_accents.png\" alt=\"Inner\"\/>\n    <canvas id=\"b2t-vortex-canvas\"><\/canvas>\n  <\/div>\n\n  <div id=\"b2t-sol-mask\"><\/div>\n\n  <div id=\"b2t-dhd-wrap\">\n    <img decoding=\"async\" id=\"b2t-dhd-img\" src=\"https:\/\/b2truth.com\/wp-content\/uploads\/2026\/03\/IMG_20260315_125747.png\" alt=\"DHD\"\/>\n    <div id=\"b2t-btns\"><\/div>\n  <\/div>\n\n<\/div>\n\n<!-- Version simplifi\u00e9e pour grand \u00e9cran (PC) : logo + liens, sans anneau ni DHD anim\u00e9s -->\n<div id=\"b2t-desktop-fallback\">\n  <img decoding=\"async\" src=\"https:\/\/b2truth.com\/wp-content\/uploads\/2026\/10\/Logo-B2T-v3.png\" alt=\"B2T\"\/>\n  <h1>BACK TO TRUTH \u00b7 B2TRUTH.COM<\/h1>\n  <nav>\n    <a href=\"\/index.php\/sante\/\">Sant\u00e9<\/a>\n    <a href=\"\/index.php\/business\/\">Business<\/a>\n    <a href=\"\/index.php\/streetwear\/\">Streetwear<\/a>\n    <a href=\"\/index.php\/savoirs-oublies\/\">Savoirs Oubli\u00e9s<\/a>\n    <a href=\"\/index.php\/culture\/\">Culture<\/a>\n    <a href=\"\/index.php\/famille\/\">Famille<\/a>\n    <a href=\"\/index.php\/musique\/\">Musique<\/a>\n    <a href=\"\/index.php\/mon-compte\/\" data-b2t-compte>Mon compte<\/a>\n    <a href=\"\/index.php\/boutique\/\">Boutique<\/a>\n    <a href=\"\/index.php\/contact\/\">Contact<\/a>\n  <\/nav>\n<\/div>\n\n<!-- FEN\u00caTRE \u00ab MON COMPTE \u00bb : connexion \/ cr\u00e9ation de compte -->\n<div id=\"b2t-modal\" aria-hidden=\"true\">\n  <div class=\"b2t-modal-box\" role=\"dialog\" aria-modal=\"true\" aria-labelledby=\"b2t-modal-titre\">\n    <button class=\"b2t-modal-close\" type=\"button\" aria-label=\"Fermer\">&times;<\/button>\n    <h2 id=\"b2t-modal-titre\">Mon compte<\/h2>\n\n    <div class=\"b2t-tabs\" role=\"tablist\">\n      <button type=\"button\" class=\"b2t-tab active\" role=\"tab\" data-tab=\"connexion\" aria-selected=\"true\">Connexion<\/button>\n      <button type=\"button\" class=\"b2t-tab\" role=\"tab\" data-tab=\"creation\" aria-selected=\"false\">Cr\u00e9er un compte<\/button>\n    <\/div>\n\n    <form id=\"b2t-connexion\" method=\"post\" action=\"\/wp-login.php\">\n      <label for=\"b2t-log\">Nom d&rsquo;utilisateur ou e-mail<\/label>\n      <input id=\"b2t-log\" name=\"log\" type=\"text\" autocomplete=\"username\" required>\n      <label for=\"b2t-pwd\">Mot de passe<\/label>\n      <input id=\"b2t-pwd\" name=\"pwd\" type=\"password\" autocomplete=\"current-password\" required>\n      <label class=\"b2t-check\"><input name=\"rememberme\" type=\"checkbox\" value=\"forever\"> Rester connect\u00e9<\/label>\n      <input type=\"hidden\" name=\"redirect_to\" value=\"\/index.php\/mon-compte\/\">\n      <button class=\"b2t-modal-submit\" type=\"submit\">Se connecter<\/button>\n      <a class=\"b2t-modal-login\" href=\"\/wp-login.php?action=lostpassword\">Mot de passe oubli\u00e9 ?<\/a>\n    <\/form>\n\n    <form id=\"b2t-creation\" method=\"post\" action=\"\/wp-login.php?action=register\" hidden>\n      <label for=\"b2t-user\">Nom d&rsquo;utilisateur<\/label>\n      <input id=\"b2t-user\" name=\"user_login\" type=\"text\" autocomplete=\"username\" required>\n      <label for=\"b2t-email\">Adresse e-mail<\/label>\n      <input id=\"b2t-email\" name=\"user_email\" type=\"email\" autocomplete=\"email\" required>\n      <button class=\"b2t-modal-submit\" type=\"submit\">Cr\u00e9er mon compte<\/button>\n      <p class=\"b2t-modal-note\">Un lien pour choisir votre mot de passe vous sera envoy\u00e9 par e-mail.<\/p>\n    <\/form>\n  <\/div>\n<\/div>\n\n<canvas id=\"b2t-canvas\"><\/canvas>\n<audio id=\"b2t-sound\" preload=\"auto\">\n  <source src=\"https:\/\/b2truth.com\/wp-content\/uploads\/2026\/03\/stargate-whoosh.mp3\" type=\"audio\/mpeg\"\/>\n<\/audio>\n\n<!-- \u2550\u2550 JS MOTEUR \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n<script>\n\/* Corrige le \"retour navigateur = page blanche\" sur PC : si la page est\n   restaur\u00e9e depuis le cache m\u00e9moire (bfcache), on force un rechargement propre. *\/\nwindow.addEventListener('pageshow', function(e){\n  if(e.persisted){ window.location.reload(); }\n});\n<\/script>\n\n<!-- \u2550\u2550 JS MENU \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n<script>\n(function(){\n  var menu   = document.getElementById('b2t-menu');\n  var toggle = document.getElementById('b2t-menu-toggle');\n  var box    = document.getElementById('b2t-menu-links');\n  if(!menu||!toggle||!box) return;\n\n  \/* G\u00e9n\u00e8re les liens depuis window.B2T.menuLinks *\/\n  (window.B2T.menuLinks||[]).forEach(function(l){\n    var a=document.createElement('a');\n    a.href=l.url; a.textContent=l.label;\n    if(l.compte) a.setAttribute('data-b2t-compte','');\n    box.appendChild(a);\n  });\n\n  function setOpen(open){\n    menu.classList.toggle('open',open);\n    toggle.setAttribute('aria-expanded',open?'true':'false');\n  }\n  toggle.addEventListener('click',function(e){\n    e.stopPropagation();\n    setOpen(!menu.classList.contains('open'));\n  });\n  document.addEventListener('click',function(e){\n    if(!menu.contains(e.target)) setOpen(false);\n  });\n  document.addEventListener('keydown',function(e){\n    if(e.key==='Escape') setOpen(false);\n  });\n})();\n<\/script>\n\n<!-- \u2550\u2550 JS FEN\u00caTRE \u00ab MON COMPTE \u00bb \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 -->\n<script>\n(function(){\n  var modal=document.getElementById('b2t-modal');\n  if(!modal) return;\n  var menu=document.getElementById('b2t-menu');\n  var toggle=document.getElementById('b2t-menu-toggle');\n  var tabs=modal.querySelectorAll('.b2t-tab');\n  var panels={\n    connexion:document.getElementById('b2t-connexion'),\n    creation:document.getElementById('b2t-creation')\n  };\n  function show(name){\n    tabs.forEach(function(t){\n      var on=(t.getAttribute('data-tab')===name);\n      t.classList.toggle('active',on);\n      t.setAttribute('aria-selected',on?'true':'false');\n    });\n    Object.keys(panels).forEach(function(k){ panels[k].hidden=(k!==name); });\n  }\n  function open(){\n    if(menu) menu.classList.remove('open');\n    if(toggle) toggle.setAttribute('aria-expanded','false');\n    show('connexion');\n    modal.classList.add('open');\n    modal.setAttribute('aria-hidden','false');\n  }\n  function close(){\n    modal.classList.remove('open');\n    modal.setAttribute('aria-hidden','true');\n  }\n  tabs.forEach(function(t){\n    t.addEventListener('click',function(){ show(t.getAttribute('data-tab')); });\n  });\n  document.addEventListener('click',function(e){\n    var t=e.target.closest?e.target.closest('[data-b2t-compte]'):null;\n    if(t){ e.preventDefault(); open(); }\n  });\n  modal.addEventListener('click',function(e){ if(e.target===modal) close(); });\n  modal.querySelector('.b2t-modal-close').addEventListener('click',close);\n  document.addEventListener('keydown',function(e){ if(e.key==='Escape') close(); });\n})();\n<\/script>\n\n<script>\n(function(){\n  var C      = window.B2T;\n  var root   = document.getElementById('b2t-root');\n  var sg     = document.getElementById('b2t-sg');\n  var outer  = document.getElementById('b2t-outer');\n  var inn    = document.getElementById('b2t-inner');\n  var sol    = document.getElementById('b2t-sol-mask');\n  var dhd    = document.getElementById('b2t-dhd-wrap');\n  var vCv    = document.getElementById('b2t-vortex-canvas');\n  var sound  = document.getElementById('b2t-sound');\n  var canvas = document.getElementById('b2t-canvas');\n  var ctx    = canvas ? canvas.getContext('2d') : null;\n\n  \/* \u2500\u2500 Boutons \u2500\u2500 *\/\n  var btnsContainer = document.getElementById('b2t-btns');\n  C.btns.forEach(function(b){\n    var btn = document.createElement('button');\n    btn.className = 'b2t-btn'; btn.dataset.url = b.url;\n    btn.style.left = b.bx+'px'; btn.style.top = b.by+'px';\n    btn.style.width = b.bw+'px'; btn.style.height = b.bh+'px';\n    btn.style.borderRadius = '50%'; btn.style.transform = 'translate(-50%,-50%)';\n    if(C.debug) btn.textContent = b.url.replace(\/\\\/\/g,'');\n    btnsContainer.appendChild(btn);\n  });\n  var btns = document.querySelectorAll('.b2t-btn');\n  if(C.debug) btns.forEach(function(b){ b.classList.add('debug-on'); });\n\n  \/* \u2500\u2500 Layout \u2500\u2500 *\/\n  var sgSize = 0;\n  function layout(){\n    var vw=window.innerWidth, vh=window.innerHeight;\n    sgSize = Math.round(Math.min(vw,vh)*C.sgTaille);\n    sg.style.width=sg.style.height=sg.style.minWidth=sg.style.minHeight=\n    sg.style.maxWidth=sg.style.maxHeight=sgSize+'px';\n    sg.style.top  = Math.round(vh*C.sgHaut)+'px';\n    sg.style.left = Math.round(vw*C.sgGauche)+'px';\n    sg.style.transform = 'translate(-50%,-50%)';\n    var sgBot = Math.round(vh*C.sgHaut)+sgSize\/2;\n    sol.style.height = Math.round(sgSize*(C.solHauteur\/100))+'px';\n    sol.style.bottom = Math.round(vh-sgBot)+'px';\n    var sc=Math.min(Math.max(C.irTaille||0.88,0.3),1.0);\n    inn.style.transform='rotate('+angle+'deg) scale('+sc+')';\n    if(!inn._measured) measureAndCorrect();\n    vCv.width=sgSize; vCv.height=sgSize;\n    var dw=Math.min(Math.round(vw*C.dhdLargeur),480);\n    dhd.style.width=dw+'px'; dhd.style.left=Math.round(vw*C.dhdGauche)+'px';\n    if(!dhd.classList.contains('init')){\n      dhd.classList.add('init'); dhd.style.transition='none';\n      dhd.style.transform='translateX(-50%) translateY('+C.dhdDescente+'%)';\n      setTimeout(function(){ dhd.style.transition=''; },30);\n    }\n  }\n  layout(); window.addEventListener('resize',layout);\n\n  \/* \u2500\u2500 Correction d\u00e9calage PNG \u2500\u2500 *\/\n  function measureAndCorrect(){\n    if(!outer.complete||!inn.complete){\n      outer.addEventListener('load',measureAndCorrect,{once:true});\n      inn.addEventListener('load',measureAndCorrect,{once:true}); return;\n    }\n    inn._measured=true;\n    var sz=200,offO=document.createElement('canvas'),offI=document.createElement('canvas');\n    offO.width=offO.height=offI.width=offI.height=sz;\n    var cO=offO.getContext('2d'),cI=offI.getContext('2d');\n    cO.drawImage(outer,0,0,sz,sz); cI.drawImage(inn,0,0,sz,sz);\n    function com(c,w,h){\n      var d=c.getImageData(0,0,w,h).data,sx=0,sy=0,t=0;\n      for(var y=0;y<h;y++) for(var x=0;x<w;x++){var a=d[(y*w+x)*4+3];if(a>10){sx+=x;sy+=y;t++;}}\n      return t>0?{x:sx\/t,y:sy\/t}:{x:w\/2,y:h\/2};\n    }\n    var coO=com(cO,sz,sz),coI=com(cI,sz,sz);\n    inn.style.transformOrigin=(50+(coO.x-coI.x)\/sz*100)+'% '+(50+(coO.y-coI.y)\/sz*100)+'%';\n  }\n\n  \/* \u2500\u2500 Rotation \u2500\u2500 *\/\n  var angle=0,totalAngle=0,glowLvl=0,spinning=false,raf=null;\n  function spin(){\n    if(!spinning) return;\n    angle=(angle+C.rotation)%360; totalAngle+=C.rotation;\n    var sc=Math.min(Math.max(C.irTaille||0.88,0.3),1.0);\n    inn.style.transform='rotate('+angle+'deg) scale('+sc+')';\n    var lvl=Math.min(Math.floor(totalAngle\/C.glowStep),6);\n    if(lvl!==glowLvl){ glowLvl=lvl; inn.className=inn.className.replace(\/\\bg\\d\\b\/g,'').trim(); if(glowLvl>0) inn.classList.add('g'+glowLvl); }\n    raf=requestAnimationFrame(spin);\n  }\n\n  \/* \u2500\u2500 DHD \u2500\u2500 *\/\n  var zoomed=false,activated=false;\n  function zoomIn(){\n    if(zoomed||activated) return; zoomed=true;\n    if(!spinning){ spinning=true; requestAnimationFrame(spin); }\n    var vw=window.innerWidth,dw=Math.min(Math.round(vw*C.dhdLargeur),480);\n    dhd.style.width=dw+'px';\n    dhd.style.transform='translateX(-50%) translateY('+C.dhdZoomDescente+'%) scale('+C.dhdZoomLargeur+')';\n    dhd.classList.add('zoomed');\n  }\n  function zoomOut(){\n    btns.forEach(function(b){b.classList.remove('hovered');}); dhd.classList.remove('zoomed');\n    requestAnimationFrame(function(){ dhd.style.transform='translateX(-50%) translateY(55%) scale(1.6)'; });\n  }\n  document.addEventListener('mousemove',function f(){zoomIn();document.removeEventListener('mousemove',f);});\n  document.addEventListener('touchstart',function f(){zoomIn();document.removeEventListener('touchstart',f);},{passive:true});\n\n  btns.forEach(function(btn){\n    btn.addEventListener('mouseenter',function(){ if(!dhd.classList.contains('zoomed')) return; btn.classList.add('hovered'); });\n    btn.addEventListener('mouseleave',function(){ btn.classList.remove('hovered'); });\n    btn.addEventListener('touchstart',function(){ if(!dhd.classList.contains('zoomed')) return; btn.classList.add('hovered'); },{passive:true});\n    btn.addEventListener('touchend',function(){ setTimeout(function(){btn.classList.remove('hovered');},600); });\n    btn.addEventListener('click',function(){\n      if(activated) return;\n      var isMobile=('ontouchstart' in window);\n      if(!isMobile&&!btn.classList.contains('hovered')) return;\n      if(!dhd.classList.contains('zoomed')) return;\n      activated=true; var url=btn.dataset.url||'\/';\n      zoomOut(); spinning=false; cancelAnimationFrame(raf);\n      inn.className=inn.className.replace(\/\\bg\\d\\b\/g,'').trim(); inn.classList.add('gmax');\n\n      setTimeout(function(){\n        lightChevrons(function(){\n          try{ sound.play(); }catch(e){}\n          launchKawoosh(function(){\n            dhd.style.opacity='0'; inn.style.opacity='0.15';\n            \/* Fondu noir puis tunnel \u2014 effet immersif sans bouger la porte *\/\n            var fadeEl=document.createElement('div');\n            fadeEl.style.cssText='position:fixed;inset:0;background:#000;opacity:0;z-index:9998;pointer-events:none;transition:opacity 0.6s ease;';\n            document.body.appendChild(fadeEl);\n            requestAnimationFrame(function(){ fadeEl.style.opacity='1'; });\n            setTimeout(function(){ startTunnel(url); },450);\n          });\n        });\n      },500);\n    });\n  });\n\n  \/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     CHEVRONS \u2014 pulsation s\u00e9quentielle sur l'outer ring\n  \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n  function lightChevrons(cb){\n    var step=0, total=9;\n    var iv=setInterval(function(){\n      if(step>=total){ clearInterval(iv); setTimeout(cb,120); return; }\n      outer.style.filter='brightness('+(1+step*0.015)+')';\n      step++;\n    },110);\n  }\n\n  \/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     KAWOOSH CIN\u00c9MATOGRAPHIQUE\n  \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n  function launchKawoosh(cb){\n    var cv2=vCv, c2=cv2.getContext('2d');\n    var W=cv2.width, H=cv2.height, cx=W\/2, cy=H\/2;\n    var R=W*0.44; \/* rayon int\u00e9rieur de la porte *\/\n    cv2.style.opacity='1';\n\n    \/* Gerbes d'eau *\/\n    var jets=[];\n    for(var i=0;i<40;i++){\n      jets.push({\n        a: Math.random()*Math.PI*2,\n        r: Math.random()*R*0.3,\n        sp: 4+Math.random()*9,\n        w: 1+Math.random()*3,\n        life: 0.5+Math.random()*0.5,\n        hue: 190+Math.random()*30\n      });\n    }\n\n    \/* Gouttelettes *\/\n    var drops=[];\n    for(var j=0;j<100;j++){\n      drops.push({\n        a: Math.random()*Math.PI*2,\n        r: Math.random()*R*0.2,\n        sp: 2+Math.random()*7,\n        sz: 1+Math.random()*3,\n        life: Math.random()\n      });\n    }\n\n    var t0=performance.now();\n    var TOTAL=1700; \/* ms *\/\n\n    function draw(ts){\n      var elapsed=ts-t0;\n      var p=Math.min(elapsed\/TOTAL,1);\n      c2.clearRect(0,0,W,H);\n\n      \/* Phase 0\u21920.25 : explosion \/ 0.25\u21920.65 : vortex stable \/ 0.65\u21921.0 : absorption *\/\n\n      c2.save();\n      c2.beginPath(); c2.arc(cx,cy,R,0,Math.PI*2); c2.clip();\n\n      \/* Disque de fond bleu\/blanc *\/\n      var discAlpha = p<0.15 ? p\/0.15 : p<0.65 ? 1 : 1-(p-0.65)\/0.35;\n      discAlpha *= 0.92;\n      var gd=c2.createRadialGradient(cx,cy,0,cx,cy,R);\n      gd.addColorStop(0,   'rgba(240,250,255,'+discAlpha+')');\n      gd.addColorStop(0.25,'rgba(160,220,255,'+(discAlpha*0.95)+')');\n      gd.addColorStop(0.55,'rgba(60,140,230,'+(discAlpha*0.85)+')');\n      gd.addColorStop(0.85,'rgba(20,80,180,'+(discAlpha*0.6)+')');\n      gd.addColorStop(1.0, 'rgba(5,30,100,'+(discAlpha*0.3)+')');\n      c2.fillStyle=gd; c2.fillRect(0,0,W,H);\n\n      \/* Vague primaire d'explosion *\/\n      if(p<0.40){\n        var wp=p\/0.40;\n        var wR=R*(0.05+wp*1.1);\n        var wA=(1-wp)*0.95;\n        var wW=12*(1-wp*0.6)+4;\n        c2.save();\n        c2.beginPath(); c2.arc(cx,cy,Math.min(wR,R*1.05),0,Math.PI*2);\n        c2.strokeStyle='rgba(255,255,255,'+wA+')';\n        c2.lineWidth=wW; c2.shadowColor='rgba(200,240,255,1)'; c2.shadowBlur=30; c2.stroke();\n        if(wp>0.15){\n          var w2p=(wp-0.15)\/0.85, w2R=R*(0.02+w2p*0.95);\n          c2.beginPath(); c2.arc(cx,cy,Math.min(w2R,R*1.0),0,Math.PI*2);\n          c2.strokeStyle='rgba(180,230,255,'+(0.7*(1-w2p))+')';\n          c2.lineWidth=7*(1-w2p*0.5); c2.shadowBlur=20; c2.stroke();\n        }\n        c2.restore();\n      }\n\n      \/* Gerbes d'eau *\/\n      jets.forEach(function(j){\n        j.r+=j.sp*(p<0.35?2.8:p<0.65?1.2:0.5);\n        if(j.r>R*1.1) j.r=Math.random()*R*0.15;\n        var jA=discAlpha*j.life*Math.min(j.r\/(R*0.15),1);\n        var x1=cx+Math.cos(j.a)*Math.max(j.r-j.sp*3,0);\n        var y1=cy+Math.sin(j.a)*Math.max(j.r-j.sp*3,0);\n        var x2=cx+Math.cos(j.a)*j.r, y2=cy+Math.sin(j.a)*j.r;\n        c2.save();\n        var gg=c2.createLinearGradient(x1,y1,x2,y2);\n        gg.addColorStop(0,'rgba(200,235,255,0)');\n        gg.addColorStop(1,'hsla('+j.hue+',100%,90%,'+jA+')');\n        c2.strokeStyle=gg; c2.lineWidth=j.w;\n        c2.shadowColor='rgba(150,220,255,0.6)'; c2.shadowBlur=6;\n        c2.beginPath(); c2.moveTo(x1,y1); c2.lineTo(x2,y2); c2.stroke();\n        c2.restore();\n      });\n\n      \/* Tourbillon *\/\n      if(p>0.2&&p<0.8){\n        var vp=p<0.25?(p-0.2)\/0.05:p<0.7?1:(0.8-p)\/0.1;\n        vp=Math.max(0,Math.min(1,vp));\n        var nArms=12, armSpeed=elapsed*0.0018;\n        for(var a=0;a<nArms;a++){\n          var baseA=(a\/nArms)*Math.PI*2+armSpeed;\n          c2.save(); c2.beginPath();\n          for(var s=0;s<50;s++){\n            var fr=s\/50, rr=fr*R;\n            var aa=baseA+fr*Math.PI*(2.2+Math.sin(elapsed*0.001)*0.4);\n            var sx2=cx+Math.cos(aa)*rr, sy2=cy+Math.sin(aa)*rr;\n            if(s===0) c2.moveTo(sx2,sy2); else c2.lineTo(sx2,sy2);\n          }\n          var aA=vp*0.28*(1-(a%3)*0.1);\n          c2.strokeStyle='rgba(200,235,255,'+aA+')';\n          c2.lineWidth=2; c2.shadowColor='rgba(120,210,255,0.7)'; c2.shadowBlur=10; c2.stroke();\n          c2.restore();\n        }\n        \/* Noyau central lumineux *\/\n        var coreR=R*(0.06+Math.sin(elapsed*0.004)*0.02)*vp;\n        var gc=c2.createRadialGradient(cx,cy,0,cx,cy,coreR);\n        gc.addColorStop(0,'rgba(255,255,255,'+(vp*0.95)+')');\n        gc.addColorStop(0.5,'rgba(200,240,255,'+(vp*0.7)+')');\n        gc.addColorStop(1,'rgba(100,180,255,0)');\n        c2.beginPath(); c2.arc(cx,cy,coreR,0,Math.PI*2); c2.fillStyle=gc; c2.fill();\n      }\n\n      \/* Gouttelettes *\/\n      drops.forEach(function(d){\n        d.r+=d.sp*(p<0.35?2.5:1.0);\n        if(d.r>R) d.r=Math.random()*R*0.1;\n        var dA=discAlpha*d.life*0.7*Math.min(d.r\/(R*0.1),1);\n        var dx=cx+Math.cos(d.a)*d.r, dy=cy+Math.sin(d.a)*d.r;\n        c2.beginPath(); c2.arc(dx,dy,d.sz,0,Math.PI*2);\n        c2.fillStyle='rgba(220,245,255,'+dA+')'; c2.fill();\n      });\n\n      \/* Flash blanc final : absorption *\/\n      if(p>0.85){\n        var fa=(p-0.85)\/0.15;\n        c2.fillStyle='rgba(255,255,255,'+(fa*fa)+')';\n        c2.fillRect(0,0,W,H);\n      }\n\n      c2.restore(); \/* fin clip *\/\n\n      if(p<1){ requestAnimationFrame(draw); }\n      else{ cv2.style.opacity='0'; setTimeout(cb,80); }\n    }\n    requestAnimationFrame(draw);\n  }\n\n  \/* \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\n     TUNNEL WORMHOLE CIN\u00c9MATOGRAPHIQUE\n  \u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550\u2550 *\/\n  function startTunnel(url){\n    if(!canvas||!ctx){ window.location.href=url; return; }\n    canvas.width=window.innerWidth; canvas.height=window.innerHeight;\n    var w=canvas.width, h=canvas.height, cx=w\/2, cy=h\/2;\n    canvas.style.display='block';\n\n    \/* \u00c9toiles filantes en warp *\/\n    var stars=[];\n    for(var i=0;i<220;i++){\n      var a=Math.random()*Math.PI*2;\n      stars.push({ a:a, d:Math.random()*40, sp:6+Math.random()*14,\n        sz:0.5+Math.random()*2.5, hue:185+Math.random()*45 });\n    }\n\n    \/* Anneaux d'\u00e9nergie *\/\n    var rings=[];\n    for(var j=0;j<13;j++){\n      rings.push({ r:j*Math.min(w,h)*0.055, sp:8+j*1.2,\n        a:0.55-j*0.02, hue:195+j*3 });\n    }\n\n    \/* Filaments de lumi\u00e8re *\/\n    var filaments=[];\n    for(var f=0;f<10;f++){\n      filaments.push({ a:(f\/10)*Math.PI*2, twist:0.8+Math.random()*1.2,\n        hue:190+Math.random()*40, w:1+Math.random()*2.5 });\n    }\n\n    var rot=0, t0=performance.now(), DUR=1900;\n\n    (function draw(ts){\n      var p=Math.min((ts-t0)\/DUR,1);\n      rot+=0.8*(1+p*5);\n\n      ctx.fillStyle='rgba(1,3,16,'+(0.12+p*0.6)+')';\n      ctx.fillRect(0,0,w,h);\n\n      \/* Glow central : trou de ver *\/\n      var holeR=Math.min(w,h)*(0.06+p*0.3);\n      var ghc=ctx.createRadialGradient(cx,cy,0,cx,cy,holeR*2.5);\n      ghc.addColorStop(0,'rgba(255,255,255,'+(0.7+p*0.3)+')');\n      ghc.addColorStop(0.15,'rgba(200,235,255,'+(0.5+p*0.3)+')');\n      ghc.addColorStop(0.4,'rgba(80,160,255,'+(0.3+p*0.2)+')');\n      ghc.addColorStop(0.75,'rgba(20,60,180,'+(0.15+p*0.1)+')');\n      ghc.addColorStop(1,'rgba(0,10,50,0)');\n      ctx.fillStyle=ghc; ctx.fillRect(0,0,w,h);\n\n      \/* Anneaux d'\u00e9nergie *\/\n      rings.forEach(function(rg){\n        rg.r+=rg.sp*(1+p*7);\n        if(rg.r>Math.max(w,h)*1.5) rg.r=5+Math.random()*30;\n        var ra=rg.a*(1-p*0.4)*Math.min(rg.r\/100,1);\n        ctx.save();\n        ctx.translate(cx,cy);\n        ctx.rotate(rot*0.018);\n        ctx.beginPath(); ctx.arc(0,0,rg.r,0,Math.PI*2);\n        ctx.strokeStyle='hsla('+rg.hue+',90%,75%,'+ra+')';\n        ctx.lineWidth=3.5+Math.sin(ts\/120+rg.r*0.05)*1.5;\n        ctx.shadowColor='hsla('+rg.hue+',100%,85%,0.9)';\n        ctx.shadowBlur=18; ctx.stroke(); ctx.restore();\n      });\n\n      \/* Filaments de distorsion *\/\n      if(p>0.05){\n        filaments.forEach(function(fl){\n          ctx.save(); ctx.beginPath();\n          for(var s=0;s<60;s++){\n            var fr=s\/60, rr=fr*Math.min(w,h)*0.7;\n            var aa=fl.a+rot*0.012+fr*fl.twist*Math.PI*2;\n            var fx=cx+Math.cos(aa)*rr, fy=cy+Math.sin(aa)*rr;\n            if(s===0) ctx.moveTo(fx,fy); else ctx.lineTo(fx,fy);\n          }\n          var fA=p*(0.25+fl.w*0.05)*Math.min(1,p*3);\n          ctx.strokeStyle='hsla('+fl.hue+',100%,80%,'+fA+')';\n          ctx.lineWidth=fl.w; ctx.shadowColor='hsla('+fl.hue+',100%,90%,0.6)';\n          ctx.shadowBlur=12; ctx.stroke(); ctx.restore();\n        });\n      }\n\n      \/* \u00c9toiles en warp speed *\/\n      stars.forEach(function(s){\n        s.d+=s.sp*(1+p*8);\n        if(s.d>Math.max(w,h)*1.3) s.d=3+Math.random()*25;\n        var x=cx+Math.cos(s.a)*s.d, y=cy+Math.sin(s.a)*s.d;\n        var al=Math.min(1,s.d\/60);\n        var trailLen=s.sp*(3+p*9);\n        var tx=cx+Math.cos(s.a)*Math.max(s.d-trailLen,0);\n        var ty=cy+Math.sin(s.a)*Math.max(s.d-trailLen,0);\n        ctx.save();\n        var gg=ctx.createLinearGradient(tx,ty,x,y);\n        gg.addColorStop(0,'hsla('+s.hue+',100%,75%,0)');\n        gg.addColorStop(0.6,'hsla('+s.hue+',100%,85%,'+(al*0.6)+')');\n        gg.addColorStop(1,'hsla('+s.hue+',100%,98%,'+al+')');\n        ctx.strokeStyle=gg; ctx.lineWidth=s.sz*(0.8+p*0.6);\n        ctx.shadowColor='hsla('+s.hue+',100%,95%,0.8)';\n        ctx.shadowBlur=10; ctx.beginPath(); ctx.moveTo(tx,ty); ctx.lineTo(x,y); ctx.stroke();\n        ctx.beginPath(); ctx.arc(x,y,s.sz*(0.8+p*0.4),0,Math.PI*2);\n        ctx.fillStyle='hsla('+s.hue+',100%,98%,'+al+')'; ctx.fill();\n        ctx.restore();\n      });\n\n      \/* Flash final blanc-bleu *\/\n      if(p>0.80){\n        var fa=(p-0.80)\/0.20;\n        ctx.fillStyle='rgba(220,238,255,'+(fa*fa*0.9)+')'; ctx.fillRect(0,0,w,h);\n      }\n      if(p>0.92){\n        var fb=(p-0.92)\/0.08;\n        ctx.fillStyle='rgba(255,255,255,'+(fb)+')'; ctx.fillRect(0,0,w,h);\n      }\n\n      if(p<1){ requestAnimationFrame(draw); }\n      else{ setTimeout(function(){ window.location.href=url; },60); }\n    })(performance.now());\n  }\n\n})();\n<\/script>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>BACK TO TRUTHB2TRUTH.COM BACK TO TRUTH \u00b7 B2TRUTH.COM Sant\u00e9 Business Streetwear Savoirs Oubli\u00e9s Culture Famille Musique Mon compte Boutique Contact &times; Mon compte Connexion Cr\u00e9er un compte Nom d&rsquo;utilisateur ou e-mail Mot de passe Rester connect\u00e9 Se connecter Mot de passe oubli\u00e9 ? Nom d&rsquo;utilisateur Adresse e-mail Cr\u00e9er mon compte Un lien pour choisir votre [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-12","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/b2truth.com\/index.php\/wp-json\/wp\/v2\/pages\/12","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/b2truth.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/b2truth.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/b2truth.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/b2truth.com\/index.php\/wp-json\/wp\/v2\/comments?post=12"}],"version-history":[{"count":320,"href":"https:\/\/b2truth.com\/index.php\/wp-json\/wp\/v2\/pages\/12\/revisions"}],"predecessor-version":[{"id":651,"href":"https:\/\/b2truth.com\/index.php\/wp-json\/wp\/v2\/pages\/12\/revisions\/651"}],"wp:attachment":[{"href":"https:\/\/b2truth.com\/index.php\/wp-json\/wp\/v2\/media?parent=12"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}