:root{--color-primary:#1a2634;--color-secondary:#c9a962;--color-accent:#8b7355;--color-dark:#0d1117;--color-light:#f8f6f3;--color-white:#ffffff;--color-gray:#6b7280;--color-gray-light:#e5e7eb;--font-heading:'Cormorant Garamond',Georgia,serif;--font-body:'Montserrat',-apple-system,sans-serif;--transition:all 0.4s cubic-bezier(0.4,0,0.2,1)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-body);font-weight:400;line-height:1.7;color:var(--color-primary);background-color:var(--color-light);overflow-x:hidden}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--color-light)}::-webkit-scrollbar-thumb{background:var(--color-secondary);border-radius:4px}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:500;line-height:1.2;color:var(--color-primary)}h1{font-size:clamp(2.5rem,6vw,4.5rem)}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:clamp(1.5rem,3vw,2rem)}h4{font-size:clamp(1.2rem,2vw,1.5rem)}p{font-size:1rem;color:var(--color-gray);margin-bottom:1rem}a{color:inherit;text-decoration:none;transition:var(--transition)}.container{max-width:1400px;margin:0 auto;padding:0 2rem}.section{padding:100px 0}.section-title{text-align:center;margin-bottom:60px}.section-title h2{position:relative;display:inline-block;padding-bottom:20px}.section-title h2::after{content:'';position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:60px;height:2px;background:linear-gradient(90deg,transparent,var(--color-secondary),transparent)}.section-title p{margin-top:20px;font-size:1.1rem;max-width:600px;margin-left:auto;margin-right:auto}.header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:20px 0;transition:var(--transition)}.header.scrolled{background:rgba(26,38,52,0.95);backdrop-filter:blur(20px);padding:15px 0;box-shadow:0 4px 30px rgba(0,0,0,0.1)}.header-inner{display:flex;justify-content:space-between;align-items:center}.logo{font-family:var(--font-heading);font-size:1.8rem;font-weight:600;color:var(--color-white);letter-spacing:2px;white-space:nowrap}.logo.logo-medium{font-size:1.5rem;letter-spacing:1.5px}.logo.logo-long{font-size:1.2rem;letter-spacing:1px;line-height:1.2}.logo span{color:var(--color-secondary)}.nav{display:flex;gap:40px}.nav a{color:var(--color-white);font-size:0.9rem;font-weight:500;letter-spacing:1px;text-transform:uppercase;position:relative;padding:5px 0}.nav a::after{content:'';position:absolute;bottom:0;left:0;width:0;height:1px;background:var(--color-secondary);transition:var(--transition)}.nav a:hover::after{width:100%}.header-contact{display:flex;align-items:center;gap:20px}.header-phone{color:var(--color-white);font-weight:600;font-size:1.1rem}.header-contact .btn-outline{color:var(--color-white);border-color:rgba(255,255,255,0.5);padding:10px 20px;font-size:0.8rem}.header-contact .btn-outline:hover{background:var(--color-white);color:var(--color-primary);border-color:var(--color-white)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 32px;font-family:var(--font-body);font-size:0.85rem;font-weight:600;letter-spacing:1px;text-transform:uppercase;border:none;border-radius:0;cursor:pointer;transition:var(--transition)}.btn-primary{background:var(--color-secondary);color:var(--color-primary)}.btn-primary:hover{background:var(--color-white);transform:translateY(-2px);box-shadow:0 10px 30px rgba(201,169,98,0.3)}.btn-outline{background:transparent;color:var(--color-white);border:1px solid var(--color-white)}.btn-outline:hover{background:var(--color-white);color:var(--color-primary)}.menu-toggle{display:none;flex-direction:column;gap:6px;cursor:pointer;z-index:1001;background:transparent;border:none;padding:10px;margin:-10px}.menu-toggle span{display:block;width:30px;height:2px;background:var(--color-white);transition:var(--transition)}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-dark) 0%,var(--color-primary) 100%);overflow:hidden}.hero::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(201,169,98,0.1) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(201,169,98,0.08) 0%,transparent 50%);pointer-events:none}.hero-bg{position:absolute;top:0;left:0;right:0;bottom:0;opacity:0.3}.hero-bg img{width:100%;height:100%;object-fit:cover}.hero-content{position:relative;z-index:2;text-align:center;padding:0 2rem;max-width:900px}.hero-rating{display:inline-flex;align-items:center;gap:8px;margin-bottom:30px;padding:10px 24px;background:rgba(201,169,98,0.2);border:1px solid rgba(201,169,98,0.4);border-radius:50px}.hero-rating svg{width:20px;height:20px;fill:var(--color-secondary)}.hero-rating span{color:var(--color-secondary);font-weight:500;font-size:0.9rem;letter-spacing:2px}.hero h1{color:var(--color-white);margin-bottom:20px;font-weight:400;letter-spacing:4px;animation:fadeInUp 1s ease forwards}.hero h1.hero-title-medium{font-size:2.8rem;letter-spacing:3px}.hero h1.hero-title-long{font-size:2.2rem;letter-spacing:2px;line-height:1.3}.hero-subtitle{color:rgba(255,255,255,0.7);font-size:1.2rem;font-weight:300;letter-spacing:3px;margin-bottom:50px;animation:fadeInUp 1s ease 0.2s forwards;opacity:0}.hero-buttons{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;animation:fadeInUp 1s ease 0.4s forwards;opacity:0}@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.scroll-indicator{position:absolute;bottom:60px;left:50%;transform:translateX(-50%);z-index:10;display:flex;flex-direction:column;align-items:center;gap:10px;color:rgba(255,255,255,0.5);font-size:0.75rem;letter-spacing:2px;text-transform:uppercase;animation:bounce 2s infinite}.scroll-indicator::after{content:'';width:1px;height:40px;background:linear-gradient(to bottom,var(--color-secondary),transparent)}@keyframes bounce{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(10px)}}.booking-section{position:relative;z-index:10;margin-top:-80px;padding:0 2rem;scroll-margin-top:180px}.booking-widget{background:transparent;border-radius:0;box-shadow:none;overflow:visible}.booking-widget iframe{width:100%;min-height:200px;border:none;display:block}.about-section{background:var(--color-white)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.about-images{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:20px}.about-image{overflow:hidden;border-radius:4px}.about-image:first-child{grid-column:1 / -1}.about-image img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.about-image:hover img{transform:scale(1.05)}.about-content h2{margin-bottom:30px}.about-content h2 span{color:var(--color-secondary);font-style:italic}.about-features{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:40px}.about-feature{display:flex;align-items:center;gap:15px}.about-feature-icon{width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-secondary),var(--color-accent));border-radius:50%;color:var(--color-white);flex-shrink:0}.about-feature-text{font-weight:500;color:var(--color-primary);font-size:0.95rem}.rooms-section{background:linear-gradient(180deg,var(--color-light) 0%,var(--color-white) 100%)}.rooms-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.room-card{background:var(--color-white);border-radius:4px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,0.05);transition:var(--transition)}.room-card:hover{transform:translateY(-10px);box-shadow:0 20px 40px rgba(0,0,0,0.1)}.room-image{position:relative;height:250px;overflow:hidden}.room-image img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.room-card:hover .room-image img{transform:scale(1.1)}.room-badge{position:absolute;top:20px;left:20px;padding:8px 16px;background:var(--color-secondary);color:var(--color-primary);font-size:0.75rem;font-weight:600;letter-spacing:1px;text-transform:uppercase}.room-content{padding:30px}.room-content h4{margin-bottom:15px}.room-content p{font-size:0.9rem;margin-bottom:20px}.room-features{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:25px}.room-feature{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;background:var(--color-light);font-size:0.8rem;color:var(--color-gray)}.room-feature svg{width:14px;height:14px;fill:var(--color-secondary)}.room-footer{display:flex;justify-content:space-between;align-items:center;padding-top:20px;border-top:1px solid var(--color-gray-light)}.room-price{font-family:var(--font-heading);font-size:1.5rem;color:var(--color-primary)}.room-price span{font-size:0.9rem;color:var(--color-gray);font-family:var(--font-body)}.services-section{background:var(--color-primary);color:var(--color-white);position:relative}.services-section::before{content:'';position:absolute;top:0;right:0;width:50%;height:100%;background:radial-gradient(circle at center,rgba(201,169,98,0.1),transparent 70%);pointer-events:none}.services-section .section-title h2{color:var(--color-white)}.services-section .section-title h2::after{background:linear-gradient(90deg,transparent,var(--color-secondary),transparent)}.services-section .section-title p{color:rgba(255,255,255,0.6)}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.service-card{text-align:center;padding:40px 25px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.1);border-radius:4px;transition:var(--transition)}.service-card:hover{background:rgba(255,255,255,0.08);border-color:var(--color-secondary);transform:translateY(-5px)}.service-icon{width:70px;height:70px;margin:0 auto 25px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-secondary),var(--color-accent));border-radius:50%;color:var(--color-white)}.service-icon svg{width:28px;height:28px}.service-card h4{color:var(--color-white);margin-bottom:12px;font-size:1.2rem}.service-card p{color:rgba(255,255,255,0.6);font-size:0.9rem;margin-bottom:0}.services-list{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;position:relative;z-index:1}.service-item{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.1);border-radius:8px;padding:20px}.service-item:hover{background:rgba(255,255,255,0.06);border-color:var(--color-secondary)}.service-item h4{color:#ffffff;font-size:0.95rem;font-weight:600;margin:0 0 12px 0;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,0.1)}.service-item ul{list-style:none;padding:0;margin:0}.service-item li{position:relative;padding-left:14px;padding-top:4px;padding-bottom:4px;color:rgba(255,255,255,0.75);font-size:0.82rem;line-height:1.5}.service-item li::before{content:'';position:absolute;left:0;top:12px;width:4px;height:4px;background:var(--color-secondary);border-radius:50%}@media (max-width:1200px){.services-list{grid-template-columns:repeat(3,1fr)}}@media (max-width:992px){.services-list{grid-template-columns:repeat(2,1fr);gap:16px}.service-item{padding:16px}}@media (max-width:576px){.services-list{grid-template-columns:1fr;gap:14px}.service-item{padding:14px}.service-item h4{font-size:0.9rem}}.info-section{background:var(--color-white)}.info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.info-card{padding:40px;background:var(--color-light);border-radius:4px;transition:var(--transition)}.info-card:hover{box-shadow:0 10px 40px rgba(0,0,0,0.08)}.info-card h4{display:flex;align-items:center;gap:15px;margin-bottom:25px;padding-bottom:20px;border-bottom:1px solid var(--color-gray-light)}.info-card h4 svg{width:28px;height:28px;fill:var(--color-secondary)}.info-list{list-style:none}.info-list li{display:flex;align-items:flex-start;gap:12px;padding:10px 0;font-size:0.95rem;color:var(--color-gray)}.info-list li::before{content:'';width:6px;height:6px;margin-top:8px;background:var(--color-secondary);border-radius:50%;flex-shrink:0}.map-section{position:relative;background:var(--color-light)}.map-container{display:grid;grid-template-columns:400px 1fr;min-height:500px}#map{width:100%;height:100%;min-height:500px}.map-info{background:var(--color-white);padding:50px;box-shadow:0 20px 60px rgba(0,0,0,0.15);z-index:10;display:flex;flex-direction:column;justify-content:center}.map-info h3{margin-bottom:30px}.contact-item{display:flex;align-items:flex-start;gap:15px;margin-bottom:25px}.contact-icon{width:45px;height:45px;display:flex;align-items:center;justify-content:center;background:var(--color-light);border-radius:50%;flex-shrink:0}.contact-icon svg{width:20px;height:20px;fill:var(--color-secondary)}.contact-text span{display:block;font-size:0.8rem;color:var(--color-gray);margin-bottom:5px;text-transform:uppercase;letter-spacing:1px}.contact-text a,.contact-text p{color:var(--color-primary);font-weight:500;margin:0}.contact-text a:hover{color:var(--color-secondary)}.gallery-section{padding:100px 0;background:var(--color-white)}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.gallery-item{position:relative;overflow:hidden;border-radius:4px;aspect-ratio:1}.gallery-item:first-child{grid-column:span 2;grid-row:span 2}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:var(--transition)}.gallery-item::after{content:'';position:absolute;inset:0;background:rgba(26,38,52,0);transition:var(--transition)}.gallery-item:hover img{transform:scale(1.1)}.gallery-item:hover::after{background:rgba(26,38,52,0.3)}.lightbox{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.95);z-index:3000;align-items:center;justify-content:center}.lightbox.active{display:flex}.lightbox-content{max-width:90vw;max-height:85vh;display:flex;align-items:center;justify-content:center}.lightbox-content img{max-width:100%;max-height:85vh;object-fit:contain;user-select:none;-webkit-user-drag:none}.lightbox-close{position:absolute;top:20px;right:30px;background:none;border:none;color:var(--color-white);font-size:40px;cursor:pointer;z-index:3001;transition:var(--transition);line-height:1;padding:10px}.lightbox-close:hover{color:var(--color-secondary)}.lightbox-prev,.lightbox-next{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,0.1);border:none;color:var(--color-white);font-size:30px;cursor:pointer;z-index:3001;padding:20px 15px;transition:var(--transition)}.lightbox-prev:hover,.lightbox-next:hover{background:var(--color-secondary);color:var(--color-primary)}.lightbox-prev{left:20px}.lightbox-next{right:20px}.lightbox-counter{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);color:var(--color-white);font-size:0.9rem;letter-spacing:2px}@media (max-width:768px){.lightbox-prev,.lightbox-next{padding:15px 10px;font-size:24px}.lightbox-prev{left:10px}.lightbox-next{right:10px}.lightbox-close{top:15px;right:15px;font-size:32px}.lightbox-counter{bottom:20px;font-size:0.8rem}}.footer{background:var(--color-dark);color:var(--color-white);padding:80px 0 30px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;margin-bottom:40px}.footer-about .logo{margin-bottom:25px;display:inline-block}.footer-about p{color:rgba(255,255,255,0.6);font-size:0.95rem}.footer-title{font-family:var(--font-heading);font-size:1.3rem;color:var(--color-white);margin-bottom:25px}.footer-links{list-style:none}.footer-links li{margin-bottom:12px}.footer-links a{color:rgba(255,255,255,0.6);font-size:0.95rem;transition:var(--transition)}.footer-links a:hover{color:var(--color-secondary);padding-left:5px}.footer-bottom{padding-top:30px;border-top:1px solid rgba(255,255,255,0.1);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px}.footer-bottom p{color:rgba(255,255,255,0.4);font-size:0.9rem;margin:0}.footer-copyright{font-size:0.8rem !important}.fade-in{opacity:0;transform:translateY(30px);transition:opacity 0.8s ease,transform 0.8s ease}.fade-in.visible{opacity:1;transform:translateY(0)}@media (max-width:1200px){.services-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr);gap:30px}}@media (max-width:992px){.nav{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(26,38,52,0.98);flex-direction:column;justify-content:center;align-items:center;gap:30px;opacity:0;visibility:hidden;transition:var(--transition);z-index:999}.nav.active{opacity:1;visibility:visible}.nav a{font-size:1.2rem}.menu-toggle{display:flex;position:relative;z-index:1001}.menu-toggle.active span:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.menu-toggle.active span:nth-child(2){opacity:0}.menu-toggle.active span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.header-contact .btn{display:none}.about-grid{grid-template-columns:1fr;gap:50px}.rooms-grid{grid-template-columns:repeat(2,1fr)}.info-grid{grid-template-columns:1fr}.map-container{grid-template-columns:1fr;display:flex;flex-direction:column-reverse}.map-info{max-width:100%}#map{height:400px;min-height:400px}.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.container{padding:0 1rem}.section{padding:60px 0}.header{padding:15px 0}.logo{font-size:1.3rem}.logo.logo-medium{font-size:1.1rem}.logo.logo-long{font-size:0.95rem}.header-phone{display:none}.header-contact .btn{padding:10px 16px;font-size:0.7rem}.hero{min-height:100vh;padding:80px 0 40px}.hero-content{padding:0 1rem}.hero h1{font-size:2.2rem;letter-spacing:2px}.hero-subtitle{font-size:0.95rem;letter-spacing:1px;margin-bottom:30px}.hero-rating{padding:8px 16px;margin-bottom:20px}.hero-rating span{font-size:0.75rem}.hero-buttons{flex-direction:column;gap:15px;width:100%;padding:0 20px}.hero-buttons .btn{width:100%}.scroll-indicator{display:none}.booking-section{padding:0;margin-top:-60px;margin-left:0;margin-right:0}.booking-section .container{padding:0;max-width:100%;width:100%}.booking-widget{border-radius:0;margin:0;width:100%}.booking-widget iframe{width:100% !important;max-width:100% !important}.about-features{grid-template-columns:1fr}.about-content h2{font-size:1.8rem}.rooms-grid{grid-template-columns:1fr}.room-content{padding:20px}.room-footer{flex-direction:column;gap:15px;align-items:flex-start}.room-footer .btn{width:100%}.services-grid{grid-template-columns:1fr}.service-card{padding:30px 20px}.info-card{padding:25px}.map-info{padding:30px 20px}#map{height:300px}.gallery-grid{grid-template-columns:1fr}.gallery-item:first-child{grid-column:span 1;grid-row:span 1}.footer{padding:50px 0 20px}.footer-grid{grid-template-columns:1fr;gap:40px}.footer-bottom{flex-direction:column;text-align:center}.section-title{margin-bottom:40px}.section-title p{font-size:0.95rem;padding:0 10px}}@media (max-width:480px){.hero h1{font-size:1.8rem}.logo{font-size:1.1rem}.logo.logo-medium{font-size:0.95rem}.logo.logo-long{font-size:0.85rem}.header-contact .btn{padding:8px 12px;font-size:0.65rem}.btn{padding:12px 24px;font-size:0.8rem}}