:root{--background:#fafafa;--foreground:#000;--border:#e5e7eb;--muted:#6b7280;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;color-scheme:light}:root[data-theme=dark]{--background:#0a0a0a;--foreground:#ededed;--border:#2e2e2e;--muted:#a1a1aa;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme]){--background:#0a0a0a;--foreground:#ededed;--border:#2e2e2e;--muted:#a1a1aa;color-scheme:dark}}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--background);color:var(--foreground);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}.container{max-width:80rem;margin-inline:auto;padding-inline:1rem}@media (width>=640px){.container{padding-inline:1.5rem}}@media (width>=1024px){.container{padding-inline:2rem}}.site-main{min-height:100vh;padding-top:5rem;padding-bottom:5rem}.site-header{z-index:50;background:var(--background);border-bottom:1px solid var(--border);position:fixed;inset-block-start:0;inset-inline:0}.site-header__inner{justify-content:space-between;align-items:center;height:4rem;display:flex}.site-header__logo{color:var(--foreground);font-size:1.5rem;font-weight:700;text-decoration:none;transition:opacity .15s}.site-header__logo:hover{opacity:.8}.site-footer{background:var(--background);border-top:1px solid var(--border);padding-block:2rem}.site-footer__inner{justify-content:center;display:flex}.site-header__actions{align-items:center;gap:1rem;display:flex}.theme-toggle{width:2.25rem;height:2.25rem;color:var(--foreground);cursor:pointer;background:0 0;border:0;border-radius:9999px;justify-content:center;align-items:center;padding:0;transition:opacity .15s;display:inline-flex}.theme-toggle:hover{opacity:.7}.theme-toggle:focus-visible{outline:2px solid var(--foreground);outline-offset:2px}.theme-toggle__icon--moon,:root[data-theme=dark] .theme-toggle__icon--sun{display:none}:root[data-theme=dark] .theme-toggle__icon--moon{display:block}@media (prefers-color-scheme:dark){:root:not([data-theme]) .theme-toggle__icon--sun{display:none}:root:not([data-theme]) .theme-toggle__icon--moon{display:block}}.instagram-link{color:var(--foreground);text-decoration:none;transition:opacity .15s}.instagram-link:hover{opacity:.7}.instagram-link--labeled{align-items:center;gap:.5rem;display:flex}.instagram-link__label{font-size:.875rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.sr-only:focus{z-index:200;clip:auto;white-space:normal;background:var(--foreground);width:auto;height:auto;color:var(--background);border-radius:.25rem;margin:0;padding:.5rem 1rem;position:absolute;top:1rem;left:1rem;overflow:visible}.gallery-empty{text-align:center;color:var(--muted);padding-block:5rem}.gallery-empty__hint{margin-top:.5rem;font-size:.875rem}.gallery-series{margin-bottom:2.5rem}.gallery-series:last-child{margin-bottom:0}.gallery-series__title{color:var(--foreground);margin:0 0 1rem;font-size:1.125rem;font-weight:600}.gallery-grid{columns:1;column-gap:.5rem}.gallery-grid>*{break-inside:avoid;margin-bottom:.5rem}@media (width>=640px){.gallery-grid{columns:2;column-gap:1rem}.gallery-grid>*{margin-bottom:1rem}}@media (width>=1024px){.gallery-grid{columns:3}}@media (width>=1280px){.gallery-grid{columns:4}}.photo-card{cursor:pointer;text-align:left;background:0 0;border:0;border-radius:.125rem;width:100%;padding:0;display:block;position:relative;overflow:hidden}.photo-card:focus-visible{outline:2px solid var(--foreground);outline-offset:2px}.photo-card__image{object-fit:contain;width:100%;height:auto;transition:transform .3s;display:block}.photo-card:hover .photo-card__image{transform:scale(1.05)}.lightbox{z-index:100;background:#000000f2;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.lightbox[hidden]{display:none}.lightbox__close{z-index:10;color:#fff;cursor:pointer;background:0 0;border:0;padding:.5rem;transition:opacity .15s;position:absolute;top:1rem;right:1rem}.lightbox__close:hover{opacity:.7}.lightbox__nav{z-index:10;color:#fff;cursor:pointer;background:0 0;border:0;padding:.75rem;transition:opacity .15s;position:absolute}.lightbox__nav:hover{opacity:.7}.lightbox__nav--prev{left:.5rem}.lightbox__nav--next{right:.5rem}@media (width>=640px){.lightbox__nav{padding:.5rem}.lightbox__nav--prev{left:1rem}.lightbox__nav--next{right:1rem}}.lightbox__content{flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;padding:1rem 1rem 4rem;display:flex;position:relative}.lightbox__image{object-fit:contain;opacity:1;width:auto;max-width:100%;height:auto;max-height:80vh;transition:opacity .15s}.lightbox__image--loading{opacity:.4}@keyframes lightbox-fade-in{0%{opacity:0}to{opacity:1}}.lightbox__image--fade-in{animation:.15s ease-in-out lightbox-fade-in}.lightbox__caption{text-align:center;color:#ffffffe6;max-width:48rem;margin-top:1rem;padding-inline:1rem;font-size:.875rem}.lightbox__caption[hidden]{display:none}.lightbox__counter{color:#fff;font-size:.875rem;position:absolute;bottom:1rem;left:50%;transform:translate(-50%)}.lightbox__counter[hidden],.lightbox__nav[hidden]{display:none}.lightbox__info-toggle{z-index:10;color:#fff;cursor:pointer;background:0 0;border:0;padding:.5rem;transition:opacity .15s;position:absolute;top:1rem;left:1rem}.lightbox__info-toggle:hover{opacity:.7}.lightbox__info-toggle[hidden]{display:none}.lightbox__exif{z-index:5;backdrop-filter:blur(4px);background:#000000d9;max-height:45vh;padding:1.25rem 1rem 3.5rem;position:absolute;bottom:0;left:0;right:0;overflow-y:auto}.lightbox__exif[hidden]{display:none}.lightbox__exif-list{grid-template-columns:max-content 1fr;gap:.35rem 1rem;max-width:32rem;margin:0 auto;font-size:.875rem;display:grid}.lightbox__exif-list dt{color:#fff9;font-weight:500}.lightbox__exif-list dd{color:#fff;margin:0}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.lightbox__image--fade-in{animation:none}.photo-card__image{transition:none}.photo-card:hover .photo-card__image{transform:none}}
