:root{--primary-nature:#2d5a27;--secondary-nature:#8fbc8f;--accent-gold:#d4af37;--accent-copper:#b87333;--earth-brown:#8b4513;--cream-white:#faf8f3;--charcoal:#2c3e50;--mist-blue:#e8f4f8;--sunset-orange:coral;--font-primary:"Playfair Display","Georgia",serif;--font-secondary:"Inter","Segoe UI",sans-serif;--font-accent:"Cormorant Garamond","Times New Roman",serif;--shadow-soft:0 8px 32px #2d5a271a;--shadow-medium:0 12px 40px #2d5a2726;--shadow-deep:0 20px 60px #2d5a2733;--gradient-nature:linear-gradient(135deg,var(--primary-nature) 0%,var(--secondary-nature) 100%);--gradient-luxury:linear-gradient(135deg,var(--accent-gold) 0%,var(--accent-copper) 100%);--gradient-mist:linear-gradient(135deg,var(--mist-blue) 0%,var(--cream-white) 100%)}*{margin:0}*,body{padding:0}body{background:#faf8f3;background:var(--cream-white);color:#2c3e50;color:var(--charcoal);font-family:Inter,Segoe UI,sans-serif;font-family:var(--font-secondary);overflow-x:hidden}h1,h2,h3,h4,h5,h6{color:#2d5a27;color:var(--primary-nature);font-family:Playfair Display,Georgia,serif;font-family:var(--font-primary);font-weight:600;letter-spacing:-.02em}h1{font-size:3.5rem;line-height:1.2;margin-bottom:1.5rem}h2{font-size:2.8rem;line-height:1.3;margin-bottom:1.2rem}h3{font-size:2.2rem;line-height:1.4;margin-bottom:1rem}.btn-premium{background:linear-gradient(135deg,#d4af37,#b87333);background:var(--gradient-luxury);border:none;border-radius:50px;box-shadow:0 8px 32px #2d5a271a;box-shadow:var(--shadow-soft);color:#fff;cursor:pointer;font-family:Inter,Segoe UI,sans-serif;font-family:var(--font-secondary);font-size:1rem;font-weight:600;overflow:hidden;padding:1rem 2.5rem;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1)}.btn-premium:hover{box-shadow:0 12px 40px #2d5a2726;box-shadow:var(--shadow-medium);transform:translateY(-2px)}.btn-premium:before{background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s ease;width:100%}.btn-premium:hover:before{left:100%}.card-premium{background:#fff;border:1px solid #2d5a271a;border-radius:20px;box-shadow:0 8px 32px #2d5a271a;box-shadow:var(--shadow-soft);padding:2rem;transition:all .3s ease}.card-premium:hover{box-shadow:0 12px 40px #2d5a2726;box-shadow:var(--shadow-medium);transform:translateY(-5px)}.nature-accent{position:relative}.nature-accent:before{left:-15px;top:-10px}.nature-accent:after,.nature-accent:before{content:"🌿";font-size:1.5rem;opacity:.6;position:absolute}.nature-accent:after{bottom:-10px;right:-15px;transform:rotate(180deg)}.section-divider{background:linear-gradient(135deg,#2d5a27,#8fbc8f);background:var(--gradient-nature);border-radius:2px;height:4px;margin:3rem auto;opacity:.8;width:80px}@media (max-width:768px){h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.8rem}.btn-premium{font-size:.9rem;padding:.8rem 2rem}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.navbar{align-items:center;background:#fffffff2;box-shadow:0 4px 15px #0000001a;display:flex;justify-content:center;padding:12px 20px;position:fixed;top:0;transition:background .3s ease;width:100%;z-index:2000}.navbar.scrolled{background:#fff;box-shadow:0 4px 15px #00000026}.navbar-container{gap:20px;justify-content:space-between;max-width:1200px;width:100%}.logo-link,.navbar-container{align-items:center;display:flex}.logo-link{gap:10px;text-decoration:none}.logo-img{height:40px}.logo-text{color:#2c3e50;font-size:1.3rem;font-weight:700;line-height:1}.nav-center,.nav-links{align-items:center;display:flex;gap:20px}.nav-links{list-style:none}.nav-link{border-radius:8px;color:#2c3e50;font-weight:500;overflow:hidden;padding:6px 12px;position:relative;text-decoration:none;transition:all .3s ease}.nav-link.active,.nav-link:hover{background:linear-gradient(135deg,#e8f5e9,#f0f9f0);border:2px solid #27ae604d;box-shadow:0 6px 20px #27ae6066;color:#27ae60;transform:translateY(-3px) scale(1.02)}.nav-link.active:after{background:linear-gradient(90deg,#27ae60,#2ecc71);border-radius:2px;bottom:-2px;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:60%}.book-now-btn{align-items:center;background:linear-gradient(135deg,#27ae60,#2ecc71);border:2px solid #0000;border-radius:25px;box-shadow:0 4px 15px #27ae604d;color:#fff;display:flex;font-weight:700;gap:8px;overflow:hidden;padding:10px 18px;position:relative;text-decoration:none;transition:all .3s ease}.book-now-btn:hover{background:linear-gradient(135deg,#2ecc71,#27ae60);border-color:#ffffff4d;box-shadow:0 8px 25px #27ae6080;transform:translateY(-3px) scale(1.05)}.book-now-btn:active{transform:translateY(-1px) scale(1.02)}.booking-badge{background:#e74c3c;border-radius:50%;color:#fff;font-size:12px;padding:2px 6px}.menu-icon{cursor:pointer;display:none;flex-direction:column;gap:5px;z-index:3000}.hamburger-line{background:#2c3e50;border-radius:2px;height:3px;width:25px}@media (max-width:768px){.menu-icon{display:flex}.nav-center{align-items:center;background:#fff;box-shadow:-4px 0 15px #0000001a;flex-direction:column;gap:25px;height:100%;justify-content:center;padding:0 40px;position:fixed;right:-100%;top:0;transition:right .3s ease-in-out;width:70%}.nav-center.open{right:0}.mobile-menu-close{background:none;border:none;cursor:pointer;display:block;font-size:1.5rem;position:absolute;right:20px;top:20px}.nav-links{align-items:center;flex-direction:column;gap:45px;justify-content:center;width:100%}.nav-link{background:linear-gradient(145deg,#f0f0f0,#e0e0e0);border:2px solid #0000;border-radius:20px;box-shadow:8px 8px 16px #d0d0d0,-8px -8px 16px #fff;max-width:250px;overflow:hidden;padding:16px 20px;position:relative;text-align:center;transition:all .4s cubic-bezier(.4,0,.2,1);width:100%}.nav-link:hover{background:linear-gradient(145deg,#e8f5e9,#d4edda);border-color:#27ae604d;box-shadow:0 10px 25px #27ae6066;color:#27ae60;transform:translateY(-5px) scale(1.02)}.nav-link:active{box-shadow:0 5px 15px #27ae604d;transform:translateY(-2px) scale(.98)}.book-now-btn{background:linear-gradient(135deg,#27ae60,#2ecc71);border:2px solid #fff3;border-radius:25px;box-shadow:0 6px 20px #27ae6066;color:#fff;margin:0 auto;max-width:200px;overflow:hidden;padding:14px 24px;position:relative;transition:all .4s cubic-bezier(.4,0,.2,1)}.book-now-btn:hover{background:linear-gradient(135deg,#2ecc71,#27ae60);box-shadow:0 10px 30px #27ae6099;transform:translateY(-3px) scale(1.05)}}@media (min-width:769px){.mobile-menu-close{display:none}}.scroll-progress{background:#27ae60;bottom:0;height:4px;left:0;position:fixed;transition:width .2s ease;width:0;z-index:2500}.footer{background-color:#1a1a1a;color:#fff;font-family:Arial,sans-serif;padding:3rem 2rem 2rem}.footer-container{display:flex;flex-wrap:wrap;gap:2rem;justify-content:space-between;margin:0 auto;max-width:1200px}.footer-left{align-items:flex-start;display:flex;flex:1 1 300px;flex-direction:column}.footer-left h2{color:#fff;font-size:1.4rem;margin-bottom:1rem}.footer-left p{color:#ccc;font-size:.95rem;line-height:1.6}.footer-right{display:flex;flex:1 1 300px;gap:2rem}.footer-section h4{color:#fff;font-size:1.2rem;margin-bottom:1rem}.footer-section ul{list-style:none;margin:0;padding:0}.footer-section ul li{margin-bottom:8px}.footer-section ul li a{color:#ccc;text-decoration:none;transition:color .3s}.footer-section ul li a:hover{color:teal}.footer-section p{color:#ccc;font-size:.95rem;margin:4px 0}.footer-bottom{border-top:1px solid #333;color:#aaa;font-size:.85rem;margin-top:2rem;padding-top:1rem;text-align:center}.footer-logo{display:block;height:80px;margin-bottom:1rem;object-fit:contain}.social-icons{margin-top:.5rem}.social-icon{height:24px;transition:transform .2s ease-in-out;width:24px}.social-icon:hover{transform:scale(1.1)}@media (max-width:768px){.footer-right{flex-direction:column;gap:1.5rem}.footer-section{min-width:100%}}:root{--vanilla-latte:#014421;--teal-forest:#f3e5ab;--text-dark:#1a1a1a;--text-light:#fff}.hero{background-position:50%;background-size:cover;height:100vh;margin-top:0;overflow:hidden;padding-top:0;position:relative}.hero,.overlay{align-items:center;box-sizing:border-box;display:flex;justify-content:center}.overlay{background-color:#00000080;bottom:0;color:#fff;flex-direction:column;height:100%;left:0;padding:2rem;position:absolute;right:0;text-align:center;top:0;width:100%}.overlay h1{color:#fff;font-size:3rem;margin-bottom:1rem}.overlay p{color:#fff;font-size:1.25rem;margin-bottom:2rem}.slide-arrow{background:#00000080;padding:8px 12px}.slide-arrow.left{left:20px}.slide-arrow.right{right:20px}.slide-arrow:hover{background:#000c}.hero-buttons{display:flex;flex-wrap:wrap;gap:1rem}.hero-buttons button{background:#fff;border:1px solid #cecece;border-radius:30px;box-shadow:inset 4px 4px 10px #bcbcbc,inset -4px -4px 10px #fff;color:#000;cursor:pointer;font-size:1rem;padding:10px 18px;text-decoration:none;transition:all .3s ease}.btn-primary{background-color:var(--teal-forest);color:var(--vanilla-latte);transition:transform .3s ease,box-shadow .3s ease}.btn-secondary{transition:transform .3s ease,box-shadow .3s ease}.btn-primary:hover,.btn-secondary{background-color:var(--vanilla-latte);color:var(--teal-forest)}.btn-primary:hover,.btn-secondary:hover{box-shadow:0 8px 16px #0000004d;transform:scale(1.05)}.btn-secondary:hover{background-color:var(--teal-forest);color:var(--vanilla-latte)}@media (max-width:768px){.overlay h1{color:#fff;font-size:2rem}.overlay p{color:#fff;font-size:1rem}.hero-buttons{flex-direction:column}.hero-buttons button{margin:.5rem 0;width:100%}}.services-section{background-color:teal;padding:4rem 2rem;text-align:center}.services-container{margin:0 auto;max-width:1200px}.services-intro{color:#fff;font-size:1.1rem;margin:0 auto 2rem;max-width:700px}.services-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.service-card{background:#fff;border-radius:12px;box-shadow:0 0 12px #0000000d;cursor:pointer;padding:2rem;text-align:left;transition:transform .3s ease,box-shadow .3s ease}.service-card:hover{box-shadow:0 8px 20px #0000001a;transform:translateY(-8px)}.service-card h3{color:#00695c;margin-bottom:.8rem}.services-section h2{color:#fff}.service-card p{color:#333;font-size:.95rem}:root{--primary-teal:teal;--dark-teal:#005950;--accent-teal:#003332;--light-teal:#e0f2f1;--success-green:#25d366;--success-green-hover:#1da851;--danger-red:#ff4d4f;--danger-red-hover:#d9363e;--shadow-light:0 2px 8px #0000001a;--shadow-medium:0 4px 14px #00000026;--shadow-heavy:0 8px 25px #0003;--transition-smooth:all 0.3s cubic-bezier(0.4,0,0.2,1);--transition-bounce:all 0.4s cubic-bezier(0.68,-0.55,0.265,1.55);--border-radius-small:6px;--border-radius-medium:12px;--border-radius-large:16px}html{scroll-behavior:smooth}.page-section{animation:gradientShift 8s ease-in-out infinite;background:linear-gradient(135deg,teal,#005950);background:linear-gradient(135deg,var(--primary-teal) 0,var(--dark-teal) 100%);background-size:400% 400%;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;overflow-x:hidden;padding:4rem 2rem;position:relative;text-align:center}@keyframes gradientShift{0%,to{background-position:0 50%}50%{background-position:100% 50%}}.page-section:before{animation:backgroundFloat 20s linear infinite;background-image:radial-gradient(circle at 25% 25%,#ffffff1a 2px,#0000 0),radial-gradient(circle at 75% 75%,#ffffff0d 2px,#0000 0);background-size:50px 50px;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}@keyframes backgroundFloat{0%{transform:translateX(0) translateY(0)}to{transform:translateX(-50px) translateY(-50px)}}.section-title{animation:slideInDown .8s ease-out;color:#fff;font-size:2.8rem;font-weight:700;margin-bottom:.8rem;position:relative;text-shadow:2px 2px 4px #0000004d}.section-title:after{animation:expandLine 1s ease-out .5s both;background:linear-gradient(90deg,#0000,#fff,#0000);border-radius:2px;bottom:-10px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}@keyframes slideInDown{0%{opacity:0;transform:translateY(-50px)}to{opacity:1;transform:translateY(0)}}@keyframes expandLine{0%{width:0}to{width:80px}}.section-subtitle{animation:slideInUp .8s ease-out .2s both;color:#ffffffe6;font-size:1.3rem;font-weight:300;margin-bottom:3rem}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.filter-section{animation:fadeInScale .6s ease-out .4s both;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff26;border:1px solid #fff3;border-radius:16px;border-radius:var(--border-radius-large);box-shadow:0 4px 14px #00000026;box-shadow:var(--shadow-medium);margin-bottom:3rem;padding:2rem;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition-smooth)}.filter-section:hover{box-shadow:0 8px 25px #0003;box-shadow:var(--shadow-heavy);transform:translateY(-2px)}@keyframes fadeInScale{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.filter-section h3{color:#fff;font-size:1.5rem;margin-bottom:1.5rem;text-shadow:1px 1px 2px #0000004d}.filter-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-bottom:1.5rem}.filter-group label{color:#fff;display:block;font-size:.95rem;font-weight:600;margin-bottom:.5rem;text-shadow:1px 1px 2px #0000004d}.filter-group input,.filter-group select{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffffe6;border:2px solid #ffffff4d;border-radius:6px;border-radius:var(--border-radius-small);font-size:.95rem;padding:.75rem;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition-smooth);width:100%}.filter-group input:focus,.filter-group select:focus{background:#fff;border-color:#fff;box-shadow:0 4px 12px #00000026;outline:none;transform:translateY(-1px)}.filter-group input:hover,.filter-group select:hover{border-color:#fff9;transform:translateY(-1px)}.room-grid{grid-gap:2rem;animation:fadeIn .8s ease-out .6s both;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));margin:0 auto;max-width:1400px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.room-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:16px;border-radius:var(--border-radius-large);box-shadow:0 2px 8px #0000001a;box-shadow:var(--shadow-light);cursor:pointer;display:flex;flex-direction:column;overflow:hidden;padding:1.5rem;position:relative;transition:all .4s cubic-bezier(.68,-.55,.265,1.55);transition:var(--transition-bounce)}.room-card:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition-smooth);width:100%}.room-card:hover:before{left:100%}.room-card:hover{border-color:#fff6;box-shadow:0 8px 25px #0003;box-shadow:var(--shadow-heavy);transform:translateY(-8px) scale(1.02)}.room-card h4{color:#005950;color:var(--dark-teal);font-size:1.4rem;font-weight:700;margin-bottom:.8rem;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition-smooth)}.room-card:hover h4{color:teal;color:var(--primary-teal);transform:translateX(5px)}.room-card p{color:#333;font-size:.95rem;line-height:1.5;margin:.3rem 0}.image-slider,.room-card p{transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition-smooth)}.image-slider{border-radius:12px;border-radius:var(--border-radius-medium);box-shadow:0 4px 14px #00000026;box-shadow:var(--shadow-medium);margin-bottom:1.5rem;overflow:hidden;position:relative;width:100%}.image-slider:hover{box-shadow:0 8px 25px #0003;box-shadow:var(--shadow-heavy);transform:scale(1.02)}.room-image{height:200px;object-fit:cover;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition-smooth);width:100%}.room-card:hover .room-image{transform:scale(1.05)}.arrow{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000b3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:1.2rem;height:40px;justify-content:center;position:absolute;top:50%;transform:translateY(-50%);transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition-smooth);width:40px;z-index:2}.left-arrow{left:10px}.right-arrow{right:10px}.arrow:hover{animation:pulse .6s ease-in-out;background:#000000e6;transform:translateY(-50%) scale(1.1)}@keyframes pulse{0%,to{box-shadow:0 0 0 0 #ffffffb3}50%{box-shadow:0 0 0 10px #fff0}}.room-card .image-slider>div[style*="position: absolute"]{animation:badgeFloat 3s ease-in-out infinite;box-shadow:0 2px 8px #0003;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition-smooth)}.room-card:hover .image-slider>div[style*="position: absolute"]{box-shadow:0 4px 15px #0000004d;transform:scale(1.05)}@keyframes badgeFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.room-card>div[style*="background-color: #f8f9fa"]{background:linear-gradient(135deg,#f8f9fa,#e9ecef)!important;border:1px solid #00808033!important;border-radius:12px!important;border-radius:var(--border-radius-medium)!important;margin-bottom:1.5rem!important;overflow:hidden;padding:1rem!important;position:relative;transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition-smooth)}.room-card:hover>div[style*="background-color: #f8f9fa"]{box-shadow:0 2px 8px #0000001a;box-shadow:var(--shadow-light);transform:translateY(-2px)}.button-group{display:flex;gap:1rem;justify-content:center;margin-top:auto;padding-top:1rem;width:100%}.booking-button,.remove-button{border:none;border-radius:12px;border-radius:var(--border-radius-medium);cursor:pointer;flex:1 1;font-size:.95rem;font-weight:600;letter-spacing:.5px;overflow:hidden;padding:.8rem 1.5rem;position:relative;text-align:center;text-transform:uppercase;transition:all .4s cubic-bezier(.68,-.55,.265,1.55);transition:var(--transition-bounce)}.booking-button:before,.remove-button:before{background:#ffffff4d;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition-smooth);width:0}.booking-button:hover:before,.remove-button:hover:before{height:300px;width:300px}.booking-button{background:linear-gradient(135deg,#25d366,#1da851);background:linear-gradient(135deg,var(--success-green) 0,var(--success-green-hover) 100%);box-shadow:0 2px 8px #0000001a;box-shadow:var(--shadow-light);color:#fff}.booking-button:hover{background:linear-gradient(135deg,#1da851,#0d8f47);background:linear-gradient(135deg,var(--success-green-hover) 0,#0d8f47 100%);box-shadow:0 4px 14px #00000026;box-shadow:var(--shadow-medium);transform:translateY(-3px) scale(1.02)}.booking-button:active{transform:translateY(-1px) scale(.98)}.remove-button{background:linear-gradient(135deg,#ff4d4f,#d9363e);background:linear-gradient(135deg,var(--danger-red) 0,var(--danger-red-hover) 100%);box-shadow:0 2px 8px #0000001a;box-shadow:var(--shadow-light);color:#fff}.remove-button:hover{background:linear-gradient(135deg,#d9363e,#b73e40);background:linear-gradient(135deg,var(--danger-red-hover) 0,#b73e40 100%);box-shadow:0 4px 14px #00000026;box-shadow:var(--shadow-medium);transform:translateY(-3px) scale(1.02)}.remove-button:active{transform:translateY(-1px) scale(.98)}.booking-button:disabled,.remove-button:disabled{background:linear-gradient(135deg,#6c757d,#5a6268);box-shadow:none;cursor:not-allowed;transform:none}.booking-button:disabled:hover,.remove-button:disabled:hover{box-shadow:none;transform:none}button[style*="background-color: #6c757d"]{background:linear-gradient(135deg,#6c757d,#5a6268)!important;border:none!important;border-radius:12px!important;border-radius:var(--border-radius-medium)!important;cursor:pointer!important;font-weight:600!important;letter-spacing:.5px;padding:.8rem 1.5rem!important;text-transform:uppercase;transition:all .3s cubic-bezier(.4,0,.2,1)!important;transition:var(--transition-smooth)!important}button[style*="background-color: #6c757d"]:hover{background:linear-gradient(135deg,#5a6268,#495057)!important;box-shadow:0 2px 8px #0000001a!important;box-shadow:var(--shadow-light)!important;transform:translateY(-2px)!important}button[style*="background-color: #007bff"]{background:linear-gradient(135deg,#007bff,#0056b3)!important;border:none!important;border-radius:12px!important;border-radius:var(--border-radius-medium)!important;cursor:pointer!important;font-weight:600!important;letter-spacing:.5px;padding:.8rem 1.5rem!important;text-transform:uppercase;transition:all .3s cubic-bezier(.4,0,.2,1)!important;transition:var(--transition-smooth)!important}button[style*="background-color: #007bff"]:hover{background:linear-gradient(135deg,#0056b3,#004085)!important;box-shadow:0 2px 8px #0000001a!important;box-shadow:var(--shadow-light)!important;transform:translateY(-2px)!important}.redirect-container{align-items:center;animation:slideInUp .8s ease-out .8s both;display:flex;flex-direction:column;margin-top:4rem}.redirect-button{background:linear-gradient(135deg,#003332,#005950);background:linear-gradient(135deg,var(--accent-teal) 0,var(--dark-teal) 100%);border:none;border-radius:16px;border-radius:var(--border-radius-large);box-shadow:0 4px 14px #00000026;box-shadow:var(--shadow-medium);color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;letter-spacing:1px;overflow:hidden;padding:1rem 2.5rem;position:relative;text-transform:uppercase;transition:all .4s cubic-bezier(.68,-.55,.265,1.55);transition:var(--transition-bounce)}.redirect-button:before{background:#fff3;border-radius:50%;content:"";height:0;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);transition:all .3s cubic-bezier(.4,0,.2,1);transition:var(--transition-smooth);width:0}.redirect-button:hover:before{height:300px;width:300px}.redirect-button:hover{background:linear-gradient(135deg,#005950,teal);background:linear-gradient(135deg,var(--dark-teal) 0,var(--primary-teal) 100%);box-shadow:0 8px 25px #0003;box-shadow:var(--shadow-heavy);transform:translateY(-4px) scale(1.05)}.redirect-button:active{transform:translateY(-2px) scale(1.02)}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.loading-shimmer:after{animation:shimmer 1.5s infinite;background:linear-gradient(90deg,#0000,#ffffff80,#0000);content:"";height:100%;left:0;position:absolute;top:0;width:100%}@media (max-width:1024px){.page-section{padding:3rem 1.5rem}.section-title{font-size:2.4rem}.section-subtitle{font-size:1.1rem}.room-grid{gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.filter-grid{gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.filter-section{margin-bottom:2rem;padding:1.5rem}}@media (max-width:768px){.page-section{padding:2rem 1rem}.section-title{font-size:2rem}.section-subtitle{font-size:1rem;margin-bottom:2rem}.room-grid{gap:1.5rem}.filter-grid,.room-grid{grid-template-columns:1fr}.filter-grid{gap:1rem}.filter-section{margin-bottom:1.5rem;padding:1rem}.room-card{padding:1rem}.room-image{height:160px}.button-group{flex-direction:column;gap:.8rem}.booking-button,.remove-button{font-size:.9rem;padding:.8rem}.redirect-button{font-size:1rem;padding:.8rem 2rem}.arrow{font-size:1rem;height:35px;width:35px}.left-arrow{left:5px}.right-arrow{right:5px}}@media (max-width:480px){.page-section{padding:1.5rem .8rem}.section-title{font-size:1.8rem}.room-card h4{font-size:1.2rem}.room-card p{font-size:.9rem}.filter-section h3{font-size:1.3rem}.filter-group label{font-size:.9rem}.filter-group input,.filter-group select{font-size:.9rem;padding:.6rem}}@media (prefers-contrast:high){.booking-button,.remove-button,.room-card{border:2px solid #000}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.page-section:before{animation:none}}@media (prefers-color-scheme:dark){.room-card{background:#1e1e1ef2;color:#fff}.room-card h4{color:#4db6ac}.room-card p{color:#e0e0e0}}body{color:#fff;font-family:Segoe UI,sans-serif;line-height:1.6}.about-section{align-items:center;background-color:teal!important;border-radius:0;box-shadow:none;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;margin:0;max-width:100vw;min-height:50vh;padding:4rem 2rem;text-align:center;width:100vw}.about-container{margin:0 auto;max-width:960px}.about-section h2{color:#fff;font-size:3rem;letter-spacing:1px;margin-bottom:1.2rem}.tagline{color:#fff;font-size:1.2rem;font-style:italic;margin-bottom:2.5rem}.about-content p{color:#fff;font-size:1.125rem;line-height:1.9;margin-bottom:1.8rem;text-align:justify}.find-us-section{align-items:center;background-color:#f8f9fa!important;border-radius:0;box-shadow:none;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;margin:0;max-width:100vw;min-height:60vh;padding:4rem 2rem;text-align:center;width:100vw}.find-us-content{max-width:1200px;width:100%}.find-us-content h2{color:#333!important;font-size:2.5rem;margin-bottom:1rem}.find-us-content p{color:#666!important;font-size:1.1rem;line-height:1.6;margin-bottom:2rem}.map-container{border-radius:12px;box-shadow:0 4px 20px #0000001a;margin:0 auto 2rem;max-width:1000px;overflow:hidden;width:100%}.location-info{background:#fff;border-radius:12px;box-shadow:0 2px 15px #00000014;margin:0 auto;max-width:600px;padding:2rem}.location-info h3{color:#333;font-size:1.5rem;margin-bottom:1.5rem}.location-info p{color:#555;font-size:1rem;margin-bottom:.8rem;text-align:left}.contact-numbers{background:#f0f8ff;border-left:4px solid #28a745;border-radius:8px;margin:1.5rem 0;padding:1.5rem}.contact-numbers h4{color:#333;font-size:1.2rem;margin-bottom:1rem}.contact-numbers h4,.contact-numbers p{align-items:center;display:flex;gap:.5rem}.contact-numbers p{line-height:1.6;margin-bottom:.8rem}.contact-numbers p:last-of-type{margin-bottom:0}.transport-info{background:#f8f9fa;border-left:4px solid #007bff;border-radius:8px;margin:1.5rem 0;padding:1.5rem}.transport-info h4{align-items:center;color:#333;display:flex;font-size:1.2rem;gap:.5rem;margin-bottom:1rem}.transport-info p{line-height:1.6;margin-bottom:.8rem}.transport-info p:last-of-type{color:#666;font-style:italic;margin-bottom:0}.directions-btn{background:linear-gradient(135deg,#007bff,#0056b3);border-radius:8px;box-shadow:0 2px 10px #007bff4d;color:#fff;display:inline-block;font-weight:700;margin-top:1rem;padding:1rem 2rem;text-decoration:none;transition:all .3s ease}.directions-btn:hover{background:linear-gradient(135deg,#0056b3,#004085);box-shadow:0 4px 15px #007bff66;transform:translateY(-2px)}.contact-page{align-items:center;background-color:teal!important;border-radius:0;box-shadow:none;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;margin:0;max-width:100vw;min-height:50vh;padding:4rem 2rem;text-align:center;width:100vw}.contact-page h2{color:#fff!important;font-size:2.2rem;margin-bottom:.5rem}.contact-page p{color:#fff!important;font-size:1rem;line-height:1.6;margin-bottom:2.5rem;max-width:500px}.contact-form{display:flex;flex-direction:column;gap:1.2rem;margin:0 auto;max-width:500px;width:100%}.contact-form input,.contact-form textarea{border:1px solid #ccc;border-radius:8px;box-sizing:border-box;font-family:inherit;font-size:1rem;padding:1rem;transition:border .3s,box-shadow .3s;width:100%}.contact-form input:focus,.contact-form textarea:focus{border-color:#fff;box-shadow:0 0 6px #00333233;outline:none}.contact-form textarea{min-height:120px;resize:vertical}.contact-form button{background:linear-gradient(135deg,#fff,#012d16);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;padding:1rem;transition:background .3s,transform .2s;width:100%}.contact-form button:hover{background:#012d16;transform:translateY(-2px)}.booking-page{background-color:teal;border-radius:12px;box-shadow:0 2px 10px #0000001a;color:#fff;margin:auto;padding:4rem 2rem}.booking-page h2{color:#fff;margin-bottom:2rem;text-align:center}.booking-form{display:flex;flex-direction:column;gap:1rem}.booking-form button,.booking-form input{border:1px solid #ccc;border-radius:6px;font-size:1rem;padding:.8rem}.booking-form button{background-color:green;border:none;color:var(--text-light);cursor:pointer;font-weight:600;overflow:hidden;position:relative;transition:.3s}.booking-form button:hover:not(:disabled){background-color:#012d16;box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.booking-form button:disabled{background-color:#666;cursor:not-allowed;opacity:.7}.success-message{background-color:#4caf50e6}.error-message,.success-message{animation:slideIn .3s ease-out;border-radius:6px;color:#fff;font-weight:600}.error-message{background-color:#f44336e6}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.booking-form label{color:#fff;font-weight:600;margin-bottom:.5rem}.selected-rooms{background-color:#ffffff1a;border-radius:8px;margin-bottom:2rem;padding:1.5rem}.selected-rooms h4{color:#fff;margin-bottom:1rem}.selected-rooms ul{list-style:none;padding:0}.selected-rooms li{align-items:center;background-color:#ffffff1a;border-radius:4px;display:flex;justify-content:space-between;margin-bottom:.5rem;padding:.5rem}.remove-room-btn{background-color:#f44;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:.3rem .6rem}.remove-room-btn:hover{background-color:#c00}.restaurant-page{background-color:#fffef8;color:var(--text-dark);font-family:sans-serif;padding:4rem 2rem}.restaurant-hero .hero-text,.restaurant-hero .hero-text h1,.restaurant-hero .hero-text p{color:#fff!important}.restaurant-hero{height:70vh;overflow:hidden;position:relative}.hero-image{height:100%;object-fit:cover;transition:opacity .8s ease-in-out;width:100%}.fade-in{opacity:1}.fade-out{opacity:0}.hero-text{background:#0006;border-radius:8px;bottom:15%;color:#fff!important;left:50%;padding:15px 25px;position:absolute;text-align:center;transform:translateX(-50%)}.hero-text h1{color:#fff!important;font-size:2.5rem;font-weight:700;margin:0 0 10px}.hero-text p{color:#fff!important;font-size:1.2rem;margin:0;opacity:.9}.slide-arrow{background:#0006;border:none;color:#fff;cursor:pointer;font-size:2rem;padding:10px;position:absolute;top:50%;transform:translateY(-50%);z-index:10}.slide-arrow.left{left:10px}.slide-arrow.right{right:10px}.hero-overlay{align-items:center;background:#0006;bottom:0;color:#fff;display:flex;flex-direction:column;justify-content:center;left:0;position:absolute;right:0;text-align:center;top:0}.hero-overlay h1{color:#fff;font-size:3rem;margin-bottom:.5rem}.hero-overlay p{color:#fff;font-size:1.5rem}.restaurant-page h2{color:teal;font-size:2.5rem;margin-bottom:1rem;text-align:center}.restaurant-page p{margin-bottom:2.5rem;text-align:center}.cuisine-section{background-color:teal;border-left:5px solid #fff;margin-bottom:3rem;padding:1rem 2rem}.cuisine-section h3{color:#fff;font-size:1.5rem;margin-bottom:1.5rem}.food-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.food-card{background-color:#fff;border:1px solid #ddd;border-radius:12px;box-shadow:0 2px 5px #0000000d;padding:1rem;text-align:center}.food-card img{border-radius:8px;height:120px;margin-bottom:.5rem;object-fit:cover;width:100%}.food-card h4{font-size:1rem;margin:.3rem 0}.food-card p{color:#444;font-size:.9rem;margin-bottom:.3rem}.available{color:green;font-size:.8rem}.unavailable{color:red;font-size:.8rem}.community-center-page{background-color:teal;color:#fff;font-family:Arial,sans-serif;margin:0 auto;max-width:1200px;padding:2rem;text-align:center}.community-center-page h1{color:#fff;font-size:2.5rem;margin-bottom:.5rem}.community-center-page p{color:#fff;font-size:1.15rem;line-height:1.6;margin:0 auto 2rem;max-width:800px}.community-photo-gallery{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin-top:2rem}.community-photo-card img{border-radius:8px;box-shadow:0 3px 6px #0000004d;height:160px;object-fit:cover;transition:transform .3s ease;width:100%}.community-photo-card img:hover{cursor:pointer;transform:scale(1.05)}.community-booking-section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:12px;margin-top:3rem;padding:2rem}.community-booking-section h2{color:#fff;font-size:2rem;margin-bottom:.5rem}.community-booking-section p{color:#e0e0e0;font-size:1.1rem;margin-bottom:2rem}.community-booking-form{display:flex;flex-direction:column;gap:1.2rem;margin:0 auto;max-width:600px}.form-group{width:100%}.community-booking-form input,.community-booking-form select{background:#ffffff1a;border:2px solid #ffffff4d;border-radius:8px;box-sizing:border-box;color:#fff;font-family:inherit;font-size:1rem;padding:1rem;transition:all .3s ease;width:100%}.community-booking-form input::placeholder{color:#ffffffb3}.community-booking-form input:focus,.community-booking-form select:focus{background:#fff3;border-color:#fff;box-shadow:0 0 10px #ffffff4d;outline:none}.community-booking-form select option{background:#333;color:#fff}.book-community-center-btn{background:linear-gradient(135deg,#ff6b6b,#ee5a24);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:700;margin-top:1rem;padding:1rem 2rem;transition:all .3s ease}.book-community-center-btn:hover:not(:disabled){background:linear-gradient(135deg,#ee5a24,#d63031);box-shadow:0 4px 15px #ee5a2466;transform:translateY(-2px)}.book-community-center-btn:disabled{cursor:not-allowed;opacity:.7}.success-message{background:#2ecc7133;border:1px solid #2ecc714d;border-radius:8px;color:#2ecc71}.error-message,.success-message{margin-top:1rem;padding:1rem;text-align:center}.error-message{background:#e74c3c33;border:1px solid #e74c3c4d;border-radius:8px;color:#e74c3c}.date-picker-container{align-items:center;display:flex;position:relative}.date-input{background:#ffffff26!important;cursor:pointer;flex:1 1}.calendar-toggle-btn{background:#fff3;border:none;border-radius:0 8px 8px 0;color:#fff;cursor:pointer;font-size:1.2rem;padding:.8rem;transition:all .3s ease}.calendar-toggle-btn:hover{background:#ffffff4d}.calendar-popup{background:#fff;border-radius:12px;box-shadow:0 10px 30px #0000004d;left:0;margin-top:.5rem;padding:1rem;position:absolute;right:0;top:100%;z-index:1000}.calendar-actions{border-top:1px solid #eee;margin-top:1rem;padding-top:1rem;text-align:center}.close-calendar-btn{background:linear-gradient(135deg,#007bff,#0056b3);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:.5rem 1.5rem;transition:all .3s ease}.close-calendar-btn:hover{background:linear-gradient(135deg,#0056b3,#004085);transform:translateY(-1px)}.selected-dates-info{color:#2ecc71}.calendar-error,.selected-dates-info{font-weight:500;margin-top:.5rem;text-align:center}.calendar-error{color:#e74c3c}.simple-date-picker{padding:1rem}.date-picker-header{margin-bottom:1.5rem;text-align:center}.date-picker-header h4{color:#333;font-size:1.2rem;margin:0 0 .5rem}.date-picker-header p{color:#666;font-size:.9rem;margin:0}.date-grid{grid-gap:.5rem;display:grid;gap:.5rem;grid-template-columns:repeat(7,1fr);margin-bottom:1.5rem}.date-option{align-items:center;background:#fff;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;flex-direction:column;font-size:.9rem;justify-content:center;min-height:60px;padding:.8rem .5rem;transition:all .3s ease}.date-option:hover{background:#f8f9fa;border-color:#007bff;transform:translateY(-2px)}.date-option.selected{background:#007bff;border-color:#007bff;color:#fff}.date-option small{font-size:.7rem;margin-top:.2rem;opacity:.8}.date-option.selected small{opacity:1}.custom-calendar{font-family:inherit}.custom-calendar .react-datepicker__header{background:linear-gradient(135deg,#007bff,#0056b3);border:none;border-radius:8px 8px 0 0;color:#fff}.custom-calendar .react-datepicker__current-month{color:#fff;font-weight:600}.custom-calendar .react-datepicker__day-name{color:#fff;font-weight:500}.custom-calendar .react-datepicker__day{border-radius:50%;margin:2px;transition:all .2s ease}.custom-calendar .react-datepicker__day:hover{background:#e3f2fd;transform:scale(1.1)}.custom-calendar .react-datepicker__day--selected{background:#007bff!important;color:#fff!important}.custom-calendar .react-datepicker__day--in-range{background:#e3f2fd!important;color:#007bff!important}.custom-calendar .react-datepicker__day--keyboard-selected{background:#007bff!important;color:#fff!important}.custom-calendar .react-datepicker__navigation{color:#fff}.custom-calendar .react-datepicker__navigation:hover{background:#ffffff1a;border-radius:50%}@media (max-width:768px){.community-booking-section{padding:1.5rem}.community-booking-form{gap:1rem}.book-community-center-btn{font-size:1rem;padding:.8rem 1.5rem}.calendar-popup{left:50%;max-height:80vh;max-width:350px;overflow-y:auto;position:fixed;top:50%;transform:translate(-50%,-50%);width:90vw}}*{box-sizing:border-box;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}body{background-color:#fefefe;color:#333;margin:0;padding:100px 0 0}.admin-login{background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 2px 8px #0000001a;margin:4rem auto;max-width:400px;padding:2rem;text-align:center}.admin-login h2{color:#2c3e50;margin-bottom:1.5rem}.admin-login input{border:1px solid #ccc;border-radius:4px;font-size:1rem;margin-bottom:1rem;padding:.6rem .8rem;transition:border-color .3s ease;width:100%}.admin-login input:focus{border-color:#4a90e2;outline:none}.admin-login button{background-color:#4a90e2;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:.7rem;transition:background-color .3s ease;width:100%}.admin-login button:hover{background-color:#357abd}.admin-panel{box-shadow:0 3px 12px #0000001a;margin:2rem auto 5rem;max-width:1100px;padding:1rem 1.5rem;z-index:1}.admin-panel,.admin-panel>div:first-child{background:#fff;border-radius:8px;position:relative}.admin-panel>div:first-child{box-shadow:0 2px 8px #0000001a;margin-bottom:2rem;padding:1rem;z-index:10}.admin-panel h2{color:#2c3e50;margin-bottom:1rem}.logout-btn{background-color:#e74c3c;border:none;border-radius:5px;color:#fff;cursor:pointer;float:right;font-weight:600;padding:.5rem 1rem;transition:background-color .3s ease}.logout-btn:hover{background-color:#c0392b}.add-booking-form h3{color:#34495e;margin-top:0}.add-booking-form input,.add-booking-form select{border:1px solid #ccc;border-radius:5px;font-size:1rem;transition:border-color .3s ease}.add-booking-form input:focus,.add-booking-form select:focus{border-color:#4a90e2;outline:none}.add-booking-form button{background-color:#27ae60;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.6rem 1.2rem;transition:background-color .3s ease}.add-booking-form button:disabled{background-color:#95a5a6;cursor:not-allowed}.add-booking-form button:hover:not(:disabled){background-color:#1e8449}.filter-select{border:1px solid #ccc;border-radius:5px;font-size:1rem;margin-bottom:1rem;padding:.4rem .6rem;transition:border-color .3s ease}.filter-select:focus{border-color:#4a90e2;outline:none}.room-card{background-color:#fafafa;border:1px solid #ddd;border-radius:8px;box-shadow:0 1px 5px #0000000d;margin-bottom:1.8rem;padding:1rem 1.5rem}.room-card h4{color:#2c3e50;margin-top:0}.room-card p{color:#555;margin:.25rem 0}.room-card h5{border-bottom:1px solid #ddd;color:#34495e;margin-top:1rem;padding-bottom:.3rem}.booking-item{align-items:center;border-bottom:1px solid #e1e1e1;color:#333;display:flex;flex-wrap:wrap;font-size:.95rem;gap:.75rem;padding:.6rem .5rem}.booking-item:last-child{border-bottom:none}.booking-item p{flex:1 1 100%;margin:0}.booking-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.3rem}.booking-actions button{background-color:#3498db;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:.35rem .75rem;transition:background-color .3s ease}.booking-actions button:hover:not(:disabled){background-color:#2980b9}.booking-actions button:disabled{background-color:#95a5a6;cursor:not-allowed}.booking-item input,.booking-item select{border:1px solid #ccc;border-radius:4px;flex:1 1 120px;font-size:.9rem;padding:.35rem .5rem;transition:border-color .3s ease}.booking-item input:focus,.booking-item select:focus{border-color:#4a90e2;outline:none}.edit-buttons{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.3rem}.edit-buttons button{background-color:#27ae60;border:none;border-radius:5px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.35rem .9rem;transition:background-color .3s ease}.edit-buttons button:hover:not(:disabled){background-color:#1e8449}.edit-buttons button:disabled{background-color:#95a5a6;cursor:not-allowed}.edit-buttons button:last-child{background-color:#e74c3c}.edit-buttons button:last-child:hover:not(:disabled){background-color:#c0392b}@media (max-width:768px){.add-booking-form>div,.booking-item{flex-direction:column}.booking-item input,.booking-item select{flex:1 1 100%;margin-bottom:.5rem}.booking-actions,.edit-buttons{justify-content:flex-start}}
/*# sourceMappingURL=main.4f050a65.css.map*/