:root {
  --primary: #D4AF37;        /* luxury gold */
  --secondary: #C5A46D;      /* soft champagne gold */
  --accent: #8C7853;         /* muted bronze */

  --dark: #0A0A0A;           /* deep black */
  --dark-soft: #121212;      /* soft dark background */
  --dark-elevated: #1E1E1E;  /* cards / sections */

  --text-main: #F5F5F5;      /* primary text */
  --text-muted: #A8A8A8;     /* secondary text */

  --white: #FFFFFF;

  --shadow-light: rgba(0, 0, 0, 0.4);
  --shadow-medium: rgba(0, 0, 0, 0.7);

  --border-light: rgba(255, 255, 255, 0.08);
}
html, body{
    width:100%;
    overflow-x:hidden;
     scroll-behavior: smooth;
}







/* RESET */
*{margin:0;padding:0;box-sizing:border-box;font-family:"Poppins",Arial;}
body{background:#ffffff;color:#222;}








/* ---------- HERO ---------- */
.hero-section{
  position:relative;
  width:100%;
  height:700px;
  overflow:hidden;
  color:var(--text-main);
  display:flex;
  align-items:center;
  padding:40px 60px;
  background: transparent;
}

/* ---------- BACKGROUND SLIDER ---------- */
.hero-slider{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  overflow:hidden;
  z-index:-1;
}

.slides{
  display:flex;
  height:100%;
  width:100%;
  transition:transform .6s ease-in-out;
}

.hero-slide{
  flex:0 0 100%;
  width:100%;
}

.hero-slide img{
  width:100%;
  height:100%;
  object-fit:cover; 
}

/* 🎨 PREMIUM OVERLAY (dark + gold tint) */
.hero-section::after{
  content:"";
  position:absolute;
  inset:0;

  background: linear-gradient(
    120deg,
    rgba(10,10,10,0.75),
    rgba(10,10,10,0.55),
    rgba(212,175,55,0.15)
  );

  backdrop-filter: blur(3px);
  -webkit-backdrop-filter: blur(3px);
}

/* ---------- LEFT TEXT ---------- */
.hero-left{
  width:55%;
  position:relative;
  z-index:2;
}

.hero-left h1{
  font-size:48px;
  font-weight:800;
  line-height:1.2;
}

/* Kanoon → GOLD GRADIENT */
.kanoon {
  /* fallback color */
  color: var(--primary);

  /* gradient text (supported browsers) */
  background: linear-gradient(90deg, var(--primary), var(--secondary));
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Path → MUTED GOLD */
.path {
  color: var(--accent);
}

/* Subheading */
.hero-left h2{
  font-size:26px;
  margin-top:10px;
  color:var(--secondary);
}

/* Paragraph */
.hero-left p{
  font-size:18px;
  margin-top:10px;
  color:var(--text-muted);
}

/* ---------- BUTTONS ---------- */
.hero-buttons{
  margin-top:25px;
}

.hero-buttons a{
  text-decoration:none;
  padding:12px 26px;
  border-radius:30px;
  margin-right:10px;
  font-size:16px;
  font-weight:600;
  transition:.3s ease;
}

/* Primary Button (Luxury Gold) */
.primary-btn{
  background: linear-gradient(135deg, var(--primary), var(--secondary));
  color: var(--dark);
  box-shadow: 0 8px 25px rgba(212,175,55,0.35);
}

.primary-btn:hover{
  transform: translateY(-3px);
  box-shadow: 0 12px 30px rgba(212,175,55,0.55);
}

/* Secondary Button */
.secondary-btn{
  border:1px solid var(--border-light);
  color:var(--text-main);
  background: transparent;
}

.secondary-btn:hover{
  background: var(--dark-elevated);
  border-color: var(--primary);
  color: var(--primary);
}

/* MOBILE */
@media(max-width:900px){
  .hero-section{
    height:480px;
    text-align:center;
    padding:30px 20px;
  }

  .hero-left{
    width:100%;
  }

  .hero-left h1{
    font-size:34px;
  }

  .hero-left p{
    font-size:16px;
  }
}



/* ---------- SECTION ---------- */
.section{
    padding:70px 10%;
    text-align:center;

    /* 🔥 DARK BACKGROUND */
    background: var(--dark);
}

.section h2{
    color: var(--primary);
    font-size:30px;
    letter-spacing: 1px;
}

/* ---------- STATS ---------- */
.stats{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:25px;
    margin-top:40px;
}

/* STAT BOX */
.stat-box{
    padding:30px;
    border-radius:14px;

    /* 🔥 CARD STYLE */
    background: var(--dark-elevated);

    border: 1px solid var(--border-light);
    box-shadow: 0 10px 30px var(--shadow-medium);

    transition: all 0.3s ease;
}

/* 🔥 HOVER EFFECT */
.stat-box:hover{
    transform: translateY(-6px);
    box-shadow: 0 15px 40px rgba(212,175,55,0.15);
}

/* ICON */
.stat-box i{
    font-size:38px;

    /* 🔥 GOLD ICON */
    color: var(--primary);

    margin-bottom: 10px;
}

/* NUMBER */
.stat-box h3{
    margin-top:10px;
    font-size:28px;

    /* 🔥 WHITE TEXT */
    color: var(--text-main);
}

/* TEXT */
.stat-box p{
    color: var(--text-muted);
    font-size: 14px;
}





/* ---------- SERVICES WRAPPER ---------- */
.services-section{
    position: relative;
    background: linear-gradient(135deg, var(--dark), var(--dark-soft));
     padding: 90px 10%;
    overflow: hidden;
    z-index: 1;
}

/* ---------- GLOW EFFECT (GOLD TONE) ---------- */
.services-section::before{
    content:"";
    position:absolute;
    width:500px;
    height:500px;
    
    top:-120px;
    left:-120px;
    z-index:0;
}

.services-section::after{
    content:"";
    position:absolute;
    width:400px;
    height:400px;
   
    bottom:-120px;
    right:-120px;
    z-index:0;
}

/* keep content above glow */
.services-section > *{
    position: relative;
    z-index: 2;
}

/* ---------- TITLE ---------- */
.services-section .section-title{
    text-align: center;
    color: var(--text-main);
    font-size: 32px;
    font-weight: 800;
    margin-bottom: 40px;
    letter-spacing: 1.5px;
}

/* underline (GOLD GRADIENT) */
.services-section .section-title::after{
    content:"";
    display:block;
    width:80px;
    height:4px;
    margin:12px auto 0;
    background: linear-gradient(to right, var(--primary), var(--secondary));
    border-radius:10px;
}

/* hover animation */
.services-section:hover .section-title{
    letter-spacing:2px;
    transition:.3s ease;
}

/* ---------- GRID ---------- */
.services-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}

/* ---------- CARD ---------- */
.service-card{
    background: var(--dark-elevated);
    border-radius:16px;
    overflow:hidden;
    box-shadow: 0 10px 30px var(--shadow-light);
    transition:.4s ease;
    text-align:center;
    display:flex;
    flex-direction:column;
    cursor:pointer;
    border:1px solid var(--border-light);
}

/* hover */
.service-card:hover{
    transform:translateY(-10px) scale(1.02);
    box-shadow: 0 20px 45px var(--shadow-medium);
    border-color: rgba(212,175,55,0.4);
}

/* ---------- IMAGE ---------- */
.service-card img{
    width:100%;
    height:190px;
    object-fit:cover;
    transition:.4s;
}

/* image zoom */
.service-card:hover img{
    transform:scale(1.05);
}

/* ---------- TEXT ---------- */
.service-card h3{
    margin:16px 10px 6px;
    font-size:20px;
    color: var(--primary);
}

.service-card p{
    font-size:14px;
    color: var(--text-muted);
    padding:0 15px;
    line-height:1.5;
    flex-grow:1;
}

/* ---------- BUTTON ---------- */
.service-card a{
    display:inline-block;
    margin:15px auto 20px;
    padding:10px 20px;
    border-radius:8px;
    background: linear-gradient(to right, var(--primary), var(--secondary));
    color: var(--dark);
    text-decoration:none;
    font-weight:600;
    font-size:14px;
    transition:.3s;
}

/* button hover */
.service-card a:hover{
    background: linear-gradient(to right, var(--secondary), var(--accent));
    transform:translateY(-2px);
}

/* ---------- RESPONSIVE ---------- */
@media(max-width:992px){
    .services-grid{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:600px){
    .services-grid{
        grid-template-columns:1fr;
    }

    .services-section{
        padding:60px 15px;
    }

    .services-section .section-title{
        font-size:26px;
    }
}



/* ---------- WHY SECTION ---------- */
.why-section{
    position: relative;
    padding: 90px 10%;
    background: linear-gradient(135deg, var(--dark), var(--dark-soft));
    overflow: hidden;
}

/* subtle gold glow */
.why-section::before{
    content:"";
    position:absolute;
    width:500px;
    height:500px;
    
    top:-150px;
    right:-150px;
}

/* ---------- TITLE ---------- */
.why-section .section-title{
    text-align:center;
    font-size:34px;
    font-weight:800;
    color: var(--text-main);
    margin-bottom:50px;
    letter-spacing:1.5px;
}

.why-section .section-title::after{
    content:"";
    display:block;
    width:90px;
    height:4px;
    margin:12px auto 0;
    background: linear-gradient(to right, var(--primary), var(--secondary));
    border-radius:10px;
}

/* ---------- GRID ---------- */
.why-grid{
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    gap:25px;
}

/* ---------- CARD ---------- */
.why-card{
    background: var(--dark-elevated);
    border-radius:16px;
    padding:30px 20px;
    text-align:center;
    border:1px solid var(--border-light);
    transition:.4s ease;
    box-shadow: 0 10px 30px var(--shadow-light);
    position: relative;
}

/* hover effect */
.why-card:hover{
    transform: translateY(-8px);
    box-shadow: 0 20px 40px var(--shadow-medium);
    border-color: rgba(212,175,55,0.4);
}

/* icon */
.why-card span{
    display:inline-block;
    font-size:22px;
    margin-bottom:10px;
    color: var(--primary);
}

/* title */
.why-card h3{
    font-size:20px;
    margin-bottom:8px;
    color: var(--primary);
}

/* text */
.why-card p{
    font-size:14px;
    color: var(--text-muted);
    line-height:1.5;
}

/* ---------- RESPONSIVE ---------- */
@media(max-width:992px){
    .why-grid{
        grid-template-columns: repeat(2,1fr);
    }
}

@media(max-width:600px){
    .why-grid{
        grid-template-columns:1fr;
    }

    .why-section{
        padding:70px 20px;
    }

    .why-section .section-title{
        font-size:28px;
    }
}

/* ---------- PROCESS SECTION ---------- */
.process-section{
    padding: 90px 10%;
    background: linear-gradient(135deg, var(--dark), var(--dark-soft));
    text-align: center;
    position: relative;
    overflow: hidden;
}

/* subtle gold glow */
.process-section::before{
    content:"";
    position:absolute;
    width:500px;
    height:500px;
   
    top:-120px;
    left:-120px;
}

.process-section::after{
    content:"";
    position:absolute;
    width:400px;
    height:400px;
   
    bottom:-120px;
    right:-120px;
}

/* ---------- TITLE ---------- */
.process-section .section-title{
    color: var(--text-main);
    font-size: 32px;
    font-weight: 800;
    margin-bottom: 50px;
    letter-spacing: 1.5px;
}

.process-section .section-title::after{
    content:"";
    display:block;
    width:80px;
    height:4px;
    margin:12px auto 0;
    background: linear-gradient(to right, var(--primary), var(--secondary));
    border-radius:10px;
}

/* ---------- GRID ---------- */
.process-grid{
    display:grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
    position: relative;
    z-index: 2;
}

/* ---------- CARD ---------- */
.process-card{
    background: var(--dark-elevated);
    padding: 30px 20px;
    border-radius: 16px;
    text-align: center;
    transition: .4s ease;
    border: 1px solid var(--border-light);
    box-shadow: 0 10px 30px var(--shadow-light);
}

/* hover effect */
.process-card:hover{
    transform: translateY(-10px);
    box-shadow: 0 20px 45px var(--shadow-medium);
    border-color: rgba(212,175,55,0.4);
}

/* ---------- STEP NUMBER ---------- */
.process-card .step{
    width: 60px;
    height: 60px;
    margin: 0 auto 15px;
    border-radius: 50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:700;
    font-size:18px;
    color: var(--dark);
    background: linear-gradient(to right, var(--primary), var(--secondary));
}

/* ---------- TEXT ---------- */
.process-card h3{
    color: var(--primary);
    font-size: 18px;
    margin-bottom: 10px;
}

.process-card p{
    color: var(--text-muted);
    font-size: 14px;
    line-height: 1.6;
}

/* ---------- RESPONSIVE ---------- */
@media(max-width:992px){
    .process-grid{
        grid-template-columns: repeat(2, 1fr);
    }
}

@media(max-width:600px){
    .process-grid{
        grid-template-columns: 1fr;
    }

    .process-section{
        padding: 60px 15px;
    }

    .process-section .section-title{
        font-size: 26px;
    }
}


/* ---------- EXPERTISE SECTION ---------- */
.expertise-section{
    background: linear-gradient(135deg, var(--dark-soft), var(--dark));
    padding: 80px 10%;
    text-align: center;
}

/* ---------- TITLE ---------- */
.expertise-section .section-title{
    color: var(--text-main);
    font-size: 32px;
    font-weight: 800;
    margin-bottom: 50px;
    letter-spacing: 1.5px;
}

/* underline */
.expertise-section .section-title::after{
    content:"";
    display:block;
    width:80px;
    height:4px;
    margin:12px auto 0;
    background: linear-gradient(to right, var(--primary), var(--secondary));
    border-radius:10px;
}

/* ---------- GRID ---------- */
.expertise-grid{
    display:grid;
    grid-template-columns: repeat(5, 1fr);
    gap:20px;
}

/* ---------- CARD ---------- */
.expertise-card{
    background: var(--dark-elevated);
    border-radius:14px;
    padding:30px 20px;
    text-align:left;
    transition:.4s ease;
    border:1px solid var(--border-light);
    position:relative;
    overflow:hidden;
}

/* subtle gold glow */
.expertise-card::before{
    content:"";
    position:absolute;
    inset:0;
    background: radial-gradient(circle at top left, rgba(212,175,55,0.15), transparent 70%);
    opacity:0;
    transition:.4s;
}

/* hover */
.expertise-card:hover{
    transform:translateY(-8px);
    box-shadow: 0 15px 40px var(--shadow-medium);
    border-color: rgba(212,175,55,0.4);
}

.expertise-card:hover::before{
    opacity:1;
}

/* ---------- NUMBER ---------- */
.expertise-card span{
    font-size:26px;
    font-weight:700;
    color: var(--primary);
    display:block;
    margin-bottom:10px;
}

/* ---------- TEXT ---------- */
.expertise-card h3{
    font-size:18px;
    color: var(--text-main);
    margin-bottom:8px;
}

.expertise-card p{
    font-size:14px;
    color: var(--text-muted);
    line-height:1.5;
}

/* ---------- RESPONSIVE ---------- */
@media(max-width:1100px){
    .expertise-grid{
        grid-template-columns: repeat(3, 1fr);
    }
}

@media(max-width:768px){
    .expertise-grid{
        grid-template-columns: repeat(2, 1fr);
    }
}

@media(max-width:500px){
    .expertise-grid{
        grid-template-columns: 1fr;
    }
}









/* ---------- 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){
    .hero-section{
        padding:40px 40px;
        height:auto;
    }
    .hero-left h1{font-size:40px;}
    .hero-left h2{font-size:22px;}
    .hero-left p{font-size:17px;}
}

/* Tablet + Small Laptop */
@media(max-width:900px){
    .hero-section{
        flex-direction:column;
        gap:25px;
        height:auto;
        padding:35px 25px;
        text-align:center;
    }

    .hero-left{
        width:100%;
    }

    .hero-buttons{
        display:flex;
        justify-content:center;
        flex-wrap:wrap;
        gap:10px;
    }

    .hero-slider{
        width:100%;
        height:380px;
    }
}

/* -------- Mobile Devices -------- */
@media(max-width:768px){

    .navbar{
        padding:10px 16px;
    }

    .hero-left h1{
        font-size:32px;
        line-height:1.2;
    }

    .hero-left h2{
        font-size:20px;
    }

    .hero-left p{
        font-size:15px;
    }

    .hero-slider{
        height:340px;
    }

    .arrow{
        font-size:26px;
        padding:6px 10px;
    }
}

/* -------- Small Mobile -------- */
@media(max-width:520px){

    .hero-section{
        padding:28px 18px;
    }

    .hero-left h1{
        font-size:28px;
    }

    .hero-left h2{
        font-size:18px;
    }

    .hero-left p{
        font-size:14px;
    }

    .hero-slider{
        height:300px;
        border-radius:14px;
    }

    .primary-btn,
    .secondary-btn{
        padding:10px 18px;
        font-size:14px;
    }
}

/* -------- Extra Small -------- */
@media(max-width:400px){

    .hero-left h1{
        font-size:24px;
    }

    .hero-left h2{
        font-size:16px;
    }

    .hero-slider{
        height:260px;
    }

    .arrow{
        font-size:22px;
    }
}


/* ================= 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%;
  }
}


/* ================= CONTACT RESPONSIVE FIX ================= */

/* Tablet */
@media(max-width:900px){

  .contact-section{
      padding:60px 8%;   /* reduce side spacing */
  }

  .contact-box{
      grid-template-columns:1fr;   /* stack */
      padding:25px;
      gap:20px;
  }
}

/* Mobile */
@media(max-width:600px){

  .contact-section{
      padding:50px 5%;
  }

  .contact-box{
      padding:20px;
      gap:16px;
  }

  .contact-box h3{
      font-size:22px;
      text-align:center;
  }

  .contact-left p{
      font-size:14px;
      padding:6px 10px;
  }

  .contact-right input,
  .contact-right textarea{
      font-size:14px;
      padding:10px;
  }

  .contact-right button{
      font-size:15px;
  }
}

/* Small Mobile */
@media(max-width:400px){

  .contact-section{
      padding:40px 4%;
  }

  .contact-box{
      padding:16px;
  }

  .contact-box h3{
      font-size:20px;
  }

  .contact-left p{
      font-size:13px;
      gap:8px;
  }

  .contact-right input,
  .contact-right textarea{
      font-size:13px;
      padding:9px;
  }
}








/* SECTION CARD */
.section-card{
    max-width:1600px;
    margin:40px auto;
    border-radius:20px;
    overflow:hidden;
    background:rgba(255,255,255,0.7);
    backdrop-filter:blur(12px);
    box-shadow:0 15px 40px var(--shadow-light);
    border:1px solid var(--border-light);
    transition:0.4s;
}

/* Hover effect */
.section-card:hover{
    transform:translateY(-5px);
    box-shadow:0 25px 60px var(--shadow-medium);
}

/* REMOVE FULL WIDTH FEEL */
.section-card section{
    padding:60px 30px !important;
    background:transparent !important;
}
