:root {
    --primary: #7b1e3a;   /* Deep maroon */
    --secondary: #f2c94c; /* Soft gold */
    --accent: #fdf2e3;    /* Cream */
    --dark: #2b1b1b;
    --light: #fffaf3;

    /* ADD THESE (to avoid breaking existing CSS) */
    --white: #ffffff;
    --gold: #f2c94c;
    --text-dark: #2b1b1b;

    --shadow-light: rgba(0, 0, 0, 0.08);
    --shadow-medium: rgba(0, 0, 0, 0.15);
    --shadow-blue: rgba(123, 30, 58, 0.25);
}

html, body{
    width:100%;
    overflow-x:hidden;
    color:var(--text-dark); /* ✅ FIX */
    scroll-behavior: smooth;
}


/* RESET */
*{
    margin:0;
    padding:0;
    box-sizing:border-box;
    font-family:"Poppins",Arial;
}

body{
    background:var(--accent);
    color:var(--text-dark);
}


/* ---------- HERO IMAGE SECTION ---------- */
.hero-section{
    position: relative;
    width: 100%;
    min-height: 700px;
    overflow: hidden;
    padding: 0;
    margin: 0;
    background: #fff;
}

.hero-section::before{
    content: "";
    position: absolute;
    inset: 0;
    border: 3px solid rgba(0,0,0,0.2);
    z-index: 3;
    pointer-events: none;
}

.hero-slider{
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.slides{
    display: flex;
    width: 100%;
    height: 100%;
    transition: transform .6s ease-in-out;
}

.hero-slide{
    flex: 0 0 100%;
    width: 100%;
    min-height: 700px;
    display: flex;
    flex-direction: column;
    background: #fff;
    overflow: hidden;
}

/* Image */
.hero-slide img{
    width: 100%;
    height: 620px;
    object-fit: contain;
    object-position: center;
    display: block;
    margin: 0;
    transform: none;
}

/* Caption below image */
.caption{
    width: 100%;
    min-height: 70px;
    background: #000;
    color: #fff;
    font-size: 20px;
    font-weight: 600;

    display: flex;
    align-items: center;
    justify-content: center;

    text-align: center;
    padding: 12px 18px;
    box-sizing: border-box;

    line-height: 1.4;
    white-space: normal;
    overflow: visible;
}

.hero-section::after{
    display: none;
}

/* Tablet */
@media(max-width: 900px){
    .hero-section,
    .hero-slide{
        min-height: 560px;
    }

    .hero-slide img{
        height: 480px;
    }

    .caption{
        min-height: 80px;
        font-size: 18px;
    }
}

/* Mobile */
@media(max-width: 768px){
    .hero-section,
    .hero-slide{
        min-height: 500px;
    }

    .hero-slide img{
        height: 400px;
    }

    .caption{
        min-height: 100px;
        font-size: 16px;
        padding: 12px 14px;
    }
}

/* Small Mobile */
@media(max-width: 480px){
    .hero-section,
    .hero-slide{
        min-height: 460px;
    }

    .hero-slide img{
        height: 340px;
    }

    .caption{
        min-height: 120px;
        font-size: 15px;
        padding: 12px;
    }
}

/* Arrow Buttons */
/* Arrow Buttons */
.slider-btn{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0,0,0,0.5);
    color: #fff;
    border: none;
    font-size: 28px;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    border-radius: 50%;
    transition: 0.3s;
}

.slider-btn:hover{
    background: rgba(0,0,0,0.8);
}

.prev{
    left: 15px;
}

.next{
    right: 15px;
}

/* Tablet */
@media(max-width: 900px){
    .slider-btn{
        width: 42px;
        height: 42px;
        font-size: 24px;
    }

    .prev{
        left: 10px;
    }

    .next{
        right: 10px;
    }
}

/* Mobile */
@media(max-width: 768px){
    .slider-btn{
        width: 36px;
        height: 36px;
        font-size: 20px;
        background: rgba(0,0,0,0.6);
    }

    .prev{
        left: 8px;
    }

    .next{
        right: 8px;
    }
}

