/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@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-border-style:solid;--tw-leading:initial;--tw-tracking: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}}}@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;--text-xs:.75rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-6xl:3.75rem;--text-6xl--line-height:1;--tracking-tighter:-.05em;--tracking-widest:.1em;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;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;-webkit-text-decoration:inherit;-webkit-text-decoration: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{vertical-align:baseline;font-size:75%;line-height:0;position:relative}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{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}: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{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-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]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.relative{position:relative}.static{position:static}.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-0\!{margin:calc(var(--spacing) * 0)!important}.mx-1{margin-inline:calc(var(--spacing) * 1)}.mx-\[4px\]{margin-inline:4px}.mx-auto{margin-inline:auto}.my-4{margin-block:calc(var(--spacing) * 4)}.my-8{margin-block:calc(var(--spacing) * 8)}.mt-0\!{margin-top:calc(var(--spacing) * 0)!important}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-8\!{margin-top:calc(var(--spacing) * 8)!important}.mb-0\!{margin-bottom:calc(var(--spacing) * 0)!important}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-4\!{margin-bottom:calc(var(--spacing) * 4)!important}.mb-6\!{margin-bottom:calc(var(--spacing) * 6)!important}.mb-8{margin-bottom:calc(var(--spacing) * 8)}.mb-8\!{margin-bottom:calc(var(--spacing) * 8)!important}.mb-12{margin-bottom:calc(var(--spacing) * 12)}.block{display:block}.flex{display:flex}.grid{display:grid}.inline{display:inline}.h-auto{height:auto}.w-full{width:100%}.max-w-8\/10{max-width:80%}.translate-y-0\!{--tw-translate-y:calc(var(--spacing) * 0)!important;translate:var(--tw-translate-x) var(--tw-translate-y)!important}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-row\!{flex-direction:row!important}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-1{gap:calc(var(--spacing) * 1)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-4{gap:calc(var(--spacing) * 4)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.border{border-style:var(--tw-border-style);border-width:1px}.p-0\!{padding:calc(var(--spacing) * 0)!important}.pt-8{padding-top:calc(var(--spacing) * 8)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.text-center{text-align:center}.text-right{text-align:right}.text-2xl\!{font-size:var(--text-2xl)!important;line-height:var(--tw-leading,var(--text-2xl--line-height))!important}.text-6xl\!{font-size:var(--text-6xl)!important;line-height:var(--tw-leading,var(--text-6xl--line-height))!important}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-sm\!{font-size:var(--text-sm)!important;line-height:var(--tw-leading,var(--text-sm--line-height))!important}.text-xl\!{font-size:var(--text-xl)!important;line-height:var(--tw-leading,var(--text-xl--line-height))!important}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.uppercase{text-transform:uppercase}.opacity-60{opacity:.6}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blur{--tw-blur:blur(8px);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{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,)}}:root{--gap:36px;--heading:"IBM Plex Mono", var(--font-sans);--mono:"IBM Plex Mono", var(--font-mono);--sans-serif:"Hanken Grotesk", var(--font-sans);--dot:2px;--dot-color:rgb(from var(--black) r g b / 5%);--dot-gap:calc(var(--font-size) * 2);--bg:#120c1c;--surface:#1b1429;--surface-2:#271e3a;--c-border:#332a47;--border-strong:#4a3e63;--text:#f3efe9;--muted:#ada4bd;--faint:#7b7290;--violet:#ac8cff;--violet-soft:#cbb6ff;--gold:#f2c45a;--mint:#5cc09e;--rust:#df8050;--shadow:0 8px 24px -10px var(--violet)}@supports (color:color-mix(in lab, red, red)){:root{--shadow:0 8px 24px -10px color-mix(in srgb, var(--violet) 70%, transparent)}}:root{--home:calc(50ch * 2);--max-width:90vw;--width:640px}@media (prefers-color-scheme:light){:root{--bg:#f7f5f1;--surface:#fff;--surface-2:#efece6;--c-border:#e4e0d8;--border-strong:#cdc8bf;--text:#171419;--muted:#56525c;--faint:#8a8690;--violet:#6f44cf;--violet-soft:#9368ff;--gold:#9a6410;--mint:#2c8568;--rust:#b85730}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}form{background-color:rgb(from var(--surface) r g b / 60%);border:1px solid var(--c-border);border-radius:calc(var(--spacing) * 4);max-width:var(--max-width);padding:calc(var(--spacing) * 2) calc(var(--spacing) * 8) calc(var(--spacing) * 6);width:var(--home);flex-direction:column;display:flex}form div{margin:calc(var(--spacing) * 3) 0;flex-direction:column;display:flex}form input,form textarea{background-color:var(--surface-2);border:.5px solid var(--c-border);color:var(--text);font-size:var(--text-lg);padding:calc(var(--spacing) * 2) calc(var(--spacing) * 3);border-radius:8px}:is(form input,form textarea):focus,:is(form input,form textarea):focus-visible,:is(form input,form textarea):focus-within{outline:2px solid var(--border-strong)}form label{color:var(--faint);font-size:var(--text-sm);letter-spacing:var(--tracking-widest);margin-bottom:var(--spacing);text-transform:uppercase}.diff{--pos:50%;flex-direction:column;gap:14px;display:flex}.diff__pane{border:1px solid var(--c-border);border-radius:14px;position:relative;overflow:hidden}.diff__fill{width:100%}.diff__handle{display:none}.diff__tag{z-index:0;font-family:var(--mono);font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--text);background:var(--bg);font-weight:500;position:absolute;top:12px}@supports (color:color-mix(in lab, red, red)){.diff__tag{background:color-mix(in srgb, var(--bg) 72%, transparent)}}.diff__tag{border:1px solid var(--c-border);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:999px;padding:4px 10px}.diff__tag--before{left:12px}.diff__tag--after{right:12px}.diff.is-ready{aspect-ratio:16/10;border:1px solid var(--c-border);touch-action:none;-webkit-user-select:none;user-select:none;border-radius:14px;display:block;position:relative;overflow:hidden;container-type:inline-size}.is-ready .diff__pane{border:0;border-radius:0;position:absolute;inset:0}.is-ready .diff__clip{width:var(--pos)}.is-ready .diff__fill{width:100cqw;height:100%}.is-ready .diff__handle{top:0;bottom:0;left:var(--pos);background:var(--violet);cursor:ew-resize;z-index:2;border:0;width:2px;margin:0;padding:0;display:block;position:absolute;transform:translate(-1px)}.is-ready .diff__handle svg{width:calc(var(--spacing) * 6);height:auto;color:var(--faint);z-index:10;display:inline-block;position:relative;transform:translate(-44%,-1px)}.is-ready .diff__handle:before{content:"";background:var(--bg);border:1px solid var(--violet);border-radius:999px;width:36px;height:36px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 2px 12px #00000073}.is-ready .diff__handle:after{color:var(--violet);font-family:IBM Plex Mono,monospace;font-size:13px;position:absolute;top:50%;left:50%;transform:translate(-50%,-52%)}.is-ready .diff__handle:focus-visible{outline:2px solid var(--violet-soft);outline-offset:3px}@media (prefers-reduced-motion:no-preference){.is-ready .diff__handle:before{transition:transform .12s}.is-ready.diff:active .diff__handle:before{transform:translate(-50%,-50%)scale(.94)}}.gallery-layout{flex-flow:row;width:100vw;min-height:100vh;display:flex}.gallery-layout footer{position:fixed;bottom:0;left:0}.gallery-layout h1{margin-bottom:calc(var(--gap) / 2)}.gallery-layout h3{margin-bottom:0;margin-top:calc(var(--gap) * 1)}.gallery-layout menu{padding-left:calc(var(--gap) / 2);margin:0}.gallery-layout menu a{color:var(--muted);text-transform:capitalize;align-items:center;display:flex}.gallery-layout menu a:hover,.gallery-layout menu a.active{color:var(--secondary)}.gallery-layout menu li{margin-bottom:.3rem;font-size:.9rem;list-style:none}.gallery-layout menu svg{width:1rem;margin-right:.3rem;transform:translateY(1px)}.gallery-layout .content{grid-column:1/-1}.gallery-layout .couple{border-radius:calc(var(--gap) / 2);box-sizing:border-box;height:calc(var(--gap) * 8);width:calc(var(--gap) * 6);background-color:var(--bg);grid-template-columns:repeat(2, calc(var(--gap) * 3));gap:4px;display:grid;overflow:hidden}.gallery-layout .couple img{object-fit:cover;width:100%;max-width:100%;height:100%;max-height:100%;display:block}.gallery-layout .date{background-color:var(--surface);border-radius:5px;border-bottom-left-radius:calc(var(--gap) / 2);color:var(--text);opacity:.8;flex-wrap:nowrap;align-items:center;padding:.2rem .4rem .2rem .8rem;font-size:.9rem;display:flex;position:absolute;bottom:0;transform:translate(-1px,1px)}.gallery-layout .date svg{height:auto;width:var(--font-size);margin-right:.3rem}.gallery-layout .favorite{background-color:var(--surface);border:3px solid var(--c-border);color:var(--primary);border-radius:50%;justify-content:center;align-items:center;padding:.2rem;display:flex;position:absolute;top:0;right:0;transform:translate(35%,-15%)rotate(15deg)}.gallery-layout .favorite svg{height:calc(var(--gap) * .6);width:calc(var(--gap) * .6)}.gallery-layout .grid{--col:calc(var(--gap) * 6);gap:var(--gap);grid-template-columns:repeat(auto-fit, var(--col));padding:0;padding-bottom:calc(var(--gap) * 2);width:calc(100% - var(--gap));justify-content:center;margin:0 auto;display:grid}@media screen and (width<=786px){.gallery-layout .grid{box-sizing:border-box;gap:calc(var(--gap) / 2);width:calc(100vw - var(--gap) * 2);grid-template-columns:repeat(2,1fr)}}.gallery-layout .grid-container{margin-left:calc(var(--gap) * 8);flex-direction:column;flex-grow:1;justify-content:center;align-items:flex-start;display:flex}.gallery-layout .grid-container header{display:none}@media screen and (width<=1080px){.gallery-layout .grid-container{margin-left:var(--gap)}.gallery-layout .grid-container h1{margin-top:0}.gallery-layout .grid-container header{grid-column:1/-1;padding-left:0;display:block}}.gallery-layout .item{cursor:pointer;position:relative}.gallery-layout .modal{background-color:none;box-sizing:border-box;height:100vh;padding:var(--gap);flex-flow:row;justify-content:space-between;width:100vw;display:flex;position:relative}@media screen and (width<=1080px){.gallery-layout .modal{grid-template-columns:repeat(12,1fr);grid-template-rows:var(--gap) var(--gap) 1fr var(--gap);padding:calc(var(--gap) / 2);display:grid}.gallery-layout .modal menu li a img{width:calc(var(--gap) * 2);height:auto}.gallery-layout .modal .center{grid-area:3/1/auto/-1;flex-direction:column!important;display:flex!important}.gallery-layout .modal .close{right:calc(var(--gap) / 2)!important;top:calc(var(--gap) / 2)!important}.gallery-layout .modal .close svg{width:calc(var(--gap) * .8)!important}.gallery-layout .modal #full-image{justify-content:center;width:100%;display:flex}.gallery-layout .modal #full-image img{max-height:calc(100vh - var(--gap) * 8)!important;max-width:100%!important}.gallery-layout .modal #nav-next{grid-area:1/1}.gallery-layout .modal #nav-next svg{width:var(--gap)}.gallery-layout .modal #nav-prev{grid-area:1/2}.gallery-layout .modal #nav-prev svg{width:var(--gap)}}.gallery-layout .modal li{list-style:none}.gallery-layout .modal menu{gap:calc(var(--gap) / 4);margin-bottom:0;margin-top:var(--gap);flex-direction:row;justify-content:center;padding:0;display:flex}.gallery-layout .modal svg{width:calc(var(--gap) * 3)}.gallery-layout .modal .close{cursor:pointer;right:var(--gap);top:var(--gap);position:absolute}.gallery-layout .modal .close svg{width:var(--gap)}.gallery-layout .modal .center{flex-direction:column;justify-content:center;align-items:center;display:flex}.gallery-layout .modal .nav{justify-content:center;align-items:center;display:flex}.gallery-layout .modal .nav:focus-visible{outline:none}.gallery-layout .modal #full-image img{object-fit:contain;height:auto;max-height:calc(100vh - (var(--gap) * 3 + 144px));max-width:calc(100vw - var(--gap) * 10);width:auto;display:block}.gallery-layout .sidebar{background-color:var(--surface);box-sizing:border-box;height:100vh;width:calc(var(--gap) * 8);z-index:10;padding:0;transition:transform .36s ease-out;position:fixed;top:0;left:0}@media screen and (width<=1080px){.gallery-layout .sidebar{transform:translate(-100%)}.gallery-layout .sidebar header{display:none}}.gallery-layout .sidebar.show{transform:translate(0)}.gallery-layout .sidebar__content{padding-left:var(--gap)}.gallery-layout .sidebar__toggle{background-color:var(--surface);height:var(--gap);right:calc(var(--gap) * -8);top:var(--gap);width:var(--gap);z-index:10;justify-content:center;align-items:center;display:flex;position:relative}@media screen and (width>=1080px){.gallery-layout .sidebar__toggle{display:none}}.gallery-layout .sidebar__toggle input{cursor:pointer;height:var(--gap);opacity:0;width:var(--gap);z-index:10}.gallery-layout .sidebar__toggle .icon{position:absolute;left:0;transform:translate(4px)}.gallery-layout .sidebar__toggle .off{display:flex}.gallery-layout .sidebar__toggle input:checked~.off,.gallery-layout .sidebar__toggle .on{display:none}.gallery-layout .sidebar__toggle input:checked~.on{display:flex}.gallery-layout .single{border-radius:calc(var(--gap) / 2);box-sizing:border-box;height:calc(var(--gap) * 8);width:calc(var(--gap) * 6);overflow:hidden}@media screen and (width<=786px){.gallery-layout .single{height:calc(var(--gap) * 6);width:calc(50vw - var(--gap) * 1.5)}.gallery-layout .single img{width:100%;height:auto}}.gallery-layout .third{border-radius:calc(var(--gap) / 2);box-sizing:border-box;height:calc(var(--gap) * 8);width:calc(var(--gap) * 6);background-color:var(--bg);grid-template-columns:repeat(2, calc(var(--gap) * 3));grid-template-rows:repeat(2, calc(var(--gap) * 4));gap:4px;display:grid;overflow:hidden}.gallery-layout .third img:first-child{grid-row-start:span 2}.gallery-layout .third img:last-child{grid-row-start:2;grid-column-start:2}.home b{cursor:help}.home footer{bottom:calc(var(--gap) / 4);left:calc(var(--gap) / 4);position:absolute}.home .profile-picture{border:4px solid rgb(from var(--rose) r g b / 60%);border-radius:calc(var(--gap) / 2);margin-bottom:calc(var(--gap) / 2);margin-left:calc(var(--gap) / 4);transform:rotate(-2.5deg)}.home main{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:rgb(from var(--surface) r g b / 80%);border:1px solid var(--c-border);border-radius:calc(var(--spacing) * 4);box-sizing:border-box;gap:calc(var(--spacing) * 8);max-width:var(--max-width);padding:calc(var(--spacing) * 6) calc(var(--spacing) * 8);width:var(--home);grid-template-columns:1fr 4px 1fr;margin:2rem auto;display:grid}@media screen and (width<=800px){.home main{gap:calc(var(--gap) / 2);flex-direction:column;display:flex}}.home menu a{color:var(--violet)}.home ul{margin:0}.home #identity,.home #links{flex-direction:column;display:flex}:is(.home #identity,.home #links) h3{margin-top:0}.home #identity{padding-top:calc(var(--spacing) * 3);grid-column-start:1;justify-content:flex-end}.home #identity li{color:var(--muted);font-size:var(--text-sm);align-items:center;margin-bottom:.4rem;display:flex}.home #identity li svg{color:var(--violet-soft);height:calc(var(--gap) * .6);width:calc(var(--gap) * .6);margin-right:.4rem}.home #identity p{color:var(--text);margin-top:0}.home #identity ul{padding:0}.home #last-update{color:rgb(from var(--muted) r g b / 60%);height:calc(var(--gap) * .8);justify-content:flex-end;align-items:center;font-size:.8rem;display:flex}.home #last-update svg{width:1rem;height:1rem;margin-right:.4rem}.home #social-media{align-items:center;gap:calc(var(--spacing) * 2);grid-row-start:2;grid-column-start:1;display:flex}.home #social-media a{color:var(--faint);cursor:pointer}.home #social-media a:hover{color:var(--violet)}.portfolio{gap:calc(var(--spacing) * 6);grid-template-columns:repeat(2,1fr);display:grid}.portfolio__entry a{color:var(--text);text-decoration:none;transition:all .16s ease-out}.portfolio__entry img{height:auto;margin-bottom:var(--spacing);object-fit:cover;width:100%;transition:all .16s ease-out}.portfolio__entry:hover a{color:var(--violet)!important}.portfolio__entry:hover img{transform:scale(1.1)}.portfolio__entry:first-child{grid-column:1/3}.portfolio__entry:first-child .portfolio__entry__meta{align-items:center;gap:0 calc(var(--spacing) * 4);flex-flow:wrap;justify-content:space-between}.portfolio__entry__meta{flex-direction:column;display:flex}.portfolio__img{aspect-ratio:16/9;border-radius:calc(var(--spacing) * 3);margin-bottom:var(--spacing);overflow:hidden}.portfolio__tag{color:var(--faint);font-family:var(--mono);font-size:var(--text-sm)}.post-preview p{--margin:calc(var(--gap) * .1);color:var(--muted);margin-bottom:var(--margin);margin-top:var(--margin)}.prose>*{margin:0}.prose>*+*{margin-top:calc(var(--spacing) * 4)}.prose>*+h2{margin-top:calc(var(--spacing) * 8)}.prose>*+h3{margin-top:calc(var(--spacing) * 6)}.prose>*+h4,.prose>*+h5{margin-top:calc(var(--spacing) * 5)}.prose>*+h6,.prose>h2+*{margin-top:calc(var(--spacing) * 4)}.prose>h3+*{margin-top:calc(var(--spacing) * 3)}.prose>h4+*,.prose>h5+*,.prose>h6+*{margin-top:calc(var(--spacing) * 2)}.prose>*+figure,.prose>*+aside,.prose>*+table,.prose>figure+*,.prose>aside+*,.prose>table+*{margin-top:calc(var(--spacing) * 6)}.prose li+li,.prose li>ul,.prose li>ol{margin-top:calc(var(--spacing) * 2)}.prose figure>figcaption{margin-top:calc(var(--spacing) * 2);font-family:IBM Plex Mono,monospace;font-size:var(--text-xs);letter-spacing:.04em;color:var(--faint)}.resume b,.resume strong{color:rgb(from var(--highlight) r g b / 60%)}.resume h1,.resume h2,.resume h3,.resume h4,.resume h5,.resume h6{text-transform:uppercase}.resume h1{margin-top:0}.resume h3{border-bottom:2px solid var(--c-border)}.resume h4{margin-top:0}.resume h4:has(+h5){margin-bottom:.2rem}.resume h4+h5{margin-top:0}.resume h5{color:var(--muted);font-weight:200}.resume section{gap:var(--gap) calc(var(--gap) / 4);grid-template-columns:100px 8px 1fr;display:grid;position:relative}.resume .dates{color:var(--text);font-size:calc(var(--gap) * .4);background-image:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20style='isolation:isolate'%20viewBox='16%2014%2076.646%2039'%20width='76.646pt'%20height='39pt'%20%3e%3cpath%20d='%20M%2019%2014%20C%2017.338%2014%2016%2015.338%2016%2017%20L%2016%2017%20L%2016%2050%20C%2016%2051.662%2017.338%2053%2019%2053%20L%2019%2053%20L%2077%2053%20L%2092.366%2034.273%20C%2092.74%2033.817%2092.74%2033.183%2092.366%2032.727%20L%2092.366%2032.727%20L%2077%2014%20L%2019%2014%20Z%20'%20fill-rule='evenodd'%20fill='rgb(58,47,82)'%20/%3e%3c/svg%3e");background-position:50%;background-repeat:no-repeat;background-size:contain;align-items:center;height:50px;padding-left:8px;padding-right:16px;display:flex;transform:translate(8px)}.resume .dot{background-color:var(--border-strong);border-radius:50%;width:8px;height:8px;margin-top:22px}.resume .vr{background-color:var(--border-strong);height:100%;left:calc(103px + var(--gap) / 4);width:2px;position:absolute}.resume #download{margin-top:calc(var(--gap) * 1.5);justify-content:center;align-items:center;display:flex}.resume #download a{background-color:var(--surface);border:1px solid var(--c-border);border-radius:var(--gap);color:var(--text-muted);font-size:var(--h1);align-items:center;padding:.8rem 1rem;display:flex}.resume #download a:hover{background-color:var(--surface-2);text-decoration:none}.resume #download svg{height:var(--h1);width:var(--h1);margin-left:.4rem}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}.fade{view-transition-name:fade}::view-transition-old(fade){animation:.18s ease-in both fade-out}::view-transition-new(fade){animation:.18s ease-out both fade-in}a{color:var(--violet-soft);transform:all .16s ease-out}a:hover{color:var(--violet);text-decoration:underline}a.title{font-size:var(--h4)}a svg{height:var(--text-xl);width:auto;display:inline-block;transform:translateY(-2px)}b,strong{color:var(--gold);font-weight:500}body{box-sizing:border-box;color:var(--text);font-family:var(--sans-serif);font-size:var(--text-lg);min-height:100vh;margin:0;font-weight:400;position:relative}dialog{box-sizing:border-box;z-index:1000000;background:0 0;border:none;width:100vw;max-width:none;height:100vh;max-height:none;margin:0;padding:0}dialog::backdrop{background-color:rgb(from var(--bg) r g b / 90%);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}figcaption{color:var(--muted)}footer{background-color:rgb(from var(--surface) r g b / 40%);color:var(--muted);margin-top:calc(var(--spacing) * 4);padding:calc(var(--spacing) * 8) 0 calc(var(--spacing) * 16)}footer>div{max-width:var(--max-width);width:var(--width)}footer a{color:var(--muted);font-family:var(--mono);font-size:var(--text-sm);letter-spacing:var(--tracking-widest);text-transform:uppercase;text-decoration:none}footer a:hover{text-decoration:underline;color:var(--violet)!important}footer menu{gap:var(--spacing);flex-flow:wrap;display:flex}footer p{color:var(--faint);font-size:var(--text-sm)}footer svg{width:calc(var(--spacing) * 4);display:inline-block;transform:translateY(-1px)}footer .social_media{color:var(--faint);width:calc(var(--spacing) * 6)}footer .social_media svg{height:calc(var(--spacing) * 6);width:auto}@media (prefers-color-scheme:light){footer{background-color:var(--surface-2)}}h1,h2,h3,h4,h5,h6{font-family:var(--heading);font-weight:500}:is(h1,h2,h3,h4,h5,h6)+p{margin-top:0}h1{color:var(--violet);font-size:var(--text-3xl);letter-spacing:var(--tracking-tighter)}h1:has(+h2){margin-bottom:.2rem}h1+h2{margin-top:0}h2{color:var(--violet-soft);font-size:var(--text-xl);margin:calc(var(--spacing) * 2) 0 calc(var(--spacing) * 1);font-weight:500}h3{color:var(--muted);font-size:var(--text-lg);margin:calc(var(--spacing) * 6) 0 calc(var(--spacing) * 1);font-weight:600}h4{color:var(--faint);font-size:var(--text-base);letter-spacing:.01em;margin:calc(var(--spacing) * 5) 0 calc(var(--spacing) * 1);font-weight:700}h5{color:var(--muted);font-size:var(--text-sm);letter-spacing:.01em;margin:calc(var(--spacing) * 5) 0 0;text-transform:uppercase}h6{color:var(--faint);font-size:var(--text-xs);letter-spacing:.08rem;margin:calc(var(--spacing) * 4) 0 0;text-transform:uppercase;font-weight:500}header{justify-content:space-between;align-items:center;padding:1rem;display:flex}header a{color:var(--muted);align-items:center;display:flex}header svg{height:calc(var(--gap) * .6);width:calc(var(--gap) * .6);margin-right:.2rem}hr{border:1px solid var(--c-border)}html{background-color:var(--bg);scrollbar-color:var(--c-border) var(--bg)}li{line-height:1.55}main{width:70ch;max-width:90vw;margin:0 auto}main img{object-fit:contain;max-width:100%;height:auto}header menu{flex-direction:row;align-items:center;gap:.3rem;margin:0;padding:0;display:flex}header menu a{color:var(--faint);font-family:var(--mono);font-size:var(--text-sm);text-transform:capitalize;text-decoration:none}header menu a:hover{text-decoration:underline}header menu li{list-style:none}img{border-radius:calc(var(--spacing) * 3)}menu.siblings{grid-template-columns:1fr 1fr;display:grid}menu.siblings a{font-size:var(--text-lg);text-decoration:none}menu.siblings img{transition:all .16s ease-out}menu.siblings label{color:var(--faint);font-size:var(--text-sm);text-transform:uppercase}menu.siblings p{color:var(--text);transition:all .16s ease-out}menu.siblings .img{aspect-ratio:288/162;border-radius:calc(var(--spacing) * 3);overflow:hidden}menu.siblings .sibling{will-change:transform;transition:all .16s ease-out}menu.siblings .sibling.next{flex-direction:column;align-items:flex-end;display:flex}menu.siblings .sibling:hover img{transform:scale(1.1)}menu.siblings .sibling:hover p{color:var(--violet)}p{color:var(--text);font-size:var(--text-lg);margin:calc(var(--spacing) * 2) 0}@media (width<=768px){p{font-size:var(--tetx-base)}}#content{opacity:1;will-change:opacity;flex-direction:column;min-height:100vh;transition:opacity .16s cubic-bezier(.22,1,.36,1);display:flex;transform:translateY(0)}#content.htmx-added,#content.htmx-settling,#content.htmx-swapping{opacity:0;transition:opacity .16s cubic-bezier(.55,0,1,.45);transform:translateY(0)}#vanta{z-index:-1;width:100vw;height:100%;min-height:100vh;position:fixed;top:0;left:0}.badge{background-color:var(--surface);border:1px solid var(--c-border);color:var(--muted);border-radius:5px;padding:.1rem .2rem;font-size:.9rem}.btn{background-color:var(--violet-soft);border:2px solid var(--violet-soft);color:var(--bg);cursor:pointer;padding:calc(var(--spacing) * 2) calc(var(--spacing) * 4);border-radius:999px;font-weight:600;transition:all .33s;text-decoration:none!important}.btn:hover{background-color:var(--violet);border-color:var(--violet);color:var(--bg)}.btn.action{aspect-ratio:1;color:var(--faint);cursor:pointer;width:calc(var(--spacing) * 6);background-color:#0000;border:none;justify-content:center;align-items:center;padding:0;display:flex}.btn.action svg{height:inherit;width:inherit}.btn.primary{border-color:var(--gold);color:var(--gold);background:0 0}.btn.primary:hover{color:var(--bg);background-color:var(--gold)}.btn.secondary{color:var(--violet-soft);background:0 0}.btn.secondary:hover{border-color:var(--violet);color:var(--violet)}.c-container{justify-content:center;align-items:center;width:100vw;min-height:100vh;display:flex}.c-container main{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:rgb(from var(--surface) r g b / 80%);border:1px solid var(--c-border);border-radius:calc(var(--spacing) * 4);box-sizing:border-box;max-width:var(--max-width);padding:calc(var(--spacing) * 6) calc(var(--spacing) * 8)}.copyright{color:rgb(from var(--secondary) r g b / 60%);opacity:.6;align-items:center;font-size:.8rem;display:flex;bottom:1rem;left:1rem}.copyright svg{width:.8rem;height:.8rem}.cta{background-color:var(--surface-2);border:1px solid var(--c-border);border-radius:calc(var(--spacing) * 2);align-items:center;gap:calc(var(--spacing) * 2);margin-top:calc(var(--spacing) * 8);max-width:100%;padding:calc(var(--spacing) * 6) calc(var(--spacing) * 4);flex-wrap:wrap;justify-content:space-between;display:flex}.embed{flex-direction:column;justify-content:center;align-items:center;max-width:100%;display:flex}.faint{color:var(--faint)}.gold{color:var(--gold)}.icon svg{height:calc(var(--gap) * .8);width:calc(var(--gap) * .8);display:inline-block}.join{gap:0!important}.join>:not(:last-child){border-top-right-radius:0!important;border-bottom-right-radius:0!important}.join>:not(:first-child){border-top-left-radius:0!important;border-bottom-left-radius:0!important}.label{font-family:var(--mono);font-size:var(--text-sm);letter-spacing:var(--tracking-widest);text-transform:uppercase}.leaf{max-width:var(--max-width);padding:calc(var(--spacing) * 2) 0 calc(var(--spacing) * 8);width:var(--width);flex-grow:1;margin:0 auto}.link-list li{list-style-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='rgba(237,232,250,1)'%3E%3Cpath fill='none' d='M0 0h24v24H0z'%3E%3C/path%3E%3Cpath d='M16.1716 10.9999L10.8076 5.63589L12.2218 4.22168L20 11.9999L12.2218 19.778L10.8076 18.3638L16.1716 12.9999H4V10.9999H16.1716Z'%3E%3C/path%3E%3C/svg%3E")}.link-list li:has(+li){margin-bottom:calc(var(--gap) / 4)}.link-list p{color:var(--muted);margin:0}.loader{justify-content:center;align-items:center;display:flex}.loader svg{color:var(--muted);width:calc(var(--gap) * 2);animation:1s ease-in-out infinite rotate}.vr{background-color:var(--c-border);width:1px;height:100%}@media screen and (width<=800px){.vr{width:100%;height:1.5px}}.muted{color:var(--muted)}.tag{border:1.5px solid var(--c-border);border-radius:calc(var(--spacing) * 4);color:var(--muted);cursor:pointer;font-family:var(--mono);font-size:var(--text-sm);margin-right:calc(var(--spacing) * 3);padding:var(--spacing) calc(var(--spacing) * 3);text-decoration:none}.tag:hover{border-color:var(--border-strong);color:var(--text)}.violet{color:var(--violet)!important}@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-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-tracking{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:0}@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}
