@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;500;600;700&family=Inter:wght@300;400;500;600;700&display=swap";@charset "UTF-8";:root{--navy-900: #0f1e2e;--navy-800: #162a3d;--navy-700: #1d3a52;--navy-600: #2a4d6b;--navy-500: #3a6280;--gold-600: #b8860b;--gold-500: #c89b2e;--gold-400: #d4af37;--gold-300: #e0c050;--gold-100: #f5e9c8;--cream: #faf8f5;--warm-50: #fdfcfa;--warm-100: #f7f4f0;--warm-200: #ede8e1;--warm-300: #ddd5ca;--warm-400: #c4b8a8;--ink-900: #1a1a1a;--ink-700: #3a3a3a;--ink-500: #6b6b6b;--ink-400: #8a8a8a;--success: #4a8a5e;--error: #c0392b;--warning: #d4a017;--shadow-sm: 0 2px 8px rgba(15, 30, 46, .06);--shadow-md: 0 6px 24px rgba(15, 30, 46, .08);--shadow-lg: 0 16px 48px rgba(15, 30, 46, .1);--shadow-xl: 0 24px 64px rgba(15, 30, 46, .14);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--transition: .35s cubic-bezier(.4, 0, .2, 1);--font-display: "Playfair Display", Georgia, serif;--font-body: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;font-size:16px}html,body{width:100%;max-width:100%;overflow-x:hidden}body{font-family:var(--font-body);line-height:1.7;color:var(--ink-700);background-color:var(--warm-50);font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-top:80px}img{max-width:100%;height:auto}*,*:before,*:after{box-sizing:border-box}section{width:100%;max-width:100%;overflow-x:hidden}h1,h2,h3,h4,h5,h6{margin-bottom:1.5rem;font-family:var(--font-display);font-weight:600;color:var(--ink-900);letter-spacing:-.01em;line-height:1.2}h1{font-size:3.5rem;font-weight:700}h2{font-size:2.8rem;font-weight:600;text-align:center}h3{font-size:1.8rem;font-weight:600}h4{font-size:1.4rem;font-weight:500}p{margin-bottom:1.5rem;color:var(--ink-500);font-size:1.1rem;line-height:1.7}.section-title{text-align:center!important;margin-left:auto;margin-right:auto}.hero-title{text-align:center!important;margin-left:auto!important;margin-right:auto!important}.hero-subtitle,.hero-content{text-align:center!important}.hero .hero-content .hero-title,.hero .hero-content h1,.about-hero .hero-content .hero-title,.about-hero .hero-content h1,.rooms-hero .hero-content .hero-title,.rooms-hero .hero-content h1,.services-hero .hero-content .hero-title,.services-hero .hero-content h1,.gallery-hero .hero-content .hero-title,.gallery-hero .hero-content h1,.reviews-hero .hero-content .hero-title,.reviews-hero .hero-content h1,.contact-hero .hero-content .hero-title,.contact-hero .hero-content h1,.hero .hero-content .hero-subtitle,.hero .hero-content p,.about-hero .hero-content .hero-subtitle,.about-hero .hero-content p,.rooms-hero .hero-content .hero-subtitle,.rooms-hero .hero-content p,.services-hero .hero-content .hero-subtitle,.services-hero .hero-content p,.gallery-hero .hero-content .hero-subtitle,.gallery-hero .hero-content p,.reviews-hero .hero-content .hero-subtitle,.reviews-hero .hero-content p,.contact-hero .hero-content .hero-subtitle,.contact-hero .hero-content p{text-align:center!important;margin-left:auto!important;margin-right:auto!important;display:block!important}.container{max-width:1200px;margin:0 auto;padding:0 20px;width:100%}@media (max-width: 1200px){.container{max-width:100%;padding:0 15px}}.btn{display:inline-flex;align-items:center;justify-content:center;padding:16px 32px;text-decoration:none;border-radius:var(--radius-sm);font-weight:600;text-align:center;transition:all var(--transition);border:none;cursor:pointer;font-size:1rem;font-family:var(--font-body);letter-spacing:.02em;position:relative;overflow:hidden}.btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),transparent);transition:left .5s}.btn:hover:before{left:100%}.btn-primary{background:var(--navy-800);color:#fff;box-shadow:var(--shadow-md)}.btn-primary:hover{transform:translateY(-2px);background:var(--navy-700);box-shadow:var(--shadow-lg)}.btn-secondary{background:var(--gold-500);color:#fff;box-shadow:0 4px 15px #c89b2e4d}.btn-secondary:hover{transform:translateY(-2px);background:var(--gold-600);box-shadow:0 8px 25px #c89b2e66}.btn-outline{background:transparent;color:var(--navy-800);border:2px solid var(--warm-300)}.btn-outline:hover{background:var(--navy-800);color:#fff;border-color:var(--navy-800);transform:translateY(-2px);box-shadow:var(--shadow-md)}.header{background:rgba(253,252,250,.92);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:var(--shadow-sm);position:fixed;top:0;left:0;right:0;width:100%;z-index:1000;border-bottom:1px solid rgba(221,213,202,.4);transition:all var(--transition)}.header.scrolled{background:rgba(253,252,250,.98);box-shadow:var(--shadow-md);backdrop-filter:blur(25px);-webkit-backdrop-filter:blur(25px)}.navbar{padding:1.5rem 0}.nav-container{max-width:1400px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center;flex-wrap:nowrap;width:100%}.nav-logo h2{color:var(--navy-800);margin:0;font-size:2.2rem;font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;line-height:1.1;white-space:nowrap;flex-shrink:0}.nav-logo-link{text-decoration:none}.nav-menu{display:flex;list-style:none;align-items:center;flex-wrap:nowrap;white-space:nowrap}.nav-link{color:var(--ink-700);text-decoration:none;font-weight:500;font-family:var(--font-body);transition:color var(--transition);padding:.75rem 1.5rem;border-radius:var(--radius-sm);position:relative;white-space:nowrap;flex-shrink:0;margin-right:5px}.nav-link:after{content:"";position:absolute;bottom:0;left:50%;width:0;height:2px;background:var(--gold-500);transition:width var(--transition);transform:translate(-50%)}.nav-link:hover,.nav-link.active{color:var(--navy-800)}.nav-link:hover:after,.nav-link.active:after{width:60%}.nav-link.book-now{background:var(--navy-800);color:#fff;border-radius:var(--radius-sm);padding:12px 20px;box-shadow:var(--shadow-sm);font-weight:600;font-size:.95rem;white-space:nowrap;min-width:120px;text-align:center;flex-shrink:0}.nav-link.book-now:hover{transform:translateY(-2px);background:var(--navy-700);box-shadow:var(--shadow-md)}.nav-link.book-now:after{display:none}.nav-toggle{display:none;flex-direction:column;cursor:pointer;padding:.5rem;border-radius:var(--radius-sm);transition:background var(--transition)}.nav-toggle:hover{background-color:#c89b2e1a}.bar{width:28px;height:3px;background:var(--navy-800);margin:3px 0;transition:all var(--transition);border-radius:2px}.hero,.about-hero,.rooms-hero,.services-hero,.gallery-hero,.reviews-hero,.contact-hero{color:#fff;padding:120px 0;text-align:center;position:relative;overflow:hidden;background-size:cover;background-position:center;background-repeat:no-repeat}.hero:before,.about-hero:before,.rooms-hero:before,.services-hero:before,.gallery-hero:before,.reviews-hero:before,.contact-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,30,46,.45) 0%,rgba(15,30,46,.65) 100%)}.hero-content{position:relative;z-index:2}.hero-content h1{font-size:4rem;margin-bottom:1.5rem;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.2);text-align:center!important;margin-left:auto!important;margin-right:auto!important}.hero-subtitle{font-size:1.4rem;margin-bottom:3rem;color:#ffffffeb;font-weight:300;max-width:600px;margin-left:auto;margin-right:auto;text-align:center!important}.hero-buttons{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap}section{padding:100px 0}.welcome-section{background:var(--warm-50);position:relative}.welcome-content{text-align:center;max-width:900px;margin:0 auto;position:relative;z-index:2}.welcome-content h2{color:var(--ink-900);margin-bottom:2.5rem;position:relative}.welcome-content h2:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:60px;height:3px;background:var(--gold-500);border-radius:2px}.welcome-content p{font-size:1.2rem;line-height:1.8;color:var(--ink-500)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:4rem;width:100%;max-width:100%;overflow:hidden}@media (max-width: 768px){.features-grid{grid-template-columns:1fr;gap:1.5rem}}.feature-card{background:white;padding:3rem 2rem;border-radius:var(--radius-lg);box-shadow:var(--shadow-md);text-align:center;transition:transform var(--transition),box-shadow var(--transition);border:1px solid var(--warm-200);position:relative;overflow:hidden;width:100%;max-width:100%;box-sizing:border-box}.feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gold-500)}.feature-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}.feature-icon{font-size:4rem;margin-bottom:1.5rem;display:block}.feature-card h3{color:var(--ink-900);margin-bottom:1.5rem;font-size:1.5rem}.feature-card p{color:var(--ink-500);line-height:1.7}.location-section{background-color:var(--warm-100)}.location-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.location-features{list-style:none;padding:0}.location-features li{position:relative;padding:.5rem 0 .5rem 1.5rem}.location-features li:before{content:"\2713";position:absolute;left:0;color:var(--success);font-weight:700}.map-container{border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-md)}.offers-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:2rem;margin-top:3rem;width:100%;max-width:100%;overflow:hidden}@media (max-width: 768px){.offers-grid{grid-template-columns:1fr;gap:1.5rem}}.offer-card{background:white;padding:2rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);text-align:center;border-top:3px solid var(--gold-500);width:100%;max-width:100%;box-sizing:border-box}.offer-card h3{color:var(--navy-800);margin-bottom:1rem}.about-content{max-width:1000px;margin:0 auto;text-align:center}.about-text p{font-size:1.1rem;line-height:1.8;margin-bottom:1.5rem}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;margin-top:3rem}@media (max-width: 1024px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media (max-width: 768px){.stats-grid{grid-template-columns:1fr;gap:1rem}}.stat-item{text-align:center;padding:2rem;background:white;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.stat-number{font-size:3rem;font-weight:700;color:var(--gold-500);margin-bottom:.5rem}.stat-label{color:var(--ink-500);font-weight:500}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem}@media (max-width: 1024px){.values-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media (max-width: 768px){.values-grid{grid-template-columns:1fr;gap:1.5rem}}.value-card{background:white;padding:2rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);text-align:center}.value-icon{font-size:3rem;margin-bottom:1rem}.location-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.location-list{list-style:none;padding:0}.location-list li{position:relative;padding:.5rem 0 .5rem 1.5rem}.location-list li:before{content:"\2713";position:absolute;left:0;color:var(--success);font-weight:700}.contact-details p{margin-bottom:1.5rem}.rooms-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem;margin-top:3rem;width:100%;max-width:100%;overflow:hidden}@media (max-width: 768px){.rooms-grid{grid-template-columns:1fr;gap:1.5rem}}.room-card{background:white;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform var(--transition),box-shadow var(--transition);width:100%;max-width:100%;box-sizing:border-box}.room-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg)}.room-image{height:200px;overflow:hidden;position:relative}.room-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.room-card:hover .room-image img{transform:scale(1.05)}.room-placeholder{color:#fff;font-size:1.2rem;font-weight:500;background:var(--navy-700);display:flex;align-items:center;justify-content:center;height:100%}.room-content{padding:2rem}.room-price{font-size:1.5rem;font-weight:700;color:var(--gold-600);margin-bottom:1rem}.room-amenities{list-style:none;padding:0;margin:1rem 0}.room-amenities li{position:relative;padding:.25rem 0 .25rem 1.5rem}.room-amenities li:before{content:"\2022";position:absolute;left:0;color:var(--gold-500);font-weight:700}.room-amenities-section{background-color:var(--warm-100)}.amenities-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:3rem;width:100%;max-width:100%;overflow:hidden}@media (max-width: 768px){.amenities-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1rem}}.amenity-item{background:white;padding:1.5rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);text-align:center;width:100%;max-width:100%;box-sizing:border-box;word-wrap:break-word;overflow-wrap:break-word;hyphens:auto}.amenity-icon{font-size:2.5rem;margin-bottom:1rem}.amenity-item h4{font-size:1.1rem;margin-bottom:.5rem;word-wrap:break-word;overflow-wrap:break-word}.amenity-item p{font-size:.9rem;line-height:1.4;word-wrap:break-word;overflow-wrap:break-word;hyphens:auto}.booking-info{background-color:var(--warm-100);text-align:center}.booking-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:2rem}.footer{background:var(--navy-900);color:#fff;padding:4rem 0 2rem;position:relative}.footer:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--gold-500),transparent)}.footer-container{max-width:1400px;margin:0 auto;padding:0 2rem}.footer-content{display:grid;grid-template-columns:repeat(4,1fr);gap:3rem;margin-bottom:3rem}.footer-section{margin-bottom:0}.footer-section h3,.footer-section h4{color:#fff;margin-bottom:1.5rem;font-size:1.3rem;font-family:var(--font-display);font-weight:600}.footer-section p{color:var(--warm-400);line-height:1.7;margin-bottom:.8rem;font-size:1rem}.footer-section ul{list-style:none;padding:0}.footer-section ul li{margin-bottom:.5rem}.footer-section ul li a{color:var(--warm-400);text-decoration:none;transition:color var(--transition);padding:.3rem 0;display:inline-block;position:relative}.footer-section ul li a:hover{color:var(--gold-400)}.social-links{display:flex;gap:1rem;margin-top:1.5rem}.social-link{color:var(--warm-400);text-decoration:none;padding:.8rem 1.2rem;border:1px solid rgba(196,184,168,.25);border-radius:var(--radius-md);transition:all var(--transition);background:rgba(255,255,255,.04);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.social-link:hover{color:#fff;background:var(--gold-500);border-color:transparent;transform:translateY(-2px);box-shadow:0 6px 20px #c89b2e40}.footer-bottom{border-top:1px solid rgba(196,184,168,.15);padding-top:2rem;text-align:center;color:var(--warm-400);font-size:.95rem}@media (hover: none) and (pointer: coarse){.btn{min-height:44px;min-width:44px;padding:12px 24px}.nav-link{min-height:44px;padding:12px 16px}.filter-btn{min-height:44px;padding:12px 20px}.gallery-item{cursor:default}.gallery-item:active,.room-card:active,.feature-card:active{transform:scale(.98)}}@media (max-width: 768px){.btn{min-height:48px;font-size:1rem;padding:14px 28px}.nav-link{min-height:48px;padding:14px 20px;font-size:1.1rem}.form-control{min-height:48px;font-size:16px;padding:14px 16px}.filter-btn{min-height:48px;padding:14px 24px;font-size:1rem}.lightbox-nav,.lightbox-close{min-width:48px;min-height:48px}}@media (max-width: 1400px){.nav-container,.footer-container{max-width:100%;padding:0 1.5rem}}@media (max-width: 1200px){.container{max-width:100%;padding:0 15px}.footer-container{padding:0 15px}.nav-container{padding:0 1.5rem}.nav-menu{gap:1.5rem}h1{font-size:3rem}h2{font-size:2.4rem}}@media (max-width: 1024px){.container{padding:0 12px}.nav-container{padding:0 1rem}.nav-menu{gap:1rem}.nav-link{padding:.6rem 1.2rem;font-size:.95rem}.nav-link.book-now{padding:10px 16px;font-size:.9rem;min-width:100px}h1{font-size:2.8rem}h2{font-size:2.2rem}h3{font-size:1.6rem}.footer-content{grid-template-columns:repeat(2,1fr);gap:2rem}.footer{padding:2.5rem 0 1rem}}@media (max-width: 900px){.container{padding:0 10px}.nav-container{padding:0 .8rem}.nav-menu{gap:1rem}.nav-link{padding:.5rem 1rem;font-size:.9rem}.nav-link.book-now{padding:8px 14px;font-size:.85rem;min-width:90px}.nav-logo h2{font-size:1.8rem}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.4rem}}@media (max-width: 768px){body{padding-top:70px}.container{padding:0 8px}.nav-container{padding:0 1rem;flex-wrap:nowrap}.nav-logo h2{font-size:1.6rem}.nav-menu{gap:.5rem;flex-wrap:nowrap;justify-content:flex-end}.nav-link{padding:.4rem .5rem;font-size:.8rem}.nav-link.book-now{padding:6px 12px;font-size:.75rem;min-width:80px}.nav-toggle{display:none}}@media (max-width: 640px){.nav-container{padding:0 .8rem}.nav-logo h2{font-size:1.4rem}.nav-menu{gap:.3rem;display:flex;flex-wrap:nowrap}.nav-link{padding:.3rem .4rem;font-size:.75rem}.nav-link.book-now{padding:5px 10px;font-size:.7rem;min-width:70px}.nav-toggle{display:none}}@media (max-width: 600px){.nav-container{padding:0 .5rem;flex-wrap:nowrap}.nav-logo h2{font-size:1.2rem}.nav-menu{position:fixed;left:-100%;top:70px;flex-direction:column;background:rgba(253,252,250,.98);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);width:100%;text-align:center;transition:left .4s cubic-bezier(.4,0,.2,1);box-shadow:var(--shadow-lg);padding:0;border-top:1px solid var(--warm-200);gap:0;z-index:999;height:auto;overflow-y:auto;flex-wrap:nowrap}.nav-toggle{display:flex}.nav-menu.active{left:0}.nav-link{color:var(--ink-700);padding:.75rem 1.5rem;margin:0;border-radius:0;font-size:1rem;border-bottom:1px solid var(--warm-200)}.nav-link:hover,.nav-link.active{background:var(--warm-100);color:var(--navy-800)}.nav-link.book-now{background:var(--navy-800);color:#fff;margin-top:1rem;padding:12px 24px;font-size:1rem;min-width:auto}}@media (max-width: 500px){.nav-logo h2{font-size:1rem}.nav-menu{top:60px;height:auto}}@media (max-width: 480px){body{padding-top:60px}.navbar{padding:1rem 0}.nav-menu{top:60px;padding:1.5rem 0;height:calc(100vh - 60px)}h1{font-size:2.2rem}h2{font-size:1.8rem}h3{font-size:1.3rem}p{font-size:1rem}.hero-content h1{font-size:2.5rem}.hero-subtitle{font-size:1.2rem}.hero-buttons{flex-direction:column;align-items:center}.location-content,.location-grid{grid-template-columns:1fr;gap:2rem}.features-grid,.rooms-grid,.amenities-grid{grid-template-columns:1fr}.booking-buttons{flex-direction:column;align-items:center}.footer-content{grid-template-columns:1fr;text-align:center;gap:2rem}.footer{padding:2rem 0 1rem}.footer-container{padding:0 20px}.social-links{justify-content:center;flex-wrap:wrap}.social-link{padding:.4rem .8rem;font-size:.9rem}section{padding:60px 0}.hero,.about-hero,.rooms-hero,.services-hero,.gallery-hero,.reviews-hero,.contact-hero{padding:60px 0}.btn{padding:10px 20px;font-size:.9rem}}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem}@media (max-width: 1024px){.services-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media (max-width: 768px){.services-grid{grid-template-columns:1fr;gap:1.5rem}}.service-card{background:white;padding:2rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);text-align:center;transition:transform var(--transition),box-shadow var(--transition)}.service-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md)}.service-icon{font-size:3rem;margin-bottom:1rem}.round-clock-section{background-color:var(--warm-100)}.clock-services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-top:3rem}@media (max-width: 768px){.clock-services-grid{grid-template-columns:1fr;gap:1.5rem}}.clock-service{background:white;padding:2rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);text-align:center}.clock-icon{font-size:3rem;margin-bottom:1rem}.events-section{background-color:var(--warm-100)}.events-content{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.event-types{list-style:none;padding:0;margin:1rem 0}.event-types li{position:relative;padding:.5rem 0 .5rem 1.5rem}.event-types li:before{content:"\2713";position:absolute;left:0;color:var(--success);font-weight:700}.amenity-list{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.attractions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem}@media (max-width: 1024px){.attractions-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media (max-width: 768px){.attractions-grid{grid-template-columns:1fr;gap:1.5rem}}.attraction-card{background:white;padding:2rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);text-align:center}.attraction-icon{font-size:3rem;margin-bottom:1rem}.travel-tips{background-color:var(--warm-100)}.tips-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-top:3rem}@media (max-width: 768px){.tips-grid{grid-template-columns:1fr;gap:1.5rem}}.tip-item{background:white;padding:2rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.gallery-filter-section{background-color:var(--warm-100);padding:2rem 0}.filter-buttons{display:flex;justify-content:center;flex-wrap:wrap;gap:1rem}.filter-btn{padding:.75rem 1.5rem;border:2px solid var(--warm-300);background:white;color:var(--ink-700);border-radius:25px;cursor:pointer;transition:all var(--transition);font-weight:500;font-size:.95rem}.filter-btn:hover{border-color:var(--gold-500);color:var(--gold-600);transform:translateY(-2px)}.filter-btn.active{background:var(--navy-800);color:#fff;border-color:transparent;box-shadow:var(--shadow-sm)}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:3rem}@media (max-width: 768px){.gallery-grid{grid-template-columns:1fr;gap:1.5rem}}.gallery-item{background:white;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform var(--transition),box-shadow var(--transition);cursor:pointer;position:relative}.gallery-item:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.gallery-image{position:relative;height:250px;overflow:hidden}.gallery-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.gallery-item:hover .gallery-image img{transform:scale(1.08)}.gallery-overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(15,30,46,.8),rgba(15,30,46,.5));display:flex;flex-direction:column;justify-content:space-between;align-items:center;padding:1.5rem;opacity:0;transition:opacity var(--transition)}.gallery-item:hover .gallery-overlay{opacity:1}.gallery-info{text-align:center;color:#fff}.gallery-info h3{font-size:1.2rem;margin-bottom:.5rem;font-weight:600;color:#fff}.gallery-info p{font-size:.9rem;text-transform:capitalize;opacity:.9;color:#fff}.gallery-icon{font-size:2rem;color:#fff}.gallery-note{text-align:center;margin-top:3rem;padding:2rem;background-color:var(--warm-100);border-radius:var(--radius-md)}.lightbox-overlay{position:fixed;inset:0;background:rgba(15,30,46,.92);display:flex;justify-content:center;align-items:center;z-index:10000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);animation:fadeIn .3s ease}.lightbox-container{position:relative;max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center}.lightbox-close{position:absolute;top:-50px;right:0;background:rgba(255,255,255,.15);border:none;color:#fff;font-size:2rem;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition);z-index:10001}.lightbox-close:hover{background:rgba(255,255,255,.25);transform:scale(1.1)}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.15);border:none;color:#fff;font-size:2rem;width:50px;height:50px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition);z-index:10001}.lightbox-nav:hover:not(:disabled){background:rgba(255,255,255,.25);transform:translateY(-50%) scale(1.1)}.lightbox-nav:disabled{opacity:.3;cursor:not-allowed}.lightbox-prev{left:-70px}.lightbox-next{right:-70px}.lightbox-content{text-align:center;color:#fff}.lightbox-image{max-width:100%;max-height:70vh;border-radius:var(--radius-md);box-shadow:var(--shadow-xl)}.lightbox-info{margin-top:1.5rem}.lightbox-info h3{font-size:1.5rem;margin-bottom:.5rem;font-weight:600;color:#fff}.lightbox-info p{font-size:1rem;text-transform:capitalize;opacity:.8;margin-bottom:.5rem;color:#fff}.lightbox-counter{font-size:.9rem;opacity:.7;color:#fff}@media (max-width: 768px){.lightbox-container{max-width:95vw;max-height:95vh}.lightbox-nav{width:40px;height:40px;font-size:1.5rem}.lightbox-prev{left:-50px}.lightbox-next{right:-50px}.lightbox-close{top:-40px;width:35px;height:35px;font-size:1.5rem}}.reviews-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-top:3rem}@media (max-width: 768px){.reviews-grid{grid-template-columns:1fr;gap:1.5rem}}.review-card{background:white;padding:2rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.review-rating{display:flex;align-items:center;gap:.5rem;margin-bottom:1rem}.stars{color:var(--gold-500);font-size:1.2rem}.rating-text{font-weight:700;color:var(--navy-800)}.review-text{font-style:italic;margin-bottom:1.5rem;line-height:1.6}.reviewer-info{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--warm-200);padding-top:1rem}.review-date{color:var(--ink-400);font-size:.9rem}.reviews-summary{text-align:center;margin:4rem 0;padding:3rem;background-color:var(--warm-100);border-radius:var(--radius-md)}.overall-rating{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1rem}.stars-large{color:var(--gold-500);font-size:2rem}.rating-number{font-size:3rem;font-weight:700;color:var(--navy-800)}.rating-label{color:var(--success);font-weight:500;font-size:1.2rem}.reviews-cta{text-align:center;margin:3rem 0}.cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:2rem}.feedback-section{background-color:var(--warm-100)}.feedback-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-top:3rem}@media (max-width: 1024px){.feedback-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}}@media (max-width: 768px){.feedback-grid{grid-template-columns:1fr;gap:1.5rem}}.feedback-item{background:white;padding:2rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);text-align:center}.feedback-icon{font-size:3rem;margin-bottom:1rem}.contact-info-section{background-color:var(--warm-100)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}.contact-item{display:flex;gap:1rem;margin-bottom:2rem}.contact-icon{font-size:2rem;color:var(--gold-500);flex-shrink:0}.contact-text h3{margin-bottom:.5rem;color:var(--navy-800)}.contact-form-container{background:white;padding:2rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.contact-form{margin-top:2rem}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--navy-800)}.form-control{width:100%;padding:12px;border:2px solid var(--warm-300);border-radius:var(--radius-sm);font-size:1rem;transition:border-color var(--transition),box-shadow var(--transition);background:white}.form-control:focus{outline:none;border-color:var(--gold-500);box-shadow:0 0 0 3px #c89b2e1a}.form-control.error{border-color:var(--error);box-shadow:0 0 0 3px #c0392b1a}.error-message{color:var(--error);font-size:.9rem;margin-top:.5rem;display:flex;align-items:center;gap:.5rem}.character-count{color:var(--ink-400);font-size:.8rem;text-align:right;margin-top:.25rem}.form-actions{display:flex;gap:1rem;margin-top:2rem}.loading-spinner{display:flex;align-items:center;gap:.5rem}.spinner{width:16px;height:16px;border:2px solid transparent;border-top:2px solid currentColor;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.submit-message{margin-top:1.5rem;padding:1rem 1.5rem;border-radius:var(--radius-sm);text-align:center;display:flex;align-items:center;gap:.75rem;font-weight:500}.submit-message.success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.submit-message.error{background-color:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.message-icon{font-size:1.2rem;font-weight:700}.map-section{background-color:var(--warm-100)}.map-actions{text-align:center;margin-top:2rem}.policies-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-top:3rem}@media (max-width: 768px){.policies-grid{grid-template-columns:1fr;gap:1.5rem}}.policy-card{background:white;padding:2rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);text-align:center}.policy-icon{font-size:3rem;margin-bottom:1rem}.faq-grid{display:grid;grid-template-columns:1fr;gap:2rem;margin-top:3rem}.faq-item{background:white;padding:2rem;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.faq-item h3{color:var(--navy-800);margin-bottom:1rem}@media (max-width: 768px){.events-content,.contact-grid{grid-template-columns:1fr;gap:2rem}.amenity-list{grid-template-columns:1fr}.cta-buttons{flex-direction:column;align-items:center}.faq-grid{grid-template-columns:1fr}}.hero .container,.about-hero .container,.rooms-hero .container,.services-hero .container,.gallery-hero .container,.reviews-hero .container,.contact-hero .container{text-align:center!important;display:flex!important;justify-content:center!important;align-items:center!important}.card,.feature-card,.offer-card,.value-card,.room-card,.service-card,.attraction-card,.review-card,.policy-card,.vision-card,.meeting-card,.category-card,.faq-item,.contact-item{width:100%!important;max-width:100%!important;box-sizing:border-box!important;word-wrap:break-word!important;overflow-wrap:break-word!important;hyphens:auto!important;min-width:0!important}.card h1,.card h2,.card h3,.card h4,.card h5,.card h6,.card p,.card span,.card div,.card a,.feature-card h1,.feature-card h2,.feature-card h3,.feature-card h4,.feature-card h5,.feature-card h6,.feature-card p,.feature-card span,.feature-card div,.feature-card a,.offer-card h1,.offer-card h2,.offer-card h3,.offer-card h4,.offer-card h5,.offer-card h6,.offer-card p,.offer-card span,.offer-card div,.offer-card a,.value-card h1,.value-card h2,.value-card h3,.value-card h4,.value-card h5,.value-card h6,.value-card p,.value-card span,.value-card div,.value-card a,.room-card h1,.room-card h2,.room-card h3,.room-card h4,.room-card h5,.room-card h6,.room-card p,.room-card span,.room-card div,.room-card a,.service-card h1,.service-card h2,.service-card h3,.service-card h4,.service-card h5,.service-card h6,.service-card p,.service-card span,.service-card div,.service-card a,.attraction-card h1,.attraction-card h2,.attraction-card h3,.attraction-card h4,.attraction-card h5,.attraction-card h6,.attraction-card p,.attraction-card span,.attraction-card div,.attraction-card a,.review-card h1,.review-card h2,.review-card h3,.review-card h4,.review-card h5,.review-card h6,.review-card p,.review-card span,.review-card div,.review-card a,.policy-card h1,.policy-card h2,.policy-card h3,.policy-card h4,.policy-card h5,.policy-card h6,.policy-card p,.policy-card span,.policy-card div,.policy-card a,.vision-card h1,.vision-card h2,.vision-card h3,.vision-card h4,.vision-card h5,.vision-card h6,.vision-card p,.vision-card span,.vision-card div,.vision-card a,.meeting-card h1,.meeting-card h2,.meeting-card h3,.meeting-card h4,.meeting-card h5,.meeting-card h6,.meeting-card p,.meeting-card span,.meeting-card div,.meeting-card a,.category-card h1,.category-card h2,.category-card h3,.category-card h4,.category-card h5,.category-card h6,.category-card p,.category-card span,.category-card div,.category-card a,.faq-item h1,.faq-item h2,.faq-item h3,.faq-item h4,.faq-item h5,.faq-item h6,.faq-item p,.faq-item span,.faq-item div,.faq-item a,.contact-item h1,.contact-item h2,.contact-item h3,.contact-item h4,.contact-item h5,.contact-item h6,.contact-item p,.contact-item span,.contact-item div,.contact-item a{word-wrap:break-word!important;overflow-wrap:break-word!important;hyphens:auto!important;max-width:100%!important}@media (max-width: 768px){.card,.feature-card,.offer-card,.value-card,.room-card,.service-card,.attraction-card,.review-card,.policy-card,.vision-card,.meeting-card,.category-card,.faq-item,.contact-item{padding:1rem!important;margin-bottom:1rem!important}}@media (max-width: 480px){.card,.feature-card,.offer-card,.value-card,.room-card,.service-card,.attraction-card,.review-card,.policy-card,.vision-card,.meeting-card,.category-card,.faq-item,.contact-item{padding:.75rem!important;margin-bottom:.75rem!important}}.features-grid,.offers-grid,.rooms-grid,.amenities-grid,.values-grid,.stats-grid,.services-grid,.attractions-grid,.reviews-grid,.policies-grid,.faq-grid,.gallery-grid{display:grid!important;width:100%!important;max-width:100%!important;overflow:hidden!important;box-sizing:border-box!important}@media (max-width: 1200px){.features-grid,.offers-grid,.rooms-grid,.amenities-grid,.values-grid,.stats-grid,.services-grid,.attractions-grid,.reviews-grid,.policies-grid,.faq-grid,.gallery-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))!important;gap:1.5rem!important}}@media (max-width: 768px){.features-grid,.offers-grid,.rooms-grid,.amenities-grid,.values-grid,.stats-grid,.services-grid,.attractions-grid,.reviews-grid,.policies-grid,.faq-grid,.gallery-grid{grid-template-columns:1fr!important;gap:1rem!important}}@media (max-width: 480px){.features-grid,.offers-grid,.rooms-grid,.amenities-grid,.values-grid,.stats-grid,.services-grid,.attractions-grid,.reviews-grid,.policies-grid,.faq-grid,.gallery-grid{gap:.75rem!important}}.hero .hero-content,.about-hero .hero-content,.rooms-hero .hero-content,.services-hero .hero-content,.gallery-hero .hero-content,.reviews-hero .hero-content,.contact-hero .hero-content{text-align:center!important;width:100%!important}.hero .hero-content *,.about-hero .hero-content *,.rooms-hero .hero-content *,.services-hero .hero-content *,.gallery-hero .hero-content *,.reviews-hero .hero-content *,.contact-hero .hero-content *{text-align:center!important}.page-transition{animation:fadeInUp .6s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn .8s ease-in}.slide-in-left{animation:slideInLeft .6s ease-out}.slide-in-right{animation:slideInRight .6s ease-out}.scale-in{animation:scaleIn .5s ease-out}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-on-scroll{opacity:0;transform:translateY(20px);transition:all .6s ease-out}.animate-on-scroll.animate-in{opacity:1;transform:translateY(0)}.animate-on-scroll:nth-child(1){transition-delay:.1s}.animate-on-scroll:nth-child(2){transition-delay:.2s}.animate-on-scroll:nth-child(3){transition-delay:.3s}.animate-on-scroll:nth-child(4){transition-delay:.4s}.animate-on-scroll:nth-child(5){transition-delay:.5s}.animate-on-scroll:nth-child(6){transition-delay:.6s}.lazy-loading{background:linear-gradient(90deg,var(--warm-200) 25%,var(--warm-300) 50%,var(--warm-200) 75%);background-size:200% 100%;animation:loading 1.5s infinite;filter:blur(2px)}.lazy-loaded{animation:fadeIn .5s ease-in;filter:none}.lazy-error{background:var(--warm-100);border:2px dashed var(--warm-300);display:flex;align-items:center;justify-content:center;color:var(--ink-400);font-size:.9rem}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}.skip-link{position:absolute;top:-40px;left:6px;background:var(--navy-900);color:#fff;padding:8px;text-decoration:none;z-index:10000;border-radius:var(--radius-sm);font-weight:600;transition:top .3s}.skip-link:focus{top:6px}@media (prefers-contrast: high){.btn{border:2px solid currentColor}.nav-link{border:1px solid transparent}.nav-link:hover,.nav-link.active{border-color:currentColor}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.page-transition,.fade-in,.slide-in-left,.slide-in-right,.scale-in{animation:none}}::selection{background:var(--gold-500);color:#fff}::-moz-selection{background:var(--gold-500);color:#fff}