/* Small Mobile */
@media(max-width: 480px){
    .slider-btn{
        width: 32px;
        height: 32px;
        font-size: 18px;
        background: rgba(0,0,0,0.7);
    }

    .prev{
        left: 6px;
    }

    .next{
        right: 6px;
    }
}

/* ---------- INTRO TEXT SECTION SEPARATE ---------- */
.intro-content-section{
    width:100%;
    padding:50px 15px;
    margin:0;
    display:flex;
    justify-content:center;
    align-items:center;
    position:relative;
    overflow:hidden;
    z-index:1;
    background: var(--accent);
}

/* SOFT GLOW BLOBS */
.intro-content-section::before{
    content:"";
    position:absolute;
    width:350px;
    height:350px;
    background:var(--secondary);
    opacity:0.12;
    filter:blur(100px);
    top:-120px;
    left:-120px;
}

.intro-content-section::after{
    content:"";
    position:absolute;
    width:260px;
    height:260px;
    
    opacity:0.10;
    filter:blur(90px);
    bottom:-100px;
    right:-100px;
}

/* MAIN CARD (NO FLOATING) */
.intro-content-box{
    max-width:780px;
    width:100%;
    text-align:center;
    padding:35px 28px;
    border-radius:20px;
    backdrop-filter:blur(14px);
    background:rgba(255,255,255,0.85);
    border:1px solid rgba(0,0,0,0.05);
    box-shadow:0 10px 25px rgba(0,0,0,0.10);
    transition:box-shadow 0.3s ease;
    position:relative;
    z-index:2;

    animation:none;   /* ❌ removed floating */
}

/* HOVER (ONLY SHADOW, NO MOVE) */
.intro-content-box:hover{
    transform:none;
    box-shadow:0 12px 30px rgba(0,0,0,0.15);
}

/* HEADING */
.intro-content-box h1{
    font-size:34px;
    font-weight:900;
    letter-spacing:0.5px;
    color:var(--primary);
    line-height:1.2;
}

.intro-content-box h1 span{
    color:var(--secondary);
}

/* SUB HEADING */
.intro-content-box h2{
    font-size:20px;
    margin-top:10px;
    color:var(--secondary);
    font-weight:600;
}

/* PARAGRAPH */
.intro-content-box p{
    font-size:15px;
    margin-top:10px;
    color:var(--dark);
    line-height:1.6;
    opacity:0.85;
}

/* BUTTON AREA */
.intro-buttons{
    margin-top:18px;
}

/* BUTTON BASE */
.intro-buttons a{
    text-decoration:none;
    padding:10px 22px;
    border-radius:40px;
    margin:6px;
    font-weight:700;
    display:inline-block;
    font-size:14px;
    transition:all 0.25s ease;
}

/* CALL BUTTON */
.intro-call-btn{
    background:var(--primary);
    color:var(--white);
    box-shadow:0 6px 16px rgba(123,30,58,0.25);
}

.intro-call-btn:hover{
    background:#5e162c;
    transform:translateY(-2px);
}

/* WHATSAPP BUTTON */
.intro-whatsapp-btn{
    background:#25D366;
    color:#ffffff;
    border:none;
    box-shadow:0 6px 16px rgba(37,211,102,0.3);
}

.intro-whatsapp-btn:hover{
    background:#1ebe5d;
    transform:translateY(-2px);
}

/* ---------- RESPONSIVE ---------- */

/* TABLET */
@media(max-width:900px){
    .intro-content-box h1{
        font-size:30px;
    }
}

/* MOBILE */
@media(max-width:768px){
    .intro-content-section{
        padding:35px 12px;
    }

    .intro-content-box{
        max-width:95%;
        padding:25px 16px;
    }

    .intro-content-box h1{
        font-size:26px;
    }

    .intro-content-box h2{
        font-size:17px;
    }

    .intro-content-box p{
        font-size:14px;
    }

    .intro-buttons a{
        padding:9px 18px;
        font-size:13px;
    }
}

