@font-face{font-family:Raleway Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/raleway-cyrillic-ext-wght-normal.Dc5xu4We.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Raleway Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/raleway-cyrillic-wght-normal.B0Yo_ULV.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Raleway Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/raleway-vietnamese-wght-normal.wikBsL6_.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Raleway Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/raleway-latin-ext-wght-normal.CwtNDoQR.woff2)format("woff2-variations");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:Raleway Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/raleway-latin-wght-normal.CSF1BaNN.woff2)format("woff2-variations");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}:root{--paper:#f8fafb;--ink:#0e1b2e;--muted:#55627a;--line:#d9e0e7;--link:#1b5fae;--water:#2f7fd6;--road:#1f8f6a;--track:#cf4526;--iron:#8a5fd0;--heat-0:#dfe5eb;--heat-1:#bcd7f4;--heat-2:#7fb2ea;--heat-3:#3d86d8;--heat-4:#17509a;--font:"Archivo Variable", system-ui, sans-serif;--step--1:.875rem;--step-0:1.0625rem;--step-1:1.3125rem;--step-2:1.75rem;--step-3:2.5rem;--gutter:clamp(1rem, 4vw, 2.5rem);--measure:38rem}@media (prefers-color-scheme:dark){:root{--paper:#0c1524;--ink:#e9eef4;--muted:#9aa8bc;--line:#223046;--link:#7db7f2;--water:#4590e6;--road:#2fa37a;--track:#e0573a;--iron:#a07be8;--heat-0:#1b2738;--heat-1:#1f3f66;--heat-2:#2c69ac;--heat-3:#4c94e6;--heat-4:#b4d6fb}}*,:before,:after{box-sizing:border-box}html{color-scheme:light dark;-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font);font-size:var(--step-0);margin:0;line-height:1.55}h1,h2,h3{text-wrap:balance;margin:0;font-weight:800;font-stretch:70%;line-height:1}h1{letter-spacing:-.01em;font-size:clamp(2.75rem,9vw,5rem)}h2{font-size:var(--step-3);margin-top:4rem;margin-bottom:1.5rem}h3{font-size:var(--step-2)}p{max-width:var(--measure);margin:0}a{color:var(--link);text-underline-offset:.2em;text-decoration-thickness:.08em}a:hover{text-decoration-thickness:.16em}:focus-visible{outline:3px solid var(--link);outline-offset:3px;border-radius:2px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.site-header,.site-footer,main{max-width:68rem;padding-inline:var(--gutter);margin-inline:auto}.site-header{flex-wrap:wrap;align-items:center;gap:.6rem 1.5rem;padding-block:1.25rem;display:flex}.site-name{color:var(--ink);font-weight:800;font-stretch:70%;font-size:var(--step-1);margin-right:auto;text-decoration:none}.site-header nav ul{gap:1.5rem;margin:0;padding:0;list-style:none;display:flex}.site-header nav a{color:var(--ink);text-decoration:none}.site-header nav a:hover,.site-header nav a[aria-current=page]{text-decoration:underline .16em}.lang-switch{border:1.5px solid var(--ink);color:var(--ink);font-size:var(--step--1);padding:.1rem .5rem;font-weight:600;text-decoration:none}.lang-switch:hover{background:var(--ink);color:var(--paper)}main{padding-block:clamp(1.5rem,5vw,4rem) 5rem}.site-footer{border-top:1px solid var(--line);color:var(--muted);font-size:var(--step--1);flex-wrap:wrap;gap:.5rem 1.75rem;padding-block:1.5rem 2.5rem;display:flex}.hero{grid-template-columns:1fr auto;align-items:center;gap:2rem clamp(1.5rem,6vw,5rem);display:grid}.hero h1{font-size:clamp(3.5rem,13vw,8.5rem);font-stretch:62%;line-height:.86}.intro{font-size:var(--step-1);max-width:30rem;margin-top:1.75rem;line-height:1.4}.button{background:var(--ink);color:var(--paper);padding:.35rem .85rem;font-weight:600;text-decoration:none;display:inline-block}.button:hover{background:var(--link)}.portrait-frame{aspect-ratio:1;border-radius:50%;width:clamp(9rem,24vw,17rem);overflow:hidden}.portrait{width:100%;height:100%;display:block;transform:scale(1.045)}@media (width<=40rem){.hero{grid-template-columns:1fr}.portrait-frame{order:-1;width:7rem}}.splitbar{margin:clamp(3rem,8vw,6rem) 0 0}.splitbar figcaption{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:0 1.5rem;margin-bottom:.6rem;display:flex}.splitbar-race{font-weight:600}.splitbar-total{font-weight:800;font-stretch:62%;font-size:var(--step-3);font-variant-numeric:tabular-nums;line-height:1}.splitbar-track{gap:3px;height:clamp(2rem,5vw,3.25rem);display:flex}.seg{transform-origin:0;flex-basis:0}.seg-natation{background:var(--water)}.seg-velo{background:var(--road)}.seg-course{background:var(--track)}.splitbar-legend{font-size:var(--step--1);flex-wrap:wrap;gap:.25rem 2rem;margin:.75rem 0 0;padding:0;list-style:none;display:flex}.splitbar-legend li{align-items:baseline;gap:.45rem;display:flex}.swatch{flex:none;width:.7rem;height:.7rem}.leg-label{color:var(--muted)}.leg-time{font-variant-numeric:tabular-nums;font-weight:600}@media (prefers-reduced-motion:no-preference){.splitbar-track .seg{animation:.7s cubic-bezier(.2,.7,.2,1) backwards grow}.splitbar-track .seg-velo{animation-delay:.15s}.splitbar-track .seg-course{animation-delay:.45s}}@keyframes grow{0%{transform:scaleX(0)}}.card{border:1px solid var(--line);padding:1.25rem}.tags{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.tag{border:1px solid var(--line);font-size:var(--step--1);padding:.15rem .6rem}.table-wrap{overflow-x:auto}@media (width<=26rem){.site-header{column-gap:1rem}.site-header nav ul{gap:1rem}}.timeline{grid-template-columns:var(--tl-columns);grid-template-rows:auto auto auto;grid-auto-flow:column;align-items:center;margin:clamp(3.5rem,9vw,6.5rem) 0 0;padding:0;list-style:none;display:grid}.tl-step,.tl-dot{display:contents}.tl-role,.tl-org,.tl-top,.tl-year{text-align:center;padding-inline:.5rem}.tl-role{text-wrap:balance;align-self:end;padding-bottom:.9rem;font-weight:600;line-height:1.2}.tl-org{color:var(--muted);text-wrap:balance;align-self:start;padding-top:.9rem;font-style:italic;line-height:1.25}.tl-line{background:var(--ink);transform-origin:0;height:2px}.tl-gap .tl-line{background:repeating-linear-gradient(to right, var(--muted) 0 6px, transparent 6px 12px)}.tl-mark{background:var(--water);border-radius:50%;justify-self:center;width:1rem;height:1rem;margin-inline:.6rem}.tl-year{font-weight:800;font-stretch:70%;font-size:var(--step-1);font-variant-numeric:tabular-nums;align-self:start;padding-top:.6rem}@media (prefers-reduced-motion:no-preference){.tl-line{animation:.45s ease-out backwards grow;animation-delay:calc(var(--i) * .28s)}.tl-mark{animation:.3s cubic-bezier(.3,1.6,.5,1) backwards pop;animation-delay:calc(var(--i) * .28s - 50ms)}.tl-role,.tl-org,.tl-year{animation:.4s ease-out backwards appear;animation-delay:calc(var(--i) * .28s + .1s)}}@keyframes pop{0%{transform:scale(0)}}@keyframes appear{0%{opacity:0}}@media (width<=48rem){.timeline{border-left:2px solid var(--ink);margin-left:.5rem;display:block}.tl-step,.tl-dot{padding-left:1.5rem;display:block;position:relative}.tl-step{padding-block:.4rem 1.1rem}.tl-gap{height:1.5rem;padding:0}.tl-role,.tl-org,.tl-year{text-align:left;padding:0;display:block}.tl-line,.tl-top{display:none}.tl-mark{margin:0;position:absolute;top:.45rem;left:calc(-.5rem - 1px)}}.section-intro{color:var(--muted);margin-top:-.75rem;margin-bottom:1.5rem}.featured-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,19rem),1fr));gap:2.5rem clamp(1.5rem,4vw,3rem);display:grid}.featured{border-top:2px solid var(--ink);padding-top:1rem}.featured-meta,.featured-facts{color:var(--muted);font-size:var(--step--1);flex-wrap:wrap;gap:0 1rem;display:flex}.proud+.proud{margin-top:3rem}.proud>h3{color:var(--muted);font-size:var(--step-1);margin-bottom:1.25rem;font-weight:600;font-stretch:100%}.featured h4{font-size:var(--step-1);margin:.35rem 0 0;font-weight:600;font-stretch:100%;line-height:1.2}.featured-time{font-variant-numeric:tabular-nums;margin-top:.5rem;font-size:clamp(3rem,7vw,4rem);font-weight:800;font-stretch:62%;line-height:1}.featured-facts{margin-top:.5rem}.splitbar-compact{margin-top:1rem}.splitbar-compact .splitbar-track{height:.9rem}.splitbar-compact .splitbar-legend{gap:.15rem 1rem}.splits{font-size:var(--step--1);flex-wrap:wrap;gap:.25rem 1.25rem;margin:.75rem 0 0;display:flex}.splits div{gap:.4rem;display:flex}.splits dt{color:var(--muted)}.splits dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600}.progress-grid{grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:2.5rem clamp(1.5rem,4vw,3rem);display:grid}.progress{margin:0}.progress figcaption h3{font-size:var(--step-2)}.progress figcaption p{color:var(--muted);font-size:var(--step--1);margin-top:.3rem}.progress svg{width:100%;height:auto;margin-top:.5rem;display:block;overflow:visible}.progress .axis{stroke:var(--line);stroke-width:1px}.progress .tick{fill:var(--muted);font-size:13px}.progress .line{fill:none;stroke:var(--ink);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:1}.progress .point{fill:var(--paper);stroke:var(--ink);stroke-width:2px}.progress .point.best{fill:var(--water);stroke:var(--paper)}.progress .value{fill:var(--muted);font-variant-numeric:tabular-nums;font-size:14px}.progress .value.best{fill:var(--ink);font-size:20px;font-weight:800;font-stretch:70%}@media (prefers-reduced-motion:no-preference){.progress .line{animation:1.4s ease-in-out backwards draw}.progress .point,.progress .value{animation:.3s ease-out backwards appear;animation-delay:calc(.2s + var(--i,5) * .18s)}}@keyframes draw{0%{stroke-dashoffset:1px}}.year{margin-top:2.5rem}.year>h3{border-bottom:2px solid var(--ink);padding-bottom:.4rem}.courses{table-layout:fixed;border-collapse:collapse;width:100%;font-size:var(--step--1)}.courses th,.courses td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:.7rem 1rem .7rem 0;font-weight:400}.courses thead th{color:var(--muted);padding-block:.5rem}.courses thead th:first-child,.courses thead th:nth-child(3){width:9.5rem}.courses thead th:nth-child(4){width:6.5rem}.courses thead th:nth-child(5){width:8rem}.courses .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.courses th:last-child,.courses td:last-child{padding-right:0}.race-date{white-space:nowrap;color:var(--muted)}.race-name{font-size:var(--step-0);font-weight:600;display:block}.race-place,.race-note,.race-format{color:var(--muted);display:block}.race-time{font-size:var(--step-0);font-weight:600}.courses details{margin-top:.3rem}.courses summary{width:fit-content;color:var(--link);cursor:pointer}@media (width<=40rem){.courses thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.courses{table-layout:auto}.courses tr{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;gap:.1rem 1rem;padding-block:.8rem;display:grid}.courses th,.courses td{border:0;padding:0}.courses tbody th{grid-area:1/1/span 3}.courses .race-date,.courses td{text-align:right;grid-column:2}.courses .race-format{margin-left:.35rem;display:inline}}.legend{color:var(--muted);font-size:var(--step--1);flex-wrap:wrap;gap:.25rem 1.25rem;margin:0;padding:0;list-style:none;display:flex}.legend li{align-items:center;gap:.4rem;display:flex}.legend .dot{flex:none;width:.7rem;height:.7rem}.seg-muscu{background:var(--iron)}.seg-autre{background:var(--muted)}.ring{width:min(100%,9.5rem);margin:.75rem auto 0;position:relative}.ring svg{display:block;transform:rotate(-90deg)}.ring .slice{fill:none;stroke-width:9px}.ring .slice.seg-natation{stroke:var(--water)}.ring .slice.seg-velo{stroke:var(--road)}.ring .slice.seg-course{stroke:var(--track)}.ring .slice.seg-muscu{stroke:var(--iron)}.ring .slice.seg-autre{stroke:var(--muted)}.ring-center{background:var(--paper);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;inset:14%}.ring-hours{font-variant-numeric:tabular-nums;font-size:2.25rem;font-weight:800;font-stretch:62%}.ring-unit{color:var(--muted);margin-top:.2rem;font-size:.75rem}.calendar-year{text-align:center}.calendar-month{text-align:left}.heat-0{fill:var(--heat-0);background:var(--heat-0)}.heat-1{fill:var(--heat-1);background:var(--heat-1)}.heat-2{fill:var(--heat-2);background:var(--heat-2)}.heat-3{fill:var(--heat-3);background:var(--heat-3)}.heat-4{fill:var(--heat-4);background:var(--heat-4)}.calendar{--visible:5;--strip-gap:clamp(1.25rem, 2.5vw, 2rem)}.calendar-nav{justify-content:flex-end;gap:.5rem;margin-bottom:.5rem;display:flex}.calendar-nav button{border:1.5px solid var(--ink);width:2.25rem;height:2.25rem;color:var(--ink);font:inherit;cursor:pointer;background:0 0;font-size:1.25rem;line-height:1}.calendar-nav button:hover{background:var(--ink);color:var(--paper)}.calendar-years{grid-auto-flow:column;grid-auto-columns:calc((100% - (var(--visible) - 1) * var(--strip-gap)) / var(--visible));gap:var(--strip-gap);scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:1rem;display:grid;overflow-x:auto}.calendar-year{scroll-snap-align:start}@media (width<=60rem){.calendar{--visible:3}}@media (width<=36rem){.calendar{--visible:1.4}}.calendar-summary{color:var(--muted);font-size:var(--step--1);margin-top:.2rem}.calendar-months{grid-template-columns:repeat(3,1fr);gap:.75rem .6rem;margin-top:1.25rem;display:grid}.calendar-label{color:var(--muted);margin-bottom:.2rem;font-size:.75rem;display:block}.calendar-month svg{width:100%;height:auto;display:block}.calendar .legend{margin-top:1rem}.calendar .ring-legend{margin-top:2rem}.calendar .heat-legend .dot{border-radius:50%}@media (prefers-reduced-motion:no-preference){.calendar-month svg{animation:.5s ease-out backwards appear;animation-delay:calc(var(--m) * 50ms)}}.page-links{margin-top:1rem}.story{font-size:var(--step-1);margin-top:2.5rem;line-height:1.5}.story p+p{margin-top:1.1em}.story+.page-links{margin-top:1.75rem}[data-realisation] h3{font-size:var(--step-2)}[data-realisation] p{color:var(--muted);margin-top:.6rem}.tag{font-size:var(--step-0)}.plain-list{font-size:var(--step-1);margin:0;padding:0;list-style:none}.plain-list li+li{margin-top:.25rem}:root{--paper:#f7f6f5;--ink:#26262a;--muted:#62626b;--line:#dedcd9;--link:#c43d1e;--warm-a:#e9652b;--warm-b:#e03a2f;--heat-0:#e6e3df;--heat-1:#fbd3bd;--heat-2:#f6a279;--heat-3:#e9652b;--heat-4:#a8280f;--font:"Raleway Variable", system-ui, sans-serif}@media (prefers-color-scheme:dark){:root{--paper:#1b1a1a;--ink:#f1eeeb;--muted:#a9a4a0;--line:#34312f;--link:#ff9a70;--warm-a:#f58a4d;--warm-b:#f4574b;--heat-0:#2b2826;--heat-1:#5a2e1d;--heat-2:#a14a23;--heat-3:#ec7a3c;--heat-4:#ffc7a3}}body{font-variant-numeric:lining-nums;font-feature-settings:"lnum"}h1,h2,h3{font-stretch:100%}h1{letter-spacing:.14em;text-transform:uppercase;font-size:clamp(1.9rem,5.2vw,3rem);font-weight:800;line-height:1.15}h2{letter-spacing:.2em;text-transform:uppercase;background:linear-gradient(90deg, var(--warm-a), var(--warm-b));color:#0000;-webkit-background-clip:text;background-clip:text;width:fit-content;font-size:1.15rem;font-weight:800;line-height:1.3}h3{font-weight:700;line-height:1.2}.site-name{letter-spacing:.16em;text-transform:uppercase;font-size:.95rem;font-weight:800;font-stretch:100%}.button{background:linear-gradient(90deg, var(--warm-a), var(--warm-b));color:#fff;border-radius:999px;padding:.4rem 1.1rem;font-weight:700}.button:hover{background:var(--ink);color:var(--paper)}.lang-switch{border-radius:999px}.hero h1{letter-spacing:.16em;font-size:clamp(2rem,6.4vw,3.9rem);font-stretch:100%;line-height:1.12}.name-first,.name-last{display:block}.name-first{font-weight:800}.name-last{font-weight:300}.portrait{transform:none}.portrait-frame{border-radius:0;overflow:visible}.tl-mark{background:var(--ink)}.tl-year,.splitbar-total,.featured-time,.ring-hours{font-stretch:100%}.tl-year{font-weight:700}.featured{border-top:2px solid #0000;border-image:linear-gradient(90deg, var(--warm-a), var(--warm-b)) 1}.featured-time{letter-spacing:.02em;font-size:clamp(2.5rem,5.6vw,3.4rem);font-weight:800}.ring-hours{font-size:1.9rem;font-weight:800}.year>h3{letter-spacing:.08em;font-weight:800}.calendar-nav button{border-radius:50%}.tag{border-radius:999px;padding:.25rem .9rem}.career-intro{grid-template-columns:minmax(0, var(--measure)) minmax(13rem, 1fr);align-items:start;gap:2.5rem clamp(2rem,7vw,6rem);margin-top:2.5rem;display:grid}.career-intro .story{margin-top:0}.career-intro aside{border-left:2px solid var(--line);justify-items:start;gap:2.25rem;padding-left:clamp(1.25rem,3vw,2.25rem);display:grid}.career-intro aside h2{margin:0 0 .75rem}@media (width<=52rem){.career-intro{grid-template-columns:1fr}.career-intro aside{border-left:0;padding-left:0}}.block-period{color:var(--muted);-webkit-text-fill-color:var(--muted);letter-spacing:.08em;margin-left:1em;font-weight:500}.tag{position:relative}.tag.has-tip{cursor:help;border-color:var(--muted)}.tag-tip{z-index:1;background:var(--ink);width:max-content;max-width:min(16rem,80vw);color:var(--paper);font-size:var(--step--1);text-align:center;visibility:hidden;opacity:0;pointer-events:none;border-radius:.5rem;padding:.4rem .75rem;line-height:1.35;transition:opacity .15s;position:absolute;bottom:calc(100% + .5rem);left:50%;transform:translate(-50%)}.tag.has-tip:hover .tag-tip,.tag.has-tip:focus .tag-tip{visibility:visible;opacity:1}.coin{cursor:pointer;perspective:60rem;background:0 0;border:0;border-radius:50%;padding:0;display:block}.coin-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.3,.1,.2,1);display:block;position:relative}.coin-face{-webkit-backface-visibility:hidden;backface-visibility:hidden;width:100%;height:100%;display:block;position:absolute;inset:0}.coin-back{transform:rotateY(180deg)}@media (hover:hover){.coin:hover .coin-inner,.coin:focus-visible .coin-inner{transform:rotateY(180deg)}}@media (hover:none){.coin[aria-pressed=true] .coin-inner{transform:rotateY(180deg)}}@media (prefers-reduced-motion:reduce){.coin-inner{transition:none;transform:none!important}.coin-back{opacity:0;transition:opacity .2s;transform:none}.coin:hover .coin-back,.coin:focus-visible .coin-back,.coin[aria-pressed=true] .coin-back{opacity:1}}
