@import "https://fonts.googleapis.com/css2?family=MuseoModerno:wght@300;400;500;600;700;800&family=Mynerve&display=swap";@layer components;@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-border-style:solid;--tw-font-weight: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;--container-7xl:80rem;--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--text-6xl:3.75rem;--text-6xl--line-height:1;--font-weight-medium:500;--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 utilities{.fixed{position:fixed}.top-0{top:0}.left-0{left:0}.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}}.mx-auto{margin-inline:auto}.flex{display:flex}.grid{display:grid}.hidden{display:none}.min-h-screen{min-height:100vh}.w-\[80vw\]{width:80vw}.w-full{width:100%}.max-w-7xl{max-width:var(--container-7xl)}.max-w-\[80vw\]{max-width:80vw}.grow{flex-grow:1}.scroll-mt-10{scroll-margin-top:calc(var(--spacing) * 10)}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-4{gap:calc(var(--spacing) * 4)}.border{border-style:var(--tw-border-style);border-width:1px}.bg-\[var\(--color-page\)\]{background-color:var(--color-page)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-10{padding-inline:calc(var(--spacing) * 10)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-20{padding-block:calc(var(--spacing) * 20)}.pt-30{padding-top:calc(var(--spacing) * 30)}.pb-12{padding-bottom:calc(var(--spacing) * 12)}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.text-\[var\(--color-ink\)\]{color:var(--color-ink)}.underline{text-decoration-line:underline}@media not all and (width>=600px){.max-\[600px\]\:hidden{display:none}.max-\[600px\]\:inline{display:inline}.max-\[600px\]\:scroll-mt-20{scroll-margin-top:calc(var(--spacing) * 20)}.max-\[600px\]\:py-15{padding-block:calc(var(--spacing) * 15)}.max-\[600px\]\:py-20{padding-block:calc(var(--spacing) * 20)}.max-\[600px\]\:py-24{padding-block:calc(var(--spacing) * 24)}}@media not all and (width>=450px){.max-\[450px\]\:text-\[12px\]{font-size:12px}}@media (width>=40rem){.sm\:list-item{display:list-item}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:text-6xl{font-size:var(--text-6xl);line-height:var(--tw-leading,var(--text-6xl--line-height))}}@media (width>=64rem){.lg\:px-8{padding-inline:calc(var(--spacing) * 8)}}}:root{--color-page:#252535;--color-page-overlay:#091322bd;--color-page-overlay-soft:#0913227a;--color-paper:#f6f3ef;--color-ink:#15151b;--color-page-heading:#f7f4f0;--color-muted:#6f7078;--color-screen:#1c4348;--color-sketch-border:#3395a6;--color-web:#5da2a5;--color-web-light:#8fbec0;--color-ux:#c29176;--color-ux-light:#dbad94;--color-visual-art:#9170ad;--color-art-light:#cca9e9;--color-general:#6ccddd;--font-hand:"Mynerve", "Comic Sans MS", "Bradley Hand", "Segoe Print", cursive;--font-body:"MuseoModerno", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--radius-card:12px;--shadow-sketch:0 18px 40px #00000038;--texture-opacity:.2;--texture-size:58rem auto}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;font-family:var(--font-body);background:var(--color-page);margin:0;overflow-x:hidden}.site-shell{isolation:isolate;position:relative}.site-shell:before,.site-shell:after{z-index:-2;content:"";pointer-events:none;position:fixed;inset:0}.site-shell:before{background-image:url(/assets/code-texture-EeccoQ3s.png);background-position:0 0;background-repeat:repeat;background-size:var(--texture-size);opacity:var(--texture-opacity);filter:saturate(.86)contrast(1.08)}.site-shell:after{z-index:-1;background:radial-gradient(circle at 20% 10%, #3395a638, transparent 28rem), linear-gradient(135deg, var(--color-page-overlay), var(--color-page-overlay-soft) 46%, var(--color-page-overlay) 100%);animation:14s ease-in-out infinite alternate page-overlay-breathe}.site-shell>main{z-index:1;position:relative}.site-shell>header{z-index:50;background:#5da1a532;border:2px solid #5da1a5bf;border-radius:90px;justify-self:center;width:80%;margin:0 auto;position:fixed;top:1.2em;left:50%;transform:translate(-50%)}@media (width<=700px){.site-shell>header{width:90%;padding:.5rem .75rem}}@keyframes page-overlay-breathe{0%{opacity:.86;background-position:0 0,0 0}to{opacity:1;background-position:0 0,11rem 7rem}}a{color:inherit;text-decoration:none}button{font:inherit}.site-logo{flex:none;width:clamp(8.5rem,18vw,13.5rem);display:inline-flex}.site-logo__image{width:100%;height:auto;display:block}.site-logo__image--dark{display:block}header nav{color:var(--color-page-heading)}.site-logo__image--light{display:none}.font-hand{font-family:var(--font-hand)}[data-category=web-development]{--category-color:var(--color-web);--category-light:var(--color-web-light)}[data-category=ux-ui-design]{--category-color:var(--color-ux);--category-light:var(--color-ux-light)}[data-category=visual-art]{--category-color:var(--color-visual-art);--category-light:var(--color-art-light)}[data-category=general]{--category-color:var(--color-general);--category-light:var(--color-general)}.sketch-tab,.sketch-chip{background:var(--color-paper);border:0;border-radius:999px}@supports (color:color-mix(in lab, red, red)){.sketch-tab,.sketch-chip{background:color-mix(in srgb, var(--color-paper) 82%, transparent)}}.sketch-tab,.sketch-chip{color:var(--color-ink);line-height:1}.sketch-tab{cursor:pointer;min-height:2.1rem;padding:.45rem 1rem}@media (width<=700px){.sketch-tab{min-height:.2rem;padding:.4rem .8rem;font-size:.85rem}}.sketch-chip{align-items:center;min-height:2.25rem;padding:.5rem 1rem;display:inline-flex}.project-filters{width:min(100%, var(--project-content-max-width));flex-wrap:wrap;justify-content:flex-start;gap:.55rem;margin:4rem auto 0;display:flex}@media (width<=700px){.project-filters{margin:2rem auto 0}}.projects-section{--project-content-max-width:60rem;width:90vw;min-height:auto}.projects-section h2,.skills-section h2{color:var(--color-page-heading)}.project-filters__tab{background:var(--category-light,var(--color-paper));opacity:.78;border:2px solid #0000;transition:transform .14s,opacity .14s,border-color .14s,box-shadow .14s}.project-filters__tab[aria-selected=true]{opacity:1;border-color:var(--category-light);transform:translateY(-.08rem)}@supports (color:color-mix(in lab, red, red)){.project-filters__tab[aria-selected=true]{border-color:color-mix(in srgb, var(--category-light) 78%, white 22%)}}.project-filters__tab[aria-selected=true]{box-shadow:0 0 0 2px var(--category-light)}@supports (color:color-mix(in lab, red, red)){.project-filters__tab[aria-selected=true]{box-shadow:0 0 0 2px color-mix(in srgb, var(--category-light) 26%, transparent)}}.project-filters__tab[aria-selected=true]{background:var(--category-light)}@supports (color:color-mix(in lab, red, red)){.project-filters__tab[aria-selected=true]{background:color-mix(in srgb, var(--category-light) 90%, white 8%)}}.project-stack{place-items:center;gap:.2rem;margin-top:2rem;display:grid}.project-stack__cards{width:min(100%, var(--project-content-max-width));touch-action:pan-y;height:25rem;margin-top:.4rem;transition:opacity .22s,transform .22s;position:relative}.mockup-marquee-section{border:none;width:80vw;margin:6.5rem 0 4rem;position:relative;left:50%;transform:translate(-50%)}@media (width<=700px){.mockup-marquee-section{width:90vw;margin-top:2rem}}.mockup-marquee__description{max-width:34rem;color:var(--color-ink);margin:0}@supports (color:color-mix(in lab, red, red)){.mockup-marquee__description{color:color-mix(in srgb, var(--color-ink) 74%, transparent)}}.mockup-marquee__viewport{padding:1rem 0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 6% 94%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 6% 94%,#0000 100%)}.mockup-marquee__track{will-change:transform;gap:1rem;width:max-content;padding:0 .5rem;animation:26s linear infinite mockup-marquee-scroll;display:flex}.mockup-marquee__viewport:hover .mockup-marquee__track{animation-play-state:paused}.mockup-marquee__card{cursor:pointer;flex:none;width:min(10rem,72vw);display:block}.mockup-marquee__article{transition:transform .18s,box-shadow .18s,border-color .18s;position:relative;overflow:hidden;box-shadow:0 12px 30px #09132214}.mockup-marquee__card:hover .mockup-marquee__article,.mockup-marquee__card:focus-visible .mockup-marquee__article{border-color:var(--color-page-heading);transform:translateY(-.2rem)scale(1.01)}@supports (color:color-mix(in lab, red, red)){.mockup-marquee__card:hover .mockup-marquee__article,.mockup-marquee__card:focus-visible .mockup-marquee__article{border-color:color-mix(in srgb, var(--color-page-heading) 38%, transparent)}}.mockup-marquee__card:hover .mockup-marquee__article,.mockup-marquee__card:focus-visible .mockup-marquee__article{box-shadow:0 16px 34px #09132224}.mockup-marquee__image{object-fit:cover;width:100%;height:auto;display:block}.mockup-marquee__meta{justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem .9rem .9rem;font-size:.82rem;display:flex}.mockup-marquee__title{color:var(--color-ink);font-weight:700}.mockup-marquee__hint{color:var(--color-ink)}@supports (color:color-mix(in lab, red, red)){.mockup-marquee__hint{color:color-mix(in srgb, var(--color-ink) 62%, transparent)}}.mockup-marquee__hint{text-transform:uppercase;letter-spacing:.12em;font-size:.7rem}@keyframes mockup-marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (width<=700px){.mockup-marquee__viewport{padding:.8rem 0}.mockup-marquee__card{width:min(8rem,72vw)}}.project-card{--card-color:var(--color-web);--card-border-color:var(--color-web-light)}@supports (color:color-mix(in lab, red, red)){.project-card{--card-border-color:color-mix(in srgb, var(--color-web-light) 76%, white 24%)}}.project-card{isolation:isolate;transition:opacity .24s,transform .24s;position:absolute;inset:0}.project-card[data-category=web-development]{--card-color:var(--category-color);--card-border-color:var(--category-light)}@supports (color:color-mix(in lab, red, red)){.project-card[data-category=web-development]{--card-border-color:color-mix(in srgb, var(--category-light) 76%, white 24%)}}.project-card[data-category=ux-ui-design]{--card-color:var(--category-color);--card-border-color:var(--category-light)}@supports (color:color-mix(in lab, red, red)){.project-card[data-category=ux-ui-design]{--card-border-color:color-mix(in srgb, var(--category-light) 76%, white 24%)}}.project-card[data-category=visual-art]{--card-color:var(--category-color);--card-border-color:var(--category-light)}@supports (color:color-mix(in lab, red, red)){.project-card[data-category=visual-art]{--card-border-color:color-mix(in srgb, var(--category-light) 76%, white 24%)}}.project-card__border,.project-card__body{border-radius:var(--radius-card)}.project-card__border{z-index:3;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.project-card__body{z-index:1;background:linear-gradient(135deg, var(--card-color), var(--card-color));grid-template-columns:minmax(14rem,.85fr) minmax(0,1.15fr);gap:.35rem 1rem;width:100%;height:100%;min-height:0;margin-top:2rem;padding:1.5em;display:grid;position:relative;overflow:auto}@supports (color:color-mix(in lab, red, red)){.project-card__body{background:linear-gradient(135deg, color-mix(in srgb, var(--card-color) 92%, white 4%), color-mix(in srgb, var(--card-color) 78%, var(--color-paper) 12%))}}.project-card__body{box-shadow:var(--shadow-sketch)}.project-card--active .project-card__body{border:2px solid var(--card-border-color)}.project-card--active{z-index:5;animation:.26s project-card-enter}.project-card--back{z-index:calc(4 - var(--stack-offset));transform:translate(calc(var(--stack-offset) * .85rem), calc(var(--stack-offset) * -1.05rem)) scale(calc(1 - var(--stack-offset) * .018));pointer-events:none}.project-card--back .project-card__body{border:2px solid var(--card-border-color);background:var(--card-color)}@supports (color:color-mix(in lab, red, red)){.project-card--back .project-card__body{background:color-mix(in srgb, var(--card-color) 70%, var(--color-paper) 20%)}}.project-card--back .project-card__body{box-shadow:none}.project-card__content{flex-direction:column;justify-content:center;align-items:flex-start;gap:1em;min-width:0;display:flex}.project-card h3{margin:0;font-size:1.65rem;line-height:1}.project-card p{place-self:end;max-width:none;margin:.75rem 0 0;font-size:.95rem;line-height:1.45}.project-card__tags{flex-wrap:wrap;gap:.4rem;margin:.9rem 0 0;padding:0;list-style:none;display:flex}.project-card__tags li,.project-card__links a{border-radius:999px;line-height:1}.project-card__tags li{--tech-tag-color:var(--color-general);border:1.5px solid var(--tech-tag-color)}@supports (color:color-mix(in lab, red, red)){.project-card__tags li{border:1.5px solid color-mix(in srgb, var(--tech-tag-color) 70%, var(--color-ink) 12%)}}.project-card__tags li{background:var(--tech-tag-color)}@supports (color:color-mix(in lab, red, red)){.project-card__tags li{background:color-mix(in srgb, var(--tech-tag-color) 58%, white 24%)}}.project-card__tags li{padding:.4rem .58rem;font-size:.78rem}.project-card__tags li[data-tech-category=web-development]{--tech-tag-color:var(--color-web-light)}.project-card__tags li[data-tech-category=ux-ui-design]{--tech-tag-color:var(--color-ux-light)}.project-card__tags li[data-tech-category=visual-art]{--tech-tag-color:var(--color-art-light)}.project-card__links a{border:1.5px solid var(--color-ink)}@supports (color:color-mix(in lab, red, red)){.project-card__links a{border:1.5px solid color-mix(in srgb, var(--color-ink) 34%, transparent)}}.project-card__links a{background:var(--category-light)}@supports (color:color-mix(in lab, red, red)){.project-card__links a{background:color-mix(in srgb, var(--category-light) 78%, white 10%)}}.project-card__links{flex-wrap:wrap;gap:.5rem;margin-top:.9rem;display:flex}.project-card__links a{text-align:center;min-width:5rem;padding:.45rem .8rem;font-weight:800}.project-card__media{align-self:center;min-width:0;margin:0;position:relative}.project-card__media img{aspect-ratio:16/10;object-fit:contain;border-radius:6px;width:100%;max-height:14rem;animation:.26s project-gallery-fade;display:block}.project-card__dots{gap:.45rem;display:flex;position:absolute;bottom:.65rem;left:50%;transform:translate(-50%)}.project-card__dots button{background:var(--color-ink);border:0;border-radius:999px;width:.72rem;height:.72rem;padding:0}@supports (color:color-mix(in lab, red, red)){.project-card__dots button{background:color-mix(in srgb, var(--color-ink) 28%, white 32%)}}.project-card__dots button{cursor:pointer}.project-card__dots button[aria-pressed=true]{background:var(--color-sketch-border);box-shadow:0 0 0 2px #ffffffb8}@keyframes project-gallery-fade{0%{opacity:.38}to{opacity:1}}@keyframes project-card-enter{0%{opacity:.72;transform:translateY(.45rem)}to{opacity:1;transform:translateY(0)}}.project-stack__next{width:auto;height:auto;color:var(--card-color,var(--color-ink));cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:.4rem;margin-top:1.5rem;display:flex}.project-stack__next span{width:1em;color:var(--category-light,var(--color-page-heading));line-height:1;font-family:var(--font-hand);text-shadow:0 2px 0 var(--card-color), 0 4px 0 var(--card-color);justify-content:center;align-items:center;font-size:4rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.project-stack__next span{text-shadow:0 2px 0 var(--card-color), 0 4px 0 color-mix(in srgb, var(--card-color) 58%, white 20%)}}.project-stack__next:focus-visible{outline:3px solid var(--color-ink);outline-offset:.2rem}.project-empty{border:2px solid var(--color-ink);max-width:42rem;margin-top:2rem;padding:1.5rem}@supports (color:color-mix(in lab, red, red)){.project-empty{border:2px solid color-mix(in srgb, var(--color-ink) 22%, transparent)}}.project-empty{border-radius:var(--radius-card);background:var(--color-paper)}@supports (color:color-mix(in lab, red, red)){.project-empty{background:color-mix(in srgb, var(--color-paper) 58%, transparent)}}.project-empty p{margin:0}.project-empty p+p{margin-top:.5rem}@media (width<=700px){.project-card{aspect-ratio:auto;width:100%;min-height:24rem}.project-stack{margin-top:0}.project-stack__cards{aspect-ratio:auto;width:100%;height:35rem;min-height:24rem;max-height:none}.project-card__body{flex-direction:column;grid-template-columns:1fr;gap:1.25rem;padding:1.5rem;display:flex}.project-card--back{transform:translate(calc(var(--stack-offset) * .42rem), calc(var(--stack-offset) * -.58rem)) scale(calc(1 - var(--stack-offset) * .012))}.project-card__media{order:-1}.projects-section{--project-content-max-width:100%;width:90vw}.project-card__content{justify-content:flex-start;gap:.6rem;padding:0}.project-card__body{gap:.8rem;padding:1em}.project-card__content p{align-self:flex-start}.project-card__media{order:2;width:100%;margin-top:.3rem}.project-card__links{margin-bottom:.5rem}}.skill-category-list,.skill-chip-list{flex-wrap:wrap;display:flex}.skill-category-list{gap:0;margin-top:2.5rem}.skill-chip-list{justify-content:center;gap:.55rem;margin-top:2rem}.skills-section [data-category=web-development]{--category-color:#8fbec0}.skill-category-pill,.skill-chip{color:var(--color-ink);border:0;border-radius:999px;justify-content:center;align-items:center;line-height:1;display:inline-flex}.skill-category-pill{background:var(--category-color);min-width:9.4rem;min-height:2.35rem;padding:.55rem 1.25rem}@supports (color:color-mix(in lab, red, red)){.skill-category-pill{background:color-mix(in srgb, var(--category-color) 88%, white 12%)}}.skill-category-pill{cursor:pointer;margin:.5em .5em 0 0;font-weight:600;transition:transform .14s,opacity .14s}.skill-category-pill:hover{transform:translateY(-.06rem)}.skill-category-pill--active{opacity:1;box-shadow:0 0 0 2px var(--color-ink)}@supports (color:color-mix(in lab, red, red)){.skill-category-pill--active{box-shadow:0 0 0 2px color-mix(in srgb, var(--color-ink) 18%, transparent)}}.skill-category-pill:focus-visible{outline:2px solid var(--color-ink);outline-offset:2px}.skill-chip{background:var(--category-color);min-height:2.5rem;padding:.62rem 1.35rem}@supports (color:color-mix(in lab, red, red)){.skill-chip{background:color-mix(in srgb, var(--category-color) 70%, transparent)}}.skill-chip{box-shadow:inset 0 0 0 2px var(--category-color)}@supports (color:color-mix(in lab, red, red)){.skill-chip{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--category-color) 82%, var(--color-ink) 12%)}}.skill-chip{margin:-.5rem;font-size:clamp(.85rem,1.5vw,1rem)}.skill-chip--hidden{visibility:hidden;opacity:0;pointer-events:none}@media (width<=700px){.skill-chip--hidden{display:none}.skill-chip-list{justify-content:center;padding:0 .3rem}}.about-section h2{color:var(--color-page-heading)}.about-card-grid{grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:1rem;width:100%;margin-top:3rem;display:grid}.about-card{border-radius:var(--radius-card);background:var(--category-color);gap:.75rem;padding:2rem 1.8rem 1.8rem;display:grid}@supports (color:color-mix(in lab, red, red)){.about-card{background:color-mix(in srgb, var(--category-color) 90%, transparent)}}.about-card{box-shadow:inset 0 0 0 2px var(--category-color), var(--shadow-sketch)}@supports (color:color-mix(in lab, red, red)){.about-card{box-shadow:inset 0 0 0 2px color-mix(in srgb, var(--category-color) 82%, var(--color-ink) 12%), var(--shadow-sketch)}}.about-card[data-category=web-development]{--category-color:var(--color-web-light)}.about-card[data-category=ux-ui-design]{--category-color:var(--color-ux-light)}.about-card[data-category=visual-art]{--category-color:var(--color-art-light)}.about-card__title{color:var(--color-ink);margin:0;font-size:1.45rem;line-height:1}.about-card p{color:var(--color-ink);margin:0;font-size:.95rem;line-height:1.55}.about-card:first-child{z-index:3;grid-area:1/1/6/span 6;min-height:fit-content;transform:translateY(.25rem)}.about-card:nth-child(2){z-index:2;grid-area:1/7/6/span 6;min-height:fit-content;transform:translateY(2.4rem)}.about-card:nth-child(3){z-index:1;grid-area:6/4/18/span 6;min-height:fit-content;transform:translateY(-.5rem)}@media (width<=700px){.about-card-grid{grid-template-columns:1fr;gap:1rem}.about-card:nth-child(2),.about-card:nth-child(3){margin-top:0;margin-left:0;transform:none}.about-card:first-child,.about-card:nth-child(2),.about-card:nth-child(3){grid-area:auto;min-height:auto}}.footer{width:100%;color:var(--color-page-heading);justify-content:space-between;align-items:end;margin:5rem auto 0;padding:0 6em;display:flex}.footer .header-icons{gap:2em;margin-top:1.8em;margin-bottom:2em;padding:0;list-style:none;display:flex}.footer .header-icons a{color:var(--color-page-heading);font-size:1.15rem;font-weight:700;text-decoration:none}.footer .contact-info{color:var(--color-page-heading);text-align:left;margin-bottom:0;line-height:2}.footer .contact-info p{color:var(--color-page-heading);margin:0;font-size:24px}.footer .footer-media{margin-left:auto}.footer .profile-pixel{width:clamp(12rem,22vw,17rem);max-width:100%}@media (width<=700px){.footer{flex-direction:column;align-items:center;gap:1.1rem;width:90vw;min-height:0;margin:2.25rem auto 0;padding:0 1rem;display:flex;position:static}.footer .contact-info{text-align:center;place-self:center;margin-bottom:0;margin-left:0;position:static;bottom:auto;left:auto}.footer .header-icons{flex-direction:column;align-items:center;gap:.4rem;margin:2em}.footer .footer-media{order:2;margin-left:0;position:static}.footer .profile-pixel{width:clamp(5.5rem,24vw,8rem);margin-top:0;margin-left:0}}.cv-section{color:var(--color-page-heading);display:none}.cv-section h2{color:var(--color-page-heading)}.cv-section__lead{max-width:40rem;color:var(--color-page-heading);margin:.75rem 0 0;line-height:1.5}@supports (color:color-mix(in lab, red, red)){.cv-section__lead{color:color-mix(in srgb, var(--color-page-heading) 86%, white 8%)}}.cv-actions{flex-wrap:wrap;gap:.8rem;margin-top:1.5rem;display:flex}.cv-button{background:var(--color-paper);border:0;border-radius:999px;justify-content:center;align-items:center;min-height:2.8rem;padding:.7rem 1.1rem;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.cv-button{background:color-mix(in srgb, var(--color-paper) 88%, transparent)}}.cv-button{color:var(--color-ink);font-weight:700;line-height:1}.cv-button--primary{background:var(--color-web-light)}@supports (color:color-mix(in lab, red, red)){.cv-button--primary{background:color-mix(in srgb, var(--color-web-light) 72%, white 16%)}}.cv-button--disabled{background:var(--color-page-heading)}@supports (color:color-mix(in lab, red, red)){.cv-button--disabled{background:color-mix(in srgb, var(--color-page-heading) 22%, transparent)}}.cv-button--disabled{color:var(--color-page-heading)}@supports (color:color-mix(in lab, red, red)){.cv-button--disabled{color:color-mix(in srgb, var(--color-page-heading) 85%, white 10%)}}.cv-button--disabled{cursor:not-allowed;opacity:.85}.laptop-hero{z-index:1;grid-area:1/2/auto/8;width:100%;margin:0}.laptop-hero__image{object-fit:contain;width:100%;height:auto;max-height:80vh;display:block}.laptop-hero__screen-text{color:#f2fbfb;pointer-events:none;z-index:4;grid-area:1/4/auto/5;place-items:center;width:100%;max-width:300px}.screen-sequence{width:100%;font-family:var(--font-hand);font-size:1.8rem;line-height:1.2;position:relative;top:25%}.screen-sequence__panel{align-content:center;justify-items:start;gap:.2rem;display:grid}.screen-sequence__line{text-wrap:balance;display:block}.screen-sequence__line.is-typing:after{content:"";vertical-align:-.06em;background:currentColor;width:.09em;height:.9em;margin-left:.12em;animation:.9s step-end infinite type-caret-blink;display:inline-block}@keyframes type-caret-blink{0%,49%{opacity:1}50%,to{opacity:0}}@media (prefers-reduced-motion:reduce){.screen-sequence__line.is-typing:after{animation:none}}@media (width<=1200px) and (width>=701px){.hero-section{grid-template-columns:.5fr .5fr 1fr 2fr 2fr 1fr .5fr .5fr}}@media (width<=950px){.laptop-hero__screen-text{font-size:1.5rem;left:15%}.screen-sequence{font-size:1.5rem;top:20%}}@media (width<=700px){.hero-section{min-height:auto;padding-top:6rem}.laptop-hero{grid-row:1;max-width:46rem;margin-inline:auto}.laptop-hero__screen-text{top:15%;left:15%}.screen-sequence{min-height:4.2rem;font-size:1.5rem}}@media (width<=600px){.projects-section{width:95%}.projects-section>div{max-width:100%}.skills-section,.about-section,.cv-section{width:100%;padding-left:.75rem;padding-right:.75rem}.hero-section{grid-template-columns:repeat(8,1fr);padding-left:0;padding-right:0}.laptop-hero{grid-column:1/-1;max-width:none}.laptop-hero__screen-text{grid-column:3/5;width:100%;top:15%;left:0}.screen-sequence{min-height:4.2rem;margin-top:-5px;font-size:1rem;line-height:1.1}}@media (width<=400px){.laptop-hero__screen-text{font-size:.9rem;top:25%}.screen-sequence{font-size:.9rem}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}