/* SMALL MOBILE */
@media(max-width:480px){
    .intro-content-section{
        padding:30px 12px;
    }

    .intro-content-box{
        padding:22px 14px;
        border-radius:16px;
    }

    .intro-content-box h1{
        font-size:23px;
    }

    .intro-content-box h2{
        font-size:15px;
    }

    .intro-content-box p{
        font-size:13px;
    }

    .intro-buttons a{
        width:100%;
        max-width:230px;
        margin:5px auto;
        display:block;
    }
}


/* SECTION CARD */
.section-card{
    max-width:1200px;
    margin:40px auto;
    border-radius:20px;
    overflow:hidden;
    background:rgba(255,255,255,0.75);
    backdrop-filter:blur(10px);
    box-shadow:0 15px 40px var(--shadow-light);
    border:1px solid rgba(0,0,0,0.05);
    transition:0.3s;
}

/* Hover */
.section-card:hover{
    transform:translateY(-4px);
    box-shadow:0 25px 60px var(--shadow-medium);
}

/* INNER SECTIONS */
.section-card section{
    padding:50px 25px !important;
    background:transparent !important;
}

/* ABOUT SECTION */
.about-section {
  background: var(--light); /* clean base */
  padding: 70px 20px;
  position: relative;
  overflow: hidden;
}

/* subtle glow */
.about-section::before {
  content: "";
  position: absolute;
  width: 260px;
  height: 260px;
  background: var(--secondary);
  opacity:0.12;
  border-radius: 50%;
  top: -60px;
  left: -60px;
  filter: blur(70px);
}

/* CONTAINER */
.about-container {
  max-width: 1100px;
  margin: auto;
  display: flex;
  align-items: center;
  gap: 50px;
  flex-wrap: wrap;
  position: relative;
  z-index: 1;
}

/* IMAGE */
.about-image {
  flex: 1;
}

.image-box {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 12px 30px rgba(0,0,0,0.12);
}

.image-box img {
  width: 100%;
  display: block;
  transition: transform 0.4s ease;
}

.image-box:hover img {
  transform: scale(1.04);
}

/* BADGE */
.image-badge {
  position: absolute;
  bottom: 15px;
  left: 15px;
  background: var(--primary);
  color: var(--white);
  padding: 6px 14px;
  font-size: 12px;
  border-radius: 20px;
  box-shadow: 0 5px 15px rgba(0,0,0,0.2);
}

/* CONTENT */
.about-content {
  flex: 1;
}

.about-content h2 {
  font-size: 34px;
  color: var(--primary);
  margin-bottom: 8px;
}

/* TAGLINE */
.tagline {
  color: var(--secondary);
  font-weight: 600;
  margin-bottom: 16px;
}

/* TEXT */
.about-content p {
  color: var(--dark);
  line-height: 1.7;
  margin-bottom: 12px;
  opacity:0.85;
}

/* SERVICES CHIPS */
.about-services {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 18px 0;
}

.about-services span {
  background: var(--accent);
  color: var(--primary);
  padding: 6px 12px;
  border-radius: 20px;
  font-size: 12px;
  border: 1px solid rgba(0,0,0,0.05);
}

/* BUTTON */
.about-btn {
  display: inline-block;
  margin-top: 8px;
  padding: 11px 24px;
  background: var(--primary); /* solid color */
  color: var(--white);
  text-decoration: none;
  border-radius: 6px;
  transition: 0.25s ease;
  box-shadow: 0 6px 18px rgba(123,30,58,0.25);
}

.about-btn:hover {
  transform: translateY(-2px);
  background: #5e162c;
}

/* RESPONSIVE */
@media (max-width: 768px) {
  .about-container {
    flex-direction: column;
    text-align: center;
  }

  .about-content h2 {
    font-size: 26px;
  }

  .about-services {
    justify-content: center;
  }
}

