:root{
  --saffron:#FF9933;
  --white:#ffffff;
  --green:#138808;
  --navy:#0a1a33;
  --navy-light:#132a4f;
  --gold:#D4AF37;
  --text-light:#e8ecf5;
  --text-muted:#a9b4c9;
  --radius:16px;
  --shadow:0 10px 30px rgba(0,0,0,.25);
  --transition:.35s cubic-bezier(.4,0,.2,1);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:'Poppins',sans-serif;
  background:var(--navy);
  color:var(--text-light);
  overflow-x:hidden;
  position:relative;
}
h1,h2,h3,h4{font-family:'Playfair Display',serif;}
a{text-decoration:none;color:inherit;cursor:pointer;}
ul{list-style:none;}
img{max-width:100%;display:block;}

/* ============ NEW: AURORA BACKGROUND ============ */
@keyframes auroraMove{
  0%{background-position:0% 0%;}
  100%{background-position:100% 100%;}
}
@keyframes riseParticle{
  from{transform:translateY(0) translateX(0);opacity:.65;}
  to{transform:translateY(-110vh) translateX(20px);opacity:0;}
}

/* ============ NEW: CURSOR GLOW ============ */
.cursor-glow{
  position:fixed;width:260px;height:260px;border-radius:50%;
  pointer-events:none;z-index:1;transform:translate(-50%,-50%);
  background:radial-gradient(circle, rgba(255,153,51,.14), transparent 70%);
  transition:transform .08s linear;display:none;
}
@media(min-width:769px){.cursor-glow{display:block;}}

/* ============ NEW: SHIMMER TEXT ============ */
.shimmer-text{
  background:linear-gradient(100deg,var(--saffron),#fff,var(--green),var(--saffron));
  background-size:300% 300%;
  -webkit-background-clip:text;background-clip:text;color:transparent;
  animation:shimmerMove 6s linear infinite;
}
@keyframes shimmerMove{
  0%{background-position:0% 50%;}
  100%{background-position:300% 50%;}
}

/* Preloader */
#preloader{position:fixed;inset:0;background:var(--navy);display:flex;align-items:center;justify-content:center;z-index:9999;transition:opacity .5s;}
.chakra-loader{width:60px;height:60px;border:5px solid var(--saffron);border-top:5px solid var(--green);border-radius:50%;animation:spin 1s linear infinite;box-shadow:0 0 25px rgba(255,153,51,.4);}
@keyframes spin{to{transform:rotate(360deg);}}

/* Header */
.header{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(10,26,51,.75);backdrop-filter:blur(14px);border-bottom:1px solid rgba(255,255,255,.08);transition:var(--transition);}
.navbar{display:flex;align-items:center;justify-content:space-between;padding:16px 5%;max-width:1400px;margin:0 auto;}
.logo{font-family:'Playfair Display',serif;font-size:1.5rem;font-weight:700;display:flex;align-items:center;gap:8px;cursor:pointer;color:var(--white);}
.logo span{color:var(--saffron);}
.nav-links{display:flex;gap:28px;align-items:center;}
.nav-item{position:relative;font-weight:500;padding:6px 0;color:var(--text-light);transition:color .3s;}
.nav-item::after{content:'';position:absolute;bottom:-4px;left:0;width:0;height:2px;background:linear-gradient(90deg,var(--saffron),var(--green));transition:width .3s;}
.nav-item:hover, .nav-item.active{color:var(--saffron);}
.nav-item:hover::after, .nav-item.active::after{width:100%;}
.admin-link{background:linear-gradient(135deg,var(--saffron),var(--gold));padding:8px 16px;border-radius:30px;color:var(--navy);font-weight:600;}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;}
.hamburger span{width:26px;height:3px;background:var(--white);border-radius:3px;transition:.3s;}

/* tricolor strip */
.tricolor-strip{height:5px;width:100%;background:linear-gradient(90deg,var(--saffron) 33%, var(--white) 33% 66%, var(--green) 66%);}

