
  :root{
    --bg1:#040b22;
    --blue:#4966ff;
    --blue2:#2e57ff;
    --cardBorder:rgba(255,255,255,.12);
    --textDim:rgba(255,255,255,.74);
    --white:#ffffff;
  }

  *{ box-sizing:border-box; }
  html,body{ width:100%; overflow-x:hidden; }

  body{
    margin:0;
    font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    background: radial-gradient(1200px 700px at 50% 35%, #0b2a7a 0%, #050b22 55%, #050b22 100%);
    overflow-x:hidden;
  }

  a{ text-decoration:none; }

  .container-xxl{
    max-width: 1320px;
    padding-left: 16px;
    padding-right: 16px;
  }

  /* ✅ LEFT ALIGN all content (except logo) */
  section ,
  .hero-left,
  .whyText,
  .apply-strip .strip-inner,
  .faqWrap,
  .placementWrap,
  footer{
    text-align:left;
  }

  /* ===================== HERO ===================== */
  .hero{
    position: relative;
     min-height: 100vh;        /* FULL SCREEN */
    padding: 28px 0 0;
    background:
      radial-gradient(1200px 700px at 40% 35%, rgba(0, 120, 255, 0) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0) 100%),
      url("assets/images/new-banner.png");
    background-size: cover;
    background-position: center;
    border-bottom: 1px solid rgba(255,255,255,.09);
    overflow:hidden;
  }

  .hero::after{
    content:"";
    position:absolute;
    inset:0;
    background: linear-gradient(180deg, rgba(0,0,0,.00), rgba(0,0,0,.00));
    pointer-events:none;
    z-index:1;
  }

  .hero .container-xxl{
    position:relative;
    z-index:2;
  }

  .hero-logo{
    display:flex;
    align-items:flex-start;
    gap: 10px;
    margin-bottom: 10px;
  }

  .hero-logo svg{
    color:#fff;
    height:34px;
    width:auto;
    max-width: 100%;
  }

  .hero-grid{
    display:grid;
    grid-template-columns: 1.25fr 0.85fr;
    gap: 40px;
    align-items:start;
    padding-bottom: 24px;
  }

  .hero-left{ padding-top: 40px; }

  .hero-title{
    font-size: 50px;
    line-height: 1.02;
    letter-spacing: -1px;
    margin: 0 0 16px;
    font-weight: 700;
    word-break: break-word;
  }

  .hero-title span{ color:#5f7aff; }

  .hero-subtitle{
    font-size: 28px;
    font-weight: 700;
    margin: 0 0 16px;
	color:#fff;
  }

  .hero-adm{
  font-size: 22px;
  font-weight: 700;
  margin-top: 14px;
    margin-bottom: 55px;
}

.hero-adm-gradient{
  background: linear-gradient( 90deg, #5174ff 0%, #9fb6ff 50%, #c7d4ff 100% );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.hero-adm-white{
  color: #ffffff;
  margin-left: 6px;
}


@media (max-width: 576px){
  .hero-adm{
    font-size: 16px;
  }
}



  .btn-pill{
    border-radius: 999px;
    padding: 10px 30px;
    font-weight: 700;
    font-size: 14px;
    background: linear-gradient(180deg, #6d7cff, #4659ff);
    border: none;
    color:#fff;
    
    display:inline-flex;
    align-items:center;
    justify-content:center;
  }

  /* MID Divider + Badge (Desktop) */




/* =========================================
   CTA + USP HORIZONTAL ROW
========================================= */

.hero-cta-row{
  display:flex;
  align-items:center;

  gap:34px;

  margin-top:22px;
}

/* USP section */
.hero-mid{
  display:flex;
  align-items:center;

  gap:24px;
}

/* Divider */
.hero-mid .vline{
  width:2px;
  height:82px;

  background:rgba(255,255,255,.18);

  flex:0 0 auto;
}

/* Badge */
.usp-badge{
  display:flex;
  align-items:center;
  justify-content:center;

  background:transparent;
  border:none;
  box-shadow:none;
  backdrop-filter:none;

  padding:0;
  margin:0;
}

/* Remove old icon styles */
.usp-badge .dot{
  width:auto;
  height:auto;

  background:transparent;
  border:none;

  padding:0;
}

/* Logo */
.usp-badge .dot img{
  width:210px;
  height:auto;

  object-fit:contain;
  display:block;
}

  /* Right form card */
  .hero-right{
    display:flex;
    justify-content:flex-end;
  }

  /* ✅ form background must be white always (no background image) */
  .leadForm{
    width: 360px;
    max-width: 100%;
    border-radius: 18px;
    overflow:hidden;
    background: rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.12);
    box-shadow: 0 26px 70px rgba(0,0,0,.5);
    backdrop-filter: blur(10px);
  }

  .leadForm .topBlue{
     background: linear-gradient(90deg, #2336cc, #2f49ff);
	  padding: 30px 40px;
	  border-radius: 14px;
	  color: #fff;
	  text-align: left;
  }

.topBlue-gradient{
  background: linear-gradient(
    90deg,
    #9fb6ff 0%,
    #c7d4ff 100%
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-weight: 700;
}
.topBlue-white{
  color: #ffffff;
  font-size: 14px;
  font-weight: 600;
}
.topBlue h6{
  font-size: 14px;
  margin: 0 0 4px;
}

.topBlue p{
  margin: 0 0 10px;
}
.applyBtnMini{
  display: inline-flex;
  align-items: center;
  justify-content: center;

  height: 27px;              /* matches screenshot */
  padding: 0 26px;           /* button width */
  
  background: linear-gradient(
    90deg,
    #6f8cff 0%,
    #8fa8ff 100%
  );

  color: #ffffff;
  font-size: 13px;
  font-weight: 700;

  border-radius: 999px;      /* perfect pill */
  text-decoration: none;
  border: none;

  box-shadow: 0 6px 14px rgba(111,140,255,0.25);
  transition: all 0.25s ease;
}

.applyBtnMini:hover{
  background: linear-gradient(
    90deg,
    #5f7cff 0%,
    #7f98ff 100%
  );
  transform: translateY(-1px);
}


@media (max-width: 576px){
  .applyBtnMini{
    height: 36px;
    padding: 0 22px;
    font-size: 12px;
  }
}





  .leadForm .topBlue h6{
    margin:0 0 6px;
    font-weight: 900;
    font-size: 18px;
    color:#eaf0ff;
	margin-bottom: 30px;
  }

  .leadForm .topBlue p{
    margin:0;
    color: rgba(255,255,255,.85);
    font-size: 12px;
    font-weight: 700;
  }

  .leadForm .applyBtnMini{
    margin-top: 14px;
	 margin-bottom: 30px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background: rgba(255,255,255,.15);
    border:1px solid rgba(255,255,255,.22);
    color:#fff;
    padding: 8px 14px;
    border-radius: 999px;
    font-weight: 700;
    font-size: 12px;
    white-space: nowrap;
  }

  .leadForm .whiteArea{
    background:#3b4757;
    color:#000;
    padding: 25px 16px 20px 16px;
   
    border-radius: 18px 18px 0 0;
	margin-top: -19px;
  }

  .leadForm .whiteArea h4{
    text-align:center;
    font-weight: 900;
    margin: 0 0 12px;
    color:#ffffff;
    font-size: 26px;
  }

  .npfWrap{
    width:100%;
    height: 550px;
    overflow:hidden;
    border-radius: 12px;
    border:1px solid rgba(0,0,0,.08);
  }

  /* Apply strip (Desktop) */
  .apply-strip{
    position: relative;
    z-index: 2;
    margin-top: 0px;
    background: rgba(41, 64, 215, .95);
    border-top: 1px solid rgba(255,255,255,.12);
    border-bottom: 1px solid rgba(255,255,255,.12);
    padding: 14px 0;
  }

  .apply-strip .strip-inner{
    display:flex;
    align-items:center;
    justify-content:center;
    gap: 18px;
    color:#fff;
    font-weight: 700;
    flex-wrap: wrap;
    font-size: 18px;
  }

  .apply-strip .applyNow{
    border-radius: 999px;
    padding: 8px 18px;
    background: rgba(255,255,255,.18);
    border:1px solid rgba(255,255,255,.25);
    color:#fff;
    font-weight: 900;
    font-size: 12px;
    white-space: nowrap;
  }

  /* ✅ Mobile Fixed Apply Bar (like screenshot) */
  /* ✅ Mobile fixed bottom apply strip like screenshot */
.apply-fixed-mobile{
  display:none;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2018;

  background: rgba(41, 64, 215, .98);
  border-top: 1px solid rgba(255,255,255,.18);

  padding: 10px 12px;
  backdrop-filter: blur(10px);
}

.apply-fixed-inner-new{
  max-width: 420px;
  margin: 0 auto;

  display:flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.apply-fixed-toptext{
  font-size: 12px;
  font-weight: 600;
  color:#fff;
  text-align:center;
  line-height: 1.2;
  opacity: .95;
}

.apply-fixed-btn-new{
  width: 160px;
  height: 32px;

  display:flex;
  align-items:center;
  justify-content:center;

  border-radius: 999px;
  background: #ffffff;              /* ✅ White button */
  border: 1px solid rgba(0,0,0,.08);

  color: #2536a5;                   /* ✅ Blue text */
  font-weight: 700;
  font-size: 12px;
  text-decoration:none;
}


/* ✅ Show bar only on mobile */
@media (max-width: 576px){
  .apply-fixed-mobile{
    display:block;
  }

  body{
    padding-bottom: 82px; /* space for fixed bottom strip */
  }
}
/* ===== Gradient Text (Hero Heading Highlight) ===== */
.text-gradient {
  background: linear-gradient(90deg, #8fb3ff 0%, #ffffff 45%, #6f8cff 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}

.text-gradient-soft {
  background: linear-gradient( 90deg, #fff 0%, #c0d1ff 45%, #4176ff 100% );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}






/* ================= MOBILE SPACING FIX + WHITE FORM ONLY ================= */
@media (max-width: 576px){

  /* ✅ keep hero dark background for top section */
  .hero{
    background: radial-gradient(1200px 700px at 50% 35%, #0b2a7a 0%, #050b22 55%, #020616 100%) !important;
    background-image: none !important;
    padding-top: 18px !important;
    padding-bottom: 0 !important;
  }

  /* ✅ Logo center + spacing like screenshot */
  .hero-logo{
    justify-content: center !important;
    margin-bottom: 50px !important; /* ✅ more breathing space */
  }

  /* ✅ hero left block spacing */
  .hero-left{
    padding-top: 0px !important;
    padding-bottom: 18px !important;
    text-align: left !important;
  }

  /* ✅ Title spacing */
  .hero-title{
    margin: 0 0 14px !important; /* ✅ more space */
    font-size: 45px !important;
    line-height: 1.15 !important;
    font-weight: 900 !important;
  }

  /* ✅ subtitle spacing */
  .hero-subtitle{
    margin: 0 0 10px !important;
    font-size: 30px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
  }

  /* ✅ admissions line spacing */
  .hero-adm{
    margin: 0 0 16px !important;
    font-size: 20px !important;
    font-weight: 700 !important;
  }

  /* ✅ Enquire Now button spacing + less height */
  .btn-pill{
    margin-top: 4px !important;
    margin-bottom: 14px !important; /* ✅ space before USP */
    width: 100% !important;
    max-width: 340px !important;
    padding: 9px 16px !important;
    font-size: 20px !important;
    height: 38px !important;       /* ✅ reduced height */
  }

  /* ✅ USP badge spacing like screenshot */
  .usp-badge-mobile{
    margin-top: 4px !important;
    margin-bottom: 14px !important; /* ✅ space before image */
    max-width: 280px !important;
    padding: 8px 12px !important;
  }

  /* ✅ mobile hero image spacing + fit */
  .hero-mobile-image{
    margin-top: 0px !important;
    margin-bottom: 0px !important;
    border-radius: 10px !important;
  }

  .hero-mobile-image img{
    width: 100% !important;
    height: 340px !important; /* ✅ little taller like screenshot */
    object-fit: cover !important;
    object-position: center top !important;
    display: block !important;
  }

  /* =====================================================
     ✅ ONLY FORM SECTION WHITE (like screenshot)
     ===================================================== */

  /* ✅ remove any extra blue background behind form */
  .hero-right{
    background: transparent !important;
    padding: 0 !important;
    margin-top: 0 !important;
  }

  /* ✅ create a WHITE section below image for form */
  .leadForm{
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;

    background: #fff !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    border: none !important;
    overflow: visible !important;
  }

  /* ✅ TopBlue removed already (Apply Through MHT-CET removed) */
  .leadForm .topBlue{
    display: none !important;
  }

  /* ✅ WHITE padding area exactly like screenshot */
  .leadForm .whiteArea{
    width: 100% !important;
    background: #3b4757 !important;
    padding: 22px 16px 28px !important; /* ✅ spacing */
    border-radius: 0 !important;
  }

  /* ✅ Admissions Open spacing */
  .leadForm .whiteArea h4{
    font-size: 25px !important;
    font-weight: 900 !important;
    margin: 0 0 16px !important;
    text-align: center !important;
  }

  /* ✅ Form box spacing */
  .npfWrap{
    width: 100% !important;
    height: 538px !important;
    border-radius: 8px !important;
    background: #3b4757 !important;
    border: 1px solid rgba(0,0,0,.08) !important;
    overflow: hidden !important;
  }

  /* ✅ IMPORTANT: remove extra spacing inside widget container */
  .npf_wgts{
    background: #fff !important;
  }

}



/* ================================
   ✅ Desktop USP Badge Styling
================================ */

.usp-badge {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 18px;
  border-radius: 50px;
  border: 1px solid rgba(255,255,255,0.15);
  background: rgba(0,0,0,0.25);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  width: fit-content;
}

.usp-badge .dot {
  height: 42px;
  width: 42px;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 16px;
  font-weight: 700;
  color: #ffffff;
  background: rgba(255,255,255,0.12);

  transition: transform .35s ease, opacity .35s ease;
}

.usp-badge .uspText {
  font-size: 14px;
  font-weight: 600;
  color: #ffffff;
  line-height: 1.3;
}

/* ✅ Icon animation class */
.usp-anim {
  transform: scale(1.25) rotate(-10deg);
  opacity: 0.7;
}



  /* ===================== SECTION BASE ===================== */


  /* =========================================
   GLOBAL SECTION SPACING
========================================= */

section{
  background:#050b22;
 
  position:relative;
}

/* Mobile spacing */
@media (max-width:768px){
  section{
    padding:65px 0;
  }
}


/* =========================================
   SECTION TITLE SYSTEM
========================================= */

.secTitle,
.secTitleph{
  position: relative;

  font-size: 30px;
  font-weight: 600;
  
  text-transform: uppercase;

  color: rgba(255,255,255,.78);

  text-align: center;

  margin-bottom:20px;

  line-height: 1.2;
}




/* =========================================
   MAIN SECTION HEADINGS
========================================= */

.careerMainTitle,
.advantageTitle,
.globalTitle,
.bigBlue{
  font-size: 46px;
  line-height: 1.12;
  font-weight: 700;

  color:#fff;

  text-align:center;

  max-width: 980px;
  margin-left:auto;
  margin-right:auto;
  margin-bottom:24px;

  letter-spacing:-1px;
}


/* Paragraph under heading */
.careerMainDesc,
.advantageDesc,
.globalDesc{
  font-size: 17px;
  line-height: 1.8;

  color: rgba(255,255,255,.72);

  text-align:center;

  max-width: 900px;

  margin:0 auto 55px;
}


/* =========================================
   MOBILE TYPOGRAPHY
========================================= */

@media (max-width:768px){

  .secTitle,
  .secTitleph{
    font-size:13px;
    letter-spacing:2px;
    margin-bottom:18px;
  }

  .careerMainTitle,
  .advantageTitle,
  .globalTitle,
  .bigBlue{
    font-size:32px;
    line-height:1.2;
    padding:0 10px;
    margin-bottom:18px;
  }

  .careerMainDesc,
  .advantageDesc,
  .globalDesc{
    font-size:15px;
    line-height:1.7;
    padding:0 14px;
    margin-bottom:40px;
  }

}
  .softLine{
    height:1px;
    background: rgba(255,255,255,.12);
    margin: 28px 0 0;
  }

@media (max-width: 768px) {
  .secTitle {
    font-size: 22px;          /* slightly smaller for mobile */
    font-weight: 600;
    letter-spacing: 0.4px;
    margin: 0 0 36px;         /* reduce large desktop gap */
    padding: 0 12px;          /* breathing space on small screens */
    text-align: center;       /* keep centered */
    line-height: 1.4;
  }
}


.softLineha{
height: 2px;
  background: linear-gradient( 90deg, rgba(255,255,255,0) 0%, rgba(255, 255, 255, 0.44) 50%, rgba(255,255,255,0) 100% );
  margin: 70px 0 0;
}
 




 /* ================= WHY MIT AOE (FINAL) ================= */

section{
  background: #050b22;
  
}

.whyWrap{
  display: grid;
  grid-template-columns: 520px 1fr;   /* FIXED image column */
  gap: 110px;                         /* MORE breathing space */
  align-items: center;
  
}

/* IMAGE */
.whyImg{
  display: flex;
  justify-content: flex-start;
}

.whyImg img{
  width: 100%;
  max-width: 520px;                   /* EXACT visual size */
  
  display: block;
  box-shadow: 0 30px 80px rgba(0,0,0,0.35);
}

/* TEXT */
.whyText{
  max-width: 560px;                   /* LIMIT text width */
}

.whyText h3{
  font-size:30px;
  
  text-transform:uppercase;
  font-weight:600;
  color:rgba(255,255,255,.78);
  margin-bottom:22px;
}

.whyText p{
  line-height: 1.75;
  color: #fbfbfb;
  margin-bottom: 30px;
  font-size: 16px;
}

/* LINE */
.miniLine{
  width: 56px;
  height: 2px;
  background: #fff;
  margin: 30px 0 16px;
}

/* ADVANTAGE */
.adv{
  font-size: 20px;
  color: #ffffff;
  margin-bottom: 14px;
  font-weight: 600;
}

/* BIG HEADING */
.bigBlue{
  font-size: 38px;                    /* SLIGHTLY BIGGER */
  font-weight: 700;
  line-height: 1.18;
  color: #ffffff;
}

.bigBlue span{
  color: #6f8cff;
}

/* SOFT DIVIDER */
.softLine{
height: 1px;
  background: linear-gradient( 90deg, rgba(255,255,255,0) 0%, rgba(255, 255, 255, 0.44) 50%, rgba(255,255,255,0) 100% );
  
}



@media (max-width: 768px){
  .whyWrap{
    grid-template-columns: 1fr;
    gap: 50px;
    padding: 70px 0 0px;
  }

  .whyText{
    max-width: 100%;
  }

  .bigBlue{
    font-size: 30px;
  }
}

/* ===================== PROGRAMS OFFERED ===================== */

.programTabs{
  display:flex;
  justify-content:center;
  gap:75px;
  margin-bottom:50px;
  flex-wrap:wrap;
}

.programTabs button{
  background:transparent;
  border:none;
  color:#fff;
  font-weight:700;
  opacity:.35;
  font-size:34px;
  padding:0;
  cursor:pointer;
  white-space:nowrap;
}

.programTabs button.active{
  opacity:1;
  border:1px solid #4f6bff;
  padding:4px 40px;
  border-radius:999px;
  box-shadow:0 14px 40px rgba(0,0,0,.35);
  font-size:40px;
  background:linear-gradient(90deg,#fff 0%,#c0d1ff 45%,#4176ff 100%);
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
}

/* ===================== GRID ===================== */

.progGrid{
  display:none;
  grid-template-columns:repeat(4,1fr);
  gap:22px;
}

/* ================= MTECH PROGRAM GRID CENTER FIX ================= */

.progGrid.active{
  display:flex !important;
  justify-content:center;   /* ✅ centers cards */
  align-items:stretch;
  gap:22px;

  flex-wrap:wrap;

  max-width:900px;          /* ✅ controls layout width */
  margin:0 auto;            /* ✅ centers whole block */
}

/* ===================== PROGRAM CARD ===================== */

.progCard{
  border-radius:14px;
  border:1px solid rgba(90,120,255,.25);
  background:rgba(0,0,0,.22);
  overflow:hidden;
  box-shadow:0 20px 50px rgba(0,0,0,.40);
  padding:14px;
  min-height:340px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  width:320px;              /* ✅ fixed balanced width */
  max-width:100%;
}

/* IMAGE */
.progCard .img{
  border-radius:12px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.10);
  height:140px;
}

.progCard .img img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

/* TITLE */
.progCard h5{
  margin:14px 0 10px;
  font-weight:900;
  font-size:13px;
}

/* LIST */
.progCard ul{
  margin:0;
  padding-left:14px;
  color:rgba(255,255,255,.72);
  font-size:11px;
  line-height:1.55;
}

/* ===================== BUTTONS (NEW LOGIC) ===================== */

.progBtns{
  display:flex;
  gap:10px;
  margin-top:14px;
  flex-wrap:nowrap;

  /* hidden by default */
  opacity:0;
  transform:translateY(8px);
  pointer-events:none;
  transition:all .3s ease;
}

/* show ONLY on hover (desktop) */
.progCard:hover .progBtns{
  opacity:1;
  transform:translateY(0);
  pointer-events:auto;
}

/* BUTTON STYLE */
.progBtns a{
  flex:1;
  display:inline-flex;
  justify-content:center;
  align-items:center;
  border-radius:999px;
  padding:10px;
  font-size:10px;
  font-weight:900;
  border:1px solid rgba(255,255,255,.22);
  color:#fff;
  background:rgba(0,0,0,.18);
  white-space:nowrap;
}

.progBtns a.primary{
  background:linear-gradient(180deg,#5f7aff,#3e56ff);
  border:none;
}

/* ===================== MOBILE BEHAVIOR ===================== */

@media (max-width:768px){
  .progGrid{
    grid-template-columns:1fr;
  }

  /* buttons always visible on mobile */
  .progBtns{
    opacity:1;
    transform:none;
    pointer-events:auto;
  }
}
/* ===================== FORCE RESET FIRST PROGRAM CARD ===================== */

/* First card must look NORMAL on page load */
.progGrid.active .progCard:first-child{
  border:1px solid rgba(90,120,255,.25) !important;
  background:rgba(0,0,0,.22) !important;
  box-shadow:0 20px 50px rgba(0,0,0,.40) !important;
}

/* Hide buttons on first card by default */
.progGrid.active .progCard:first-child .progBtns{
  opacity:0 !important;
  transform:translateY(8px) !important;
  pointer-events:none !important;
}

/* Show buttons ONLY on hover (same as others) */
.progGrid.active .progCard:first-child:hover .progBtns{
  opacity:1 !important;
  transform:translateY(0) !important;
  pointer-events:auto !important;
}
/* ===================== FIX HOVER BORDER FOR FIRST CARD ===================== */

.progGrid.active .progCard:first-child:hover{
  border:1px solid #5f7aff !important;
  
}

  
  
  /* ===============================
   Program Card Title – MOBILE
   =============================== */
@media (max-width: 576px){

  .progCard h5{
    margin: 16px 0 8px;     /* tighter vertical spacing */
    font-weight: 600;      /* slightly lighter for small screens */
    font-size: 20px;       /* 🔥 bigger & readable on mobile */
    line-height: 1.3;
    letter-spacing: -0.2px;
  }
}
/* ===============================
   Program Card List – MOBILE
   =============================== */
@media (max-width: 576px){

  .progCard ul{
    margin: 0;
    padding-left: 16px;        /* slightly more breathing space */
    font-size: 16px;           /* 🔥 readable on mobile */
    line-height: 1.6;          /* comfortable line spacing */
    color: rgba(255,255,255,.85);
  }

  .progCard ul li{
    margin-bottom: 6px;        /* separates bullets nicely */
  }

  .progCard ul li:last-child{
    margin-bottom: 0;
  }
}


  /* ✅ Direct Second Year Card in GRID (DESKTOP LIKE SCREENSHOT) */
  .directSecondYearDesktop{
    border-radius: 14px;
    background: linear-gradient(180deg, rgba(75,105,255,1), rgba(35,55,170,1));
    border: 1px solid rgba(255,255,255,.12);
    box-shadow: 0 22px 60px rgba(0,0,0,.35);
    overflow:hidden;
    padding: 14px;
    min-height: 340px;
    display:flex;
    flex-direction: column;
    justify-content: space-between;
    position:relative;
  }

  .directSecondYearDesktop .miniTop{
    display:flex;
    align-items:center;
    gap: 10px;
    font-weight: 900;
    font-size: 19px;
    color:#fff;
    opacity:.95;
  }

  .directSecondYearDesktop h4{
    margin: 16px 0 8px;
    font-weight: 900;
    font-size: 14px;
    line-height: 1.2;
  }

  .directSecondYearDesktop p{
    margin: 0;
    font-weight: 700;
    font-size: 11px;
    color: rgba(255,255,255,.85);
  }

  .directSecondYearDesktop .btnRow{
    margin-top: 14px;
    display:flex;
    gap: 10px;
  }

  .directSecondYearDesktop .btnRow a{
    flex:1;
    display:inline-flex;
    justify-content:center;
    align-items:center;
    height: 32px;
    border-radius: 999px;
    font-weight: 900;
    font-size: 10px;
    white-space: nowrap;
  }

  .directSecondYearDesktop .btnRow a.apply{
    background: rgba(255,255,255,.92);
    color:#2536a5;
  }

  .directSecondYearDesktop .btnRow a.brochure{
    background: rgba(0,0,0,.18);
    border:1px solid rgba(255,255,255,.35);
    color:#fff;
  }

  .directSecondYearDesktop .studentCut{
    position:absolute;
    right: 10px;
    bottom: 0;
    width: 185px;
    height:auto;
    pointer-events:none;
    opacity: 1;
    filter: drop-shadow(0 20px 60px rgba(0,0,0,.35));
  }

  /* ✅ Mobile Programs slider + dots */
  .progDots{
    display:none;
    justify-content:center;
    gap: 6px;
    margin-top: 10px;
  }

  .progDots span{
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: rgba(255,255,255,.30);
  }

  .progDots span.active{
    background: rgba(255,255,255,.95);
  }

  @media (max-width: 576px){
    .progGrid{
      display:none !important;
      grid-template-columns: 1fr !important;
      gap: 14px !important;
    }

    .progGrid.active{
      display:flex !important;
      overflow-x: auto;
      scroll-snap-type: x mandatory;
      gap: 14px;
      padding-bottom: 10px;
    }

    .progGrid.active::-webkit-scrollbar{
      height: 6px;
    }

    .progCard, .directSecondYearDesktop{
      min-width: 290px;
      max-width: 290px;
      scroll-snap-align: center;
    }

    .progDots{
      display:flex;
    }
  }

  /* ✅ Direct Second Year Mobile Card (after dots, visible) */
  .directSecondYearMobile{
    display:none;
    margin-top: 18px;
    border-radius: 18px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.15);
    background: linear-gradient(180deg, rgba(75,105,255,.95), rgba(35,55,170,.95));
    box-shadow: 0 22px 60px rgba(0,0,0,.35);
  }

  .directSecondYearMobile .inner{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap: 14px;
    padding: 16px;
  }

  .directSecondYearMobile h6{
    font-weight: 900;
    margin:0 0 6px;
    font-size: 13px;
    line-height: 1.25;
  }

  .directSecondYearMobile p{
    margin:0;
    font-size: 11px;
    color: rgba(255,255,255,.85);
    font-weight: 700;
  }

  .directSecondYearMobile .btnRow{
    margin-top: 10px;
    display:flex;
    gap: 10px;
  }

  .directSecondYearMobile .btnRow a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    height: 32px;
    padding: 0 14px;
    border-radius: 999px;
    font-weight: 900;
    font-size: 11px;
    white-space: nowrap;
  }

  .directSecondYearMobile .btnRow a.apply{
    background: rgba(255,255,255,.92);
    color:#2536a5;
  }

  .directSecondYearMobile .btnRow a.brochure{
    background: rgba(0,0,0,.15);
    border:1px solid rgba(255,255,255,.35);
    color:#fff;
  }

  .directSecondYearMobile .pic{
    width: 95px;
    height: 95px;
    border-radius: 16px;
    overflow:hidden;
   bottom:-10;
    flex:0 0 auto;
  }

  .directSecondYearMobile .pic img{
    width:100%;
    height:100%;
    object-fit: cover;
    display:block;
  }

  @media (max-width: 576px){
    .directSecondYearMobile{
      display:block;
    }
  }

  /* ===================== PROGRAM HIGHLIGHTS (8+ items, loop) ===================== */
  .highStrip{
    border-top:1px solid rgba(255,255,255,.12);
    border-bottom:1px solid rgba(255,255,255,.12);
    
    padding: 18px 0;
  }

  .highMarquee{ overflow:hidden; position:relative; }

  .highTrack{
    display:inline-flex;
    align-items:center;
    gap: 26px;
    white-space: nowrap;
    animation: marquee 20s linear infinite;
  }

  @keyframes marquee{
    0%{ transform: translateX(0); }
    100%{ transform: translateX(-50%); }
  }

  .highlightItem{
    display:flex;
    align-items:center;
    gap: 10px;
	   font-weight: 700;
	  color: #889AF7;
	  font-size: 22px;
}
  }

  .hiIcon{
    width: 24px;
    height: 24px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    opacity: .95;
  }

  .hiIcon svg{
    width: 24px;
    height: 24px;
    color: rgba(255,255,255,.88);
  }

  .hiSep{
    width: 1px;
    height: 22px;
    background: rgba(255,255,255,.25);
    opacity: .9;
  }

  @media (max-width: 576px){
    .highlightItem{ font-size: 18px; gap: 8px; }
    .hiIcon, .hiIcon svg{ width: 18px; height: 18px; }
    .hiSep{ height: 20px; }
  }

  /* ===================== PLACEMENTS ===================== */
  
  
  
  /* ✅ Placement PNG Icons */
.placeIconImg{
  width: 52px;
  height: 52px;
  margin: 0 auto 6px;
  display:flex;
  align-items:center;
  justify-content:center;
}

.placeIconImg img{
  width: 52px;
  height: 52px;
  object-fit: contain;
  display:block;
}

  
  
  
  
  .placementWrap{
    background: radial-gradient(1000px 600px at 50% 35%, rgba(83,98,255,.55) 0%, rgba(0,0,0,.25) 55%, rgb(5, 11, 34) 100%);
    padding: 80px 0;
    border-top:1px solid rgba(255,255,255,.10);
    border-bottom:1px solid rgba(255,255,255,.10);
  }

  .placeCards{
    display:grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 18px;
    margin-top: 36px;
  }

  .placeCard{
    background:#fff;
    color:#000;
    border-radius: 22px;
    padding: 22px 18px;
    text-align:center;
    box-shadow: 0 20px 60px rgba(0,0,0,.25);
    min-height: 190px;
    display:flex;
    flex-direction: column;
    justify-content:center;
    gap: 10px;
    position:relative;
  }

  .placeIconSvg{
    width: 52px;
    height: 52px;
    margin: 0 auto 6px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#5a6cff;
    opacity: .95;
  }

  .placeIconSvg svg{
    width: 52px;
    height: 52px;
    display:block;
  }

  .placeCard .big{
    font-size: 40px;
    font-weight: 900;
    color:#5a6cff;
    letter-spacing: -1px;
    line-height: 1;
  }

  .placeCard .lbl{
    font-weight: 900;
    font-size: 13px;
    line-height:1.2;
  }

  /* ✅ Placement slider on MOBILE with dots */
  .placeSliderMobile{
    display:none;
    overflow-x:auto;
    scroll-snap-type: x mandatory;
    gap: 16px;
    padding-bottom: 10px;
  }
  .placeSliderMobile::-webkit-scrollbar{ height: 6px; }

  .placeDots{
    display:none;
    justify-content:center;
    gap: 6px;
    margin-top: 10px;
  }
  .placeDots span{
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: rgba(255,255,255,.30);
  }
  .placeDots span.active{
    background: rgba(255,255,255,.95);
  }

  @media (max-width: 576px){
    .placeCards{ display:none; }
    .placeSliderMobile{
      display:flex;
    }
    .placeSliderMobile .placeCard{
      min-width: 260px;
      max-width: 260px;
      scroll-snap-align: center;
    }
    .placeDots{ display:flex; }
  }

  /* Recruiters */
  .recruitRow{
    display:flex;
    align-items:center;
    gap: 22px;
    margin-top: 34px;
    flex-wrap: wrap;
  }

  .recruitRow h5{
    min-width: 180px;
    margin:0;
    font-weight: 900;
    font-size: 18px;
    color: rgba(255,255,255,.95);
  }

  .recruitMarquee{
    overflow:hidden;
    flex:1;
    min-width: 300px;
  }

  .recruitTrack{
    display:flex;
    align-items:center;
    gap: 22px;
    animation: recruiters 18s linear infinite;
    width: max-content;
  }

  @keyframes recruiters{
    0%{ transform: translateX(0); }
    100%{ transform: translateX(-50%); }
  }

  .recLogo{
    width: 74px;
    height: 74px;
    border-radius: 999px;
    background:#fff;
    display:grid;
    place-items:center;
    box-shadow: 0 16px 45px rgba(0,0,0,.3);
    overflow:hidden;
  }

  .recLogo img{
    width: 70%;
    height: 70%;
    object-fit: contain;
    display:block;
  }

  /* ✅ Mobile recruiters should NOT be slider -> show ALL as grid */
  .recruitGridMobile{
    display:none;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    margin-top: 14px;
    width:100%;
  }

  .recruitGridMobile .recLogo{
    width: 78px;
    height: 78px;
    margin: 0 auto;
  }

  @media(max-width: 576px){
    .recruitRow{
      flex-direction: column;
      align-items:flex-start;
      gap: 10px;
    }
    .recruitRow h5{
      min-width:auto;
      width:100%;
      font-size: 16px;
      margin-top: 4px;
    }
    .recruitMarquee{ display:none; }
    .recruitGridMobile{ display:grid; }
  }

  /* ===== HOW TO APPLY (Screenshot Match) ===== */

.applyBoxScreenshot{
  margin-top: 40px;

  padding: 40px 70px 70px 40px;
  border-radius: 28px;

  /* ✅ KEEP background image like screenshot */
  background:
    url("assets/images/keybord.webp"); /* keep same abstract bg you use */
  background-size: cover;
  background-position: center;

  box-shadow: 0 30px 80px rgba(0,0,0,.45);
  border: 1px solid rgba(255,255,255,.18);
}

.applyTitle{
  text-align: center;
  color: #ffffff;
  font-size: 22px;
  font-weight: 700;
  letter-spacing: 1px;
  margin-bottom: 48px;
}

/* Layout */
psScreenshot{
  display: grid;
  grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
  align-items: center;
  gap: 18px;
  max-width: 1200px;
  margin: 0 auto;
}

/* Steps */
.applyItem{
  text-align: center;
  color: #ffffff;
  font-weight: 600;
}

.applyItem img{
  width: 64px;
  height: 64px;
  object-fit: contain;
  margin-bottom: 12px;
}

.applyItem p{
  font-size: 16px;
  line-height: 1.55;
  margin: 0;
}

/* Links like screenshot (only links underlined) */
.applyLink{
  color: #ffffff;
  font-weight: 800;
  text-decoration: underline;
}

/* ✅ Register Now button (NOT underlined) */
.registerBtn{
  margin-top: 10px;
  display: inline-block;
  padding: 6px 14px;
  border-radius: 999px;
  background: #ffffff;
  color: #1f3fff;
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;   /* ❌ no underline */
  box-shadow: 0 6px 16px rgba(0,0,0,.25);
}



/* ===== Arrow EXACT like screenshot ===== */
.applyArrow{
  position: relative;
  width: 90px;              /* ✅ arrow length */
  height: 1.5px;            /* ✅ arrow thickness */
  background: rgba(255,255,255,.9);
}

.applyArrow::after{
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  width: 8px;
  height: 8px;
  border-top: 1.5px solid rgba(255,255,255,.9);
  border-right: 1.5px solid rgba(255,255,255,.9);
  transform: translateY(-50%) rotate(45deg);
}


.applyStepsScreenshot{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  max-width: 1200px;
  margin: 0 auto;
  flex-wrap: nowrap;   /* 🔥 force single row on desktop */
}

.applyItem{
  flex: 1;                 /* equal width */
  min-width: 0;            /* prevents overflow */
  text-align: center;
}
.applyArrow{
  flex: 0 0 40px;          /* fixed arrow width */
  height: 2px;
  background: rgba(255,255,255,.85);
  position: relative;
}
@media (max-width: 768px){

  .applyStepsScreenshot{
    flex-direction: column;
    align-items: center;
    gap: 16px;
  }

  .applyItem{
    width: 100%;
    max-width: 280px;
  }

  .applyArrow{
    width: 2px;
    height: 28px;
  }

  .applyArrow::after{
    top: auto;
    bottom: 0;
    left: 50%;
    right: auto;
    transform: translateX(-50%) rotate(135deg);
  }
}
}
@media (max-width: 768px){

  .applyStepsScreenshot{
    flex-direction: column;
    align-items: center;
  }

  .applyArrow{
    width: 2px;
    height: 30px;
    background: rgba(255,255,255,.85);
  }

  /* Arrow head (DOWN) */
  .applyArrow::after{
    top: auto;
    bottom: 0;
    left: 50%;
    right: auto;
    width: 8px;
    height: 8px;
    border-top: 2px solid rgba(255,255,255,.85);
    border-right: 2px solid rgba(255,255,255,.85);
    transform: translateX(-50%) rotate(135deg);
  }
}

  /* ✅ Desktop fixed apply strip at bottom */
.apply-strip-fixed-desktop{
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
z-index: 2018;
}

/* ✅ Desktop body padding so strip doesn't cover last section */
@media (min-width: 576px){
  body{
    padding-bottom: 70px;
  }
}


  @media (max-width: 768px){
    .applyStepsRow{
      grid-template-columns: 1fr !important;
      gap: 14px !important;
    }

    .applyArrow{
      display: flex !important;
      justify-content: center;
      align-items: center;
      font-size: 0px;
      margin: -8px 0;
      transform: none !important;
      height: 30px;
      line-height: 1;
    }

    .applyArrow::after{
      content: "↓";
      font-size: 32px;
      font-weight: 900;
    }
  }

  /* ===================== STUDENT SUCCESS ===================== */
  .videoWrapNarrow{ max-width: 980px; margin: 0 auto; }

  .videoGrid{
    display:grid;
    grid-template-columns: 1fr 1fr;
    gap: 26px;
    margin-top: 36px;
  }

  .vidCard{
    border-radius: 18px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.14);
    box-shadow: 0 22px 60px rgba(0,0,0,.45);
    background: rgba(0,0,0,.25);
  }

  .vidCard iframe{
    width:100%;
    height: 320px;
    display:block;
  }

  @media (max-width: 576px){
    .videoGrid{ grid-template-columns: 1fr; }
    .vidCard iframe{ height: 220px; }
  }

  /* ===================== LIFE AT MITAOE ===================== */
  .lifeWrap{
    background: rgba(255,255,255,.06);
    border-top:1px solid rgba(255,255,255,.10);
    border-bottom:1px solid rgba(255,255,255,.10);
    padding: 80px 0;
  }

  .lifeSlider{
    position: relative;
    max-width: 1100px;
    margin: 0 auto;
    height: 500px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap: 80px;
  }

  .lifeSide{
    width: 260px;
    height: 260px;
    border-radius: 12px;
    overflow:hidden;
    opacity: .28;
    border:1px solid rgba(255,255,255,.08);
    position: relative;
  }

  .lifeSide::after{
    content:"";
    position:absolute;
    inset:0;
    background: rgba(0,0,0,.35);
    pointer-events:none;
  }

  .lifeSide img{
    width:100%;
    height:100%;
    object-fit: cover;
    display:block;
  }

  .lifeCenter{
    width: 420px;
    height: 420px;
    position: relative;
    z-index: 5;
  }

  .lifeCenterBox{
    width: 100%;
    height: 100%;
    border-radius: 2px;
    overflow:hidden;
    border: 1px solid rgba(255,255,255,.20);
    box-shadow: 0 28px 85px rgba(0,0,0,.55);
    background: #000;
  }

  .lifeCenterBox img{
    width:100%;
    height:100%;
    object-fit: cover;
    display:block;
  }

  .corner{
    position:absolute;
    width: 44px;
    height: 44px;
    border:2px solid rgba(255,255,255,.55);
    z-index: 20;
  }

  .c1{ top:-18px; left:-18px; border-right:none; border-bottom:none; }
  .c2{ top:-18px; right:-18px; border-left:none; border-bottom:none; }
  .c3{ bottom:-18px; left:-18px; border-right:none; border-top:none; }
  .c4{ bottom:-18px; right:-18px; border-left:none; border-top:none; }

  .lifeArrow{
    position:absolute;
    top:50%;
    transform: translateY(-50%);
    width: 46px;
    height: 46px;
    border-radius: 50%;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    user-select:none;
    z-index: 30;
    background: rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.20);
    color:#fff;
    font-size: 24px;
    font-weight: 900;
    box-shadow: 0 14px 40px rgba(0,0,0,.35);
    backdrop-filter: blur(10px);
  }

  .lifeArrow.left{ left: 120px; }
  .lifeArrow.right{ right: 120px; }

  @media(max-width: 576px){
    .lifeSlider{ height: 360px; gap: 0; }
    .lifeSide{ display:none; }
    .lifeCenter{ width: 290px; height: 290px; }
    .lifeArrow.left{ left: 10px; }
    .lifeArrow.right{ right: 10px; }
  }

  /* ===================== FAQ + FORM ===================== */
 .faqWrap{
  position: relative;
  padding: 90px 0;
  background:
   radial-gradient( 1200px 500px at 50% 0%, rgb(15, 19, 33), rgba(8,14,45,0.95) ), 
   linear-gradient( 180deg, #0f1220 0%, #0e111f 35%, #0f1221 70%, #0f1321 100% );
}


  .faqBox{
  position: relative;
  padding: 50px 40px;
  border-radius: 40px;
}

.faqBox::before{
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 40px;
  border: 1.5px solid rgba(255,255,255,0.25);
  pointer-events: none;
}
.faqWrap .secTitle{
  text-align: center;
  color: #fff;
  font-weight: 700;
  letter-spacing: 1px;
  margin-bottom: 50px;
}
@media (max-width: 768px){
  .faqWrap{
    padding: 60px 0;
  }

  .faqBox{
    padding: 30px 18px;
    border-radius: 26px;
  }

  .faqBox::before{
    border-radius: 26px;
  }
}


  .faqGrid{
    display:grid;
    grid-template-columns: 1.35fr .85fr;
    gap: 34px;
    align-items:start;
    position:relative;
    z-index: 2;
  }

 .faqItem{
  border-radius: 10px;
  overflow: hidden;
  background:#fff;
  color:#111;
  border:1px solid rgba(0,0,0,.08);
  margin-bottom: 14px;
}

/* Question Row */
.faqQ{
  padding: 16px 18px;
  font-weight: 700;
  display:flex;
  justify-content:space-between;
  align-items:center;
  cursor:pointer;
  user-select:none;
  font-size: 12px;
}

/* ✅ Answer Smooth */
.faqA{
  max-height: 0;
  overflow: hidden;
  padding: 0 18px;
  font-size: 12px;
  line-height: 1.6;
  font-weight: 700;
  color:#1f2b4a;

  transition: max-height 0.35s ease, padding 0.35s ease;
}

/* ✅ Active Item Styles */
.faqItem.active{
  background: linear-gradient(180deg, #4b6cff, #2f52ff);
  color:#fff;
  border: none;
  box-shadow: 0 20px 50px rgba(0,0,0,.35);
}

.faqItem.active .faqQ{
  border-bottom:1px solid rgba(255,255,255,.22);
}

/* ✅ When open */
.faqItem.active .faqA{
  padding: 14px 18px 32px;   /* ✅ bottom spacing increased */
  color: rgba(255,255,255,.92);
}


  .faqFormCard{
    border-radius: 18px;
    background:#3b4757;
    padding: 18px;
    box-shadow: 0 26px 70px rgba(0,0,0,.35);
    max-width: 400px;
    margin-left:auto;
    width: 100%;
  }

  /* ✅ Student photo visible on desktop + mobile */
  .faqStudentImg{
    position:absolute;
    right: 80px;
    bottom: 0px;
    width: 250px;
    pointer-events:none;
    z-index: 1;
    opacity: 1;
  }

  .faqStudentImg img{
    width:100%;
    height:auto;
    display:block;
  }

  @media (max-width: 1200px){
    .faqGrid{ grid-template-columns: 1fr; }
    .faqFormCard{ margin: 0 auto; }
  }

  @media (max-width: 576px){
    .faqBox{ padding: 18px; }
    .faqStudentImg{
      position: static;
      width: 220px;
      margin: 18px auto 0;
      display:block;
    }
    .faqStudentImg img{
      filter: drop-shadow(0 18px 40px rgba(0,0,0,.35));
    }
  }

 /* FOOTER WRAPPER */

.footGrid{
  background: radial-gradient(900px 500px at 50% 0%, rgba(71,95,255,.30), rgba(0,0,0,.65));
  padding: 80px 0 0px;
  color: #fff;
}

/* GRID */
.footGrid{
  display: grid;
  grid-template-columns: 1fr;
}

/* LEFT BLOCK */
.footLeft{
  display: flex;
  align-items: flex-start;
  gap: 30px;
}

/* LOGO */
.footLeft img{
  max-width: 210px;
  height: auto;
}

/* DIVIDER LINE */
.footDivider{
  width: 1px;
  height: 110px;
  background: rgba(255,255,255,0.35);
}

/* ADDRESS */
.footInfo{
  max-width: 420px;
  font-size: 14px;
  line-height: 1.7;
  color: rgba(255,255,255,0.85);
  margin-bottom: 18px;
}

/* CONTACT PILLS */
.footBtns{
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.pillContact{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 18px;
  border-radius: 999px;
  background: linear-gradient(135deg,#3f6cff,#273ece);
  color: #fff;
  text-decoration: none;
  font-size: 14px;
  font-weight: 500;
  width: fit-content;
  transition: transform .2s ease, box-shadow .2s ease;
}

.pillContact:hover{
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(63,108,255,0.35);
}

/* COPYRIGHT */
.copy{
  margin-top: 40px;
  font-size: 13px;
  color: rgba(255,255,255,0.65);
}

/* =========================
   MOBILE FIXES
========================= */
@media (max-width: 768px){

  footer,
  .footGrid{
    padding: 50px 0 25px;
  }

  .footLeft{
    flex-direction: column;
    gap: 20px;
  }

  .footDivider{
    width: 100%;
    height: 1px;
  }

  .footInfo{
    font-size: 13px;
  }

  .copy{
    text-align: center;
  }
}

  /* ===================== MOBILE HERO FIX ===================== */
  /* ✅ show this image ONLY ON MOBILE after USP badge */
  .hero-mobile-image{
    display:none;
    margin-top: 18px;
    width:100%;
    border-radius: 18px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.12);
    box-shadow: 0 22px 60px rgba(0,0,0,.45);
  }

  .hero-mobile-image img{
    width:100%;
    height:auto;
    display:block;
  }

  .usp-badge-mobile{
    display:none;
    margin-top: 14px;
    width: 100%;
    background: rgba(0,0,0,.30);
    border:1px solid rgba(255,255,255,.12);
    border-radius: 999px;
    padding: 10px 12px;
    backdrop-filter: blur(10px);
    box-shadow: 0 18px 50px rgba(0,0,0,.35);
    gap: 10px;
    align-items:center;
    justify-content:flex-start;
  }

  .usp-badge-mobile .dot{
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display:grid;
    place-items:center;
    background: rgba(255,255,255,.10);
    border:1px solid rgba(255,255,255,.18);
    font-weight: 900;
    flex:0 0 auto;
  }

  .usp-badge-mobile .uspText{
    font-weight: 600;
    font-size: 14px;
    color: rgba(255,255,255,.92);
    white-space: nowrap;
    overflow:hidden;
    text-overflow: ellipsis;
    flex:1;
  }

  @media (max-width: 1200px){
    .hero-mid{ display:none; }
    .hero-grid{ grid-template-columns: 1fr; }
    .hero-right{ justify-content:flex-start; margin-top: 20px; }
    .leadForm{ width:100%; max-width: 420px; }
    .hero-title{ font-size: 48px; }
    .progGrid{ grid-template-columns: repeat(2, 1fr); }
    .applyStepsRow{ grid-template-columns: 1fr; }
    .applyArrow{ display:none; }
  }

  @media (max-width: 576px){
    section{ padding: 10px 0; }

    .hero{
      min-height:auto;
      padding-bottom: 18px;
    }

    .hero-left{
      padding-top: 10px;
       /* mobile centered like screenshot */
    }

    .hero-title{ font-size: 34px; line-height: 1.08; }
    .hero-subtitle{ font-size: 16px; }
    .hero-adm{ font-size: 13px; margin-bottom: 14px; }

    .hero-right{ display:block; background:none !important; padding:0 !important; } /* ✅ NO bg behind form */
    .hero-grid{ gap: 0px; padding-bottom: 0px; }

    .hero-mobile-image{ display:block; }
    .usp-badge-mobile{
      display:flex;
      margin-left:auto;
      margin-right:auto;
      max-width: 340px;
    }

    .leadForm{
      margin-top: 18px;
      margin-left:auto;
      margin-right:auto;
    }

    .whyWrap{ grid-template-columns: 1fr; }
    
    .whyText p{ margin-left:auto; margin-right:auto;         font-size: 16px; }
    .whyText .miniLine{ margin-left:05px; margin-right:auto; }

    .programTabs{
      isplay:flex;
  justify-content:center;
  align-items:center;
  margin-bottom:50px;
      
    }

    .programTabs button{ font-size: 18px; opacity:.45; }
    .programTabs button.active{
      font-size: 24px;
      padding: 8px 18px;
	  font-weight:800;
    }

    .apply-fixed-mobile{ display:block; }
    body{ padding-bottom: 72px; }
  }
/* ✅ Hide Direct Second Year card by default */


/* ✅ Show Direct Second Year ONLY when B.Tech is active */
#btechTab.active .directSecondYearDesktop{
  display: flex !important;
}

@media(max-width:768px){

  .progGrid.active{
    display:flex !important;
    overflow-x:auto;
    justify-content:flex-start;

    padding-bottom:10px;
  }

  .progCard{
    min-width:280px;
  }

}


/* ===================== DIRECT SECOND YEAR MOBILE FIX ===================== */
@media (max-width: 576px){

  .directSecondYearMobile{
    display: block !important;
    margin-top: 18px !important;
    border-radius: 18px !important;
    overflow: hidden !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    background: linear-gradient(180deg, #2f52ff, #2337aa) !important;
    box-shadow: 0 18px 55px rgba(0,0,0,.35) !important;
  }

  .directSecondYearMobile .inner{
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 14px !important;
    padding: 18px !important;
  }

  /* ✅ Text block */
  .directSecondYearMobile .inner > div:first-child{
    flex: 1 !important;
    min-width: 0 !important;
  }

  .directSecondYearMobile h6{
    font-weight: 700 !important;
    margin: 0 0 8px !important;
    font-size: 20px !important;
    line-height: 1.25 !important;
    color: #fff !important;
  }

  .directSecondYearMobile p{
    margin: 0 0 12px !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    color: rgba(255,255,255,.88) !important;
    line-height: 1.4 !important;
  }

  /* ✅ Buttons vertical */
  .directSecondYearMobile .btnRow{
    display: flex !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin-top: 10px !important;
    width: 100% !important;
    max-width: 150px !important; /* ✅ keeps buttons like screenshot */
  }

  .directSecondYearMobile .btnRow a{
    width: 100% !important;
    height: 34px !important;
    border-radius: 999px !important;
    font-weight: 900 !important;
    font-size: 11px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-decoration: none !important;
  }

  .directSecondYearMobile .btnRow a.apply{
    background: rgba(255,255,255,.95) !important;
    color: #2536a5 !important;
  }

  .directSecondYearMobile .btnRow a.brochure{
    background: rgba(0,0,0,.15) !important;
    border: 1px solid rgba(255,255,255,.35) !important;
    color: #fff !important;
  }

  /* ✅ Image right */
  .directSecondYearMobile .pic{
    
    width: 130px !important;
    height: 170px !important;
    
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
	margin-bottom: -17px;
  }

  .directSecondYearMobile .pic img{
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center top !important;
    display: block !important;
  }

}
@media (max-width: 576px){

  /* ✅ Direct Second Year mobile title exactly like screenshot */
  .directSecondYearMobile .dsyTitle{
    margin: 0 0 12px !important;
        font-weight: 700 !important;
        font-size: 16px !important;
        line-height: 1.30 !important;
    letter-spacing: -0.2px !important;
    color: #fff !important;
    max-width: 220px !important;   /* ✅ important: keeps wrapping like screenshot */
  }

  .directSecondYearMobile .dsyTitle span{
    display: inline-block !important;
  }

}

/* ✅ PROGRAM HIGHLIGHTS PNG ICONS */
.hiIcon img{
  width: 24px;
  height: 24px;
  object-fit: contain;
  display: block;
}

/* ✅ Header Logo PNG */
.hero-logo img{
  height: 60px;              /* you can increase/decrease */
  width: auto;
  display: block;
}

@media (max-width: 576px){
  .hero-logo img{
    height: 80px;
  }
}
/* ✅ USP ICON PNG (Desktop + Mobile) */
.usp-badge .dot,
.usp-badge-mobile .dot{
  display:flex !important;
  align-items:center;
  justify-content:center;
}

.usp-badge .dot img,
.usp-badge-mobile .dot img{
  width: 34px;
  height: 34px;
  object-fit: contain;
  display:block;
}

/* ✅ Mobile USP overlay on image */
@media (max-width: 576px){

  .hero-mobile-image{
    position: relative !important;
  }

  .hero-mobile-image .usp-overlay{
    position: absolute !important;
    top: 14px;          /* adjust as needed */
    left: 14px;         /* adjust as needed */
    z-index: 20;

    width: auto !important;
    max-width: calc(100% - 28px) !important;
    display: flex !important;
  }

  /* ✅ USP should remain readable on image */
  .hero-mobile-image .usp-overlay .uspText{
    color: #ffffff !important;
  }
}
/* ✅ FIX USP ICON DISPLAY (Desktop + Mobile) */
.usp-badge .dot,
.usp-badge-mobile .dot{
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  background: rgba(0,0,0,.40) !important;   /* ✅ gives contrast */
  border: 1px solid rgba(255,255,255,.18) !important;
}

.usp-badge .dot img,
.usp-badge-mobile .dot img{
  width: 24px !important;
  height: 24px !important;
  object-fit: contain !important;
  display: block !important;
}
@media (max-width: 576px){
  .hero-mobile-image{
    position: relative !important;
  }

}

/* ✅ FORCE REMOVE USP CAPSULE (Desktop + Mobile) */
.usp-badge,
.usp-badge-mobile{
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

/* ✅ REMOVE capsule look from dot also */
.usp-badge .dot,
.usp-badge-mobile .dot{
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  width: auto !important;
  height: auto !important;
  border-radius: 0 !important;
  padding: 0 !important;
}

/* ✅ PNG icon sizing only */
.usp-badge .dot img,
.usp-badge-mobile .dot img{
  width: 22px !important;
  height: 22px !important;
  object-fit: contain !important;
  display: block !important;
}

/* ✅ Align icon + text nicely */
.usp-badge,
.usp-badge-mobile{
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 10px !important;
}
/* ✅ Bigger USP Icon + Bigger Text (Desktop + Mobile) */
.usp-badge .dot img,
.usp-badge-mobile .dot img{
  width: 45px !important;
  height: 45px !important;
}

.usp-badge .uspText,
.usp-badge-mobile .uspText{
  font-size: 20px !important;
  font-weight: 600 !important;
}

/* ✅ Recruiters Banner Image (Desktop + Mobile) */
.recruitBannerDesktop,
.recruitBannerMobile{
  width: 100%;
}

.recruitBannerDesktop img,
.recruitBannerMobile img{
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
}

/* ✅ Desktop visible only */
.recruitBannerDesktop{
  display: block;
}

/* ✅ Mobile hidden on desktop */
.recruitBannerMobile{
  display: none;
}

@media (max-width: 576px){

  /* ✅ Hide desktop banner on mobile */
  .recruitBannerDesktop{
    display: none;
  }

  /* ✅ Show mobile banner */
  .recruitBannerMobile{
    display: block;
  }
}

/* ✅ Recruiters heading alignment */
.recruitTitle{
  font-weight: 900;
  font-size: 18px;
  color: rgba(255,255,255,.95);
  margin: 0 0 14px;
}

/* ✅ Desktop Recruiters Marquee */
.recruitMarqueeNew{
  width: 100%;
  overflow: hidden;
  position: relative;
}

.recruitTrackNew{
  display: flex;
  align-items: center;
  gap: 0;
  width: max-content;
  animation: recruiterSlide 18s linear infinite;
}

.recruitTrackNew img{
  height: 90px;
  width: auto;
  display: block;
}

@keyframes recruiterSlide{
  0%{
    transform: translateX(0);
  }
  100%{
    transform: translateX(-50%);
  }
}

/* ✅ Mobile Recruiters Image */
.recruitMobileImg img{
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
}

/* ✅ Mobile heading center aligned */
@media (max-width: 576px){
  .recruitRow{
    text-align: center !important;
  }

  .recruitTitle{
    text-align: center !important;
    width: 100%;
    font-size: 16px;
  }
}
/* ✅ Recruiters - Title + Marquee in same row */
.recruitRowNew{
  display: flex;
  align-items: center;
  gap: 26px;
  margin-top: 34px;
  margin-left: 40px;
  width: 100%;
}

/* ✅ Left heading fixed width */
.recruitLeftTitle{
  flex: 0 0 auto;
  min-width: 180px;
  font-weight: 600;
  font-size: 18px;
  color: rgba(255,255,255,.95);
}

/* ✅ Marquee takes remaining space */
.recruitMarqueeNew{
  flex: 1;
  overflow: hidden;
  position: relative;
}

/* ✅ Sliding track */
.recruitTrackNew{
  display: flex;
  align-items: center;
  width: max-content;
  animation: recruiterSlide 18s linear infinite;
}

/* ✅ Logos banner image height */
.recruitTrackNew img{
  height: 90px;
  width: auto;
  display: block;
}

/* ✅ Animation */
@keyframes recruiterSlide{
  0%{ transform: translateX(0); }
  100%{ transform: translateX(-50%); }
}

/* ✅ Mobile title center + mobile image below */
@media(max-width: 576px){
  .recruitRowNew{
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 14px;
  }

  .recruitLeftTitle{
    min-width: auto;
    font-size: 30px;
  }

  .recruitMobileImg img{
    width: 100%;
    height: auto;
    display: block;
    object-fit: contain;
  }
}


/* =========================================
   MOBILE ARROW FIX — DO NOT TOUCH DESKTOP
   ========================================= */
@media (max-width: 576px) {

  .applyArrow{
    width: 2px;
    height: 34px;
    background: rgba(255,255,255,0.9);
    margin: 6px auto 6px auto;
    position: relative;
  }

  .applyArrow::after{
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 8px;
    height: 8px;
    border-right: 2px solid rgba(255,255,255,0.9);
    border-bottom: 2px solid rgba(255,255,255,0.9);
    transform: translateX(-50%) rotate(45deg);
  }

}



/* ==============================
   PROGRAMS OFFERED – ACTIVE LOGIC
================================ */

/* BASE CARD */
.progCard{
  background: rgba(8,14,40,0.85);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 16px;
  padding: 18px;
  position: relative;
  transition: all 0.35s ease;
}

/* IMAGE BASE */
.progCard .img img{
  border-radius: 12px;
  filter: brightness(0.8);
  transition: all 0.35s ease;
}

/* BUTTONS BASE */
.progCard .progBtns{
  opacity: 0.85;
  transition: all 0.3s ease;
  
}

/* ==============================
   DEFAULT ACTIVE (FIRST CARD)
   ONLY WHEN GRID IS NOT HOVERED
================================ */

.progGrid.active:not(:hover) .progCard:first-child{
  border-color: #4f6cff;
  transform: translateY(0px);

}

.progGrid.active:not(:hover) .progCard:first-child .img img{
  filter: brightness(1);
}

.progGrid.active:not(:hover) .progCard:first-child .progBtns{
  opacity: 1;
}

/* ==============================
   HOVER ACTIVE (ANY CARD)
================================ */

.progCard:hover{
  border-color: #4f6cff;
  
  
  
 
}




.progCard:hover .img img{
  filter: brightness(1);
}

.progCard:hover .progBtns{
  opacity: 1;
}

/* PRIMARY BUTTON STRONG */
.progCard:hover .progBtns .primary,
.progGrid.active:not(:hover) .progCard:first-child .progBtns .primary{
background: linear-gradient(135deg,#3760ff,#a0a7fb);
  color: #fff;
 
}

/* SECONDARY BUTTON */
.progCard .progBtns a{
  border: 1px solid rgba(255,255,255,0.25);
  color: #fff;
  transition: all 0.3s ease;
}

.progCard:hover .progBtns a:not(.primary),
.progGrid.active:not(:hover) .progCard:first-child .progBtns a:not(.primary){
  border-color: #6f8cff;
  color: #6f8cff;
}

/* ==============================
   PROGRAM CARD TITLE GRADIENT ON HOVER
================================ */

/* Base title */
.progCard h5{
  transition: all 0.3s ease;
}

/* Gradient text on hover (same style as text-gradient-soft) */
.progCard:hover h5{
  background: linear-gradient( 90deg, #fff 0%, #497afd 45%, #4176ff 100% );
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* Also apply gradient when first card is active (default state) */
.progGrid.active:not(:hover) .progCard:first-child h5{
  background: linear-gradient( 90deg, #fff 0%, #c0d1ff 45%, #4176ff 100% );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* =========================================
   PROGRAMS OFFERED – FINAL BUTTON LOGIC
========================================= */

/* DEFAULT: hide buttons for ALL cards */
.progCard .progBtns{
  opacity: 0;
  transform: translateY(6px);
  pointer-events: none;
  transition: all 0.3s ease;
}

/* FIRST CARD: buttons always visible */
.progGrid.active .progCard:first-child .progBtns{
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

/* OTHER CARDS: buttons visible ONLY on hover */
.progCard:not(:first-child):hover .progBtns{
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

/* OPTIONAL: smooth button hover feel */
.progCard .progBtns a{
  transition: all 0.25s ease;
}
/* =========================================
   DIRECT SECOND YEAR CARD – FINAL FIX
========================================= */

.directSecondYearDesktop{
  background: #2f4be8;
  border-radius: 18px;
  padding: 20px 36px 36px 28px; /* more right padding */
  position: relative;
  overflow: hidden;
  min-height: 420px;
}

/* Logo row spacing */
.directSecondYearDesktop .miniTop{
  margin-bottom: 18px;
}

/* Heading text */
.directSecondYearDesktop h4{
  margin: 18px 0 26px;
  font-size: 20px;
  line-height: 1.35;
  font-weight: 600;
  color: #ffffff;
  max-width: 260px; /* prevents clash with image */
}

/* ✅ Buttons must be stacked */
.directSecondYearDesktop .btnRow{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
  margin-top: 22px;
}

/* ✅ Button base – FIX WIDTH + TEXT CUT */
.directSecondYearDesktop .btnRow a{
  width: 180px;              /* 🔥 prevents text cut */
  padding: 11px 20px;
  font-size: 14px;
  border-radius: 999px;
  text-align: center;
  white-space: nowrap;      /* 🔥 prevents breaking */
  transition: all 0.3s ease;
}

/* Apply Now – filled */
.directSecondYearDesktop .btnRow a.apply{
  background: #ffffff;
  color: #2f4be8;
  font-weight: 600;
}

/* Download Brochure – outline */
.directSecondYearDesktop .btnRow a.brochure{
  background: transparent;
  color: #ffffff;
  border: 1px solid rgba(255,255,255,0.7);
}

/* ✅ Student image – FIX OVERLAP */
.directSecondYearDesktop .studentCut{
  position: absolute;
  right: -10px;
  bottom: 0;
  max-height: 30%;
  z-index: 1;
  pointer-events: none;
}

/* Ensure text + buttons stay above image */
.directSecondYearDesktop > div{
  position: relative;
  z-index: 2;
}
/* =========================================
   DSY CARD – BUTTON SIZE ONLY (NO CARD CHANGE)
========================================= */

/* Keep card size exactly same – NO height / padding changes */
.directSecondYearDesktop{
  min-height: unset !important;
}

/* Button container spacing */
.directSecondYearDesktop .btnRow{
  gap: 10px;              /* slightly tighter */
  margin-top: 18px;
}



/* 🔽 Reduce button size */
.directSecondYearDesktop .btnRow a{
  width: 150px;           /* 🔥 reduced */
  padding: 5px 16px;      /* 🔥 reduced */
  font-size: 13px;        /* 🔥 reduced */
  border-radius: 999px;
}



/* Apply button */
.directSecondYearDesktop .btnRow a.apply{
   width: 100px;           /* 🔥 reduced */
  padding: 5px 10px;      /* 🔥 reduced */
  font-size: 13px;        /* 🔥 reduced */
  border-radius: 999px;
    background: linear-gradient( 90deg, #fff 0%, #fff 45%, #769cff 100% );

}

/* Download button */
.directSecondYearDesktop .btnRow a.brochure{
  border-width: 1px;
  font-weight: 600;
}

/* Prevent image from forcing height */
.directSecondYearDesktop .studentCut{
max-height: 41%;
  width: 150px;
}

.text-gradient-softsd {
  background: linear-gradient( 90deg, #fff 0%, #c0d1ff 45%, #95b3ff 100% );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.hero-adm-gradientpo{
  background: linear-gradient( 90deg, #5174ff 0%, #809fff 50%, #bfcfff 100% );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* HOW TO APPLY outer section (card) */
.howApplyBox {
  position: relative;
  overflow: hidden;
  border-radius: 24px;
  background: linear-gradient(
    135deg,
    rgba(72, 118, 255, 0.95),
    rgba(40, 90, 255, 0.95)
  );
}
/* ============================= */
/* FAQ MOBILE FIX ONLY */
/* ============================= */
@media (max-width: 768px) {

  .faqWrap {
    padding: 30px 0;
  }

  .faqBox {
    padding: 16px;
  }

  .faqGrid {
    display: block;
  }

  /* FAQ Item */
  .faqItem {
    margin-bottom: 14px;
    border-radius: 14px;
    overflow: hidden;
  }

  /* Question */
  .faqQ {
    padding: 16px 44px 16px 16px;
    font-size: 20px;
    line-height: 1.45;
    font-weight: 600;
    position: relative;
  }

  .faqQ span {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 16px;
  }

  /* Answer */
  .faqA {
    padding: 0 16px;
    font-size: 20px;
    line-height: 1.65;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: all 0.3s ease;
  }

  /* Active (opened) state */
  .faqItem.active .faqA {
    padding: 14px 16px 65px 18px;
    
    opacity: 1;
  }

  /* Remove any visual divider effect */
  .faqA::before,
  .faqA::after {
    display: none !important;
  }

  /* Admissions form card spacing (mobile) */
  .faqFormCard {
    margin-top: 30px;
    padding: 16px;
    border-radius: 16px;
  }

  /* Hide student image on mobile for clean layout */
  .faqStudentImg {
    display: none;
  }
}

/* ================= FRA NOTICE ================= */



/* FRA BOX */
.fraBox{
  display: grid;
  grid-template-columns: 190px 1fr;
  align-items: center;
  gap: 120px;

  padding: 42px 200px;
  margin-top: 48px;

  border: 1.5px solid rgba(80,120,255,0.6);
  border-radius: 16px;

  background: linear-gradient(
    180deg,
    rgba(6,12,35,0.85) 0%,
    rgb(5, 11, 34) 100%
  );
}

/* LOGO */
.fraLogo{
  display: flex;
  align-items: center;
  justify-content: center;
}

.fraLogo img{
  max-width: 250px;
  height: 90px;
  background: #ffffff;
  padding: 5px 5px;
  border-radius: 10px;
}

/* TEXT BLOCK */
.fraText{
  color: #ffffff;
}

/* Line 1 */
.fraLine1{
  font-size: 20px;
  line-height: 1.6;
  margin: 0 0 6px 0;
  opacity: 0.95;
}

/* Line 2 — MAIN EMPHASIS */
.fraLine2{
  font-size: 22px;
  font-weight: 600;
  line-height: 1.4;
  margin: 0 0 10px 0;
  color: #ffffff;
}

/* Line 3 — helper text */
.fraLine3{
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
  color: rgba(255,255,255,0.75);
  font-weight: 600;
  margin-bottom: 20px;
}


/* =============================== */
/* FRA NOTICE – MOBILE FINAL FIX */
/* =============================== */
@media (max-width: 768px) {



  .fraBox {
  
    width: 100%;
    margin: 0 auto;

    padding: 24px 20px;
    border-radius: 18px;

    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 14px;
  }

  .fraLogo img {
        max-width: 190px;
        margin-bottom: 6px;
        height: 60px;
  }

  .fraLine2 {
    font-size: 22px;
    line-height: 1.45;
  }

  .fraLine3 {
    font-size: 12.5px;
    opacity: 0.8;
  }
}



/* ================= MOBILE ================= */

@media (max-width: 768px){
  .fraBox{
    flex-direction: column;
    text-align: center;
    
  }

  .fraMain{
    font-size: 15px;
  }

  .fraSub{
    font-size: 12px;
  }
}

/* FRA line under programs */
.hero-fra {
  margin-top: 10px;
  margin-bottom: 18px;
  font-size: 15px;
  line-height: 1.5;
  color: rgba(255, 255, 255, 0.85);
  max-width: 520px;
}

/* Force Authority line break */
.hero-fra .fra-break {
  display: block;
  margin-top: 4px;
  font-weight: 500;
}

/* Mobile refinement */
@media (max-width: 768px) {
  .hero-fra {
    font-size: 20px;
    margin-top: 8px;
    margin-bottom: 16px;
    text-align: left;
  }

  .hero-fra .fra-break {
    margin-top: 6px;
  }
}


/* ✅ DSY visibility control */
.directSecondYearMobile {
  display: block;
}

.directSecondYearMobile.hide {
  display: none !important;
}

/* ===============================
   Direct Second Year – VISIBILITY
   =============================== */

/* ❌ Default: hidden everywhere */
.directSecondYearMobile {
  display: none;
}

/* ✅ Mobile only */
@media (max-width: 576px) {
  .directSecondYearMobile {
    display: block;
  }

  /* JS-controlled hide */
  .directSecondYearMobile.hide {
    display: none !important;
  }
}
/* ===============================
   Top Recruiters – MOBILE FIX
   =============================== */
@media (max-width: 576px){

  .recruitRowNew{
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 16px;
    margin-left: 0;        /* 🔥 remove desktop offset */
    margin-top: 20px;
    text-align: center;
  }

  .recruitLeftTitle{
    width: 100%;
    text-align: center;
    font-size: 30px;
    font-weight: 700;
    margin: 0;
  }

  .recruitMobileImg{
    width: 100%;
    max-width: 360px;      /* 🔥 keeps it neat */
    margin: 0 auto;
  }

  .recruitMobileImg img{
    width: 100%;
    height: auto;
    display: block;
    object-fit: contain;
  }
}
/* ===============================
   Program Card Buttons – MOBILE
   =============================== */
@media (max-width: 576px){

  .progBtns{
    gap: 8px;                 /* slightly tighter spacing */
    margin-top: 16px;
  }

  .progBtns a{
    height: 36px;             /* 🔥 better tap target */
    padding: 0 14px;
    font-size: 12px;          /* readable on mobile */
    font-weight: 700;
    border-radius: 999px;
    line-height: 1;
  }

  /* Primary button stronger */
  .progBtns a.primary{
    background: linear-gradient(180deg, #6f8cff, #3f5bff);
    box-shadow: 0 6px 16px rgba(95,122,255,.35);
  }

  /* Secondary button clearer */
  .progBtns a:not(.primary){
    background: rgba(255,255,255,.08);
    border-color: rgba(255,255,255,.35);
    color: #ffffff;
  }
}
/* ===============================
   Placement Card Label – MOBILE
   =============================== */
@media (max-width: 576px){

  .placeCard .lbl{
    font-size: 12px;      /* slightly smaller for mobile fit */
    font-weight: 800;    /* still bold, less cramped */
    line-height: 1.35;   /* 🔥 better readability */
    letter-spacing: .2px;
  }

}
/* ===============================
   HOW TO APPLY – TEXT (MOBILE)
   =============================== */
@media (max-width: 576px){

  .applyItem p{
    font-size: 22px;     /* better fit on mobile */
    line-height: 1.6;   /* improves readability */
    margin: 0;
  }

}
@media (max-width: 768px){

  .faqQ{
    font-size: 15px;
    padding: 16px 44px 16px 16px;
    line-height: 1.45;
  }

  .faqA{
    font-size: 15px;
    line-height: 1.7;
    padding: 0 16px;
    overflow: hidden;
    transition: max-height 0.35s ease, padding 0.35s ease;
  }

  .faqItem.active .faqA{
    padding: 0px 16px 40px;
  }
}


/* ================= FULL ADVANTAGE SLIDER ================= */
/* ==========================
   Advantage Slider (Stable)
   ========================== */

.advSlider{
  
  width: 100%;
  position: relative;
}

.advTrack{
  display: flex;
  transition: transform 0.8s ease;
}

.advSlide{
  min-width: 100%;
  opacity: 0;
  transition: opacity 0.6s ease;
}

.advSlide.active{
  opacity: 1;
}

.advSlide .line{
  display: block;
  line-height: 1.2;
}




/* ===================== WHY MIT AOE – MOBILE ONLY ===================== */
@media (max-width: 576px) {

  /* Container spacing */
  .whyWrap{
    display: flex;
    flex-direction: column;
    gap: 18px;
  }

  /* Image full width */
  .whyImg img{
    width: 100%;
    height: auto;
    border-radius: 14px;
  }

  /* Text block */
  .whyText{
    padding: 0 4px;
  }

  .whyText h3{
    font-size: 26px;
    letter-spacing: .6px;
    margin-bottom: 8px;
  }

  .whyText p{
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 14px;
  }

  .miniLine{
    width: 38px;
    margin: 12px 0;
  }

  .adv{
    font-size: 22px;
    letter-spacing: .5px;
    margin-bottom: 10px;
  }

  /* ===================== ADVANTAGE SLIDER ===================== */
  .bigBlue{
    font-size: 30px;
    line-height: 1.25;
    overflow: hidden;
  }

  .advSlider{
    width: 100%;
    
  }

  .advTrack{
    position: relative;
    min-height: 60px;
  }

  .advSlide{
    position: absolute;
    inset: 0;
    opacity: 0;
    transform: translateX(30px);
    transition: all .6s ease;
  }

  .advSlide.active{
    opacity: 1;
    transform: translateX(0);
  }

  .advSlide .line{
    display: block;
    white-space: nowrap;
  }

  /* ===================== FRA NOTICE – MOBILE ===================== */
  .fraNotice{
    margin-top: 22px;
  }

  .fraBox{
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 18px 16px;
    border-radius: 18px;
    gap: 14px;
    text-align: center;
  }

  .fraLogo img{
    max-width: 190px;
    height: auto;
  }

  .fraLine2{
    font-size: 13px;
    line-height: 1.6;
  }

  .fraLine3{
    font-size: 11px;
    line-height: 1.5;
    opacity: .75;
  }

}

/* ===============================
   ADVANTAGE SLIDER – MOBILE FIX
   =============================== */
@media (max-width: 768px) {

  /* allow full height */
  .bigBlue {
    position: relative;
    overflow: visible !important;
    height: auto !important;
  }

  .advSlider {
    width: 100%;
    
  }

  .advTrack {
    display: flex;
    align-items: flex-start;
    transition: transform 0.8s ease-in-out;
  }

  .advSlide {
    min-width: 100%;
    flex-shrink: 0;
    opacity: 0;
    transform: translateX(20px);
    transition: opacity 0.6s ease, transform 0.6s ease;
    height: auto;
  }

  .advSlide.active {
    opacity: 1;
    transform: translateX(0);
  }

  /* Ensure 2-line layout always */
  .advSlide .line {
    display: block;
    width: 100%;
    line-height: 1.25;
  }

  /* Prevent clipping */
  .whyText {
    overflow: visible !important;
  }
}
/* ===============================
   ADVANTAGE SLIDER – MOBILE FIX
   =============================== */
@media (max-width: 768px) {

  /* h2 must behave like a container, not text */
  h2.bigBlue {
    display: block;
    height: auto !important;
    line-height: normal !important;
    overflow: visible !important;
  }

  .advSlider {
    position: relative;
    width: 100%;
    
  }

  .advTrack {
    display: flex;
    width: 100%;
    transition: transform 0.8s ease-in-out;
  }

  .advSlide {
    min-width: 100%;
    flex-shrink: 0;
    height: auto;
    opacity: 0;
    transform: translateX(20px);
    transition: opacity 0.5s ease, transform 0.5s ease;
  }

  .advSlide.active {
    opacity: 1;
    transform: translateX(0);
  }

  /* force TWO lines always */
  .advSlide .line {
    display: block;
    width: 100%;
    line-height: 1.25;
    white-space: normal;
  }

  /* stop parent clipping */
  .whyText {
    overflow: visible !important;
  }
}
/* ===============================
   FRA NOTICE – MOBILE FIX
   =============================== */
@media (max-width: 768px) {

  .hero-fra {
    display: block !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    margin-top: 10px !important;
    margin-bottom: 16px !important;
    text-align: left !important;
    color: rgba(255,255,255,0.85);
  }

  .hero-fra .fra-break {
    display: block !important;   /* 🔑 FORCE NEW LINE */
    margin-top: 4px;
    font-weight: 600;
    opacity: 0.9;
  }
}
/* ================= Advantage Slider ================= */

.advSlider{
  position: relative;
  min-height: 96px;   /* IMPORTANT: reserve space */
}

/* Hide all slides completely */
.advSlide{
  position: absolute;
  inset: 0;
  opacity: 0;
  visibility: hidden;
  transform: translateX(30px);
  transition: opacity .6s ease, transform .6s ease;
  margin: 0;
}

/* Show ONLY active slide */
.advSlide.active{
  opacity: 1;
  visibility: visible;
  transform: translateX(0);
}

/* Two-line enforcement */
.advSlide .line{
  display: block;
  line-height: 1.15;
}

/* Mobile adjustments */
@media (max-width:768px){
  .advSlider{
    min-height: 120px;
  }

  .advSlide{
    font-size: 30px;
  }
}


/* =================================================
   USP ICON – FINAL (PNG ONLY, NO TEXT)
   ================================================= */

/* USP container */
.usp-badge{
  display: flex;
  align-items: center;
  justify-content: center;

  background: transparent !important;
  border: none !important;
  padding: 0 !important;
  box-shadow: none !important;
}

/* Icon wrapper */
.usp-badge .dot{
 
  height: 50px !important;

  display: flex;
  align-items: center;
  justify-content: center;

  background: transparent !important;
  border: none !important;
  padding: 0 !important;
}

/* PNG icon */
.usp-badge .dot img{
  width: 140px !important;
  height: 1400px !important;
  object-fit: contain !important;
  display: block !important;
}

/* ---------------- MOBILE ---------------- */
@media (max-width: 576px){

  .usp-badge .dot{
    width: 64px !important;
    height: 64px !important;
  }

  .usp-badge .dot img{
    width: 64px !important;
    height: 64px !important;
  }
}


/* ===============================
   USP SLIDE UP ANIMATION (PNG)
   =============================== */

.usp-slide{
  animation: uspSlideUp 0.45s ease forwards;
}

@keyframes uspSlideUp{
  0%{
    opacity: 0;
    transform: translateY(16px);
  }
  100%{
    opacity: 1;
    transform: translateY(0);
  }
}

/* icon size safety */
.usp-badge .dot img,
.usp-badge-mobile .dot img{
  width: 90px;
  height: 90px;
  object-fit: contain;
  display: block;
}

@media (max-width: 576px){
  .usp-badge .dot img,
  .usp-badge-mobile .dot img{
    width: 120px;
    height: 120px;
  }
}

/* ================================
   USP ICON – MOBILE SIZE FIX ONLY
   ================================ */
@media (max-width: 576px){

  /* Mobile USP container */
  .usp-badge-mobile{
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  /* Icon wrapper */
  .usp-badge-mobile .dot{
    width: 200px !important;     /* 🔥 increase touch area */
    height: 64px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  /* PNG icon itself */
  .usp-badge-mobile .dot img{
    width: 100px !important;     /* 🔥 ICON SIZE (match Figma) */
    height: 100px !important;
    object-fit: contain !important;
    display: block !important;
  }
}


/* ================= CAREER OPPORTUNITIES ================= */

.careerWrap{
  padding:100px 0;
  background:#050b22;
  text-align:center;
  position:relative;
  overflow:hidden;
}

/* SMALL LINE */
.careerMiniLine{
  width:2px;
  height:40px;
  background:rgba(255,255,255,.2);
  margin:18px auto 22px;
}

/* TITLE */
.careerMainTitle{
font-size: 28px;
  font-weight: 500;
  color:#ffffff;
  margin-bottom:12px;
}

/* DESCRIPTION */
.careerMainDesc{
  max-width:760px;
  margin:0 auto 50px;

  font-size:15px;
  line-height:1.8;

  color:rgba(255,255,255,.75);
}

/* GRID */
.careerOpportunityGrid{
  display:flex;
  justify-content:center;
  align-items:stretch;   /* IMPORTANT */
  gap:28px;
  flex-wrap:wrap;
}

/* CARD */
/* CARD */
.careerOpportunityCard{
  position:relative;

  width:420px;
  height:520px;

  border-radius:20px;
  overflow:hidden;

 

  background-color:#111827;

  transition:all .4s ease;

  display:flex;
  align-items:stretch;   /* FIX */
}

/* CONTENT */
/* CONTENT */
.careerContent{
  position:relative;
  z-index:2;

  width:100%;
  height:100%;

  padding:26px;

  display:flex;
  flex-direction:column;

  justify-content:flex-end; /* FIXED */
}

/* COMPUTER BACKGROUND */
.compCareer{
  background:
    linear-gradient(
      to top,
      rgba(0,0,0,.88),
      rgba(0,0,0,.18)
    ),
    url('assets/images/career.png');

  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}

/* MECHANICAL BACKGROUND */
.mechCareer{
  background:
    linear-gradient(
      to top,
      rgba(0,0,0,.88),
      rgba(0,0,0,.18)
    ),
    url('assets/images/career.png');

  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
}

/* HOVER EFFECT */
.careerOpportunityCard:hover{
  transform:translateY(-8px);

  box-shadow:
    0 25px 60px rgba(0,0,0,.5),
    0 0 40px rgba(83,98,255,.2);
}

/* CONTENT */
.careerContent{
  position:relative;
  z-index:2;

  width:100%;
  padding:26px;
}

/* CARD TITLE */
.careerContent h4{
  font-size:22px;
  font-weight:700;
  color:#ffffff;

  margin-bottom:220px;   /* IMPORTANT */

  text-align:left;
}

/* TAGS WRAP */
.careerTags{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

/* TAG */
.careerTags span{
  background:rgba(255,255,255,.95);

  color:#111111;

  padding:8px 14px;

  border-radius:999px;

  font-size:12px;
  font-weight:600;

  transition:.3s;
}

/* TAG HOVER */
.careerTags span:hover{
  background:#5f7aff;
  color:#ffffff;
}

/* ================= MOBILE ================= */

@media(max-width:768px){

  .careerWrap{
    padding:70px 0;
  }

  .careerMainTitle{
    font-size:24px;
  }

  .careerMainDesc{
    font-size:14px;
    padding:0 10px;
    margin-bottom:35px;
  }

  .careerOpportunityGrid{
    gap:20px;
  }

  .careerOpportunityCard{
    width:100%;
    height:460px;
  }

  .careerContent{
    padding:20px;
  }

  .careerContent h4{
    font-size:20px;
  }

  .careerTags span{
    font-size:11px;
    padding:7px 12px;
  }

}
/* ================= GRID ================= */

.advantageGrid{
    display:grid;
    grid-template-columns:repeat(3,1fr);

    gap:18px;

    max-width:1080px;

    margin:0 auto;
}

/* ================= CARD ================= */

.advCard{
    position:relative;

    display:flex;
    align-items:stretch;

    height:240px;                 /* FIGMA STYLE */
    min-height:240px;

    overflow:hidden;

    border-radius:18px;

    background:
    linear-gradient(
        135deg,
        rgba(255,255,255,.03),
        rgba(255,255,255,.01)
    );

    border:1px solid rgba(95,122,255,.10);

    transition:.45s ease;

    cursor:pointer;

    opacity:.55;
    transform:scale(.985);
}

/* ================= IMAGE ================= */

.advImg{
    width:30%;                    /* SMALLER IMAGE LIKE FIGMA */
    min-width:30%;

    overflow:hidden;
    position:relative;
}

/* IMAGE */
.advImg img{
    width:100%;
    height:100%;

    object-fit:cover;

    transition:.5s ease;

    filter:grayscale(100%) brightness(.55);
}

/* ================= CONTENT ================= */

.advContent{
    width:70%;

    padding:20px 18px;

    display:flex;
    flex-direction:column;
    justify-content:center;

    text-align:left;

    transition:.4s ease;
}

/* ================= NUMBER ================= */

.advContent h3{
    font-size:54px;              /* BIGGER LIKE FIGMA */
    line-height:1;

    margin-bottom:10px;

    color:#ffffff !important;

    font-weight:700;

    letter-spacing:-1px;

    text-shadow:none;
}

/* ================= TITLE ================= */

.advContent h4{
    font-size:22px;
    line-height:1.2;

    margin-bottom:12px;

    color:#ffffff !important;

    font-weight:700;

    text-shadow:none;
}

/* ================= DESCRIPTION ================= */

.advContent p{
    font-size:12px;
    line-height:1.75;

    color:rgba(255,255,255,0.78) !important;

    font-weight:400;

    margin:0;

    text-shadow:none;
}

/* ================= ACTIVE CARD ================= */

.advCard.active{
    opacity:1;

    transform:scale(1);

    border:1px solid rgba(95,122,255,.30);

    box-shadow:
    0 16px 40px rgba(0,0,0,.38),
    0 0 30px rgba(95,122,255,.10);
}

/* ACTIVE IMAGE */
.advCard.active .advImg img{
    filter:none;
    transform:scale(1.03);
}

/* ================= HOVER STATE ================= */

.advCard:hover{
    opacity:1;

    transform:translateY(-6px);

    border:1px solid rgba(95,122,255,.30);

    box-shadow:
    0 16px 40px rgba(0,0,0,.38),
    0 0 30px rgba(95,122,255,.10);
}

/* HOVER IMAGE */
.advCard:hover .advImg img{
    filter:none;

    transform:scale(1.05);
}

/* ================= MOBILE ================= */

@media(max-width:991px){

    .advantageGrid{
        grid-template-columns:1fr;
    }

    .advCard{
        height:220px;

        opacity:1 !important;
        transform:none !important;
    }

    .advImg img{
        filter:none !important;
    }

}

@media(max-width:767px){

    .advCard{
        height:auto;
        min-height:210px;
    }

    .advContent h3{
        font-size:42px;
    }

}
/* ================= GLOBAL EXPOSURE ================= */

.globalWrap{
    padding:90px 0;
    background:#050b22;
    text-align:center;
    overflow:hidden;
}

/* SMALL TITLE */
.globalWrap .secTitle{
    font-size:30px;
    font-weight:600;
    

    color:#ffffff;

    margin-bottom:16px;
}

/* DIVIDER */
.globalLine{
    width:2px;
    height:40px;

    background:rgba(255,255,255,.18);

    margin:0 auto 26px;
}

/* MAIN TITLE */
.globalTitle{
    max-width:850px;

    margin:0 auto 18px;

    font-size:28px;
    line-height:1.25;
    font-weight:500;

    color:#ffffff;
}

/* DESCRIPTION */
.globalDesc{
    max-width:880px;

    margin:0 auto 50px;

    font-size:17px;
    line-height:1.9;

    color:rgba(255,255,255,.72);
}

/* LABEL */
.globalLabel{
    font-size:16px;
    font-weight:600;

    color:#ffffff;

    margin-bottom:28px;
}

/* TAG WRAP */
.globalTags{
    display:flex;
    justify-content:center;
    align-items:center;
    flex-wrap:wrap;

    gap:16px;

    max-width:1150px;

    margin:0 auto;
}

/* TAG */
.globalTags span{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-height:54px;

    padding:14px 26px;

    border-radius:999px;

    border:1px solid rgba(95,122,255,.25);

    background:
    linear-gradient(
        135deg,
        rgba(255,255,255,.06),
        rgba(255,255,255,.02)
    );

    backdrop-filter:blur(10px);

    color:#ffffff;

    font-size:15px;
    font-weight:600;
    line-height:1.4;

    transition:.35s ease;
}


/* HOVER */
.globalTags span:hover{
    transform:translateY(-2px);

    background:#ffffff;

    border-color:rgba(95,122,255,.65);

    color:#111827;

    box-shadow:
    0 8px 18px rgba(0,0,0,.18);
}

/* ================= TABLET ================= */

@media(max-width:991px){

    .globalWrap{
        padding:80px 0;
    }

    .globalTitle{
        font-size:34px;
    }

    .globalDesc{
        font-size:16px;
        line-height:1.8;
    }

    .globalTags{
        gap:14px;
    }

    .globalTags span{
        font-size:14px;
        padding:12px 22px;
    }

}

/* ================= MOBILE ================= */

@media(max-width:576px){

    .globalWrap{
        padding:65px 0;
    }

    .globalTitle{
        font-size:28px;
        line-height:1.35;

        padding:0 12px;
    }

    .globalDesc{
        font-size:14px;
        line-height:1.8;

        padding:0 16px;

        margin-bottom:36px;
    }

    .globalLabel{
        font-size:14px;
        margin-bottom:22px;
    }

    .globalTags{
        gap:12px;

        padding:0 10px;
    }

/* TAG */
.globalTags span{
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-height:40px;

    padding:8px 18px;

    border-radius:999px;

    border:1px solid rgba(138,158,255,.45);

    background:#eef2ff;   /* FIGMA LIGHT PILL */

    color:#30374a;        /* DARK TEXT LIKE FIGMA */

    font-size:13px;
    font-weight:600;
    line-height:1.2;

    letter-spacing:-0.1px;

    transition:.28s ease;

    box-shadow:none;

    backdrop-filter:none;
}

}

/* =========================================
   ADVANTAGE SLIDER TEXT
========================================= */

.advSlide{
  font-size: 60px;
  font-weight: 700;

  line-height: 1.05;
  letter-spacing: -2px;

  margin: 0;

  color: #fff;
}

/* each line */
.advSlide .line{
  display:block;
}

/* Mobile responsive */
@media (max-width: 768px){

  .advSlide{
    font-size: 38px;
    line-height: 1.12;
    letter-spacing: -1px;
  }

}


/* =========================================
   ADVANTAGE SLIDER FIX
========================================= */

.advSlider{
  min-height: 170px;   /* increase container height */
  overflow: visible;
  position: relative;
}

/* Slide text */
.advSlide{
  font-size: 50px;
  font-weight: 700;

  line-height: 1.05;
  letter-spacing: -2px;

  margin: 0;

  display: none;
}

/* Active slide visible */
.advSlide.active{
  display: block;
}

/* Each line */
.advSlide .line{
  display: block;
}

/* Mobile */
@media (max-width:768px){

  .advSlider{
    min-height: 110px;
  }

  .advSlide{
    font-size: 38px;
    line-height: 1.12;
    letter-spacing: -1px;
  }

}
/* =========================================
   FIGMA PERFECT SECTION DIVIDER
========================================= */

.section-divider{
  position: relative;

  width: 100%;
  height: 105px;   /* reduced */

  background: #050b22;

  display: flex;
  align-items: center;
  justify-content: center;

  margin-top: 10px;
  margin-bottom: 10px;
}

/* Horizontal line */
.section-divider::before{
  content:"";

  position:absolute;

  top: 0;
  left: 0;
  right: 0;

  height: 1px;

  background: linear-gradient(
    90deg,
    rgba(255,255,255,0),
    rgba(255,255,255,.16),
    rgba(255,255,255,0)
  );
}

/* Vertical line */
.section-divider span{
  width: 2px;
  height: 52px;   /* smaller */

  background: linear-gradient(
    180deg,
    rgba(255,255,255,0),
    rgba(255,255,255,.55),
    rgba(255,255,255,0)
  );

  display:block;

  margin-top: 12px; /* tighter spacing */
}

/* Mobile */
@media (max-width:768px){

  .section-divider{
    height: 75px;
  }

  .section-divider span{
    height: 38px;
    margin-top: 8px;
  }

}

/* =========================================
   GLOBAL PREMIUM SPACING SYSTEM
========================================= */

:root{

  /* spacing scale */
  --space-1: 18px;
  --space-2: 28px;
  --space-3: 42px;
  --space-4: 64px;
  --space-5: 90px;

}


/* =========================================
   SECTION DEFAULT
========================================= */

section{
  position: relative;
  background:#050b22;

  padding-top: var(--space-4);
  padding-bottom: var(--space-4);
}


/* =========================================
   HERO TO WHY SECTION
========================================= */

.hero{
  margin-bottom: 0;
}

.whyWrap{
  padding-top: 12px;
}


/* =========================================
   SECTION DIVIDER
========================================= */

.section-divider{
  margin-top: 10px;
  margin-bottom: 10px;
}


/* =========================================
   SECTION LABEL
========================================= */

.secTitle,
.secTitleph{
  margin-bottom: 40px;
}


/* =========================================
   PROGRAM TABS
========================================= */

.programTabs{
  margin-top: 0;
  margin-bottom: 50px;
}


/* =========================================
   PROGRAM CARDS
========================================= */

.progGrid.active{
  margin-top: 0;
}


/* =========================================
   CAREER SECTION
========================================= */

.careerWrap{
  padding-top: 70px;
  padding-bottom: 70px;
}

.careerMainTitle{
  margin-bottom: 18px;
}

.careerMainDesc{
  margin-bottom: 42px;
}


/* =========================================
   ADVANTAGE SECTION
========================================= */

.advantageWrap{
  padding-top: 70px;
  padding-bottom: 75px;
}

.advantageTitle{
  margin-top: 20px;
  margin-bottom: 18px;
}

.advantageDesc{
  margin-bottom: 48px;
}


/* =========================================
   GLOBAL EXPOSURE
========================================= */

.globalWrap{
  padding-top: 70px;
  padding-bottom: 70px;
}

.globalTitle{
  margin-top: 18px;
  margin-bottom: 18px;
}

.globalDesc{
  margin-bottom: 36px;
}


/* =========================================
   PROGRAM HIGHLIGHTS
========================================= */

.highStrip{
  margin-top: 26px;
}


/* =========================================
   PLACEMENTS
========================================= */

.placementWrap{
  padding-top: 75px;
  padding-bottom: 80px;
}


/* =========================================
   HOW TO APPLY
========================================= */

.applyProcessWrap{
  padding-top: 70px;
  padding-bottom: 70px;
}


/* =========================================
   FAQ
========================================= */

.faqWrap{
  padding-top: 75px;
  padding-bottom: 80px;
}


/* =========================================
   MOBILE SPACING
========================================= */

@media (max-width:768px){

  section{
    padding-top: 50px;
    padding-bottom: 50px;
  }

  .careerWrap,
  .advantageWrap,
  .globalWrap,
  .placementWrap,
  .faqWrap{
    padding-top: 55px;
    padding-bottom: 55px;
  }

  .programTabs{
    margin-bottom: 24px;
  }

  .careerMainDesc,
  .advantageDesc,
  .globalDesc{
    margin-bottom: 28px;
  }

}

/* =========================================
   DESKTOP PROGRAM CARD VISIBILITY FIX
========================================= */

@media (min-width: 992px){

  .progCard{
    background: rgba(4,10,38,.96) !important;

    opacity: 1 !important;

    visibility: visible !important;
  }

  .progCard h5{
    color:#ffffff !important;

    opacity:1 !important;
  }

  .progCard ul li{
    color: rgba(255,255,255,.88) !important;

    opacity:1 !important;
  }

  .progCard .img img{
    opacity:1 !important;

    filter:none !important;
  }

  /* remove dark overlay */
  .progCard::before,
  .progCard::after{
    opacity:0 !important;
    display:none !important;
  }

}


/* =========================================
   MIT AOE ADVANTAGE
========================================= */

.advantageGlow{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at center,
            rgba(70,95,255,.30) 0%,
            rgba(25,35,95,.12) 30%,
            transparent 68%
        ),
        linear-gradient(
            180deg,
            #040816 0%,
            #050b22 100%
        );
}
/* =========================================
   PROGRAMS OFFERED
========================================= */

.programGlow{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at center,
            rgba(120,90,255,.22) 0%,
            rgba(55,35,120,.10) 28%,
            transparent 70%
        ),
        linear-gradient(
            180deg,
            #050b22 0%,
            #040816 100%
        );
}

/* =========================================
   CAREER OPPORTUNITIES
========================================= */

.careerGlow{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at center,
            rgba(0,180,255,.18) 0%,
            rgba(0,90,160,.10) 30%,
            transparent 70%
        ),
        linear-gradient(
            180deg,
            #040816 0%,
            #050b22 100%
        );
}

/* =========================================
   GLOBAL EXPOSURE
========================================= */

.globalGlow{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at center,
            rgba(90,120,255,.20) 0%,
            rgba(50,70,180,.08) 30%,
            transparent 72%
        ),
        linear-gradient(
            180deg,
            #050b22 0%,
            #040816 100%
        );
}

/* COMMON LIGHT DEPTH */

.advantageGlow::before,
.programGlow::before,
.careerGlow::before,
.globalGlow::before{
    content:"";

    position:absolute;
    inset:0;

    background:
        linear-gradient(
            to bottom,
            rgba(255,255,255,.015),
            transparent 20%,
            transparent 80%,
            rgba(0,0,0,.18)
        );

    pointer-events:none;
}

/* =========================================
   MOBILE PROGRAM SLIDER
========================================= */

@media (max-width:576px){

  /* SECTION */
  .progGrid{
    display:flex;
    flex-wrap:nowrap;

    overflow-x:auto;
    overflow-y:hidden;

    gap:18px;

    padding:0 18px 10px;

    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
  }

  /* HIDE SCROLLBAR */
  .progGrid::-webkit-scrollbar{
    display:none;
  }

  .progGrid{
    scrollbar-width:none;
  }

  /* CARD */
  .progCard{
    flex:0 0 88%;

    min-width:88%;

    scroll-snap-align:center;

    border-radius:18px;

    padding:14px;

    background:
      linear-gradient(
        180deg,
        rgba(10,18,48,.96),
        rgba(5,11,34,.98)
      );

    border:1px solid rgba(95,122,255,.18);

    opacity:1 !important;
    visibility:visible !important;
    transform:none !important;
  }

  /* IMAGE */
  .progCard .img{
    height:180px;
    border-radius:14px;
    overflow:hidden;
    margin-bottom:16px;
  }

  .progCard .img img{
    width:100%;
    height:100%;
    object-fit:cover;

    opacity:1 !important;
    filter:none !important;
  }

  /* TITLE */
  .progCard h5{
    font-size:18px;
    line-height:1.4;
    font-weight:600;

    color:#ffffff !important;

    margin-bottom:14px;

    opacity:1 !important;
  }

  /* LIST */
  .progCard ul{
    margin:0;
    padding-left:18px;
  }

  .progCard ul li{
    font-size:13px;
    line-height:1.9;

    color:rgba(255,255,255,.88) !important;

    opacity:1 !important;
  }

  /* BUTTONS */
  .progBtns{
    margin-top:18px;

    display:flex;
    flex-direction:column;

    gap:10px;
  }

  .progBtns a{
    width:100%;
    text-align:center;
  }

  /* IMPORTANT:
     FORCE SECOND CARD VISIBLE */
  .progCard:nth-child(2){
    opacity:1 !important;
    visibility:visible !important;
    filter:none !important;
  }

}