/* ---------- DESTINATION GRID ---------- */
.travel-visa-section{
    padding:60px 8%;
    
}

/* TITLE */
.section-title{
    text-align:center;
    color:var(--primary); /* ✅ brand heading */
    margin-bottom:30px;
    font-weight:700;
}

/* GRID */
.tv-grid{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
    align-items:stretch;
}

/* CARD */
.tv-card{
    background:var(--white);
    border-radius:14px;
    overflow:hidden;
    box-shadow:0 6px 18px var(--shadow-light);
    transition:.3s ease;
    border:1px solid rgba(0,0,0,0.05);
    height:100%;

    display:flex;              /* 🔥 added */
    flex-direction:column;     /* 🔥 added */
}

.tv-card:hover{
    transform:translateY(-5px);
    box-shadow:0 12px 30px var(--shadow-medium);
}

/* IMAGE */
.tv-card img{
    width:100%;
    height:180px;
    object-fit:cover;
}

/* TEXT */
.tv-info{
    padding:14px;

    display:flex;              /* 🔥 added */
    flex-direction:column;     /* 🔥 added */
    flex-grow:1;               /* 🔥 added */
}

.tv-info h3{
    color:var(--primary);
    font-size:18px;
    font-weight:600;
}

.tv-info p{
    color:var(--dark);
    margin-top:6px;
    font-size:14px;
    opacity:0.8;
    flex-grow:1; /* 🔥 pushes button to bottom */
}

/* LINK */
.tv-link{
  text-decoration:none;
  color:inherit;
  display:block;
}

.tv-card{
  cursor:pointer;
}

/* OPTIONAL: subtle highlight on hover */
.tv-card:hover .tv-info h3{
    color:var(--secondary);
}

/* EXPLORE BUTTON */
.explore-btn{
    margin-top:12px;
    margin-left:auto; /* 🔥 KEY FIX (right align) */

    display:inline-block;
    padding:8px 14px;
    font-size:13px;
    font-weight:600;
    color:var(--primary);
    border:1px solid var(--primary);
    border-radius:20px;
    transition:0.25s ease;
}

/* HOVER */
.tv-card:hover .explore-btn{
    background:var(--primary);
    color:var(--white);
}

/* RESPONSIVE */
@media(max-width:992px){
    .tv-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:600px){
    .tv-grid{
        grid-template-columns:1fr;
    }
}

/* ---------- ACHIEVEMENTS ---------- */
.achievements{
    padding:80px 20px;
    text-align:center;
     /* ✅ clean cream background */
    position:relative;
    overflow:hidden;
}

/* subtle glow */
.achievements::before{
    content:"";
    position:absolute;
    width:300px;
    height:300px;
    background:var(--secondary);
    opacity:0.12;
    filter:blur(100px);
    top:-100px;
    left:-100px;
}

/* Header */
.achievements-header{
    max-width:650px;
    margin:auto;
    margin-bottom:50px;
}

.achievements-header h2{
    font-size:34px;
    color:var(--primary);
    font-weight:800;
}

.achievements-header p{
    margin-top:10px;
    color:var(--dark);
    opacity:0.8;
    font-size:15px;
}

/* Grid */
.achievements-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
    gap:25px;
    max-width:950px;
    margin:auto;
}

/* Box */
.achievement-box{
    background:var(--white);
    padding:30px 20px;
    border-radius:16px;
    box-shadow:0 8px 25px var(--shadow-light);
    transition:0.3s;
    position:relative;
    border:1px solid rgba(0,0,0,0.05);
}

/* Hover */
.achievement-box:hover{
    transform:translateY(-6px);
    box-shadow:0 18px 45px var(--shadow-medium);
}

/* Number */
.achievement-box h3{
    font-size:34px;
    color:var(--primary); /* ✅ strong branding */
    margin-bottom:6px;
    font-weight:800;
}

/* Add + symbol automatically */
.achievement-box h3::after{
    content:"+";
    font-size:20px;
    margin-left:2px;
    color:var(--secondary);
}

