:root{--primary:#c9a227;--primary-dark:#a68520;--primary-light:#e8c547;--secondary:#1a1a2e;--dark:#0f0f1a;--darker:#0a0a12;--light:#f8f9fa;--gray:#6c757d;--gray-light:#adb5bd;--white:#ffffff;--gradient-gold:linear-gradient(135deg, #c9a227 0%, #e8c547 50%, #c9a227 100%);--gradient-dark:linear-gradient(180deg, #1a1a2e 0%, #0f0f1a 100%);--shadow-sm:0 2px 10px rgba(0,0,0,0.1);--shadow-md:0 5px 25px rgba(0,0,0,0.2);--shadow-lg:0 10px 50px rgba(0,0,0,0.3);--shadow-gold:0 5px 30px rgba(201, 162, 39, 0.3);--transition:all 0.4s cubic-bezier(0.4, 0, 0.2, 1);--font-display:'Playfair Display',serif;--font-body:'Poppins',sans-serif}*,::after,::before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-body);background:var(--dark);color:var(--light);line-height:1.7;overflow-x:hidden}a{text-decoration:none;color:inherit;transition:var(--transition)}img{max-width:100%;height:auto;display:block}ul{list-style:none}.container{max-width:1280px;margin:0 auto;padding:0 2rem}.preloader{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--darker);display:flex;align-items:center;justify-content:center;z-index:10000;transition:opacity .5s,visibility .5s}.preloader.hidden{opacity:0;visibility:hidden}.preloader-content{text-align:center}.logo-animation{display:flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-display);margin-bottom:2rem}.logo-animation .star{color:var(--primary);font-size:1.5rem;animation:pulse 1s infinite}.logo-animation .hotel-text{font-size:1rem;letter-spacing:3px;color:var(--gray-light)}.logo-animation .frontera-text{font-size:1.5rem;font-weight:700;color:var(--primary)}.loading-bar{width:280px;height:3px;background:var(--secondary);border-radius:3px;overflow:hidden;margin:0 auto}.loading-progress{width:0%;height:100%;background:var(--gradient-gold);animation:loading 2s ease-in-out forwards}@keyframes loading{0%{width:0%}100%{width:100%}}@keyframes pulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.2);opacity:.8}}.navbar{position:fixed;top:0;left:0;width:100%;z-index:1000;padding:1rem 0;transition:var(--transition)}.navbar.scrolled{background:rgba(15,15,26,.95);backdrop-filter:blur(20px);padding:.7rem 0;box-shadow:var(--shadow-md)}.nav-container{max-width:1400px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between}.nav-logo{display:flex;align-items:center;gap:.5rem}.nav-logo .star-icon{color:var(--primary);font-size:1.2rem}.nav-logo .logo-text{display:flex;flex-direction:column;line-height:1.1}.nav-logo .logo-hotel{font-size:.65rem;letter-spacing:4px;color:var(--gray-light);font-family:var(--font-body)}.nav-logo .logo-frontera{font-size:1.3rem;font-weight:700;font-family:var(--font-display);color:var(--white)}.nav-menu{display:flex;align-items:center;gap:2rem}.nav-link{font-size:.9rem;font-weight:500;color:var(--gray-light);position:relative;padding:.5rem 0}.nav-link::after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--primary);transition:var(--transition)}.nav-link.active,.nav-link:hover{color:var(--white)}.nav-link.active::after,.nav-link:hover::after{width:100%}.nav-btn{display:inline-flex;align-items:center;gap:.5rem;padding:.8rem 1.5rem;background:var(--gradient-gold);color:var(--dark);font-weight:600;font-size:.85rem;border-radius:50px;transition:var(--transition)}.nav-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-gold)}.nav-contact{display:flex;align-items:center}.contact-phone{display:flex;align-items:center;gap:.5rem;color:var(--primary);font-weight:500;font-size:.9rem}.contact-phone i{font-size:1.2rem}.nav-toggle{display:none;flex-direction:column;gap:5px;background:0 0;border:none;cursor:pointer;padding:.5rem}.nav-toggle span{width:25px;height:2px;background:var(--white);transition:var(--transition)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:1rem 2rem;font-family:var(--font-body);font-size:.95rem;font-weight:600;border-radius:50px;cursor:pointer;transition:var(--transition);border:none}.btn-primary{background:var(--gradient-gold);color:var(--dark)}.btn-primary:hover{transform:translateY(-3px);box-shadow:var(--shadow-gold)}.btn-outline{background:0 0;color:var(--white);border:2px solid var(--primary)}.btn-outline:hover{background:var(--primary);color:var(--dark)}.btn-outline.light{border-color:var(--white)}.btn-outline.light:hover{background:var(--white);color:var(--dark)}.btn-sm{padding:.7rem 1.5rem;font-size:.85rem}.full-width{width:100%}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden}.hero-bg{position:absolute;top:0;left:0;width:100%;height:100%;background:url('assets/home.jpg') center/cover}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,rgba(15,15,26,.7) 0,rgba(15,15,26,.5) 50%,rgba(15,15,26,.9) 100%)}.hero-particles{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.hero-content{position:relative;z-index:2;text-align:center;max-width:900px;padding:0 2rem}.hero-badge{display:inline-flex;align-items:center;gap:.75rem;padding:.6rem 1.5rem;background:rgba(201,162,39,.15);border:1px solid rgba(201,162,39,.3);border-radius:50px;font-size:.85rem;color:var(--primary-light);margin-bottom:1.5rem;animation:fadeInDown 1s ease}.hero-badge span{font-size:.7rem;letter-spacing:2px}.hero-title{margin-bottom:1.5rem;animation:fadeInUp 1s ease .2s both}.title-line{display:block;font-size:1.2rem;font-weight:400;color:#fff;letter-spacing:3px;text-transform:uppercase;margin-bottom:.5rem}.title-main{display:block;font-family:var(--font-display);font-size:clamp(3rem, 8vw, 5.5rem);font-weight:700;background:var(--gradient-gold);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1.1}.hero-subtitle{font-size:1.15rem;color:#fff;max-width:600px;margin:0 auto 2.5rem;animation:fadeInUp 1s ease .4s both}.hero-buttons{display:flex;align-items:center;justify-content:center;gap:1rem;flex-wrap:wrap;margin-bottom:3rem;animation:fadeInUp 1s ease .6s both}.hero-features{display:flex;align-items:center;justify-content:center;gap:2.5rem;flex-wrap:wrap;animation:fadeInUp 1s ease .8s both}.hero-feature{display:flex;align-items:center;gap:.5rem;color:#fff;font-size:.9rem}.hero-feature i{color:var(--primary);font-size:1.1rem}.hero-scroll{position:absolute;bottom:3rem;left:50%;transform:translateX(-50%);z-index:2}.hero-scroll a{display:flex;flex-direction:column;align-items:center;gap:.5rem;color:var(--gray-light);font-size:.8rem;animation:bounce 2s infinite}.hero-scroll i{font-size:1rem}@keyframes fadeInDown{from{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,100%,20%,50%,80%{transform:translateX(-50%) translateY(0)}40%{transform:translateX(-50%) translateY(-10px)}60%{transform:translateX(-50%) translateY(-5px)}}.section-label{display:inline-block;font-size:.85rem;font-weight:600;color:var(--primary);text-transform:uppercase;letter-spacing:3px;margin-bottom:.75rem}.section-label.light{color:var(--primary-light)}.section-title{font-family:var(--font-display);font-size:clamp(2rem, 5vw, 3rem);font-weight:700;color:var(--white);margin-bottom:1rem;line-height:1.2}.section-desc{font-size:1.05rem;color:var(--gray-light);max-width:600px}.section-header{text-align:center;margin-bottom:4rem}.section-header .section-desc{margin:0 auto}.section-header.light .section-title{color:var(--white)}.about{padding:7rem 0;background:var(--dark)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}.about-images{position:relative}.about-img-main{position:relative;border-radius:20px;overflow:hidden;box-shadow:var(--shadow-lg)}.about-img-main img{width:100%;height:450px;object-fit:cover;transition:var(--transition)}.about-img-main:hover img{transform:scale(1.05)}.experience-badge{position:absolute;bottom:-30px;right:-30px;background:var(--gradient-gold);padding:1.5rem;border-radius:20px;text-align:center;box-shadow:var(--shadow-gold)}.experience-badge .years{display:block;font-family:var(--font-display);font-size:2.5rem;font-weight:700;color:var(--dark);line-height:1}.experience-badge .text{font-size:.75rem;font-weight:600;color:var(--dark);text-transform:uppercase;letter-spacing:1px}.about-img-secondary{position:absolute;top:50px;left:-50px;width:200px;border-radius:15px;overflow:hidden;box-shadow:var(--shadow-lg);border:5px solid var(--dark)}.about-img-secondary img{width:100%;height:150px;object-fit:cover}.about-content .section-label,.about-content .section-title{text-align:left}.about-text{color:var(--gray-light);margin-bottom:1.5rem;font-size:1rem}.about-text strong{color:var(--primary)}.about-features{display:flex;flex-direction:column;gap:1.25rem;margin:2rem 0}.about-feature{display:flex;align-items:flex-start;gap:1rem}.about-feature .feature-icon{width:50px;height:50px;background:rgba(201,162,39,.15);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.about-feature .feature-icon i{color:var(--primary);font-size:1.2rem}.about-feature .feature-info h4{font-size:1rem;font-weight:600;color:var(--white);margin-bottom:.25rem}.about-feature .feature-info p{font-size:.9rem;color:var(--gray)}.rooms{padding:7rem 0;background:var(--secondary);position:relative}.rooms-bg{position:absolute;top:0;left:0;width:100%;height:100%;background:url('https://images.unsplash.com/photo-1618773928121-c32242e63f39?w=1920&h=800&fit=crop') center/cover fixed;opacity:.05}.rooms .container{position:relative;z-index:1}.rooms-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.room-card{background:var(--dark);border-radius:20px;overflow:hidden;transition:var(--transition)}.room-card:hover{transform:translateY(-10px);box-shadow:var(--shadow-lg)}.room-card.featured{border:2px solid var(--primary)}.room-image{position:relative;height:220px;overflow:hidden}.room-image img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.room-card:hover .room-image img{transform:scale(1.1)}.room-badge{position:absolute;top:15px;left:15px;padding:.4rem 1rem;background:var(--primary);color:var(--dark);font-size:.75rem;font-weight:700;text-transform:uppercase;border-radius:50px}.room-badge.premium{background:linear-gradient(135deg,#667eea 0,#764ba2 100%);color:var(--white)}.room-badge.luxury{background:linear-gradient(135deg,#f093fb 0,#f5576c 100%);color:var(--white)}.room-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(15,15,26,.7);display:flex;align-items:center;justify-content:center;opacity:0;transition:var(--transition)}.room-card:hover .room-overlay{opacity:1}.room-content{padding:1.5rem}.room-title{font-family:var(--font-display);font-size:1.25rem;font-weight:600;color:var(--white);margin-bottom:1rem}.room-features{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.room-features span{font-size:.8rem;color:var(--gray-light);display:flex;align-items:center;gap:.3rem}.room-features i{color:var(--primary);font-size:.9rem}.room-amenities{display:flex;gap:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.room-amenities i{color:var(--gray);font-size:1rem;transition:var(--transition)}.room-amenities i:hover{color:var(--primary)}.services{padding:7rem 0;background:var(--dark)}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.service-card{background:var(--secondary);padding:2.5rem 1.5rem;border-radius:20px;text-align:center;transition:var(--transition);position:relative;overflow:hidden}.service-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:3px;background:var(--gradient-gold);transform:scaleX(0);transition:var(--transition)}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.service-card:hover::before{transform:scaleX(1)}.service-icon{width:70px;height:70px;background:rgba(201,162,39,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1.5rem;transition:var(--transition)}.service-icon i{font-size:1.75rem;color:var(--primary)}.service-card:hover .service-icon{background:var(--gradient-gold)}.service-card:hover .service-icon i{color:var(--dark)}.service-card h3{font-size:1.1rem;font-weight:600;color:var(--white);margin-bottom:.75rem}.service-card p{font-size:.9rem;color:var(--gray);line-height:1.6}.gallery{padding:7rem 0;background:var(--secondary)}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:200px;gap:1rem}.gallery-item{position:relative;border-radius:15px;overflow:hidden;cursor:pointer}.gallery-item.large{grid-column:span 2;grid-row:span 2}.gallery-item.tall{grid-row:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.gallery-item:hover img{transform:scale(1.1)}.gallery-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,transparent 0,rgba(15,15,26,.9) 100%);display:flex;align-items:flex-end;padding:1.5rem;opacity:0;transition:var(--transition)}.gallery-item:hover .gallery-overlay{opacity:1}.gallery-overlay span{color:var(--white);font-size:1rem;font-weight:600}.businesses{padding:7rem 0;background:var(--gradient-dark);position:relative}.businesses::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:url('https://images.unsplash.com/photo-1514362545857-3bc16c4c7d1b?w=1920&h=600&fit=crop') center/cover;opacity:.1}.businesses .container{position:relative;z-index:1}.business-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.business-card{background:rgba(255,255,255,.05);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:20px;overflow:hidden;transition:var(--transition)}.business-card:hover{transform:translateY(-10px);border-color:var(--primary);box-shadow:var(--shadow-gold)}.business-image{height:200px;overflow:hidden}.business-image img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.business-card:hover .business-image img{transform:scale(1.1)}.business-content{padding:2rem;text-align:center}.business-logo{margin-bottom:1rem}.business-logo .logo-text{display:block;font-family:var(--font-display);font-size:1.75rem;font-weight:700;color:var(--primary)}.business-logo .logo-sub{font-size:.8rem;color:var(--gray-light);text-transform:uppercase;letter-spacing:3px}.business-content p{font-size:.95rem;color:var(--gray-light);margin-bottom:1.5rem}.tourism{padding:7rem 0;background:var(--dark)}.tourism-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}.tourism-card{position:relative;border-radius:15px;overflow:hidden;height:280px;cursor:pointer}.tourism-card img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.tourism-card:hover img{transform:scale(1.1)}.tourism-card-overlay{position:absolute;bottom:0;left:0;width:100%;padding:1.5rem;background:linear-gradient(180deg,transparent 0,rgba(0,0,0,.9) 100%);transition:var(--transition)}.tourism-card:hover .tourism-card-overlay{padding-bottom:2rem}.tourism-card h4{font-family:var(--font-display);font-size:1.1rem;font-weight:600;color:var(--white)}.tourism-card p{font-size:.85rem;color:var(--gray-light);opacity:0;max-height:0;transition:var(--transition)}.tourism-card:hover p{opacity:1;max-height:50px;margin-top:.5rem}.booking{padding:7rem 0;background:var(--secondary)}.booking-wrapper{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.booking-info .section-title{text-align:left}.booking-info p{color:var(--gray-light);margin-bottom:2rem}.booking-contact{display:flex;flex-direction:column;gap:1.25rem}.contact-item{display:flex;align-items:center;gap:1rem}.contact-item i{width:45px;height:45px;background:rgba(201,162,39,.15);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--primary);font-size:1.1rem}.contact-item div span{display:block;font-size:.8rem;color:var(--gray);margin-bottom:.2rem}.contact-item div a{color:var(--white);font-weight:500}.contact-item div a:hover{color:var(--primary)}.booking-form-wrapper{background:var(--dark);border-radius:25px;padding:2.5rem;box-shadow:var(--shadow-lg)}.booking-form h3{font-family:var(--font-display);font-size:1.5rem;color:var(--white);margin-bottom:1.5rem;text-align:center}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-size:.85rem;color:var(--gray-light);margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.9rem 1rem;background:var(--secondary);border:1px solid rgba(255,255,255,.1);border-radius:10px;color:var(--white);font-family:var(--font-body);font-size:.95rem;transition:var(--transition)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:0;border-color:var(--primary)}.form-group textarea{resize:vertical;min-height:120px}.contact{padding:7rem 0;background:var(--dark)}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:4rem}.contact-info .section-title{text-align:left;margin-bottom:.75rem}.contact-info>p{color:var(--gray-light);margin-bottom:2rem}.info-cards{display:flex;flex-direction:column;gap:1.25rem;margin-bottom:2rem}.info-card{display:flex;align-items:flex-start;gap:1rem;padding:1.25rem;background:var(--secondary);border-radius:15px;transition:var(--transition)}.info-card:hover{transform:translateX(10px)}.info-icon{width:50px;height:50px;background:rgba(201,162,39,.15);border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.info-icon i{color:var(--primary);font-size:1.2rem}.info-content h4{font-size:1rem;font-weight:600;color:var(--white);margin-bottom:.3rem}.info-content a,.info-content p{font-size:.9rem;color:var(--gray-light)}.info-content a:hover{color:var(--primary)}.social-links{display:flex;gap:.75rem}.social-link{width:45px;height:45px;background:var(--secondary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--gray-light);transition:var(--transition)}.social-link:hover{background:var(--primary);color:var(--dark)}.contact-map{border-radius:20px;overflow:hidden;height:450px;box-shadow:var(--shadow-lg)}.contact-map iframe{width:100%;height:100%;border:none}.footer{background:var(--darker)}.footer-top{padding:4rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:3rem}.footer-logo{display:inline-flex;align-items:center;gap:.5rem;margin-bottom:1.25rem}.footer-logo .star-icon{color:var(--primary);font-size:1rem}.footer-logo .logo-text{display:flex;flex-direction:column;line-height:1.1}.footer-logo .logo-hotel{font-size:.6rem;letter-spacing:3px;color:var(--gray)}.footer-logo .logo-frontera{font-size:1.1rem;font-weight:700;font-family:var(--font-display);color:var(--white)}.footer-brand p{color:var(--gray);font-size:.9rem;margin-bottom:1.5rem}.footer-social{display:flex;gap:.75rem}.footer-social a{width:40px;height:40px;background:var(--secondary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--gray-light);transition:var(--transition)}.footer-social a:hover{background:var(--primary);color:var(--dark)}.footer-contact h4,.footer-links h4{font-size:1rem;font-weight:600;color:var(--white);margin-bottom:1.25rem}.footer-links ul li{margin-bottom:.75rem}.footer-links ul a{color:var(--gray);font-size:.9rem;transition:var(--transition)}.footer-links ul a:hover{color:var(--primary);padding-left:5px}.footer-contact ul li{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:1rem;color:var(--gray);font-size:.9rem}.footer-contact ul li i{color:var(--primary);margin-top:.2rem}.footer-contact ul a{color:var(--gray)}.footer-contact ul a:hover{color:var(--primary)}.footer-bottom{padding:1.5rem 0;display:flex;justify-content:space-between;align-items:center}.footer-bottom .container{display:flex;justify-content:space-between}.footer-bottom p{color:var(--gray);font-size:.85rem}.footer-bottom i{color:#e74c3c}.whatsapp-float{position:fixed;bottom:30px;right:30px;width:60px;height:60px;background:#25d366;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 5px 25px rgba(37,211,102,.4);z-index:999;transition:var(--transition)}.whatsapp-float i{color:var(--white);font-size:1.75rem}.whatsapp-float:hover{transform:scale(1.1)}.whatsapp-float .tooltip{position:absolute;right:70px;background:var(--dark);color:var(--white);padding:.5rem 1rem;border-radius:8px;font-size:.85rem;white-space:nowrap;opacity:0;visibility:hidden;transition:var(--transition)}.whatsapp-float:hover .tooltip{opacity:1;visibility:visible}.back-to-top{position:fixed;bottom:30px;right:100px;width:45px;height:45px;background:var(--secondary);border:1px solid rgba(255,255,255,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:999;opacity:0;visibility:hidden;transition:var(--transition)}.back-to-top.visible{opacity:1;visibility:visible}.back-to-top i{color:var(--white);font-size:1rem}.back-to-top:hover{background:var(--primary)}.back-to-top:hover i{color:var(--dark)}@media (max-width:1200px){.rooms-grid{grid-template-columns:repeat(2,1fr)}.services-grid{grid-template-columns:repeat(3,1fr)}.tourism-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:992px){.nav-menu{position:fixed;top:0;right:-100%;width:300px;height:100vh;background:var(--darker);flex-direction:column;padding:5rem 2rem 2rem;gap:1.5rem;transition:var(--transition)}.nav-menu.active{right:0}.nav-toggle{display:flex;z-index:1001}.nav-contact{display:none}.about-grid{grid-template-columns:1fr;gap:3rem}.about-img-secondary{display:none}.booking-wrapper{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}.business-cards{grid-template-columns:1fr}}@media (max-width:768px){.hero-features{gap:1.5rem}.rooms-grid{grid-template-columns:1fr}.services-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:repeat(2,1fr)}.gallery-item.large,.gallery-item.tall{grid-column:span 1;grid-row:span 1}.tourism-grid{grid-template-columns:repeat(2,1fr)}.form-row{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;text-align:center}.footer-logo{justify-content:center}.footer-social{justify-content:center}.footer-bottom .container{flex-direction:column;gap:.5rem;text-align:center}}@media (max-width:576px){.container{padding:0 1rem}.hero-buttons{flex-direction:column}.hero-buttons .btn{width:100%}.services-grid{grid-template-columns:1fr}.tourism-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr}.booking-form-wrapper{padding:1.5rem}.whatsapp-float{right:20px;bottom:20px}.back-to-top{right:90px;bottom:20px}}.room-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.9);backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;z-index:10000;opacity:0;visibility:hidden;transition:var(--transition);padding:2rem}.room-modal.active{opacity:1;visibility:visible}.room-modal-content{background:var(--dark);border-radius:25px;max-width:900px;width:100%;max-height:90vh;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;position:relative;transform:scale(.9);transition:var(--transition);box-shadow:0 30px 80px rgba(0,0,0,.5)}.room-modal.active .room-modal-content{transform:scale(1)}.room-modal-close{position:absolute;top:15px;right:15px;width:40px;height:40px;background:rgba(0,0,0,.5);border:none;border-radius:50%;color:var(--white);font-size:1.5rem;cursor:pointer;z-index:10;transition:var(--transition)}.room-modal-close:hover{background:var(--primary);color:var(--dark)}.room-modal-image{height:100%;min-height:400px}.room-modal-image img{width:100%;height:100%;object-fit:cover}.room-modal-info{padding:2.5rem;overflow-y:auto}.room-modal-info h2{font-family:var(--font-display);font-size:1.75rem;color:var(--white);margin-bottom:1rem}.room-modal-info>p{color:var(--gray-light);margin-bottom:1.5rem;line-height:1.7}.room-modal-features{display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem}.room-modal-features span{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;background:var(--secondary);border-radius:50px;font-size:.85rem;color:var(--gray-light)}.room-modal-features span i{color:var(--primary)}.room-modal-amenities{margin-bottom:2rem}.room-modal-amenities h4{font-size:1rem;color:var(--white);margin-bottom:1rem}.amenities-list{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.amenities-list span{display:flex;align-items:center;gap:.5rem;font-size:.9rem;color:var(--gray-light)}.amenities-list span i{color:var(--primary);width:20px}@media (max-width:768px){.room-modal-content{grid-template-columns:1fr;max-height:85vh}.room-modal-image{height:200px;min-height:200px}.room-modal-info{padding:1.5rem}.amenities-list{grid-template-columns:1fr}}