/* Pages */
.page{display:none;min-height:100vh;padding-top:80px;position:relative;z-index:1;}
.page.active{display:block;animation:fadeIn .6s ease;}
@keyframes fadeIn{from{opacity:0;transform:translateY(15px);}to{opacity:1;transform:translateY(0);}}

/* Hero */
.hero{position:relative;min-height:92vh;display:flex;flex-direction:column;justify-content:center;overflow:hidden;}
.hero-bg{position:absolute;inset:0;background:
  radial-gradient(circle at 20% 30%, rgba(255,153,51,.25), transparent 40%),
  radial-gradient(circle at 80% 70%, rgba(19,136,8,.25), transparent 40%),
  linear-gradient(135deg,#0a1a33,#132a4f 60%,#0a1a33);
  animation:bgMove 12s ease-in-out infinite alternate;
}
@keyframes bgMove{from{background-position:0 0;}to{background-position:40px 40px;}}
.hero-content{position:relative;z-index:2;max-width:800px;margin:0 auto;text-align:center;padding:40px 20px;}
.hero-sub{color:var(--saffron);font-weight:600;letter-spacing:2px;text-transform:uppercase;margin-bottom:10px;}
.hero h1{font-size:4rem;font-weight:800;margin-bottom:15px;}
.hero h1 span{color:var(--green);}
.hero-desc{color:var(--text-muted);font-size:1.1rem;margin-bottom:30px;line-height:1.6;}
.hero-btns{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin-bottom:50px;}
.btn{padding:14px 30px;border-radius:40px;border:none;font-weight:600;cursor:pointer;font-size:1rem;transition:var(--transition);display:inline-flex;align-items:center;gap:8px;}
.btn-primary{background:linear-gradient(135deg,var(--saffron),#ff7a1a);color:#fff;box-shadow:0 8px 20px rgba(255,153,51,.35);}
.btn-primary:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(255,153,51,.55);}
.btn-outline{background:transparent;border:2px solid var(--green);color:var(--white);}
.btn-outline:hover{background:var(--green);transform:translateY(-3px);box-shadow:0 10px 25px rgba(19,136,8,.4);}
.stats{display:flex;gap:50px;justify-content:center;flex-wrap:wrap;}
.stat h3{font-size:2.2rem;color:var(--gold);}
.stat p{color:var(--text-muted);font-size:.9rem;}

/* Sections */
.section{padding:80px 5%;max-width:1400px;margin:0 auto;position:relative;z-index:1;}
.section.alt{background:var(--navy-light);border-radius:30px;}
.section-title{text-align:center;font-size:2.3rem;margin-bottom:45px;position:relative;display:block;}
.section-title span{color:var(--saffron);}
.section-title::after{content:'';display:block;width:0;height:3px;margin:14px auto 0;background:linear-gradient(90deg,var(--saffron),#fff,var(--green));transition:width 1s ease;border-radius:4px;}
.section-title.show::after{width:120px;}

/* reveal animation */
.reveal{opacity:0;transform:translateY(30px);transition:opacity .7s ease, transform .7s ease;}
.reveal.show{opacity:1;transform:translateY(0);}

/* Feature grid */
.feature-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:28px;}
.feature-card{background:linear-gradient(145deg,rgba(255,255,255,.05),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.08);padding:32px 24px;border-radius:var(--radius);text-align:center;transition:var(--transition);}
.feature-card:hover{transform:translateY(-8px);border-color:var(--saffron);box-shadow:0 0 30px rgba(255,153,51,.3),0 0 50px rgba(19,136,8,.15);}
.feature-card i{font-size:2.2rem;color:var(--saffron);margin-bottom:16px;}
.feature-card h4{margin-bottom:10px;}
.feature-card p{color:var(--text-muted);font-size:.92rem;}

/* Page hero small */
.page-hero.small{padding:60px 5% 40px;text-align:center;background:linear-gradient(135deg,#0a1a33,#132a4f);position:relative;z-index:1;}
.page-hero.small h1{font-size:2.8rem;}
.page-hero.small span{color:var(--saffron);}
.page-hero.small p{color:var(--text-muted);margin-top:10px;}

/* search bar */
.search-bar{display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:40px;padding:14px 22px;max-width:500px;margin:0 auto 40px;transition:.3s;}
.search-bar:hover{border-color:var(--saffron);box-shadow:0 0 20px rgba(255,153,51,.2);}
.search-bar i{color:var(--saffron);}
.search-bar input{background:transparent;border:none;outline:none;color:var(--white);flex:1;font-size:1rem;}

/* Grid cards */
.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:28px;}
.dest-card{background:var(--navy-light);border-radius:var(--radius);overflow:hidden;border:1px solid rgba(255,255,255,.08);transition:var(--transition);cursor:pointer;}
.dest-card:hover{transform:translateY(-8px) scale(1.01);box-shadow:0 0 25px rgba(255,153,51,.35),0 0 45px rgba(19,136,8,.25);border-color:var(--saffron);}
.dest-card .img-wrap{overflow:hidden;height:190px;position:relative;}
.dest-card img{width:100%;height:100%;object-fit:cover;transition:transform .5s;}
.dest-card:hover img{transform:scale(1.12);}
.dest-card .price-tag{position:absolute;top:12px;right:12px;background:linear-gradient(135deg,var(--saffron),var(--gold));color:var(--navy);padding:6px 14px;border-radius:20px;font-weight:700;font-size:.85rem;}
.dest-card .card-body{padding:18px 20px;}
.dest-card h4{font-size:1.15rem;margin-bottom:6px;}
.dest-card p{color:var(--text-muted);font-size:.87rem;margin-bottom:12px;min-height:36px;}
.dest-card .card-footer{display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:var(--text-muted);}
.dest-card .card-footer i{color:var(--green);margin-right:5px;}

/* Offers */
.offers-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:30px;}
.offer-card{position:relative;border-radius:var(--radius);overflow:hidden;height:280px;box-shadow:var(--shadow);transition:.4s;}
.offer-card:hover{box-shadow:0 0 35px rgba(255,153,51,.3);}
.offer-card img{width:100%;height:100%;object-fit:cover;filter:brightness(.55);transition:.5s;}
.offer-card:hover img{transform:scale(1.08);}
.offer-content{position:absolute;bottom:0;left:0;padding:24px;z-index:2;}
.offer-badge{background:var(--green);color:#fff;padding:5px 14px;border-radius:20px;font-weight:700;font-size:.8rem;margin-bottom:10px;display:inline-block;}
.offer-content h3{font-size:1.4rem;margin-bottom:6px;}
.offer-content p{color:var(--text-light);font-size:.88rem;}
.offer-expiry{position:absolute;top:16px;left:16px;background:rgba(0,0,0,.5);padding:4px 12px;border-radius:12px;font-size:.75rem;z-index:2;}

/* Forms */
.form-section{max-width:900px;}
.glass-form{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:40px;backdrop-filter:blur(10px);transition:.4s;}
.glass-form:hover{box-shadow:0 0 40px rgba(255,153,51,.12);}
.glass-form h3{margin-bottom:20px;color:var(--saffron);}
.form-row{display:flex;gap:20px;flex-wrap:wrap;}
.form-group{flex:1;min-width:220px;margin-bottom:20px;}
.form-group.full{width:100%;}
.form-group label{display:block;margin-bottom:8px;font-size:.9rem;color:var(--text-muted);}
.form-group input, .form-group select, .form-group textarea{
  width:100%;padding:12px 16px;border-radius:10px;border:1px solid rgba(255,255,255,.15);
  background:rgba(255,255,255,.04);color:var(--white);outline:none;font-family:inherit;transition:.3s;
}
.form-group input:focus, .form-group textarea:focus, .form-group select:focus{border-color:var(--saffron);box-shadow:0 0 0 3px rgba(255,153,51,.15);}
.full-btn{width:100%;justify-content:center;margin-top:10px;}

/* Contact */
.contact-wrap{display:grid;grid-template-columns:1fr 1fr;gap:40px;}
.contact-info{display:flex;flex-direction:column;gap:18px;}
.info-card{display:flex;gap:16px;align-items:flex-start;background:rgba(255,255,255,.05);padding:18px;border-radius:14px;border:1px solid rgba(255,255,255,.08);transition:.3s;}
.info-card:hover{border-color:var(--saffron);box-shadow:0 0 20px rgba(255,153,51,.15);}
.info-card i{font-size:1.4rem;color:var(--saffron);margin-top:4px;}
.info-card h4{margin-bottom:4px;}
.info-card p{color:var(--text-muted);font-size:.9rem;}
.social-row{display:flex;gap:14px;margin-top:6px;}
.social-row a{width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.08);display:flex;align-items:center;justify-content:center;transition:.3s;}
.social-row a:hover{background:var(--saffron);color:var(--navy);box-shadow:0 0 20px rgba(255,153,51,.5);}
.map-frame{width:100%;height:220px;border:0;border-radius:14px;margin-top:6px;filter:invert(90%) hue-rotate(180deg);}

/* Footer */
.footer{background:#071527;padding-top:50px;position:relative;z-index:1;}
.footer-content{max-width:1300px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px;padding:30px 5% 20px;}
.footer-col h3,.footer-col h4{margin-bottom:16px;}
.footer-col p{color:var(--text-muted);font-size:.9rem;line-height:1.6;}
.footer-col a{display:block;color:var(--text-muted);margin-bottom:10px;transition:.3s;font-size:.9rem;}
.footer-col a:hover{color:var(--saffron);}
.footer-bottom{text-align:center;padding:20px;color:var(--text-muted);font-size:.85rem;border-top:1px solid rgba(255,255,255,.06);margin-top:20px;}

/* Modal */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.7);backdrop-filter:blur(6px);display:none;align-items:center;justify-content:center;z-index:2000;padding:20px;}
.modal-overlay.show{display:flex;animation:fadeIn .3s ease;}
.modal-box{background:var(--navy-light);max-width:700px;width:100%;border-radius:20px;overflow:hidden;display:grid;grid-template-columns:1fr 1fr;position:relative;box-shadow:0 0 50px rgba(255,153,51,.2);}
.modal-box img{width:100%;height:100%;object-fit:cover;}
.modal-info{padding:30px;}
.modal-tag{color:var(--text-muted);margin-bottom:16px;}
.modal-meta{display:flex;flex-direction:column;gap:10px;margin-bottom:24px;color:var(--text-light);}
.modal-meta i{color:var(--saffron);margin-right:8px;}
.modal-close{position:absolute;top:12px;right:16px;font-size:1.8rem;cursor:pointer;color:#fff;z-index:5;}

/* Toast */
.toast{position:fixed;bottom:30px;right:30px;background:linear-gradient(135deg,var(--green),#0e6e07);color:#fff;padding:16px 24px;border-radius:12px;box-shadow:var(--shadow);transform:translateY(100px);opacity:0;transition:.4s;z-index:3000;}
.toast.show{transform:translateY(0);opacity:1;}

/* ============ ADMIN PANEL ENHANCEMENTS ============ */
.admin-login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;position:relative;z-index:1;}
.login-box{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);padding:45px;border-radius:20px;max-width:400px;width:100%;backdrop-filter:blur(12px);text-align:center;box-shadow:0 0 40px rgba(255,153,51,.15),0 0 70px rgba(19,136,8,.1);transition:.4s;}
.login-box:hover{box-shadow:0 0 55px rgba(255,153,51,.25),0 0 90px rgba(19,136,8,.2);}
.login-box i.fa-shield-halved{font-size:2.5rem;color:var(--saffron);margin-bottom:14px;}
.login-box input{width:100%;margin-bottom:16px;padding:12px 16px;border-radius:10px;border:1px solid rgba(255,255,255,.15);background:rgba(255,255,255,.04);color:#fff;outline:none;transition:.3s;}
.login-box input:focus{border-color:var(--saffron);box-shadow:0 0 0 3px rgba(255,153,51,.15);}
.login-error{color:#ff6b6b;font-size:.85rem;margin-bottom:10px;height:16px;}
.admin-dash{display:none;padding:90px 4% 40px;max-width:1400px;margin:0 auto;position:relative;z-index:1;}
.dash-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px;flex-wrap:wrap;gap:12px;}
.tabs{display:flex;gap:10px;margin-bottom:30px;flex-wrap:wrap;}
.tab-btn{padding:10px 20px;border-radius:30px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);cursor:pointer;color:var(--text-light);transition:.3s;}
.tab-btn:hover{border-color:var(--saffron);box-shadow:0 0 15px rgba(255,153,51,.25);}
.tab-btn.active{background:linear-gradient(135deg,var(--saffron),var(--gold));color:var(--navy);font-weight:600;box-shadow:0 0 20px rgba(255,153,51,.4);}
.tab-content{display:none;}
.tab-content.active{display:block;animation:fadeIn .4s;}
.admin-table{width:100%;border-collapse:collapse;background:rgba(255,255,255,.04);border-radius:12px;overflow:hidden;margin-top:10px;}
.admin-table th,.admin-table td{padding:12px 16px;text-align:left;border-bottom:1px solid rgba(255,255,255,.08);font-size:.9rem;}
.admin-table th{background:rgba(255,255,255,.06);color:var(--saffron);}
.admin-table tbody tr{transition:.25s;}
.admin-table tbody tr:hover{background:rgba(255,153,51,.07);}
.admin-table img{width:60px;height:45px;object-fit:cover;border-radius:6px;}
.action-btns button{border:none;padding:6px 12px;border-radius:6px;margin-right:6px;cursor:pointer;font-size:.8rem;transition:.3s;}
.edit-btn{background:var(--gold);color:#000;}
.edit-btn:hover{box-shadow:0 0 12px rgba(212,175,55,.6);}
.del-btn{background:#e74c3c;color:#fff;}
.del-btn:hover{box-shadow:0 0 12px rgba(231,76,60,.6);}
.add-panel{background:rgba(255,255,255,.05);padding:24px;border-radius:14px;margin-bottom:24px;border:1px solid rgba(255,255,255,.1);transition:.3s;}
.add-panel:hover{box-shadow:0 0 25px rgba(255,153,51,.1);}
.add-panel h4{margin-bottom:16px;color:var(--green);}
.table-wrap{overflow-x:auto;}
.logout-btn{background:#e74c3c;color:#fff;border:none;padding:10px 20px;border-radius:30px;cursor:pointer;font-weight:600;transition:.3s;}
.logout-btn:hover{box-shadow:0 0 20px rgba(231,76,60,.5);}

/* ============ RESPONSIVE ============ */
@media (max-width:1024px){
  .contact-wrap{grid-template-columns:1fr;}
  .hero h1{font-size:3rem;}
}
@media (max-width:768px){
  .nav-links{position:fixed;top:0;right:-100%;height:100vh;width:75%;background:var(--navy-light);flex-direction:column;padding:100px 30px;gap:26px;transition:right .4s;box-shadow:-10px 0 30px rgba(0,0,0,.4);}
  .nav-links.show{right:0;}
  .hamburger{display:flex;}
  .hero h1{font-size:2.3rem;}
  .modal-box{grid-template-columns:1fr;}
  .modal-box img{height:200px;}
  .footer-content{grid-template-columns:1fr;text-align:center;}
  .stats{gap:26px;}
}
@media (max-width:480px){
  .hero-desc{font-size:.95rem;}
  .btn{padding:12px 22px;font-size:.9rem;}
  .section{padding:60px 5%;}
}