/* Text */
.achievement-box p{
    color:var(--dark);
    font-size:14px;
    opacity:0.8;
}

/* TOP ACCENT LINE */
.achievement-box::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:3px;
    background:var(--secondary); /* ✅ gold line */
    border-radius:16px 16px 0 0;
}

/* DIGIT WRAPPER */
.counter {
    display: flex;
    justify-content: center;
    gap: 3px;
    font-weight: bold;
}

/* EACH DIGIT */
.digit {
    width: 22px;
    height: 40px;
    overflow: hidden;
    position: relative;
}

/* SCROLLING NUMBERS */
.digit-inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    transition: transform 1.5s cubic-bezier(0.2, 0.8, 0.2, 1);
}

/* NUMBER STYLE */
.digit-inner span {
    display: block;
    height: 40px;
    line-height: 40px;
    color: var(--primary);
    font-size: 34px;
}

/* MOBILE */
@media(max-width:600px){
    .achievements{
        padding:60px 15px;
    }

    .achievements-header h2{
        font-size:26px;
    }

    .achievement-box h3{
        font-size:26px;
    }
}
/* WHY SECTION */
.why {
    padding: 90px 20px;
    text-align: center;
}

/* SECTION */
.why{
    padding:70px 20px;
    text-align:center;
    background:var(--accent);
    position:relative;
    overflow:hidden;
}

/* subtle background glow */
.why::before{
    content:"";
    position:absolute;
    width:280px;
    height:280px;
    background:var(--secondary);
    opacity:0.1;
    filter:blur(90px);
    top:-80px;
    left:-80px;
}

/* HEADER */
.section-header h2{
    color:var(--primary);
    font-size:32px;
    font-weight:800;
}

.section-header p{
    color:var(--dark);
    opacity:0.75;
    margin-top:8px;
    font-size:14px;
}

/* GRID */
.why-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 22px;
    max-width: 950px;
    margin: 35px auto 0;
}

/* CARD */
.why-card {
    background:var(--white);
    padding:26px 18px;
    border-radius:16px;
    border:1px solid rgba(0,0,0,0.05);
    box-shadow:0 8px 22px var(--shadow-light);
    transition:0.3s ease;
    position:relative;
}

/* TOP ACCENT LINE */
.why-card::before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:3px;
    background:var(--secondary);
    border-radius:16px 16px 0 0;
}

/* HOVER */
.why-card:hover {
    transform:translateY(-6px);
    box-shadow:0 18px 40px var(--shadow-medium);
}

/* ICON */
.why-icon {
    font-size:30px;
    margin-bottom:12px;
    display:inline-block;
    background:var(--accent);
    padding:10px;
    border-radius:50%;
}

/* TITLE */
.why-card h3 {
    color:var(--primary);
    margin-bottom:8px;
    font-size:18px;
    font-weight:700;
}

/* TEXT */
.why-card p {
    color:var(--dark);
    font-size:14px;
    opacity:0.8;
    line-height:1.5;
}
/* ICON CONTAINER */
.why-icon{
    width:55px;
    height:55px;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 auto 12px;

    background:var(--accent);
    border-radius:50%;
    font-size:22px;
    color:var(--primary);

    box-shadow:0 5px 15px var(--shadow-light);
    transition:0.3s;
}

/* HOVER EFFECT */
.why-card:hover .why-icon{
    background:var(--primary);
    color:var(--white);
    transform:scale(1.1);
}
/* MOBILE */
@media(max-width:600px){
    .section-header h2{
        font-size:26px;
    }
}


/* WRAPPER */
.testimonial-wrapper{
    overflow:hidden;
    width:100%;
    margin-top:30px;
}

/* TRACK */
.testimonial-track{
    display:flex;
    gap:20px;
    width:max-content;
    animation:scrollLeft 25s linear infinite;
}

