.loader{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--color-black);z-index:10000;display:flex;align-items:center;justify-content:center;flex-direction:column;transition:opacity 0.8s var(--ease-smooth),visibility 0.8s}.loader.hidden{opacity:0;visibility:hidden}.loader-logo{margin-bottom:2rem;opacity:0;animation:fadeUp 1s var(--ease-smooth) 0.2s forwards}.loader-logo img{height:60px;width:auto}.loader-bar{width:200px;height:1px;background:rgb(255 255 255 / .2);position:relative;overflow:hidden}.loader-bar::after{content:'';position:absolute;left:0;top:0;height:100%;width:0;background:var(--color-gold);animation:loadBar 0.6s var(--ease-smooth) forwards}@keyframes loadBar{to{width:100%}}.hero{min-height:100vh;background:var(--color-black);display:flex;align-items:center;justify-content:center;position:relative;overflow:visible;z-index:2}.hero-bg{position:absolute;top:0;left:0;width:100%;height:100%;background:url(/media/rooms/image00033.webp) center center / cover no-repeat}.hero-bg::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgb(10 10 10 / .9) 0%,rgb(10 10 10 / .8) 50%,rgb(16 7 23 / .9) 100%)}.hero-bg::after{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at 20% 80%,rgb(201 169 98 / .15) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgb(16 7 23 / .3) 0%,transparent 50%)}.hero-content{text-align:center;z-index:2;padding:2rem;max-width:900px;display:flex;flex-direction:column;align-items:center}.hero-tagline{font-family:var(--font-body);font-size:.7rem;font-weight:400;color:var(--color-gold);letter-spacing:.4em;text-transform:uppercase;margin-bottom:2rem;opacity:0;animation:fadeUp 1s var(--ease-smooth) 2.2s forwards}.hero-title{font-family:var(--font-display);font-size:clamp(3rem, 10vw, 8rem);font-weight:300;color:var(--color-white);line-height:1;letter-spacing:-.02em;margin-bottom:1.5rem;text-shadow:0 2px 20px rgb(0 0 0 / .3)}.hero-title span{display:block;opacity:0;animation:fadeUp 1s var(--ease-smooth) forwards}.hero-title span:nth-child(1){animation-delay:2.4s}.hero-title span:nth-child(2){animation-delay:2.6s}.hero-title em{font-style:italic;color:var(--color-gold)}.hero-subtitle{font-family:var(--font-display);font-size:1.3rem;font-weight:300;font-style:italic;color:rgb(255 255 255 / .8);margin-bottom:3rem;opacity:0;animation:fadeUp 1s var(--ease-smooth) 2.8s forwards;text-shadow:0 1px 10px rgb(0 0 0 / .3)}.hero-cta{display:inline-flex;gap:1rem;opacity:0;animation:fadeUp 1s var(--ease-smooth) 3s forwards}.scroll-indicator{position:absolute;bottom:3rem;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;opacity:0;animation:fadeUp 1s var(--ease-smooth) 3.2s forwards}.scroll-indicator span{font-family:var(--font-body);font-size:.6rem;color:rgb(255 255 255 / .4);letter-spacing:.2em;text-transform:uppercase}.scroll-line{width:1px;height:60px;background:linear-gradient(to bottom,var(--color-gold),transparent);animation:scrollPulse 2s ease-in-out infinite}@keyframes scrollPulse{0%,100%{opacity:1;transform:scaleY(1)}50%{opacity:.5;transform:scaleY(.8)}}.weather-widget{position:absolute;top:100px;right:3rem;z-index:3;text-align:right;opacity:0;animation:fadeUp 1s var(--ease-smooth) 3.4s forwards}.weather-label{font-family:var(--font-body);font-size:.6rem;font-weight:500;color:var(--color-gold);letter-spacing:.2em;text-transform:uppercase;margin-bottom:.8rem}.weather-content{display:flex;align-items:center;justify-content:flex-end;gap:1rem}.weather-temp{font-family:var(--font-display);font-size:2.5rem;font-weight:300;color:var(--color-white);line-height:1}.weather-temp span{font-size:1.2rem;opacity:.6;vertical-align:super}.weather-details{display:flex;flex-direction:column;align-items:flex-end;gap:.2rem}.weather-condition{font-family:var(--font-body);font-size:.75rem;font-weight:400;color:rgb(255 255 255 / .8)}.weather-wind{font-family:var(--font-body);font-size:.65rem;font-weight:300;color:rgb(255 255 255 / .5)}.weather-icon{width:40px;height:40px;opacity:.9}.weather-icon svg{width:100%;height:100%;stroke:var(--color-gold);fill:none;stroke-width:1.5}@media (max-width:1024px){.weather-widget{top:90px;right:2rem}.weather-temp{font-size:2rem}}@media (max-width:768px){.weather-widget{display:none}}.booking-widget-wrapper{width:100%;max-width:860px;margin-top:2.5rem;opacity:0;animation:fadeUp 1s var(--ease-smooth) 3s forwards;position:relative;z-index:10}@media (max-width:768px){.hero-cta{flex-direction:column;gap:.8rem}}.about{background:var(--color-cream);position:relative;z-index:1}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;max-width:1400px;margin:0 auto;align-items:center}.about-images{position:relative;height:600px}.about-img{position:absolute;overflow:hidden}.about-img img{width:100%;height:100%;object-fit:cover;transition:transform 0.8s var(--ease-smooth)}.about-img:hover img{transform:scale(1.05)}.about-img-1{width:70%;height:70%;top:0;left:0}.about-img-2{width:50%;height:45%;bottom:0;right:0;border:8px solid var(--color-cream)}.about-content{padding-left:2rem}.about-content .section-label{text-align:left}.about-content .section-title{text-align:left;margin-bottom:2rem}.about-text{font-family:var(--font-body);font-size:1rem;font-weight:300;color:var(--color-gray);line-height:2;margin-bottom:2rem}.about-features{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:3rem}.feature-item{display:flex;align-items:flex-start;gap:1rem}.feature-icon{width:40px;height:40px;background:var(--color-black);display:flex;align-items:center;justify-content:center;flex-shrink:0}.feature-icon svg{width:20px;height:20px;stroke:var(--color-gold)}.feature-text h4{font-family:var(--font-body);font-size:.85rem;font-weight:500;color:var(--color-black);margin-bottom:.3rem}.feature-text p{font-family:var(--font-body);font-size:.8rem;font-weight:300;color:var(--color-gray)}.wellness{background:var(--color-black);position:relative;overflow:hidden}.wellness::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(ellipse at 0% 50%,rgb(201 169 98 / .05) 0%,transparent 50%),radial-gradient(ellipse at 100% 50%,rgb(16 7 23 / .2) 0%,transparent 50%)}.wellness .section-header{position:relative;z-index:1}.wellness .section-title{color:var(--color-white)}.wellness .section-desc{color:rgb(255 255 255 / .6)}.wellness-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;max-width:1400px;margin:0 auto;position:relative;z-index:1}.wellness-card{background:rgb(255 255 255 / .02);border:1px solid rgb(255 255 255 / .08);padding:2.5rem 2rem;text-align:center;transition:all 0.5s var(--ease-smooth);position:relative;overflow:hidden}.wellness-card::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgb(201 169 98 / .1) 0%,transparent 100%);opacity:0;transition:opacity 0.5s var(--ease-smooth)}.wellness-card:hover{border-color:var(--color-gold);transform:translateY(-10px)}.wellness-card:hover::before{opacity:1}.wellness-icon{width:70px;height:70px;margin:0 auto 1.5rem;display:flex;align-items:center;justify-content:center;position:relative}.wellness-icon svg{width:40px;height:40px;stroke:var(--color-gold);position:relative;z-index:1}.wellness-icon::after{content:'';position:absolute;width:100%;height:100%;border:1px solid rgb(201 169 98 / .3);border-radius:50%;animation:iconPulse 3s ease-in-out infinite}@keyframes iconPulse{0%,100%{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.5}}.wellness-card h3{font-family:var(--font-display);font-size:1.5rem;font-weight:400;color:var(--color-white);margin-bottom:1rem}.wellness-card p{font-family:var(--font-body);font-size:.85rem;font-weight:300;color:rgb(255 255 255 / .5);line-height:1.7}.wellness-card-wrap{background:rgb(255 255 255 / .02);border:1px solid rgb(255 255 255 / .08);padding:2.5rem 2rem;text-align:center;transition:all 0.5s var(--ease-smooth);position:relative;overflow:hidden}.wellness-card-wrap::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgb(201 169 98 / .1) 0%,transparent 100%);opacity:0;transition:opacity 0.5s var(--ease-smooth)}.wellness-card-wrap:hover{border-color:var(--color-gold);transform:translateY(-10px)}.wellness-card-wrap:hover::before{opacity:1}.wellness-card-wrap>.wellness-card{background:#fff0;border:0;padding:0;overflow:visible}.wellness-card-wrap>.wellness-card::before{display:none}.wellness-card-wrap>.wellness-card:hover{transform:none}.rooms{background:var(--color-cream)}.rooms-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;max-width:1400px;margin:0 auto}.room-card{background:var(--color-white);overflow:hidden;position:relative;group:room}.room-image{position:relative;height:300px;overflow:hidden}.room-image img{width:100%;height:100%;object-fit:cover;transition:transform 0.8s var(--ease-smooth)}.room-card:hover .room-image img{transform:scale(1.1)}.room-badge{position:absolute;top:1.5rem;left:1.5rem;font-family:var(--font-body);font-size:.6rem;font-weight:500;color:var(--color-white);background:var(--color-black);padding:.5rem 1rem;letter-spacing:.1em;text-transform:uppercase}.room-content{padding:2rem}.room-name{font-family:var(--font-display);font-size:1.5rem;font-weight:400;color:var(--color-black);margin-bottom:.5rem}.room-capacity{font-family:var(--font-body);font-size:.75rem;font-weight:400;color:var(--color-gold);letter-spacing:.1em;text-transform:uppercase;margin-bottom:1rem}.room-features{display:flex;gap:1.5rem;margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--color-light-gray)}.room-features span{font-family:var(--font-body);font-size:.75rem;font-weight:300;color:var(--color-gray);display:flex;align-items:center;gap:.5rem}.room-features svg{width:14px;height:14px;stroke:var(--color-gold)}.room-link{font-family:var(--font-body);font-size:.7rem;font-weight:500;color:var(--color-black);text-decoration:none;letter-spacing:.1em;text-transform:uppercase;display:inline-flex;align-items:center;gap:.5rem;transition:all 0.3s var(--ease-smooth)}.room-link svg{width:16px;height:16px;transition:transform 0.3s var(--ease-smooth)}.room-link:hover{color:var(--color-gold)}.room-link:hover svg{transform:translateX(5px)}.location{background:var(--color-white);position:relative}.location-wrapper{display:grid;grid-template-columns:1fr 1fr;max-width:1400px;margin:0 auto;gap:0}.location-content{padding:4rem;display:flex;flex-direction:column;justify-content:center}.location-map{background:var(--color-light-gray);min-height:500px;position:relative;overflow:hidden}.location-map iframe{width:100%;height:100%;border:none;filter:grayscale(100%) contrast(1.1);transition:filter 0.5s var(--ease-smooth)}.location-map:hover iframe{filter:grayscale(0%) contrast(1)}.location-details{margin-top:3rem}.location-item{display:flex;align-items:flex-start;gap:1.5rem;margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--color-light-gray)}.location-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.location-icon{width:50px;height:50px;background:var(--color-black);display:flex;align-items:center;justify-content:center;flex-shrink:0}.location-icon svg{width:24px;height:24px;stroke:var(--color-gold)}.location-text h4{font-family:var(--font-body);font-size:.7rem;font-weight:500;color:var(--color-gold);letter-spacing:.15em;text-transform:uppercase;margin-bottom:.5rem}.location-text p{font-family:var(--font-body);font-size:1rem;font-weight:300;color:var(--color-black)}.location-text a{color:var(--color-black);text-decoration:none;transition:color 0.3s var(--ease-smooth)}.location-text a:hover{color:var(--color-gold)}.testimonials{background:var(--color-cream);position:relative;overflow:hidden}.testimonials::before{content:'"';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:var(--font-display);font-size:40rem;color:var(--color-light-gray);line-height:1;pointer-events:none;opacity:.5}.testimonials-slider{max-width:900px;margin:0 auto;text-align:center;position:relative;z-index:1}.testimonial{display:none}.testimonial.active{display:block;animation:fadeIn 0.6s var(--ease-smooth)}@keyframes fadeIn{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.testimonial-text{font-family:var(--font-display);font-size:2rem;font-weight:300;font-style:italic;color:var(--color-black);line-height:1.6;margin-bottom:2rem}.testimonial-author{font-family:var(--font-body);font-size:.8rem;font-weight:500;color:var(--color-gold);letter-spacing:.15em;text-transform:uppercase}.testimonial-rating{display:flex;justify-content:center;gap:.3rem;margin-top:1rem}.testimonial-rating svg{width:16px;height:16px;fill:var(--color-gold)}.testimonials-nav{display:flex;justify-content:center;gap:1rem;margin-top:3rem}.testimonials-nav button{width:50px;height:50px;background:var(--color-white);border:1px solid var(--color-light-gray);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all 0.3s var(--ease-smooth)}.testimonials-nav button:hover{background:var(--color-black);border-color:var(--color-black)}.testimonials-nav button:hover svg{stroke:var(--color-white)}.testimonials-nav svg{width:20px;height:20px;stroke:var(--color-black);transition:stroke 0.3s var(--ease-smooth)}.cta{background:var(--color-black);text-align:center;position:relative;overflow:hidden}.cta::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgb(201 169 98 / .08) 0%,transparent 50%),linear-gradient(315deg,rgb(16 7 23 / .3) 0%,transparent 50%)}.cta-content{position:relative;z-index:1;max-width:700px;margin:0 auto}.cta .section-title{color:var(--color-white)}.cta .section-desc{color:rgb(255 255 255 / .6);margin-bottom:3rem}.loader-complete .hero-tagline,.loader-complete .hero-title span,.loader-complete .hero-subtitle,.loader-complete .hero-cta,.loader-complete .booking-widget-wrapper,.loader-complete .scroll-indicator,.loader-complete .weather-widget{opacity:1;animation:none}@media (max-width:1024px){.wellness-grid{grid-template-columns:repeat(2,1fr)}.rooms-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.about-grid{grid-template-columns:1fr;gap:3rem}.about-images{height:400px}.about-content{padding-left:0}.about-features{grid-template-columns:1fr}.wellness-grid{grid-template-columns:1fr}.rooms-grid{grid-template-columns:1fr}.location-wrapper{grid-template-columns:1fr}.location-content{padding:2rem}.testimonial-text{font-size:1.4rem}}