:root{--primary: #0077be;--secondary: #f4a261;--accent: #2a9d8f;--neutral: #264653;--light: #e9f7ff;--white: #ffffff;--success: #25d366;--warning: #f39c12;--danger: #e74c3c;--dark: #2c3e50;--gray: #6c757d;--light-gray: #f8f9fa;--font-primary: "Inter", system-ui, -apple-system, sans-serif;--border-radius: 12px;--shadow-sm: 0 2px 4px rgba(0,0,0,.1);--shadow: 0 4px 6px rgba(0,0,0,.1);--shadow-lg: 0 10px 15px rgba(0,0,0,.1);--transition: all .3s ease}*{box-sizing:border-box}body{font-family:var(--font-primary);line-height:1.6;color:var(--neutral);overflow-x:hidden}img{max-width:100%;height:auto}.btn{border-radius:var(--border-radius);font-weight:600;text-transform:uppercase;letter-spacing:.5px;transition:var(--transition)}.btn-primary{background-color:var(--primary);border-color:var(--primary)}.btn-primary:hover{background-color:#005a8b;border-color:#005a8b;transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-success{background-color:var(--success);border-color:var(--success)}.btn-success:hover{background-color:#128c7e;border-color:#128c7e;transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-outline-primary{color:var(--primary);border-color:var(--primary)}.btn-outline-primary:hover,.btn-outline-primary.active{background-color:var(--primary);border-color:var(--primary)}.form-control,.form-select{border-radius:var(--border-radius);border:2px solid #e9ecef;padding:12px 16px;transition:var(--transition)}.form-control:focus,.form-select:focus{border-color:var(--primary);box-shadow:0 0 0 .2rem #0077be40}.form-control.is-valid{border-color:#28a745}.form-control.is-invalid{border-color:#dc3545}.invalid-feedback{display:block;color:#dc3545;font-size:.875rem;margin-top:5px}.section-padding{padding:80px 0}.section-title{font-size:2.5rem;font-weight:700;color:var(--neutral);margin-bottom:1rem;position:relative}.section-title:after{content:"";display:block;width:80px;height:4px;background:linear-gradient(45deg,var(--primary),var(--accent));margin:20px auto;border-radius:2px}.section-subtitle{font-size:1.1rem;color:var(--gray);max-width:600px;margin:0 auto}.text-primary{color:var(--primary)!important}.bg-primary{background-color:var(--primary)!important}.bg-accent{background-color:var(--accent)!important}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{box-shadow:0 0 #25d366b3}70%{box-shadow:0 0 0 15px #25d36600}to{box-shadow:0 0 #25d36600}}.animate-fade-up{opacity:1;transform:translateY(0);transition:all .6s ease}.animate-fade-up.active{opacity:1;transform:translateY(0)}.feature-card,.room-card{opacity:1;transform:translateY(0);transition:all .6s ease}.section-title,.about-stat{opacity:1;transform:translateY(0)}.navbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:var(--transition)}.navbar.scrolled{background-color:#0077bef2!important;box-shadow:var(--shadow)}.navbar-brand{font-size:1.5rem;font-weight:700}.language-selector .btn{padding:6px 12px;font-size:.85rem;text-transform:none;letter-spacing:normal}.language-selector .btn.active{background-color:var(--white);color:var(--primary)}.whatsapp-btn{background:linear-gradient(45deg,var(--success),#128c7e);border:none;animation:pulse 2s infinite}.whatsapp-btn:hover{background:linear-gradient(45deg,#128c7e,var(--success));transform:translateY(-2px)}.hero-section{position:relative;height:100vh;min-height:600px;overflow:hidden}.hero-section .carousel-inner,.hero-section .carousel-item{height:100vh;min-height:600px}.hero-section .carousel-item img{height:100vh;min-height:600px;object-fit:cover;object-position:center}.hero-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#0077becc,#2a9d8f99);display:flex;align-items:center;z-index:2}.hero-features .badge{font-size:.9rem;padding:8px 16px;border-radius:20px}.whatsapp-main-btn{font-size:1.1rem;padding:15px 40px;border-radius:50px;box-shadow:var(--shadow-lg);background:linear-gradient(45deg,var(--success),#128c7e);border:none;position:relative;overflow:hidden}.whatsapp-main-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s}.whatsapp-main-btn:hover:before{left:100%}.about-image{position:relative}.about-image:before{content:"";position:absolute;top:20px;left:20px;right:-20px;bottom:-20px;background:linear-gradient(45deg,var(--primary),var(--accent));border-radius:var(--border-radius);z-index:-1}.about-stat i{transition:var(--transition)}.about-stat:hover i{transform:scale(1.1)}.feature-card{background:var(--white);padding:40px 20px;border-radius:var(--border-radius);box-shadow:var(--shadow);transition:var(--transition);position:relative;overflow:hidden}.feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(45deg,var(--primary),var(--accent));transform:scaleX(0);transition:var(--transition)}.feature-card:hover{transform:translateY(-10px);box-shadow:var(--shadow-lg)}.feature-card:hover:before{transform:scaleX(1)}.feature-icon{width:80px;height:80px;background:linear-gradient(45deg,var(--primary),var(--accent));border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;color:var(--white);font-size:2rem;transition:var(--transition)}.feature-card:hover .feature-icon{transform:scale(1.1) rotate(5deg)}.room-card{background:var(--white);border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--shadow);transition:var(--transition);height:100%}.room-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.room-image{position:relative;height:250px;overflow:hidden}.room-image img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.room-card:hover .room-image img{transform:scale(1.05)}.room-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0077bee6;display:flex;align-items:center;justify-content:center;opacity:0;transition:var(--transition)}.room-card:hover .room-overlay{opacity:1}.room-content{padding:30px 20px}.room-content h4{color:var(--neutral);margin-bottom:15px;font-weight:600}.room-amenities{list-style:none;padding:0;margin:20px 0 0}.room-amenities li{padding:5px 0;color:var(--gray);font-size:.9rem}.room-amenities i{color:var(--primary);margin-right:8px}.gallery-filters .btn{margin:5px;text-transform:none;letter-spacing:normal}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px;margin-top:30px}.gallery-item{position:relative;border-radius:var(--border-radius);overflow:hidden;cursor:pointer;transition:var(--transition);opacity:1;transform:scale(1)}.gallery-item:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.gallery-item img{width:100%;height:250px;object-fit:cover;transition:var(--transition)}.gallery-item:hover img{transform:scale(1.1)}.gallery-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0077becc;display:flex;align-items:center;justify-content:center;opacity:0;transition:var(--transition)}.gallery-item:hover .gallery-overlay{opacity:1}.gallery-overlay i{color:var(--white);font-size:2rem}.pagination .page-link{color:var(--primary);border-color:#dee2e6;padding:8px 16px;margin:0 2px;border-radius:8px;transition:var(--transition);background:none;cursor:pointer}.pagination .page-item.active .page-link{background-color:var(--primary);border-color:var(--primary);color:var(--white)}.pagination .page-link:hover{background-color:var(--primary);border-color:var(--primary);color:var(--white);transform:translateY(-2px)}.pagination .page-item.disabled .page-link{color:#6c757d;background-color:var(--white);border-color:#dee2e6}.location-step{padding:15px 0;font-size:1.1rem;display:flex;align-items:center}.location-step i{font-size:1.5rem;min-width:40px}.map-container{border-radius:var(--border-radius);overflow:hidden;box-shadow:var(--shadow)}.contact-info{background:var(--white);padding:40px;border-radius:var(--border-radius);box-shadow:var(--shadow);height:fit-content}.contact-item{display:flex;align-items:flex-start;margin-bottom:20px}.contact-item i{font-size:1.5rem;margin-right:15px;margin-top:5px;min-width:30px}.contact-item h6{margin-bottom:5px;color:var(--neutral);font-weight:600}.contact-item a{color:var(--primary);text-decoration:none}.contact-item a:hover{text-decoration:underline}.social-links a{display:inline-block;width:40px;height:40px;background:var(--primary);color:var(--white);border-radius:50%;text-align:center;line-height:40px;margin-right:10px;transition:var(--transition);text-decoration:none}.social-links a:hover{background:var(--accent);transform:translateY(-2px)}.social-links a:last-child{background:var(--success)}.social-links a:last-child:hover{background:#128c7e}.contact-form{background:var(--white);padding:40px;border-radius:var(--border-radius);box-shadow:var(--shadow)}footer{background:linear-gradient(135deg,var(--neutral) 0%,var(--dark) 100%)}footer a{transition:var(--transition)}footer a:hover{color:var(--primary)!important}.whatsapp-float{position:fixed;bottom:20px;right:20px;z-index:1000}.whatsapp-btn-float{display:flex;align-items:center;justify-content:center;width:60px;height:60px;background:var(--success);color:var(--white);border-radius:50%;text-decoration:none;font-size:1.5rem;box-shadow:var(--shadow-lg);transition:var(--transition);position:relative}.whatsapp-btn-float:hover{background:#128c7e;color:var(--white);transform:scale(1.1)}.whatsapp-btn-float .pulse{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;background:var(--success);opacity:.7;animation:pulse 2s infinite}.loading-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--white);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:1;visibility:visible;transition:var(--transition)}.loading-overlay.hide{opacity:0;visibility:hidden}.loading-content{text-align:center}.spinner{width:50px;height:50px;border:4px solid var(--light);border-top:4px solid var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.lightbox{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000e6;z-index:10000;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all .3s ease}.lightbox.active{opacity:1;visibility:visible}.lightbox-content{position:relative;max-width:90%;max-height:90%;text-align:center}.lightbox-image{max-width:100%;max-height:80vh;object-fit:contain;border-radius:var(--border-radius)}.lightbox-close{position:absolute;top:-40px;right:0;color:#fff;font-size:2rem;cursor:pointer;z-index:1;transition:var(--transition)}.lightbox-close:hover{color:var(--primary)}.lightbox-caption{color:#fff;margin-top:15px;font-size:1.1rem}.form-message{animation:slideInUp .3s ease;border-radius:var(--border-radius)}@keyframes slideInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.section-padding{padding:60px 0}.section-title{font-size:2rem}.hero-overlay h1{font-size:2.5rem}.hero-features .badge{display:block;margin:5px auto;width:fit-content}.whatsapp-main-btn{font-size:1rem;padding:12px 30px}.feature-card,.contact-info,.contact-form{padding:30px 20px}.gallery-grid{grid-template-columns:1fr;gap:15px}.whatsapp-float{bottom:80px;right:15px}.whatsapp-btn-float{width:50px;height:50px;font-size:1.2rem}}@media (max-width: 576px){.navbar-brand{font-size:1.2rem}.language-selector{order:-1;margin-right:10px!important}.hero-overlay{text-align:center;padding:0 15px}.hero-overlay h1{font-size:2rem;margin-bottom:15px}.hero-overlay .lead{font-size:1rem}.about-image:before{display:none}.contact-info,.contact-form{padding:20px}}@media print{.navbar,.whatsapp-float,.whatsapp-btn,.loading-overlay,.lightbox{display:none!important}.hero-section{height:auto;min-height:auto}.hero-section .carousel-inner,.hero-section .carousel-item,.hero-section .carousel-item img{height:300px!important;min-height:300px!important}.section-padding{padding:30px 0}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media (prefers-contrast: high){.hero-overlay{background:#000c}.feature-card,.room-card,.contact-info,.contact-form{border:2px solid var(--neutral)}}.btn:focus,.form-control:focus,.form-select:focus{outline:3px solid var(--primary);outline-offset:2px}.skip-link{position:absolute;top:-40px;left:6px;background:var(--primary);color:var(--white);padding:8px;border-radius:4px;text-decoration:none;z-index:10000}.skip-link:focus{top:6px}