/* CARD */
.review-card{
    min-width:260px;
    max-width:260px;
    background:var(--white);
    padding:20px;
    border-radius:14px;
    box-shadow:0 8px 20px var(--shadow-light);
    border:1px solid rgba(0,0,0,0.05);
    transition:0.3s;
}

.review-card:hover{
    transform:translateY(-5px);
    box-shadow:0 15px 35px var(--shadow-medium);
}

/* TEXT */
.review-card p{
    font-size:14px;
    color:var(--dark);
    margin-bottom:10px;
}

/* NAME + STARS */
.review-card span{
    font-size:13px;
    color:var(--primary);
    font-weight:600;
}

/* ANIMATION */
@keyframes scrollLeft{
    0%{
        transform:translateX(0);
    }
    100%{
        transform:translateX(-50%);
    }
}











/* ---------- RESPONSIVE ---------- */
@media(max-width:992px){
.services{grid-template-columns:1fr 1fr;}
.visa-grid{grid-template-columns:1fr;}
.steps{grid-template-columns:1fr 1fr;}
.dest-grid{grid-template-columns:1fr 1fr;}
.test-grid{grid-template-columns:1fr;}
.stats{grid-template-columns:1fr 1fr;}
.contact-box{grid-template-columns:1fr;}
.footer-box{width:100%;margin-top:20px;}
}

/* ====================== FULL RESPONSIVE ENHANCEMENTS ===================== */

/* -------- Top Bar Responsive -------- */
@media(max-width:900px){
    .top-bar{
        justify-content:center;
        text-align:center;
        gap:6px;
    }
}

/* -------- Hero Better Responsive -------- */
@media(max-width:1024px){
    
}

/* Tablet + Small Laptop */
@media(max-width:900px){
    
}

/* -------- Mobile Devices -------- */
@media(max-width:768px){

    .navbar{
        padding:10px 16px;
    }

   
}

/* -------- Small Mobile -------- */
@media(max-width:520px){

   
}

/* -------- Extra Small -------- */
@media(max-width:400px){

   
}


/* ================= FULL RESPONSIVE FIXES ================= */

/* Fix broken media query syntax */
@media(max-width:992px){
    .services{grid-template-columns:1fr 1fr;}
    .visa-grid{grid-template-columns:1fr;}
    .steps{grid-template-columns:1fr 1fr;}
    .test-grid{grid-template-columns:1fr;}
    .stats{grid-template-columns:1fr 1fr;}
    .dest-grid{grid-template-columns:1fr 1fr;}
    .contact-box{grid-template-columns:1fr;}
}

/* -------- Tablets -------- */
@media(max-width:800px){
  .section,
  .process,
  .visa-container,
  .testimonials,
  .cta,
  .travel-visa-section{
      padding:60px 8%;
  }

  .services{
      grid-template-columns:repeat(2,1fr);
  }

  .stats{
      grid-template-columns:repeat(2,1fr);
  }

  .steps{
      grid-template-columns:repeat(2,1fr);
  }

  .visa-grid{
      grid-template-columns:1fr;
  }

  .tv-grid{
      grid-template-columns:repeat(2,1fr) !important;
  }
}

/* -------- Mobile -------- */
@media(max-width:600px){

  .section,
  .process,
  .visa-container,
  .testimonials,
  .cta,
  .travel-visa-section{
      padding:55px 6%;
  }

  .stats{
      grid-template-columns:1fr;
  }

  .services{
      grid-template-columns:1fr;
  }

  .steps{
      grid-template-columns:1fr;
  }

  .tv-grid{
      grid-template-columns:1fr !important;
  }

  .contact-box{
      padding:22px;
  }

  .contact-box h3{
      font-size:22px;
  }

  .test-grid{
      grid-template-columns:1fr;
  }
}

/* -------- Small Mobile -------- */
@media(max-width:420px){

  .section h2{
      font-size:22px;
  }

  .tv-card img{
      height:160px;
  }

  .visa-card{
      padding:15px;
  }

  .cta button{
      width:100%;
  }
}
