:root{--color-bg: #faf6ec;--color-text: #191919;--color-text-muted: #6f6a5c;--color-accent: #ff5ca8;--color-border: #191919;--color-surface: #ffffff;--color-highlight: #d9f238;--color-active: #ffd23e;--color-doodle-blue: #4da3ff;--color-doodle-orange: #ff5b3a;--color-doodle-gold: #d9a614;--tape-yellow: rgba(255, 210, 62, .85);--tape-blue: rgba(77, 163, 255, .55);--tape-pink: rgba(255, 92, 168, .5);--font-display: "Permanent Marker", cursive;--font-body: "Gaegu", "Comic Sans MS", sans-serif;--text-base: 1.25rem;--text-sm: 1.125rem;--text-lg: 1.5rem;--text-xl: clamp(1.875rem, 6.5vw, 2.5rem);--text-2xl: clamp(2rem, 7.5vw, 2.75rem);--leading-body: 1.5;--leading-heading: 1.15;--border-ink: 2.5px solid var(--color-border);--shadow-lg: 6px 7px 0 var(--color-border);--shadow-md: 4px 5px 0 var(--color-border);--shadow-sm: 3px 3px 0 var(--color-border);--space-2xs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1.25rem;--space-lg: 2rem;--space-xl: 3.25rem;--space-2xl: 5rem;--content-max-width: 73.75rem;--prose-max-width: 35rem;--gallery-min-column: 18.75rem;--ease-spring: linear( 0, .009, .035 2.1%, .141 4.4%, .281 6.7%, .723 12.9%, .938 16.7%, 1.017 20.4%, 1.077, 1.121, 1.149 24.3%, 1.159, 1.163, 1.161, 1.154 29.9%, 1.129 32.8%, 1.051 39.6%, 1.017 43.1%, .991, .977 51%, .974 53.8%, .975 57.1%, .997 69.8%, 1.003 76.9%, 1 );--ease-out-soft: cubic-bezier(.22, .61, .36, 1)}*{box-sizing:border-box}body{margin:0;position:relative;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-body);overflow-x:hidden}::selection{background:var(--color-highlight)}h1,h2,h3{font-family:var(--font-display);line-height:var(--leading-heading);font-weight:400;text-transform:lowercase}h1,h2{font-size:var(--text-2xl);transform:rotate(-1.2deg)}h3{font-size:var(--text-lg)}a{color:var(--color-text)}a:hover{color:var(--color-accent)}img{max-width:100%;height:auto;display:block}:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:absolute;left:var(--space-sm);top:-100%;background:var(--color-surface);border:var(--border-ink);box-shadow:var(--shadow-sm);padding:var(--space-xs) var(--space-sm);z-index:10}.skip-link:focus{top:var(--space-sm)}.doodle-layer{position:absolute;inset:0;pointer-events:none;overflow:hidden}.doodle{position:absolute;line-height:1}.doodle-1{top:130px;left:3%;font-size:44px;color:var(--color-accent);transform:rotate(-14deg)}.doodle-2{top:320px;right:4%;font-size:38px;color:var(--color-doodle-blue);transform:rotate(18deg)}.doodle-3{top:60%;left:2%;font-size:40px;color:var(--color-doodle-orange);transform:rotate(9deg)}.doodle-4{bottom:140px;right:6%;font-size:46px;color:var(--color-doodle-gold);transform:rotate(-11deg)}@media(max-width:40rem){.doodle{font-size:26px!important;opacity:.8}}.site-header,.site-main,.site-footer{max-width:var(--content-max-width);margin-inline:auto;padding-inline:5vw;position:relative}.site-header{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-md) var(--space-lg);padding-block:var(--space-lg) var(--space-xs)}.site-title{margin:0;font-family:var(--font-display);font-size:var(--text-xl);text-transform:lowercase;transform:rotate(-2deg)}.site-title a{color:inherit;text-decoration:none;display:inline-block;background:var(--color-highlight);padding:2px 14px 6px;box-shadow:var(--shadow-md)}.site-title a:hover{color:inherit;background:var(--color-active)}.site-title:after{content:"☆";font-family:var(--font-body);font-size:.65em;margin-left:10px;display:inline-block}.site-nav ul{display:flex;gap:var(--space-xs);list-style:none;margin:0;padding:0}.site-nav a{display:inline-block;color:var(--color-text);text-decoration:none;text-transform:lowercase;font-weight:700;font-size:var(--text-lg);padding:2px 14px}.site-nav li:nth-child(odd) a{transform:rotate(1.5deg)}.site-nav li:nth-child(2n) a{transform:rotate(-1.5deg)}.site-nav a:hover{color:var(--color-text);background:var(--color-active)}.site-nav a[aria-current=page]{background:var(--color-active)}.site-main{padding-block:var(--space-xs) var(--space-2xl)}.site-footer{padding-block:var(--space-md) var(--space-lg);border-top:2.5px dashed var(--color-border);font-size:var(--text-sm);text-transform:lowercase;display:flex;flex-wrap:wrap;gap:var(--space-xs) var(--space-lg)}.site-footer p{margin:0}.gallery-intro{margin:var(--space-2xs) 0 var(--space-lg);font-size:1.375rem;transform:rotate(-.6deg)}.gallery-section{margin-block-start:var(--space-lg)}.gallery-section-title{margin-block:0 var(--space-md)}.gallery-grid{columns:var(--gallery-min-column);column-gap:28px;list-style:none;margin:0;padding:0}.artwork-card{break-inside:avoid;margin-bottom:34px;position:relative;background:var(--color-surface);border:var(--border-ink);box-shadow:var(--shadow-lg);padding:12px 12px 6px}.artwork-card:nth-child(4n+1){transform:rotate(-1.3deg)}.artwork-card:nth-child(4n+2){transform:rotate(1.1deg)}.artwork-card:nth-child(4n+3){transform:rotate(-.7deg)}.artwork-card:nth-child(4n){transform:rotate(1.6deg)}.artwork-card:before{content:"";position:absolute;top:-13px;left:30%;width:96px;height:26px;background:var(--tape-yellow);transform:rotate(-4deg);border-left:1px dashed rgba(25,25,25,.3);border-right:1px dashed rgba(25,25,25,.3);z-index:1}.artwork-card:nth-child(3n+2):before{background:var(--tape-blue);left:8%;transform:rotate(3deg)}.artwork-card:nth-child(3n):before{background:var(--tape-pink);left:auto;right:10%;transform:rotate(-3deg)}.artwork-card a{color:inherit;text-decoration:none}.artwork-card-image{background:var(--color-bg)}.artwork-card-caption{margin:8px 2px 4px;font-size:var(--text-base);text-transform:lowercase}.artwork-card-title{font-weight:700}.artwork-card-meta{color:var(--color-text-muted)}.video-frame{aspect-ratio:16 / 9;background:var(--color-bg);display:grid;place-items:center}.video-frame--portrait{aspect-ratio:9 / 16;width:100%;max-width:22rem;margin-inline:auto}.video-frame--tall{aspect-ratio:4 / 5;width:100%;max-width:22rem;margin-inline:auto}.video-frame iframe{width:100%;height:100%;border:0;display:block}.video-link-chip{display:inline-block;background:var(--color-surface);border:2px solid var(--color-border);padding:2px 12px;text-decoration:none;text-transform:lowercase;box-shadow:var(--shadow-sm);transform:rotate(-1deg)}.video-note{font-size:var(--text-sm);color:var(--color-text-muted)}.video-note p{margin:0 2px 6px}.back-link{display:inline-block;margin-block-end:var(--space-lg);background:var(--color-surface);border:2px solid var(--color-border);box-shadow:var(--shadow-sm);padding:2px 12px;text-decoration:none;text-transform:lowercase;transform:rotate(-1deg)}.artwork-page{display:grid;gap:var(--space-xl)}@media(min-width:56rem){.artwork-page{grid-template-columns:2fr 1fr;align-items:start}}.artwork-figure{margin:0;position:relative;background:var(--color-surface);border:var(--border-ink);box-shadow:var(--shadow-lg);padding:12px;transform:rotate(-.8deg)}.artwork-figure:before{content:"";position:absolute;top:-13px;left:34%;width:96px;height:26px;background:var(--tape-yellow);transform:rotate(-4deg);border-left:1px dashed rgba(25,25,25,.3);border-right:1px dashed rgba(25,25,25,.3);z-index:1}.artwork-details h1{margin-block:0 var(--space-xs)}.artwork-meta{margin:0 0 var(--space-md);padding:0;list-style:none;color:var(--color-text-muted);text-transform:lowercase;font-size:var(--text-base)}.artwork-description,.prose{max-width:var(--prose-max-width)}.about-page{display:grid;gap:var(--space-xl)}@media(min-width:56rem){.about-page{grid-template-columns:minmax(240px,1fr) 2fr;gap:46px;align-items:start}}.about-portrait{margin:0;position:relative;background:var(--color-surface);border:var(--border-ink);box-shadow:var(--shadow-lg);padding:12px 12px 14px;transform:rotate(-2deg)}.about-portrait:before{content:"";position:absolute;top:-13px;left:30%;width:96px;height:26px;background:var(--tape-yellow);transform:rotate(-4deg);border-left:1px dashed rgba(25,25,25,.3);border-right:1px dashed rgba(25,25,25,.3);z-index:1}.about-portrait figcaption{margin-top:10px;text-align:center;font-size:1.1875rem;text-transform:lowercase}.contact-form{display:grid;gap:var(--space-md);max-width:32.5rem}.form-field{display:grid;gap:var(--space-2xs)}.form-field label{font-weight:700;text-transform:lowercase}.form-field input,.form-field textarea{font-family:var(--font-body);font-size:var(--text-base);padding:10px 12px;border:var(--border-ink);border-radius:0;background:var(--color-surface);color:var(--color-text);box-shadow:4px 4px 0 var(--color-border)}.form-field textarea{resize:vertical}.form-field:nth-child(odd) input,.form-field:nth-child(odd) textarea{transform:rotate(-.4deg)}.form-field:nth-child(2n) input,.form-field:nth-child(2n) textarea{transform:rotate(.4deg)}.contact-form button{font-family:var(--font-display);font-size:var(--text-lg);text-transform:lowercase;padding:10px 30px;border:var(--border-ink);background:var(--color-highlight);color:var(--color-text);box-shadow:5px 6px 0 var(--color-border);cursor:pointer;justify-self:start;transform:rotate(-1deg)}.contact-form button:hover{background:var(--color-active)}.contact-form button:active{box-shadow:2px 2px 0 var(--color-border);translate:3px 4px}.honeypot-field{display:none!important}.form-note{color:var(--color-text-muted);font-size:var(--text-sm)}.social-links{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:14px;align-items:center}.social-links a{display:inline-block;background:var(--color-surface);border:2px solid var(--color-border);padding:2px 12px;text-decoration:none;text-transform:lowercase;box-shadow:var(--shadow-sm)}.social-links li:nth-child(odd) a{transform:rotate(-1deg)}.social-links li:nth-child(2n) a{transform:rotate(1.2deg)}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}@view-transition{navigation:auto}::view-transition-group(*){animation-duration:.32s;animation-timing-function:var(--ease-out-soft)}::view-transition-old(root){animation:vt-page-out .12s ease-in both}::view-transition-new(root){animation:vt-page-in .26s var(--ease-out-soft) both}@keyframes vt-page-out{to{opacity:0;translate:0 -8px}}@keyframes vt-page-in{0%{opacity:0;translate:0 12px}}.site-title a{transition:scale .6s var(--ease-spring),rotate .6s var(--ease-spring),background-color .15s ease}@starting-style{.site-title a{scale:.7;rotate:-7deg}}.site-title:after{display:inline-block;transition:rotate .7s var(--ease-spring),scale .7s var(--ease-spring)}.site-title:hover:after{rotate:144deg;scale:1.3}.doodle{opacity:1;transition:opacity .9s ease .25s;animation:doodle-bob 5.5s ease-in-out infinite alternate}@starting-style{.doodle{opacity:0}}.doodle-2{animation-delay:-1.4s}.doodle-3{animation-delay:-2.8s}.doodle-4{animation-delay:-4.2s}@keyframes doodle-bob{0%{translate:0 -7px}to{translate:0 9px}}@supports (animation-timeline: scroll()){.doodle{animation:doodle-bob 5.5s ease-in-out infinite alternate,doodle-pinwheel linear both;animation-timeline:auto,scroll()}@keyframes doodle-pinwheel{to{rotate:60deg}}}@supports (animation-timeline: view()){.artwork-card{animation:card-pop-in linear both;animation-timeline:view();animation-range:entry 5% entry 45%}@keyframes card-pop-in{0%{opacity:0;scale:.92}}}.artwork-card{transition:translate .5s var(--ease-spring),box-shadow .25s ease}.artwork-card:hover{translate:0 -6px;box-shadow:9px 11px 0 var(--color-border)}.artwork-card:active{translate:0 -3px}.site-nav a:active,.social-links a:active,.back-link:active{translate:0 2px}.artwork-card:before{transition:rotate .5s var(--ease-spring),translate .5s var(--ease-spring)}.artwork-card:hover:before{rotate:-7deg;translate:0 -3px}.site-nav a{transition:rotate .45s var(--ease-spring),translate .45s var(--ease-spring),background-color .15s ease}.site-nav li:nth-child(odd) a:hover{rotate:-3deg;translate:0 -2px}.site-nav li:nth-child(2n) a:hover{rotate:3deg;translate:0 -2px}.social-links a,.back-link{transition:translate .5s var(--ease-spring),box-shadow .25s ease,color .15s ease}.social-links a:hover{translate:0 -4px;box-shadow:5px 7px 0 var(--color-border)}.back-link:hover{translate:-4px 0}.contact-form button{transition:scale .5s var(--ease-spring),background-color .15s ease,box-shadow .15s ease}.contact-form button:hover{scale:1.06}.contact-form button:active{scale:.94;box-shadow:2px 2px 0 var(--color-border)}.prose a,.artwork-description a,.form-note a{text-decoration:none;border-bottom:2px solid var(--color-border);background-image:linear-gradient(var(--color-highlight),var(--color-highlight));background-repeat:no-repeat;background-size:0% 55%;background-position:0 80%;transition:background-size .35s var(--ease-out-soft)}.prose a:hover,.artwork-description a:hover,.form-note a:hover{background-size:100% 55%}}
