@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&display=swap";:root{--primary-bg:#0a0a0c;--secondary-bg:#141417;--accent:#4f46e5;--accent-hover:#4338ca;--text-main:#fff;--text-secondary:#94a3b8;--glass:#ffffff08;--glass-border:#ffffff14;--glass-hover:#ffffff0d;--card-radius:1.5rem;--transition:all .3s cubic-bezier(.4, 0, .2, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--primary-bg);color:var(--text-main);-webkit-font-smoothing:antialiased;font-family:Outfit,sans-serif;line-height:1.5;overflow-x:hidden}.glass{background:var(--glass);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border)}.glass-hover:hover{background:var(--glass-hover);border-color:#ffffff26}.container{max-width:1200px;margin:0 auto;padding:0 1.5rem}.hero{text-align:center;background:radial-gradient(circle,#4f46e526 0%,#0000 50%);flex-direction:column;justify-content:center;align-items:center;min-height:80vh;padding-top:4rem;display:flex}.hero h1{background:linear-gradient(to bottom right,#fff,#94a3b8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:1.5rem;font-size:4.5rem;font-weight:700;line-height:1.1}.hero p{color:var(--text-secondary);max-width:600px;margin-bottom:3rem;font-size:1.25rem}.search-container{border-radius:2rem;flex-direction:column;gap:1.5rem;width:100%;max-width:900px;padding:1.5rem;display:flex}.search-tabs{justify-content:center;gap:1rem;margin-bottom:.5rem;display:flex}.search-tab{cursor:pointer;transition:var(--transition);border:1px solid #0000;border-radius:99px;padding:.6rem 1.5rem;font-weight:500}.search-tab.active{background:var(--accent);color:#fff}.search-tab:not(.active){color:var(--text-secondary);background:var(--glass);border-color:var(--glass-border)}.search-fields{grid-template-columns:2fr 1.5fr 1fr auto;align-items:end;gap:1rem;display:grid}@media (width<=768px){.search-fields{grid-template-columns:1fr}}.field-group{text-align:left;flex-direction:column;gap:.5rem;display:flex}.field-group label{color:var(--text-secondary);padding-left:.5rem;font-size:.875rem;font-weight:500}.input-wrapper{background:var(--glass);border:1px solid var(--glass-border);color:#fff;transition:var(--transition);border-radius:1rem;align-items:center;gap:.75rem;padding:.8rem 1rem;display:flex}.input-wrapper:focus-within{border-color:var(--accent);background:#ffffff0d}.input-wrapper input,.input-wrapper select{color:#fff;background:0 0;border:none;outline:none;width:100%;font-family:inherit;font-size:1rem}.search-btn{background:var(--accent);color:#fff;cursor:pointer;transition:var(--transition);border:none;border-radius:1rem;height:3.5rem;padding:1rem 2rem;font-weight:600}.search-btn:hover{background:var(--accent-hover);box-shadow:0 10px 20px -10px var(--accent);transform:translateY(-2px)}.hotel-grid{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;padding:4rem 0;display:grid}.hotel-card{border-radius:var(--card-radius);transition:var(--transition);cursor:pointer;overflow:hidden}.hotel-card:hover{transform:translateY(-8px)}.hotel-image{object-fit:cover;width:100%;height:240px}.hotel-info{padding:1.5rem}.hotel-name{margin-bottom:.5rem;font-size:1.5rem;font-weight:600}.hotel-address{color:var(--text-secondary);align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.95rem;display:flex}.hotel-footer{border-top:1px solid var(--glass-border);justify-content:space-between;align-items:end;padding-top:1rem;display:flex}.price-tag{flex-direction:column;display:flex}.price-amount{color:var(--text-main);font-size:1.5rem;font-weight:700}.price-label{color:var(--text-secondary);font-size:.75rem}.btn-primary{background:var(--accent);color:#fff;cursor:pointer;transition:var(--transition);border:none;border-radius:.75rem;padding:.8rem 1.5rem;font-weight:600}.btn-primary:hover{background:var(--accent-hover)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:.6s ease-out forwards fadeIn}nav{z-index:100;border-bottom:1px solid var(--glass-border);align-items:center;height:5rem;display:flex;position:fixed;top:0;left:0;right:0}.nav-content{justify-content:space-between;align-items:center;width:100%;display:flex}.logo{letter-spacing:-1px;font-size:1.5rem;font-weight:800}.logo span{color:var(--accent)}.skeleton{background:linear-gradient(90deg, var(--glass) 25%, var(--glass-hover) 50%, var(--glass) 75%);background-size:200% 100%;border-radius:.5rem;animation:1.5s infinite loading}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}
