:root{--font-main: "Inter", sans-serif;--color-white: #ffffff;--color-overlay: rgba(0, 0, 0, .4)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-main);background-color:#000;color:var(--color-white);overflow:hidden;height:100vh;width:100vw;cursor:none}button,a,input,textarea,img,.grid-item,.list-card,.contact-btn,.nav-btn,.visit-btn,.visit-btn-layer,.edge-preview,#view-toggle,#contact-toggle{cursor:none!important}#grid-container{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0}.grid-layer{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;display:grid;grid-template-columns:1fr;grid-template-rows:1fr;gap:0;transition:transform 1.2s cubic-bezier(.16,1,.3,1),opacity 1.2s ease}.grid-item{width:100%;height:100%;object-fit:contain;display:block}.grid-layer{opacity:0;transform:scale(1.1);pointer-events:none}.grid-layer.active{opacity:1;transform:scale(1);z-index:1}.grid-layer.next{opacity:1;z-index:0}body.animating-to-list #grid-container{background-color:#000;opacity:0;visibility:hidden}body.animating-to-list .grid-layer{opacity:0!important;transform:none;pointer-events:none}body.animating-to-previo #grid-container{background-color:#000}body.animating-to-previo .grid-layer.next{opacity:0!important;visibility:hidden;pointer-events:none}body.view-lista #grid-container{background-color:#000;opacity:0;visibility:hidden}body.view-lista .grid-layer{opacity:0!important;transform:none;pointer-events:none}#list-view-layer{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:50vh;background:#000;display:none;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr;gap:20px;padding:0 10%;overflow:visible;opacity:0;pointer-events:none;z-index:40;transition:opacity .5s ease}.list-layer-hidden{opacity:0!important;visibility:hidden!important;pointer-events:none!important}.list-layer-prep{opacity:1!important;visibility:hidden!important;pointer-events:none!important;transition:none!important}body.view-lista #list-view-layer{display:grid;opacity:1;pointer-events:auto}#list-view-layer .grid-item{object-fit:contain;width:100%;height:100%;cursor:pointer}#list-view-layer .list-card{display:flex;flex-direction:column;align-items:center;gap:12px;position:relative;pointer-events:auto}.second-card{opacity:0;transform:translateY(-120%) scale(.95);transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transition-delay:.05s}#list-view-layer.list-appear .visit-btn-layer{opacity:1;transform:translate(-50%,-50%) translateY(0)}#list-view-layer.list-appear .second-card{opacity:1;transform:translateY(0) scale(1)}.visit-btn-layer{position:absolute;top:-20%;left:50%;transform:translate(-50%,-50%) translateY(80%);z-index:45;pointer-events:auto;opacity:0;transition:opacity .65s cubic-bezier(.16,1,.3,1),transform .65s cubic-bezier(.16,1,.3,1);transition-delay:.1s}.visit-btn{border:none;background:#ffffff14;color:#fff;padding:10px 18px;border-radius:999px;font-size:1rem;cursor:pointer;transition:background .2s ease,transform .2s ease;pointer-events:auto}.visit-btn:hover{background:#ffffff26;transform:translateY(-1px)}#lightbox-overlay{position:fixed;inset:0;background:#000000bf;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .25s ease;z-index:50}#lightbox-overlay.open{opacity:1;pointer-events:auto}#lightbox-overlay img{max-width:80vw;max-height:80vh;object-fit:contain;box-shadow:0 10px 40px #0009;border:1px solid rgba(255,255,255,.1)}.custom-cursor{position:fixed;inset:0;z-index:120;mix-blend-mode:difference;pointer-events:none}.cursor-wrap{position:absolute;top:0;left:0;display:inline-flex;align-items:center;justify-content:center;will-change:transform}#site-cursor{position:absolute;top:-.25rem;z-index:1;width:1rem;height:1rem;display:flex;align-items:center;justify-content:center;background-color:#fff;transition-property:transform,width,height,opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.1s;border-radius:999px}#site-cursor.has-label{width:3.5rem;height:1.5rem;white-space:nowrap;line-height:1}.transition-clone{position:fixed;z-index:60;pointer-events:none;will-change:transform,width,height,top,left;transition:all .6s cubic-bezier(.16,1,.3,1);object-fit:contain}#ui-overlay{position:fixed;top:0;left:0;width:100%;height:100%;z-index:80;display:flex;flex-direction:column;justify-content:space-between;padding:2rem;pointer-events:none}header,footer{pointer-events:auto}header{display:flex;justify-content:space-between;align-items:center;font-size:1.2rem;font-weight:500;opacity:.9}.grid-control{cursor:pointer;transition:opacity .3s}.grid-control:hover{opacity:.7}footer{display:flex;justify-content:space-between;align-items:flex-end}.bottom-nav{display:flex;align-items:center;gap:1rem}.nav-btn,.contact-btn{color:#fff;text-decoration:none;font-size:1.3rem;font-weight:600;opacity:.75;background:transparent;border:none;cursor:pointer;padding:.2rem .4rem;transition:opacity .2s ease,transform .2s ease}.nav-btn:hover,.contact-btn:hover{opacity:1;transform:translateY(-1px)}.contact-group{display:flex;align-items:center;gap:.6rem;position:relative}.contact-icons{display:flex;align-items:center;gap:.5rem;max-width:0;opacity:0;overflow:hidden;transition:max-width .3s ease,opacity .3s ease}.contact-icons a{color:#fff;background:#ffffff14;border-radius:50%;width:2.2rem;height:2.2rem;display:inline-flex;align-items:center;justify-content:center;font-size:.9rem;text-decoration:none;transition:background .2s ease,transform .2s ease}.contact-icons a:hover{background:#ffffff26;transform:translateY(-1px)}.contact-group.open .contact-icons{max-width:8rem;opacity:1}.footer-title{font-size:2rem;font-weight:500;text-align:right}#intro-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000f2;z-index:9999;display:flex;flex-direction:column;justify-content:center;align-items:center;transition:opacity 1s ease,visibility 1s ease}#intro-overlay.intro-hidden{opacity:0;visibility:hidden;pointer-events:none}.intro-subtitle{font-size:1rem;font-weight:600;letter-spacing:.1em;margin-bottom:auto;margin-top:15vh;text-transform:uppercase;color:#fff;opacity:.9;text-align:center;transform:translateY(-40%);opacity:0;animation:introSubtitleIn 1.1s cubic-bezier(.16,1,.3,1) forwards .3s}.intro-title{font-size:15vw;font-weight:400;color:#fff;line-height:1;margin-bottom:25vh;transform:translateY(40%);opacity:0;animation:introTitleIn 1.1s cubic-bezier(.16,1,.3,1) forwards .45s}@keyframes introSubtitleIn{0%{transform:translateY(-40%);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes introTitleIn{0%{transform:translateY(40%);opacity:0}to{transform:translateY(0);opacity:1}}.slide-out{animation:slideLeftOut 1.5s cubic-bezier(.16,1,.3,1) forwards}.slide-in{animation:slideRightIn 1.5s cubic-bezier(.16,1,.3,1) forwards}.slide-right-out{animation:slideRightOut 1.5s cubic-bezier(.16,1,.3,1) forwards}.slide-left-in{animation:slideLeftIn 1.5s cubic-bezier(.16,1,.3,1) forwards}@keyframes slideLeftOut{0%{transform:translate(0);opacity:1}to{transform:translate(-100%);opacity:1}}@keyframes slideRightIn{0%{transform:translate(100%);opacity:1}to{transform:translate(0);opacity:1}}@keyframes slideRightOut{0%{transform:translate(0);opacity:1}to{transform:translate(100%);opacity:1}}@keyframes slideLeftIn{0%{transform:translate(-100%);opacity:1}to{transform:translate(0);opacity:1}}@media(max-width:768px){.grid-layer{grid-template-columns:1fr;overflow:hidden;display:block;transform:none!important;transition:opacity 1.2s ease}.grid-layer .grid-item{position:absolute;left:50%;top:50%;width:auto;height:auto;max-width:none;max-height:none;object-fit:contain;touch-action:none;transform:translate(-50%,-50%);transform-origin:center center;will-change:transform}.grid-layer.active,.grid-layer.next{transform:none!important}#list-view-layer{height:40vh;gap:10px;padding:0 5%}.intro-title{font-size:20vw}.footer-title,.bottom-nav a{font-size:1.2rem}.contact-group{align-items:flex-start}.contact-icons{position:absolute;bottom:calc(100% + 8px);left:0;flex-direction:row;max-width:none;max-height:0;opacity:0;padding:0;gap:.5rem;transition:max-height .3s ease,opacity .3s ease}.contact-group.open .contact-icons{max-height:3rem;opacity:1}body.view-lista,#list-view-layer,#list-view-layer .list-card img{touch-action:none}}.edge-preview{position:absolute;top:50%;width:12vw;height:60%;object-fit:cover;opacity:0;transform:translateY(60%);pointer-events:none;filter:saturate(.9);transition:opacity .35s ease}.edge-preview.left{left:-8vw}.edge-preview.right{right:-8vw}#list-view-layer.list-appear .edge-preview{opacity:.35;transform:translateY(-50%);transition:opacity .65s cubic-bezier(.16,1,.3,1),transform .65s cubic-bezier(.16,1,.3,1)}
