.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}.icon[data-astro-cid-ccg5yoga]{font-family:var(--font-remixicon);font-size:var(--icon-size,1rem);font-variant:normal;font-style:normal;font-weight:400;line-height:inherit;letter-spacing:normal;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-shrink:0;display:inline-block}.icon[data-astro-cid-ccg5yoga][data-icon=arrow-left]:before{content:""}.icon[data-astro-cid-ccg5yoga][data-icon=arrow-right]:before{content:""}.icon[data-astro-cid-ccg5yoga][data-icon=chevron-down]:before{content:""}.icon[data-astro-cid-ccg5yoga][data-icon=chevron-up]:before{content:""}.icon[data-astro-cid-ccg5yoga][data-icon=linkedin]:before{content:""}.icon[data-astro-cid-ccg5yoga][data-icon=bluesky]:before{content:""}.icon[data-astro-cid-ccg5yoga][data-icon=github]:before{content:""}.icon[data-astro-cid-ccg5yoga][data-icon=mastodon]:before{content:""}.icon[data-astro-cid-ccg5yoga][data-icon=slides]:before{content:""}.icon[data-astro-cid-ccg5yoga][data-icon=video]:before{content:""}.header[data-astro-cid-nen7h5rs]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex;& a{text-decoration:none}& svg{width:1em}}.btn[data-astro-cid-nen7h5rs]{background:var(--dark-color);padding:16px;line-height:1;text-decoration:none}ul[data-astro-cid-nen7h5rs]{flex-wrap:wrap;align-items:center;margin:0;padding:0;list-style:none;display:flex;& li{display:flex}&:not(:has(.btn)){gap:var(--grid-padding);& li:last-child{margin-inline-end:var(--grid-padding)}}}a[data-astro-cid-nen7h5rs]:is([aria-current=page],[href*=cal\.com]){color:var(--accent-color)}.square[data-astro-cid-5sipjxyl]{view-transition-name:square;aspect-ratio:1;isolation:isolate;justify-content:center;align-items:center;width:100%;display:flex;overflow:hidden;&>[data-astro-cid-5sipjxyl]{min-width:0;max-width:100%;max-height:100%}& :where(img,video){max-width:100%;max-height:100%}}@media (width<=800px){.square[data-astro-cid-5sipjxyl]{display:none}}@property --t{syntax:"<length-percentage>";inherits:true;initial-value:0}@keyframes t{0%{--t:var(--reveal-rise)}}.grid[data-astro-cid-yvqpge4l]{gap:var(--grid-gap);grid-template-rows:auto 1fr;grid-template-columns:auto 1fr;display:grid;&>[data-astro-cid-yvqpge4l]{transition:transform 1s}& :where(:first-child){margin-block-start:0}& :where(:last-child){margin-block-end:0}}.identity[data-astro-cid-yvqpge4l]{view-transition-name:identity;aspect-ratio:1;background-image:var(--identity-backdrop,none), var(--grid-bg);background-position:200% 200%,50%;background-repeat:no-repeat,repeat;background-size:80%,cover;background-attachment:local,fixed;flex-direction:column;grid-column:1/-1;justify-content:center;display:flex;& h1{text-transform:uppercase;letter-spacing:.5em;text-wrap:pretty;max-width:60ch;font-size:.6em;font-weight:400}& h2{font-size:min(3.5em,12vw);font-family:var(--font-kentish);text-transform:lowercase;--reveal-rise:1.7em;--reveal-drop:.4em;--reveal-side:.2em;margin-block:8px;margin-inline:calc(-1 * var(--reveal-side));translate:0 var(--t);animation:t .4s var(--vt-ease) var(--vt-sequence) both;font-weight:400;line-height:1.05;& span{box-decoration-break:clone;padding-block-end:var(--reveal-drop);padding-inline:var(--reveal-side);background:linear-gradient(0deg, #0000 var(--t), var(--grid-fg) 0) 0 0 / 100% var(--reveal-rise) no-repeat text;color:#0000}}& a:hover{color:currentColor}}.identity[data-astro-cid-yvqpge4l] h2[data-astro-cid-yvqpge4l],.identity[data-astro-cid-yvqpge4l] p[data-astro-cid-yvqpge4l]{white-space:pre-line;text-wrap:pretty;max-width:30ch}.metric[data-astro-cid-yvqpge4l]{view-transition-name:metric;flex-direction:column;justify-content:center;align-items:center;min-width:5em;line-height:1;display:flex;& output{font-size:2em;font-family:var(--font-kentish)}& span{text-transform:uppercase;margin-block-start:8px;font-size:.8em;font-weight:bolder}}.intro[data-astro-cid-yvqpge4l]{view-transition-name:intro;text-wrap:pretty;flex-direction:column;justify-content:center;font-size:.8em;display:flex}@media (prefers-reduced-motion:reduce){.identity[data-astro-cid-yvqpge4l] h2[data-astro-cid-yvqpge4l]{animation:none}}.grid[data-astro-cid-yvqpge4l]:not(:has(.metric)) .intro[data-astro-cid-yvqpge4l]{grid-column:1/-1}.cta[data-astro-cid-yvqpge4l]{gap:var(--grid-padding);flex-wrap:wrap;margin-block-start:var(--grid-padding);display:flex}ul[data-astro-cid-rda6bqd5]{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}li[data-astro-cid-rda6bqd5] ul[data-astro-cid-rda6bqd5]{margin-block-start:8px;padding-inline-start:var(--grid-padding);font-size:.9em}summary[data-astro-cid-7k3pnqyz]{cursor:default;pointer-events:none;justify-content:space-between;align-items:center;gap:1ch;display:flex}summary[data-astro-cid-7k3pnqyz] h2[data-astro-cid-7k3pnqyz]{margin-block:.83em}.toc-indicator[data-astro-cid-7k3pnqyz]{transition:transform .2s;display:none}.toc[data-astro-cid-7k3pnqyz]::details-content{content-visibility:visible;height:auto}@media (width<=800px){summary[data-astro-cid-7k3pnqyz]{cursor:pointer;pointer-events:auto}.toc-indicator[data-astro-cid-7k3pnqyz]{display:inline-flex}.toc[data-astro-cid-7k3pnqyz][open] .toc-indicator[data-astro-cid-7k3pnqyz]{transform:rotate(180deg)}.toc[data-astro-cid-7k3pnqyz]::details-content{content-visibility:hidden;height:0}.toc[data-astro-cid-7k3pnqyz][open]::details-content{content-visibility:visible;height:auto}}:root{--grid-padding:16px;--grid-gap:2px;--grid-bg:linear-gradient(135deg, #501111, #951111);--grid-fg:#f1f1f1;--dash-bg:linear-gradient(135deg, #0f0f0f, #0c0c0c);--dash-fg:#a4a4a4;--accent-color:#ff4b4b;--dark-color:black;--vt-duration:.3s;--vt-stagger:50ms;--vt-enter:.2s;--vt-ease:cubic-bezier(.3, .8, .4, 1);--vt-sequence:calc(var(--vt-enter) + .4 * var(--vt-stagger) + var(--vt-duration));--vt-slide-inline:50vw;--vt-slide-block:150vh}*,:before,:after{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;interpolate-size:allow-keywords;color-scheme:dark;color:var(--dash-fg);background-color:#000;background-image:url(/_astro/topo.QylJeYhf.svg);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;overflow-x:hidden}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{min-height:100vh;font-family:var(--font-raleway);background-color:inherit;gap:var(--grid-gap);grid-template:"nav contact""square grid""main toc"1fr/55% auto;max-width:1200px;margin:0 auto;font-weight:500;line-height:1.5;display:grid}@media (width<=800px){body{flex-direction:column;display:flex}}body>.nav{grid-area:nav}body>.contact{grid-area:contact}body>.square{grid-area:square}body>.grid{grid-area:grid}body>.main{grid-area:main}body>.toc{grid-area:toc}.dash-surface,.grid-surface{background-attachment:fixed}.dash-surface{background-image:var(--dash-bg);color:var(--dash-fg)}.grid-surface{background-image:var(--grid-bg);color:var(--grid-fg);contain:paint}body>:is(.nav,.contact,.main,.toc),.grid>*{padding:var(--grid-padding)}.skip-link{top:var(--grid-gap);left:var(--grid-gap);z-index:1;padding:var(--grid-padding);transform:translateY(calc(-100% - var(--grid-gap)));position:fixed}.skip-link:focus{transform:translateY(0)}@media (prefers-reduced-motion:no-preference){.skip-link{transition:transform var(--vt-duration) var(--vt-ease)}}a{color:currentColor;text-underline-offset:.12em}:where(ul){padding-left:1em;& li::marker{color:var(--accent-color)}}strong,a:hover{color:var(--accent-color)}img{max-width:100%;height:auto;display:block}blockquote{border-left:4px solid var(--accent-color);margin:16px 0;padding-left:16px}table{text-align:left;border-collapse:collapse;border:1px solid;width:100%}th,td{vertical-align:top;border:1px solid;padding:8px 16px}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}details::details-content{height:0;transition:height .5s ease, content-visibility .5s ease allow-discrete;overflow:clip}details[open]::details-content{height:auto}@keyframes slide-from-left{0%{transform:translateX(calc(-100% - var(--vt-slide-inline)))}}@keyframes slide-from-right{0%{transform:translateX(calc(100% + var(--vt-slide-inline)))}}@keyframes slide-from-top{0%{transform:translateY(calc(-100% - var(--vt-slide-block)))}}@keyframes slide-from-bottom{0%{transform:translateY(calc(100% + var(--vt-slide-block)))}}::view-transition-old(square),::view-transition-new(square),::view-transition-old(identity),::view-transition-new(identity),::view-transition-old(metric),::view-transition-new(metric),::view-transition-old(intro),::view-transition-new(intro){animation-duration:var(--vt-duration);animation-timing-function:var(--vt-ease);animation-fill-mode:both}::view-transition-group(square),::view-transition-group(identity),::view-transition-group(metric),::view-transition-group(intro){animation-duration:var(--vt-sequence)}::view-transition-new(square){animation-name:slide-from-left;animation-delay:var(--vt-enter)}::view-transition-new(identity){animation-name:slide-from-top;animation-delay:calc(var(--vt-enter) + 1 * var(--vt-stagger))}::view-transition-new(metric){animation-name:slide-from-bottom;animation-delay:calc(var(--vt-enter) + 2 * var(--vt-stagger))}::view-transition-new(intro){animation-name:slide-from-right;animation-delay:calc(var(--vt-enter) + 3 * var(--vt-stagger))}::view-transition-old(intro){animation-name:slide-from-right;animation-direction:reverse;animation-delay:0s}::view-transition-old(metric){animation-name:slide-from-bottom;animation-direction:reverse;animation-delay:calc(1 * var(--vt-stagger))}::view-transition-old(identity){animation-name:slide-from-top;animation-direction:reverse;animation-delay:calc(2 * var(--vt-stagger))}::view-transition-old(square){animation-name:slide-from-left;animation-direction:reverse;animation-delay:calc(3 * var(--vt-stagger))}@media (prefers-reduced-motion:reduce){::view-transition-group(square),::view-transition-group(identity),::view-transition-group(metric),::view-transition-group(intro),::view-transition-old(square),::view-transition-new(square),::view-transition-old(identity),::view-transition-new(identity),::view-transition-old(metric),::view-transition-new(metric),::view-transition-old(intro),::view-transition-new(intro){animation:none}}
