:root{--paper:#f3ece1;--paper-edge:#e7ddcd;--seam:clamp(6px,0.7vw,12px);--pad:clamp(10px,1.4vw,26px);--radius:2px;--ease:cubic-bezier(0.22,1,0.36,1)}*,:after,:before{box-sizing:border-box}body,html{margin:0;height:100%;overflow:hidden;background:var(--paper);-webkit-font-smoothing:antialiased}body{background-image:radial-gradient(130% 100% at 50% 0,#f8f2e9 0,var(--paper) 55%,var(--paper-edge) 100%)}img{display:block;max-width:100%}::selection{background:#a8744f;color:#fff}.mosaic,main{height:100svh;width:100vw}.mosaic{padding:var(--pad);display:grid;grid-gap:var(--seam);gap:var(--seam);grid-template-columns:repeat(12,1fr);grid-template-rows:repeat(6,1fr)}.tile:first-child{grid-column:4/10;grid-row:1/4}.tile:nth-child(2){grid-column:1/4;grid-row:1/7}.tile:nth-child(3){grid-column:4/7;grid-row:4/7}.tile:nth-child(4){grid-column:10/13;grid-row:1/7}.tile:nth-child(5){grid-column:7/10;grid-row:4/7}.tile{position:relative;margin:0;padding:0;border:0;background:none;cursor:zoom-in;overflow:hidden;border-radius:var(--radius);-webkit-tap-highlight-color:transparent;opacity:0;transform:scale(.985);animation:reveal 1s var(--ease) forwards;animation-delay:calc(var(--i) * .11s + 80ms);box-shadow:0 1px 1px rgba(40,33,24,.05),0 14px 36px -22px rgba(40,33,24,.5)}.tile:after{content:"";border-radius:var(--radius);box-shadow:inset 0 0 0 1px rgba(40,33,24,.07);pointer-events:none;z-index:2}.frame,.tile:after{position:absolute;inset:0}.frame{display:block;background-size:cover;background-position:50%}.frame img{width:100%;height:100%;object-position:center;opacity:0;transform:scale(1.06);transition:opacity 1.1s var(--ease),transform 6s var(--ease)}.frame.is-loaded img{opacity:1;transform:scale(1.001)}.frame.is-loaded{background-image:none!important}.tile:hover .frame img{transform:scale(1.05);transition:transform 1.6s var(--ease)}.lb{position:fixed;inset:0;z-index:50;display:grid;grid-template-columns:auto 1fr auto;padding:clamp(14px,3.5vw,48px);background:radial-gradient(120% 120% at 50% 30%,color-mix(in srgb,var(--tint) 26%,#15120d) 0,#15120d 70%),#15120d;animation:fade .4s var(--ease) both;cursor:zoom-out;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.lb,.lb-stage{align-items:center}.lb-stage{margin:0;grid-column:2;display:flex;justify-content:center;max-height:100%;cursor:default;animation:lbrise .55s var(--ease) both}.lb-frame{position:relative;background-size:cover;background-position:50%;box-shadow:0 40px 120px -40px rgba(0,0,0,.8)}.lb-frame,.lb-frame img{display:block;max-width:min(92vw,1500px);max-height:88vh;border-radius:var(--radius)}.lb-frame img{width:auto;height:auto}.lb-close{position:absolute;top:clamp(12px,3vw,30px);right:clamp(12px,3vw,30px);z-index:2}.lb-nav{grid-row:1;z-index:2}.lb-prev{grid-column:1}.lb-next{grid-column:3}.lb-close,.lb-nav{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid hsla(37,42%,89%,.18);background:hsla(37,42%,89%,.04);color:#efe6d8;width:52px;height:52px;border-radius:50%;display:inline-grid;place-items:center;cursor:pointer;transition:background .3s var(--ease),border-color .3s var(--ease),transform .3s var(--ease)}.lb-close:hover,.lb-nav:hover{background:hsla(37,42%,89%,.12);border-color:hsla(37,42%,89%,.4)}.lb-nav:hover{transform:scale(1.06)}@keyframes reveal{to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@keyframes lbrise{0%{opacity:0;transform:scale(.98) translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}.frame img,.tile{opacity:1;transform:none}}@media (max-width:760px){.mosaic{grid-template-columns:repeat(2,1fr);grid-template-rows:1.25fr 1fr 1fr}.tile:first-child{grid-column:1/3;grid-row:1}.tile:nth-child(2){grid-column:1;grid-row:2}.tile:nth-child(3){grid-column:2;grid-row:2}.tile:nth-child(4){grid-column:1;grid-row:3}.tile:nth-child(5){grid-column:2;grid-row:3}.lb{grid-template-columns:1fr;grid-template-rows:1fr auto;gap:16px}.lb-stage{grid-column:1;grid-row:1}.lb-frame,.lb-frame img{max-height:76vh}.lb-nav{grid-row:2}.lb-prev{grid-column:1;justify-self:start}.lb-next{grid-column:1;justify-self:end}}