@layer config,base,components,utilities;@layer config{:root{color-scheme:light dark}*,*:before,*:after{box-sizing:border-box;min-width:0}html{interpolate-size:allow-keywords;overflow-wrap:break-word;text-size-adjust:none}body{min-height:100dvh;margin:0;font-family:system-ui,sans-serif;line-height:1.5;text-rendering:optimizespeed}:focus:not(:focus-visible){outline:none}:focus-visible{outline:2px solid light-dark(#4285f4,#8ab4f8);outline-offset:2px}@supports (outline-color: AccentColor){:focus-visible{outline-color:AccentColor}}:target{scroll-margin-block:1rem}a:not([class]){text-decoration-skip-ink:auto}h1,h2,h3,h4,button,input,label{line-height:1.1}h1,h2,h3,h4,h5,h6,blockquote{text-wrap:balance}p,li,figcaption{text-wrap:pretty}q{quotes:"« "" »"}:where(ul[role=list],ol[role=list]){list-style:none}img,picture,table,td,blockquote,pre,code,input,textarea,select,video,svg,iframe{max-width:100%}img,picture,svg,video,canvas,audio,iframe,embed,object{display:block}:where(img,picture):where(:not([src$=".svg"])){height:auto}figure{margin:0}input,button,textarea,select{margin:0;background-color:transparent;color:inherit;font-family:inherit;font-size:inherit;letter-spacing:inherit;line-height:inherit;vertical-align:middle}form,fieldset{border:none}fieldset{margin:0;padding:1em}legend{max-width:100%;border:0;color:inherit;white-space:normal}label{display:inline-block;cursor:pointer;-webkit-tap-highlight-color:transparent}button{cursor:pointer;-webkit-tap-highlight-color:transparent}textarea{overflow:auto;vertical-align:top;white-space:pre-wrap;resize:vertical}pre,code,kbd,samp{font-family:monospace,monospace;font-size:1em}pre{overflow:auto;line-height:normal;white-space:pre-wrap;-moz-tab-size:2;tab-size:2}svg:not([fill]){fill:currentcolor}svg{overflow:visible}svg *{transform-box:fill-box}svg:has(symbol){display:none}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled=true],[disabled]{cursor:not-allowed}[aria-hidden=false][hidden]{display:revert}[aria-hidden=false][hidden]:not(:focus){position:absolute;clip:rect(0,0,0,0)}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;overflow:hidden!important;white-space:nowrap!important;clip-path:inset(50%)!important}@media (prefers-reduced-motion: reduce){*,:before,:after{transition-duration:0s!important;transition-delay:0s!important;animation-duration:1ms!important;animation-delay:-1ms!important;animation-iteration-count:1!important;background-attachment:initial!important;scroll-behavior:auto!important}}@media print{@page{size:a4 portrait;margin:2cm 1.5cm}*{display:revert;box-sizing:border-box;all:unset}img{max-width:100%}input,textarea,select{all:revert}body{width:auto;margin:0;background-color:#fff!important;color:#000!important;font-family:serif;font-family:Georgia,serif;font-size:12pt;line-height:1.5}p,blockquote,label,ul,ol{margin-block:0 15pt}p:last-child{margin-bottom:0}h1{margin-block:0 24pt;font-size:18pt;font-weight:700;line-height:1.1}h2{margin-block:0 18pt;font-size:16pt;font-weight:700;line-height:1.1}h3{margin-block:0 15pt;font-size:14pt;font-weight:700}h4{margin-block:0 12pt;font-size:12pt;font-weight:700}.print{display:revert}.no-print{display:none}p,blockquote{orphans:3;widows:3}blockquote,ul,ol,figure,table{break-inside:avoid;page-break-inside:avoid}h1,h2,h3,h4,caption{break-after:avoid;page-break-after:avoid}a,a:link,a:visited{background:transparent!important;color:unset;font-weight:700;text-decoration:underline!important}a[href^=http]:after,a[href^=https]:after{content:" (" attr(href) ")"}video,object,iframe{display:none!important;width:0!important;height:0!important;overflow:hidden!important}}}@layer config{:root{--spacing-2: .125rem;--spacing-4: .25rem;--spacing-8: .5rem;--spacing-10: .625rem;--spacing-12: .75rem;--spacing-16: 1rem;--spacing-20: 1.25rem;--spacing-24: 1.5rem;--spacing-36: 2.25rem;--spacing-48: 3rem;--font-calendas: calendas, georgia, serif;--font-weight-thin: 100;--font-weight-extralight: 200;--font-weight-light: 300;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--font-weight-extrabold: 800;--font-weight-black: 900;--text-10: .625rem;--text-11: .6875rem;--text-12: .75rem;--text-14: .875rem;--text-16: 1rem;--text-18: 1.125rem;--text-20: 1.25rem;--text-24: 1.5rem;--text-30: 1.875rem;--text-36: 2.25rem;--text-40: 2.5rem;--text-48: 3rem;--radius-md: .5rem;--radius-full: 9999px;--color-green-05: oklch(100% .1 144);--color-green-10: oklch(100% .11 144);--color-green-20: oklch(91% .11 144);--color-green-30: oklch(81% .11 144);--color-green-40: oklch(71% .11 144);--color-green-50: oklch(61% .11 144);--color-green-60: oklch(51% .11 144);--color-green-70: oklch(41% .11 144);--color-green-80: oklch(31% .11 144);--color-green-90: oklch(21% .11 144);--color-green-fade: oklch(51% .01 144);--color-green-bright: oklch(51% .21 144);--color-orange-05: oklch(100% .1 82);--color-orange-10: oklch(100% .13 82);--color-orange-20: oklch(97% .13 82);--color-orange-30: oklch(87% .13 82);--color-orange-40: oklch(77% .13 82);--color-orange-50: oklch(67% .13 82);--color-orange-60: oklch(57% .13 82);--color-orange-70: oklch(47% .13 82);--color-orange-80: oklch(37% .13 82);--color-orange-90: oklch(27% .13 82);--color-pink-05: oklch(100% .1 355);--color-pink-10: oklch(100% .16 355);--color-pink-20: oklch(94% .16 355);--color-pink-30: oklch(84% .16 355);--color-pink-40: oklch(74% .16 355);--color-pink-50: oklch(64% .16 355);--color-pink-60: oklch(54% .16 355);--color-pink-70: oklch(44% .16 355);--color-pink-80: oklch(34% .16 355);--color-pink-90: oklch(24% .16 355);--color-hotpink: oklch(73% .2 352);--color-gray-05: oklch(97% 0 0);--color-gray-10: oklch(90% 0 0);--color-gray-20: oklch(80% 0 0);--color-gray-30: oklch(70% 0 0);--color-gray-40: oklch(60% 0 0);--color-gray-50: oklch(50% 0 0);--color-gray-60: oklch(40% 0 0);--color-gray-70: oklch(30% 0 0);--color-gray-80: oklch(20% 0 0);--color-gray-90: oklch(10% 0 0);--color-white: oklch(100% 0 0);--color-black: oklch(0% 0 0)}}@layer config{:root{--spacing-max: 1440px;--spacing-m: clamp( var(--spacing-16), .5109rem + 2.1739vw, var(--spacing-36) );--text-m: clamp(var(--text-18), 1.0761rem + .2174vw, var(--text-20));--text-l: clamp(var(--text-20), 1.0054rem + 1.087vw, var(--text-30));--text-xl: clamp(var(--text-24), 1.2065rem + 1.3043vw, var(--text-36));--text-xxl: clamp(var(--text-30), 1.4348rem + 1.9565vw, var(--text-48))}@layer utilities{.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;overflow:hidden!important;white-space:nowrap!important;clip-path:inset(50%)!important}.offscreen{contain-intrinsic-size:auto 500px;content-visibility:auto}.d-block{display:block}}}@layer config{[data-layout*=stack]{display:grid;row-gap:var(--gap-m, 1rem)}[data-layout*=cluster]{display:flex;flex-wrap:wrap;gap:var(--gap-m, 1rem);align-items:start}[data-layout*=autogrid]{--col-min-size: 20rem;--grid-fill: auto-fit;display:grid;grid-template-columns:repeat(var(--grid-fill),minmax(min(var(--col-min-size),100%),1fr));gap:var(--gap-m, 1rem)}[data-layout*=switcher]{display:grid;gap:var(--gap-m, 1rem)}@media (width >= 48rem){[data-layout*=switcher]{grid-template-columns:repeat(auto-fit,minmax(0,1fr))}}[data-layout*=repel]{display:flex;flex-wrap:wrap;align-items:start;justify-content:space-between;gap:var(--gap-m, 1rem)}[data-layout*=reel]{--item-size: 35%;display:flex;max-width:100%;height:auto;margin-inline:auto;overflow-x:auto;gap:var(--gap-m, 1rem);scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}[data-layout*=reel] :where(>*){flex-basis:var(--item-size);flex-shrink:0}[data-layout*=reel][data-scroll=start]>*{scroll-snap-align:start}[data-layout*=reel][data-scroll=center]>*{scroll-snap-align:center}[data-layout*=reel][data-scroll=end]>*{scroll-snap-align:end}[data-layout*=reel][data-scrollbar=hidden]{scrollbar-width:none}[data-layout*=reel][data-scrollbar=hidden]::-webkit-scrollbar{display:none}[data-layout*=duo]{display:grid;align-content:start;gap:var(--gap-m, 1rem)}@media (width >= 48rem){[data-layout*=duo]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}[data-layout*=duo][data-model="1-1"]{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}[data-layout*=duo][data-model="2-1"]{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}[data-layout*=duo][data-model="1-2"]{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}[data-layout*=duo][data-model="3-1"]{grid-template-columns:minmax(0,3fr) minmax(0,1fr)}[data-layout*=duo][data-model="1-3"]{grid-template-columns:minmax(0,1fr) minmax(0,3fr)}[data-layout*=duo][data-model=auto-1]{grid-template-columns:auto minmax(0,1fr)}[data-layout*=duo][data-model="1-auto"]{grid-template-columns:minmax(0,1fr) auto}}[data-layout*=boxed]{--boxed-max: 80rem;width:100%;max-width:var(--boxed-max, 80rem);margin-inline:auto}[data-layout*=boxed][data-boxed=small]{--boxed-max: 64rem}[data-layout*=liquid]{--liquid-min-margin: var(--spacing-16, 1rem);--liquid-content: var(--spacing-2xl, 98rem);display:grid;grid-template-columns:[liquid-start] minmax(var(--liquid-min-margin),1fr) [content-start] minmax(0,calc(var(--liquid-content) / 2)) [half] minmax(0,calc(var(--liquid-content) / 2)) [content-end] minmax(var(--liquid-min-margin),1fr) [liquid-end]}[data-layout*=liquid] :where(>*){grid-column:content}[data-layout*=splash]{display:grid;grid-column:liquid;grid-template-columns:inherit}[data-layout*=splash] :where(>*){grid-column:content}[data-layout*=splash-start]{display:grid;grid-column:liquid-start / content-end;grid-template-columns:subgrid}[data-layout*=splash-start] :where(>*){grid-column:content}[data-layout*=splash-end]{display:grid;grid-column:content-start / liquid-end;grid-template-columns:subgrid}[data-layout*=splash-end] :where(>*){grid-column:content}[data-layout*=splash-half-start]{display:grid;grid-column:liquid-start / half;grid-template-columns:subgrid}[data-layout*=splash-half-start] :where(>*){grid-column:content-start / half}[data-layout*=splash-half-end]{display:grid;grid-column:half / liquid-end;grid-template-columns:subgrid}[data-layout*=splash-half-end] :where(>*){grid-column:half / content-end}[data-gap=s]{gap:var(--gap-s, .5rem)}[data-gap=m]{gap:var(--gap-m, 1rem)}[data-gap=l]{gap:var(--gap-l, 2rem)}[data-gap=xl]{gap:var(--gap-xl, 3rem)}[data-gap=none]{gap:0}[data-justify=start]{justify-content:start}[data-justify=end]{justify-content:end}[data-justify=center]{justify-content:center}[data-justify=space]{justify-content:space-between}[data-align=start]{align-content:start;align-items:start}[data-align=end]{align-content:end;align-items:end}[data-align=center]{align-content:center;align-items:center}[data-align=stretch]{align-content:stretch;align-items:stretch}}@layer base{@font-face{font-family:calendas;font-style:normal;font-weight:400;src:url(/fonts/calendas.woff2) format("woff2");font-display:swap}:root{color-scheme:light dark;--surface: light-dark(var(--color-gray-05), var(--color-gray-80));--surface-dim: light-dark( rgb(from var(--color-black) r g b / 5%), rgb(from var(--color-black) r g b / 15%) );--layer: light-dark(var(--color-pink-20), var(--color-pink-60));--on-surface: light-dark(var(--color-gray-90), var(--color-gray-10));--color-link: light-dark(var(--color-green-60), var(--color-orange-30));--color-link-hover: light-dark(var(--color-green-60), var(--color-orange-30));--color-link-invert: light-dark(var(--color-gray-90), var(--color-gray-10));--color-title: light-dark(var(--color-orange-60), var(--color-orange-30));--color-subtitle: light-dark(var(--color-gray-70), var(--color-gray-40));--selection: light-dark(var(--color-orange-30), var(--color-orange-60))}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}*::selection{background:var(--selection)}:target{scroll-margin-block:3rem}html{background-color:var(--surface);background-image:url(/images/bg-light.webp);scroll-behavior:smooth}html[data-theme=dark]{background-image:url(/images/bg-dark.webp)}body{color:var(--on-surface);font-size:var(--text-m);font-weight:var(--font-weight-light)}@media (width >= 40rem){body{font-weight:var(--font-weight-extralight)}}h1,h2,h3{font-family:var(--font-calendas);font-feature-settings:"swsh","liga","dlig"}h1{margin:0;font-size:var(--text-xxl)}h2{margin-top:0;margin-bottom:var(--spacing-m);font-size:var(--text-xl)}h3{width:fit-content;margin-top:0;margin-bottom:var(--spacing-m);font-size:var(--text-l)}ul{padding-left:var(--spacing-12)}@media (width >= 64rem){ul{padding-left:var(--spacing-16)}}ul.list{list-style-type:square}ul.list>li::marker{content:normal;color:currentcolor}li{margin-bottom:var(--spacing-8)}p{margin-block:var(--spacing-16)}a{color:var(--color-link)}a:hover,a:focus{color:var(--color-link-hover);text-decoration:none}a:focus-visible{outline:0;outline:dashed var(--spacing-2) currentcolor;outline-offset:var(--spacing-2);box-shadow:none}h2:after{content:"";display:block;width:66%;height:2px;background-image:linear-gradient(to right,var(--color-orange-50),var(--color-hotpink));background-repeat:no-repeat;background-position:left bottom;translate:0 var(--spacing-12)}.section{margin-bottom:var(--spacing-m);padding:var(--spacing-m);border-radius:var(--radius-md);background-color:var(--surface-dim)}.section:nth-of-type(1),.section p:nth-of-type(1){margin-top:0}.section:focus,.section:focus-visible{outline:none}.body-deco{position:absolute;z-index:1000;top:0;right:0;left:0;height:6px;background-image:linear-gradient(to right,var(--color-orange-30),var(--color-hotpink))}@media (width >= 64rem){.body-deco{position:fixed}}body{display:grid;grid-template-areas:"header" "navigation" "main" "footer";padding:var(--spacing-24) var(--spacing-10);gap:var(--spacing-16)}@media (width >= 64rem){body{grid-template-areas:"header     main   ." "navigation main   ." "footer     footer footer";grid-template-columns:12rem 1fr 10rem;margin-inline:auto;padding:var(--spacing-36);gap:var(--spacing-24)}}@media (width >= 80rem){body{padding:var(--spacing-48) var(--spacing-36);gap:var(--spacing-48)}}.header{grid-area:header}.nav-main{grid-area:navigation}.main{grid-area:main}.footer{grid-area:footer}.book-group,.conf-group,.logo-group{--item-size: auto;display:flex;margin-block:var(--spacing-m);padding:0;overflow-x:auto;list-style:none;gap:var(--spacing-16);-webkit-overflow-scrolling:touch}.book-group>*,.conf-group>*,.logo-group>*{flex-shrink:0}@property --left-fade{syntax: "<length>"; inherits: false; initial-value: 0;}@property --right-fade{syntax: "<length>"; inherits: false; initial-value: 0;}[data-scroll-fade]{overflow-x:scroll;mask:linear-gradient(to right,#00000000,#ffffffff var(--left-fade) calc(100% - var(--right-fade)),#00000000)}@supports (animation-timeline: scroll()){[data-scroll-fade]{animation:scrollfade linear forwards;animation-timeline:scroll(self x)}}@keyframes scrollfade{0%{--left-fade: 0}20%,to{--left-fade: 150px}0%,80%{--right-fade: 150px}to{--right-fade: 0}}}@layer components{@media (width >= 64rem){.header{position:fixed;left:var(--spacing-24);max-width:12rem}}@media (width >= 80rem){.header{left:var(--spacing-36)}}.header-complementary{display:flex;align-items:center;justify-content:center;gap:var(--spacing-12)}@media (width >= 64rem){.header-complementary{flex-direction:column;align-items:flex-end;justify-content:flex-end}}.theme-switcher-container{display:flex;flex-wrap:wrap;justify-content:flex-start}@media (width >= 64rem){.theme-switcher-container{justify-content:flex-end}}.theme-switcher{--theme-switcher-radius: 40px;--theme-switcher-padding: 2px;--theme-switcher-outline-color: transparent;--theme-switcher-outline-size: 1px;--theme-switcher-background: light-dark(#cccccc, #777777);--theme-switcher-icon-size: 14px;--theme-switcher-icon-color: #ffffff;--theme-switcher-icon-background: light-dark(#777777, #333333);--theme-switcher-transition: .25s;display:inline-flex;justify-content:start;width:calc((var(--theme-switcher-icon-size)) * 2.3);padding:var(--theme-switcher-padding);border:0;border-radius:var(--theme-switcher-radius);outline:var(--theme-switcher-outline-size) solid var(--theme-switcher-outline-color);background-color:var(--theme-switcher-background);line-height:0;cursor:pointer}.theme-switcher:before{content:"";flex:0 0 0;transition:var(--theme-switcher-transition) flex-grow;will-change:flex-grow}.theme-switcher *{pointer-events:none}.theme-switcher>.theme-icon{padding:2px;transition:var(--theme-switcher-transition) rotate;border-radius:50%;background-color:var(--theme-switcher-icon-background);color:var(--theme-switcher-icon-color);rotate:0deg}.theme-switcher [class^=theme-icon-]{width:var(--theme-switcher-icon-size);height:var(--theme-switcher-icon-size)}.theme-switcher:focus-visible{outline:dashed var(--spacing-2) var(--color-link);outline-offset:var(--spacing-2)}.theme-switcher[aria-pressed=false] .theme-icon-dark{display:none}.theme-switcher[aria-pressed=true] .theme-icon-light{display:none}.theme-switcher[aria-pressed=true]>.theme-icon{rotate:240deg}.theme-switcher[aria-pressed=true]:before{flex:1 0 0}.nav-main{display:none}@media (width >= 64rem){.nav-main{display:block;display:grid;position:fixed;right:var(--spacing-24);gap:var(--spacing-12)}@media (width >= 80rem){.nav-main{right:var(--spacing-36)}}}:root{timeline-scope:--section-1,--section-2,--section-3,--section-4,--section-5,--section-6}.section:nth-of-type(1){view-timeline:--section-1}.section:nth-of-type(2){view-timeline:--section-2}.section:nth-of-type(3){view-timeline:--section-3}.section:nth-of-type(4){view-timeline:--section-4}.section:nth-of-type(5){view-timeline:--section-5}.section:nth-of-type(6){view-timeline:--section-6}.nav-link{padding:var(--spacing-4) var(--spacing-12);animation-name:reveal,exit;animation-duration:auto;animation-timing-function:linear;border-right:8px solid oklch(0% 0 0 / 20%);text-align:end;text-decoration:none;animation-range:entry 0% entry 100%,exit 0% exit 100%;animation-fill-mode:both}.nav-link:nth-of-type(1){animation-timeline:--section-1}.nav-link:nth-of-type(2){animation-timeline:--section-2}.nav-link:nth-of-type(3){animation-timeline:--section-3}.nav-link:nth-of-type(4){animation-timeline:--section-4}.nav-link:nth-of-type(5){animation-timeline:--section-5}.nav-link:nth-of-type(6){animation-timeline:--section-6}@keyframes reveal{to{border-right:var(--spacing-8) solid}}@keyframes exit{to{border-right:var(--spacing-8) solid oklch(0% 0 0 / 20%)}}.title-main{color:var(--color-title);font-weight:var(--font-weight-light);text-align:center}@media (width >= 64rem){.title-main{text-align:end}}@supports (-webkit-background-clip: text) or (background-clip: text){.title-link{display:inline-block;transition:background 1s;-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(to right,var(--color-orange-50),var(--color-hotpink));text-decoration:none;-webkit-text-fill-color:transparent}[data-theme=dark] .title-link{background-image:linear-gradient(to right,var(--color-orange-30),var(--color-hotpink))}.title-link:hover,.title-link:focus{background-position:12rem center}}.title-subtitle{margin-block:var(--spacing-10);color:var(--color-subtitle);font-family:var(--font-calendas);font-size:var(--text-l);font-weight:var(--font-weight-light);text-align:center;font-feature-settings:"swsh","liga","dlig"}@media (width >= 64rem){.title-subtitle{text-align:end}}.social-group{display:flex;flex-wrap:wrap;margin:0;padding-left:0;gap:var(--spacing-8);list-style:none}@media (width >= 64rem){.social-group{justify-content:end}}.social-item{margin-bottom:0}.social-link{display:inline-block;padding:var(--spacing-10)}@media (width >= 64rem){.social-link{padding:var(--spacing-4)}}.social-link svg{transition:.25s scale}.social-link:hover svg,.social-link:focus svg{scale:1.2}.formation-figure{margin-inline:0;padding-inline:0}.formation-figure img{border-radius:var(--radius-md)}.formation-figure figcaption{margin-top:var(--spacing-4);font-size:var(--text-14);font-style:italic}.book-item img{width:auto;height:150px}@media (width >= 64rem){.book-item img{height:200px}}.conf-item img{width:auto;height:150px}@media (width >= 64rem){.conf-item img{height:250px}}.logo-item{padding:var(--spacing-16);border-radius:var(--radius-md);background-color:#fffc}.logo-item img{width:auto;height:50px}.codepen{width:300px}.codepen-box{margin-top:var(--spacing-24)}.codepen-box-link{margin-inline:0;padding-inline:0}.biopic-img{margin-inline:auto;animation:blob auto linear both;border-radius:60% 40% 30% 70%/60% 30% 70% 40%;box-shadow:3px 3px 7px #0000004d;animation-timeline:scroll(root)}@keyframes blob{0%{border-radius:60% 40% 30% 70%/60% 30% 70% 40%}50%{border-radius:30% 60% 70% 40%/50% 60% 30%}to{border-radius:60% 40% 30% 70%/60% 30% 70% 40%}}.footer{padding:var(--spacing-16);border-radius:var(--radius-md);background-color:var(--layer)}.footer a{color:var(--color-link-invert)}a.to-top{display:none}@media (width < 64rem){a.to-top{display:inline-grid;position:fixed;z-index:100;right:var(--spacing-24);bottom:var(--spacing-20);width:var(--spacing-36);height:var(--spacing-36);animation:scroll-top auto linear forwards;border-radius:50%;background:var(--color-orange-50);box-shadow:0 0 4px #0000004d;color:var(--color-white);font-weight:var(--font-weight-extrabold);line-height:1;text-decoration:none;place-content:center;animation-timeline:scroll(root);animation-range:0 150dvh}}a.to-top:focus,a.to-top:focus-visible{background:var(--color-orange-50);color:var(--color-white)}@keyframes scroll-top{0%,90%{opacity:0%}to{opacity:100%}}}
