:root{
  --purple:#2d1640;
  --purple-2:#4a2670;
  --orange:#fdb347;
  --orange-2:#f58f1f;
  --cream:#fffaf2;
  --text:#3b3347;
}
html{scroll-behavior:smooth}
body{font-family:'Poppins',sans-serif;color:var(--text);background:var(--cream);padding-top:76px}
h1,h2,h3,h4,h5{font-family:'Oswald',sans-serif;color:var(--purple);letter-spacing:.5px}
section{padding:90px 0}
.text-orange{color:var(--orange)!important}
.section-tag{display:inline-block;font-weight:600;font-size:.8rem;letter-spacing:3px;text-transform:uppercase;color:var(--orange-2);margin-bottom:8px}
.section-title{font-size:2.5rem;text-transform:uppercase;margin-bottom:14px}
.section-title::after{content:"";display:block;width:70px;height:4px;background:var(--orange);margin-top:12px;border-radius:2px}
.text-center .section-title::after{margin-left:auto;margin-right:auto}

/* Buttons */
.btn-ptc{background:var(--orange);color:var(--purple);font-weight:600;border:2px solid var(--orange);padding:12px 30px;border-radius:50px;transition:.3s}
.btn-ptc:hover{background:var(--orange-2);border-color:var(--orange-2);color:#fff;transform:translateY(-2px)}
.btn-outline-ptc{border:2px solid #fff;color:#fff;font-weight:600;padding:12px 30px;border-radius:50px;transition:.3s}
.btn-outline-ptc:hover{background:#fff;color:var(--purple)}

/* Navbar */
.navbar{background:var(--purple);box-shadow:0 4px 18px rgba(0,0,0,.2);padding:8px 0}
.navbar-brand img{height:52px;width:auto;background:var(--cream);padding:2px 6px;border-radius:8px}
.navbar-brand span{color:#fff;font-family:'Oswald',sans-serif;font-size:1.2rem;letter-spacing:1px}
.navbar .nav-link{color:#e9defa;font-weight:500;margin:0 6px;position:relative}
.navbar .nav-link:hover,.navbar .nav-link.active{color:var(--orange)}
.navbar-toggler{border-color:var(--orange)}
.navbar-toggler-icon{filter:invert(1)}

/* Hero */
.hero{min-height:calc(100vh - 76px);display:flex;align-items:center;color:#fff;position:relative;overflow:hidden;
  background:linear-gradient(135deg,rgba(45,22,64,.96) 0%,rgba(74,38,112,.9) 55%,rgba(245,143,31,.85) 130%),
  url("https://images.unsplash.com/photo-1528181304800-259b08848526?auto=format&fit=crop&w=1600&q=70") center/cover}
.hero::after{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;border-radius:50%;background:var(--orange);opacity:.18}
.hero h1{color:#fff;font-size:clamp(2.4rem,6vw,4.4rem);text-transform:uppercase;line-height:1.1}
.hero p.lead{color:#eadff7;max-width:560px}
.hero-badge{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3);padding:6px 16px;border-radius:50px;font-size:.85rem;display:inline-block;margin-bottom:18px}
.hero-card{background:rgba(255,255,255,.1);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.25);border-radius:20px;padding:30px}
.hero-card img{width:100%;max-width:300px;display:block;margin:0 auto;background:var(--cream);border-radius:16px;padding:14px}

/* About */
.about-box{background:var(--purple);color:#fff;border-radius:20px;padding:36px;height:100%;position:relative;overflow:hidden}
.about-box h3{color:var(--orange)}
.about-box::after{content:"\f4d1";font-family:"bootstrap-icons";position:absolute;right:-10px;bottom:-30px;font-size:10rem;opacity:.07}
.check-list{list-style:none;padding:0}
.check-list li{padding:6px 0 6px 32px;position:relative}
.check-list li::before{content:"\f26a";font-family:"bootstrap-icons";position:absolute;left:0;color:var(--orange-2);font-size:1.2rem}

/* Stats */
.stats{background:linear-gradient(90deg,var(--purple),var(--purple-2));padding:60px 0;color:#fff}
.stats h2{color:var(--orange);font-size:3rem;margin:0}
.stats p{margin:0;color:#e1d4f2;text-transform:uppercase;letter-spacing:2px;font-size:.85rem}

/* Services */
.service-card{background:#fff;border-radius:18px;padding:34px 26px;height:100%;border-bottom:4px solid transparent;box-shadow:0 8px 28px rgba(45,22,64,.08);transition:.35s}
.service-card:hover{transform:translateY(-8px);border-bottom-color:var(--orange)}
.icon-box{width:68px;height:68px;border-radius:18px;display:grid;place-items:center;background:var(--purple);color:var(--orange);font-size:1.9rem;margin-bottom:18px;transition:.3s}
.service-card:hover .icon-box{background:var(--orange);color:var(--purple)}

/* Destinations */
.dest-card{border-radius:20px;overflow:hidden;position:relative;min-height:320px;color:#fff;display:flex;align-items:flex-end;box-shadow:0 10px 30px rgba(45,22,64,.2);transition:.35s}
.dest-card:hover{transform:scale(1.02)}
.dest-card .overlay{width:100%;padding:24px;background:linear-gradient(to top,rgba(45,22,64,.95),rgba(45,22,64,0))}
.dest-card h4{color:#fff;margin:0}
.dest-card span{color:var(--orange);font-size:.9rem}
.d1{background:linear-gradient(160deg,#6a3fa0,#2d1640)}
.d2{background:linear-gradient(160deg,#fdb347,#c2570e)}
.d3{background:linear-gradient(160deg,#1e8ea8,#2d1640)}
.d4{background:linear-gradient(160deg,#e0635a,#4a2670)}
.d5{background:linear-gradient(160deg,#3fa578,#2d1640)}
.d6{background:linear-gradient(160deg,#f58f1f,#4a2670)}
.dest-card .big-icon{position:absolute;top:18px;right:20px;font-size:4.5rem;opacity:.25}

/* Why us */
.why{background:#fff}
.why-item{display:flex;gap:16px;margin-bottom:26px}
.why-item i{flex:0 0 52px;height:52px;border-radius:50%;background:var(--orange);color:var(--purple);display:grid;place-items:center;font-size:1.4rem}
.why-item h5{margin-bottom:4px}

/* CTA */
.cta{background:linear-gradient(135deg,var(--orange),var(--orange-2));padding:70px 0;text-align:center}
.cta h2{color:var(--purple);font-size:2.4rem;text-transform:uppercase}
.btn-dark-ptc{background:var(--purple);color:#fff;border-radius:50px;padding:12px 32px;font-weight:600;border:2px solid var(--purple);transition:.3s}
.btn-dark-ptc:hover{background:transparent;color:var(--purple)}

/* Contact */
.contact-info{background:var(--purple);color:#fff;border-radius:20px;padding:36px;height:100%}
.contact-info h3{color:var(--orange)}
.contact-info a{color:#fff;text-decoration:none}
.contact-info a:hover{color:var(--orange)}
.ci-row{display:flex;gap:16px;margin-bottom:24px;align-items:flex-start}
.ci-row i{width:46px;height:46px;border-radius:12px;background:var(--orange);color:var(--purple);display:grid;place-items:center;font-size:1.2rem;flex:0 0 46px}
.contact-form{background:#fff;border-radius:20px;padding:36px;box-shadow:0 8px 28px rgba(45,22,64,.1)}
.form-control,.form-select{padding:12px 16px;border-radius:10px;border:1.5px solid #e4daf0}
.form-control:focus,.form-select:focus{border-color:var(--orange);box-shadow:0 0 0 .2rem rgba(253,179,71,.3)}
.map-wrap iframe{width:100%;height:280px;border:0;border-radius:20px;margin-top:40px;box-shadow:0 8px 28px rgba(45,22,64,.12)}

/* Footer */
footer{background:var(--purple);color:#cdbfe0;padding:50px 0 20px}
footer img{height:70px;background:var(--cream);padding:4px 8px;border-radius:10px}
footer a{color:#cdbfe0;text-decoration:none}
footer a:hover{color:var(--orange)}
footer h5{color:var(--orange)}
.social a{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;background:rgba(255,255,255,.1);margin-right:8px;color:#fff;transition:.3s}
.social a:hover{background:var(--orange);color:var(--purple)}
.copy{border-top:1px solid rgba(255,255,255,.15);margin-top:30px;padding-top:18px;font-size:.9rem}

/* Floating buttons */
.float-wa{position:fixed;right:18px;bottom:18px;z-index:99;width:56px;height:56px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;font-size:1.8rem;box-shadow:0 6px 18px rgba(0,0,0,.3);text-decoration:none}
.float-wa:hover{color:#fff;transform:scale(1.08)}

@media(max-width:991px){
  section{padding:65px 0}
  .section-title{font-size:2rem}
  .navbar-collapse{padding:14px 0}
  .hero::after{display:none}
}
@media(max-width:575px){
  .stats h2{font-size:2.2rem}
  .contact-form,.contact-info,.about-box{padding:24px}
}

/* ===== v2 upgrades: photos, gallery, packages, testimonials ===== */
.d1{background:url("https://images.unsplash.com/photo-1508009603885-50cf7c579365?auto=format&fit=crop&w=800&q=70") center/cover,linear-gradient(160deg,#6a3fa0,#2d1640)}
.d2{background:url("https://images.unsplash.com/photo-1589394815804-964ed0be2eb5?auto=format&fit=crop&w=800&q=70") center/cover,linear-gradient(160deg,#fdb347,#c2570e)}
.d3{background:url("https://images.unsplash.com/photo-1552465011-b4e21bf6e79a?auto=format&fit=crop&w=800&q=70") center/cover,linear-gradient(160deg,#1e8ea8,#2d1640)}
.d4{background:url("https://images.unsplash.com/photo-1528181304800-259b08848526?auto=format&fit=crop&w=800&q=70") center/cover,linear-gradient(160deg,#e0635a,#4a2670)}
.d5{background:url("https://images.unsplash.com/photo-1598935898639-81586f7d2129?auto=format&fit=crop&w=800&q=70") center/cover,linear-gradient(160deg,#3fa578,#2d1640)}
.d6{background:url("https://images.unsplash.com/photo-1537956965359-7573183d1f57?auto=format&fit=crop&w=800&q=70") center/cover,linear-gradient(160deg,#f58f1f,#4a2670)}
.dest-card .big-icon{display:none}
.dest-card{transition:.4s}
.dest-card:hover{transform:translateY(-8px) scale(1.02)}

/* Packages */
.pkg-card{background:#fff;border-radius:20px;overflow:hidden;box-shadow:0 10px 30px rgba(45,22,64,.1);height:100%;transition:.35s;display:flex;flex-direction:column}
.pkg-card:hover{transform:translateY(-8px);box-shadow:0 16px 40px rgba(45,22,64,.2)}
.pkg-img{height:210px;position:relative;background-size:cover!important;background-position:center!important}
.pkg-badge{position:absolute;top:14px;left:14px;background:var(--orange);color:var(--purple);font-weight:600;font-size:.78rem;padding:5px 14px;border-radius:50px}
.pkg-body{padding:24px;flex:1;display:flex;flex-direction:column}
.pkg-meta{display:flex;gap:16px;font-size:.85rem;color:#7b6f8c;margin-bottom:10px;flex-wrap:wrap}
.pkg-meta i{color:var(--orange-2)}
.pkg-body .btn{margin-top:auto}
.p1{background:url("https://images.unsplash.com/photo-1589394815804-964ed0be2eb5?auto=format&fit=crop&w=800&q=70"),linear-gradient(160deg,#fdb347,#c2570e)}
.p2{background:url("https://images.unsplash.com/photo-1508009603885-50cf7c579365?auto=format&fit=crop&w=800&q=70"),linear-gradient(160deg,#6a3fa0,#2d1640)}
.p3{background:url("https://images.unsplash.com/photo-1552465011-b4e21bf6e79a?auto=format&fit=crop&w=800&q=70"),linear-gradient(160deg,#1e8ea8,#2d1640)}

/* Gallery */
.gallery{background:var(--purple)}
.gallery .section-title,.gallery .section-tag{color:#fff}
.gallery .section-tag{color:var(--orange)}
.g-item{height:240px;border-radius:16px;background-size:cover!important;background-position:center!important;position:relative;overflow:hidden;transition:.4s;cursor:pointer}
.g-item.tall{height:504px}
.g-item::after{content:"\f52a";font-family:"bootstrap-icons";position:absolute;inset:0;display:grid;place-items:center;font-size:2.2rem;color:#fff;background:rgba(45,22,64,.55);opacity:0;transition:.3s}
.g-item:hover::after{opacity:1}
.g1{background:url("https://images.unsplash.com/photo-1537956965359-7573183d1f57?auto=format&fit=crop&w=800&q=70"),linear-gradient(160deg,#f58f1f,#4a2670)}
.g2{background:url("https://images.unsplash.com/photo-1528181304800-259b08848526?auto=format&fit=crop&w=800&q=70"),linear-gradient(160deg,#6a3fa0,#2d1640)}
.g3{background:url("https://images.unsplash.com/photo-1598935898639-81586f7d2129?auto=format&fit=crop&w=800&q=70"),linear-gradient(160deg,#3fa578,#2d1640)}
.g4{background:url("https://images.unsplash.com/photo-1552465011-b4e21bf6e79a?auto=format&fit=crop&w=800&q=70"),linear-gradient(160deg,#1e8ea8,#2d1640)}
.g5{background:url("https://images.unsplash.com/photo-1508009603885-50cf7c579365?auto=format&fit=crop&w=800&q=70"),linear-gradient(160deg,#e0635a,#4a2670)}
.g6{background:url("https://images.unsplash.com/photo-1589394815804-964ed0be2eb5?auto=format&fit=crop&w=800&q=70"),linear-gradient(160deg,#fdb347,#c2570e)}
@media(max-width:767px){.g-item.tall{height:240px}}

/* Testimonials */
.t-card{background:#fff;border-radius:20px;padding:32px;box-shadow:0 8px 28px rgba(45,22,64,.08);height:100%;position:relative}
.t-card::before{content:"\201C";position:absolute;top:-6px;right:24px;font-size:6rem;font-family:'Oswald',sans-serif;color:var(--orange);opacity:.35;line-height:1}
.stars{color:var(--orange-2);margin-bottom:10px}
.t-user{display:flex;align-items:center;gap:12px;margin-top:18px}
.t-user .av{width:46px;height:46px;border-radius:50%;background:var(--purple);color:var(--orange);display:grid;place-items:center;font-family:'Oswald',sans-serif}

/* Hero polish + waves */
.hero{background-attachment:scroll}
.hero-wave{position:absolute;bottom:-1px;left:0;width:100%;line-height:0;z-index:1}
.hero-wave svg{width:100%;height:70px;display:block}
.hero h1 span{background:linear-gradient(90deg,var(--orange),#ffd98a);-webkit-background-clip:text;background-clip:text;color:transparent}
.floaty{animation:floaty 4s ease-in-out infinite}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
.hero-card{box-shadow:0 20px 50px rgba(0,0,0,.35)}
.navbar{transition:.3s}
.navbar.scrolled{padding:2px 0;background:rgba(45,22,64,.97)}
