:root{--font-heading:"Libre Baskerville", Georgia, "Times New Roman", serif;--font-body:"DM Sans", system-ui, -apple-system, sans-serif;--green-50:#f0fdf4;--green-100:#dcfce7;--green-200:#bbf7d0;--green-300:#86efac;--green-400:#4ade80;--green-500:#22c55e;--green-600:#16a34a;--green-700:#15803d;--green-800:#166534;--green-900:#14532d;--green-950:#052e16;--text-primary:#0a1f0d;--text-muted:#4a554c;--text-dim:#7a857c;--bg:#fafcfb;--bg-white:#fff;--bg-soft:#f5f7f6;--border:#e2e8e4;--border-light:#f0f3f1;--brand-green:var(--green-800)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-optical-sizing:auto;text-rendering:optimizelegibility;scroll-behavior:smooth}body{background:var(--bg);color:var(--text-primary);letter-spacing:-.011em;line-height:1.65;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}.reveal{opacity:0;transition:opacity .8s cubic-bezier(.16,1,.3,1),transform .8s cubic-bezier(.16,1,.3,1);transform:translateY(30px)}.reveal.revealed{opacity:1;transform:translateY(0)}.fade-up{transform:translateY(40px)}.scroll-container{position:relative}.scroll-container .container{padding:0}.horizontal-scroll{scroll-snap-type:x mandatory;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;gap:16px;padding:0 24px 24px;scroll-padding-left:max(24px,50vw - 576px);display:flex;overflow-x:auto}.horizontal-scroll::-webkit-scrollbar{display:none}@media (width<=768px){.horizontal-scroll{gap:12px;padding:0 16px 16px;scroll-padding-left:16px}}.scroll-btn{background:var(--bg-white);border:1px solid var(--border);cursor:pointer;z-index:10;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 4px 16px #00000014}.scroll-btn:hover{background:var(--green-800);border-color:var(--green-800);color:#fff;transform:translateY(-50%)scale(1.05)}.scroll-btn-left{left:8px}.scroll-btn-right{right:8px}.display{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--text-primary);font-size:clamp(2.5rem,5.8vw,5.1rem);font-weight:400;line-height:1.08}.h2{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--text-primary);font-size:clamp(2rem,4.2vw,3.2rem);font-weight:400;line-height:1.15}.title{font-family:var(--font-heading);letter-spacing:-.01em;color:var(--text-primary);font-size:1.05rem;font-weight:400;line-height:1.3}.body{font-family:var(--font-body);letter-spacing:-.011em;color:var(--text-muted);font-size:16px;font-weight:400;line-height:1.65}.eyebrow{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.22em;color:var(--green-700);font-size:.75rem;font-weight:500}.dim{color:var(--text-dim)}.container{max-width:1200px;margin:0 auto;padding:0 24px}section{padding:120px 0}.nav{z-index:100;background:0 0;padding:24px 0;transition:all .4s cubic-bezier(.16,1,.3,1);position:fixed;top:0;left:0;right:0}.nav.scrolled{-webkit-backdrop-filter:blur(24px);border-bottom:1px solid var(--border-light);background:#ffffffeb;padding:14px 0}.nav-inner{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:0 24px;display:flex}.nav-logo{font-family:var(--font-heading);letter-spacing:-.01em;color:#fff;align-items:center;gap:10px;font-size:1.25rem;font-weight:400;transition:color .3s;display:flex}.nav.scrolled .nav-logo{color:var(--text-primary)}.nav-logo .logo-mark{background:var(--green-800);color:#fff;width:34px;height:34px;font-family:var(--font-body);border-radius:10px;justify-content:center;align-items:center;font-size:.85rem;font-weight:600;transition:transform .3s;display:flex}.nav-logo:hover .logo-mark{transform:scale(1.05)}.nav-links{align-items:center;gap:32px;list-style:none;display:flex}.nav-links a{font-family:var(--font-body);color:#ffffffb3;font-size:.88rem;font-weight:500;transition:color .3s;position:relative}.nav.scrolled .nav-links a{color:var(--text-muted)}.nav-links a:after{content:"";background:var(--green-800);width:0;height:1.5px;transition:width .3s cubic-bezier(.16,1,.3,1);position:absolute;bottom:-4px;left:0}.nav-links a:hover:after{width:100%}.nav-links a:hover{color:#fff}.nav.scrolled .nav-links a:hover{color:var(--text-primary)}.lang-toggle{font-family:var(--font-body);letter-spacing:.1em;color:#ffffffb3;cursor:pointer;background:0 0;border:1.5px solid #ffffff4d;border-radius:6px;padding:6px 12px;font-size:.75rem;font-weight:600;transition:all .3s}.nav.scrolled .lang-toggle{border-color:var(--border);color:var(--text-muted)}.lang-toggle:hover{color:#fff;border-color:#fff9}.nav.scrolled .lang-toggle:hover{border-color:var(--green-800);color:var(--green-800)}.nav-cta{border-radius:100px;padding:10px 24px;font-weight:500;transition:all .3s;color:var(--text-primary)!important;background:#fff!important;font-size:.85rem!important}.nav.scrolled .nav-cta{background:var(--green-800)!important;color:#fff!important}.nav-cta:hover{transform:translateY(-1px);box-shadow:0 4px 16px #00000026}.mobile-menu-btn{cursor:pointer;background:0 0;border:none;padding:8px;display:none}.hamburger{background:#fff;width:24px;height:2px;transition:background .3s;display:block;position:relative}.nav.scrolled .hamburger{background:var(--text-primary)}.hamburger:before,.hamburger:after{content:"";background:inherit;width:24px;height:2px;transition:transform .3s cubic-bezier(.16,1,.3,1);position:absolute}.hamburger:before{top:-7px}.hamburger:after{top:7px}.hamburger.open{background:0 0}.hamburger.open:before{background:var(--text-primary);transform:rotate(45deg)translate(5px,5px)}.hamburger.open:after{background:var(--text-primary);transform:rotate(-45deg)translate(5px,-5px)}.mobile-close-item{display:none}.mobile-close-btn{cursor:pointer;color:var(--text-primary);background:0 0;border:none;padding:8px;transition:transform .3s}.mobile-close-btn:hover{transform:rotate(90deg)}.hero{align-items:flex-end;min-height:100vh;padding:0 0 80px;display:flex;position:relative;overflow:hidden}.hero-carousel{z-index:0;position:absolute;inset:0}.hero-slide{opacity:0;background-position:50%;background-size:cover;transition:opacity 1.5s ease-in-out,transform 6s ease-out;position:absolute;inset:0;transform:scale(1.05)}.hero-slide.active{opacity:1;transform:scale(1)}.hero-overlay{background:linear-gradient(#0000001a 0%,#0000004d 60%,#000000b3 100%);position:absolute;inset:0}.hero-content{z-index:1;color:#fff;max-width:720px;position:relative}.hero-content .eyebrow{color:var(--green-300);align-items:center;gap:12px;margin-bottom:28px;display:flex}.hero-content .eyebrow:before{content:"";background:var(--green-300);width:32px;height:1.5px;display:inline-block}.hero-content .display{color:#fff;margin-bottom:28px}.hero-content .display .dim{color:#ffffff73}.hero-content .body{color:#ffffffa6;max-width:520px;margin-bottom:44px;font-size:1.1rem;line-height:1.75}.hero-actions{align-items:center;gap:16px;display:flex}.btn-primary{font-family:var(--font-body);background:var(--green-800);color:#fff;letter-spacing:-.01em;cursor:pointer;border:none;border-radius:100px;align-items:center;gap:10px;padding:16px 36px;font-size:.95rem;font-weight:500;transition:all .4s cubic-bezier(.16,1,.3,1);display:inline-flex;position:relative;overflow:hidden}.btn-primary:before{content:"";opacity:0;background:linear-gradient(135deg,#ffffff26,#0000);transition:opacity .3s;position:absolute;inset:0}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 40px #16653459}.btn-primary:hover:before{opacity:1}.hero-indicators{z-index:2;gap:8px;display:flex;position:absolute;bottom:40px;right:40px}.hero-indicator{cursor:pointer;background:#ffffff4d;border:none;border-radius:50%;width:10px;height:10px;transition:all .4s cubic-bezier(.16,1,.3,1)}.hero-indicator.active{background:#fff;border-radius:5px;width:32px}.hero-scroll-hint{z-index:2;position:absolute;bottom:40px;left:50%;transform:translate(-50%)}.scroll-line{background:linear-gradient(#ffffff80,#0000);width:1px;height:60px;animation:2s ease-in-out infinite scrollPulse}@keyframes scrollPulse{0%,to{opacity:.3;transform:scaleY(.6)}50%{opacity:1;transform:scaleY(1)}}.rooms{background:var(--bg-white);position:relative}.rooms:before{content:"";background:var(--border-light);height:1px;position:absolute;top:0;left:0;right:0}.rooms .scroll-container{padding:0}.rooms .horizontal-scroll{gap:20px;padding-left:max(24px,50vw - 576px);padding-right:24px;scroll-padding-left:max(24px,50vw - 576px)}@media (width<=768px){.rooms .horizontal-scroll{gap:12px;padding-left:16px;padding-right:16px;scroll-padding-left:16px}}.section-header{max-width:600px;margin-bottom:48px}.section-header .eyebrow{align-items:center;gap:12px;margin-bottom:20px;display:flex}.section-header .eyebrow:before{content:"";background:var(--green-700);width:24px;height:1.5px;display:inline-block}.section-header .h2{margin-bottom:16px}.room-card{scroll-snap-align:start;background:var(--bg);border:1px solid var(--border-light);border-radius:20px;flex-shrink:0;width:360px;min-width:360px;transition:all .5s cubic-bezier(.16,1,.3,1);overflow:hidden}.room-card:hover{border-color:var(--border);transform:translateY(-6px);box-shadow:0 24px 64px #00000014}.room-image{aspect-ratio:16/10;background-position:50%;background-size:cover;width:100%;transition:transform .6s cubic-bezier(.16,1,.3,1);position:relative;overflow:hidden}.room-card:hover .room-image{transform:scale(1.02)}.room-badge{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-transform:uppercase;letter-spacing:.1em;color:var(--green-800);background:#ffffffeb;border-radius:100px;padding:6px 14px;font-size:.72rem;font-weight:600;position:absolute;top:16px;right:16px}.room-body{padding:28px}.room-body .title{margin-bottom:8px;transition:color .3s}.room-card:hover .room-body .title{color:var(--green-800)}.room-body .body{margin-bottom:20px;font-size:.9rem;line-height:1.65}.room-features{flex-wrap:wrap;gap:16px;margin-bottom:24px;display:flex}.room-feature{font-family:var(--font-body);color:var(--text-dim);align-items:center;gap:6px;font-size:.8rem;font-weight:500;display:flex}.room-footer{border-top:1px solid var(--border-light);justify-content:space-between;align-items:center;padding-top:20px;display:flex}.room-price{font-family:var(--font-heading);letter-spacing:-.02em;font-size:1.5rem;font-weight:400}.room-price span{color:var(--text-dim);font-size:.85rem;font-weight:400}.room-book{font-family:var(--font-body);background:var(--green-800);color:#fff;cursor:pointer;border:none;border-radius:100px;padding:10px 24px;font-size:.85rem;font-weight:500;transition:all .3s}.room-book:hover{background:var(--green-900);transform:translateY(-1px)}.testimonials{background:var(--bg);position:relative}.testimonials:before{content:"";background:var(--border-light);height:1px;position:absolute;top:0;left:0;right:0}.testimonials .scroll-container{max-width:100%;padding:8px 0 0}.testimonials .horizontal-scroll{gap:20px;padding-left:max(24px,50vw - 576px);padding-right:24px;scroll-padding-left:max(24px,50vw - 576px)}@media (width<=768px){.testimonials .horizontal-scroll{gap:12px;padding-left:16px;padding-right:16px;scroll-padding-left:16px}}.testimonial-card{scroll-snap-align:start;background:var(--bg-white);border:1px solid var(--border-light);border-radius:20px;flex-shrink:0;width:340px;min-width:340px;padding:36px;transition:all .5s cubic-bezier(.16,1,.3,1);position:relative}.testimonial-card:hover{border-color:var(--border);transform:translateY(-4px);box-shadow:0 20px 50px #0000000f}.testimonial-quote-mark{font-family:var(--font-heading);color:var(--green-200);margin-bottom:8px;font-size:4.5rem;font-weight:400;line-height:1;transition:color .3s}.testimonial-card:hover .testimonial-quote-mark{color:var(--green-300)}.testimonial-card .body{margin-bottom:32px;font-size:.95rem;font-style:italic;line-height:1.75}.testimonial-author{align-items:center;display:flex}.testimonial-name{font-family:var(--font-heading);letter-spacing:-.01em;font-size:.95rem;font-weight:400}.testimonial-role{color:var(--text-dim);margin-top:2px;font-size:.8rem}.testimonial-stars{color:#22c55e;letter-spacing:2px;margin-bottom:16px;font-size:.85rem}.video-testimonial{margin-bottom:48px;padding:0 24px}.video-testimonial-inner{background:var(--bg-white);border:1px solid var(--border-light);border-radius:24px;grid-template-columns:auto 1fr;align-items:center;gap:48px;padding:48px;display:grid}.video-testimonial-content{flex-direction:column;display:flex}.video-testimonial-content .testimonial-quote-mark{font-size:5rem}.video-testimonial-content .body{margin-bottom:32px;font-size:1.05rem;font-style:italic;line-height:1.8}.video-testimonial-content .testimonial-author{align-items:center;gap:0;display:flex}.video-testimonial-video{aspect-ratio:9/16;background:#000;border-radius:16px;width:240px;max-height:420px;position:relative;overflow:hidden}.video-testimonial-video video{object-fit:cover;cursor:pointer;width:100%;height:100%;display:block}.video-play-btn{cursor:pointer;width:64px;height:64px;color:var(--green-800);background:#fffffff2;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .3s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 8px 32px #0003}.video-play-btn:hover{background:#fff;transform:translate(-50%,-50%)scale(1.1);box-shadow:0 12px 40px #00000040}.video-play-btn svg{margin-left:4px}@media (width<=768px){.video-testimonial-inner{grid-template-columns:1fr;gap:32px;padding:32px}.video-testimonial-video{width:100%;max-height:500px;margin:0 auto}.video-testimonial-content{text-align:center;align-items:center}}.cta{background:var(--green-950);position:relative;overflow:hidden}.cta:before{content:"";background:radial-gradient(at 30%,#22c55e14 0%,#0000 50%),radial-gradient(at 70%,#16a34a0f 0%,#0000 50%);position:absolute;inset:0}.cta-content{z-index:1;text-align:center;max-width:600px;margin:0 auto;position:relative}.cta .display{color:var(--bg-white);margin-bottom:20px}.cta .display .dim{color:#ffffff59}.cta .body{color:#ffffff80;margin-bottom:44px;font-size:1.05rem}.cta .btn-primary{color:var(--green-950);background:#fff;padding:18px 44px;font-size:1rem}.cta .btn-primary:hover{box-shadow:0 12px 40px #fff3}.footer{background:var(--bg);border-top:1px solid var(--border-light);padding:72px 0 40px}.footer-grid{grid-template-columns:1.5fr 1fr 1fr 1fr;gap:48px;margin-bottom:48px;display:grid}.footer-brand .nav-logo{color:var(--text-primary);margin-bottom:16px}.footer-brand .body{max-width:280px;font-size:.85rem}.footer-col .title{font-family:var(--font-body);text-transform:uppercase;letter-spacing:.15em;color:var(--text-dim);margin-bottom:20px;font-size:.75rem}.footer-col ul{flex-direction:column;gap:12px;list-style:none;display:flex}.footer-col a{font-family:var(--font-body);color:var(--text-muted);font-size:.88rem;transition:color .3s}.footer-col a:hover{color:var(--green-800)}.footer-bottom{border-top:1px solid var(--border-light);justify-content:center;align-items:center;padding-top:32px;display:flex}.footer-bottom .body{color:var(--text-dim);font-size:.8rem}@media (width<=768px){section{padding:80px 0}.mobile-menu-btn{display:block}.nav-links{-webkit-backdrop-filter:blur(24px);backdrop-filter:blur(24px);opacity:0;pointer-events:none;background:#fffffffa;flex-direction:column;justify-content:center;gap:32px;transition:opacity .4s;position:fixed;inset:0}.nav-links.mobile-open{opacity:1;pointer-events:all}.mobile-close-item{display:block;position:absolute;top:24px;right:24px}.nav-links a{font-size:1.5rem;font-family:var(--font-heading);color:var(--text-primary)!important}.lang-toggle{border-color:var(--border);color:var(--text-muted);padding:8px 16px;font-size:.85rem}.room-card{width:280px;min-width:280px}.testimonial-card{width:280px;min-width:280px;padding:28px}.scroll-btn{display:none}.hero-actions{flex-direction:column;align-items:flex-start}.hero-indicators{bottom:24px;right:24px}.hero-scroll-hint{display:none}.footer-grid{grid-template-columns:1fr;gap:32px}.footer-bottom{text-align:center;flex-direction:column;gap:16px}}@media (width<=480px){.container,.scroll-container{padding:0 16px}.horizontal-scroll{padding:0 16px 24px}.display{font-size:2.2rem}.h2{font-size:1.8rem}.hero-content .body{font-size:1rem}.btn-primary{padding:14px 28px;font-size:.9rem}.room-body{padding:20px}.room-card,.testimonial-card{width:260px;min-width:260px}.testimonial-quote-mark{font-size:3.5rem}}
