.site-nav{pointer-events:auto}.site-nav__list{display:flex;list-style:none;padding:0;margin:0;flex-wrap:wrap}.site-nav__item{display:flex;align-items:center}.site-nav__item:not(:last-child):after{content:"|";content:"|" / "";color:var(--color-text-secondary);opacity:.4;padding:0 .75em;font-weight:300}.site-nav__link{display:inline-flex;align-items:center;min-height:32px;font-size:1rem;color:var(--color-text-secondary);letter-spacing:.1em;text-transform:uppercase;text-decoration:none;opacity:.85;transition:opacity .3s ease,color .3s ease;white-space:nowrap}.site-nav__link:hover{opacity:1;color:var(--color-text-primary)}.site-nav__link--active{opacity:1;color:var(--color-text-primary);font-weight:500}@media(max-width:768px){.site-nav__link{font-size:.875rem;letter-spacing:.05em;min-height:44px}.site-nav__item:not(:last-child):after{display:none}.site-nav__item{margin-right:1.25em}}@media(pointer:coarse){.site-nav__link{min-height:44px}}.app{min-height:100vh;width:100%;position:relative;overflow-x:hidden;overflow-y:auto;transition:opacity var(--anim-slower) var(--ease-smooth);isolation:isolate}.app--loaded{opacity:1}.app-header{position:fixed;top:0;left:0;right:0;z-index:var(--z-max);padding:var(--spacing-lg) var(--spacing-xl);background:transparent;pointer-events:none;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:transform var(--anim-medium) var(--ease-smooth)}.app-header h1{font-size:2.5rem;font-weight:300;letter-spacing:.05em;margin-bottom:var(--spacing-xs);pointer-events:auto;color:var(--color-text-primary);transition:color var(--anim-medium) var(--ease-smooth)}.app-header__tagline{font-size:.9375rem;letter-spacing:.08em;margin-bottom:var(--spacing-sm);pointer-events:auto;color:var(--color-text-secondary)}.app-main{width:100%;min-height:100vh;position:relative;padding-top:calc(var(--header-h, 120px) + var(--spacing-md));transform:translateZ(0);will-change:transform;z-index:1}@media(max-width:768px),(max-height:520px)and (orientation:landscape){.app-header{position:relative;padding:var(--spacing-md) var(--spacing-lg);background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}.app-header h1{font-size:1.75rem}.app-main{padding-top:var(--spacing-sm)}}.text-page{width:100%;min-height:100vh;padding-top:calc(var(--header-h, 120px) + var(--spacing-md));padding-bottom:80px;display:flex;justify-content:center;z-index:1;position:relative}.text-page__content{max-width:720px;width:100%;padding:40px var(--spacing-xl);color:var(--color-text-primary)}.text-page__title{font-family:var(--font-heading);font-size:2rem;font-weight:300;letter-spacing:.05em;margin-bottom:var(--spacing-xl);color:var(--color-text-primary)}.text-page__body{font-family:var(--font-body);font-size:1.1rem;line-height:1.8;color:var(--color-text-primary)}.text-page__body p{margin-bottom:1.5em}.text-page__body h2,.text-page__body h3{font-family:var(--font-heading);margin-top:2em;margin-bottom:.75em}.text-page__body ul,.text-page__body ol{margin-bottom:1.5em;padding-left:1.5em}.text-page__body li{margin-bottom:.5em}.text-page__empty{font-style:italic;color:var(--color-text-secondary);opacity:.7}@media(max-width:768px),(max-height:520px)and (orientation:landscape){.text-page{padding-top:var(--spacing-sm)}}@media(max-width:768px){.text-page__content{padding:24px var(--spacing-lg)}.text-page__title{font-size:1.5rem}.text-page__body{font-size:1rem}}.site-footer{position:relative;z-index:1;padding:var(--spacing-lg) var(--spacing-xl);text-align:center;font-size:.875rem;color:var(--color-text-secondary)}.site-footer p+p{margin-top:var(--spacing-xs)}.site-footer a{color:inherit;text-decoration:underline;text-underline-offset:.2em}.site-footer a:hover,.site-footer a:focus-visible{color:var(--color-text-primary)}.gallery-status{text-align:center;padding:4rem var(--spacing-md);color:var(--color-text-primary)}.gallery-status p+*{margin-top:var(--spacing-md)}.gallery-status button,.gallery-more__button{min-height:44px;padding:0 var(--spacing-lg);border:1px solid currentColor;border-radius:var(--radius-md);color:var(--color-text-primary);font-size:.9375rem;letter-spacing:.05em}.gallery-status button:hover,.gallery-more__button:hover{background:var(--color-surface)}.gallery-more{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-lg) var(--spacing-md);color:var(--color-text-secondary);font-size:.875rem}.app .skip-link{top:-100px}.app .skip-link:focus{top:0}:root{--anim-duration-instant: .1s;--anim-duration-fast: .2s;--anim-duration-medium: .4s;--anim-duration-slow: .6s;--anim-duration-slower: .8s;--anim-duration-entry: 1.2s;--anim-ease-out-expo: cubic-bezier(.19, 1, .22, 1);--anim-ease-out-quart: cubic-bezier(.25, .46, .45, .94);--anim-ease-out-back: cubic-bezier(.175, .885, .32, 1.275);--anim-ease-in-out-smooth: cubic-bezier(.4, 0, .2, 1);--anim-ease-spring: cubic-bezier(.5, 1.5, .5, 1);--shadow-level-0: 0 1px 3px rgba(0, 0, 0, .05);--shadow-level-1: 0 2px 8px rgba(0, 0, 0, .08);--shadow-level-2: 0 4px 16px rgba(0, 0, 0, .12);--shadow-level-3: 0 8px 24px rgba(0, 0, 0, .16);--shadow-level-4: 0 12px 32px rgba(0, 0, 0, .2);--shadow-level-5: 0 16px 40px rgba(0, 0, 0, .24);--shadow-level-6: 0 20px 48px rgba(0, 0, 0, .28);--filter-grayscale-full: grayscale(100%) contrast(1.1);--filter-grayscale-partial: grayscale(50%) contrast(1.05);--filter-grayscale-none: grayscale(0%) contrast(1)}@keyframes entryFadeScale{0%{opacity:0;transform:scale(.85) translateY(20px) rotate(var(--random-rotation, 0deg))}50%{opacity:.8;transform:scale(1.02) translateY(-5px) rotate(calc(var(--random-rotation, 0deg) * .5))}to{opacity:1;transform:scale(1) translateY(0) rotate(var(--random-rotation, 0deg))}}@keyframes pulseAttention{0%{transform:scale(1);box-shadow:var(--shadow-level-3)}50%{transform:scale(1.03);box-shadow:var(--shadow-level-5)}to{transform:scale(1);box-shadow:var(--shadow-level-3)}}@keyframes clickRipple{0%{transform:scale(1)}40%{transform:scale(1.08)}to{transform:scale(1.05)}}@keyframes shadowMorph{0%{box-shadow:var(--shadow-level-2)}to{box-shadow:var(--shadow-level-5)}}.image-effect{filter:var(--filter-grayscale-full);transition:filter .3s var(--anim-ease-out-quart),transform var(--anim-duration-medium) var(--anim-ease-out-expo),box-shadow var(--anim-duration-medium) var(--anim-ease-out-quart);will-change:filter,transform;transform:translateZ(0)}.image-effect:hover{filter:var(--filter-grayscale-none)}.animate-entry{animation:entryFadeScale var(--anim-duration-entry) var(--anim-ease-out-expo) both;animation-delay:calc(var(--stagger-delay, 0) * 80ms)}.hover-rotate{transition:transform var(--anim-duration-medium) var(--anim-ease-out-back);transform-origin:center center}.hover-rotate:hover{transform:rotate(calc(var(--hover-rotation, 0deg) * 1)) scale(1.02) translateZ(0)}.click-scale{transition:transform var(--anim-duration-fast) var(--anim-ease-spring),box-shadow var(--anim-duration-fast) var(--anim-ease-out-quart)}.click-scale.is-clicked{animation:clickRipple var(--anim-duration-medium) var(--anim-ease-out-back);transform:scale(1.05) translateZ(0)}.dynamic-shadow{transition:box-shadow var(--anim-duration-medium) var(--anim-ease-out-quart)}.dynamic-shadow[data-z-level="1"]{box-shadow:var(--shadow-level-1)}.dynamic-shadow[data-z-level="2"]{box-shadow:var(--shadow-level-2)}.dynamic-shadow[data-z-level="3"]{box-shadow:var(--shadow-level-3)}.dynamic-shadow[data-z-level="4"]{box-shadow:var(--shadow-level-4)}.dynamic-shadow[data-z-level="5"]{box-shadow:var(--shadow-level-5)}.dynamic-shadow[data-z-level="6"]{box-shadow:var(--shadow-level-6)}.dynamic-shadow:hover{box-shadow:var(--shadow-level-5)}.dynamic-shadow.is-selected{box-shadow:var(--shadow-level-6)}.gpu-accelerated{transform:translateZ(0);backface-visibility:hidden;perspective:1000px;will-change:transform,filter}.gpu-accelerated:after{content:"";position:absolute;inset:0;z-index:-1;transform:translateZ(-1px)}.cursor-interact{cursor:pointer;transition:transform var(--anim-duration-instant) var(--anim-ease-out-quart)}.cursor-interact:active{transform:scale(.98) translateZ(0)}@media(hover:none),(pointer:coarse){.image-effect{filter:none}}.image-card:focus-visible .image-effect{filter:var(--filter-grayscale-none)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.image-effect{filter:none!important}.hover-rotate:hover{transform:none!important}}.perf-monitor{contain:layout style paint;isolation:isolate}.z-transition{transition:z-index 0ms var(--anim-duration-fast)}.image-card{position:relative;cursor:pointer;transition:box-shadow var(--anim-duration-medium, var(--transition-medium)) var(--anim-ease-out-quart),left .3s var(--anim-ease-out-expo, cubic-bezier(.19, 1, .22, 1)),top .3s var(--anim-ease-out-expo, cubic-bezier(.19, 1, .22, 1)),z-index 0ms var(--anim-duration-fast, var(--transition-fast));border-radius:var(--radius-md);overflow:visible;background:transparent;box-shadow:0 4px 12px var(--color-shadow);isolation:isolate}.image-card__inner{width:100%;height:100%;position:relative;overflow:hidden;border-radius:inherit;background:var(--color-surface);transform:rotate(var(--random-rotation, 0deg)) translateZ(0);transform-origin:center center;transition:transform var(--anim-duration-medium, var(--transition-medium)) var(--anim-ease-out-expo);will-change:transform;contain:layout style paint}@keyframes squeezeFromRight{0%{transform:scaleX(1) rotate(var(--random-rotation, 0deg)) translateZ(0)}40%{transform:scaleX(.92) rotate(var(--random-rotation, 0deg)) translateZ(0)}to{transform:scaleX(1) scale(1.06) rotate(var(--hover-rotation, 0deg)) translateZ(0)}}@keyframes squeezeFromLeft{0%{transform:scaleX(1) rotate(var(--random-rotation, 0deg)) translateZ(0)}40%{transform:scaleX(.92) rotate(var(--random-rotation, 0deg)) translateZ(0)}to{transform:scaleX(1) scale(1.06) rotate(var(--hover-rotation, 0deg)) translateZ(0)}}@keyframes squeezeFromTop{0%{transform:scaleY(1) rotate(var(--random-rotation, 0deg)) translateZ(0)}40%{transform:scaleY(.92) rotate(var(--random-rotation, 0deg)) translateZ(0)}to{transform:scaleY(1) scale(1.06) rotate(var(--hover-rotation, 0deg)) translateZ(0)}}@keyframes squeezeFromBottom{0%{transform:scaleY(1) rotate(var(--random-rotation, 0deg)) translateZ(0)}40%{transform:scaleY(.92) rotate(var(--random-rotation, 0deg)) translateZ(0)}to{transform:scaleY(1) scale(1.06) rotate(var(--hover-rotation, 0deg)) translateZ(0)}}@keyframes unsqueezeToRight{0%{transform:scale(1.06) rotate(var(--hover-rotation, 0deg)) translateZ(0)}to{transform:scale(1) rotate(var(--random-rotation, 0deg)) translateZ(0)}}@keyframes unsqueezeToLeft{0%{transform:scale(1.06) rotate(var(--hover-rotation, 0deg)) translateZ(0)}to{transform:scale(1) rotate(var(--random-rotation, 0deg)) translateZ(0)}}@keyframes unsqueezeToTop{0%{transform:scale(1.06) rotate(var(--hover-rotation, 0deg)) translateZ(0)}to{transform:scale(1) rotate(var(--random-rotation, 0deg)) translateZ(0)}}@keyframes unsqueezeToBottom{0%{transform:scale(1.06) rotate(var(--hover-rotation, 0deg)) translateZ(0)}to{transform:scale(1) rotate(var(--random-rotation, 0deg)) translateZ(0)}}.image-card--squeeze-right .image-card__inner{transform-origin:left center}.image-card--squeeze-left .image-card__inner{transform-origin:right center}.image-card--squeeze-top .image-card__inner{transform-origin:center bottom}.image-card--squeeze-bottom .image-card__inner{transform-origin:center top}.image-card--squeeze-right .image-card__inner,.image-card--squeeze-left .image-card__inner,.image-card--squeeze-top .image-card__inner,.image-card--squeeze-bottom .image-card__inner{transition:none}.image-card:hover{box-shadow:0 12px 32px var(--color-hover-shadow);z-index:calc(var(--z-selected) + 1)!important}.image-card:hover .image-card__inner{transform:scale(1.03) rotate(var(--hover-rotation, 0deg)) translateZ(0)}.image-card--squeeze-right:hover,.image-card--squeeze-left:hover,.image-card--squeeze-top:hover,.image-card--squeeze-bottom:hover{box-shadow:0 16px 40px var(--color-hover-shadow);z-index:calc(var(--z-selected) + 1)!important}.image-card--squeeze-right:hover .image-card__inner{animation:squeezeFromRight .35s var(--anim-ease-out-back, cubic-bezier(.175, .885, .32, 1.275)) forwards}.image-card--squeeze-left:hover .image-card__inner{animation:squeezeFromLeft .35s var(--anim-ease-out-back, cubic-bezier(.175, .885, .32, 1.275)) forwards}.image-card--squeeze-top:hover .image-card__inner{animation:squeezeFromTop .35s var(--anim-ease-out-back, cubic-bezier(.175, .885, .32, 1.275)) forwards}.image-card--squeeze-bottom:hover .image-card__inner{animation:squeezeFromBottom .35s var(--anim-ease-out-back, cubic-bezier(.175, .885, .32, 1.275)) forwards}.image-card--squeeze-right.is-leaving:not(:hover) .image-card__inner{animation:unsqueezeToRight .35s var(--anim-ease-out-quart, cubic-bezier(.25, 1, .5, 1)) forwards}.image-card--squeeze-left.is-leaving:not(:hover) .image-card__inner{animation:unsqueezeToLeft .35s var(--anim-ease-out-quart, cubic-bezier(.25, 1, .5, 1)) forwards}.image-card--squeeze-top.is-leaving:not(:hover) .image-card__inner{animation:unsqueezeToTop .35s var(--anim-ease-out-quart, cubic-bezier(.25, 1, .5, 1)) forwards}.image-card--squeeze-bottom.is-leaving:not(:hover) .image-card__inner{animation:unsqueezeToBottom .35s var(--anim-ease-out-quart, cubic-bezier(.25, 1, .5, 1)) forwards}@keyframes bigSqueezeX{0%{transform:scaleX(1) scaleY(1) translate(0) skew(0) rotate(var(--random-rotation, 0deg)) translateZ(0)}15%{transform:scaleX(.66) scaleY(1.15) translate(var(--sq-tx, 0px),var(--sq-ty, 0px)) skew(var(--sq-skew-x, 0deg),var(--sq-skew-y, 0deg)) rotate(var(--random-rotation, 0deg)) translateZ(0)}35%{transform:scaleX(.68) scaleY(1.13) translate(var(--sq-tx, 0px),var(--sq-ty, 0px)) skew(var(--sq-skew-x, 0deg),var(--sq-skew-y, 0deg)) rotate(var(--random-rotation, 0deg)) translateZ(0)}55%{transform:scaleX(.82) scaleY(1.06) translate(calc(var(--sq-tx, 0px) * .3),calc(var(--sq-ty, 0px) * .3)) skew(0) rotate(var(--hover-rotation, 0deg)) translateZ(0)}75%{transform:scaleX(1.04) scaleY(1) translate(0) skew(0) rotate(var(--hover-rotation, 0deg)) translateZ(0)}to{transform:scale(1.06) translate(0) skew(0) rotate(var(--hover-rotation, 0deg)) translateZ(0)}}@keyframes unBigSqueezeX{0%{transform:scale(1.06) translate(0) skew(0) rotate(var(--hover-rotation, 0deg)) translateZ(0)}18%{transform:scaleX(1.02) scaleY(1) translate(calc(var(--sq-tx, 0px) * .3),calc(var(--sq-ty, 0px) * .3)) skew(0) rotate(var(--hover-rotation, 0deg)) translateZ(0)}40%{transform:scaleX(.7) scaleY(1.13) translate(var(--sq-tx, 0px),var(--sq-ty, 0px)) skew(var(--sq-skew-x, 0deg),var(--sq-skew-y, 0deg)) rotate(var(--random-rotation, 0deg)) translateZ(0)}60%{transform:scaleX(.68) scaleY(1.14) translate(var(--sq-tx, 0px),var(--sq-ty, 0px)) skew(var(--sq-skew-x, 0deg),var(--sq-skew-y, 0deg)) rotate(var(--random-rotation, 0deg)) translateZ(0)}80%{transform:scaleX(.88) scaleY(1.04) translate(calc(var(--sq-tx, 0px) * .2),calc(var(--sq-ty, 0px) * .2)) skew(0) rotate(var(--random-rotation, 0deg)) translateZ(0)}to{transform:scale(1) translate(0) skew(0) rotate(var(--random-rotation, 0deg)) translateZ(0)}}@keyframes bigSqueezeY{0%{transform:scaleY(1) scaleX(1) translate(0) skew(0) rotate(var(--random-rotation, 0deg)) translateZ(0)}15%{transform:scaleY(.66) scaleX(1.15) translate(var(--sq-tx, 0px),var(--sq-ty, 0px)) skew(var(--sq-skew-x, 0deg),var(--sq-skew-y, 0deg)) rotate(var(--random-rotation, 0deg)) translateZ(0)}35%{transform:scaleY(.68) scaleX(1.13) translate(var(--sq-tx, 0px),var(--sq-ty, 0px)) skew(var(--sq-skew-x, 0deg),var(--sq-skew-y, 0deg)) rotate(var(--random-rotation, 0deg)) translateZ(0)}55%{transform:scaleY(.82) scaleX(1.06) translate(calc(var(--sq-tx, 0px) * .3),calc(var(--sq-ty, 0px) * .3)) skew(0) rotate(var(--hover-rotation, 0deg)) translateZ(0)}75%{transform:scaleY(1.04) scaleX(1) translate(0) skew(0) rotate(var(--hover-rotation, 0deg)) translateZ(0)}to{transform:scale(1.06) translate(0) skew(0) rotate(var(--hover-rotation, 0deg)) translateZ(0)}}@keyframes unBigSqueezeY{0%{transform:scale(1.06) translate(0) skew(0) rotate(var(--hover-rotation, 0deg)) translateZ(0)}18%{transform:scaleY(1.02) scaleX(1) translate(calc(var(--sq-tx, 0px) * .3),calc(var(--sq-ty, 0px) * .3)) skew(0) rotate(var(--hover-rotation, 0deg)) translateZ(0)}40%{transform:scaleY(.7) scaleX(1.13) translate(var(--sq-tx, 0px),var(--sq-ty, 0px)) skew(var(--sq-skew-x, 0deg),var(--sq-skew-y, 0deg)) rotate(var(--random-rotation, 0deg)) translateZ(0)}60%{transform:scaleY(.68) scaleX(1.14) translate(var(--sq-tx, 0px),var(--sq-ty, 0px)) skew(var(--sq-skew-x, 0deg),var(--sq-skew-y, 0deg)) rotate(var(--random-rotation, 0deg)) translateZ(0)}80%{transform:scaleY(.88) scaleX(1.04) translate(calc(var(--sq-tx, 0px) * .2),calc(var(--sq-ty, 0px) * .2)) skew(0) rotate(var(--random-rotation, 0deg)) translateZ(0)}to{transform:scale(1) translate(0) skew(0) rotate(var(--random-rotation, 0deg)) translateZ(0)}}@keyframes bigSqueezeXY{0%{transform:scaleX(1) scaleY(1) translate(0) skew(0) rotate(var(--random-rotation, 0deg)) translateZ(0)}15%{transform:scaleX(.7) scaleY(.7) translate(var(--sq-tx, 0px),var(--sq-ty, 0px)) skew(var(--sq-skew-x, 0deg),var(--sq-skew-y, 0deg)) rotate(var(--random-rotation, 0deg)) translateZ(0)}35%{transform:scaleX(.72) scaleY(.72) translate(var(--sq-tx, 0px),var(--sq-ty, 0px)) skew(var(--sq-skew-x, 0deg),var(--sq-skew-y, 0deg)) rotate(var(--random-rotation, 0deg)) translateZ(0)}55%{transform:scaleX(.85) scaleY(.85) translate(calc(var(--sq-tx, 0px) * .3),calc(var(--sq-ty, 0px) * .3)) skew(0) rotate(var(--hover-rotation, 0deg)) translateZ(0)}75%{transform:scaleX(1.03) scaleY(1.03) translate(0) skew(0) rotate(var(--hover-rotation, 0deg)) translateZ(0)}to{transform:scale(1.06) translate(0) skew(0) rotate(var(--hover-rotation, 0deg)) translateZ(0)}}@keyframes unBigSqueezeXY{0%{transform:scale(1.06) translate(0) skew(0) rotate(var(--hover-rotation, 0deg)) translateZ(0)}18%{transform:scaleX(1.02) scaleY(1.02) translate(calc(var(--sq-tx, 0px) * .3),calc(var(--sq-ty, 0px) * .3)) skew(0) rotate(var(--hover-rotation, 0deg)) translateZ(0)}40%{transform:scaleX(.74) scaleY(.74) translate(var(--sq-tx, 0px),var(--sq-ty, 0px)) skew(var(--sq-skew-x, 0deg),var(--sq-skew-y, 0deg)) rotate(var(--random-rotation, 0deg)) translateZ(0)}60%{transform:scaleX(.72) scaleY(.72) translate(var(--sq-tx, 0px),var(--sq-ty, 0px)) skew(var(--sq-skew-x, 0deg),var(--sq-skew-y, 0deg)) rotate(var(--random-rotation, 0deg)) translateZ(0)}80%{transform:scaleX(.9) scaleY(.9) translate(calc(var(--sq-tx, 0px) * .2),calc(var(--sq-ty, 0px) * .2)) skew(0) rotate(var(--random-rotation, 0deg)) translateZ(0)}to{transform:scale(1) translate(0) skew(0) rotate(var(--random-rotation, 0deg)) translateZ(0)}}.image-card--bigsqueeze-x .image-card__inner,.image-card--bigsqueeze-y .image-card__inner,.image-card--bigsqueeze-xy .image-card__inner{transform-origin:var(--squeeze-origin-x, center) var(--squeeze-origin-y, center);transition:none}.image-card--bigsqueeze-x:hover,.image-card--bigsqueeze-y:hover,.image-card--bigsqueeze-xy:hover{box-shadow:0 16px 40px var(--color-hover-shadow);z-index:calc(var(--z-selected) + 1)!important}.image-card--bigsqueeze-x:hover .image-card__inner{animation:bigSqueezeX .55s cubic-bezier(.22,1,.36,1) forwards}.image-card--bigsqueeze-y:hover .image-card__inner{animation:bigSqueezeY .55s cubic-bezier(.22,1,.36,1) forwards}.image-card--bigsqueeze-xy:hover .image-card__inner{animation:bigSqueezeXY .55s cubic-bezier(.22,1,.36,1) forwards}.image-card--bigsqueeze-x.is-leaving:not(:hover) .image-card__inner{animation:unBigSqueezeX .55s cubic-bezier(.22,1,.36,1) forwards}.image-card--bigsqueeze-y.is-leaving:not(:hover) .image-card__inner{animation:unBigSqueezeY .55s cubic-bezier(.22,1,.36,1) forwards}.image-card--bigsqueeze-xy.is-leaving:not(:hover) .image-card__inner{animation:unBigSqueezeXY .55s cubic-bezier(.22,1,.36,1) forwards}.image-card--anim-none:hover{box-shadow:0 12px 32px var(--color-hover-shadow);z-index:calc(var(--z-selected) + 1)!important}.image-card--anim-none:hover .image-card__inner{transform:rotate(var(--random-rotation, 0deg)) translateZ(0)}.image-card--anim-none .image-card__img{transition:filter .3s var(--anim-ease-out-quart, cubic-bezier(.25, .46, .45, .94))}.image-card--anim-none:hover .image-card__img{transform:none;filter:contrast(1.05) brightness(1.02)}.image-card--selected{box-shadow:0 16px 40px var(--color-hover-shadow);z-index:var(--z-selected)}.image-card--selected .image-card__inner{transform:scale(1.05) translateZ(0)}.image-card--loaded{opacity:1}.image-card--mobile{position:relative!important;width:100%!important;height:auto!important;aspect-ratio:var(--aspect-ratio, 4/5)}.image-card--mobile:hover .image-card__inner{transform:scale(1.02) translateZ(0)!important}.image-card--mobile:active .image-card__inner{transform:scale(.98) translateZ(0)!important}.image-card__img{width:100%;height:100%;object-fit:cover;transition:transform var(--anim-duration-slow, var(--transition-slow)) var(--anim-ease-out-expo),filter .3s var(--anim-ease-out-quart, cubic-bezier(.25, .46, .45, .94));will-change:transform,filter;image-rendering:crisp-edges;image-rendering:-webkit-optimize-contrast}.image-card:hover .image-card__img{transform:scale(1.08) translateZ(0);filter:var(--filter-grayscale-none, grayscale(0%)) contrast(1.05) brightness(1.02)}.image-card__overlay{position:absolute;bottom:0;left:0;right:0;padding:var(--spacing-md);background:linear-gradient(to top,rgba(0,0,0,.8) 0%,rgba(0,0,0,.4) 50%,transparent 100%);transform:translateY(100%);transition:transform var(--anim-duration-medium, var(--transition-medium)) var(--anim-ease-out-expo);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.image-card:hover .image-card__overlay,.image-card:focus-visible .image-card__overlay{transform:translateY(0)}.image-card__title{color:#fff;font-size:.875rem;font-weight:500;letter-spacing:.05em}.image-card__loader{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--color-background)}.loader-spinner{width:40px;height:40px;border:3px solid var(--color-background);border-top-color:var(--color-accent);border-radius:50%;animation:spin 1s linear infinite}.image-card__error{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--color-background);color:var(--color-text-secondary);padding:var(--spacing-md);text-align:center}@keyframes clickPulse{0%{transform:scale(1) rotate(var(--random-rotation, 0deg))}50%{transform:scale(1.08) rotate(var(--random-rotation, 0deg))}to{transform:scale(1.05) rotate(var(--random-rotation, 0deg))}}.image-card.is-clicked .image-card__inner{animation:clickPulse .4s var(--anim-ease-out-back, ease-out)}@keyframes spin{to{transform:rotate(360deg)}}.image-card:focus{outline:3px solid var(--color-accent);outline-offset:3px}.image-card:focus .image-card__inner{transform:scale(1.02) translateZ(0)}.image-card:focus:not(:focus-visible){outline:none}.image-card__video-badge{position:absolute;bottom:12px;right:12px;width:36px;height:36px;background:#000000b3;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;pointer-events:none;z-index:2;transition:transform .2s ease,background .2s ease;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.image-card:hover .image-card__video-badge{transform:scale(1.1);background:#fffffff2;color:#333}.image-card__video-badge svg{margin-left:2px}.image-card--video .image-card__img{object-fit:cover}@media(max-width:768px){.image-card{box-shadow:0 2px 8px var(--color-shadow)}.image-card__overlay{transform:translateY(0);background:linear-gradient(to top,rgba(0,0,0,.5) 0%,transparent 100%)}}.image-collage{position:relative;width:100%;padding:var(--spacing-xl);transform-style:preserve-3d;perspective:1000px;transform:translateZ(0)}.collage--loaded{animation:collageFadeIn var(--anim-slower) var(--ease-smooth)}.image-collage--mobile{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:start;gap:var(--spacing-md);padding:var(--spacing-lg);min-height:auto;perspective:none;transform-style:flat}@supports (transform-style: preserve-3d){.image-collage:not(.image-collage--mobile){transform:translateZ(0) translateY(calc(var(--scroll-offset, 0) * -.05px));transition:transform 0ms}}@media(max-width:768px){.image-collage{padding:var(--spacing-md);min-height:auto;perspective:none}}@keyframes collageFadeIn{0%{opacity:0}to{opacity:1}}.floating-elements-container{position:fixed;top:0;left:0;width:100%;height:100vh;pointer-events:none;z-index:-1;overflow:hidden}.floating-element{position:absolute;top:0;left:0;pointer-events:none;will-change:transform;transition:none;user-select:none;-webkit-user-select:none;backface-visibility:hidden;-webkit-backface-visibility:hidden;border-radius:50%;box-shadow:0 4px 12px #0000001a,0 2px 4px #0000000d;opacity:.45;animation:floatingElementFadeIn .8s ease-out both}@keyframes floatingElementFadeIn{0%{opacity:0}to{opacity:.45}}@media(max-width:768px){.floating-element{box-shadow:0 2px 8px #00000014,0 1px 3px #0000000a}}@media(prefers-reduced-motion:reduce){.floating-element{animation:none}}:root{--color-background: #f5f5f5;--color-surface: #ffffff;--color-text-primary: #212121;--color-text-secondary: #757575;--color-accent: #ff4081;--color-shadow: rgba(0, 0, 0, .15);--color-hover-shadow: rgba(0, 0, 0, .25);--font-heading: Georgia, serif;--font-body: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--shadow-xs: 0 1px 3px rgba(0, 0, 0, .05);--shadow-sm: 0 2px 6px rgba(0, 0, 0, .08);--shadow-md: 0 4px 12px rgba(0, 0, 0, .12);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .16);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .2);--shadow-2xl: 0 16px 40px rgba(0, 0, 0, .24);--shadow-3xl: 0 20px 48px rgba(0, 0, 0, .28);--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-xxl: 48px;--transition-fast: .15s ease-out;--transition-medium: .3s ease-out;--transition-slow: .5s ease-out;--anim-instant: .1s;--anim-fast: .2s;--anim-medium: .4s;--anim-slow: .6s;--anim-slower: .8s;--anim-slowest: 1.2s;--ease-out-expo: cubic-bezier(.19, 1, .22, 1);--ease-out-quart: cubic-bezier(.25, .46, .45, .94);--ease-out-back: cubic-bezier(.175, .885, .32, 1.275);--ease-smooth: cubic-bezier(.4, 0, .2, 1);--ease-spring: cubic-bezier(.5, 1.5, .5, 1);--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--z-base: 1;--z-elevated: 10;--z-hover: 50;--z-selected: 100;--z-overlay: 500;--z-max: 1000;--gpu-hack: translateZ(0);--will-change-transform: transform;--will-change-filter: filter;--will-change-opacity: opacity;--breakpoint-mobile: 768px;--breakpoint-tablet: 1024px;--breakpoint-desktop: 1440px}.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.sr-only:focus,.sr-only:active{position:static!important;width:auto!important;height:auto!important;padding:inherit!important;margin:inherit!important;overflow:visible!important;clip:auto!important;white-space:normal!important}*:focus{outline:none}*:focus-visible{outline:3px solid #0066CC!important;outline-offset:2px!important}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[role=button]:focus-visible,[tabindex]:not([tabindex="-1"]):focus-visible{outline:3px solid #0066CC!important;outline-offset:3px!important;box-shadow:0 0 0 3px #0066cc40}.dark-bg *:focus-visible{outline-color:#66b3ff!important}.artwork-modal *:focus-visible{outline-color:var(--am-focus, #66B3FF)!important}.image-card:focus-visible{outline:3px solid #0066CC!important;outline-offset:4px!important;transform:scale(1.02)}.skip-link{position:absolute;top:0;left:0;background:#000;color:#fff;padding:12px 20px;z-index:100000;text-decoration:none;border-radius:0 0 4px;font-weight:600;font-size:16px;transform:translateY(-150%);transition:transform .2s ease-in-out}.skip-link:focus{transform:translateY(0);outline:3px solid #FFD700!important;outline-offset:2px!important}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.parallax,.float-animation,.hover-rotate,.click-scale{animation:none!important;transition:none!important;transform:none!important}html{scroll-behavior:auto!important}.floating-element{animation:none!important}.image-card{transition:none!important}.image-card:hover{transform:none!important}}@media(prefers-contrast:high){button,input,textarea,select,.image-card,.artwork-modal__content{border:2px solid currentColor!important}*:focus-visible{outline-width:4px!important;outline-style:double!important}.subtitle,.description-text,.detail-value{font-weight:600}img{border:1px solid currentColor}}@media(prefers-color-scheme:dark){:root{--focus-color: #66B3FF;--focus-shadow: rgba(102, 179, 255, .3)}*:focus-visible{outline-color:var(--focus-color)!important;box-shadow:0 0 0 3px var(--focus-shadow)}}#aria-live-region{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}[tabindex="0"]:not(.image-card):hover{cursor:pointer;box-shadow:0 2px 4px #0000001a}.show-tab-order [tabindex="0"]:after{content:attr(tabindex);position:absolute;top:0;right:0;background:#06c;color:#fff;padding:2px 6px;font-size:12px;border-radius:2px;pointer-events:none}button:disabled,[aria-disabled=true]{opacity:.6;cursor:not-allowed;filter:grayscale(.3)}button:disabled:focus-visible,[aria-disabled=true]:focus-visible{outline-color:#999!important}.required:after,[aria-required=true]:after{content:" *";color:#c00;font-weight:700}[aria-invalid=true]{border-color:#c00!important;border-width:2px!important}[aria-invalid=true]:focus-visible{outline-color:#c00!important;box-shadow:0 0 0 3px #cc000040}[aria-busy=true]{position:relative;pointer-events:none}[aria-busy=true]:after{content:"";position:absolute;inset:0;background:#ffffffb3;display:flex;align-items:center;justify-content:center}[role=tooltip]{position:absolute;z-index:10000;padding:8px 12px;background:#000000e6;color:#fff;border-radius:4px;font-size:14px;white-space:nowrap;pointer-events:none}@media print{.skip-link,button,[role=button],.artwork-modal__nav{display:none!important}a[href]:after{content:" (" attr(href) ")"}*{color:#000!important;background:#fff!important}}button,a,input,textarea,select,[role=button],[tabindex]:not([tabindex="-1"]){min-height:44px;min-width:44px}p a,li a,span a{min-height:auto;min-width:auto}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:#0000001a;border-radius:6px}::-webkit-scrollbar-thumb{background:#0000004d;border-radius:6px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:#00000080}@media(prefers-contrast:high){::-webkit-scrollbar-track{border:1px solid currentColor}::-webkit-scrollbar-thumb{background:currentColor;border:1px solid currentColor}}.focus-trap-container{position:relative}.focus-trap-container:focus{outline:none}.announcement-banner{position:fixed;top:0;left:0;right:0;background:#06c;color:#fff;padding:12px;text-align:center;z-index:100000;transform:translateY(-100%);transition:transform .3s ease-in-out}.announcement-banner.show{transform:translateY(0)}@media(prefers-reduced-motion:reduce){.announcement-banner{transition:none}}*{margin:0;padding:0;box-sizing:border-box}html,body{min-height:100%;width:100%;overflow-x:hidden}body{font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--color-background);color:var(--color-text-primary);line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading)}.no-animations,.no-animations *{animation:none!important;transition:none!important}#root{min-height:100vh;width:100%}img{display:block;max-width:100%;height:auto}button{cursor:pointer;border:none;background:transparent;font:inherit;color:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}
