.magnetic-action[data-v-24964762]{translate:var(--magnet-x,0) var(--magnet-y,0);align-items:center;gap:var(--space-2xs);border-radius:var(--radius-s);font-size:var(--text-small);text-align:center;cursor:pointer;transition:background-color var(--duration-base) var(--ease-out), border-color var(--duration-base) var(--ease-out), color var(--duration-base) var(--ease-out);border:1px solid #0000;font-weight:500;line-height:1;display:inline-flex}.is-primary[data-v-24964762],.is-ghost[data-v-24964762]{padding:var(--space-xs) var(--space-m)}.is-primary[data-v-24964762]{background-color:var(--color-accent);color:var(--color-bg);font-weight:600}.is-primary[data-v-24964762]:hover{background-color:color-mix(in srgb, var(--color-accent) 85%, white)}.is-ghost[data-v-24964762]{border-color:var(--color-border-strong);background-color:var(--color-surface-raised);color:var(--color-text)}.is-ghost[data-v-24964762]:hover{border-color:var(--color-accent-border);background-color:var(--color-accent-soft)}.is-quiet[data-v-24964762]{padding-block:var(--space-3xs);color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-label)}.is-quiet[data-v-24964762]:hover{color:var(--color-accent)}.locale-toggle[data-v-8dc75989]{padding:var(--space-2xs) var(--space-s);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);color:var(--color-text-subtle)}.app-nav[data-v-5f336f4e]{z-index:var(--z-nav);border-block-end:1px solid var(--color-border);position:fixed;inset-block-start:0;inset-inline:0}.nav-inner[data-v-5f336f4e]{justify-content:space-between;align-items:center;gap:var(--space-m);height:var(--nav-height);display:flex}.brand[data-v-5f336f4e]{font-family:var(--font-mono);font-size:var(--text-body);letter-spacing:-.02em;transition:color var(--duration-base) var(--ease-out);font-weight:500}.brand[data-v-5f336f4e]:hover,.brand-suffix[data-v-5f336f4e]{color:var(--color-accent)}.nav-list[data-v-5f336f4e]{gap:var(--space-l);display:flex}.nav-link[data-v-5f336f4e]{--nav-link-color:var(--color-text-muted);--nav-link-hover:0;color:color-mix(in srgb, var(--color-accent) calc(var(--nav-link-hover) * 100%), var(--nav-link-color));font-size:var(--text-small);transition:--nav-link-hover var(--duration-base) var(--ease-out)}.nav-link[data-v-5f336f4e]:hover{--nav-link-hover:1}.nav-actions[data-v-5f336f4e]{align-items:center;gap:var(--space-2xs);display:flex}.palette-badge[data-v-5f336f4e]{padding:var(--space-2xs) var(--space-s);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);color:var(--color-text-subtle)}.hint-compact[data-v-5f336f4e]{display:none}@media (width<60rem){.nav-list[data-v-5f336f4e]{gap:var(--space-m)}}@media (width<48rem){.nav-list[data-v-5f336f4e],.hint-full[data-v-5f336f4e]{display:none}.hint-compact[data-v-5f336f4e]{display:inline}}.backdrop-glow[data-v-daf070f0]{z-index:var(--z-backdrop);pointer-events:none;position:fixed;inset:0;overflow:hidden}.glow[data-v-daf070f0]{width:var(--size-glow);aspect-ratio:1;filter:blur(var(--blur-glow));will-change:transform;border-radius:50%;position:absolute}.glow-accent[data-v-daf070f0]{background-color:var(--color-accent);opacity:var(--opacity-glow-strong);inset-block-start:-20%;inset-inline-end:-12%}.glow-warm[data-v-daf070f0]{width:calc(var(--size-glow) * .9);background-color:var(--color-warm);opacity:var(--opacity-glow-soft);inset-block-end:-22%;inset-inline-start:-16%}.glow-cool[data-v-daf070f0]{width:calc(var(--size-glow) * 1.1);background-color:var(--color-cool);opacity:var(--opacity-glow);inset-block-start:28%;inset-inline-end:14%}.palette-overlay[data-v-dba543d2]{z-index:var(--z-overlay);padding:var(--space-xl) var(--layout-gutter);background-color:var(--color-scrim);justify-content:center;display:flex;position:fixed;inset:0}.palette[data-v-dba543d2]{--palette-row-height:2.5rem;gap:var(--space-xs);width:min(32rem,100%);padding:var(--space-s);border:1px solid var(--color-border-strong);background-color:var(--color-panel);border-radius:var(--radius-l);view-transition-name:command-palette;flex-direction:column;align-self:start;margin-block-start:10vh;display:flex}.palette-input[data-v-dba543d2]{width:100%;padding:var(--space-xs) var(--space-s);border:1px solid var(--color-border);border-radius:var(--radius-s);background-color:var(--color-surface);color:var(--color-text);font:inherit;font-size:var(--text-small)}.palette-input[data-v-dba543d2]::placeholder{color:var(--color-text-faint)}.palette-results[data-v-dba543d2]{height:calc(var(--palette-rows,0) * var(--palette-row-height));position:relative;overflow:hidden}.palette-results[data-count="0"][data-v-dba543d2]{--palette-rows:0}.palette-results[data-count="1"][data-v-dba543d2]{--palette-rows:1}.palette-results[data-count="2"][data-v-dba543d2]{--palette-rows:2}.palette-results[data-count="3"][data-v-dba543d2]{--palette-rows:3}.palette-results[data-count="4"][data-v-dba543d2]{--palette-rows:4}.palette-results[data-count="5"][data-v-dba543d2]{--palette-rows:5}.palette-results[data-highlight="0"][data-v-dba543d2]{--palette-highlight-row:0}.palette-results[data-highlight="1"][data-v-dba543d2]{--palette-highlight-row:1}.palette-results[data-highlight="2"][data-v-dba543d2]{--palette-highlight-row:2}.palette-results[data-highlight="3"][data-v-dba543d2]{--palette-highlight-row:3}.palette-results[data-highlight="4"][data-v-dba543d2]{--palette-highlight-row:4}.palette-highlight[data-v-dba543d2]{height:var(--palette-row-height);border-radius:var(--radius-s);background-color:var(--color-accent-soft);translate:0 calc(var(--palette-highlight-row,0) * var(--palette-row-height));position:absolute;inset-block-start:0;inset-inline:0}.palette-list[data-v-dba543d2]{flex-direction:column;display:flex;position:relative}.palette-item[data-v-dba543d2]{justify-content:space-between;align-items:center;gap:var(--space-s);width:100%;height:var(--palette-row-height);padding-inline:var(--space-s);border-radius:var(--radius-s);color:var(--color-text-muted);font-size:var(--text-small);text-align:start;display:flex}.palette-item[data-v-dba543d2]:focus-visible{outline-offset:-2px}.is-highlighted[data-v-dba543d2]{color:var(--color-text)}.palette-item-hash[data-v-dba543d2]{color:var(--color-text-faint);font-family:var(--font-mono);font-size:var(--text-eyebrow)}.palette-empty[data-v-dba543d2]{padding:var(--space-2xs) var(--space-s);color:var(--color-text-subtle);font-size:var(--text-small)}.palette-hint[data-v-dba543d2]{padding-inline:var(--space-s)}@media (prefers-reduced-motion:no-preference){.palette-results[data-v-dba543d2]{transition:height var(--duration-base) var(--ease-out)}.palette-highlight[data-v-dba543d2]{transition:translate var(--duration-fast) var(--ease-out)}.palette-row-move[data-v-dba543d2],.palette-row-enter-active[data-v-dba543d2],.palette-row-leave-active[data-v-dba543d2]{transition:opacity var(--duration-base) var(--ease-out), transform var(--duration-base) var(--ease-out)}.palette-row-enter-from[data-v-dba543d2],.palette-row-leave-to[data-v-dba543d2]{opacity:0;transform:translateY(-.25rem)}.palette-row-leave-active[data-v-dba543d2]{position:absolute;inset-inline:0}}.section[data-v-bd61e826]{border-block-end:1px solid var(--color-border);grid-template-rows:1fr auto;min-height:100dvh;display:grid}.section-body[data-v-bd61e826]{justify-content:center;gap:var(--space-m);padding-block:calc(var(--nav-height) + var(--space-l)) var(--space-l);flex-direction:column;display:flex}.align-center[data-v-bd61e826]{text-align:center;align-items:center}.section-band[data-v-bd61e826]{border-block-start:1px solid var(--color-border)}.section-band-inner[data-v-bd61e826]{align-items:center;gap:var(--space-m);min-height:var(--nav-height);padding-block:var(--space-s);display:flex}.contact-title[data-v-0ff4a82e]{max-width:var(--measure-title);font-family:var(--font-display);font-size:var(--text-title);font-weight:700;line-height:var(--leading-snug);letter-spacing:-.02em;text-wrap:balance}.contact-actions[data-v-0ff4a82e]{justify-content:center;gap:var(--space-xs);flex-wrap:wrap;margin-block-start:var(--space-s);display:flex}.contact-footer[data-v-0ff4a82e]{text-align:center;text-transform:none;width:100%}.experience-grid[data-v-e40c71d9]{gap:var(--space-m);grid-template-columns:1fr 1.25fr;margin-block-start:var(--space-s);display:grid}.role-header[data-v-e40c71d9]{gap:var(--space-3xs);flex-direction:column;display:flex}.role-title[data-v-e40c71d9]{font-family:var(--font-display);font-size:var(--text-lead);font-weight:700}.role-meta[data-v-e40c71d9]{text-transform:none}.missions[data-v-e40c71d9]{gap:var(--space-xs);flex-direction:column;display:flex}.mission[data-v-e40c71d9]{gap:var(--space-2xs);color:var(--color-text-muted);font-size:var(--text-small);grid-template-columns:auto 1fr;align-items:baseline;display:grid}.mission[data-v-e40c71d9]:before{content:"";background-color:var(--color-accent);border-radius:50%;width:.35rem;height:.35rem;translate:0 -.15rem}.highlights[data-v-e40c71d9]{gap:var(--space-m);flex-direction:column;margin:0;padding-block-start:var(--space-2xs);display:flex}.highlight-value[data-v-e40c71d9]{font-family:var(--font-display);font-size:var(--text-stat);font-weight:700;line-height:var(--leading-snug)}.highlight-description[data-v-e40c71d9]{color:var(--color-text-subtle);font-size:var(--text-small);margin:0}.storybook-link[data-v-e40c71d9]{align-self:start;margin-block-start:auto}.previous-role[data-v-e40c71d9]{color:var(--color-text-subtle);font-size:var(--text-small)}@media (width<60rem){.experience-grid[data-v-e40c71d9]{grid-template-columns:1fr}}.tips[data-v-de8eddc2]{gap:var(--space-m);grid-template-columns:repeat(2,1fr);margin-block-start:var(--space-s);display:grid}.tip[data-v-de8eddc2]{gap:var(--space-2xs)}.tip-tag[data-v-de8eddc2]{padding:var(--space-3xs) var(--space-2xs);border:1px solid var(--color-accent-border);border-radius:var(--radius-s);color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-eyebrow);letter-spacing:var(--tracking-mono);text-transform:uppercase;align-self:start}.tip-title[data-v-de8eddc2]{font-family:var(--font-display);font-size:var(--text-lead);font-weight:700}.tip-hook[data-v-de8eddc2]{color:var(--color-text-subtle);font-size:var(--text-small)}.tip-link[data-v-de8eddc2]{margin-block-start:auto}@media (width<60rem){.tips[data-v-de8eddc2]{grid-template-columns:1fr}}.hero-title[data-v-85d9f653]{max-width:var(--measure-hero);font-family:var(--font-display);font-size:var(--text-hero);font-weight:700;line-height:var(--leading-tight);letter-spacing:-.03em;text-wrap:balance;margin-block-start:var(--space-xs)}.hero-lead[data-v-85d9f653]{max-width:52ch;font-size:var(--text-lead)}.hero-actions[data-v-85d9f653]{gap:var(--space-xs);flex-wrap:wrap;margin-block-start:var(--space-s);display:flex}.metrics[data-v-85d9f653]{gap:var(--space-m);grid-template-columns:repeat(auto-fit,minmax(11rem,1fr));width:100%;display:grid}.metric[data-v-85d9f653]{gap:var(--space-3xs);border-inline-start:1px solid var(--color-border);flex-direction:column;padding-inline-start:var(--space-m);display:flex}.metric[data-v-85d9f653]:first-child{border-inline-start:none;padding-inline-start:0}.metric-value[data-v-85d9f653]{font-family:var(--font-display);font-size:var(--text-stat);font-weight:700;line-height:var(--leading-snug)}.metric-label[data-v-85d9f653]{line-height:var(--leading-snug)}@media (width<48rem){.metrics[data-v-85d9f653]{gap:var(--space-s);grid-template-columns:repeat(2,1fr)}.metric[data-v-85d9f653]{border-inline-start:none;padding-inline-start:0}}.badge[data-v-1627499e]{padding:var(--space-3xs) var(--space-2xs);border:1px solid var(--color-border-strong);border-radius:var(--radius-s);font-family:var(--font-mono);font-size:var(--text-eyebrow);letter-spacing:var(--tracking-mono);text-transform:uppercase;align-self:start}.is-cool[data-v-1627499e]{border-color:var(--color-cool-border);background-color:var(--color-cool-soft);color:var(--color-cool)}.is-warm[data-v-1627499e]{border-color:var(--color-warm-border);background-color:var(--color-warm-soft);color:var(--color-warm)}.explorations[data-v-1627499e]{gap:var(--space-m);grid-template-columns:repeat(2,1fr);margin-block-start:var(--space-s);display:grid}.exploration[data-v-1627499e]{gap:var(--space-2xs)}.exploration-title[data-v-1627499e]{font-family:var(--font-display);font-size:var(--text-lead);font-weight:700}.exploration-description[data-v-1627499e]{color:var(--color-text-muted);font-size:var(--text-small)}.exploration-fact[data-v-1627499e]{text-transform:none}.exploration-next[data-v-1627499e]{border-block-start:1px solid var(--color-border);color:var(--color-text-subtle);font-size:var(--text-small);margin-block-start:auto;padding-block-start:var(--space-xs)}@media (width<60rem){.explorations[data-v-1627499e]{grid-template-columns:1fr}}.page[data-v-c266961c]{z-index:var(--z-content);position:relative}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/ibm-plex-sans-var-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/ibm-plex-sans-var-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/space-grotesk-700-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/space-grotesk-700-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/ibm-plex-mono-400-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500-latin.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/ibm-plex-mono-500-latin-ext.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--color-bg:#0b0f0e;--color-accent:#42b883;--color-warm:#ff9466;--color-cool:#6c8ef5;--color-text:#f5f7f6;--color-text-muted:#f5f7f6bf;--color-text-subtle:#f5f7f699;--color-text-faint:#f5f7f673;--color-surface:#f5f7f608;--color-surface-raised:#f5f7f60f;--color-border:#f5f7f617;--color-border-strong:#f5f7f629;--color-glass:#0b0f0e73;--color-panel:#121816fa;--color-accent-soft:#42b8831f;--color-accent-border:#42b88359;--color-warm-soft:#ff94661f;--color-warm-border:#ff946659;--color-cool-soft:#6c8ef51f;--color-cool-border:#6c8ef559;--color-scrim:#040606b8;--font-display:"Space Grotesk", ui-sans-serif, system-ui, sans-serif;--font-body:"IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--text-eyebrow:.75rem;--text-label:.8125rem;--text-small:.875rem;--text-body:1rem;--text-lead:clamp(1rem, .4vw + .9rem, 1.125rem);--text-stat:clamp(1.5rem, 1.4vw + 1.1rem, 2rem);--text-title:clamp(1.625rem, 1.8vw + 1.1rem, 2.375rem);--text-hero:clamp(2.25rem, 4vw + .9rem, 3.6rem);--leading-tight:1.08;--leading-snug:1.3;--leading-normal:1.6;--tracking-mono:.12em;--space-3xs:.25rem;--space-2xs:.5rem;--space-xs:.75rem;--space-s:1rem;--space-m:1.5rem;--space-l:2rem;--space-xl:3rem;--space-2xl:4rem;--space-3xl:6rem;--radius-s:.5rem;--radius-m:.75rem;--radius-l:1rem;--radius-xl:1.5rem;--radius-pill:999rem;--layout-max-width:75rem;--measure-hero:40rem;--measure-title:46rem;--layout-gutter:clamp(1.25rem, 4vw, 3rem);--nav-height:5rem;--blur-glass:20px;--blur-glow:120px;--size-glow:42rem;--opacity-glow-soft:.3;--opacity-glow:.4;--opacity-glow-strong:.5;--duration-fast:.14s;--duration-base:.24s;--duration-slow:.42s;--ease-out:cubic-bezier(.22, 1, .36, 1);--z-backdrop:0;--z-content:1;--z-nav:2;--z-overlay:3}*,:before,:after{box-sizing:border-box}body,h1,h2,h3,p,ul,figure{margin:0}ul{padding:0;list-style:none}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background-color:var(--color-bg);min-height:100dvh;color:var(--color-text);font-family:var(--font-body);font-size:var(--text-body);font-weight:400;line-height:var(--leading-normal);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none}img,svg{max-width:100%;display:block}::selection{background-color:var(--color-accent);color:var(--color-bg)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.layout-container{width:100%;max-width:var(--layout-max-width);padding-inline:var(--layout-gutter);margin-inline:auto}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{align-items:center;gap:var(--space-2xs);color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--text-eyebrow);letter-spacing:var(--tracking-mono);text-transform:uppercase;display:flex}.eyebrow:before{content:"";background-color:var(--color-accent);border-radius:50%;width:.4rem;height:.4rem}.section-title{max-width:var(--measure-title);font-family:var(--font-display);font-size:var(--text-title);font-weight:700;line-height:var(--leading-snug);letter-spacing:-.02em;text-wrap:balance}.section-lead{max-width:62ch;color:var(--color-text-muted);font-size:var(--text-lead);text-wrap:pretty}.mono-label{color:var(--color-text-subtle);font-family:var(--font-mono);font-size:var(--text-eyebrow);letter-spacing:var(--tracking-mono);text-transform:uppercase}.glass{background-color:var(--color-glass);-webkit-backdrop-filter:blur(var(--blur-glass));backdrop-filter:blur(var(--blur-glass))}.card{gap:var(--space-s);padding:var(--space-l);border:1px solid var(--color-border);border-radius:var(--radius-xl);background-color:var(--color-surface);flex-direction:column;display:flex}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}@keyframes reveal-rise{0%{opacity:0;transform:translateY(1.5rem)}to{opacity:1;transform:none}}@property --nav-link-color{syntax:"<color>";inherits:false;initial-value:#f5f7f6bf}@property --nav-link-hover{syntax:"<number>";inherits:false;initial-value:0}@keyframes nav-link-active{0%,to{--nav-link-color:var(--color-text-muted)}38%,62%{--nav-link-color:var(--color-accent)}}@keyframes glow-drift-accent{0%{transform:translateY(-8vh)scale(1)}to{transform:translate(-14vw,22vh)scale(1.25)}}@keyframes glow-drift-warm{0%{transform:translateY(10vh)scale(1.1)}to{transform:translate(18vw,-18vh)scale(.85)}}@keyframes glow-drift-cool{0%{transform:translate(6vw,18vh)scale(.9)}to{transform:translate(-10vw,-14vh)scale(1.15)}}:root{timeline-scope:--vt-hero, --vt-experience, --vt-expertise, --vt-projets, --vt-contact}#hero{view-timeline-name:--vt-hero;view-timeline-axis:block}#experience{view-timeline-name:--vt-experience;view-timeline-axis:block}#expertise{view-timeline-name:--vt-expertise;view-timeline-axis:block}#projets{view-timeline-name:--vt-projets;view-timeline-axis:block}#contact{view-timeline-name:--vt-contact;view-timeline-axis:block}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.reveal{animation:linear both reveal-rise;animation-timeline:view();animation-range:entry 5% entry 85%}.reveal-late{animation-range:entry 20%}.glow-accent{animation:linear both glow-drift-accent;animation-timeline:scroll(root)}.glow-warm{animation:linear both glow-drift-warm;animation-timeline:scroll(root)}.glow-cool{animation:linear both glow-drift-cool;animation-timeline:scroll(root)}}.nav-link[data-section=hero]{animation:linear both nav-link-active;animation-timeline:--vt-hero;animation-range:cover}.nav-link[data-section=experience]{animation:linear both nav-link-active;animation-timeline:--vt-experience;animation-range:cover}.nav-link[data-section=expertise]{animation:linear both nav-link-active;animation-timeline:--vt-expertise;animation-range:cover}.nav-link[data-section=projets]{animation:linear both nav-link-active;animation-timeline:--vt-projets;animation-range:cover}.nav-link[data-section=contact]{animation:linear both nav-link-active;animation-timeline:--vt-contact;animation-range:cover}}@supports not (animation-timeline:view()){body:has(#hero:target) .nav-link[data-section=hero]{color:var(--color-accent)}body:has(#experience:target) .nav-link[data-section=experience]{color:var(--color-accent)}body:has(#expertise:target) .nav-link[data-section=expertise]{color:var(--color-accent)}body:has(#projets:target) .nav-link[data-section=projets]{color:var(--color-accent)}body:has(#contact:target) .nav-link[data-section=contact]{color:var(--color-accent)}}@keyframes palette-in{0%{opacity:0;transform:translateY(-.75rem)scale(.97)}to{opacity:1;transform:none}}::view-transition-old(root){animation-duration:var(--duration-slow);animation-timing-function:var(--ease-out)}::view-transition-new(root){animation-duration:var(--duration-slow);animation-timing-function:var(--ease-out)}::view-transition-new(command-palette){animation:palette-in var(--duration-base) var(--ease-out) both}::view-transition-old(command-palette){opacity:0;animation:none}html[data-view-transition=palette]::view-transition-old(root){animation-duration:var(--duration-base)}html[data-view-transition=palette]::view-transition-new(root){animation-duration:var(--duration-base)}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation:none}::view-transition-old(*){animation:none}::view-transition-new(*){animation:none}}
