*{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100vw;overflow-x:hidden}body{color:#e5e7eb;background:radial-gradient(circle at top,#0f1c2e 0%,#0b1322 40%,#070d1a 100%);font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif;line-height:1.6}a{color:#4da3ff;text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3{letter-spacing:-.02em;color:#f9fafb;font-weight:600}h1{font-size:2.5rem}h2{margin-bottom:.5rem;font-size:1.4rem}section{max-width:1100px;margin:0 auto;padding:3rem 1.5rem}.feature-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem;margin-top:2.5rem;display:grid}.feature-card,.spot-card{background:linear-gradient(#ffffff0f,#ffffff05);border:1px solid #ffffff14;border-radius:18px;padding:1.8rem;transition:all .25s;box-shadow:0 10px 30px #00000059}.feature-card:hover,.spot-card:hover{border-color:#4da3ff99;transform:translateY(-6px);box-shadow:0 20px 45px #0000008c}.feature-card p,.spot-card p{color:#cbd5e1;margin-bottom:1rem;font-size:.95rem}.feature-card a,.spot-card a{color:#4da3ff;font-size:.9rem;font-weight:500}.list-page{max-width:1100px;margin:0 auto;padding:3rem 1.5rem}.list-title{margin-bottom:.4rem;font-size:1.8rem}.list-subtitle{color:#94a3b8;margin-bottom:2rem}.card-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.8rem;display:grid}.meta{color:#9ca3af;margin-top:.5rem;font-size:.8rem}.badge-row{flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:1.5rem;display:flex}.badge{color:#93c5fd;background:#4da3ff1f;border:1px solid #4da3ff40;border-radius:999px;padding:.35rem .7rem;font-size:.75rem}footer{text-align:center;color:#9ca3af;border-top:1px solid #ffffff0f;padding:3rem 1rem 2rem;font-size:.85rem}@media (max-width:640px){h1{font-size:2rem}section{padding:2.2rem 1.2rem}}.hub-wrapper{max-width:420px;margin-top:24px}.hub-wrapper label{color:#cbd5e1;margin-bottom:6px;font-size:.95rem;display:block}.hub-select{cursor:pointer;color:#e5e7eb;background:#ffffff0f;border:1px solid #ffffff2e;border-radius:10px;padding:12px 14px;font-size:.95rem;transition:all .2s}.hub-select:hover{background:#ffffff1a}.hub-dropdown{background:#020617;border:1px solid #ffffff26;border-radius:10px;margin-top:8px;overflow:hidden;box-shadow:0 12px 40px #0009}.hub-option{cursor:pointer;color:#e5e7eb;padding:12px 14px;font-size:.95rem}.hub-option:hover{background:#3b82f626}.hub-note{color:#94a3b8;margin-top:8px;font-size:.8rem}.card-desc{color:#cbd5e1;margin-top:6px;font-size:14px;line-height:1.5}.feature-card p{color:#cbd5e1;margin:6px 0 10px;font-size:14px;line-height:1.5}.about-section{text-align:center;max-width:720px;margin:80px auto 60px;padding:0 16px}.about-section h2{margin-bottom:12px;font-size:24px;font-weight:600}.about-section p{color:#cbd5e1;margin-bottom:10px;font-size:15px;line-height:1.6}.hub-continue{cursor:pointer;color:#fff;background:#2563eb;border:none;border-radius:8px;margin-top:14px;padding:10px 16px;font-size:14px;font-weight:500}.hub-continue:disabled{opacity:.5;cursor:not-allowed}.hub-page{max-width:1000px;margin:0 auto;padding:40px 20px}.hub-header h1{text-transform:capitalize;margin-bottom:6px;font-size:28px}.hub-header p{color:#94a3b8;margin-bottom:32px}.hub-error{color:#f87171}.hub-empty{color:#94a3b8}.hub-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.hub-card{background:#ffffff0f;border-radius:10px;padding:16px}.hub-card h3{margin-bottom:6px;font-size:17px}.hub-address{color:#cbd5e1;font-size:14px}.hub-rent{margin-top:6px;font-size:14px;font-weight:500}.hub-switcher{margin-top:12px}.hub-switcher select{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:10px 12px;font-size:14px}.hub-switcher option{color:#0f172a}.hub-switcher{max-width:360px;margin-top:16px}.hub-switcher select{color:#e5e7eb;cursor:pointer;appearance:none;background:linear-gradient(#1e293bf2,#0f172af2);border:1px solid #94a3b840;border-radius:10px;width:100%;padding:12px 14px;font-size:14px;font-weight:500;box-shadow:0 8px 24px #00000059,inset 0 1px #ffffff0a}.hub-switcher select:hover{border-color:#94a3b873}.hub-switcher select:focus{border-color:#60a5fa;outline:none;box-shadow:0 0 0 1px #60a5fa99,0 10px 30px #00000073}.hub-switcher option{color:#e5e7eb;background-color:#020617;font-weight:500}.hub-switcher option[value=""]{color:#94a3b8}.hub-switcher:after{content:"⌄";float:right;pointer-events:none;color:#94a3b8;margin-top:-34px;margin-right:14px;position:relative}.admin-page{max-width:1200px;margin:0 auto;padding:40px 20px}.admin-header h1{margin-bottom:6px;font-size:28px}.admin-header p{color:#94a3b8}.admin-grid{grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:20px;margin-top:30px;display:grid}.admin-card{background:#ffffff0f;border-radius:14px;padding:18px;box-shadow:0 12px 32px #00000059}.admin-card-header{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.admin-card-header h3{font-size:16px;font-weight:600}.admin-status{color:#93c5fd;background:#60a5fa26;border-radius:999px;padding:4px 10px;font-size:12px}.admin-card label{color:#94a3b8;margin-top:10px;font-size:12px;display:block}.admin-card input,.admin-card textarea{color:#e5e7eb;background:#0f172acc;border:1px solid #ffffff26;border-radius:8px;width:100%;margin-top:4px;padding:8px 10px;font-size:13px}.admin-row{grid-template-columns:1fr 1fr;gap:12px;margin-top:8px;display:grid}.approve-btn{color:#fff;cursor:pointer;background:linear-gradient(#2563eb,#1d4ed8);border:none;border-radius:10px;width:100%;margin-top:14px;padding:10px;font-weight:600}.approve-btn:hover{opacity:.95}.generate-btn{color:#fff;cursor:pointer;background:linear-gradient(#16a34a,#15803d);border:none;border-radius:10px;margin-top:14px;padding:10px 16px;font-weight:600}.generate-btn:disabled{opacity:.6;cursor:not-allowed}.tagline{color:#c7d2fe;margin-top:8px;font-size:16px;font-weight:500}.hero-description{color:#e5e7eb;max-width:620px;margin-top:12px}.about{text-align:center;max-width:820px;margin:80px auto 40px;padding:0 20px}.about h2{margin-bottom:16px;font-size:26px}.about p{color:#d1d5db;margin-bottom:12px;line-height:1.6}.made-with-love{color:#e5e7eb;margin-top:20px;font-size:15px;font-style:italic}body{background:radial-gradient(1200px 600px at top,#0f172a,#020617)}section{padding:80px 20px}.hero{text-align:center;padding-top:120px;padding-bottom:100px}.hero h1{letter-spacing:-.02em;font-size:48px}.hero-description{color:#cbd5f5;max-width:680px;margin:16px auto 0}.feature-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;max-width:1100px;margin:0 auto;display:grid}.feature-card{background:#ffffff0a;border:1px solid #ffffff0f;border-radius:18px;padding:22px;transition:transform .25s,box-shadow .25s}.feature-card:hover{transform:translateY(-4px);box-shadow:0 20px 40px #00000073}.feature-card h2{margin-bottom:10px;font-size:18px}.feature-card p{color:#c7d2fe;font-size:14px}.feature-card a{color:#60a5fa;margin-top:12px;font-weight:500;text-decoration:none;display:inline-block}.feature-card a:hover{text-decoration:underline}.badge{color:#93c5fd;background:#60a5fa26;border-radius:999px;margin-top:12px;padding:6px 10px;font-size:12px;display:inline-block}.about{text-align:center;max-width:820px;margin:0 auto}.about p{color:#cbd5f5}footer{color:#94a3b8;border-top:1px solid #ffffff0f;margin-top:80px;padding:28px 20px}html,body{min-height:100%}body{background-color:#020617!important;background-image:radial-gradient(600px 300px at 20% 10%,#3b82f62e,#0000 60%),radial-gradient(500px 300px at 80% 20%,#6366f124,#0000 60%),radial-gradient(700px 400px at 50% 90%,#0ea5e91a,#0000 70%)!important}.hero{position:relative}.hero:before{content:"";pointer-events:none;background:radial-gradient(400px 200px,#60a5fa26,#0000 70%);height:400px;position:absolute;inset:-120px 0 auto}.feature-card h3{color:#f8fafc;margin-bottom:10px;font-size:18px;font-weight:600}.spot-title{color:#f8fafc;margin-bottom:10px;font-size:18px;font-weight:600}select.hub-select{color:#f1f5f9;background:linear-gradient(145deg,#0b1224,#0e1630);border:1px solid #ffffff1f}select.hub-select option{color:#f1f5f9;background-color:#0b1224}.page-container{padding:60px 80px}.page-header h1{margin-bottom:8px;font-size:42px}.page-header p{opacity:.8;max-width:600px}.filter-box{margin-top:24px}.premium-select{color:#fff;background:#020617;border:1px solid #1e293b;border-radius:12px;margin-top:8px;padding:10px 14px;font-size:14px}.spot-card{background:linear-gradient(#0b1220,#020617);border:1px solid #1e293b;border-radius:16px;padding:20px}.spot-title{margin-bottom:10px;font-size:20px;font-weight:600}.spot-desc{opacity:.85;line-height:1.5}.maps-link{color:#60a5fa;margin-top:14px;text-decoration:none;display:inline-block}select{appearance:none;color:#e5e7eb;cursor:pointer;background:linear-gradient(#0f172a,#020617);border:1px solid #94a3b840;border-radius:10px;outline:none;padding:10px 40px 10px 14px;font-size:15px;font-weight:500;transition:all .2s}select:hover{border-color:#3b82f6}select:focus{border-color:#60a5fa;box-shadow:0 0 0 2px #3b82f640}select{background-image:linear-gradient(45deg,#0000 50%,#93c5fd 50%),linear-gradient(135deg,#93c5fd 50%,#0000 50%);background-position:calc(100% - 18px) calc(50% - 3px),calc(100% - 12px) calc(50% - 3px);background-repeat:no-repeat;background-size:6px 6px}select option{color:#e5e7eb;background-color:#020617}.card-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px;margin-top:40px;display:grid}.card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;border-radius:16px;padding:16px;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-4px);box-shadow:0 10px 30px #0006}.spot-image{object-fit:cover;border-radius:12px;width:100%;height:180px;margin-bottom:12px}.location{opacity:.8;margin-bottom:6px;font-size:.9rem}.map-link{color:#4ea1ff;font-weight:500;text-decoration:none}.map-link:hover{text-decoration:underline}.weekend-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:28px;margin-top:40px;display:grid}.weekend-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:linear-gradient(#ffffff14,#ffffff05);border:1px solid #ffffff1f;border-radius:18px;transition:transform .25s,box-shadow .25s;overflow:hidden}.weekend-card:hover{transform:translateY(-6px);box-shadow:0 20px 40px #00000073}.weekend-card img{object-fit:cover;width:100%;height:180px;display:block}.weekend-card-content{padding:16px 18px 18px}.weekend-card h3{color:#fff;margin-bottom:6px;font-size:18px;font-weight:600}.weekend-card p{color:#ffffffbf;margin-bottom:10px;font-size:14px;line-height:1.5}.weekend-card a{color:#4da3ff;font-size:14px;font-weight:500;text-decoration:none}.weekend-card a:hover{text-decoration:underline}.weekend-card:hover{border:1px solid #78b4ffcc;box-shadow:0 0 0 1px #78b4ff66,0 0 24px #78b4ff26}.weekend-card{border:1px solid #ffffff14;transition:border-color .3s,box-shadow .3s}.weekend-card:hover{border-color:#38bdf8;box-shadow:0 0 0 1px #38bdf899,0 0 24px #38bdf840}.card{border:1px solid #0000;transition:border .25s,box-shadow .25s,transform .25s}.feature-card,.home-card{border:1px solid #0000;transition:border .25s,box-shadow .25s,transform .25s}.feature-card:hover,.home-card:hover{border-color:#58a6ffe6;transform:translateY(-2px);box-shadow:0 0 0 1px #58a6ff99,0 8px 30px #58a6ff40}.card{background:#ffffff08;border:1px solid #ffffff0f;border-radius:16px;transition:transform .25s,box-shadow .25s,border .25s;position:relative}.card:hover{border:1px solid #78b4ff99;transform:translateY(-6px);box-shadow:0 0 0 1px #78b4ff59,0 20px 40px #00000073}.card a,.cta-link{align-items:center;gap:6px;transition:transform .2s,color .2s;display:inline-flex}.card a:hover,.cta-link:hover{color:#8ab4ff;transform:translate(4px)}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.card{animation:.5s forwards fadeUp}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.skeleton{background:linear-gradient(90deg,#ffffff0a,#ffffff14,#ffffff0a) 0 0/200% 100%;border-radius:16px;height:240px;animation:1.4s infinite shimmer}.card:hover{border-color:#58a6ffe6;transform:translateY(-6px);box-shadow:0 0 0 1px #58a6ff99,0 12px 30px #58a6ff40}@media (max-width:768px){.page-container{padding:24px 16px}h1{font-size:26px;line-height:1.3}h2{font-size:20px}p{font-size:15px;line-height:1.6}.card-grid{gap:16px}.card{border-radius:14px;padding:14px}.spot-image{border-radius:10px;height:160px}a,button{padding:10px 0}select{width:100%;font-size:15px}a{min-height:44px;line-height:44px;display:inline-block}.card{cursor:pointer}.filter-box{z-index:20;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#020617f2;padding-bottom:12px;position:sticky;top:0}.card:active{transform:scale(.98)}}.card{border:1px solid #ffffff14;box-shadow:0 4px 14px #00000059}.travel-time{opacity:.85;margin-top:4px;font-size:14px}.pg-tag{color:#7da2ff;background:#5078ff26;border-radius:999px;margin-bottom:8px;padding:4px 10px;font-size:.75rem;font-weight:700;display:inline-block}.pg-card{flex-direction:column;gap:6px;display:flex}.pg-title{margin:2px 0;font-size:1.05rem;font-weight:600}.pg-desc{opacity:.85;font-size:.9rem;line-height:1.4}.pg-tag{color:#7da2ff;background:#5078ff26;border-radius:999px;width:fit-content;padding:4px 10px;font-size:.75rem;font-weight:700;display:inline-block}.filter-hint{opacity:.7;margin-top:4px;font-size:.75rem;display:block}.empty-state{opacity:.7;margin-top:20px}.feedback-wrap{justify-content:center;margin:80px 16px;display:flex}.feedback-card{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff05;border:1px solid #ffffff14;border-radius:18px;width:100%;max-width:520px;padding:28px}.feedback-card h3{margin-bottom:6px;font-size:1.5rem;font-weight:600}.feedback-sub{opacity:.8;margin-bottom:18px;font-size:.95rem;line-height:1.4}.feedback-card textarea,.feedback-card input{color:#fff;background:#00000040;border:1px solid #ffffff1f;border-radius:10px;outline:none;width:100%;margin-bottom:14px;padding:12px 14px;font-size:.95rem}.feedback-card textarea{resize:vertical;min-height:90px}.feedback-card textarea::placeholder,.feedback-card input::placeholder{color:#ffffff80}.feedback-card textarea:focus,.feedback-card input:focus{border-color:#3b82f6}.feedback-card button{color:#fff;cursor:pointer;background:linear-gradient(135deg,#2563eb,#3b82f6);border:none;border-radius:12px;width:100%;padding:12px;font-weight:500;transition:transform .15s,box-shadow .15s}.feedback-card button:hover{transform:translateY(-1px);box-shadow:0 8px 20px #2563eb40}.feedback-card button:disabled{opacity:.6;cursor:not-allowed}.feedback-done{color:#4ade80;text-align:center;margin-top:12px;font-size:.9rem}.type-tabs{gap:12px;margin-bottom:16px;display:flex}.type-tab.active{background:#2563eb;border-color:#2563eb;font-weight:500}.hub-select{color:#fff;background-color:#0b1220;border:1px solid #fff3;border-radius:6px;padding:8px 12px}.pg-hub{color:#93c5fd;margin:4px 0 6px;font-size:.85rem}.hub-select{appearance:none;color:#fff;background-color:#0b1220;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='white' viewBox='0 0 20 20'%3E%3Cpath d='M5.23 7.21a.75.75 0 011.06.02L10 11.02l3.71-3.79a.75.75 0 111.08 1.04l-4.25 4.35a.75.75 0 01-1.08 0L5.21 8.27a.75.75 0 01.02-1.06z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:18px;border:1px solid #ffffff40;border-radius:8px;padding:10px 40px 10px 14px;font-size:.95rem}.hub-select option{color:#000;background-color:#fff}.dark-select{appearance:none;color:#fff;cursor:pointer;background-color:#0f172ae6;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%2393c5fd' stroke-width='2'%3E%3Cpath d='M6 8l4 4 4-4'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:18px;border:1px solid #60a5fa80;border-radius:10px;min-width:220px;padding:10px 44px 10px 14px;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.dark-select:hover,.dark-select:focus{border-color:#60a5fa;outline:none;box-shadow:0 0 0 1px #60a5fa80}.dark-select option{color:#fff;background-color:#020617}.dark-select option:checked{background-color:#2563eb}.pg-hub{color:#93c5fd;margin-bottom:6px}.type-tabs{gap:10px;margin-top:14px;display:flex}.type-tab{color:#e5e7eb;cursor:pointer;background:0 0;border:1px solid #ffffff40;border-radius:999px;padding:6px 14px;font-size:.9rem}.type-tab.active{color:#fff;background:#2563eb;border-color:#2563eb}.type-tab.disabled{opacity:.5;cursor:not-allowed}.dropdown{width:240px;margin-top:16px;position:relative}.dropdown label{color:#e5e7eb;margin-bottom:6px;display:block}.dropdown-trigger{color:#fff;cursor:pointer;background:#0f172af2;border:1px solid #60a5fa80;border-radius:10px;justify-content:space-between;align-items:center;width:100%;padding:10px 14px;display:flex}.dropdown-trigger:hover{border-color:#60a5fa}.arrow{color:#93c5fd}.dropdown-menu{z-index:50;background:#020617;border:1px solid #60a5fa66;border-radius:10px;width:100%;position:absolute;top:110%;left:0;overflow:hidden}.dropdown-item{cursor:pointer;color:#fff;padding:10px 14px}.dropdown-item:hover{background:#2563eb}.pg-hub{color:#93c5fd;margin-bottom:6px;font-size:.85rem}.enquiry-btn{color:#fff;cursor:pointer;background:#1e50b440;border:1px solid #78b4ff4d;border-radius:12px;width:100%;margin-top:14px;padding:10px;font-weight:600;transition:all .2s}.enquiry-btn:hover{background:#3278ff59}.modal-overlay{z-index:999;background:#000000a6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-box{background:#0b1220;border:1px solid #78b4ff33;border-radius:18px;width:420px;max-width:90%;padding:22px}.modal-box h2{margin-bottom:14px;font-size:18px}.modal-box input,.modal-box textarea{color:#fff;background:#ffffff0d;border:1px solid #ffffff26;border-radius:10px;width:100%;margin-bottom:10px;padding:10px}.modal-box textarea{min-height:70px}.modal-actions{justify-content:space-between;gap:10px;display:flex}.btn-secondary{color:#fff;cursor:pointer;background:#ffffff1f;border:none;border-radius:10px;flex:1;padding:10px}.btn-primary{color:#fff;cursor:pointer;background:#328cff8c;border:none;border-radius:10px;flex:1;padding:10px}.success-msg{color:#4cff9b;font-weight:600}input{color:#fff;background:#0000004d;border:1px solid #ffffff26;border-radius:10px;width:100%;margin-top:6px;margin-bottom:14px;padding:10px}input::placeholder{color:#ffffff80}label{opacity:.8;font-size:14px}
