body{background-color:var(--bg-dark);min-height:100vh;margin:0;padding:0;font-family:asap-condensed,sans-serif;font-style:normal;font-weight:400}.gallery-navbar{-webkit-backdrop-filter:blur(3px)saturate(1.4)contrast(1.06)brightness(1.04);backdrop-filter:blur(3px)saturate(1.4)contrast(1.06)brightness(1.04);z-index:1000;background-color:#0009;border-bottom:1px solid #ffffff38;border-radius:0 0 22px 22px;height:46px;padding:2px 0;position:-webkit-sticky;position:sticky;top:0;box-shadow:inset 0 -12px 20px #00000026,0 8px 26px #0000004d}.gallery-logo{cursor:pointer;display:inline-block;position:absolute;top:26px;left:28px;transform:translateY(-50%)}.gallery-logo .animated-logo-container{width:5rem;position:relative;overflow:visible}.gallery-logo .animated-circles{width:120px;position:absolute;top:50%;left:50%;overflow:visible;transform:translate(-50%,-50%)}.gallery-logo .animated-circles svg{width:100%;height:100%}.gallery-logo .logo-overlay{z-index:10;width:100%;height:100%;position:relative}.gallery-logo img{-o-object-fit:contain;object-fit:contain;width:100%;height:100%}.about-wrapper{margin-right:5px;position:relative}.about-btn{color:var(--color-secondary);cursor:pointer;background-color:#0000;border:none;border-radius:20px;padding:8px 16px;font-family:asap-condensed,sans-serif;font-size:18px;font-weight:500;transition:all .3s}.about-btn:hover{background-color:#00bd9d33}.about-popup{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1001;background-color:#1e1e1ef2;border:1px solid #00bd9d4d;border-radius:16px;width:340px;padding:24px;display:none;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 8px 30px #00000080}.about-popup.active{display:block}.about-popup h2{color:var(--color-secondary);margin:0 0 14px;font-family:asap-condensed,sans-serif;font-size:1.2rem;font-weight:400}.about-popup p{color:#ccc;margin:0 0 12px;font-family:asap-condensed,sans-serif;font-size:1rem;font-weight:300;line-height:1.5}.about-popup p:last-child{margin-bottom:0}.filter-toggle-btn{color:var(--color-secondary);cursor:pointer;background-color:#0000;border:none;border-radius:20px;align-items:center;gap:8px;padding:8px 16px;font-family:asap-condensed,sans-serif;font-size:18px;font-weight:500;transition:all .3s;display:flex}.filter-toggle-btn:hover{background-color:#00bd9d33}.filter-btn{color:#000;cursor:pointer;text-align:left;background-color:#0000;border:none;width:100%;margin:0;padding:6px 20px;font-family:asap-condensed,sans-serif;font-size:16px;font-weight:500;transition:all .2s}.filter-btn:hover{background-color:#0000001a}.filter-btn.active{background-color:#00000026;font-weight:600}.filter-divider{background-color:#0000004d;height:1px;margin:8px 0}.filter-overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:2000;box-sizing:border-box;background-color:#fcee21b3;width:175px;height:100vh;padding:80px 20px 20px;transition:right .3s;position:fixed;top:0;right:-175px;overflow-y:auto}.filter-overlay.active{right:0}.filter-overlay::-webkit-scrollbar{width:6px}.filter-overlay::-webkit-scrollbar-track{background:#0000001a}.filter-overlay::-webkit-scrollbar-thumb{background:#0000004d}.filter-overlay-header{background-color:#fcee21e6;justify-content:space-between;align-items:center;padding:20px;display:flex;position:absolute;top:0;left:0;right:0}.filter-overlay-header h3{color:#000;margin:0;font-family:asap-condensed,sans-serif;font-size:20px;font-weight:600}.filter-close-btn{color:#000;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;width:32px;height:32px;padding:0;font-size:28px;line-height:1;display:flex}.filter-close-btn:hover{opacity:.7}.filter-search{padding:0 0 10px;position:relative}.filter-search input[type=search]{box-sizing:border-box;color:#000;background-color:#0000001f;border:1px solid #00000040;border-radius:8px;outline:none;width:100%;padding:6px 30px 6px 10px;font-family:asap-condensed,sans-serif;font-size:15px;transition:border-color .2s,background-color .2s}.filter-search input[type=search]::placeholder{color:#0006}.filter-search input[type=search]:focus{background-color:#0000002e;border-color:#00000080}.filter-search input[type=search]::-webkit-search-decoration{-webkit-appearance:none}.filter-search input[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}.filter-search-clear{color:#00000073;cursor:pointer;background:0 0;border:none;padding:0 2px;font-size:18px;line-height:1;display:none;position:absolute;top:calc(50% - 5px);right:6px;transform:translateY(-50%)}.filter-search-clear.visible{display:block}.filter-search-clear:hover{color:#000c}.filter-list{flex-direction:column;gap:0;display:flex}.gallery-main-content{width:100%}.gallery-container{max-width:1400px;margin:0 auto;padding:0 15px 50px}.grid-header{text-align:center;max-width:1400px;margin:0 auto;padding:40px 0 20px}.grid-header h2{color:var(--color-secondary);margin:0;font-family:boiga-outline,sans-serif;font-size:3.4rem}.order-toggle{justify-content:center;align-items:center;gap:10px;margin-top:15px;display:flex}.toggle-label{color:#ccc;font-family:asap-condensed,sans-serif;font-size:14px}.toggle-switch{width:50px;height:26px;display:inline-block;position:relative}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{cursor:pointer;background-color:#555;border-radius:26px;transition:all .3s;position:absolute;top:0;bottom:0;left:0;right:0}.toggle-slider:before{content:"";background-color:#fff;border-radius:50%;width:20px;height:20px;transition:all .3s;position:absolute;bottom:3px;left:3px}.toggle-switch input:checked+.toggle-slider{background-color:var(--color-secondary)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px)}.grid{margin:0 auto;display:block}.grid:after{content:"";clear:both;display:table}.grid-item{float:left;box-sizing:border-box;width:25%;padding:10px;position:relative}.grid-item-wrapper{border-radius:20px;transition:transform .3s,box-shadow .3s;position:relative;overflow:hidden;box-shadow:0 4px 15px #0009}.grid-item-wrapper:hover{transform:translateY(-5px);box-shadow:0 8px 25px #00bd9d66}.grid-item-wrapper:hover .image-overlay{transform:translateY(0)}.grid-item-wrapper.overlay-visible{transform:translateY(-5px);box-shadow:0 8px 25px #00bd9d66}.grid-item-wrapper.overlay-visible .image-overlay{transform:translateY(0)}.grid-item img{cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;border-radius:20px;width:100%;display:block}.grid-item img.loading{background:linear-gradient(90deg,#2a2a2a 0%,#3a3a3a 20%,#4a4a4a 40%,#3a3a3a 60%,#2a2a2a 80%,#2a2a2a 100%) 0 0/200% 100%;min-height:250px;animation:2s ease-in-out infinite shimmer}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.image-overlay{color:#fff;background:linear-gradient(#0000,#000000b3,#000000d9);padding:20px 12px 10px;transition:transform .3s;position:absolute;bottom:0;left:0;right:0;transform:translateY(100%)}.overlay-title{color:var(--color-secondary);margin:0 0 2px;padding-top:.4em;font-family:asap-condensed,sans-serif;font-size:1rem;font-weight:600}.overlay-caption{opacity:.9;margin:0 0 2px;font-size:.8rem;font-weight:300;line-height:1.3}.overlay-geotag{opacity:.9;margin:0;font-size:.8rem;font-weight:500}.photo-modal{z-index:2000;background-color:#000000f2;width:100%;height:100%;display:none;position:fixed;top:0;left:0}.photo-modal.active{flex-direction:column;justify-content:center;align-items:center;display:flex}.modal-image-container{justify-content:center;align-items:center;max-width:90%;max-height:80vh;display:flex;position:relative}.modal-image{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none;border-radius:20px;max-width:100%;max-height:80vh}.modal-image-placeholder{background:linear-gradient(90deg,#2a2a2a 0%,#3a3a3a 20%,#4a4a4a 40%,#3a3a3a 60%,#2a2a2a 80%,#2a2a2a 100%) 0 0/200% 100%;border-radius:20px;width:400px;height:300px;animation:2s ease-in-out infinite shimmer;display:none}.modal-info{color:#fff;text-align:center;box-sizing:border-box;background-color:#000c;border-radius:20px;width:100%;margin-top:15px;padding:0 6rem}.modal-info .title{color:var(--color-secondary);margin-bottom:5px;font-size:1.2rem;font-weight:600}.modal-info .caption{color:#ccc;text-align:center;font-size:1rem;font-weight:300}.modal-info .geotag{color:#ccc;opacity:1;margin-top:8px;font-size:1rem;font-style:normal;font-weight:300;display:none}.modal-info .geotag.visible{display:block}.modal-close{color:#fff;cursor:pointer;z-index:2001;font-size:40px;font-weight:700;position:absolute;top:20px;right:30px}.modal-close:hover{color:var(--color-secondary)}.modal-nav{color:#fff;cursor:pointer;z-index:2001;background-color:#00a99db3;border:none;border-radius:20px;padding:8px 20px;font-size:30px;position:absolute;top:50%;transform:translateY(-50%)}.modal-nav:hover{background-color:var(--color-secondary)}.modal-prev{left:20px}.modal-next{right:20px}.modal-nav-mobile{display:none}.modal-nav-container{text-align:center;display:block}.spinner{border:5px solid #00bd9d4d;border-top:5px solid var(--color-primary);border-radius:50%;width:50px;height:50px;margin:100px auto;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width:1200px){.grid-item{width:33.333%}}@media (max-width:768px){.grid-item{width:50%}.modal-nav-desktop{display:none}.modal-nav-mobile{padding:10px 20px;font-size:24px;display:block;position:static;transform:none}.modal-nav-container{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;width:100%;display:flex;position:fixed;bottom:20px;left:0;right:0}.modal-info{box-sizing:border-box;text-align:center;flex:0 0 100%;order:0;margin-top:0;padding:0 6rem}.modal-info .title{font-size:16px}.modal-info .caption{text-align:center;font-size:14px}.modal-nav-mobile{order:1}.modal-image-container,.modal-image{max-height:60vh}.about-popup{width:auto;position:fixed;top:60px;left:10px;right:10px}}@media (max-width:480px){.grid-item{width:50%}}:root{--color-primary:#00bd9d;--color-secondary:#3fa9f5;--bg-dark:#2a2a2a}body{margin:0;padding:0;font-family:asap-condensed,sans-serif;font-style:normal;font-weight:400}body:has(#hero){height:100vh;overflow:hidden}#hero{background-image:url(/assets/img/CabsnLimos.jpg);background-position:50%;background-size:cover;background-attachment:fixed;justify-content:center;align-items:center;height:100vh;display:flex;position:relative}#hero:before{content:"";z-index:1;background:#0006;position:absolute;top:0;bottom:0;left:0;right:0}.hero-content{text-align:center;color:#fff;z-index:2;max-width:800px;padding:20px;position:relative}.hero-content img{filter:drop-shadow(0 4px 20px #00000080);width:100%;max-width:600px;height:auto;margin-bottom:2rem}.hero-content h1{text-shadow:0 2px 10px #000000b3;color:var(--color-secondary);margin:0 0 1.5rem;font-size:1.4rem;font-weight:700}.hero-content .btn-primary{color:#fff;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);cursor:pointer;background:#fff3;border:2px solid #fff3;border-radius:8px;padding:1rem 2rem;font-size:1.25rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block}.hero-content .btn-primary:hover{color:#333;background:#fff;transform:translateY(-3px);box-shadow:0 8px 20px #00bd9d66}.hero-content .animated-logo-container{position:relative;overflow:visible}.hero-content .animated-logo-container .animated-circles{position:absolute;top:50%;left:50%;overflow:visible;transform:translate(-50%,-50%)}#footer{text-align:center;color:#ffffffb3;z-index:3;text-align:center;background:linear-gradient(#0000,#00000080,#000c);width:100%;padding:1em 0 .4em;font-size:.8em;position:fixed;bottom:0;left:0;right:0}#footer a{color:var(--color-primary);margin:0 5px;text-decoration:none;transition:opacity .3s}#footer a:hover{opacity:.8;text-decoration:underline}#preloader{background:var(--bg-dark);z-index:9999;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right:0}#preloader.hidden{display:none}@media (max-width:768px){.hero-content svg{width:400px}.hero-content h1{font-size:2rem}.hero-content img{max-width:250px}.hero-content .btn-primary{padding:.75rem 1.5rem;font-size:1rem}}@media (max-width:480px){.hero-content h1{font-size:1.5rem}.hero-content img{max-width:200px}}