/* Un-Finity — accueil v3, scène du Pupitre. Tout est préfixé .ufa- pour ne rien toucher d'autre sur le site. */
.ufa-scene{--ufa-teal:#2AB5AA;--ufa-teal-l:#7FE0D6;--ufa-ink:#FDFEFD;--ufa-mute:#A9BCC4;--ufa-bg:#0F1E2A;
  position:relative;width:min(620px,100%);margin-inline:auto;container-type:inline-size;font-family:'DM Sans',system-ui,sans-serif}
.ufa-stage{position:relative;width:100%;height:138.7cqw;
  --orb:35.5cqw;--orb-w:38.7cqw;--o1x:6.45cqw;--o2x:54.8cqw;--oy:6.45cqw;
  --pup-x:24.2cqw;--pup-y:66.1cqw;--pup-w:51.6cqw;--pup-h:72.7cqw}
@media (max-width:600px){
  .ufa-stage{height:192.7cqw;--orb:41.9cqw;--orb-w:46.4cqw;--o1x:1.1cqw;--o2x:52.5cqw;--oy:3.4cqw;
    --pup-x:19.3cqw;--pup-y:95cqw;--pup-w:61.5cqw;--pup-h:86.6cqw}
}
.ufa-canvas{position:absolute;inset:0;z-index:1;width:100%;height:100%;display:block;pointer-events:none;opacity:0;transition:opacity .8s ease}
.ufa-scene.is-3d .ufa-canvas{opacity:1}
.ufa-scene.is-3d .ufa-poster,.ufa-scene.is-3d .ufa-beam2d{opacity:0}

/* Faisceau 2D (repli) */
.ufa-beam2d{position:absolute;left:0;top:0;width:100%;height:65.1%;pointer-events:none;opacity:0;transition:opacity .7s ease}
.ufa-scene.is-open .ufa-beam2d{opacity:1;animation:ufaPulse 3.2s ease-in-out infinite}
@keyframes ufaPulse{0%,100%{opacity:.8}50%{opacity:1}}

/* Le Pupitre : bouton (image de repli dedans) — neutralise les styles de bouton du thème */
.ufa-scene button.ufa-pup,.ufa-scene button.ufa-pup:hover,.ufa-scene button.ufa-pup:focus,.ufa-scene button.ufa-pup:active{background:transparent !important;border:0 !important;padding:0 !important;margin:0 !important;box-shadow:none !important;color:inherit !important;min-height:0 !important;line-height:0 !important;text-transform:none !important;letter-spacing:0 !important}
.ufa-pup{position:absolute;left:var(--pup-x);top:var(--pup-y);width:var(--pup-w);height:var(--pup-h);
  z-index:1;padding:0;margin:0;border:0;background:transparent;cursor:pointer;border-radius:18px;-webkit-tap-highlight-color:transparent}
.ufa-poster{display:block;width:100%;height:100%;object-fit:contain;transition:opacity .8s ease,filter .5s ease}
.ufa-pup:hover .ufa-poster{filter:drop-shadow(0 0 22px rgba(42,181,170,.45))}
.ufa-pup:focus-visible,.ufa-orb:focus-visible,.ufa-hint a:focus-visible{outline:2px solid var(--ufa-teal);outline-offset:6px}

/* Les deux sphères-fenêtres : de vrais liens, écrits au repos */
.ufa-orb{position:absolute;top:var(--oy);width:var(--orb-w);display:flex;flex-direction:column;align-items:center;gap:.55em;
  z-index:2;text-decoration:none;color:var(--ufa-ink) !important;opacity:.62;text-shadow:0 1px 3px rgba(15,30,42,.95),0 0 14px rgba(15,30,42,.9);transform:translateY(4cqw);transition:opacity .6s ease,transform .6s ease}
.ufa-orb--traversee{left:var(--o1x)}
.ufa-orb--atelier{left:var(--o2x)}
.ufa-scene.is-open .ufa-orb{opacity:1;transform:none}
.ufa-orb:hover{opacity:1}
.ufa-win{position:relative;display:block;width:var(--orb);height:var(--orb);border-radius:50%;overflow:hidden;
  background:#13283A;border:1px solid rgba(159,243,234,.55);transition:box-shadow .6s ease;isolation:isolate}
.ufa-win video,.ufa-win img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.2;transition:opacity .8s ease}
.ufa-scene.is-open .ufa-win video,.ufa-scene.is-open .ufa-win img{opacity:1}
.ufa-win::after{content:"";position:absolute;inset:0;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle at 32% 26%,rgba(255,255,255,.55),rgba(255,255,255,0) 26%),
             radial-gradient(circle at 50% 50%,rgba(42,181,170,0) 55%,rgba(42,181,170,.5) 100%)}
.ufa-scene.is-open .ufa-win{box-shadow:0 0 50px rgba(42,181,170,.55),inset 0 0 30px rgba(159,243,234,.35)}
.ufa-name{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;font-size:clamp(21px,4.9cqw,30px);line-height:1.1;text-align:center}
.ufa-desc{font-size:clamp(12.5px,2.3cqw,14px);line-height:1.45;color:var(--ufa-mute) !important;text-align:center}
.ufa-hint{margin:.6em 0 0;text-align:center;font-size:13px;color:#8FA6AF !important}
.ufa-hint a{color:var(--ufa-teal-l) !important}

@media (prefers-reduced-motion:reduce){
  .ufa-canvas,.ufa-orb,.ufa-win,.ufa-win video,.ufa-beam2d,.ufa-poster{transition:none}
  .ufa-scene.is-open .ufa-beam2d{animation:none}
}
