@import "https://fonts.googleapis.com/css2?family=Be+Vietnam+Pro:wght@400;500;600;700&family=Epilogue:wght@400;500;600;700;800&display=swap";
:root{--font-epilogue:"Epilogue",sans-serif;--font-be-vietnam-pro:"Be Vietnam Pro",sans-serif;--font-sans:var(--font-be-vietnam-pro),-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;--font-heading:var(--font-epilogue),var(--font-sans);--background:#faf9f7;--background-secondary:#f4f3f1;--foreground:#1a1c1b;--foreground-secondary:#514537;--primary:#835500;--primary-hover:#6c4600;--primary-glow:rgba(131,85,0,.15);--on-primary:#fff;--primary-container:#e8a84b;--on-primary-container:#623e00;--inverse-primary:#fdba5b;--secondary:#5b5f65;--secondary-hover:#4b4e53;--secondary-glow:rgba(91,95,101,.15);--on-secondary:#fff;--secondary-container:#dfe2ea;--on-secondary-container:#61656b;--tertiary:#755841;--on-tertiary:#fff;--tertiary-container:#d2ad92;--on-tertiary-container:#5b402b;--accent:#e8a84b;--surface:#faf9f7;--surface-dim:#dadad8;--surface-bright:#faf9f7;--surface-container-lowest:#fff;--surface-container-low:#f4f3f1;--surface-container:#efeeec;--surface-container-high:#e9e8e6;--surface-container-highest:#e3e2e0;--outline:#837565;--outline-variant:#d5c4b1;--card-bg:#fff;--card-border:#d5c4b1;--card-shadow:0 10px 30px -10px rgba(99,72,50,.08);--card-shadow-hover:0 20px 40px -15px rgba(131,85,0,.15);--glass-bg:rgba(250,249,247,.95);--glass-border:rgba(213,196,177,.7);--glass-shadow:0 8px 32px 0 rgba(99,72,50,.06);--glass-blur:blur(16px);--border-radius-sm:.25rem;--border-radius-default:.5rem;--border-radius-md:.75rem;--border-radius-lg:1rem;--border-radius-xl:1.5rem;--border-radius-full:9999px;--transition-fast:.2s cubic-bezier(.4,0,.2,1);--transition-smooth:.4s cubic-bezier(.16,1,.3,1);--transition-bounce:.5s cubic-bezier(.34,1.56,.64,1);--max-width:1200px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background-color:var(--background)}body{color:var(--foreground);background:var(--background);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(at 0 0,rgba(232,168,75,.02) 0,transparent 50%),radial-gradient(at 100% 0,rgba(117,88,65,.02) 0,transparent 50%);background-attachment:fixed;flex-direction:column;min-height:100vh;display:flex;overflow-x:hidden}a{color:inherit;transition:var(--transition-fast);text-decoration:none}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--background)}::-webkit-scrollbar-thumb{background:var(--outline-variant);border-radius:var(--border-radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--outline)}::selection{background:var(--primary-container);color:var(--on-primary-container)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--foreground);letter-spacing:-.02em;margin-bottom:.5em;font-weight:700;line-height:1.2}p{color:var(--foreground-secondary);margin-bottom:1em;font-size:1rem;line-height:1.7}.container{width:100%;max-width:var(--max-width);margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px}@media (min-width:768px){.container{padding-left:32px;padding-right:32px}}@media (min-width:1024px){.container{padding-left:64px;padding-right:64px}}.section-spacing{padding-top:48px;padding-bottom:48px}@media (min-width:768px){.section-spacing{padding-top:80px;padding-bottom:80px}}.glass-panel{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);border-radius:var(--border-radius-default);transition:var(--transition-smooth)}.card{background:var(--surface-container-lowest);border:1px solid var(--outline-variant);border-radius:var(--border-radius-default);box-shadow:var(--card-shadow);transition:var(--transition-bounce);padding:32px;position:relative;overflow:hidden}.card:before{content:"";background:linear-gradient(90deg,var(--primary-container),var(--tertiary));opacity:0;height:4px;transition:var(--transition-smooth);position:absolute;top:0;left:0;right:0}.card:hover{border-color:var(--outline);box-shadow:var(--card-shadow-hover);transform:translateY(-8px)scale(1.01)}.card:hover:before{opacity:1}.gradient-text{background:linear-gradient(135deg,var(--primary)0%,var(--primary-container)100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;display:inline-block}.btn{letter-spacing:.01em;font-size:.875rem;font-weight:600;font-family:var(--font-sans);border-radius:var(--border-radius-default);cursor:pointer;transition:var(--transition-fast);z-index:1;border:none;outline:none;justify-content:center;align-items:center;gap:8px;padding:12px 24px;display:inline-flex;position:relative;overflow:hidden}.btn-primary{background:var(--primary-container);color:var(--on-primary-container);box-shadow:0 2px 0 var(--primary)}.btn-primary:hover{background:var(--inverse-primary);box-shadow:0 3px 0 var(--primary);transform:translateY(-1px)}.btn-primary:active{box-shadow:0 0px 0 var(--primary);transform:translateY(1px)}.btn-secondary{color:var(--foreground-secondary);border:1px solid var(--outline);background:0 0}.btn-secondary:hover{background:var(--surface-container-low);transform:translateY(-1px)}.tag{letter-spacing:.05em;text-transform:uppercase;border-radius:var(--border-radius-full);background:var(--surface-container-low);color:var(--foreground-secondary);border:1px solid var(--outline-variant);transition:var(--transition-fast);align-items:center;padding:6px 14px;font-size:.75rem;font-weight:500;display:inline-flex}.tag:hover{background:var(--surface-container);transform:translateY(-1px)}.tag-primary{background:var(--primary-glow);color:var(--primary);border:1px solid var(--outline-variant)}.tag-primary:hover{background:var(--primary-container);color:var(--on-primary-container)}.form-input{background:var(--surface-container-lowest);border:1px solid var(--outline-variant);border-radius:var(--border-radius-default);width:100%;color:var(--foreground);transition:var(--transition-fast);outline:none;padding:12px 16px;font-family:inherit;font-size:1rem;font-weight:400}.form-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-glow)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:.6s cubic-bezier(.16,1,.3,1) forwards fadeInUp}.rooms-interactive-container{flex-direction:row;align-items:stretch;gap:32px;min-height:520px;display:flex}.rooms-list-col{flex-direction:column;flex:0 0 30%;gap:16px;display:flex}.rooms-detail-col{flex:0 0 70%}.room-tab-btn{text-align:left;border-radius:var(--border-radius-default);border:1px solid var(--card-border);background:var(--card-bg);cursor:pointer;width:100%;transition:var(--transition-smooth);padding:20px 24px}.room-tab-btn:hover{box-shadow:var(--card-shadow);transform:translateY(-2px)}.room-tab-btn.active{border-color:var(--primary);background:var(--primary-glow);box-shadow:0 4px 12px var(--primary-glow)}@media (max-width:992px){.rooms-interactive-container{flex-direction:column;min-height:auto}.rooms-list-col{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;flex-direction:row;flex:none;padding-bottom:12px;overflow-x:auto}.room-tab-btn{scroll-snap-align:start;flex:0 0 280px}.rooms-detail-col{flex:none;width:100%}}.calendar-dropdown{z-index:9999;background:#fff;border-radius:20px;padding:20px;position:absolute;top:calc(100% + 12px);box-shadow:0 20px 40px rgba(0,0,0,.15);width:calc(100vw - 40px)!important;max-width:320px!important;left:50%!important;transform:translate(-50%)!important}@media (min-width:768px){.calendar-dropdown{width:auto!important;max-width:none!important;left:0!important;transform:none!important}}.hide-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.hide-scrollbar::-webkit-scrollbar{display:none}.card-responsive-padding{padding:20px!important}@media (min-width:768px){.card-responsive-padding{padding:32px!important}}@media (min-width:1024px){.card-responsive-padding{padding:48px!important}}.booking-sidebar-container{width:100%!important;position:static!important}@media (min-width:1024px){.booking-sidebar-container{position:-webkit-sticky!important;position:sticky!important;top:100px!important}}.mobile-booking-bar{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-blur);border-top:1px solid var(--glass-border);z-index:998;justify-content:space-between;align-items:center;padding:16px 20px;transition:transform .4s cubic-bezier(.16,1,.3,1);display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(100%);box-shadow:0 -8px 32px rgba(99,72,50,.08)}.mobile-booking-bar.visible{transform:translateY(0)}.mobile-booking-bar-info{flex-direction:column;display:flex}.mobile-booking-bar-title{color:var(--foreground-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px;font-size:.8rem;font-weight:700}.mobile-booking-bar-price{color:var(--primary);font-size:1.25rem;font-weight:800}.mobile-booking-bar-price span{color:var(--foreground-secondary);font-size:.8rem;font-weight:400}.mobile-booking-bar-cta{border-radius:var(--border-radius-default);box-shadow:0 4px 15px var(--primary-glow);padding:10px 20px;font-size:.9rem;font-weight:700}@media (min-width:769px){.mobile-booking-bar{display:none!important}}
