:root{color-scheme:light;--ink:#1c1714;--muted:#6e6258;--line:#e6dfd6;--paper:#f7f1ea;--panel:#ffffff;--accent:#8a5a44;--serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;--sans:"Avenir Next","Segoe UI",sans-serif}.lc-turnstile:empty{display:none}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body,html{margin:0;min-height:100%;background:var(--paper);color:var(--ink);font-family:var(--sans)}body{line-height:1.5}a{color:inherit}.upload-block{margin-top:.5rem;width:100%}.upload-input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.upload-button{display:block;width:100%;box-sizing:border-box;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:999px;background:var(--ink);color:var(--paper);font:inherit;font-size:1.05rem;font-weight:560;letter-spacing:.02em;padding:1rem 1.5rem;text-align:center;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.upload-button:not(.upload-button--busy){animation:upload-invite 3s ease-in-out infinite}.upload-button:not(.upload-button--busy):hover{animation:none;transform:translateY(-1px);box-shadow:0 10px 28px rgb(28 23 20/18%);background:#2a221c}.upload-button:not(.upload-button--busy):active{transform:translateY(0);box-shadow:0 4px 14px rgb(28 23 20/12%)}.upload-button--busy{cursor:wait;opacity:.85;animation:none}@keyframes upload-invite{0%,to{box-shadow:0 4px 16px rgb(28 23 20/10%)}50%{box-shadow:0 8px 26px rgb(28 23 20/22%)}}@media (prefers-reduced-motion:reduce){.upload-button:not(.upload-button--busy){animation:none}}.upload-name-field{display:grid;grid-gap:.35rem;gap:.35rem;margin-bottom:.75rem;font-size:.85rem;color:var(--muted);text-align:left}.upload-name-field input{font:inherit;border:1px solid rgb(28 23 20/.15);border-radius:.5rem;padding:.55rem .75rem;background:rgb(255 255 255/.65);color:var(--ink)}.upload-queue{list-style:none;margin:1rem 0 0;padding:0;font-size:.82rem;color:var(--muted)}.upload-queue li{display:flex;justify-content:space-between;gap:1rem;padding:.35rem 0;border-top:1px solid rgb(28 23 20/.08)}.upload-note{margin:.75rem 0 0;font-size:.85rem;color:var(--muted)}.gallery-section{position:relative;width:100%;max-width:80rem;margin:0 auto;padding:0 clamp(.75rem,3vw,1.5rem) 3rem}.gallery-title{font-family:var(--serif);font-weight:400;text-align:center;font-size:clamp(1.15rem,3.5vw,1.35rem);margin:0 0 clamp(1rem,3vw,1.5rem);letter-spacing:.06em;text-transform:uppercase}.gallery-grid{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:clamp(.55rem,2.2vw,.95rem);gap:clamp(.55rem,2.2vw,.95rem)}.gallery-item{position:relative;margin:0;padding:0;border:0;background:#ece5dc;width:100%;aspect-ratio:1;cursor:pointer;border-radius:12px;overflow:hidden;-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:transform .15s ease,box-shadow .15s ease}.gallery-item:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (hover:hover){.gallery-item:hover{transform:scale(1.02);box-shadow:0 8px 24px rgb(28 23 20/.12)}}.gallery-item:active{transform:scale(.98)}.gallery-item img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.gallery-item--processing img{opacity:.72;filter:saturate(.85)}.gallery-item-badge{position:absolute;inset:auto .45rem .45rem;padding:.35rem .55rem;border-radius:999px;background:rgb(28 23 20/72%);color:var(--paper);font-size:.68rem;font-weight:560;letter-spacing:.04em;text-transform:uppercase;pointer-events:none}.gallery-empty{max-width:24rem;margin:0 auto;padding:1rem 1.25rem 3rem;text-align:center}.gallery-empty h2{font-family:var(--serif);font-weight:400;margin:0 0 .5rem}.gallery-empty p{color:var(--muted);margin:0}.load-more{display:block;margin:1.5rem auto 0;border:1px solid #ddd3c8;background:#fff;border-radius:999px;padding:.55rem 1.2rem;font:inherit;cursor:pointer}.lightbox{position:fixed;inset:0;background:rgb(22 20 18/.92);display:flex;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top)) max(1rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));overflow-x:clip;overflow-y:auto;z-index:50}.lightbox-inner{position:relative;flex:0 1 100%;width:100%;max-width:960px;min-width:0;padding-top:2.75rem}.lightbox-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.lightbox-stage{touch-action:pan-y pinch-zoom;-webkit-user-select:none;-moz-user-select:none;user-select:none;min-width:0;max-width:100%;overflow:hidden}.lightbox-image{display:block;width:auto;max-width:100%;height:auto;max-height:min(72vh,calc(100dvh - 11rem));object-fit:contain;margin:0 auto}.lightbox-swipe-hint{margin:.65rem 0 0;text-align:center;color:rgb(255 255 255/.55);font-size:.78rem;letter-spacing:.03em}@media (min-width:768px){.lightbox-swipe-hint{display:none}}.lightbox-close{position:fixed;top:max(.65rem,env(safe-area-inset-top));right:max(.65rem,env(safe-area-inset-right));z-index:51;display:grid;place-items:center;width:2.75rem;height:2.75rem;border:1px solid rgb(255 255 255/.35);border-radius:50%;background:rgb(0 0 0/.45);color:#fff;font-size:1.65rem;line-height:1;cursor:pointer;-webkit-tap-highlight-color:transparent}.lightbox-close:focus-visible{outline:2px solid var(--accent,#c9a962);outline-offset:2px}.lightbox-toolbar{justify-content:space-between;gap:.75rem;margin-top:1rem;max-width:100%}.lightbox-toolbar,.lightbox-toolbar-start{display:flex;align-items:stretch;min-width:0}.lightbox-toolbar-start{flex:1 1 auto}.lightbox-toolbar-spacer{display:block;min-height:1px}.lightbox-toolbar-nav{flex:0 1 auto;display:flex;gap:.5rem;margin-left:auto;min-width:0;max-width:100%;border:none;padding:0}.lightbox-btn{border:1px solid rgb(255 255 255/.35);background:rgb(255 255 255/.06);color:#fff;border-radius:999px;font:inherit;cursor:pointer;min-height:2.75rem;padding:.65rem 1.1rem;-webkit-tap-highlight-color:transparent;transition:background .15s ease,border-color .15s ease}.lightbox-btn:focus-visible{outline:2px solid var(--accent,#c9a962);outline-offset:2px}.lightbox-btn:disabled{opacity:.38;cursor:not-allowed}.lightbox-btn-download{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lightbox-btn-nav{min-width:0;flex:1 1;padding-left:.85rem;padding-right:.85rem;font-weight:560;letter-spacing:.02em;font-size:.92rem}@media (min-width:480px){.lightbox-btn-nav{flex:0 0 auto;min-width:7.5rem;padding-left:1.6rem;padding-right:1.6rem;font-size:1.02rem}}@media (max-width:479px){.lightbox-toolbar{flex-wrap:wrap}.lightbox-toolbar-start{flex:1 1 100%;order:1}.lightbox-toolbar-nav{flex:1 1 100%;order:2;justify-content:flex-end}.lightbox-btn-download{width:100%}}@media (hover:hover){.lightbox-btn:not(:disabled):hover{background:rgb(255 255 255/.14);border-color:rgb(255 255 255/.55)}.lightbox-close:hover{background:rgb(0 0 0/.65)}}@media (min-width:640px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}}@media (min-width:768px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:1100px){.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}}