@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Nova+Oval&display=swap";@layer properties;@layer theme,base,components,utilities;@layer theme{:root,:host{--font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing: .25rem;--radius-3xl: 1.5rem;--ease-out: cubic-bezier(0, 0, .2, 1);--default-transition-duration: .15s;--default-transition-timing-function: cubic-bezier(.4, 0, .2, 1);--default-font-family: var(--font-sans);--default-mono-font-family: var(--font-mono)}}@layer base{*,:after,:before,::backdrop,::file-selector-button{box-sizing:border-box;margin:0;padding:0;border:0 solid}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;tab-size:4;font-family:var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings, normal);font-variation-settings:var(--default-font-variation-settings, normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings, normal);font-variation-settings:var(--default-mono-font-variation-settings, normal);font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea,::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;border-radius:0;background-color:transparent;opacity:1}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px){::placeholder{color:currentcolor}@supports (color: color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]),::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer utilities{.pointer-events-none{pointer-events:none}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.top-4{top:calc(var(--spacing) * 4)}.left-1\/2{left:50%}.z-10{z-index:10}.z-\[1\]{z-index:1}.z-\[5\]{z-index:5}.container{width:100%}@media(width>=40rem){.container{max-width:40rem}}@media(width>=48rem){.container{max-width:48rem}}@media(width>=64rem){.container{max-width:64rem}}@media(width>=80rem){.container{max-width:80rem}}@media(width>=96rem){.container{max-width:96rem}}.m-1919{margin:calc(var(--spacing) * 1919)}.-mx-2\.5{margin-inline:calc(var(--spacing) * -2.5)}.\[margin-inline\:-1rem\]{margin-inline:-1rem}.mx-auto{margin-inline:auto}.my-3{margin-block:calc(var(--spacing) * 3)}.mt-1{margin-top:var(--spacing)}.mt-20{margin-top:calc(var(--spacing) * 20)}.mt-\[calc\(var\(--spacer\)\*23\.75\)\]{margin-top:calc(var(--spacer) * 23.75)}.mb-\[calc\(var\(--spacer\)\*-15\.75\)\]{margin-bottom:calc(var(--spacer) * -15.75)}.box-border{box-sizing:border-box}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.flex{display:flex}.grid{display:grid}.inline{display:inline}.inline-flex{display:inline-flex}.h-4{height:calc(var(--spacing) * 4)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-10{height:calc(var(--spacing) * 10)}.h-20{height:calc(var(--spacing) * 20)}.h-\[252px\]{height:252px}.h-\[292px\]{height:292px}.min-h-6{min-height:calc(var(--spacing) * 6)}.min-h-10{min-height:calc(var(--spacing) * 10)}.min-h-28{min-height:calc(var(--spacing) * 28)}.min-h-\[120px\]{min-height:120px}.min-h-\[210px\]{min-height:210px}.w-4{width:calc(var(--spacing) * 4)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-10{width:calc(var(--spacing) * 10)}.w-20{width:calc(var(--spacing) * 20)}.w-\[min\(400px\,72vw\)\]{width:min(400px,72vw)}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\[calc\(var\(--spacer\)\*160\)\]{max-width:calc(var(--spacer) * 160)}.min-w-0{min-width:0}.min-w-6{min-width:calc(var(--spacing) * 6)}.flex-1{flex:1}.grow{flex-grow:1}.translate-x-\[-8px\]{--tw-translate-x: -8px;translate:var(--tw-translate-x) var(--tw-translate-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.grid-cols-\[40px_minmax\(0\,1fr\)_24px\]{grid-template-columns:40px minmax(0,1fr) 24px}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.overflow-hidden{overflow:hidden}.overflow-visible{overflow:visible}.rounded-3xl{border-radius:var(--radius-3xl)}.rounded-\[10px\]{border-radius:10px}.rounded-\[18px\]{border-radius:18px}.rounded-full{border-radius:calc(infinity * 1px)}.bg-\[var\(--surface-color\)\]{background-color:var(--surface-color)}.fill-none{fill:none}.stroke-current{stroke:currentcolor}.stroke-\[1\.75\]{stroke-width:1.75}.object-contain{object-fit:contain}.p-0{padding:0}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-\[calc\(var\(--spacer\)\*6\)\]{padding-inline:calc(var(--spacer) * 6)}.py-3{padding-block:calc(var(--spacing) * 3)}.text-end{text-align:end}.leading-\[1\.35\]{--tw-leading: 1.35;line-height:1.35}.text-balance{text-wrap:balance}.text-pretty{text-wrap:pretty}.text-\[var\(--sub-text-color\)\]{color:var(--sub-text-color)}.text-inherit{color:inherit}.no-underline{text-decoration-line:none}.opacity-0{opacity:0%}.shadow{--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / .1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / .1));box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.blur-\[4px\]{--tw-blur: blur(4px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.\[filter\:var\(--svg-text-filter\)\]{filter:var(--svg-text-filter)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-\[background-color\,transform\]{transition-property:background-color,transform;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-\[opacity\,transform\,filter\]{transition-property:opacity,transform,filter;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-\[transform\,background-color\,box-shadow\]{transition-property:transform,background-color,box-shadow;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.transition-\[transform\,opacity\]{transition-property:transform,opacity;transition-timing-function:var(--tw-ease, var(--default-transition-timing-function));transition-duration:var(--tw-duration, var(--default-transition-duration))}.duration-200{--tw-duration: .2s;transition-duration:.2s}.duration-\[220ms\]{--tw-duration: .22s;transition-duration:.22s}.duration-\[260ms\]{--tw-duration: .26s;transition-duration:.26s}.duration-\[360ms\]{--tw-duration: .36s;transition-duration:.36s}.ease-\[var\(--ease-out\)\]{--tw-ease: var(--ease-out);transition-timing-function:var(--ease-out)}.\[stroke-linecap\:round\]{stroke-linecap:round}.\[stroke-linejoin\:round\]{stroke-linejoin:round}@media(hover:hover){.group-hover\:translate-x-0:is(:where(.group):hover *){--tw-translate-x: 0;translate:var(--tw-translate-x) var(--tw-translate-y)}}@media(hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:100%}}@media(hover:hover){.group-hover\:blur-none:is(:where(.group):hover *){--tw-blur: ;filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}.group-focus-visible\:translate-x-0:is(:where(.group):focus-visible *){--tw-translate-x: 0;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-focus-visible\:opacity-100:is(:where(.group):focus-visible *){opacity:100%}.group-focus-visible\:blur-none:is(:where(.group):focus-visible *){--tw-blur: ;filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}@media(hover:hover){.hover\:cursor-pointer:hover{cursor:pointer}}@media(hover:hover){.hover\:bg-\[var\(--background-hover-color\)\]:hover{background-color:var(--background-hover-color)}}.focus-visible\:bg-\[var\(--background-hover-color\)\]:focus-visible{background-color:var(--background-hover-color)}.active\:translate-y-0:active{--tw-translate-y: 0;translate:var(--tw-translate-x) var(--tw-translate-y)}.active\:scale-\[0\.96\]:active{scale:.96}@media(width<720px){.max-\[720px\]\:mt-\[30px\]{margin-top:30px}}@media(width<720px){.max-\[720px\]\:h-6{height:calc(var(--spacing) * 6)}}@media(width<720px){.max-\[720px\]\:h-9{height:calc(var(--spacing) * 9)}}@media(width<720px){.max-\[720px\]\:h-\[248px\]{height:248px}}@media(width<720px){.max-\[720px\]\:h-\[286px\]{height:286px}}@media(width<720px){.max-\[720px\]\:w-6{width:calc(var(--spacing) * 6)}}@media(width<720px){.max-\[720px\]\:w-9{width:calc(var(--spacing) * 9)}}@media(width<720px){.max-\[720px\]\:w-\[min\(330px\,84vw\)\]{width:min(330px,84vw)}}@media(width<720px){.max-\[720px\]\:grid-cols-\[36px_minmax\(0\,1fr\)_24px\]{grid-template-columns:36px minmax(0,1fr) 24px}}@media(width<720px){.max-\[720px\]\:gap-2{gap:calc(var(--spacing) * 2)}}@media(width<720px){.max-\[720px\]\:text-left{text-align:left}}@media(width<500px){.max-\[500px\]\:box-border{box-sizing:border-box}}@media(width<500px){.max-\[500px\]\:h-\[280px\]{height:280px}}@media(width<500px){.max-\[500px\]\:h-\[320px\]{height:320px}}@media(width<500px){.max-\[500px\]\:w-\[min\(340px\,88vw\)\]{width:min(340px,88vw)}}@media(width<500px){.max-\[500px\]\:overflow-x-clip{overflow-x:clip}}@media(width<500px){.max-\[500px\]\:overflow-y-visible{overflow-y:visible}}.\[\&_p\]\:leading-\[1\.35\] p{--tw-leading: 1.35;line-height:1.35}.\[\&_p\]\:text-pretty p{text-wrap:pretty}}@property --tw-translate-x{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-translate-y{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-translate-z{syntax: "*"; inherits: false; initial-value: 0;}@property --tw-rotate-x{syntax: "*"; inherits: false;}@property --tw-rotate-y{syntax: "*"; inherits: false;}@property --tw-rotate-z{syntax: "*"; inherits: false;}@property --tw-skew-x{syntax: "*"; inherits: false;}@property --tw-skew-y{syntax: "*"; inherits: false;}@property --tw-leading{syntax: "*"; inherits: false;}@property --tw-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-shadow-color{syntax: "*"; inherits: false;}@property --tw-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-inset-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-shadow-color{syntax: "*"; inherits: false;}@property --tw-inset-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-ring-color{syntax: "*"; inherits: false;}@property --tw-ring-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-inset-ring-color{syntax: "*"; inherits: false;}@property --tw-inset-ring-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-ring-inset{syntax: "*"; inherits: false;}@property --tw-ring-offset-width{syntax: "<length>"; inherits: false; initial-value: 0px;}@property --tw-ring-offset-color{syntax: "*"; inherits: false; initial-value: #fff;}@property --tw-ring-offset-shadow{syntax: "*"; inherits: false; initial-value: 0 0 #0000;}@property --tw-blur{syntax: "*"; inherits: false;}@property --tw-brightness{syntax: "*"; inherits: false;}@property --tw-contrast{syntax: "*"; inherits: false;}@property --tw-grayscale{syntax: "*"; inherits: false;}@property --tw-hue-rotate{syntax: "*"; inherits: false;}@property --tw-invert{syntax: "*"; inherits: false;}@property --tw-opacity{syntax: "*"; inherits: false;}@property --tw-saturate{syntax: "*"; inherits: false;}@property --tw-sepia{syntax: "*"; inherits: false;}@property --tw-drop-shadow{syntax: "*"; inherits: false;}@property --tw-drop-shadow-color{syntax: "*"; inherits: false;}@property --tw-drop-shadow-alpha{syntax: "<percentage>"; inherits: false; initial-value: 100%;}@property --tw-drop-shadow-size{syntax: "*"; inherits: false;}@property --tw-backdrop-blur{syntax: "*"; inherits: false;}@property --tw-backdrop-brightness{syntax: "*"; inherits: false;}@property --tw-backdrop-contrast{syntax: "*"; inherits: false;}@property --tw-backdrop-grayscale{syntax: "*"; inherits: false;}@property --tw-backdrop-hue-rotate{syntax: "*"; inherits: false;}@property --tw-backdrop-invert{syntax: "*"; inherits: false;}@property --tw-backdrop-opacity{syntax: "*"; inherits: false;}@property --tw-backdrop-saturate{syntax: "*"; inherits: false;}@property --tw-backdrop-sepia{syntax: "*"; inherits: false;}@property --tw-duration{syntax: "*"; inherits: false;}@property --tw-ease{syntax: "*"; inherits: false;}@layer properties{@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x: 0;--tw-translate-y: 0;--tw-translate-z: 0;--tw-rotate-x: initial;--tw-rotate-y: initial;--tw-rotate-z: initial;--tw-skew-x: initial;--tw-skew-y: initial;--tw-leading: initial;--tw-shadow: 0 0 #0000;--tw-shadow-color: initial;--tw-shadow-alpha: 100%;--tw-inset-shadow: 0 0 #0000;--tw-inset-shadow-color: initial;--tw-inset-shadow-alpha: 100%;--tw-ring-color: initial;--tw-ring-shadow: 0 0 #0000;--tw-inset-ring-color: initial;--tw-inset-ring-shadow: 0 0 #0000;--tw-ring-inset: initial;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-offset-shadow: 0 0 #0000;--tw-blur: initial;--tw-brightness: initial;--tw-contrast: initial;--tw-grayscale: initial;--tw-hue-rotate: initial;--tw-invert: initial;--tw-opacity: initial;--tw-saturate: initial;--tw-sepia: initial;--tw-drop-shadow: initial;--tw-drop-shadow-color: initial;--tw-drop-shadow-alpha: 100%;--tw-drop-shadow-size: initial;--tw-backdrop-blur: initial;--tw-backdrop-brightness: initial;--tw-backdrop-contrast: initial;--tw-backdrop-grayscale: initial;--tw-backdrop-hue-rotate: initial;--tw-backdrop-invert: initial;--tw-backdrop-opacity: initial;--tw-backdrop-saturate: initial;--tw-backdrop-sepia: initial;--tw-duration: initial;--tw-ease: initial}}}body{margin:0;padding:0;font-family:DM Sans,sans-serif;background-color:var(--background-color);box-sizing:border-box;-webkit-font-smoothing:antialiased}html{overflow-x:clip}*{scroll-behavior:smooth}body,h1,h2,p,a,button,span,img,.background,.shadow{transition-property:background-color,color,box-shadow,filter,text-decoration-color;transition-duration:.22s;transition-timing-function:var(--ease-out)}img[aria-hidden=true],svg[aria-hidden=true],[aria-hidden=true] svg{-webkit-user-select:none;user-select:none}:root{--background-color: #101010;--surface-color: #0b0b0b;--background-hover-color: #1f1f1f;--background-transparent-color: rgb(16 16 16 / 0);--text-color: #EEEEEE;--sub-text-color: #B5B5B5;--underline-color: #3A3A3A;--carousel-indicator-background-color: 238 238 238;--code-container-background-color: #090909;--header-background-color: rgb(10 10 10 / .3);--svg-text-filter: brightness(0) saturate(100%) invert(93%);--writing-thumbnail-filter: none;--code-token-string-color: #f9e66b;--shadow-outline-color: rgba(255, 255, 255, .08);--shadow-soft-color: rgba(255, 255, 255, .08);--shadow-hover-outline-color: rgba(255, 255, 255, .12);--shadow-hover-soft-color: rgba(255, 255, 255, .12);--carousel-edge-mask-left: radial-gradient(ellipse 120% 92% at left center, #000 0%, #000 28%, rgb(0 0 0 / 0) 72%);--carousel-edge-mask-right: radial-gradient(ellipse 120% 92% at right center, #000 0%, #000 28%, rgb(0 0 0 / 0) 72%);--ease-out: cubic-bezier(.2, 0, 0, 1);--ease-emphasized: cubic-bezier(.22, 1, .36, 1);--spacer: .25rem}@layer base{main{min-height:calc(100vh - var(--spacer) * 16 - 80px - var(--spacer) * 3 * 2);margin:0 auto;display:flex;flex-direction:column;gap:calc(var(--spacer) * 16)}h1{font-size:1.3rem;color:var(--text-color);margin:0}h2{font-size:1rem;color:var(--text-color);margin:0}p{font-size:1.1rem;color:var(--sub-text-color);margin:0}p img{vertical-align:middle;margin-inline:var(--spacer)}.italic{font-style:italic}.highlight-sub{color:var(--text-color);text-decoration:underline;text-decoration-color:var(--underline-color)}.highlight-sub:hover{text-decoration-color:var(--text-color);cursor:pointer}.highlight{color:var(--text-color)}.detail-italic{font-family:Nova Oval,serif;font-size:1rem}.nowrap{white-space:nowrap}.subtext{font-size:.9rem}section{position:relative;display:flex;flex-direction:column;gap:calc(var(--spacer) * 4)}}.background{background:var(--background-color)}.shadow{box-shadow:0 0 0 1px var(--shadow-outline-color),0 1px 2px -1px var(--shadow-soft-color),0 1px 2px 0 var(--shadow-soft-color)}.shadow:hover{box-shadow:0 0 0 1px var(--shadow-hover-outline-color),0 1px 2px -1px var(--shadow-hover-soft-color),0 1px 2px 0 var(--shadow-hover-soft-color)}.button{width:fit-content;margin:0 auto;text-align:center;color:var(--text-color)}.writing-item,.project-row,.institution a{transition-property:background-color,transform,scale;transition-duration:.2s;transition-timing-function:var(--ease-out);transform-origin:center}.writing-item:active,.project-row:active,.institution a:active{scale:.96}.all-projects-button{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;gap:0;margin-inline-end:calc(var(--spacer) * -2.5);padding-inline:0;overflow:hidden;border-radius:999px;color:var(--text-color);background:transparent;text-decoration:none;white-space:nowrap;transition-property:transform,width,padding,scale;transition-duration:.22s;transition-timing-function:var(--ease-out);transform-origin:center}.all-projects-button:hover,.all-projects-button:focus-visible{width:158px;padding-inline:calc(var(--spacer) * 2);transform:translateY(-1px);background:var(--background-hover-color)}.all-projects-button svg{width:20px;height:20px;min-width:20px;transition:transform .28s var(--ease-out)}.all-projects-button:hover svg,.all-projects-button:focus-visible svg{transform:rotate(-1turn)}.all-projects-button:active{scale:.96}.all-projects-button rect{fill:currentColor}.all-projects-button span{display:inline-block;max-width:0;opacity:0;transform:translate(-8px);filter:blur(4px);overflow:hidden;font-size:.9rem;transition-property:max-width,opacity,transform,filter,margin-left;transition-duration:.26s;transition-timing-function:var(--ease-out)}.all-projects-button:hover span,.all-projects-button:focus-visible span{max-width:126px;margin-left:calc(var(--spacer) * 1.5);opacity:1;transform:translate(0);filter:blur(0)}.carousel-side-button{position:absolute;top:0;z-index:5;width:18%;height:calc(100% - 40px);padding:0;border:0;background:transparent;cursor:pointer}.carousel-side-button-left{left:0}.carousel-side-button-right{right:0}.carousel-side-button:disabled{cursor:default}.carousel-controls{width:100%;max-width:min(100%,100vw);margin-inline:auto;box-sizing:border-box}.carousel-step-button{display:none;width:40px;height:40px;min-width:40px;align-items:center;justify-content:center;border:0;border-radius:999px;padding:0;color:var(--text-color);background:transparent;cursor:pointer;font:inherit;font-size:1.05rem;line-height:1;transition-property:background-color,transform,scale,color;transition-duration:.18s;transition-timing-function:var(--ease-out)}.carousel-step-button span{display:block;transform:translateY(-.04em)}.carousel-step-button:active{scale:.96}.carousel-indicator{--indicator-width: 6px;--indicator-opacity: .58;--indicator-scale: 1;display:inline-flex;width:18px;height:24px;align-items:center;justify-content:center;border:0;padding:0;background:transparent;cursor:pointer;transition-property:width,transform,scale;transition-duration:.24s;transition-timing-function:var(--ease-out);transform-origin:center}.carousel-indicator span{position:relative;display:block;width:var(--indicator-width);height:6px;overflow:hidden;border-radius:999px;background:rgb(var(--carousel-indicator-background-color)/var(--indicator-opacity));scale:var(--indicator-scale);transition-property:width,opacity,scale,transform,background;transition-duration:.26s;transition-timing-function:var(--ease-out)}.carousel-indicator.is-near{--indicator-width: 6px;--indicator-opacity: .52;--indicator-scale: 1.16}.carousel-indicator.is-edge{--indicator-width: 6px;--indicator-opacity: .44;--indicator-scale: .5}.carousel-indicator.is-active{width:34px}.carousel-indicator.is-active span{--indicator-width: 30px;--indicator-opacity: .34;--indicator-scale: 1}.carousel-indicator.is-active span:after{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--text-color);transform:scaleX(0);transform-origin:left;animation:carousel-progress var(--carousel-progress-duration) linear forwards}.carousel-indicator:hover span,.carousel-indicator:focus-visible span{transform:scale(1.18);opacity:1}.carousel-indicator:hover span{transition-duration:.14s}.carousel-indicator:active{scale:.96}@keyframes carousel-progress{to{transform:scaleX(1)}}@media(max-width:768px){.desktop-only{display:none}.all-projects-button:hover,.all-projects-button:focus-visible{width:40px;padding-inline:0;transform:none;background:transparent}.all-projects-button:hover svg,.all-projects-button:focus-visible svg{transform:none}.all-projects-button:hover span,.all-projects-button:focus-visible span{max-width:0;margin-left:0;opacity:0;transform:translate(-8px);filter:blur(4px)}}@media(max-width:500px){.carousel-side-button{display:none}.carousel-controls{padding-inline:max(0px,env(safe-area-inset-left)) max(0px,env(safe-area-inset-right))}.carousel-step-button{display:inline-flex}.carousel-step-button:hover,.carousel-step-button:focus-visible{background:var(--background-hover-color)}.carousel-indicators{min-width:0;flex:1 1 auto}}
