@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.animate{opacity:0}.animate[data-state=visible]{animation-fill-mode:forwards;animation-timing-function:cubic-bezier(.4,0,.2,1)}.fade-in{opacity:0}.fade-in[data-state=visible]{animation-fill-mode:forwards;animation-timing-function:cubic-bezier(.4,0,.2,1)}.fade-in[data-state=visible][data-direction=up]{animation-name:fadeInUp}.fade-in[data-state=visible][data-direction=down]{animation-name:fadeInDown}.fade-in[data-state=visible][data-direction=left]{animation-name:fadeInLeft}.fade-in[data-state=visible][data-direction=right]{animation-name:fadeInRight}.fade-in[data-state=visible][data-direction=none]{animation-name:fadeIn}.animated-card{opacity:0;transform:translateY(20px) scale(.95);transition:transform .2s ease-out}.animated-card[data-state=visible]{animation:scaleIn .4s cubic-bezier(.4,0,.2,1) forwards}.animated-card:hover{transform:translateY(-6px)}.animated-card__link{display:contents}.animated-card__link:hover .animated-card{transform:translateY(-6px)}.animated-title{opacity:0;transform:translate(-20px)}.animated-title[data-state=visible]{animation:slideInLeft .5s cubic-bezier(.4,0,.2,1) forwards}@media (prefers-reduced-motion: reduce){.fade-in,.animated-card,.animated-title,.animate{opacity:1;transform:none;animation:none!important;transition:none!important}.fade-in[data-state=visible],.animated-card[data-state=visible],.animated-title[data-state=visible],.animate[data-state=visible]{animation:none!important}}@keyframes scale-in{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.photos{margin-inline:auto;padding:1rem;max-width:1400px;width:100%;box-sizing:border-box;overflow-x:hidden;grid-template-columns:repeat(auto-fill,minmax(min(18rem,100%),1fr))!important}@media (max-width: 768px){.photos{padding:.5rem;grid-template-columns:repeat(auto-fill,minmax(min(15rem,100%),1fr))!important}}@media (max-width: 480px){.photos{padding:.25rem;grid-template-columns:repeat(auto-fill,minmax(100%,1fr))!important}}.photos:before{content:"";position:fixed;inset:0;background-color:#000000d9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;pointer-events:none;z-index:998;transition:opacity .3s cubic-bezier(.4,0,.2,1)}.photos:has(.photos__checkbox:checked):before{opacity:1;pointer-events:all}body:has(.photos:has(.photos__checkbox:checked)){overflow:hidden}.photos__item{position:relative;background-color:var(--bg);cursor:pointer;padding:0!important;transition:transform .3s cubic-bezier(.4,0,.2,1),box-shadow .3s cubic-bezier(.4,0,.2,1),position 0s,inset 0s,z-index 0s}.photos__checkbox{position:absolute;width:0;height:0;opacity:0;pointer-events:none}.photos__img{aspect-ratio:1/1;object-fit:cover;user-select:none}@supports (-webkit-user-drag: none){.photos__img{-webkit-user-drag:none}}.photos__img.loading:before{content:"";position:absolute;inset:0;background:inherit;filter:blur(10px);opacity:.7}.photos__img.loaded:before{display:none}.photos__info{position:absolute;bottom:0;left:0;right:0;padding:1.5rem;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,rgba(0,0,0,.4) 70%,transparent 100%);display:flex;flex-direction:column;gap:.5rem;opacity:0;transform:translateY(10px);transition:opacity .3s cubic-bezier(.4,0,.2,1),transform .3s cubic-bezier(.4,0,.2,1);pointer-events:none}@media (max-width: 768px){.photos__info{padding:1rem}}.photos__title{color:#fff;font-size:1rem;font-weight:600;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.3)}@media (max-width: 768px){.photos__title{font-size:.9rem}}.photos__content{color:#ffffffe6;font-size:.875rem;margin:0;text-shadow:0 2px 4px rgba(0,0,0,.3)}@media (max-width: 768px){.photos__content{font-size:.8rem}}.photos__item:not(:has(.photos__checkbox:checked)):hover{z-index:2}.photos__item:not(:has(.photos__checkbox:checked)):hover~.photos__item:not(:has(.photos__checkbox:checked)):hover__info{opacity:1;transform:translateY(0)}@media (max-width: 768px),(hover: none){.photos__info{opacity:1;transform:translateY(0)}}.photos__item:has(.photos__checkbox:checked){position:fixed;inset:clamp(1rem,5vw,3rem);margin:auto;max-width:min(90vw,90vh);max-height:min(90vw,90vh);aspect-ratio:1/1;z-index:999;box-shadow:0 25px 50px #00000080;animation:scale-in .4s .4s cubic-bezier(.34,1.56,.64,1)}@media (max-width: 768px){.photos__item:has(.photos__checkbox:checked){inset:.5rem;max-width:calc(100vw - 1rem);max-height:calc(100vh - 1rem)}}.photos__item:has(.photos__checkbox:checked):hover{transform:none}.photos__item:has(.photos__checkbox:checked)~.photos__img{object-fit:contain;background-color:transparent}.photos__item:has(.photos__checkbox:checked)~.photos__info{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){.photos__info{transition-duration:.1s}}
