@charset "UTF-8";*,:after,:before{box-sizing:border-box}html{line-sizing:normal}body{margin:0}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.17rem}h4{font-size:1rem}h5{font-size:.83rem}h6{font-size:.67rem}h1{margin:.67em 0}pre{white-space:pre-wrap}hr{border-style:solid;border-width:1px 0 0;overflow:visible}audio,canvas,embed,iframe,img,object,svg,video{display:block;max-width:100%;vertical-align:middle}canvas,img,svg,video{height:auto}audio{width:100%}img{border-style:none}svg{overflow:hidden}article,aside,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}:root{--textColor:#2c1810;--textColorLight:#8b5a3c;--textColorLighter:#a67c5a;--primaryColor:#c17817;--primaryColorLight:#d4941f;--secondaryColor:#6b4423;--accentColor:#d35400;--terracottaColor:#cd6133;--forestColor:#4a5d23;--indigoColor:#2c3e50;--soganColor:#b8860b;--focusColor:#c17817;--backgroundColor:#faf8f5;--backgroundColorAlt:#f4f1ec;--backgroundWarm:#f7f3ed;--borderColor:#d4c5b0;--borderColorLight:#e8ddd0}@media (prefers-color-scheme:dark){:root{--color-mode:"dark"}:root:not([data-user-color-scheme]){--textColor:#f4f1ec;--textColorLight:#d4c5b0;--textColorLighter:#a67c5a;--primaryColor:#d4941f;--primaryColorLight:#e6a82d;--secondaryColor:#8b5a3c;--accentColor:#e67e22;--terracottaColor:#e17b47;--forestColor:#5a6b2d;--indigoColor:#34495e;--soganColor:#daa520;--backgroundColor:#1a1612;--backgroundColorAlt:#2c2520;--backgroundWarm:#241f1a;--borderColor:#3d342a;--borderColorLight:#4a3e32}}@font-face{font-family:DM Sans Subset;src:url(/assets/fonts/dm-sans/dm-sans-v11-latin-regular-subset.woff2) format("woff2"),url(/assets/fonts/dm-sans/dm-sans-v11-latin-regular-subset.woff) format("woff");unicode-range:u+21-80,u+91-94,u+bf-d6,u+d8-f6,u+f8-122}@font-face{font-family:DM Sans;font-style:normal;font-weight:400;src:local(""),url(/assets/fonts/dm-sans/dm-sans-v11-latin-regular.woff2) format("woff2"),url(/assets/fonts/dm-sans/dm-sans-v11-latin-regular.woff) format("woff")}@font-face{font-family:DM Sans;font-style:italic;font-weight:400;src:local(""),url(/assets/fonts/dm-sans/dm-sans-v11-latin-italic.woff2) format("woff2"),url(/assets/fonts/dm-sans/dm-sans-v11-latin-italic.woff) format("woff")}@font-face{font-family:DM Sans;font-style:italic;font-weight:700;src:local(""),url(/assets/fonts/dm-sans/dm-sans-v11-latin-bolditalic.woff2) format("woff2"),url(/assets/fonts/dm-sans/dm-sans-v11-latin-bolditalic.woff) format("woff")}@font-face{font-family:DM Sans;font-style:normal;font-weight:700;src:local(""),url(/assets/fonts/dm-sans/dm-sans-v11-latin-bold.woff2) format("woff2"),url(/assets/fonts/dm-sans/dm-sans-v11-latin-bold.woff) format("woff")}:root{--font-serif:"Charter","Lyon Text","Iowan Old Style","Apple Garamond","Baskerville","Times New Roman",serif;--font-sans:"DM Sans",-apple-system,BlinkMacSystemFont,"Segue UI",Roboto,sans-serif;--font-mono:"JetBrains Mono","SF Mono","Monaco","Consolas",monospace;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700}body{font-family:var(--font-sans)}.fonts-loaded-1 body{font-family:"DM Sans Subset",var(--font-sans)}.fonts-loaded-2 body{font-family:var(--font-sans)}:root{--mq-small:"screen and (max-width: 47.9375em)";--mq-medium:"screen and (min-width: 48em)";--mq-large:"only screen and (min-width: 64.0625em)";--mq-x-large:"screen and (min-width: 90em)";--spacing-none:0;--spacing-xx-small:.25rem;--spacing-x-small:.5rem;--spacing-small:.75rem;--spacing-medium:1rem;--spacing-large:1.5rem;--spacing-x-large:2rem;--spacing-xx-large:6rem;--container-max-width:80rem;--fluid-min-width:320;--fluid-max-width:1500;--fluid-min-size:18;--fluid-max-size:22;--fluid-min-ratio:1.2;--fluid-max-ratio:1.5;--fluid-screen:100vw;--fluid-bp:calc((var(--fluid-screen) - ((var(--fluid-min-width)/16)*1rem))/(var(--fluid-max-width)/16 - var(--fluid-min-width)/16))}@media screen and (min-width:1500px){:root{--fluid-screen:calc(var(--fluid-max-width)*1px)}}:root{--fluid-min-scale-0:var(--fluid-min-ratio);--fluid-min-scale-1:var(--fluid-min-scale-0) * var(--fluid-min-ratio);--fluid-min-scale-2:var(--fluid-min-scale-1) * var(--fluid-min-ratio);--fluid-min-scale-3:var(--fluid-min-scale-2) * var(--fluid-min-ratio);--fluid-min-scale-4:var(--fluid-min-scale-3) * var(--fluid-min-ratio);--fluid-min-scale-5:var(--fluid-min-scale-4) * var(--fluid-min-ratio);--fluid-max-scale-0:var(--fluid-max-ratio);--fluid-max-scale-1:var(--fluid-max-scale-0) * var(--fluid-max-ratio);--fluid-max-scale-2:var(--fluid-max-scale-1) * var(--fluid-max-ratio);--fluid-max-scale-3:var(--fluid-max-scale-2) * var(--fluid-max-ratio);--fluid-max-scale-4:var(--fluid-max-scale-3) * var(--fluid-max-ratio);--fluid-max-scale-5:var(--fluid-max-scale-4) * var(--fluid-max-ratio);--fluid-min-size-0:(var(--fluid-min-size)) /16;--fluid-min-size-1:(var(--fluid-min-size) * var(--fluid-min-scale-0)) /16;--fluid-min-size-2:(var(--fluid-min-size) * var(--fluid-min-scale-1)) /16;--fluid-min-size-3:(var(--fluid-min-size) * var(--fluid-min-scale-2)) /16;--fluid-min-size-4:(var(--fluid-min-size) * var(--fluid-min-scale-3)) /16;--fluid-min-size-5:(var(--fluid-min-size) * var(--fluid-min-scale-4)) /16;--fluid-max-size-0:(var(--fluid-max-size)) /16;--fluid-max-size-1:(var(--fluid-max-size) * var(--fluid-max-scale-0)) /16;--fluid-max-size-2:(var(--fluid-max-size) * var(--fluid-max-scale-1)) /16;--fluid-max-size-3:(var(--fluid-max-size) * var(--fluid-max-scale-2)) /16;--fluid-max-size-4:(var(--fluid-max-size) * var(--fluid-max-scale-3)) /16;--fluid-max-size-5:(var(--fluid-max-size) * var(--fluid-max-scale-4)) /16;--fluid-0:calc(var(--fluid-min-size-0)*1rem + (var(--fluid-max-size-0) - var(--fluid-min-size-0))*var(--fluid-bp));--fluid-1:calc(var(--fluid-min-size-1)*1rem + (var(--fluid-max-size-1) - var(--fluid-min-size-1))*var(--fluid-bp));--fluid-2:calc(var(--fluid-min-size-2)*1rem + (var(--fluid-max-size-2) - var(--fluid-min-size-2))*var(--fluid-bp));--fluid-3:calc(var(--fluid-min-size-3)*1rem + (var(--fluid-max-size-3) - var(--fluid-min-size-3))*var(--fluid-bp));--fluid-4:calc(var(--fluid-min-size-4)*1rem + (var(--fluid-max-size-4) - var(--fluid-min-size-4))*var(--fluid-bp));--fluid-5:calc(var(--fluid-min-size-5)*1rem + (var(--fluid-max-size-5) - var(--fluid-min-size-5))*var(--fluid-bp))}.aspect-ratio-hack--16-9{position:relative}.aspect-ratio-hack--16-9:before{content:"";display:block;padding-top:56.25%;width:100%}.aspect-ratio-hack--16-9>*{bottom:0;left:0;position:absolute;right:0;top:0}.aspect-ratio--16-9{aspect-ratio:16/9}.skiplink{clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;position:absolute;width:1px}.skiplink:focus{border-radius:4px;clip:auto;color:var(--textColor);height:auto;margin:.5em;padding:.5em 1em;text-decoration:none;width:auto;z-index:1}:active,:focus{border:none;outline:none}.focus-visible{box-shadow:0 0 0 3px var(--focusColor);outline:none}.clearfix:after,.clearfix:before{content:"";display:table}.clearfix:after{clear:both}html{line-height:1.15;-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4}hr{color:inherit;height:0}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:initial}sub{bottom:-.25em}sup{top:-.5em}table{border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}::-moz-focus-inner{border-style:none;padding:0}:-moz-focusring{outline:1px dotted ButtonText}:-moz-ui-invalid{box-shadow:none}legend{padding:0}progress{vertical-align:initial}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}@media print{*,:after,:before{background:#0000!important;box-shadow:none!important;color:#000!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}pre{white-space:pre-wrap!important}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}}body{background-color:var(--backgroundColor);color:var(--textColor);padding-right:var(--scrollbarComp)}.button,button{align-items:center;background-color:var(--textColor);border-radius:24px;color:#fff;display:inline-flex;font-size:1.125rem;font-weight:600;height:48px;line-height:1rem;padding:1rem 1.5rem;text-decoration:none;text-transform:none;white-space:nowrap}.button:hover,button:hover{background-color:#1a1a1ad9}input[type=checkbox],input[type=radio],input[type=range],progress{accent-color:var(--primaryColor)}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);line-height:1.2}h1{font-size:var(--fluid-5);font-weight:var(--font-weight-bold);letter-spacing:-.02em;margin-bottom:.5em}h2{font-size:var(--fluid-4);font-weight:var(--font-weight-semibold);letter-spacing:-.01em;margin-bottom:.75em;margin-top:1.5em}h3{font-size:var(--fluid-2);font-weight:var(--font-weight-medium);margin-top:1.25em}h3,h4{margin-bottom:.5em}h4{font-family:var(--font-sans);font-size:var(--fluid-1);font-size:.875rem;font-weight:var(--font-weight-semibold);letter-spacing:.05em;text-transform:uppercase}h5,h6{font-size:var(--fluid-0);font-weight:var(--font-weight-medium);margin-bottom:.5em}.mono,code,h5,h6,pre{font-family:var(--font-mono)}.mono,code,pre{font-size:.875em;font-weight:var(--font-weight-normal)}.text-large{font-size:var(--fluid-2);font-weight:var(--font-weight-light);line-height:1.4}.text-small{font-family:var(--font-mono);font-size:.875rem;font-weight:var(--font-weight-medium);letter-spacing:.1em;text-transform:uppercase}img{display:block;max-width:100%;vertical-align:middle}a{color:var(--primaryColor);font-family:var(--font-serif);font-style:italic;font-weight:var(--font-weight-medium);text-decoration:none;transition:all .2s ease}a:before{content:"→ ";opacity:1;transition:opacity .2s ease}a:hover{color:var(--terracottaColor)}a svg{display:inline-block;fill:currentColor}.link-serif{color:var(--secondaryColor);font-family:var(--font-serif);font-style:italic;text-decoration:underline;text-decoration-color:var(--terracottaColor);text-underline-offset:4px}.link-serif:hover{color:var(--accentColor);text-decoration-color:var(--soganColor)}.link-mono{border:1px solid var(--borderColor);border-radius:3px;color:var(--forestColor);font-family:var(--font-mono);font-size:.875em;letter-spacing:.05em;padding:.25rem .5rem;text-transform:uppercase}.link-mono:hover{background-color:var(--forestColor);border-color:var(--forestColor);color:var(--backgroundColor)}.link-accent{color:var(--accentColor);font-weight:var(--font-weight-bold);text-transform:lowercase}.link-accent:before{content:"→ ";opacity:0;transition:opacity .2s ease}.link-accent:hover:before{opacity:1}.link-accent:hover{color:var(--terracottaColor)}.link-subtle{color:var(--textColorLight);font-size:.9em;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px}.link-subtle:hover{color:var(--indigoColor);text-decoration-style:solid}h1 a,h2 a,h3 a{border-bottom:3px solid var(--soganColor);color:inherit;text-decoration:none}h1 a:hover,h2 a:hover,h3 a:hover{background-color:var(--soganColor);color:var(--backgroundColor)}ol,ul{font-size:var(--fluid-0);line-height:1.5}ol[class],ul[class]{list-style:none;padding:0}li>ol,li>ul{margin-bottom:0;margin-left:var(--spacing-medium)}section.list{margin:var(--spacing-xx-large) 0}p{font-size:var(--fluid-0);line-height:1.5}span.marker{box-shadow:inset 0 -14px #ffec9e;display:inline-block;line-height:.6}body{overflow-x:hidden}.layout{display:flex;flex-direction:column;min-height:100%;min-height:100vh;position:relative}.container{margin:0 auto;max-width:900px;padding:3rem 2rem;width:100%}.intro{margin:4rem 0}.intro .intro__text{color:var(--textColor);font-size:var(--fluid-1);line-height:1.6;margin-bottom:2rem}.quick-links{display:flex;flex-wrap:wrap;gap:1.5rem;justify-content:center;margin:3rem 0}.work{margin:4rem 0}.work p{line-height:1.6;margin-bottom:1.5rem}.experience{margin-top:4rem}.experience h3{color:var(--textColor);margin-bottom:2rem}.experience-item{border-bottom:1px solid var(--borderColorLight);margin-bottom:2rem;padding-bottom:1.5rem}.experience-item:last-child{border-bottom:none;margin-bottom:0}.experience-period{color:var(--textColorLight);font-family:var(--font-mono);font-size:.875rem;letter-spacing:.05em;margin-bottom:.5rem;text-transform:uppercase}.experience-role{color:var(--textColor);font-size:1.1rem;font-weight:var(--font-weight-medium);line-height:1.4;margin-bottom:.25rem}.experience-location{color:var(--textColorLight);font-size:.9rem;font-style:italic;margin-bottom:.75rem}.experience-description{color:var(--textColor);font-size:.95rem;line-height:1.5;margin:0}.publications{margin-top:4rem}.publications h3{margin-bottom:2rem}.publications-table{border-collapse:collapse;margin-top:2rem;width:100%}.publications-table th{border-bottom:1px solid var(--borderColor);color:var(--textColorLight);font-family:var(--font-mono);font-size:.875rem;font-weight:var(--font-weight-medium);letter-spacing:.05em;padding:1rem .5rem;text-align:left;text-transform:uppercase}.publications-table td{border-bottom:1px solid var(--borderColorLight);line-height:1.5;padding:1rem .5rem;vertical-align:top}.publications-table td:first-child{color:var(--textColorLight);font-family:var(--font-mono);font-size:.875rem;width:80px}.publications-table td:last-child{color:var(--textColorLight);font-size:.9em}.publications-table tbody tr{transition:background-color .1s ease}.publications-table tbody tr:hover{background-color:var(--backgroundColorAlt)}@media (max-width:768px){.container{padding:2rem 1rem}.quick-links{align-items:center;flex-direction:column;gap:1rem}.publications p{padding:1rem}}.site-header__container{display:flex;justify-content:space-between;margin:0 auto;max-width:var(--container-max-width);padding:2rem 1rem;padding:clamp(var(--spacing-x-small),4vw,var(--spacing-x-large)) clamp(var(--spacing-medium),3.75vw,var(--spacing-x-large));position:relative}.site-header .nav--primary ul{font-size:var(--fluid-2);margin:.75rem 0}.site-header .nav--primary a{display:block;padding:.25em 0}.site-footer__container{display:block;margin:0 auto;max-width:calc(var(--columnPaddingNormal)*2 + var(--layoutWidth));padding:var(--columnPaddingNormal);position:relative}@media (min-width:60em){.site-footer__container{padding:calc(var(--columnPaddingNormal)*2)}}.site-footer a{color:inherit;font-weight:700;text-decoration:underline}.postlist ol[class]{list-style-type:none;padding:0}.postlist-item:has(a+time) h2{margin-bottom:1rem}.hero{background:linear-gradient(135deg,var(--backgroundColorAlt) 0,var(--backgroundWarm) 100%);border-bottom:3px solid var(--borderColor);padding:4rem 0;text-align:center}.hero__content{margin:0 auto;max-width:800px;padding:0 2rem}.hero__title{color:var(--textColor);font-size:var(--fluid-5);font-weight:var(--font-weight-bold);letter-spacing:-.03em;margin-bottom:.5rem}.hero__subtitle{color:var(--textColorLight);font-style:italic;margin-bottom:2rem}.hero__location{align-items:center;background-color:var(--backgroundColor);border:2px solid var(--borderColorLight);border-radius:50px;display:inline-flex;gap:.5rem;padding:.75rem 1.5rem}.hero__location strong{color:var(--primaryColor);font-family:var(--font-mono)}.color-showcase{border-radius:8px;box-shadow:0 4px 20px #0000001a;display:flex;gap:0;justify-content:center;margin:3rem auto;max-width:600px;overflow:hidden}.color-showcase__item{align-items:center;display:flex;flex:1;height:80px;justify-content:center;position:relative;transition:all .3s ease}.color-showcase__item span{color:var(--backgroundColor);font-family:var(--font-mono);font-size:.75rem;font-weight:var(--font-weight-medium);letter-spacing:.1em;opacity:0;text-shadow:0 1px 2px #0000004d;text-transform:uppercase;transition:opacity .2s ease}.color-showcase__item:hover{flex:1.2}.color-showcase__item:hover span{opacity:1}@media (max-width:600px){.color-showcase{margin:2rem 1rem}.color-showcase__item{height:60px}.color-showcase__item span{font-size:.65rem}}.sketches-page{min-height:100vh;position:relative}.sketches-header{align-items:flex-end;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#faf8f5f2;border:1px solid var(--borderColorLight);border-radius:8px;bottom:2rem;display:flex;gap:2rem;justify-content:space-between;left:2rem;max-height:calc(100vh - 6rem);overflow:hidden;padding:.75rem 1.5rem;position:fixed;right:2rem;z-index:1000}.sketches-header .sketches-info{flex:1}.sketches-header .sketches-info h2{color:var(--textColor);font-size:var(--fluid-1);margin:0 0 .5rem}.sketches-header .sketches-info .sketches-description{color:var(--textColorLight);font-size:.8rem;line-height:1.3;margin:0}.sketches-header .sketches-filters{align-items:flex-end;display:flex;flex-wrap:wrap;gap:.5rem}.sketches-header .sketches-filters .filter-btn{background:#0000;border:1px solid var(--borderColor);border-radius:4px;color:var(--textColor);cursor:pointer;font-family:var(--font-mono);font-size:.7rem;font-weight:var(--font-weight-medium);letter-spacing:.5px;padding:.4rem .8rem;text-transform:uppercase;transition:all .2s ease}.sketches-header .sketches-filters .filter-btn.active,.sketches-header .sketches-filters .filter-btn:hover{background-color:var(--primaryColor);border-color:var(--primaryColor);color:var(--backgroundColor)}@media (max-width:768px){.sketches-header{flex-direction:column;gap:1rem;left:1rem;max-height:calc(100vh - 4rem);padding:.5rem 1rem;right:1rem}.sketches-header .sketches-info h2{font-size:1.1rem;margin:0 0 .25rem}.sketches-header .sketches-info .sketches-description{font-size:.75rem}.sketches-header .sketches-filters{justify-content:flex-start}.sketches-header .sketches-filters .filter-btn{flex-shrink:0;font-size:.6rem;min-width:auto;padding:.3rem .6rem}}.sketches-map{height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:1}.leaflet-control-zoom a{font-family:inherit!important;font-style:normal!important;font-weight:400!important;text-decoration:none!important}.leaflet-control-zoom a:before{content:none!important}.leaflet-control-zoom-in a{align-items:center;display:flex;justify-content:center}.leaflet-control-zoom-in a:after{content:"+";font-size:18px;font-weight:700;line-height:1}.leaflet-control-zoom-out a{align-items:center;display:flex;justify-content:center}.leaflet-control-zoom-out a:after{content:"−";font-size:18px;font-weight:700;line-height:1}.sketch-marker{background-color:var(--primaryColor);border:3px solid var(--backgroundColor);border-radius:50%;cursor:pointer;height:24px;position:relative;transition:all .2s ease;width:24px}.sketch-marker:hover{background-color:var(--accentColor);transform:scale(1.2)}.sketch-marker .sketch-marker__dot{background-color:inherit;border-radius:50%;height:100%;width:100%}.sketch-marker .sketch-marker__count{background-color:var(--terracottaColor);border:2px solid var(--backgroundColor);border-radius:50%;color:var(--backgroundColor);font-family:var(--font-mono);font-size:.7rem;font-weight:var(--font-weight-bold);height:18px;position:absolute;right:-8px;top:-8px;width:18px}.sketch-cluster,.sketch-marker .sketch-marker__count{align-items:center;display:flex;justify-content:center}.sketch-cluster{background-color:var(--forestColor);border:3px solid var(--backgroundColor);border-radius:50%;cursor:pointer;height:40px;transition:all .2s ease;width:40px}.sketch-cluster:hover{background-color:var(--indigoColor);transform:scale(1.1)}.sketch-cluster span{color:var(--backgroundColor);font-family:var(--font-mono);font-size:.875rem;font-weight:var(--font-weight-bold)}.sketch-modal{align-items:center;display:flex;height:100%;justify-content:center;left:0;padding:2rem;position:fixed;top:0;transition:opacity .3s ease,visibility .3s ease;width:100%;z-index:1000}.sketch-modal,.sketch-modal.hidden{opacity:0;visibility:hidden}.sketch-modal:not(.hidden){opacity:1;visibility:visible}.sketch-modal .sketch-modal__overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#000c;height:100%;left:0;position:absolute;top:0;transition:-webkit-backdrop-filter .3s ease;transition:backdrop-filter .3s ease;transition:backdrop-filter .3s ease,-webkit-backdrop-filter .3s ease;width:100%}.sketch-modal .sketch-modal__content{background-color:var(--backgroundColor);border-radius:16px;box-shadow:0 20px 60px #0000004d;display:flex;max-height:80vh;max-width:1000px;overflow:hidden;position:relative;transform:scale(.95) translateY(20px);transition:transform .3s ease;width:100%}.sketch-modal:not(.hidden) .sketch-modal__content{transform:scale(1) translateY(0)}.sketch-modal .sketch-modal__close{align-items:center;background:none;background-color:var(--backgroundColor);border:none;border-radius:50%;box-shadow:0 2px 8px #0003;color:var(--textColorLight);cursor:pointer;display:flex;font-size:2rem;height:40px;justify-content:center;position:absolute;right:1rem;top:1rem;transition:all .2s ease;width:40px;z-index:10}.sketch-modal .sketch-modal__close:hover{background-color:var(--backgroundColorAlt);color:var(--textColor)}.sketch-modal .sketch-modal__images{display:flex;flex:1;flex-direction:column;overflow:hidden;position:relative}.sketch-modal .sketch-modal__image{display:flex;min-height:100%;opacity:1;transform:translate(0);transition:opacity .15s ease}.sketch-modal .sketch-modal__image.transitioning-in,.sketch-modal .sketch-modal__image.transitioning-out{opacity:0}.sketch-modal .sketch-modal__image img{border-radius:0;height:auto;margin:0;max-height:100%;object-fit:contain;transition:none;width:100%}.sketch-modal .sketch-modal__image.single-image img{border-radius:0;height:100%;margin:0;object-fit:contain;width:100%}.sketch-modal .sketch-modal__image:not(.single-image){flex-direction:column;margin-bottom:2rem;padding:2rem}.sketch-modal .sketch-modal__image:not(.single-image):last-child{margin-bottom:0}.sketch-modal .sketch-modal__image:not(.single-image) img{border-radius:8px;height:auto;margin-bottom:1rem;width:100%}.sketch-modal .sketch-modal__sidebar{background-color:var(--backgroundColorAlt);border-left:1px solid var(--borderColorLight);display:flex;flex-direction:column;gap:1.5rem;overflow-y:auto;padding:2rem;width:350px}.sketch-modal .sketch-modal__sidebar .sketch-modal__image-info{opacity:1;transition:opacity .15s ease}.sketch-modal .sketch-modal__sidebar .sketch-modal__image-info.transitioning{opacity:.3}.sketch-modal .sketch-modal__sidebar .sketch-modal__image-info h4{color:var(--primaryColor);font-family:var(--font-serif);font-size:var(--fluid-1);font-style:italic;line-height:1.3;margin-bottom:.75rem}.sketch-modal .sketch-modal__sidebar .sketch-modal__image-info p{color:var(--textColorLight);font-size:.9rem;line-height:1.5;margin:0;word-wrap:break-word;overflow-wrap:break-word}.sketch-modal .sketch-modal__sidebar .sketch-modal__navigation{display:flex;gap:.5rem}.sketch-modal .sketch-modal__sidebar .sketch-modal__navigation button{background-color:var(--backgroundColor);border:1px solid var(--borderColor);border-radius:6px;color:var(--textColor);cursor:pointer;flex:1;font-family:var(--font-mono);font-size:.8rem;padding:.5rem 1rem;transition:all .2s ease}.sketch-modal .sketch-modal__sidebar .sketch-modal__navigation button:hover:not(:disabled){background-color:var(--primaryColor);border-color:var(--primaryColor);color:var(--backgroundColor)}.sketch-modal .sketch-modal__sidebar .sketch-modal__navigation button:disabled{cursor:not-allowed;opacity:.5}.sketch-modal .sketch-modal__info{align-items:center;background-color:var(--backgroundColorAlt);border-top:1px solid var(--borderColorLight);display:flex;gap:1.5rem;padding:2rem}.sketch-modal .sketch-modal__info .sketch-modal__location{align-items:center;display:flex;gap:.5rem}.sketch-modal .sketch-modal__info .sketch-modal__location .location-icon{height:18px;width:18px;fill:var(--textColorLight);opacity:.8}.sketch-modal .sketch-modal__info .sketch-modal__location span{color:var(--textColor);font-family:var(--font-sans);font-size:.9rem;margin:0}.sketch-modal .sketch-modal__info .sketch-modal__date{align-items:center;display:flex;gap:.5rem}.sketch-modal .sketch-modal__info .sketch-modal__date .date-icon{height:18px;width:18px;fill:var(--textColorLight);opacity:.8}.sketch-modal .sketch-modal__info .sketch-modal__date span{color:var(--textColorLight);font-family:var(--font-mono);font-size:.9rem;margin:0}@media (max-width:768px){.sketch-modal{padding:.5rem}.sketch-modal .sketch-modal__content{border-radius:12px;flex-direction:column;max-height:95vh;max-width:none}.sketch-modal .sketch-modal__images{flex:none;height:60vh;min-height:300px;order:1}.sketch-modal .sketch-modal__image{height:100%}.sketch-modal .sketch-modal__image img{height:100%;object-fit:contain;width:100%}.sketch-modal .sketch-modal__sidebar{flex:none;max-height:35vh;order:2;padding:1rem;width:100%}.sketch-modal .sketch-modal__info{align-items:flex-start;flex-direction:column;gap:1rem;padding:1rem}}
