.anim-fade-in,.anim-slide-up,.anim-slide-left,.anim-slide-right{opacity:0;transition:all .8s ease-out;will-change:opacity,transform}.anim-slide-up{transform:translateY(40px)}.anim-slide-left{transform:translate(-40px)}.anim-slide-right{transform:translate(40px)}.anim-fade-in.animated{opacity:1}.anim-slide-up.animated{opacity:1;transform:translateY(0)}.anim-slide-left.animated,.anim-slide-right.animated{opacity:1;transform:translate(0)}.anim-fade-in.animated:nth-child(1),.anim-slide-up.animated:nth-child(1),.anim-slide-left.animated:nth-child(1),.anim-slide-right.animated:nth-child(1){transition-delay:0s}.anim-fade-in.animated:nth-child(2),.anim-slide-up.animated:nth-child(2),.anim-slide-left.animated:nth-child(2),.anim-slide-right.animated:nth-child(2){transition-delay:.1s}.anim-fade-in.animated:nth-child(3),.anim-slide-up.animated:nth-child(3),.anim-slide-left.animated:nth-child(3),.anim-slide-right.animated:nth-child(3){transition-delay:.2s}.anim-fade-in.animated:nth-child(4),.anim-slide-up.animated:nth-child(4),.anim-slide-left.animated:nth-child(4),.anim-slide-right.animated:nth-child(4){transition-delay:.3s}.anim-fade-in.animated:nth-child(5),.anim-slide-up.animated:nth-child(5),.anim-slide-left.animated:nth-child(5),.anim-slide-right.animated:nth-child(5){transition-delay:.4s}.gallery-item{position:relative;overflow:hidden}.gallery-item img{transition:transform .6s ease}.gallery-item-clickable{cursor:pointer}.gallery-item-clickable:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#0003;opacity:0;transition:opacity .3s ease}.gallery-item-clickable:hover:after{opacity:1}.gallery-item-clickable:before{content:"+";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:2rem;font-weight:300;z-index:1;opacity:0;transition:opacity .3s ease}.gallery-item-clickable:hover:before{opacity:1}.lightbox{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000e6;display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.lightbox.active{opacity:1;visibility:visible}.lightbox-content{position:relative;max-width:90%;max-height:90%}.lightbox-image{display:block;max-width:100%;max-height:85vh;box-shadow:0 5px 25px #0003}.lightbox-caption{position:absolute;bottom:-40px;left:0;width:100%;color:#fff;text-align:center;padding:10px 0;font-family:Gotham Book,sans-serif}.lightbox-close{position:absolute;top:-40px;right:0;font-size:2rem;color:#fff;cursor:pointer;transition:color .3s ease}.lightbox-close:hover{color:#bbb}.lightbox-prev,.lightbox-next{position:absolute;top:50%;transform:translateY(-50%);background:none;border:none;font-size:3rem;color:#fff;cursor:pointer;transition:color .3s ease;padding:0 15px}.lightbox-prev{left:-60px}.lightbox-next{right:-60px}.lightbox-prev:hover,.lightbox-next:hover{color:#bbb}@media (max-width: 768px){.lightbox-prev,.lightbox-next{font-size:2rem}.lightbox-prev{left:-40px}.lightbox-next{right:-40px}}@media (max-width: 576px){.lightbox-prev,.lightbox-next{top:auto;bottom:-60px;font-size:2rem}.lightbox-prev{left:20%}.lightbox-next{right:20%}.lightbox-caption{bottom:-100px}}.booking-modal{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000c;display:flex;align-items:center;justify-content:center;z-index:1000;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.booking-modal.active{opacity:1;visibility:visible}.booking-modal-content{position:relative;background-color:#fff;width:90%;max-width:700px;max-height:90vh;overflow-y:auto;padding:3rem;box-shadow:0 5px 25px #0000004d}.booking-modal .close-btn{position:absolute;top:20px;right:20px;font-size:2rem;color:#333;cursor:pointer;transition:color .3s ease}.booking-modal .close-btn:hover{color:#666}.booking-modal-content h3{font-family:Playfair Display,serif;font-size:2.2rem;margin-bottom:1rem;color:#333}.booking-modal-content p{font-family:Gotham Book,sans-serif;font-size:1rem;line-height:1.6;color:#666;margin-bottom:2rem}.reservation-form{font-family:Gotham Book,sans-serif}.form-row{display:flex;gap:20px;margin-bottom:20px}.form-group{flex:1;position:relative;margin-bottom:20px}.form-row .form-group{margin-bottom:0}.reservation-form label{display:block;margin-bottom:8px;font-size:.9rem;color:#333}.reservation-form input,.reservation-form select,.reservation-form textarea{width:100%;padding:12px;border:1px solid #ddd;border-radius:3px;font-family:Gotham Book,sans-serif;font-size:1rem;color:#333;transition:border-color .3s ease}.reservation-form input:focus,.reservation-form select:focus,.reservation-form textarea:focus{outline:none;border-color:#333}.reservation-form input.error,.reservation-form select.error,.reservation-form textarea.error{border-color:#e53935}.error-message{color:#e53935;font-size:.8rem;margin-top:5px}.checkbox-label{display:flex;align-items:flex-start;font-size:.9rem;color:#666}.checkbox-label input{width:auto;margin-right:10px;margin-top:3px}.btn-full{width:100%;padding:15px;background-color:#444;color:#fff;border:none;border-radius:3px;font-family:Gotham Book,sans-serif;font-size:1rem;text-transform:uppercase;letter-spacing:1px;cursor:pointer;transition:background-color .3s ease}.btn-full:hover{background-color:#333}.btn-success{background-color:#4caf50}.btn-success:hover{background-color:#388e3c}.success-message{text-align:center;padding:20px}.success-message h3{color:#4caf50;margin-bottom:20px}.success-message p{margin-bottom:30px}@media (max-width: 768px){.booking-modal-content{padding:2rem}.form-row{flex-direction:column;gap:0}}@font-face{font-family:"Exo 2";src:url(https://ext.same-assets.com/4036669247/1349380707.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:"Exo 2";src:url(https://ext.same-assets.com/4036669247/1349380707.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-dark-green: #2c7079;--color-forest-green: #293c51;--color-mid-green: #0f220c;--color-light-tan: #242424;--color-brown: #624228;--color-olive: #6e735a;--color-rust: #af3a14;--color-blue: #5e7f9d;--color-teal: #7fa392;--color-navy: #2b4d5c;--font-heading: "Exo 2", serif;--font-body: "Exo 2", sans-serif}html,body{height:100%;scroll-behavior:smooth}body{font-family:var(--font-body);font-size:16px;line-height:1.6;color:#fff;background-color:var(--color-dark-green);overflow-x:hidden}a{color:inherit;text-decoration:none;transition:all .3s ease}a,a:focus,a:active{outline:none;-webkit-tap-highlight-color:transparent}ul{list-style:none}img{max-width:100%;height:auto;display:block}.container{width:100%;max-width:1400px;margin:0 auto;padding:0 2rem}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:400;line-height:1.2}.highlight-logo{display:block;margin:0 auto;height:13em}.desktop-only{display:block}.mobile-only{display:none}.btn,.btn-reservation{display:inline-block;padding:.8em 2em;border:1px solid currentColor;font-family:var(--font-body);text-transform:uppercase;letter-spacing:1px;font-size:.9rem;cursor:pointer;transition:all .3s ease}.btn:hover,.btn-reservation:hover{background-color:#ffffff4d}.hero-btn{font-size:1.3rem;padding:.8em 2em;margin-top:15rem}.site-header{position:fixed;min-height:70px;top:0;left:0;width:100%;z-index:1000;padding:1.5rem 0;transition:background-color .3s ease}.site-header .container{display:flex;align-items:center;justify-content:space-between}.site-header.scrolled{background-color:var(--color-dark-green)}.site-header .logo,.site-header .reservation-button{opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.site-header.scrolled .logo,.site-header.scrolled .reservation-button{opacity:1;visibility:visible}.logo{width:80px;display:flex;align-items:center;justify-content:center}.logo img{width:100%;height:auto;margin:0 auto}.main-nav ul{display:flex;gap:2rem}.main-nav a{text-transform:uppercase;letter-spacing:1px;font-size:.9rem}.main-nav a:hover{color:var(--color-light-tan)}.menu-toggle{display:none}.hero{position:relative;height:100vh;min-height:700px;overflow:hidden;display:flex;align-items:center;justify-content:center;text-align:center}.hero-video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;z-index:-2}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-color:#0006;z-index:-1}.hero-content{padding:2rem;margin-top:10rem}.hero h1{font-size:clamp(3rem,3vw,3rem);margin-bottom:2rem;color:#fff}.intro{position:relative;background-image:url(./barracas-BKmw-dBh.webp);background-size:cover;background-position:center;background-attachment:fixed;background-repeat:no-repeat;padding:80px 0;color:#fff;text-align:center;z-index:1}.intro:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#000000b3;z-index:-1}.intro h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:1.5rem;max-width:750px;margin-left:auto;margin-right:auto}.intro p{max-width:750px;margin:0 auto 2rem;font-size:1.1rem}.intro-buttons{display:flex;gap:1rem;justify-content:center;margin-top:2rem}.gallery{padding:0;overflow:hidden}.gallery-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-auto-rows:450px}.gallery-item{overflow:hidden}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.gallery-item:hover img{transform:scale(1.05)}.menus{padding:5rem 0;background-color:var(--color-dark-green);text-align:center}.menus h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:.5rem}.discover-link{display:inline-block;margin-bottom:3rem;border-bottom:1px solid currentColor;padding-bottom:.2rem}.menu-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem;max-width:1200px;margin:0 auto;position:relative;overflow:hidden}.menu-feature{padding:8rem 2rem;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;position:relative;overflow:hidden}.menu-feature img.menu-feature-image{width:100%;height:100%;object-fit:cover;position:absolute;top:0;left:0}.menu-feature-title{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:24px;text-shadow:2px 2px 4px rgba(0,0,0,.5);z-index:1}.menu-feature:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#0000004d;transition:background-color .3s ease}.menu-feature:hover:before{background-color:#00000080}.menu-feature h3{font-size:2rem;margin-bottom:1rem;position:relative}.menu-link{position:relative;display:inline-block;border-bottom:1px solid currentColor;padding-bottom:.2rem}.partners{position:relative;background-image:url(./barracas-BKmw-dBh.webp);background-size:cover;background-position:center;background-attachment:fixed;background-repeat:no-repeat;padding:60px 0;color:#fff;text-align:center;z-index:1}.partners:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:#000000b3;z-index:-1}.partner-logos{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:5rem;padding:0 2rem}.partner-logos img{height:50px;width:auto;filter:grayscale(100%);opacity:.8;transition:all .3s ease}.partner-logos img:hover{filter:grayscale(0);opacity:1;transform:scale(1.1);transition:transform .2s ease}.site-footer{padding:5rem 0 2rem;background-color:var(--color-dark-green);color:#fff}.footer-content,.footer-intro{margin-bottom:3rem}.footer-intro h4{font-size:1.8rem;max-width:500px}.footer-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem}.footer-column h5{margin-bottom:1.5rem;font-size:1.2rem}.footer-column ul li:not(:last-child){margin-bottom:.8rem}.footer-column a:hover{color:var(--color-light-tan)}.footer-bottom{padding-top:2rem;border-top:1px solid rgba(255,255,255,.1);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;font-size:.9rem}.footer-links{display:flex;gap:1.5rem}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;z-index:2000;align-items:center;justify-content:center}.modal.active{display:flex}.modal-content{background-color:var(--color-dark-green);padding:3rem;max-width:550px;position:relative;border:2px solid var(--color-forest-green);text-align:center}.close-btn{position:absolute;top:1rem;right:1rem;font-size:1.5rem;cursor:pointer}.modal h2{margin-bottom:1.5rem}.modal p{margin-bottom:2rem}.modal-buttons{display:flex;justify-content:center;gap:1rem}.booking-modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000b3;z-index:2000;align-items:center;justify-content:center}.booking-modal.active{display:flex}.booking-modal-content{background-color:var(--color-dark-green);padding:3rem;max-width:700px;position:relative;border:2px solid var(--color-forest-green)}.responsive-iframe-wrapper{position:relative;width:100%;max-width:850px;margin:2rem auto;aspect-ratio:16 / 9}.responsive-iframe-wrapper iframe{position:absolute;top:0;left:0;width:100%;height:100%;border:none}.custom-modal{display:none;position:fixed;z-index:9999;left:0;top:0;width:100%;height:100%;background-color:#0009;justify-content:center;align-items:center;animation:fadeIn .3s ease}.modal-content{background:#fff;padding:2rem;border-radius:12px;text-align:center;box-shadow:0 0 20px #0003}.modal-content p{margin-bottom:1rem;font-size:1.1rem;font-weight:700;color:#000}.modal-content button{background-color:#2c7079;color:#fff;border:none;padding:.6rem 1.2rem;border-radius:6px;cursor:pointer;transition:background .3s}.modal-content button:hover{background-color:#005fa3}.popup-image-wrapper{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#000000b3;justify-content:center;align-items:center;z-index:9999}.popup-image-wrapper.active{display:flex}.popup-image-content{position:relative;max-width:90vw;max-height:90vh;width:auto;height:auto;background:transparent;border-radius:12px;overflow:hidden;display:flex;justify-content:center;align-items:center;padding:1rem}.popup-image-content img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}.popup-close-btn{position:absolute;top:12px;right:12px;background-color:#ffffffe6;border:none;font-size:20px;cursor:pointer;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 10px #0000004d;z-index:10}@media (min-width: 1024px){.responsive-iframe-wrapper{aspect-ratio:unset;height:600px}}@media (max-width: 1024px){html,body{overflow-x:hidden}#app{overflow-x:hidden;width:100%}*{max-width:100vw}.hero h1{font-size:clamp(1.5rem,5vw,2.2rem)}.highlight-logo{height:8em}.hero-btn{font-size:.9rem;padding:.6em 1.5em;margin-top:4.5rem}.hero-content{margin-top:0rem}.menu-toggle{display:flex;flex-direction:column;justify-content:center;align-items:center;width:40px;height:40px;background:none;border:none;cursor:pointer;z-index:1100}.menu-toggle span{display:block;width:30px;height:3px;background-color:#fff;margin:5px 0;transition:all .3s ease-in-out}.menu-toggle.active span:nth-child(1){transform:translateY(8px) rotate(45deg)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.main-nav{display:none;position:absolute;top:70px;right:0;width:100%;background-color:var(--color-dark-green);text-align:center;padding:20px 0}.main-nav.active{display:block}.main-nav ul{flex-direction:column;gap:1rem}.desktop-only{display:none}.mobile-only{display:block}.mobile-reservation{margin-top:2rem}.mobile-reservation .btn-reservation{padding:.8rem 2rem;display:inline-block;border:1px solid white}.gallery-grid{grid-template-columns:repeat(3,1fr)}.main-nav{display:none}.menu-toggle{display:block}.main-nav.active{display:block;position:fixed;top:0;left:0;width:100%;height:100vh;background-color:var(--color-dark-green);padding-top:6rem;z-index:900}.main-nav.active ul{flex-direction:column;align-items:center;gap:1.5rem}.main-nav.active a{font-size:1.2rem}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@media (max-width: 768px){.gallery{overflow:hidden;position:relative}.gallery-grid{display:flex;gap:0;width:max-content;animation:scrollLeft 20s linear infinite;touch-action:pan-y;will-change:transform}.gallery-item{flex:0 0 auto;width:80vw;height:60vw;border-radius:10px;overflow:hidden}.gallery-item img{width:100%;height:100%;object-fit:cover;display:block}@keyframes scrollLeft{0%{transform:translate(0)}to{transform:translate(-50%)}}}@media (max-width: 768px){.menu-features{grid-template-columns:1fr}.hero-video-wrapper{display:none}.partner-logos{display:flex;justify-content:center;align-items:center;flex-wrap:nowrap;gap:1.5rem;padding:1rem 0}.partner-logos img{height:35px;width:auto}.footer-bottom{flex-direction:column;align-items:flex-start}.footer-links{margin-top:1rem}.intro-buttons{flex-direction:column;align-items:center}.modal-content{padding:2rem;max-width:90%}}@media (max-width: 480px){.gallery-grid,.footer-columns{grid-template-columns:1fr}.popup-image-content{max-width:90%;max-height:80vh}}@media (max-width: 768px){.site-header{min-height:70px;display:flex;align-items:center}.site-header .container{align-items:center}.logo{display:flex;align-items:center}.logo img{max-height:40px;margin:0 auto}.reservation-button a{font-size:.8rem;padding:.5rem 1rem}.menu-toggle{width:36px;height:36px}.site-header .logo{justify-content:center;align-items:center}}@media (min-width: 768px){.popup-image-content{max-width:600px;max-height:90vh}}
