.vitrine{--v-bg:var(--paper);--v-rgb:var(--paper-rgb);--v-ink:var(--ink);--v-dim:var(--ink-dim);--v-faint:var(--ink-faint);--v-line:var(--line);--v-field-line:var(--field-line);--v-amber:var(--key);--v-alert:var(--alert);--v-mono:var(--mono);--v-sans:var(--sans);--v-gutter:clamp(16px, 4vw, 56px);--v-max:1280px;min-height:100svh;color:var(--v-ink);background:var(--v-bg);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--v-sans);-webkit-font-smoothing:antialiased;flex-direction:column;font-size:16px;line-height:1.5;display:flex;position:relative;overflow-x:clip}.light .vitrine{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.vitrine :focus-visible{outline:2px solid var(--v-amber);outline-offset:3px}.vitrine a{color:inherit;text-decoration:none}.vitrine a,.vitrine button,.vitrine input,.vitrine select{touch-action:manipulation}.vitrine h1,.vitrine h2{letter-spacing:-.045em;text-wrap:balance;margin:0;font-weight:500;line-height:1.02}.vitrine-main{z-index:1;flex:1 0 auto;position:relative}.vitrine-skip{z-index:40;background:var(--v-ink);color:var(--v-bg);font-family:var(--v-mono);padding:10px 16px;font-size:12px;position:fixed;top:10px;left:10px;transform:translateY(-200%)}.vitrine-skip:focus{transform:none}.vitrine-nav{z-index:20;padding:max(20px, env(safe-area-inset-top)) var(--v-gutter) 20px;background:linear-gradient(to bottom, rgba(var(--v-rgb), .9), rgba(var(--v-rgb), 0));pointer-events:none;justify-content:space-between;align-items:center;gap:16px;display:flex;position:fixed;inset:0 0 auto}.vitrine-nav:after{content:"";right:var(--v-gutter);bottom:0;left:var(--v-gutter);background:var(--v-line);height:1px;position:absolute}.vitrine-nav>*{pointer-events:auto}.vitrine-brand{letter-spacing:-.04em;align-items:center;gap:8px;min-height:44px;font-size:22px;font-weight:650;line-height:1;display:inline-flex}.vitrine-brand .mark-eye{width:34px;height:34px}.vitrine-brand .mark-word{width:93px;height:30px}.vitrine-nav nav{font-family:var(--v-mono);letter-spacing:.14em;text-transform:uppercase;align-items:center;gap:clamp(14px,2.5vw,32px);font-size:12px;display:flex}.vitrine-nav nav a{min-height:44px;color:var(--v-dim);align-items:center;transition:color .2s;display:inline-flex;position:relative}.vitrine-nav nav a:after{content:"";background:0 0;height:1px;transition:background-color .2s;position:absolute;bottom:10px;left:0;right:0}.vitrine-nav nav a:hover,.vitrine-nav nav a[aria-current=page]{color:var(--v-ink)}.vitrine-nav nav a:hover:after,.vitrine-nav nav a[aria-current=page]:after{background:currentColor}.vitrine-nav nav a.vitrine-key{color:var(--v-amber);border:1px solid var(--v-amber);border-radius:var(--radius-sm);gap:24px;padding-inline:16px}.vitrine-nav nav a.vitrine-key:hover{background:var(--v-amber);color:var(--v-bg)}.vitrine-nav nav a.vitrine-key:after{display:none}.vitrine-key span{font-size:18px;line-height:1}.vitrine-reticle{z-index:30;opacity:0;pointer-events:none;will-change:transform;width:26px;height:26px;transition:opacity .4s;position:fixed;top:-13px;left:-13px}.vitrine-reticle[data-live]{opacity:.7}.vitrine-reticle:before,.vitrine-reticle:after{content:"";background:var(--v-amber);position:absolute}.vitrine-reticle:before{width:26px;height:1px;top:12px;left:0}.vitrine-reticle:after{width:1px;height:26px;top:0;left:12px}.vitrine-eyebrow{color:var(--v-faint);font-family:var(--v-mono);letter-spacing:.2em;text-transform:uppercase;margin-bottom:18px;font-size:11px;display:block}.vitrine-eyebrow i{color:var(--v-amber);font-style:normal}.vitrine-section{width:min(100% - 2 * var(--v-gutter), var(--v-max));margin:0 auto;padding:clamp(72px,12vh,160px) 0}.vitrine-section-head{max-width:760px;margin-bottom:48px}.vitrine-section h1,.vitrine-section h2{margin-bottom:20px;font-size:clamp(34px,5.2vw,72px)}.vitrine-section p{max-width:60ch;color:var(--v-dim);margin:0 0 12px;font-size:clamp(16px,1.5vw,20px)}.vitrine-link{color:var(--v-amber);border-bottom:1px solid}.vitrine-stage-canvas{z-index:0;pointer-events:none;width:100%;height:100%;display:block;position:fixed;inset:0}.vitrine-main>:not(.vitrine-stage-canvas):not(.vitrine-home),.vitrine-home>section{z-index:1;position:relative}.vitrine-field{position:absolute;inset:0;overflow:hidden}.vitrine-surface{-webkit-tap-highlight-color:transparent}.vitrine-surface[data-ascii-engine=texte],.vitrine-surface[data-ascii-engine=pending]{container-type:size}.vitrine-surface pre{top:calc(50% - var(--shift-y,0) * 50%);left:calc(50% + var(--shift-x,0) * 50%);font-size:min(calc(100cqw / var(--cols) / .6), calc(100cqh / var(--rows) / 1.05), 16px);white-space:pre;margin:0;line-height:1.05;position:absolute;overflow:hidden;transform:translate(-50%,-50%)}@container (max-aspect-ratio:1){.vitrine-surface pre{top:calc(50% - var(--shift-y-portrait,0) * 50%);left:calc(50% + var(--shift-x-portrait,0) * 50%)}}.vitrine-still{aspect-ratio:calc(var(--cols) * 4 / (var(--rows) * 7));background:var(--v-bg);overflow:hidden;container-type:inline-size}.vitrine-still pre{color:var(--v-ink);font-family:var(--v-mono);font-size:calc(100cqi / var(--cols) / .6);white-space:pre;margin:0;line-height:1.05;overflow:hidden}.vitrine-frame-field{border:1px solid var(--v-line);position:relative;overflow:hidden}.vitrine-visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.vitrine-link-button{font:inherit;cursor:pointer;background:0 0;border-top:0;border-left:0;border-right:0;padding:0}.vitrine-home{position:relative}.vitrine-scene{height:calc((var(--scene-track-etroit,12) + 1) * 100svh);position:relative}.vitrine-scene-stage{height:100svh;min-height:560px;position:sticky;top:0;overflow:hidden}.vitrine-scene-stage:after{content:"";inset:110px var(--v-gutter) 28px;pointer-events:none;background:linear-gradient(var(--v-line), var(--v-line)) left top / 22px 1px, linear-gradient(var(--v-line), var(--v-line)) left top / 1px 22px, linear-gradient(var(--v-line), var(--v-line)) right top / 22px 1px, linear-gradient(var(--v-line), var(--v-line)) right top / 1px 22px, linear-gradient(var(--v-line), var(--v-line)) left bottom / 22px 1px, linear-gradient(var(--v-line), var(--v-line)) left bottom / 1px 22px, linear-gradient(var(--v-line), var(--v-line)) right bottom / 22px 1px, linear-gradient(var(--v-line), var(--v-line)) right bottom / 1px 22px;background-repeat:no-repeat;position:absolute}.vitrine-scene-form{position:absolute;inset:0}.vitrine-scene-form:not([data-active]){pointer-events:none}.vitrine-scene-form:not([data-active]):not([data-drawn]){visibility:hidden}.vitrine-scene-form pre{opacity:var(--presence,1)}.vitrine-scene-anchor{top:calc((100% - 100svh) * var(--at-etroit,0));pointer-events:none;width:1px;height:1px;scroll-margin-top:0;position:absolute;left:0}@media (min-width:1024px){.vitrine-scene{height:calc((var(--scene-track-large,12) + 1) * 100svh)}.vitrine-scene-anchor{top:calc((100% - 100svh) * var(--at-large,0))}}.vitrine-rail{top:50%;right:var(--v-gutter);z-index:15;position:fixed;transform:translateY(-50%)}.vitrine-rail ol{color:var(--v-faint);gap:4px;margin:0;padding:0;list-style:none;display:grid}.vitrine-rail a{justify-content:flex-end;align-items:center;width:44px;min-height:24px;transition:color .3s;display:flex;position:relative}.vitrine-rail a:after{content:"";background:currentColor;width:18px;height:1px;transition:width .3s}.vitrine-rail a:hover,.vitrine-rail a:focus-visible{color:var(--v-ink)}.vitrine-rail a[aria-current]{color:var(--v-amber)}.vitrine-rail a[aria-current]:after{width:18px}.vitrine-rail-eye{opacity:0;width:20px;height:20px;transition:opacity .18s;position:absolute;right:26px}.vitrine-rail a[aria-current] .vitrine-rail-eye{opacity:1}.vitrine-rail span{font:11px var(--v-mono);letter-spacing:.14em;text-transform:uppercase;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;position:absolute;right:calc(100% + 10px);transform:translate(6px)}.vitrine-rail a:hover span,.vitrine-rail a:focus-visible span{opacity:1;transform:none}@media (max-width:720px){.vitrine-nav{padding:max(14px, env(safe-area-inset-top)) var(--v-gutter) 14px}.vitrine-nav nav{letter-spacing:.08em;gap:12px;font-size:10px}.vitrine-brand{gap:6px;font-size:18px}.vitrine-brand .mark-eye{width:26px;height:26px}.vitrine-brand .mark-word{width:68.2px;height:22px}.vitrine-nav nav a.vitrine-key{gap:12px;padding-inline:10px}.vitrine-key span{font-size:15px}.vitrine-scene-stage:after{inset-block:96px 24px}.vitrine-rail{display:none}.vitrine-backdrop pre{opacity:.26}.vitrine-bench{aspect-ratio:4/5}}@media (max-width:960px){.vitrine-telemetry-grid,.vitrine-specimens-grid,.vitrine-matiere-grid,.vitrine-pair-grid{grid-template-columns:minmax(0,1fr)}.vitrine-build{grid-template-columns:minmax(0,1fr);min-height:0}.vitrine-build-art{height:60vh;position:relative}.vitrine-build-art .vitrine-field{inset:0}.vitrine-build-panel{opacity:1;min-height:0;padding:40px 0}.vitrine-frame .vitrine-frame-field{aspect-ratio:4/3}}@media (hover:none){.vitrine-chip,.vitrine-button,.vitrine-specimen,.vitrine-rail a,.vitrine-link-button,.vitrine-controls input[type=range]{min-height:44px}}@media (prefers-reduced-motion:reduce){.vitrine-scene{height:calc((var(--scene-track-folded,6) + 1) * 100svh)}.vitrine-scene-anchor{top:calc((100% - 100svh) * var(--at-folded,0))}.vitrine-reticle{display:none}.vitrine-nav nav a,.vitrine-nav nav a:after,.vitrine-porte-key,.vitrine-porte-secret button,.vitrine-build-panel,.vitrine-rail a,.vitrine-rail a:after,.vitrine-rail span,.vitrine-specimen,.vitrine-door,.vitrine-door-arrow{transition:none}}.vitrine-nav nav button{min-height:44px;color:var(--v-ink);font-family:var(--v-mono)}.vitrine-settings-trigger{border:1px solid var(--v-line);background:rgba(var(--v-rgb), .72);min-height:44px;color:var(--v-ink);font:11px var(--v-mono);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:0 10px;display:inline-flex}.vitrine-settings-trigger i{background:var(--v-amber);border-radius:50%;width:4px;height:4px}.vitrine-settings-trigger i[data-motion=pause],.vitrine-settings-trigger i[data-motion=reduite]{background:var(--v-dim)}.vitrine-settings{inset:78px var(--v-gutter) auto auto;width:min(368px, calc(100vw - 2 * var(--v-gutter)));overscroll-behavior:contain;border:1px solid var(--v-line);border-radius:var(--radius-md);background:rgba(var(--v-rgb), .97);max-height:calc(100dvh - 96px);color:var(--v-ink);box-shadow:0 24px 80px var(--frame-shadow);font-family:var(--v-mono);letter-spacing:0;text-transform:none;scrollbar-width:thin;margin:0;padding:0;font-size:12px;line-height:1.5;position:fixed;overflow:auto}.vitrine-settings-heading{border-bottom:1px solid var(--v-line);justify-content:space-between;align-items:center;padding:22px 22px 16px;display:flex}.vitrine-settings-heading .vitrine-eyebrow{margin-bottom:8px;font-size:10px}.vitrine-settings-heading h2{font-family:var(--v-sans);letter-spacing:-.04em;font-size:30px}.vitrine-settings button{min-height:44px;color:var(--v-ink);cursor:pointer}.vitrine-settings-close{background:0 0;border:0;border-radius:6px;place-items:center;width:44px;padding:0;display:grid}.vitrine-settings-body{padding:18px 22px}.vitrine-setting-select{gap:8px;margin-bottom:14px;display:grid}.vitrine-setting-select select{border:1px solid var(--v-field-line);background:var(--v-bg);width:100%;min-height:44px;color:var(--v-ink);font:inherit;border-radius:6px;padding:8px 10px}.vitrine-settings-origin,.vitrine-settings-note{color:var(--v-dim);margin:12px 0 18px;font-size:11px}.vitrine-settings-origin a{width:fit-content;color:var(--v-amber);margin-top:6px;padding-block:6px;display:block}.vitrine-settings-presets{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-bottom:18px;display:grid}.vitrine-settings-presets button,.vitrine-settings-actions button{border:1px solid var(--v-line);font:inherit;background:0 0;border-radius:6px;justify-content:center;align-items:center;gap:8px;padding:8px;display:inline-flex}.vitrine-settings button:hover{background:var(--neutral-wash)}.vitrine-settings-fold{border-top:1px solid var(--v-line)}.vitrine-settings-fold>summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:52px;list-style:none;display:flex}.vitrine-settings-fold summary::-webkit-details-marker{display:none}.vitrine-settings-fold summary span{color:var(--v-amber);font-size:18px}.vitrine-settings-fold[open] summary span{transform:rotate(45deg)}.vitrine-setting-range{margin-block:4px 12px}.vitrine-setting-range label{justify-content:space-between;gap:8px;display:flex}.vitrine-setting-range output{color:var(--v-dim);font-variant-numeric:tabular-nums}.vitrine-setting-range output i{color:var(--v-amber);font-style:normal}.vitrine-setting-range input{width:100%;min-height:32px;accent-color:var(--v-amber);cursor:pointer;margin:0}.vitrine-setting-check{min-height:44px;accent-color:var(--v-amber);cursor:pointer;align-items:center;gap:10px;display:flex}.vitrine-settings-deployment{margin-bottom:12px}.vitrine-settings-actions{gap:8px;margin-top:18px;display:grid}.vitrine-settings-footer{border-top:1px solid var(--v-line);background:var(--v-bg);gap:10px;padding:16px 22px;display:grid;position:sticky;bottom:0}.vitrine-settings-footer small{color:var(--v-dim);font-size:10px}.vitrine-motion-toggle{border:1px solid var(--v-line);width:100%;min-height:44px;font:inherit;text-align:left;background:0 0;border-radius:6px;align-items:center;gap:10px;padding:10px;display:flex}.vitrine-motion-toggle i{background:var(--v-amber);border-radius:50%;flex-shrink:0;width:8px;height:8px}.vitrine-motion-toggle[aria-pressed=true] i{background:var(--v-ink);border-radius:1px}.vitrine-settings :disabled{opacity:.45;cursor:default}@media (max-width:700px){.vitrine-settings-trigger{gap:6px;padding-inline:8px;font-size:10px}.vitrine-settings-trigger i{display:none}.vitrine-settings{max-height:calc(100dvh - 88px);top:72px}.vitrine-setting-range input{min-height:44px}}@media (max-width:480px){.vitrine-nav{gap:8px}.vitrine-nav nav{gap:6px}.vitrine-brand .mark-root{gap:7px}.vitrine-brand .mark-word{width:62px;height:20px}.vitrine-nav nav a.vitrine-key{gap:6px;padding-inline:8px}.vitrine-nav .theme-toggle{width:44px;min-width:44px;height:44px;padding:0}.vitrine-nav .theme-toggle .MuiButton-startIcon{margin:0}.vitrine-nav .theme-toggle-label{display:none}.vitrine-settings-trigger{width:44px;padding:0}.vitrine-settings-trigger span{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}.vitrine-nav .vitrine-motion-toggle{background:rgba(var(--v-rgb), .72);width:auto;font:11px var(--v-mono);letter-spacing:.14em;text-transform:uppercase;gap:8px;padding:0 10px}.vitrine-nav .vitrine-motion-toggle i{width:6px;height:6px}.vitrine-error{align-content:center;min-height:100svh;display:grid}.vitrine-actions{flex-wrap:wrap;align-items:center;gap:16px 28px;margin-top:24px;display:flex}.vitrine-button{border:1px solid var(--v-line);min-height:44px;color:var(--v-ink);font:12px var(--v-mono);letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background:0 0;border-radius:6px;padding:0 18px}.vitrine-button:hover{background:var(--neutral-wash)}.vitrine-porte{min-height:100svh;padding:96px var(--v-gutter) 32px;place-items:center end;display:grid;position:relative}.vitrine-porte>.vitrine-field{z-index:0}.vitrine-porte-panel{z-index:1;border:1px solid var(--v-line);border-radius:var(--radius-md);background:rgba(var(--v-rgb), .96);width:min(100%,400px);box-shadow:0 24px 80px var(--frame-shadow);gap:20px;margin:0;padding:32px 28px 28px;display:grid;position:relative}.vitrine-porte-panel h1{font-size:clamp(28px,3.2vw,34px)}.vitrine-porte-resume,.vitrine-porte-notes p{color:var(--v-dim);margin:0;font-size:13px;line-height:1.55}.vitrine-porte-resume{margin-top:-8px}.vitrine-porte-notes{gap:6px;margin-top:4px;display:grid}.vitrine-porte-alert{border:1px solid var(--v-alert);color:var(--v-alert);border-radius:6px;margin:0;padding:12px 14px;font-size:14px;line-height:1.5}.vitrine-porte-alert small{color:var(--v-dim);font:11px var(--v-mono);margin-top:4px;display:block}.vitrine-porte-field{gap:8px;display:grid}.vitrine-porte-field label{color:var(--v-dim);font:13px var(--v-mono);letter-spacing:.06em}.vitrine-porte-field input{border:1px solid var(--v-field-line);background:var(--v-bg);width:100%;min-height:48px;color:var(--v-ink);font:16px var(--v-sans);border-radius:6px;padding:0 14px}.vitrine-porte-field input:hover{border-color:var(--v-dim)}.vitrine-porte-secret{position:relative}.vitrine-porte-secret input{padding-right:56px}.vitrine-porte-secret button{width:44px;height:44px;color:var(--v-dim);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;transition:color .18s;display:grid;position:absolute;top:50%;right:4px;transform:translateY(-50%)}.vitrine-porte-secret button:hover{color:var(--v-ink)}.vitrine-porte-key{border:1px solid var(--v-amber);background:var(--v-amber);min-height:48px;color:var(--v-bg);font:600 12px var(--v-mono);letter-spacing:.16em;text-transform:uppercase;cursor:pointer;border-radius:6px;margin-top:4px;padding:0 18px;transition:background-color .18s,border-color .18s,color .18s}.vitrine-porte-key:hover:not(:disabled){border-color:var(--v-ink);background:var(--v-ink)}.vitrine-porte-key:disabled{opacity:.6;cursor:default}@media (max-width:720px){.vitrine-porte{place-items:end stretch;padding:80px 0 0}.vitrine-porte-panel{width:100%;padding:28px var(--v-gutter) calc(24px + env(safe-area-inset-bottom));box-shadow:none;border-width:1px 0 0;border-radius:16px 16px 0 0}}.vitrine[data-porte] .mark-eye{width:32px;height:32px}.vitrine-loading{z-index:4;background:var(--v-bg);pointer-events:none;place-items:center;display:grid;position:fixed;inset:100px 0 0}.vitrine-nav:after{background:repeating-linear-gradient(to right, var(--v-line) 0 5px, transparent 5px 9px)}@media (prefers-reduced-motion:reduce){.vitrine-rail-eye{transition:none}}.vitrine-stage-canvas[data-loading=true],.vitrine-stage-canvas[data-loading=true]~.vitrine-main .vitrine-surface pre{visibility:hidden}.vitrine-solar{outline-offset:-12px;cursor:crosshair;-webkit-tap-highlight-color:transparent;place-items:center;width:100%;height:100svh;padding-top:94px;display:grid}.vitrine-solar pre{font:600 clamp(5px, 1vw, 11px) / 1.25 var(--v-mono);color:var(--v-ink);margin:0}.vitrine-solar-navigation{min-width:0;font:11px var(--v-mono);order:1;align-items:center;gap:12px;display:flex}.vitrine[data-solar] .vitrine-nav>nav{order:2}.vitrine-solar-navigation select,.vitrine-solar-navigation button{min-height:44px;color:var(--v-ink);border:0;border-bottom:1px solid var(--v-line);cursor:pointer;font:inherit;background:0 0;padding:8px}.vitrine-solar-navigation option{background:var(--v-bg)}.vitrine-solar-navigation button[aria-pressed=true]{color:var(--v-amber)}.vitrine-solar-about{color:var(--v-dim);font:13px/1.65 var(--v-mono)}.vitrine-solar-about p{margin:0 0 18px}.vitrine-solar-about summary{cursor:pointer;color:var(--v-ink);padding-block:12px}.vitrine-solar-about a{text-decoration:underline}@media (max-width:800px){.vitrine[data-solar] .vitrine-nav{flex-wrap:wrap;gap:0 12px}.vitrine[data-solar] .vitrine-nav>nav{order:1}.vitrine-solar-navigation{flex-basis:100%;order:2;gap:8px}.vitrine-solar-navigation select{flex:1;min-width:0}.vitrine-solar-navigation button{padding-inline:4px;font-size:10px}.vitrine-solar{padding-top:130px}}.vitrine-solar-fallback{width:100%;height:100%;position:relative}.vitrine-solar-fallback pre{font-size:clamp(3px,.6vw,8px);position:absolute;transform:translate(-50%,-50%)}:root:not(.dark) .vitrine-solar-still{filter:brightness(.5)saturate(1.4)}.vitrine-solar-passages{color:var(--v-ink);background:var(--v-bg);border:1px solid var(--v-line);margin:0;padding:8px;position:fixed;inset:90px 24px auto auto}.vitrine-solar-passages:popover-open{display:grid}.vitrine-solar-navigation button:disabled{opacity:.4;cursor:default}@media (max-width:800px){.vitrine-solar-passages{top:130px;right:16px}.vitrine-solar-navigation{gap:4px}.vitrine-solar-navigation button[aria-label=Vue\ d’ensemble] span{display:none}.vitrine-solar-navigation button[aria-label=Vue\ d’ensemble]{min-width:44px;font-size:18px}}.vitrine-solar[data-orbitable]{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}.vitrine-solar[data-orbitable]:active{cursor:grabbing}.vitrine-solar-navigation button[aria-label="Recentrer la caméra"]{place-items:center;min-width:44px;display:grid}@media (max-width:800px){.vitrine-solar-navigation select[aria-label="Vitesse du temps"]{flex:0 0 48px;padding-inline:0;font-size:10px}}.vitrine-solar-mobile-icon{display:none}@media (max-width:800px){.vitrine-solar-navigation{gap:2px}.vitrine-solar-navigation button{flex-shrink:0;place-items:center;min-width:44px;display:grid}.vitrine-solar-navigation .vitrine-solar-label{display:none}.vitrine-solar-mobile-icon{display:block}}
