*{
    margin: 0;
    padding: 0;
    font-family: 'Poppins', sans-serif;
    box-sizing: border-box;
}
/* html{
  scroll-behavior: smooth;
} */

/* .header{
    min-height: 100vh;
    width: 100%;
    background-image: linear-gradient(rgba(4,9,30,0.6),rgba(4,9,30,0.8)),url(eduford_img/ictcanva.png) ;
    background-position: center; 
    background-size: cover;
    position: relative;
    background-repeat: no-repeat;
}  */
header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
}
main{
  background: #6610f2;
  
}
.logo{
  background: #6610f2;
  
}

.logo img{
  mix-blend-mode: multiply;
  width: 30%;
  padding: 10px;
}
nav{
  display: flex;
  padding: 0 60px;
  justify-content: space-between;
  align-items: center;
  
}
.nav-links{
  flex: 1;
  text-align: right;
  margin-top: -50px;
  
}
.nav-links ul li{
  list-style: none;
  display: inline-block;
  padding: 8px 12px;
  position: relative;
}
.nav-links ul li a{
  color: #fff;
  text-decoration: none;
  font-size: 13px;
}
.nav-links ul li::after{
  content: '';
  width: 0%;
  height: 2px;
  background: #f44336;
  display: block;
  margin: auto;
  transition: 0.5s;
}
.nav-links ul li:hover::after{
  width: 100%;
}
.hero {
  position: relative;
  min-height: 100vh;
  height: 50px;
  width: 100%;
  margin-top: 0px;
  margin-bottom: 40px;
  padding-top: 20px; 
  background: url(eduford_img/bg-dot.png), url(eduford_img/bg-dot.png), url(eduford_img/bg-round.png), url(eduford_img/bg-tree.png);
  background-position: 10px 10px, bottom 215px right 10px, left 55% top -1%, left 45% bottom -1px;
  background-repeat: no-repeat;
}
.curveImg {
  position: absolute;
  bottom: -2px;
  width: 100%;
  pointer-events: none;
}
.hero .row {
  display: flex;
  align-items: center;
  min-height: 100vh;
  height: 100%;
  width: 100%;
  padding: -5px 70px;
  gap: 25px;
  justify-content: space-between;
  margin-top: -10px;
  /* margin-left: 100px; */
  
}
.hero .row h1,
.hero .row h2 {
  color: #fff;
  margin-left: 15%;
  animation: appear linear;
  animation-timeline: view();
  animation-range: entry 0 cover 40%;
}
.hero .row h2{
  font-size: 40px;
  color: #ccc;
  text-align: center;
}
.hero .row h1 {
  font-size: 36px;
  margin-bottom: 16px;
}
.hero .column {
  width: 50%;
}
.columns{
  width: 42%;
  margin-right: 7%;
}
.buttons {
  display: flex;
  margin-top: 25px;
  gap: 50px;
  margin-left: 20%;
}
.btn{
  position: relative;
  background: #fff;
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 1.2em;
  letter-spacing: 0.1em;
  font-weight: 300;
  padding: 10px 30px;
  transition: 0.5s;
  border-radius: 20px;
  animation: appear linear;
  animation-timeline: view();
  animation-range: entry 0 cover 40%;
}
.btn:hover{
  letter-spacing: 0.25em;
  background: #ccc;
  box-shadow: 0 0 40px #372a6a;
  color:  #27282c;
}
.btn:before{
  content: '';
  position: absolute;
  inset: 2px;
  background: #471697;
  border-radius: 20px;
}
.btn span{
  position: relative;
}
.btn i{
  position: absolute;
  inset: 0;
  display: block;
}
.btn i::before{
  content: '';
  position: absolute;
  top: 0;
  left: 80%;
  width: 10px;
  height: 4px;
  background: #27282c;
  transform: translateX(-50%) skewX(325deg);
  transition: 0.5s;
}
.btn:hover i::before{
  width: 20px;
  left: 20%;
}
.btn i::after{
  content: '';
  position: absolute;
  bottom: 0;
  left: 20%;
  width: 10px;
  height: 4px;
  background: #27282c;
  transform: translateX(-50%) skewX(325deg);
  transition: 0.5s;
}
.btn:hover i::after{
  width: 20px;
  left: 80%;
}
 /*Application section*/
 dy {
font-family: Arial, Helvetica, sans-serif;
background-color: #f4f6f8;
margin: 0;
padding: 0;
}


.application-container {
max-width: 800px;
margin: 80px auto;
background-color: #ffffff;
padding: 40px;
border-radius: 10px;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}


h1 {
color: #0a3d62;
margin-bottom: 20px;
font-size: 28px;
}


p {
font-size: 16px;
line-height: 1.7;
color: #333333;
}


.pdf-section {
margin-top: 30px;
padding: 20px;
background-color: #f0f3f7;
border: 2px dashed #0a3d62;
border-radius: 8px;
text-align: center;
}


.pdf-section a {
display: inline-block;
margin-top: 10px;
padding: 12px 20px;
background-color: #0a3d62;
color: #ffffff;
text-decoration: none;
border-radius: 6px;
font-weight: bold;
}


.pdf-section a:hover {
background-color: #07406d;
}


.note {
margin-top: 15px;
font-size: 14px;
color: #555555;

}
.apply-button-wrapper {
    margin-top: 30px;
    text-align: center;
}

.apply-button {
    display: inline-block;
    padding: 14px 30px;
    background-color: #16a085;
    color: #ffffff;
    text-decoration: none;
    font-size: 16px;
    font-weight: bold;
    border-radius: 8px;
    transition: background-color 0.3s ease, transform 0.2s ease;
}

.apply-button:hover {
    background-color: #12876f;
    transform: translateY(-2px);
}

/* .btn {
  padding: 14px 26px;
  background: #fff;
  border-radius: 50px;
  border: none;
  cursor: pointer;
  transition: all 0.3s ease;
}
.btn:last-child {
  border: 2px solid #fff;
  background: transparent;
  color: #fff;
}
.btn:last-child:hover {
  background-color: #fff;
  color: #333;
} */
.hero_img {
  width: 100%;
  z-index: 10;
  position: relative;
  animation: appear linear;
  animation-timeline: view();
  animation-range: entry 0 cover 40%;
}


@media (max-width: 768px) {
  .hero {
    padding-top: 100px;
    width: 100%;
   margin-top: -5%;
   margin-right: 50%;

  }
  .logo img{
    width: 80%;
  
  }
  .logo{
    margin-top: 40px;
    width: 50%;
    margin-left: -30px;
  }
  .columns{
    width: 100%;
    margin-left: 20%;
  }
  /* .hero .row h2{
    font-size: 15px;
  }
  .hero .row h1{
    font-size: 10px;
  } */
  .hero .row {
    flex-direction: column;
    padding: 10px 20px;
    justify-content: center;
  }
  .hero .row .column {
    width: 100%;
  }
  .curveImg {
    width: 80%;
    /* margin-left: 10%; */
    
  }

}

 @media (max-width: 1045px ) {
  .hero {
    padding-top: 100px;
    width: 100%;
    
  }
  .hero .row h2,
  .hero .row h1 {
    font-size: 26px;
  
  }

  .curveImg {
    width: 100%;

    /* margin-left: 18%; */
  
    
  }
  .logo{
    padding-left: -20px;
    margin-top: 40px;
  }
  .logo img{
    padding-top: 20px;
  }
  .nav-links{
    display: block;
    margin-top: -20px;
  }
  .buttons {
    justify-content: center;
    font-size: 13px;
  }
  .btn {
    padding: 5px;
  
  } 
  nav .fa-times,nav .fa-bars{
    padding-top: 30px;
  }
  

  
} 

nav .fa-times,nav .fa-bars {
  display: none;
} 
/*.text-box{
    width: 90%;
    color: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    text-align: center;

}
.text-box h1{
    font-size: 62px;
}
.text-box p{
    margin: 10px 0 40px;
    font-size: 14px;
    color: #fff;
}
 .hero-btn{
    display: inline-block;
    text-decoration: none;
    color: #fff;
    border: 1px solid #fff;
    padding: 12px 34px;
    font-size: 13px;
    background: transparent;
    position: relative;
    cursor: pointer;
}
.hero-btn:hover{
    border: 1px solid #f44336;
    background: #f44336;
    transition: 1s;
}  */



@media(max-width: 768px){
  .hero{
    width: 100%;
  }
    .hero .row h2{
        font-size: 22px;
        margin-top: -30%;
    } 
    .hero .row h1{
      font-size: 14px;
    }
    .nav-links ul li{
        display: block;
    }
    .nav-links{
        position: fixed;
        background: #292274;
        height: 100vh;
        width: 180px;
        top: 0;
        right: -200px;
        text-align: left;
        z-index: 2;
        transition: 1s;
        margin-top: 40px;

    }
    nav .fa-times,nav .fa-bars{
        display: block;
        color: #ccc;
        margin: 10px;
        font-size: 30px;
        cursor: pointer;
        padding-top: 30px;
    }
    .nav-links ul{
        padding: 20px;
    }
    .buttons {
      justify-content: center;
      font-size: 8px;
      
    }
    .btn {
      padding: 10px;
    }
   
} 

/* ============================================
   SPOTLIGHT SECTION - SIMPLIFIED DESIGN
   ============================================ */

.spotlight {
    width: 100%;
    margin: 0;
    padding: 80px 5%;
    background: linear-gradient(180deg, #ffffff 0%, #ffffff 50%, #ffffff 100%);
    position: relative;
}

.spotlight-wrapper {
    max-width: 1200px;
    margin: 0 auto;
}

/* Section Header */
.spotlight-header-text {
    text-align: center;
    margin-bottom: 60px;
}

.spotlight-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    color: white;
    padding: 10px 25px;
    border-radius: 50px;
    font-weight: 700;
    font-size: 12px;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    margin-bottom: 20px;
    box-shadow: 0 4px 15px rgba(245, 158, 11, 0.4);
}

.spotlight-badge i {
    font-size: 14px;
}

.spotlight h1 {
    font-size: 42px;
    font-weight: 700;
    color: #1f2937;
    margin-bottom: 15px;
}

.spotlight p.hiden-p {
    font-size: 18px;
    color: #4b5563;
    line-height: 1.6;
    max-width: 700px;
    margin: 0 auto;
}

/* Cards Container */
.spotlight-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 35px;
    margin-bottom: 60px;
}

/* Spotlight Card */
.spotlight-card {
    background: white;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
    transition: all 0.4s ease;
    position: relative;
}

.spotlight-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 50px rgba(0, 0, 0, 0.2);
}

/* Featured Card Special Styling */
.spotlight-card.featured {
    border: 3px solid #f59e0b;
}

.spotlight-card.featured .card-header {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
}

/* Card Header */
.card-header {
    height: 120px;
    background: linear-gradient(135deg, #6b7280 0%, #4b5563 100%);
    position: relative;
    overflow: hidden;
}

.card-bg-pattern {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: 
        repeating-linear-gradient(45deg, transparent, transparent 10px, rgba(255,255,255,0.05) 10px, rgba(255,255,255,0.05) 20px);
}

/* Featured Tag */
.featured-tag {
    position: absolute;
    top: 15px;
    right: 15px;
    background: rgba(255, 255, 255, 0.95);
    color: #f59e0b;
    padding: 8px 16px;
    border-radius: 20px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 1px;
    display: flex;
    align-items: center;
    gap: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.featured-tag i {
    font-size: 12px;
}

/* Card Body */
.card-body {
    padding: 0 25px 30px;
    text-align: center;
}

/* Member Photo */
.member-photo {
    margin-top: -60px;
    margin-bottom: 20px;
    position: relative;
    display: inline-block;
}

.member-photo img {
    width: 200px;
    height: 200px;
    border-radius: 50%;
    object-fit: cover;
    border: 5px solid white;
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2);
    transition: transform 0.3s ease;
}

.spotlight-card:hover .member-photo img {
    transform: scale(1.05);
}

.verified-icon {
    position: absolute;
    bottom: 5px;
    right: 5px;
    background: #10b981;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 3px solid white;
    box-shadow: 0 3px 10px rgba(16, 185, 129, 0.4);
}

.verified-icon i {
    color: white;
    font-size: 14px;
}

/* Member Info */
.member-info {
    margin-bottom: 20px;
}

.member-info h3 {
    font-size: 24px;
    font-weight: 800;
    color: #1f2937;
    margin-bottom: 5px;
}

.member-role {
    font-size: 14px;
    color: #f59e0b;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 15px;
}

.member-description {
    font-size: 14px;
    color: #6b7280;
    line-height: 1.6;
    margin-bottom: 0;
}

/* Achievement Tags */
.achievement-tags {
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
    margin: 20px 0 25px;
}

.tag {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);
    color: #92400e;
    padding: 8px 14px;
    border-radius: 20px;
    font-size: 12px;
    font-weight: 700;
    border: 2px solid #fbbf24;
    transition: all 0.3s ease;
}

.tag:hover {
    transform: scale(1.05);
    background: linear-gradient(135deg, #fde68a 0%, #fbbf24 100%);
    color: white;
}

.tag i {
    font-size: 13px;
}

/* Contact Button */
.contact-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: #25d366;
    color: white;
    padding: 12px 24px;
    border-radius: 30px;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 6px 20px rgba(37, 211, 102, 0.3);
    transition: all 0.3s ease;
}

.contact-btn:hover {
    background: #20ba5a;
    transform: translateY(-3px);
    box-shadow: 0 10px 30px rgba(37, 211, 102, 0.5);
}

.contact-btn i {
    font-size: 18px;
}

/* Bottom CTA */
.spotlight-bottom-cta {
    background: white;
    border-radius: 20px;
    padding: 50px 30px;
    text-align: center;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
}

.cta-content i {
    font-size: 50px;
    color: #5565df;
    margin-bottom: 20px;
}

.cta-content h3 {
    font-size: 28px;
    font-weight: 800;
    color: #1f2937;
    margin-bottom: 15px;
}

.cta-content p {
    font-size: 16px;
    color: #6b7280;
    line-height: 1.6;
    max-width: 600px;
    margin: 0 auto 30px;
}

.join-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: linear-gradient(135deg, #adc6f0 0%, #6610f2 100%);
    color: white;
    padding: 16px 35px;
    border-radius: 35px;
    font-size: 16px;
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 8px 25px rgba(129, 172, 218, 0.4);
    transition: all 0.3s ease;
}

.join-btn:hover {
    transform: scale(1.05);
    box-shadow: 0 12px 35px rgba(245, 158, 11, 0.6);
}

.join-btn i {
    transition: transform 0.3s ease;
}

.join-btn:hover i {
    transform: translateX(5px);
}

/* Responsive Design */
@media(max-width: 900px) {
    .spotlight {
        padding: 60px 4%;
    }

    .spotlight h1 {
        font-size: 34px;
    }

    .spotlight-container {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .spotlight-card {
        max-width: 500px;
        margin: 0 auto;
    }
}

@media(max-width: 600px) {
    .spotlight h1 {
        font-size: 28px;
    }

    .spotlight p.hiden-p {
        font-size: 16px;
    }

    .spotlight-badge {
        font-size: 11px;
        padding: 8px 18px;
    }

    .member-photo img {
        width: 160px;
        height: 160px;
    }

    .member-info h3 {
        font-size: 20px;
    }

    .member-description {
        font-size: 13px;
    }

    .achievement-tags {
        gap: 8px;
    }

    .tag {
        font-size: 11px;
        padding: 6px 12px;
    }

    .contact-btn {
        padding: 10px 20px;
        font-size: 13px;
    }

    .spotlight-bottom-cta {
        padding: 40px 20px;
    }

    .cta-content h3 {
        font-size: 22px;
    }

    .cta-content p {
        font-size: 14px;
    }

    .join-btn {
        padding: 14px 28px;
        font-size: 14px;
    }
}

/*** ============================================
   END OF SPOTLIGHT SECTION
   ============================================ */
/* ------ Course ------ */
 .course{
    width: 80%;
    margin: auto;
    text-align: justify;
    padding-top: 100px;
    animation: appear linear;
    animation-timeline: view();
    animation-range: entry 0 cover 40%;
}

p{
    color: #777;
    font-size: 14px;
    font-weight: 300;
    line-height: 22px;
    padding: 10px;
    text-align: justify;
    align-content: center;
}

.row{
    margin-top: 5%;
    display: flex;
    justify-content: space-between;

}
 .course-cols{
    flex-basis: 31%; 
    background: #fff3f3;
    border-radius: 10px;
    margin-bottom: 5%;
    padding: 20px 12px;
    box-sizing: border-box;
} 
h3{
    text-align: center;
    font-weight: 600;
    margin: 10px 0;
}
.course-cols:hover{
    box-shadow: 0 0 20px 0px rgba(0,0,0,0.2);
}


@media (max-width: 700px){
        .row{
            flex-direction: column;
        }
} 

.services{
  width: 80%;
  padding-top: 80px;
  margin: auto;
  padding-bottom: 50px;
 
}

.services .rows{
  margin: 2rem 0;
  padding: 0 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  animation: appear linear;
    animation-timeline: view();
    animation-range: entry 0 cover 40%;
  
  
}

.services .rows .images .imgs{
  width: 100%;
  height: 100%;
} 

.services .rows .contents{
  text-align: left;
  padding: 0.4rem;
  justify-content: center;

  
}

.services .rows .contents h3{
  font-size: 2rem;
  text-align: left;
  margin-left: 10px;
  
}

.services .rows .contents p{
  font-size: 1.0rem;
  color: #333;
  padding: 1rem 0;
  text-align: left;
  justify-content: center;
  margin-left: 10px;
}

@media (max-width:768px){
.services{
  width: 100%;
}
  .services .rows{
    flex-flow: column-reverse;
  }

  .services .rows:nth-child(even){
    flex-flow: column;
  }

  .services .rows .images .imgs{
    width: 90%;
    padding-top: 30px;

    
  }
  .services .rows .contents{
    padding: 0;
  }
  .services .rows .contents p{
    font-weight: 540;
  }
  .sub-btn{
    align-items: center;
    margin-left: 100px;
  }
}

/* -------- campus -------- */

.campus{
    width: 80%;
    margin: auto;
    text-align: center;
    padding-top: 50px;
    animation: appear linear;
    animation-timeline: view();
    animation-range: entry 0 cover 40%;
}
.campus-col{
    flex-basis: 32%;
    border-radius: 10px;
    margin-bottom: 30px;
    position: relative;
    overflow: hidden;
}
.campus-col img{
    width: 100%;
    display: block; 
    height: 470px;
}
.layer{
    background: transparent;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

.layer:hover{
    background: rgba(226,0,0,0.7);
}
.layer h3{
    width: 100%;
    font-weight: 500;
    color: #fff;
    font-size: 26px;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
    opacity: 0;
    transition: 0.5s;
}
.layer:hover h3{
    bottom: 49%;
    opacity: 1;
}
@media (max-width: 760px){
  .campus-col img{
    width: 100%;
    height: 350px;
}
}


/* --------- facilities --------- */



/* --------- testimonials -------- */
.testimonials{
  width: 80%;
  margin: auto;
  padding-top: 50px;
  text-align: center;
  animation: appear linear;
  animation-timeline: view();
  animation-range: entry 0 cover 40%;
}
.testimonials p{
  padding: 10px;
}
.testimonials h3{
  padding: 25px;
  margin-bottom: 20px;
}
.wrapper{
  max-width: 1200px;
  margin: auto;
  padding: 0 20px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
.wrapper .box{
  background: #fff;
  width: calc(33% - 10px);
  padding: 25px;
  border-radius: 3px;
  box-shadow: 0px 4px 8px rgba(0,0,0,0.15);
}
.wrapper .box i.fa-quote-left{
  font-size: 20px;
  color: #17a2b8;
  padding-right: 170px;
}
.wrapper .box .content{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding-top: 10px;
  text-align: left;
}
.box .info .name{
  font-weight: 600;
  font-size: 17px;
  text-align: left;
}
.box .info .job{
  font-size: 16px;
  font-weight: 500;
  color: #17a2b8;
}
.box .info .stars{
  margin-top: 2px;
  text-align: left;
}
.box .info .stars i{
  color: #17a2b8;
}
.box .content .image{
  height: 75px;
  width: 75px;
  padding: 3px;
  background: #17a2b8;
  border-radius: 50%;
}
.content .image img{
  height: 100%;
  width: 100%;
  object-fit: cover;
  border-radius: 50%;
  border: 2px solid #fff;
}
.box:hover .content .image img{
  border-color: #fff;
}
@media (max-width: 1045px) {
  .wrapper .box{
    width: calc(50% - 10px);
    margin: 10px 0;
  }
}
@media (max-width: 702px) {
  .wrapper .box{
    width: 100%;
  }
}



/*.testimonials{
    width: 80%;
    margin: auto;
    padding-top: 100px;
    text-align: center;
}
.testimonials-col{
    flex-basis: 44%;
    border-radius: 10px;
    margin-bottom: 5%;
    text-align: left;
    background: #fff3f3;
    padding: 25px;
    cursor: pointer;
    display: flex;
}
.testimonials-col img{
    height: 40px;
    margin-left: 5px;
    margin-right: 30px;
    border-radius: 50%;
}
.testimonials-col p{
    padding: 0;
}
.testimonials-col h3{
    margin-top: 15px;
    text-align: left;
}
.testimonials-col .fa-solid,.fa-regular{ 
    color: #f44336;
}
@media(max-width: 700px){
    .testimonials-col img{
        margin-left: 0px;
        margin-right: 15px;
    }

} */

/*-------- Team section ----------- */

.team {
    width: 100%;
    padding: 100px 0;
    background: linear-gradient(135deg, #ffffff 0%, #f3f3f5 50%, #ffffff 100%);
    position: relative;
    overflow: hidden;
}

.team::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background:
        radial-gradient(circle at 20% 80%, rgb(255, 255, 255) 0%, transparent 50%),
        radial-gradient(circle at 80% 20%, rgb(255, 255, 255) 0%, transparent 50%),
        radial-gradient(circle at 40% 40%, rgb(255, 255, 255) 0%, transparent 05%);
    pointer-events: none;
}

.team-container {
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative;
    z-index: 1;
}

.team-header {
    text-align: center;
    margin-bottom: 80px;
}

.team-title {
    font-family: 'Montserrat', sans-serif;
    font-size: 4rem;
    font-weight: 900;
    color: #320577;
    margin-bottom: 20px;
    text-transform: uppercase;
    letter-spacing: 2px;
    text-shadow: 0 0 30px rgba(246, 255, 255, 0.5);
    position: relative;
}

.team-title::after {
    content: '';
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 120px;
    height: 4px;
    background: linear-gradient(90deg, #00ffff, #6610f2);
    border-radius: 2px;
    box-shadow: 0 0 20px rgba(0, 255, 255, 0.6);
}

.team-subtitle {
    font-size: 1.2rem;
    color: rgba(67, 97, 231, 0.7);
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
    font-weight: 300;
}

.team-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 40px;
    margin-top: 60px;
}

.team-card {
    background: linear-gradient(145deg, #1e1e2f 0%, #2a2a3e 100%);
    border-radius: 20px;
    overflow: hidden;
    box-shadow:
        0 20px 40px rgba(0, 0, 0, 0.3),
        0 0 0 1px rgba(255, 255, 255, 0.1);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    position: relative;
    transform: translateY(30px);
    opacity: 0;
    animation: fadeInUp 0.8s ease-out forwards;
}

.team-card:hover {
    transform: translateY(-10px) scale(1.02);
    box-shadow:
        0 30px 60px rgba(0, 0, 0, 0.4),
        0 0 0 1px rgba(0, 255, 255, 0.3),
        0 0 40px rgba(0, 255, 255, 0.1);
}

.card-image {
    position: relative;
    height: 320px;
    overflow: hidden;
    clip-path: polygon(0 0, 100% 0, 100% 85%, 0 100%);
}

.card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s ease;
}

.team-card:hover .card-image img {
    transform: scale(1.1);
}

.image-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(
        135deg,
        rgba(0, 255, 255, 0.1) 0%,
        rgba(102, 16, 242, 0.2) 50%,
        rgba(0, 255, 255, 0.1) 100%
    );
    opacity: 0;
    transition: opacity 0.4s ease;
}

.team-card:hover .image-overlay {
    opacity: 1;
}

.social-links {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.8);
    display: flex;
    gap: 20px;
    opacity: 0;
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.team-card:hover .social-links {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
}

.social-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    background: rgba(255, 255, 255, 0.1);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    color: #fff;
    text-decoration: none;
    transition: all 0.3s ease;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}

.social-link:hover {
    background: rgba(0, 255, 255, 0.2);
    border-color: rgba(0, 255, 255, 0.5);
    transform: translateY(-3px);
    box-shadow: 0 12px 40px rgba(0, 255, 255, 0.3);
}

.social-link i {
    font-size: 1.2rem;
}

.card-content {
    padding: 30px 25px;
    text-align: center;
}

.role-badge {
    display: inline-block;
    background: linear-gradient(135deg, #00ffff, #6610f2);
    color: #fff;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 6px 12px;
    border-radius: 20px;
    margin-bottom: 15px;
    box-shadow: 0 0 20px rgba(0, 255, 255, 0.3);
}

.member-name {
    font-size: 1.5rem;
    font-weight: 700;
    color: #fff;
    margin: 0;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

/* Animations */
@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(30px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Staggered animation delays */
.team-card:nth-child(1) { animation-delay: 0.1s; }
.team-card:nth-child(2) { animation-delay: 0.2s; }
.team-card:nth-child(3) { animation-delay: 0.3s; }
.team-card:nth-child(4) { animation-delay: 0.4s; }
.team-card:nth-child(5) { animation-delay: 0.5s; }
.team-card:nth-child(6) { animation-delay: 0.6s; }
.team-card:nth-child(7) { animation-delay: 0.7s; }
.team-card:nth-child(8) { animation-delay: 0.8s; }
.team-card:nth-child(9) { animation-delay: 0.9s; }
.team-card:nth-child(10) { animation-delay: 1.0s; }
.team-card:nth-child(11) { animation-delay: 1.1s; }
.team-card:nth-child(12) { animation-delay: 1.2s; }
.team-card:nth-child(13) { animation-delay: 1.3s; }
.team-card:nth-child(14) { animation-delay: 1.4s; }

/* Responsive Design */
@media (max-width: 1024px) {
    .team-grid {
        grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
        gap: 30px;
    }

    .team-title {
        font-size: 3rem;
    }
}

@media (max-width: 768px) {
    .team {
        padding: 80px 0;
    }

    .team-container {
        padding: 0 15px;
    }

    .team-header {
        margin-bottom: 60px;
    }

    .team-title {
        font-size: 2.5rem;
        letter-spacing: 1px;
    }

    .team-subtitle {
        font-size: 1.1rem;
    }

    .team-grid {
        grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
        gap: 25px;
        margin-top: 40px;
    }

    .card-image {
        height: 280px;
    }

    .card-content {
        padding: 25px 20px;
    }

    .member-name {
        font-size: 1.3rem;
    }

    .social-links {
        gap: 15px;
    }

    .social-link {
        width: 45px;
        height: 45px;
    }
}

@media (max-width: 480px) {
    .team {
        padding: 60px 0;
    }

    .team-title {
        font-size: 2rem;
    }

    .team-subtitle {
        font-size: 1rem;
    }

    .team-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .card-image {
        height: 250px;
        clip-path: polygon(0 0, 100% 0, 100% 90%, 0 100%);
    }

    .card-content {
        padding: 20px 15px;
    }

    .member-name {
        font-size: 1.2rem;
    }

    .role-badge {
        font-size: 0.7rem;
        padding: 5px 10px;
    }
}



/* <!-- ------ Call To Action -------- --> */

.cta{
    margin: 100px auto;
    width: 80%;
    background-image: linear-gradient(rgba(0,0,0,0.7),rgba(0,0,0,0.7)),url(eduford_img/cover.jpg);
    background-position: center;
    background-size: cover;
    border-radius: 10px;
    text-align: center;
    padding: 100px 0;
    animation: appear linear;
    animation-timeline: view();
    animation-range: entry 0 cover 40%;
}
.cta h1{
    color: #fff;
    margin-bottom: 40px;
    padding: 0;
}
.cta a{
  color: #ccc;
}
@media(max-width: 700px){
    .cta h1{
        font-size: 24px;
    }
}

/* ------- footer ------- */

.footer{
    width: 100%;
    text-align: center;
    padding: 30px 0;
    animation: appear linear;
    animation-timeline: view();
    animation-range: entry 0 cover 40%;
}
.footer h4{
    margin-bottom: 25px;
    margin-top: 20px;
    font-weight: 600;
}
.icons .fa-brands{
    color: #f44336;
    margin: 0 13px;
    cursor: pointer;
    padding: 18px 0;
}

/* ----------- about us page -------- */

.sub-header{
    height: 60vh;
    width: 100%;
    background: linear-gradient(45deg,#6610f2,#17a2b8,#260c68, #471697,#db7bc8);
    background-size: 300% 300%;
    animation: color 12s ease-in-out infinite;
  
}
@keyframes color{
  0%{
    background-position: 0 50%;
  }
  50%{
    background-position: 100% 50%;
  }
  100%{
    background-position: 0 50%;
  }
}
.sub-logo{
  margin-left: -20px;
  background: '';
}

.sub-logo img{
  mix-blend-mode: multiply;
  width: 30%;
  padding: 10px;
}

.headingone{
  font-size: 36px;
  font-weight: 600;
  margin-top: 100px;
  position: relative;
  display: inline-block;
  margin-left: 40%;
}

.headingone::before, .headingone::after{
content: '';
position: absolute;
height: 2.0rem;
width: 2.0rem;
border-top: .4rem solid #6610f2;
border-left: .4rem solid #260c68;

}

.headingone::before{
top: -0.8rem;
left: -2rem;
}

.headingone::after{
bottom: -.5rem;
right: -2rem;
transform: rotate(180deg);
} 

.sub-button {
  display: flex;
  margin-top: 25px;

}
.sub-btn{
  position: relative;
  background: #fff;
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 1.2em;
  letter-spacing: 0.1em;
  font-weight: 300;
  padding: 10px 30px;
  transition: 0.5s;
  border-radius: 20px;
  animation: appear linear;
  animation-timeline: view();
  animation-range: entry 0 cover 40%;
}
.sub-btn:hover{
  letter-spacing: 0.25em;
  background: #ccc;
  box-shadow: 0 0 40px #3f3d49;
  color:  #090a0b;
}
.sub-btn:before{
  content: '';
  position: absolute;
  inset: 2px;
  background: #646267;
  border-radius: 20px;
}
.sub-btn span{
  position: relative;
}
.sub-btn i{
  position: absolute;
  inset: 0;
  display: block;
}
.sub-btn i::before{
  content: '';
  position: absolute;
  top: 0;
  left: 80%;
  width: 10px;
  height: 4px;
  background: #27282c;
  transform: translateX(-50%) skewX(325deg);
  transition: 0.5s;
}
.sub-btn:hover i::before{
  width: 20px;
  left: 20%;
}
.sub-btn i::after{
  content: '';
  position: absolute;
  bottom: 0;
  left: 20%;
  width: 10px;
  height: 4px;
  background: #282a30;
  transform: translateX(-50%) skewX(325deg);
  transition: 0.5s;
}
.sub-btn:hover i::after{
  width: 20px;
  left: 80%;
}

@media (max-width: 768px){
  .headingone{
    font-size: 45px;
    font-weight: 650;
    margin-top: -80%;
    position: relative;
    display: inline-block;
    margin-left: 30%;
  }
  .about-col p{
    text-align: justify;
  }
  .about-col h1{
    text-align: center;
    font-size: 22px;
  }
  /* .sub-button{
    width: 20%;
    margin-left: -30%;
    background-color: #000000;
  } */
  .sub-btn{
    padding: 20px;
    font-size: 10px;
    padding-left: 20px;
    margin-left: 20%;
  }

}


.about-us{
    width: 80%;
    margin: auto;
    padding-top: 80px;
    padding-bottom: 50px;
    animation: appear linear;
    animation-timeline: view();
    animation-range: entry 0 cover 40%;
}

.about-col{
    flex-basis: 48%;
    padding: 30px 2px;
}
.about-col img{
    width: 100%;
}

.about-col h1{
    padding-top: 0;
}
.about-col p{
    padding: 15px 0 25px;
}
.us {
  display: none;
}



/* ------ blog-content ------- */


.blog{
  width: 80%;
  margin: auto;
  text-align: center;
  padding-top: 100px;
  animation: appear linear;
  animation-timeline: view();
  animation-range: entry 0 cover 40%;
}
.row-blog{
  display: flexbox;
  width: 80%;
  justify-content: center;

}
.blog-col{
  flex-basis: 31%;
  border-radius: 10px;
  margin-bottom: 5%;
  text-align: left;
}
.blog-col img{
  width: 90%;
  border-radius: 10px;
}
.hiden-p{
  font-size: 12px;
  font-weight: 30px;
  font-style: italic;
}
.blog-col p{
  padding: 0;
}

.blog-col h3{
  margin-top: 16px;
  margin-bottom: 15px;
  text-align: center;
} 


.blog-content{
    width: 80%;
    margin: auto;
    padding: 60px 0;
    animation: appear linear;
    animation-timeline: view();
    animation-range: entry 0 cover 40%;
}
.blog-left{
    flex-basis: 65%;
}
.blog-left img{
    width: 80%;
}
.blog-left h1{
    color: #222;
    font-weight: 500;
    margin: 30px 0;
    justify-content: center;
    margin-left: 50px;
    padding-top: 10px;
}
.blog-left p{
    color: #999;
    padding: 10px;
}

/* .blog-right{
    flex-basis: 32%;
}
.blog-right img{
  width: 20%;
}
.blog-right h3{
    background: #f44336;
    color: #fff;
    padding: 7px 0;
    font-size: 16px;
    margin-bottom: 20px;
}
.blog-right div{
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: #555;
    padding: 30px;
    box-sizing: border-box;
    animation: appear linear;
    animation-timeline: view();
    animation-range: entry 0 cover 40%;
  
} */
.competition{
  width: 100%;
  justify-content: right;
  background-color: rgba(247, 250, 250, 2.0);
  border-radius: 20px;
  margin-left: 80px; 
  animation: appear linear;
  animation-timeline: view();
  animation-range: entry 0 cover 40%;

}
.competition img{
  width: 50%;
  margin-left: 160px;
  margin-top: -20px; 
  
}
.competition h2{
  text-align: center;
  
}
.competition h3{
  text-align: center;
}
.comment-box{
    border: 1px solid #ccc;
    margin: 50px 0;
    padding: 10px 20px;
}
.comment-box h3{
    text-align: left;
}
.comment-box input, .comment-form textarea{
    width: 100%;
    padding: 10px;
    margin: 15px 0;
    box-sizing: border-box;
    border: none;
    outline: none;
    background: #f0f0f0;
}
.comment-form button{
    margin: 10px 0;
}

@media(max-width:760px){
    .sub-header h1{
        font-size: 24px;
        justify-content: center;
        padding: auto;
    }
    .competition h3,h2{
       font-size: 12px;
    }
    .competition h2{
      font-size: 14px;
    }
    .blog-left h1{
      font-size: 18px;
      justify-content: center;
      align-items: center;
      margin: 20px;
      padding-top: -30px;
    }
    .competition{
      justify-content: center;
      margin: auto;
      width: 100%;
    }
    .competition img{
      width: 80%;
      margin: 20px;
    }
    .vertical-line{
      margin-left: -50px;
    }
    .horizontal-line{
      display: none;
    }
}
/*--Slides--*/
/* ============================================================
   COMPUTER LITERACY SLIDES — add to style.css
   All classes prefixed with "cl-" to avoid conflicts
============================================================ */

/* ---- Wrapper ---- */
.cl-slides-wrapper {
  background: #f0f4ff;
  padding: 70px 0 80px;
  position: relative;
  overflow: hidden;
}
.cl-slides-wrapper::before {
  content: '';
  position: absolute;
  top: -180px; right: -180px;
  width: 500px; height: 500px;
  background: radial-gradient(circle, rgba(10,61,98,0.06) 0%, transparent 70%);
  pointer-events: none;
}
.cl-slides-wrapper::after {
  content: '';
  position: absolute;
  bottom: -120px; left: -120px;
  width: 400px; height: 400px;
  background: radial-gradient(circle, rgba(102,16,242,0.05) 0%, transparent 70%);
  pointer-events: none;
}

/* ---- Header ---- */
.cl-slides-header {
  display: flex;
  align-items: center;
  gap: 28px;
  max-width: 1100px;
  margin: 0 auto 50px;
  padding: 0 40px;
}
.cl-header-line {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(102,16,242,0.3), transparent);
}
.cl-header-text { text-align: center; flex-shrink: 0; }
.cl-eyebrow {
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: #6610f2;
  margin-bottom: 10px;
}
.cl-main-title {
  font-family: 'Poppins', sans-serif;
  font-size: clamp(26px, 4vw, 42px);
  font-weight: 700;
  color: #0a1f44;
  line-height: 1.15;
  margin-bottom: 10px;
}
.cl-accent { color: #6610f2; }
.cl-subtitle {
  font-family: 'Poppins', sans-serif;
  font-size: 13px;
  color: #7a8aa0;
  max-width: 460px;
  line-height: 1.7;
  margin: 0;
}

/* ---- Controls Bar ---- */
.cl-controls-bar {
  display: flex;
  align-items: center;
  gap: 20px;
  max-width: 1100px;
  margin: 0 auto 28px;
  padding: 0 40px;
}
.cl-slide-counter {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}
.cl-counter-current {
  font-family: 'Poppins', sans-serif;
  font-size: 28px;
  font-weight: 700;
  color: #6610f2;
  line-height: 1;
}
.cl-counter-sep {
  width: 28px;
  height: 2px;
  background: #d0d8e8;
  display: block;
}
.cl-counter-total {
  font-family: 'Poppins', sans-serif;
  font-size: 14px;
  color: #b0bcd0;
  font-weight: 600;
}
.cl-progress-track {
  flex: 1;
  height: 3px;
  background: #dce4f0;
  border-radius: 3px;
  overflow: hidden;
}
.cl-progress-fill {
  height: 100%;
  background: linear-gradient(90deg, #6610f2, #0a3d62);
  border-radius: 3px;
  transition: width 0.5s cubic-bezier(0.4,0,0.2,1);
  width: 0%;
}
.cl-nav-btns { display: flex; gap: 10px; flex-shrink: 0; }
.cl-nav-btn {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 1px solid #dce4f0;
  background: #ffffff;
  color: #8090a8;
  font-size: 14px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.25s;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}
.cl-nav-btn:hover:not(:disabled) {
  border-color: #6610f2;
  color: #fff;
  background: #6610f2;
  box-shadow: 0 4px 16px rgba(102,16,242,0.3);
}
.cl-nav-btn:disabled { opacity: 0.3; cursor: not-allowed; }

/* ---- Slides Track ---- */
.cl-slides-track-outer {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 40px;
  overflow: hidden;
}
.cl-slides-track {
  display: flex;
  transition: transform 0.55s cubic-bezier(0.77,0,0.175,1);
}

/* ---- Individual Slide ---- */
.cl-slide {
  min-width: 100%;
  display: flex;
  background: #ffffff;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid #e4ecf8;
  box-shadow: 0 12px 40px rgba(10,30,80,0.1);
  position: relative;
  opacity: 0.6;
  transition: opacity 0.3s;
}
.cl-slide.cl-slide-anim {
  opacity: 1;
  animation: clSlideIn 0.55s cubic-bezier(0.22,1,0.36,1) forwards;
}
@keyframes clSlideIn {
  from { opacity: 0.4; transform: translateY(18px); }
  to   { opacity: 1;   transform: translateY(0); }
}
.cl-slide-number {
  position: absolute;
  top: 20px; right: 24px;
  font-family: 'Poppins', sans-serif;
  font-size: 72px;
  font-weight: 800;
  color: rgba(102,16,242,0.04);
  line-height: 1;
  pointer-events: none;
  user-select: none;
}

/* ---- Left Content Panel ---- */
.cl-slide-inner {
  flex: 1;
  padding: 46px 44px 44px;
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-width: 0;
}
.cl-slide-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: 'Poppins', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: #6610f2;
  background: rgba(102,16,242,0.07);
  border: 1px solid rgba(102,16,242,0.18);
  border-radius: 30px;
  padding: 6px 14px;
  width: fit-content;
}
.cl-slide-title {
  font-family: 'Poppins', sans-serif;
  font-size: clamp(20px, 2.5vw, 28px);
  font-weight: 700;
  color: #0a1f44;
  line-height: 1.2;
  margin: 0;
}
.cl-slide-divider {
  width: 48px;
  height: 3px;
  background: linear-gradient(90deg, #6610f2, #0a3d62);
  border-radius: 2px;
  flex-shrink: 0;
}
.cl-slide-body { display: flex; flex-direction: column; gap: 14px; }
.cl-slide-body p {
  font-family: 'Poppins', sans-serif;
  font-size: 13.5px;
  color: #4a5a78;
  line-height: 1.85;
  margin: 0;
}
.cl-slide-body p strong { color: #0a1f44; font-weight: 600; }

/* ---- Quote ---- */
.cl-slide-quote {
  background: rgba(102,16,242,0.04);
  border-left: 3px solid #6610f2;
  border-radius: 0 10px 10px 0;
  padding: 16px 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.cl-slide-quote i { color: #6610f2; font-size: 14px; }
.cl-slide-quote p {
  font-family: 'Poppins', sans-serif;
  font-style: italic;
  font-size: 13px;
  color: #5a6a88;
  margin: 0;
  line-height: 1.7;
}
.cl-slide-quote cite {
  font-family: 'Poppins', sans-serif;
  font-size: 10px;
  color: #6610f2;
  letter-spacing: 1px;
  font-style: normal;
  font-weight: 600;
}

/* ---- Tags ---- */
.cl-slide-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
.cl-slide-tags span {
  font-family: 'Poppins', sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 1px;
  color: #0a3d62;
  background: rgba(10,61,98,0.07);
  border: 1px solid rgba(10,61,98,0.15);
  border-radius: 20px;
  padding: 4px 12px;
  text-transform: uppercase;
}

/* ---- Hardware Grid (Slide 2) ---- */
.cl-hw-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.cl-hw-item {
  background: #f8faff;
  border: 1px solid #e4ecf8;
  border-radius: 12px;
  padding: 16px;
  transition: border-color 0.25s, transform 0.25s, box-shadow 0.25s;
}
.cl-hw-item:hover {
  border-color: #6610f2;
  transform: translateY(-3px);
  box-shadow: 0 6px 20px rgba(102,16,242,0.1);
}
.cl-hw-item i {
  font-size: 20px;
  color: #6610f2;
  margin-bottom: 8px;
  display: block;
}
.cl-hw-item strong {
  font-family: 'Poppins', sans-serif;
  font-size: 11.5px;
  font-weight: 700;
  color: #0a1f44;
  display: block;
  margin-bottom: 6px;
  line-height: 1.3;
}
.cl-hw-item p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px;
  color: #6a7a98;
  line-height: 1.6;
  margin: 0;
}

/* ---- Steps ---- */
.cl-steps { display: flex; flex-direction: column; gap: 12px; }
.cl-step { display: flex; gap: 14px; align-items: flex-start; }
.cl-step-num {
  width: 28px; height: 28px;
  background: linear-gradient(135deg, #6610f2, #4a0ab5);
  color: #fff;
  font-family: 'Poppins', sans-serif;
  font-size: 12px;
  font-weight: 700;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 2px;
}
.cl-step-content strong {
  font-family: 'Poppins', sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: #0a1f44;
  display: block;
  margin-bottom: 3px;
}
.cl-step-content p {
  font-family: 'Poppins', sans-serif;
  font-size: 12px;
  color: #6a7a98;
  line-height: 1.7;
  margin: 0;
}

/* ---- Office Grid (Slide 4) ---- */
.cl-office-grid { display: flex; flex-direction: column; gap: 10px; }
.cl-office-card {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  background: #f8faff;
  border: 1px solid #e4ecf8;
  border-radius: 12px;
  padding: 16px;
  border-left: 4px solid transparent;
  transition: transform 0.2s;
}
.cl-office-card:hover { transform: translateX(4px); }
.cl-word   { border-left-color: #2b579a; }
.cl-excel  { border-left-color: #217346; }
.cl-ppt    { border-left-color: #d24726; }
.cl-office-icon {
  width: 36px; height: 36px;
  border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  font-size: 18px;
  flex-shrink: 0;
  background: rgba(102,16,242,0.08);
  color: #6610f2;
}
.cl-word   .cl-office-icon { background: rgba(43,87,154,0.1);  color: #2b579a; }
.cl-excel  .cl-office-icon { background: rgba(33,115,70,0.1);  color: #217346; }
.cl-ppt    .cl-office-icon { background: rgba(210,71,38,0.1);  color: #d24726; }
.cl-office-card strong {
  font-family: 'Poppins', sans-serif;
  font-size: 12px;
  font-weight: 700;
  color: #0a1f44;
  display: block;
  margin-bottom: 4px;
}
.cl-office-card p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px;
  color: #6a7a98;
  line-height: 1.65;
  margin: 0;
}

/* ---- Threat Grid (Slide 7) ---- */
.cl-threat-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.cl-threat-item {
  background: #fff8f8;
  border: 1px solid #fce4e4;
  border-radius: 12px;
  padding: 16px;
  transition: border-color 0.25s;
}
.cl-threat-item:hover { border-color: #e53e3e; }
.cl-threat-icon {
  width: 34px; height: 34px;
  background: rgba(229,62,62,0.1);
  border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  color: #e53e3e;
  font-size: 16px;
  margin-bottom: 10px;
}
.cl-threat-item strong {
  font-family: 'Poppins', sans-serif;
  font-size: 12px;
  font-weight: 700;
  color: #0a1f44;
  display: block;
  margin-bottom: 6px;
}
.cl-threat-item p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px;
  color: #6a7a98;
  line-height: 1.65;
  margin: 0;
}

/* ---- Action Grid (Slide 12) ---- */
.cl-action-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.cl-action-card {
  background: #f8faff;
  border: 1px solid #e4ecf8;
  border-radius: 12px;
  padding: 16px;
  transition: border-color 0.25s, transform 0.25s;
}
.cl-action-card:hover {
  border-color: #6610f2;
  transform: translateY(-3px);
}
.cl-action-num {
  font-family: 'Poppins', sans-serif;
  font-size: 9px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #6610f2;
  margin-bottom: 6px;
}
.cl-action-card strong {
  font-family: 'Poppins', sans-serif;
  font-size: 12px;
  font-weight: 700;
  color: #0a1f44;
  display: block;
  margin-bottom: 6px;
}
.cl-action-card p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px;
  color: #6a7a98;
  line-height: 1.65;
  margin: 0;
}

/* ---- Right Visual Panel ---- */
.cl-slide-visual {
  width: 260px;
  flex-shrink: 0;
  background: linear-gradient(160deg, #f0f4ff, #e8eeff);
  border-left: 1px solid #e4ecf8;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 28px;
  padding: 36px 24px;
}
.cl-icon-display {
  width: 110px; height: 110px;
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(102,16,242,0.12), rgba(10,61,98,0.08));
  border: 1px solid rgba(102,16,242,0.2);
  display: flex; align-items: center; justify-content: center;
  font-size: 46px;
  color: #6610f2;
  box-shadow: 0 8px 30px rgba(102,16,242,0.12);
}
.cl-spinning { animation: clSpin 6s linear infinite; }
@keyframes clSpin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

/* Stat blocks */
.cl-stat-block { display: flex; flex-direction: column; gap: 12px; width: 100%; }
.cl-stat {
  text-align: center;
  background: #ffffff;
  border: 1px solid #e4ecf8;
  border-radius: 10px;
  padding: 12px 10px;
  box-shadow: 0 2px 8px rgba(10,30,80,0.06);
}
.cl-stat-num {
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 20px;
  font-weight: 800;
  color: #6610f2;
  line-height: 1;
  margin-bottom: 4px;
}
.cl-stat-label {
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: #a0b0c8;
  text-transform: uppercase;
  line-height: 1.4;
}

/* ---- Dot Navigation ---- */
.cl-dot-nav { display: flex; justify-content: center; gap: 8px; margin-top: 32px; }
.cl-dot {
  width: 8px; height: 8px;
  border-radius: 50%;
  background: #dce4f0;
  border: none;
  cursor: pointer;
  transition: all 0.3s;
  padding: 0;
}
.cl-dot-active {
  background: #6610f2;
  width: 24px;
  border-radius: 4px;
  box-shadow: 0 0 10px rgba(102,16,242,0.4);
}

/* ---- Responsive ---- */
@media (max-width: 900px) {
  .cl-slide { flex-direction: column; }
  .cl-slide-visual {
    width: 100%;
    border-left: none;
    border-top: 1px solid #e4ecf8;
    flex-direction: row;
    padding: 20px 24px;
    gap: 20px;
    justify-content: flex-start;
    background: #f8faff;
  }
  .cl-icon-display { width: 60px; height: 60px; font-size: 26px; flex-shrink: 0; }
  .cl-stat-block { flex-direction: row; flex-wrap: wrap; }
  .cl-stat { flex: 1; min-width: 90px; }
  .cl-hw-grid { grid-template-columns: repeat(2, 1fr); }
  .cl-action-grid { grid-template-columns: repeat(2, 1fr); }
  .cl-threat-grid { grid-template-columns: repeat(2, 1fr); }
  .cl-slide-inner { padding: 28px 24px 20px; }
}
@media (max-width: 600px) {
  .cl-slides-header { flex-direction: column; gap: 16px; padding: 0 20px; }
  .cl-header-line { display: none; }
  .cl-controls-bar { padding: 0 20px; gap: 12px; }
  .cl-slides-track-outer { padding: 0 20px; }
  .cl-hw-grid { grid-template-columns: 1fr 1fr; }
  .cl-action-grid { grid-template-columns: 1fr 1fr; }
  .cl-slide-inner { padding: 22px 18px 18px; gap: 12px; }
  .cl-slide-title { font-size: 18px; }
  .cl-slide-body p { font-size: 12.5px; }
  .cl-counter-current { font-size: 22px; }
}
/* ============================================================
   END COMPUTER LITERACY SLIDES CSS
============================================================ */
/* ============================================================
   ENGINEERING SLIDES — add to style.css
   All classes prefixed with "eng-" to avoid conflicts
============================================================ */

/* ---- Wrapper ---- */
.eng-slides-wrapper {
  background: #ffffff;
  padding: 70px 0 80px;
  position: relative;
  overflow: hidden;
}
.eng-slides-wrapper::before {
  content: '';
  position: absolute;
  top: -200px; right: -200px;
  width: 600px; height: 600px;
  background: radial-gradient(circle, rgba(102,16,242,0.12) 0%, transparent 70%);
  pointer-events: none;
}
.eng-slides-wrapper::after {
  content: '';
  position: absolute;
  bottom: -150px; left: -150px;
  width: 500px; height: 500px;
  background: radial-gradient(circle, rgba(0,212,255,0.07) 0%, transparent 70%);
  pointer-events: none;
}

/* ---- Header ---- */
.eng-slides-header {
  display: flex;
  align-items: center;
  gap: 28px;
  max-width: 1100px;
  margin: 0 auto 50px;
  padding: 0 40px;
}
.eng-header-line {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(102,16,242,0.5), transparent);
}
.eng-header-text {
  text-align: center;
  flex-shrink: 0;
}
.eng-eyebrow {
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: #6610f2;
  margin-bottom: 10px;
}
.eng-main-title {
  font-family: 'Poppins', sans-serif;
  font-size: clamp(26px, 4vw, 42px);
  font-weight: 700;
  color: #0f0a17;
  line-height: 1.15;
  margin-bottom: 10px;
}
.eng-accent {
  color: #00d4ff;
  position: relative;
}
.eng-subtitle {
  font-family: 'Poppins', sans-serif;
  font-size: 13px;
  color: #7a8aa0;
  max-width: 460px;
  line-height: 1.7;
  margin: 0;
}

/* ---- Controls Bar ---- */
.eng-controls-bar {
  display: flex;
  align-items: center;
  gap: 20px;
  max-width: 1100px;
  margin: 0 auto 28px;
  padding: 0 40px;
}
.eng-slide-counter {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-shrink: 0;
}
.eng-counter-current {
  font-family: 'Poppins', sans-serif;
  font-size: 28px;
  font-weight: 700;
  color: #6610f2;
  line-height: 1;
}
.eng-counter-sep {
  width: 28px;
  height: 2px;
  background: #2a3145;
  display: block;
}
.eng-counter-total {
  font-family: 'Poppins', sans-serif;
  font-size: 14px;
  color: #3a4560;
  font-weight: 600;
}
.eng-progress-track {
  flex: 1;
  height: 3px;
  background: #1a2035;
  border-radius: 3px;
  overflow: hidden;
}
.eng-progress-fill {
  height: 100%;
  background: linear-gradient(90deg, #6610f2, #00d4ff);
  border-radius: 3px;
  transition: width 0.5s cubic-bezier(0.4,0,0.2,1);
  width: 0%;
}
.eng-nav-btns {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
}
.eng-nav-btn {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 1px solid #2a3145;
  background: #12182a;
  color: #7a8aa0;
  font-size: 14px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.25s;
}
.eng-nav-btn:hover:not(:disabled) {
  border-color: #6610f2;
  color: #fff;
  background: #6610f2;
  box-shadow: 0 0 18px rgba(102,16,242,0.4);
}
.eng-nav-btn:disabled {
  opacity: 0.25;
  cursor: not-allowed;
}

/* ---- Slides Track ---- */
.eng-slides-track-outer {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 40px;
  overflow: hidden;
}
.eng-slides-track {
  display: flex;
  transition: transform 0.55s cubic-bezier(0.77,0,0.175,1);
}

/* ---- Individual Slide ---- */
.eng-slide {
  min-width: 100%;
  display: flex;
  gap: 0;
  background: #12182a;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid #1e2840;
  box-shadow: 0 20px 60px rgba(0,0,0,0.4);
  position: relative;
  opacity: 0.6;
  transition: opacity 0.3s;
}
.eng-slide.eng-slide-anim {
  opacity: 1;
  animation: engSlideIn 0.55s cubic-bezier(0.22,1,0.36,1) forwards;
}
@keyframes engSlideIn {
  from { opacity: 0.4; transform: translateY(18px); }
  to   { opacity: 1;   transform: translateY(0); }
}

/* Slide number watermark */
.eng-slide-number {
  position: absolute;
  top: 20px;
  right: 24px;
  font-family: 'Poppins', sans-serif;
  font-size: 72px;
  font-weight: 800;
  color: rgba(255,255,255,0.03);
  line-height: 1;
  pointer-events: none;
  user-select: none;
}

/* ---- Left Content Panel ---- */
.eng-slide-inner {
  flex: 1;
  padding: 46px 44px 44px;
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-width: 0;
}
.eng-slide-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: 'Poppins', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: #6610f2;
  background: rgba(102,16,242,0.1);
  border: 1px solid rgba(102,16,242,0.25);
  border-radius: 30px;
  padding: 6px 14px;
  width: fit-content;
}
.eng-slide-title {
  font-family: 'Poppins', sans-serif;
  font-size: clamp(20px, 2.5vw, 28px);
  font-weight: 700;
  color: #ffffff;
  line-height: 1.2;
  margin: 0;
}
.eng-slide-divider {
  width: 48px;
  height: 3px;
  background: linear-gradient(90deg, #6610f2, #00d4ff);
  border-radius: 2px;
  flex-shrink: 0;
}
.eng-slide-body {
  display: flex;
  flex-direction: column;
  gap: 14px;
}
.eng-slide-body p {
  font-family: 'Poppins', sans-serif;
  font-size: 13.5px;
  color: #8fa0b8;
  line-height: 1.85;
  margin: 0;
}
.eng-slide-body p strong {
  color: #c8d8eb;
  font-weight: 600;
}

/* ---- Quote ---- */
.eng-slide-quote {
  background: rgba(102,16,242,0.07);
  border-left: 3px solid #6610f2;
  border-radius: 0 10px 10px 0;
  padding: 16px 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.eng-slide-quote i {
  color: #6610f2;
  font-size: 14px;
}
.eng-slide-quote p {
  font-family: 'Poppins', sans-serif;
  font-style: italic;
  font-size: 13px;
  color: #a0b4cc;
  margin: 0;
  line-height: 1.7;
}
.eng-slide-quote cite {
  font-family: 'Poppins', sans-serif;
  font-size: 10px;
  color: #6610f2;
  letter-spacing: 1px;
  font-style: normal;
  font-weight: 600;
}

/* ---- Tags ---- */
.eng-slide-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 4px;
}
.eng-slide-tags span {
  font-family: 'Poppins', sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 1px;
  color: #00d4ff;
  background: rgba(0,212,255,0.07);
  border: 1px solid rgba(0,212,255,0.2);
  border-radius: 20px;
  padding: 4px 12px;
  text-transform: uppercase;
}

/* ---- Branch Grid (Slide 2) ---- */
.eng-branch-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 12px;
}
.eng-branch-item {
  background: #0d1220;
  border: 1px solid #1e2840;
  border-radius: 12px;
  padding: 16px;
  transition: border-color 0.25s, transform 0.25s;
}
.eng-branch-item:hover {
  border-color: #6610f2;
  transform: translateY(-3px);
}
.eng-branch-item i {
  font-size: 20px;
  color: #6610f2;
  margin-bottom: 8px;
  display: block;
}
.eng-branch-item strong {
  font-family: 'Poppins', sans-serif;
  font-size: 12px;
  font-weight: 700;
  color: #dde8f5;
  display: block;
  margin-bottom: 6px;
}
.eng-branch-item p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px;
  color: #667a90;
  line-height: 1.6;
  margin: 0;
}

/* ---- Steps (Slide 3) ---- */
.eng-steps {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.eng-step {
  display: flex;
  gap: 14px;
  align-items: flex-start;
}
.eng-step-num {
  width: 28px;
  height: 28px;
  background: linear-gradient(135deg, #6610f2, #4a0ab5);
  color: #fff;
  font-family: 'Poppins', sans-serif;
  font-size: 12px;
  font-weight: 700;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 2px;
}
.eng-step-content {
  flex: 1;
}
.eng-step-content strong {
  font-family: 'Poppins', sans-serif;
  font-size: 13px;
  font-weight: 700;
  color: #dde8f5;
  display: block;
  margin-bottom: 3px;
}
.eng-step-content p {
  font-family: 'Poppins', sans-serif;
  font-size: 12px;
  color: #7a8aa0;
  line-height: 1.7;
  margin: 0;
}

/* ---- Math Cards (Slide 4) ---- */
.eng-math-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.eng-math-card {
  background: #0d1220;
  border: 1px solid #1e2840;
  border-radius: 12px;
  padding: 18px;
  text-align: center;
  transition: border-color 0.25s;
}
.eng-math-card:hover { border-color: #00d4ff; }
.eng-formula {
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 22px;
  font-weight: 700;
  color: #00d4ff;
  letter-spacing: 1px;
  margin-bottom: 4px;
}
.eng-formula-name {
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #6610f2;
  margin-bottom: 8px;
}
.eng-math-card p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px;
  color: #667a90;
  line-height: 1.6;
  margin: 0;
}

/* ---- Right Visual Panel ---- */
.eng-slide-visual {
  width: 260px;
  flex-shrink: 0;
  background: #0d1220;
  border-left: 1px solid #1e2840;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 28px;
  padding: 36px 24px;
}
.eng-icon-display {
  width: 110px;
  height: 110px;
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(102,16,242,0.2), rgba(0,212,255,0.1));
  border: 1px solid rgba(102,16,242,0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 46px;
  color: #6610f2;
  box-shadow: 0 0 40px rgba(102,16,242,0.15);
}
.eng-spinning {
  animation: engSpin 6s linear infinite;
}
@keyframes engSpin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

/* Stat blocks */
.eng-stat-block {
  display: flex;
  flex-direction: column;
  gap: 14px;
  width: 100%;
}
.eng-stat {
  text-align: center;
  background: #12182a;
  border: 1px solid #1e2840;
  border-radius: 10px;
  padding: 12px 10px;
}
.eng-stat-num {
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 20px;
  font-weight: 800;
  color: #00d4ff;
  line-height: 1;
  margin-bottom: 4px;
}
.eng-stat-label {
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 9px;
  font-weight: 600;
  letter-spacing: 0.5px;
  color: #506075;
  text-transform: uppercase;
  line-height: 1.4;
}

/* ---- Dot Navigation ---- */
.eng-dot-nav {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 32px;
}
.eng-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #1e2840;
  border: none;
  cursor: pointer;
  transition: all 0.3s;
  padding: 0;
}
.eng-dot-active {
  background: #6610f2;
  width: 24px;
  border-radius: 4px;
  box-shadow: 0 0 10px rgba(102,16,242,0.5);
}

/* ---- Responsive ---- */
@media (max-width: 900px) {
  .eng-slide { flex-direction: column; }
  .eng-slide-visual {
    width: 100%;
    border-left: none;
    border-top: 1px solid #1e2840;
    flex-direction: row;
    padding: 20px 24px;
    gap: 20px;
    justify-content: flex-start;
  }
  .eng-icon-display { width: 60px; height: 60px; font-size: 26px; flex-shrink: 0; }
  .eng-stat-block { flex-direction: row; flex-wrap: wrap; }
  .eng-stat { flex: 1; min-width: 90px; }
  .eng-branch-grid { grid-template-columns: repeat(2, 1fr); }
  .eng-math-grid { grid-template-columns: repeat(2, 1fr); }
  .eng-slide-inner { padding: 28px 24px 20px; }
}
@media (max-width: 600px) {
  .eng-slides-header { flex-direction: column; gap: 16px; padding: 0 20px; }
  .eng-header-line { display: none; }
  .eng-controls-bar { padding: 0 20px; gap: 12px; }
  .eng-slides-track-outer { padding: 0 20px; }
  .eng-branch-grid { grid-template-columns: 1fr 1fr; }
  .eng-slide-inner { padding: 22px 18px 18px; gap: 12px; }
  .eng-slide-title { font-size: 18px; }
  .eng-slide-body p { font-size: 12.5px; }
  .eng-counter-current { font-size: 22px; }
  .eng-slide-visual { flex-wrap: wrap; }
}
/* ============================================================
   END ENGINEERING SLIDES CSS
============================================================ */
/* ============================================================
   PROGRAMMING SLIDES — add to style.css
   All classes prefixed with "pg-" to avoid conflicts
============================================================ */

/* ---- Wrapper ---- */
.pg-slides-wrapper {
  background: #ffffff;
  padding: 70px 0 80px;
  position: relative;
  overflow: hidden;
}
.pg-slides-wrapper::before {
  content: '';
  position: absolute;
  top: -200px; right: -100px;
  width: 550px; height: 550px;
  background: radial-gradient(circle, rgba(0,255,136,0.07) 0%, transparent 70%);
  pointer-events: none;
}
.pg-slides-wrapper::after {
  content: '';
  position: absolute;
  bottom: -150px; left: -100px;
  width: 450px; height: 450px;
  background: radial-gradient(circle, rgba(0,180,255,0.07) 0%, transparent 70%);
  pointer-events: none;
}

/* ---- Header ---- */
.pg-slides-header {
  display: flex; align-items: center; gap: 28px;
  max-width: 1100px; margin: 0 auto 50px; padding: 0 40px;
}
.pg-header-line {
  flex: 1; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(0,255,136,0.35), transparent);
}
.pg-header-text { text-align: center; flex-shrink: 0; }
.pg-eyebrow {
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 10px; font-weight: 600;
  letter-spacing: 4px; text-transform: uppercase;
  color: #00ff88; margin-bottom: 10px;
}
.pg-main-title {
  font-family: 'Poppins', sans-serif;
  font-size: clamp(26px, 4vw, 42px);
  font-weight: 700; color: #2b9e66;
  line-height: 1.15; margin-bottom: 10px;
}
.pg-accent {
  background: linear-gradient(90deg, #00ff88, #00b4ff);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.pg-subtitle {
  font-family: 'Poppins', sans-serif;
  font-size: 13px; color: #4a6a5a;
  max-width: 480px; line-height: 1.7; margin: 0;
}

/* ---- Controls Bar ---- */
.pg-controls-bar {
  display: flex; align-items: center; gap: 20px;
  max-width: 1100px; margin: 0 auto 28px; padding: 0 40px;
}
.pg-slide-counter { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.pg-counter-current {
  font-family: 'Poppins', sans-serif;
  font-size: 28px; font-weight: 700;
  color: #00ff88; line-height: 1;
}
.pg-counter-sep { width: 28px; height: 2px; background: #0a2018; display: block; }
.pg-counter-total {
  font-family: 'Poppins', sans-serif;
  font-size: 14px; color: #0a3020; font-weight: 600;
}
.pg-progress-track {
  flex: 1; height: 3px;
  background: #051008; border-radius: 3px; overflow: hidden;
}
.pg-progress-fill {
  height: 100%;
  background: linear-gradient(90deg, #00ff88, #00b4ff);
  border-radius: 3px;
  transition: width 0.5s cubic-bezier(0.4,0,0.2,1);
  width: 0%;
}
.pg-nav-btns { display: flex; gap: 10px; flex-shrink: 0; }
.pg-nav-btn {
  width: 42px; height: 42px; border-radius: 50%;
  border: 1px solid #0a2018; background: #051008;
  color: #2a5040; font-size: 14px; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: all 0.25s;
}
.pg-nav-btn:hover:not(:disabled) {
  border-color: #00ff88; color: #020c14;
  background: #00ff88;
  box-shadow: 0 0 20px rgba(0,255,136,0.4);
}
.pg-nav-btn:disabled { opacity: 0.2; cursor: not-allowed; }

/* ---- Slides Track ---- */
.pg-slides-track-outer {
  max-width: 1100px; margin: 0 auto;
  padding: 0 40px; overflow: hidden;
}
.pg-slides-track {
  display: flex;
  transition: transform 0.55s cubic-bezier(0.77,0,0.175,1);
}

/* ---- Individual Slide ---- */
.pg-slide {
  min-width: 100%; display: flex;
  background: #051008; border-radius: 20px; overflow: hidden;
  border: 1px solid #0a2018;
  box-shadow: 0 20px 60px rgba(0,0,0,0.5);
  position: relative; opacity: 0.6; transition: opacity 0.3s;
}
.pg-slide.pg-slide-anim {
  opacity: 1;
  animation: pgSlideIn 0.55s cubic-bezier(0.22,1,0.36,1) forwards;
}
@keyframes pgSlideIn {
  from { opacity: 0.4; transform: translateY(18px); }
  to   { opacity: 1;   transform: translateY(0); }
}
.pg-slide-number {
  position: absolute; top: 20px; right: 24px;
  font-family: 'Poppins', sans-serif;
  font-size: 72px; font-weight: 800;
  color: rgba(0,255,136,0.03);
  line-height: 1; pointer-events: none; user-select: none;
}

/* ---- Content Panel ---- */
.pg-slide-inner {
  flex: 1; padding: 46px 44px 44px;
  display: flex; flex-direction: column; gap: 18px; min-width: 0;
}
.pg-slide-badge {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: 'Poppins', sans-serif;
  font-size: 10px; font-weight: 700;
  letter-spacing: 2.5px; text-transform: uppercase;
  color: #00ff88;
  background: rgba(0,255,136,0.07);
  border: 1px solid rgba(0,255,136,0.18);
  border-radius: 30px; padding: 6px 14px; width: fit-content;
}
.pg-slide-title {
  font-family: 'Poppins', sans-serif;
  font-size: clamp(20px, 2.5vw, 28px);
  font-weight: 700; color: #c0ffe0;
  line-height: 1.2; margin: 0;
}
.pg-slide-divider {
  width: 48px; height: 3px;
  background: linear-gradient(90deg, #00ff88, #00b4ff);
  border-radius: 2px; flex-shrink: 0;
}
.pg-slide-body { display: flex; flex-direction: column; gap: 14px; }
.pg-slide-body p {
  font-family: 'Poppins', sans-serif;
  font-size: 13.5px; color: #f3f7f5;
  line-height: 1.85; margin: 0;
}
.pg-slide-body p strong { color: #80c0a0; font-weight: 600; }

/* ---- Code Block ---- */
.pg-code-block {
  background: #020c14;
  border: 1px solid #0a2018;
  border-radius: 8px;
  padding: 12px 14px;
  font-family: 'Courier New', monospace;
  font-size: 12px;
  line-height: 1.7;
  margin-top: 8px;
  color: #c0ffe0;
}
.pg-code-full {
  font-size: 11.5px;
  margin-top: 0;
}
.pg-code-keyword { color: #00b4ff; }
.pg-code-fn      { color: #00ff88; }
.pg-code-str     { color: #ffb347; }
.pg-code-num     { color: #ff79c6; }
.pg-code-comment { color: #2a5040; font-style: italic; }

/* ---- Quote ---- */
.pg-slide-quote {
  background: rgba(0,255,136,0.04);
  border-left: 3px solid #00ff88;
  border-radius: 0 10px 10px 0;
  padding: 16px 20px;
  display: flex; flex-direction: column; gap: 8px;
}
.pg-slide-quote i { color: #00ff88; font-size: 14px; }
.pg-slide-quote p {
  font-family: 'Poppins', sans-serif;
  font-style: italic; font-size: 13px;
  color: #4a7060; margin: 0; line-height: 1.7;
}
.pg-slide-quote cite {
  font-family: 'Poppins', sans-serif;
  font-size: 10px; color: #00ff88;
  letter-spacing: 1px; font-style: normal; font-weight: 600;
}

/* ---- Tags ---- */
.pg-slide-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
.pg-slide-tags span {
  font-family: 'Poppins', sans-serif;
  font-size: 10px; font-weight: 600; letter-spacing: 1px;
  color: #00b4ff;
  background: rgba(0,180,255,0.07);
  border: 1px solid rgba(0,180,255,0.2);
  border-radius: 20px; padding: 4px 12px; text-transform: uppercase;
}

/* ---- Pillars (Slide 3) ---- */
.pg-pillars { display: flex; flex-direction: column; gap: 12px; }
.pg-pillar { display: flex; gap: 14px; align-items: flex-start; }
.pg-pillar-icon {
  width: 36px; height: 36px; border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  font-size: 16px; flex-shrink: 0; margin-top: 2px;
}
.pg-pillar-content { flex: 1; }
.pg-pillar-content strong {
  font-family: 'Poppins', sans-serif;
  font-size: 13px; font-weight: 700;
  color: #80c0a0; display: block; margin-bottom: 4px;
}
.pg-pillar-content p {
  font-family: 'Poppins', sans-serif;
  font-size: 12px; color: #63c591;
  line-height: 1.7; margin: 0 0 4px;
}

/* ---- Language Grid (Slide 4) ---- */
.pg-lang-grid {
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px;
}
.pg-lang-card {
  background: #020c14; border: 1px solid #0a2018;
  border-radius: 12px; padding: 16px;
  transition: border-color 0.25s, transform 0.25s;
}
.pg-lang-card:hover { transform: translateY(-3px); }
.pg-python:hover  { border-color: #3b82f6; }
.pg-js:hover      { border-color: #f7df1e; }
.pg-html:hover    { border-color: #e34c26; }
.pg-java:hover    { border-color: #f89820; }
.pg-c:hover       { border-color: #a8b9cc; }
.pg-sql:hover     { border-color: #00b4ff; }
.pg-lang-top {
  display: flex; align-items: center; gap: 8px;
  margin-bottom: 8px; flex-wrap: wrap;
}
.pg-lang-top i { font-size: 18px; color: #00ff88; }
.pg-lang-top strong {
  font-family: 'Poppins', sans-serif;
  font-size: 12px; font-weight: 700;
  color: #80c0a0; flex: 1;
}
.pg-lang-badge {
  font-family: 'Poppins', sans-serif;
  font-size: 8px; font-weight: 700;
  letter-spacing: 1px; text-transform: uppercase;
  color: #00ff88; background: rgba(0,255,136,0.1);
  border-radius: 8px; padding: 2px 7px;
}
.pg-lang-card p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; color: #438763;
  line-height: 1.65; margin: 0;
}

/* ---- Data Structures Grid (Slide 5) ---- */
.pg-ds-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.pg-ds-item {
  background: #020c14; border: 1px solid #0a2018;
  border-radius: 12px; padding: 14px;
  transition: border-color 0.25s;
}
.pg-ds-item:hover { border-color: #00ff88; }
.pg-ds-icon {
  width: 30px; height: 30px;
  background: rgba(0,255,136,0.08); border-radius: 6px;
  display: flex; align-items: center; justify-content: center;
  color: #00ff88; font-size: 14px; margin-bottom: 8px;
}
.pg-ds-item strong {
  font-family: 'Poppins', sans-serif;
  font-size: 11.5px; font-weight: 700;
  color: #80c0a0; display: block; margin-bottom: 5px;
}
.pg-ds-item p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; color: #4a976e;
  line-height: 1.6; margin: 0 0 8px;
}
.pg-ds-item .pg-code-block { font-size: 10.5px; padding: 8px 10px; }

/* ---- Algorithm Grid (Slide 6) ---- */
.pg-algo-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.pg-algo-item {
  background: #020c14; border: 1px solid #0a2018;
  border-radius: 12px; padding: 16px;
}
.pg-algo-header {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; font-weight: 700;
  color: #00ff88; margin-bottom: 10px;
  display: flex; align-items: center; gap: 6px;
}
.pg-algo-item p {
  font-family: 'Poppins', sans-serif;
  font-size: 11.5px; color: #3b825c;
  line-height: 1.7; margin: 0 0 8px;
}
.pg-algo-item p:last-child { margin-bottom: 0; }
.pg-algo-item p strong { color: #80c0a0; font-weight: 600; }

/* ---- OOP Grid (Slide 7) ---- */
.pg-oop-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.pg-oop-item {
  background: #020c14; border: 1px solid #0a2018;
  border-radius: 12px; padding: 16px;
  transition: border-color 0.25s;
}
.pg-oop-item:hover { border-color: #00b4ff; }
.pg-oop-icon {
  width: 32px; height: 32px;
  background: rgba(0,180,255,0.1); border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  color: #00b4ff; font-size: 15px; margin-bottom: 8px;
}
.pg-oop-item strong {
  font-family: 'Poppins', sans-serif;
  font-size: 12px; font-weight: 700;
  color: #80c0a0; display: block; margin-bottom: 5px;
}
.pg-oop-item p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; color: #6ac796;
  line-height: 1.65; margin: 0;
}

/* ---- Steps (Slide 8) ---- */
.pg-steps { display: flex; flex-direction: column; gap: 10px; }
.pg-step { display: flex; gap: 14px; align-items: flex-start; }
.pg-step-num {
  width: 28px; height: 28px;
  background: linear-gradient(135deg, #00ff88, #00b4ff);
  color: #020c14;
  font-family: 'Poppins', sans-serif;
  font-size: 12px; font-weight: 800;
  border-radius: 50%; display: flex;
  align-items: center; justify-content: center;
  flex-shrink: 0; margin-top: 2px;
}
.pg-step-content strong {
  font-family: 'Poppins', sans-serif;
  font-size: 13px; font-weight: 700;
  color: #80c0a0; display: block; margin-bottom: 3px;
}
.pg-step-content p {
  font-family: 'Poppins', sans-serif;
  font-size: 12px; color: #54b882;
  line-height: 1.7; margin: 0;
}

/* ---- Web Split (Slide 9) ---- */
.pg-web-split { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.pg-web-side {
  background: #020c14; border: 1px solid #0a2018;
  border-radius: 12px; overflow: hidden;
}
.pg-web-header {
  padding: 12px 16px;
  font-family: 'Poppins', sans-serif;
  font-size: 12px; font-weight: 700;
  display: flex; align-items: center; gap: 8px; color: #fff;
}
.pg-frontend .pg-web-header { background: rgba(0,255,136,0.12); color: #00ff88; }
.pg-backend  .pg-web-header { background: rgba(0,180,255,0.12); color: #00b4ff; }
.pg-web-side p, .pg-web-side ul {
  font-family: 'Poppins', sans-serif;
  font-size: 11.5px; color: #4da074;
  line-height: 1.7; margin: 0; padding: 10px 16px;
}
.pg-web-side ul { padding-left: 28px; padding-top: 0; }
.pg-web-side ul li { margin-bottom: 6px; }
.pg-web-side ul li strong { color: #60a080; font-weight: 600; }

/* ---- Career Grid (Slide 11) ---- */
.pg-careers-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.pg-career-card {
  background: #020c14; border: 1px solid #0a2018;
  border-radius: 12px; padding: 16px;
  transition: border-color 0.25s, transform 0.25s;
}
.pg-career-card:hover { border-color: #00ff88; transform: translateY(-3px); }
.pg-career-icon {
  width: 34px; height: 34px;
  background: rgba(0,255,136,0.08); border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  color: #00ff88; font-size: 16px; margin-bottom: 10px;
}
.pg-career-card strong {
  font-family: 'Poppins', sans-serif;
  font-size: 12px; font-weight: 700;
  color: #80c0a0; display: block; margin-bottom: 6px;
}
.pg-career-card p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; color: #3e9165;
  line-height: 1.65; margin: 0;
}

/* ---- Action Steps (Slide 12) ---- */
.pg-action-steps { display: flex; flex-direction: column; gap: 10px; }
.pg-action-step {
  display: flex; gap: 16px; align-items: flex-start;
  background: #020c14; border: 1px solid #0a2018;
  border-radius: 12px; padding: 14px 16px;
  transition: border-color 0.25s;
}
.pg-action-step:hover { border-color: #00ff88; }
.pg-action-num {
  font-family: 'Poppins', sans-serif;
  font-size: 10px; font-weight: 700;
  letter-spacing: 1px; text-transform: uppercase;
  color: #00ff88; background: rgba(0,255,136,0.08);
  border-radius: 8px; padding: 4px 10px;
  white-space: nowrap; flex-shrink: 0; align-self: flex-start; margin-top: 2px;
}
.pg-action-content strong {
  font-family: 'Poppins', sans-serif;
  font-size: 12px; font-weight: 700;
  color: #80c0a0; display: block; margin-bottom: 4px;
}
.pg-action-content p {
  font-family: 'Poppins', sans-serif;
  font-size: 11.5px; color: #3c9967;
  line-height: 1.7; margin: 0;
}
.pg-action-content code {
  font-family: 'Courier New', monospace;
  font-size: 11px; color: #00ff88;
  background: rgba(0,255,136,0.08);
  border-radius: 4px; padding: 1px 6px;
}

/* ---- Right Visual Panel ---- */
.pg-slide-visual {
  width: 260px; flex-shrink: 0;
  background: #020c14; border-left: 1px solid #0a2018;
  display: flex; flex-direction: column;
  align-items: center; justify-content: center;
  gap: 28px; padding: 36px 24px;
}
.pg-icon-display {
  width: 110px; height: 110px; border-radius: 28px;
  background: linear-gradient(135deg, rgba(0,255,136,0.1), rgba(0,180,255,0.08));
  border: 1px solid rgba(0,255,136,0.2);
  display: flex; align-items: center; justify-content: center;
  font-size: 46px; color: #00ff88;
  box-shadow: 0 0 40px rgba(0,255,136,0.1);
}
.pg-pulse { animation: pgPulse 2s ease-in-out infinite; }
@keyframes pgPulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.6; transform: scale(0.92); }
}
.pg-stat-block { display: flex; flex-direction: column; gap: 12px; width: 100%; }
.pg-stat {
  text-align: center; background: #051008;
  border: 1px solid #0a2018; border-radius: 10px; padding: 12px 10px;
}
.pg-stat-num {
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 18px; font-weight: 800;
  background: linear-gradient(90deg, #00ff88, #00b4ff);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1; margin-bottom: 4px;
}
.pg-stat-label {
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 9px; font-weight: 600;
  letter-spacing: 0.5px; color: #08a169;
  text-transform: uppercase; line-height: 1.4;
}

/* ---- Dot Navigation ---- */
.pg-dot-nav { display: flex; justify-content: center; gap: 8px; margin-top: 32px; }
.pg-dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: #0a2018; border: none; cursor: pointer;
  transition: all 0.3s; padding: 0;
}
.pg-dot-active {
  background: #00ff88; width: 24px; border-radius: 4px;
  box-shadow: 0 0 10px rgba(0,255,136,0.5);
}

/* ---- Responsive ---- */
@media (max-width: 900px) {
  .pg-slide { flex-direction: column; }
  .pg-slide-visual {
    width: 100%; border-left: none; border-top: 1px solid #0a2018;
    flex-direction: row; padding: 20px 24px; gap: 20px; justify-content: flex-start;
  }
  .pg-icon-display { width: 60px; height: 60px; font-size: 26px; flex-shrink: 0; }
  .pg-stat-block { flex-direction: row; flex-wrap: wrap; }
  .pg-stat { flex: 1; min-width: 90px; }
  .pg-lang-grid { grid-template-columns: repeat(2, 1fr); }
  .pg-ds-grid { grid-template-columns: repeat(2, 1fr); }
  .pg-careers-grid { grid-template-columns: repeat(2, 1fr); }
  .pg-slide-inner { padding: 28px 24px 20px; }
}
@media (max-width: 600px) {
  .pg-slides-header { flex-direction: column; gap: 16px; padding: 0 20px; }
  .pg-header-line { display: none; }
  .pg-controls-bar { padding: 0 20px; gap: 12px; }
  .pg-slides-track-outer { padding: 0 20px; }
  .pg-lang-grid { grid-template-columns: 1fr 1fr; }
  .pg-ds-grid { grid-template-columns: 1fr 1fr; }
  .pg-oop-grid { grid-template-columns: 1fr 1fr; }
  .pg-algo-grid { grid-template-columns: 1fr; }
  .pg-web-split { grid-template-columns: 1fr; }
  .pg-careers-grid { grid-template-columns: 1fr 1fr; }
  .pg-slide-inner { padding: 22px 18px 18px; gap: 12px; }
  .pg-slide-title { font-size: 18px; }
  .pg-slide-body p { font-size: 12.5px; }
  .pg-counter-current { font-size: 22px; }
}
/* ============================================================
   END PROGRAMMING SLIDES CSS
============================================================ */
/* ============================================================
   GRAPHIC DESIGN SLIDES — add to style.css
   All classes prefixed with "gd-" to avoid conflicts
============================================================ */

/* ---- Wrapper ---- */
.gd-slides-wrapper {
  background: linear-gradient(160deg, #ffffff 0%, #ffffff 60%, #c6c6c6 100%);
  padding: 70px 0 80px;
  position: relative;
  overflow: hidden;
}
.gd-slides-wrapper::before {
  content: '';
  position: absolute;
  top: -200px; left: -200px;
  width: 600px; height: 600px;
  background: radial-gradient(circle, rgba(214,0,255,0.1) 0%, transparent 70%);
  pointer-events: none;
}
.gd-slides-wrapper::after {
  content: '';
  position: absolute;
  bottom: -150px; right: -150px;
  width: 500px; height: 500px;
  background: radial-gradient(circle, rgba(255,100,0,0.08) 0%, transparent 70%);
  pointer-events: none;
}

/* ---- Header ---- */
.gd-slides-header {
  display: flex;
  align-items: center;
  gap: 28px;
  max-width: 1100px;
  margin: 0 auto 50px;
  padding: 0 40px;
}
.gd-header-line {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(214,0,255,0.4), transparent);
}
.gd-header-text { text-align: center; flex-shrink: 0; }
.gd-eyebrow {
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: #d600ff;
  margin-bottom: 10px;
}
.gd-main-title {
  font-family: 'Poppins', sans-serif;
  font-size: clamp(26px, 4vw, 42px);
  font-weight: 700;
  color: #003194;
  line-height: 1.15;
  margin-bottom: 10px;
}
.gd-accent {
  background: linear-gradient(90deg, #d600ff, #ff6400);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.gd-subtitle {
  font-family: 'Poppins', sans-serif;
  font-size: 13px;
  color: #8a7a9a;
  max-width: 480px;
  line-height: 1.7;
  margin: 0;
}

/* ---- Controls Bar ---- */
.gd-controls-bar {
  display: flex;
  align-items: center;
  gap: 20px;
  max-width: 1100px;
  margin: 0 auto 28px;
  padding: 0 40px;
}
.gd-slide-counter { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.gd-counter-current {
  font-family: 'Poppins', sans-serif;
  font-size: 28px;
  font-weight: 700;
  color: #d600ff;
  line-height: 1;
}
.gd-counter-sep { width: 28px; height: 2px; background: #2a1535; display: block; }
.gd-counter-total {
  font-family: 'Poppins', sans-serif;
  font-size: 14px;
  color: #3a2545;
  font-weight: 600;
}
.gd-progress-track {
  flex: 1; height: 3px;
  background: #1e1025;
  border-radius: 3px;
  overflow: hidden;
}
.gd-progress-fill {
  height: 100%;
  background: linear-gradient(90deg, #d600ff, #ff6400);
  border-radius: 3px;
  transition: width 0.5s cubic-bezier(0.4,0,0.2,1);
  width: 0%;
}
.gd-nav-btns { display: flex; gap: 10px; flex-shrink: 0; }
.gd-nav-btn {
  width: 42px; height: 42px;
  border-radius: 50%;
  border: 1px solid #2a1535;
  background: #150820;
  color: #6a5575;
  font-size: 14px;
  cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: all 0.25s;
}
.gd-nav-btn:hover:not(:disabled) {
  border-color: #d600ff;
  color: #fff;
  background: #d600ff;
  box-shadow: 0 0 20px rgba(214,0,255,0.4);
}
.gd-nav-btn:disabled { opacity: 0.25; cursor: not-allowed; }

/* ---- Slides Track ---- */
.gd-slides-track-outer {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 40px;
  overflow: hidden;
}
.gd-slides-track {
  display: flex;
  transition: transform 0.55s cubic-bezier(0.77,0,0.175,1);
}

/* ---- Individual Slide ---- */
.gd-slide {
  min-width: 100%;
  display: flex;
  background: #ffffff;
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid #cfcad2;
  box-shadow: 0 20px 60px rgba(186, 183, 183, 0.5);
  position: relative;
  opacity: 0.6;
  transition: opacity 0.3s;
}
.gd-slide.gd-slide-anim {
  opacity: 1;
  animation: gdSlideIn 0.55s cubic-bezier(0.22,1,0.36,1) forwards;
}
@keyframes gdSlideIn {
  from { opacity: 0.4; transform: translateY(18px); }
  to   { opacity: 1;   transform: translateY(0); }
}
.gd-slide-number {
  position: absolute; top: 20px; right: 24px;
  font-family: 'Poppins', sans-serif;
  font-size: 72px; font-weight: 800;
  color: rgba(212, 0, 255, 0.194);
  line-height: 1;
  pointer-events: none; user-select: none;
}

/* ---- Content Panel ---- */
.gd-slide-inner {
  flex: 1;
  padding: 46px 44px 44px;
  display: flex;
  flex-direction: column;
  gap: 18px;
  min-width: 0;
}
.gd-slide-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: 'Poppins', sans-serif;
  font-size: 10px; font-weight: 700;
  letter-spacing: 2.5px; text-transform: uppercase;
  color: #d600ff;
  background: rgba(214,0,255,0.08);
  border: 1px solid rgba(214,0,255,0.2);
  border-radius: 30px;
  padding: 6px 14px;
  width: fit-content;
}
.gd-slide-title {
  font-family: 'Poppins', sans-serif;
  font-size: clamp(20px, 2.5vw, 28px);
  font-weight: 700;
  color: #732fb2;
  line-height: 1.2;
  margin: 0;
}
.gd-slide-divider {
  width: 48px; height: 3px;
  background: linear-gradient(90deg, #d600ff, #ff6400);
  border-radius: 2px; flex-shrink: 0;
}
.gd-slide-body { display: flex; flex-direction: column; gap: 14px; }
.gd-slide-body p {
  font-family: 'Poppins', sans-serif;
  font-size: 13.5px; color: #8a7a9a;
  line-height: 1.85; margin: 0;
}
.gd-slide-body p strong { color: #c8a8e0; font-weight: 600; }

/* ---- Quote ---- */
.gd-slide-quote {
  background: rgba(214,0,255,0.06);
  border-left: 3px solid #d600ff;
  border-radius: 0 10px 10px 0;
  padding: 16px 20px;
  display: flex; flex-direction: column; gap: 8px;
}
.gd-slide-quote i { color: #d600ff; font-size: 14px; }
.gd-slide-quote p {
  font-family: 'Poppins', sans-serif;
  font-style: italic; font-size: 13px;
  color: #9a8aaa; margin: 0; line-height: 1.7;
}
.gd-slide-quote cite {
  font-family: 'Poppins', sans-serif;
  font-size: 10px; color: #d600ff;
  letter-spacing: 1px; font-style: normal; font-weight: 600;
}

/* ---- Tags ---- */
.gd-slide-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
.gd-slide-tags span {
  font-family: 'Poppins', sans-serif;
  font-size: 10px; font-weight: 600; letter-spacing: 1px;
  color: #ff6400;
  background: rgba(255,100,0,0.08);
  border: 1px solid rgba(255,100,0,0.2);
  border-radius: 20px;
  padding: 4px 12px; text-transform: uppercase;
}

/* ---- Principles Grid (Slide 2) ---- */
.gd-principles-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.gd-principle-card {
  background: #0f0518;
  border: 1px solid #2a1535;
  border-radius: 12px;
  padding: 16px;
  transition: border-color 0.25s, transform 0.25s;
}
.gd-principle-card:hover { border-color: #d600ff; transform: translateY(-3px); }
.gd-principle-icon {
  width: 34px; height: 34px;
  border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  font-size: 15px;
  margin-bottom: 10px;
}
.gd-principle-card strong {
  font-family: 'Poppins', sans-serif;
  font-size: 12px; font-weight: 700;
  color: #e0c8f8; display: block; margin-bottom: 6px;
}
.gd-principle-card p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; color: #6a5575;
  line-height: 1.65; margin: 0;
}

/* ---- Color Grid (Slide 3) ---- */
.gd-color-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.gd-color-item {
  border-radius: 12px;
  padding: 16px 14px;
  display: flex; flex-direction: column; gap: 6px;
}
.gd-color-item strong {
  font-family: 'Poppins', sans-serif;
  font-size: 13px; font-weight: 700; color: #fff;
}
.gd-color-item p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; color: rgba(255,255,255,0.75);
  line-height: 1.6; margin: 0;
}

/* Color Wheel Display */
.gd-color-wheel-display {
  width: 120px; height: 120px;
  border-radius: 50%;
  position: relative;
  display: flex; flex-wrap: wrap;
  overflow: hidden;
}
.gd-cw-segment {
  width: 50%; height: 50%;
}
.gd-cw-center {
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%,-50%);
  width: 40px; height: 40px;
  background: #180a24;
  border-radius: 50%;
}

/* ---- Typography Showcase (Slide 4) ---- */
.gd-type-showcase {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
.gd-type-card {
  background: #0f0518;
  border: 1px solid #2a1535;
  border-radius: 12px;
  padding: 16px;
  transition: border-color 0.25s;
}
.gd-type-card:hover { border-color: #d600ff; }
.gd-type-sample {
  font-size: 36px; font-weight: 700;
  line-height: 1; margin-bottom: 10px;
  color: #d600ff;
}
.gd-serif-sample  { font-family: Georgia, serif; }
.gd-sans-sample   { font-family: 'Poppins', sans-serif; }
.gd-display-sample { font-family: Impact, fantasy; letter-spacing: -1px; }
.gd-mono-sample   { font-family: 'Courier New', monospace; }
.gd-type-card strong {
  font-family: 'Poppins', sans-serif;
  font-size: 12px; font-weight: 700;
  color: #e0c8f8; display: block; margin-bottom: 6px;
}
.gd-type-card p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; color: #6a5575;
  line-height: 1.65; margin: 0;
}

/* ---- Asset Grid (Slide 6) ---- */
.gd-asset-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 12px;
}
.gd-asset-item {
  background: #0f0518;
  border: 1px solid #2a1535;
  border-radius: 12px;
  padding: 16px;
  transition: border-color 0.25s;
}
.gd-asset-item:hover { border-color: #ff6400; }
.gd-asset-icon {
  width: 34px; height: 34px;
  background: rgba(255,100,0,0.1);
  border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  color: #ff6400; font-size: 16px;
  margin-bottom: 10px;
}
.gd-asset-item strong {
  font-family: 'Poppins', sans-serif;
  font-size: 12px; font-weight: 700;
  color: #e0c8f8; display: block; margin-bottom: 6px;
}
.gd-asset-item p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; color: #6a5575;
  line-height: 1.65; margin: 0;
}

/* ---- Tools Grid (Slide 7) ---- */
.gd-tools-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.gd-tool-card {
  background: #0f0518;
  border: 1px solid #2a1535;
  border-radius: 12px;
  padding: 16px;
  transition: transform 0.25s, border-color 0.25s;
}
.gd-tool-card:hover { transform: translateY(-3px); }
.gd-tool-canva:hover  { border-color: #00c4cc; }
.gd-tool-ps:hover     { border-color: #31a8ff; }
.gd-tool-ai:hover     { border-color: #ff9a00; }
.gd-tool-figma:hover  { border-color: #a259ff; }
.gd-tool-ae:hover     { border-color: #9999ff; }
.gd-tool-free:hover   { border-color: #38a169; }
.gd-tool-header {
  display: flex; align-items: center; gap: 8px;
  margin-bottom: 10px; flex-wrap: wrap;
}
.gd-tool-header i { font-size: 16px; color: #d600ff; }
.gd-tool-header strong {
  font-family: 'Poppins', sans-serif;
  font-size: 12px; font-weight: 700;
  color: #e0c8f8; flex: 1;
}
.gd-tool-level {
  font-family: 'Poppins', sans-serif;
  font-size: 9px; font-weight: 700;
  letter-spacing: 1px; text-transform: uppercase;
  color: #d600ff;
  background: rgba(214,0,255,0.1);
  border-radius: 10px;
  padding: 2px 8px;
}
.gd-tool-card p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; color: #6a5575;
  line-height: 1.65; margin: 0;
}

/* ---- Compare Grid (Slide 10) ---- */
.gd-compare-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.gd-compare-col {
  background: #0f0518;
  border: 1px solid #2a1535;
  border-radius: 12px;
  overflow: hidden;
}
.gd-compare-header {
  padding: 12px 16px;
  font-family: 'Poppins', sans-serif;
  font-size: 12px; font-weight: 700;
  display: flex; align-items: center; gap: 8px;
  color: #fff;
}
.gd-compare-print .gd-compare-header  { background: rgba(214,0,255,0.15); }
.gd-compare-digital .gd-compare-header { background: rgba(255,100,0,0.15); }
.gd-compare-item {
  padding: 12px 16px;
  border-top: 1px solid #2a1535;
}
.gd-compare-item strong {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; font-weight: 700;
  color: #c8a8e0; display: block; margin-bottom: 4px;
}
.gd-compare-item p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; color: #6a5575;
  line-height: 1.6; margin: 0;
}

/* ---- Career Grid (Slide 11) ---- */
.gd-career-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.gd-career-item {
  background: #0f0518;
  border: 1px solid #2a1535;
  border-radius: 12px;
  padding: 16px;
  transition: border-color 0.25s, transform 0.25s;
}
.gd-career-item:hover { border-color: #d600ff; transform: translateY(-3px); }
.gd-career-icon {
  width: 34px; height: 34px;
  background: rgba(214,0,255,0.1);
  border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  color: #d600ff; font-size: 16px; margin-bottom: 10px;
}
.gd-career-item strong {
  font-family: 'Poppins', sans-serif;
  font-size: 11.5px; font-weight: 700;
  color: #e0c8f8; display: block; margin-bottom: 6px;
}
.gd-career-item p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; color: #6a5575;
  line-height: 1.65; margin: 0;
}

/* ---- Action Steps (Slide 12) ---- */
.gd-action-steps { display: flex; flex-direction: column; gap: 10px; }
.gd-action-step {
  display: flex; gap: 16px; align-items: flex-start;
  background: #0f0518;
  border: 1px solid #2a1535;
  border-radius: 12px;
  padding: 14px 16px;
  transition: border-color 0.25s;
}
.gd-action-step:hover { border-color: #d600ff; }
.gd-action-num {
  font-family: 'Poppins', sans-serif;
  font-size: 10px; font-weight: 700;
  letter-spacing: 1px; text-transform: uppercase;
  color: #d600ff;
  background: rgba(214,0,255,0.1);
  border-radius: 8px;
  padding: 4px 10px;
  white-space: nowrap;
  flex-shrink: 0;
  align-self: flex-start;
  margin-top: 2px;
}
.gd-action-content strong {
  font-family: 'Poppins', sans-serif;
  font-size: 12px; font-weight: 700;
  color: #e0c8f8; display: block; margin-bottom: 4px;
}
.gd-action-content p {
  font-family: 'Poppins', sans-serif;
  font-size: 11.5px; color: #7a6585;
  line-height: 1.7; margin: 0;
}

/* ---- Right Visual Panel ---- */
.gd-slide-visual {
  width: 260px; flex-shrink: 0;
  background: #0f0518;
  border-left: 1px solid #2a1535;
  display: flex; flex-direction: column;
  align-items: center; justify-content: center;
  gap: 28px; padding: 36px 24px;
}
.gd-icon-display {
  width: 110px; height: 110px;
  border-radius: 28px;
  background: linear-gradient(135deg, rgba(214,0,255,0.15), rgba(255,100,0,0.1));
  border: 1px solid rgba(214,0,255,0.25);
  display: flex; align-items: center; justify-content: center;
  font-size: 46px; color: #d600ff;
  box-shadow: 0 0 40px rgba(214,0,255,0.15);
}
.gd-stat-block { display: flex; flex-direction: column; gap: 12px; width: 100%; }
.gd-stat {
  text-align: center;
  background: #180a24;
  border: 1px solid #2a1535;
  border-radius: 10px;
  padding: 12px 10px;
}
.gd-stat-num {
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 18px; font-weight: 800;
  background: linear-gradient(90deg, #d600ff, #ff6400);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1; margin-bottom: 4px;
}
.gd-stat-label {
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 9px; font-weight: 600;
  letter-spacing: 0.5px; color: #3a2545;
  text-transform: uppercase; line-height: 1.4;
}

/* ---- Dot Navigation ---- */
.gd-dot-nav { display: flex; justify-content: center; gap: 8px; margin-top: 32px; }
.gd-dot {
  width: 8px; height: 8px;
  border-radius: 50%; background: #2a1535;
  border: none; cursor: pointer;
  transition: all 0.3s; padding: 0;
}
.gd-dot-active {
  background: #d600ff; width: 24px;
  border-radius: 4px;
  box-shadow: 0 0 10px rgba(214,0,255,0.5);
}

/* ---- Responsive ---- */
@media (max-width: 900px) {
  .gd-slide { flex-direction: column; }
  .gd-slide-visual {
    width: 100%; border-left: none; border-top: 1px solid #2a1535;
    flex-direction: row; padding: 20px 24px; gap: 20px; justify-content: flex-start;
  }
  .gd-icon-display { width: 60px; height: 60px; font-size: 26px; flex-shrink: 0; }
  .gd-stat-block { flex-direction: row; flex-wrap: wrap; }
  .gd-stat { flex: 1; min-width: 90px; }
  .gd-principles-grid { grid-template-columns: repeat(2, 1fr); }
  .gd-tools-grid { grid-template-columns: repeat(2, 1fr); }
  .gd-career-grid { grid-template-columns: repeat(2, 1fr); }
  .gd-slide-inner { padding: 28px 24px 20px; }
}
@media (max-width: 600px) {
  .gd-slides-header { flex-direction: column; gap: 16px; padding: 0 20px; }
  .gd-header-line { display: none; }
  .gd-controls-bar { padding: 0 20px; gap: 12px; }
  .gd-slides-track-outer { padding: 0 20px; }
  .gd-principles-grid { grid-template-columns: 1fr 1fr; }
  .gd-color-grid { grid-template-columns: repeat(2, 1fr); }
  .gd-type-showcase { grid-template-columns: 1fr 1fr; }
  .gd-tools-grid { grid-template-columns: 1fr 1fr; }
  .gd-career-grid { grid-template-columns: 1fr 1fr; }
  .gd-compare-grid { grid-template-columns: 1fr; }
  .gd-slide-inner { padding: 22px 18px 18px; gap: 12px; }
  .gd-slide-title { font-size: 18px; }
  .gd-slide-body p { font-size: 12.5px; }
  .gd-counter-current { font-size: 22px; }
}
/* ============================================================
   END GRAPHIC DESIGN SLIDES CSS
============================================================ */
/* ============================================================
   ROBOTICS SLIDES — CLEAN WHITE THEME
   All classes prefixed with "rb-" to avoid conflicts
============================================================ */

/* ---- Wrapper ---- */
.rb-slides-wrapper {
  background: #fff;
  padding: 70px 0 80px;
  position: relative;
  overflow: hidden;
}
.rb-slides-wrapper::before {
  content: '';
  position: absolute;
  top: -200px; right: -100px;
  width: 600px; height: 600px;
  background: radial-gradient(circle, rgba(255,107,53,0.06) 0%, transparent 100%);
  pointer-events: none;
}
.rb-slides-wrapper::after {
  content: '';
  position: absolute;
  bottom: -150px; left: -100px;
  width: 500px; height: 500px;
  background: radial-gradient(circle, rgba(255,200,0,0.05) 0%, transparent 70%);
  pointer-events: none;
}

/* ---- Header ---- */
.rb-slides-header {
  display: flex; align-items: center; gap: 28px;
  max-width: 1100px; margin: 0 auto 50px; padding: 0 40px;
}
.rb-header-line {
  flex: 1; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255,107,53,0.3), transparent);
}
.rb-header-text { text-align: center; flex-shrink: 0; }
.rb-eyebrow {
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 10px; font-weight: 600;
  letter-spacing: 4px; text-transform: uppercase;
  color: #ff6b35; margin-bottom: 10px;
}
.rb-main-title {
  font-family: 'Poppins', sans-serif;
  font-size: clamp(26px, 4vw, 42px);
  font-weight: 700; color: #1a0f08;
  line-height: 1.15; margin-bottom: 10px;
}
.rb-accent {
  background: linear-gradient(90deg, #ff6b35, #ffc800);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.rb-subtitle {
  font-family: 'Poppins', sans-serif;
  font-size: 13px; color: #8a7060;
  max-width: 500px; line-height: 1.7; margin: 0;
}

/* ---- Controls Bar ---- */
.rb-controls-bar {
  display: flex; align-items: center; gap: 20px;
  max-width: 1100px; margin: 0 auto 28px; padding: 0 40px;
}
.rb-slide-counter { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.rb-counter-current {
  font-family: 'Poppins', sans-serif;
  font-size: 28px; font-weight: 700;
  color: #ff6b35; line-height: 1;
}
.rb-counter-sep { width: 28px; height: 2px; background: #e0d0c8; display: block; }
.rb-counter-total {
  font-family: 'Poppins', sans-serif;
  font-size: 14px; color: #c0b0a8; font-weight: 600;
}
.rb-progress-track {
  flex: 1; height: 3px;
  background: #ede5e0; border-radius: 3px; overflow: hidden;
}
.rb-progress-fill {
  height: 100%;
  background: linear-gradient(90deg, #ff6b35, #ffc800);
  border-radius: 3px;
  transition: width 0.5s cubic-bezier(0.4,0,0.2,1);
  width: 0%;
}
.rb-nav-btns { display: flex; gap: 10px; flex-shrink: 0; }
.rb-nav-btn {
  width: 42px; height: 42px; border-radius: 50%;
  border: 1px solid #e0d0c8; background: #ffffff;
  color: #b09080; font-size: 14px; cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: all 0.25s;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}
.rb-nav-btn:hover:not(:disabled) {
  border-color: #ff6b35; color: #ffffff;
  background: #ff6b35;
  box-shadow: 0 4px 16px rgba(255,107,53,0.3);
}
.rb-nav-btn:disabled { opacity: 0.3; cursor: not-allowed; }

/* ---- Slides Track ---- */
.rb-slides-track-outer {
  max-width: 1100px; margin: 0 auto;
  padding: 0 40px; overflow: hidden;
}
.rb-slides-track {
  display: flex;
  transition: transform 0.55s cubic-bezier(0.77,0,0.175,1);
}

/* ---- Individual Slide ---- */
.rb-slide {
  min-width: 100%; display: flex;
  background: #ffffff; border-radius: 20px; overflow: hidden;
  border: 1px solid #ede5e0;
  box-shadow: 0 12px 40px rgba(180,100,60,0.08);
  position: relative; opacity: 0.6; transition: opacity 0.3s;
}
.rb-slide.rb-slide-anim {
  opacity: 1;
  animation: rbSlideIn 0.55s cubic-bezier(0.22,1,0.36,1) forwards;
}
@keyframes rbSlideIn {
  from { opacity: 0.4; transform: translateY(18px); }
  to   { opacity: 1;   transform: translateY(0); }
}
.rb-slide-number {
  position: absolute; top: 20px; right: 24px;
  font-family: 'Poppins', sans-serif;
  font-size: 72px; font-weight: 800;
  color: rgba(255,107,53,0.05);
  line-height: 1; pointer-events: none; user-select: none;
}

/* ---- Content Panel ---- */
.rb-slide-inner {
  flex: 1; padding: 46px 44px 44px;
  display: flex; flex-direction: column; gap: 18px; min-width: 0;
}
.rb-slide-badge {
  display: inline-flex; align-items: center; gap: 8px;
  font-family: 'Poppins', sans-serif;
  font-size: 10px; font-weight: 700;
  letter-spacing: 2.5px; text-transform: uppercase;
  color: #ff6b35;
  background: rgba(255,107,53,0.07);
  border: 1px solid rgba(255,107,53,0.18);
  border-radius: 30px; padding: 6px 14px; width: fit-content;
}
.rb-slide-title {
  font-family: 'Poppins', sans-serif;
  font-size: clamp(20px, 2.5vw, 28px);
  font-weight: 700; color: #1a0f08;
  line-height: 1.2; margin: 0;
}
.rb-slide-divider {
  width: 48px; height: 3px;
  background: linear-gradient(90deg, #ff6b35, #ffc800);
  border-radius: 2px; flex-shrink: 0;
}
.rb-slide-body { display: flex; flex-direction: column; gap: 14px; }
.rb-slide-body p {
  font-family: 'Poppins', sans-serif;
  font-size: 13.5px; color: #6a5a52;
  line-height: 1.85; margin: 0;
}
.rb-slide-body p strong { color: #2a1a10; font-weight: 600; }

/* ---- Quote ---- */
.rb-slide-quote {
  background: rgba(255,107,53,0.04);
  border-left: 3px solid #ff6b35;
  border-radius: 0 10px 10px 0;
  padding: 16px 20px;
  display: flex; flex-direction: column; gap: 8px;
}
.rb-slide-quote i { color: #ff6b35; font-size: 14px; }
.rb-slide-quote p {
  font-family: 'Poppins', sans-serif;
  font-style: italic; font-size: 13px;
  color: #7a6a62; margin: 0; line-height: 1.7;
}
.rb-slide-quote cite {
  font-family: 'Poppins', sans-serif;
  font-size: 10px; color: #ff6b35;
  letter-spacing: 1px; font-style: normal; font-weight: 600;
}

/* ---- Tags ---- */
.rb-slide-tags { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
.rb-slide-tags span {
  font-family: 'Poppins', sans-serif;
  font-size: 10px; font-weight: 600; letter-spacing: 1px;
  color: #d4820a;
  background: rgba(212,130,10,0.07);
  border: 1px solid rgba(212,130,10,0.18);
  border-radius: 20px; padding: 4px 12px; text-transform: uppercase;
}

/* ---- Components (Slide 2) ---- */
.rb-components { display: flex; flex-direction: column; gap: 10px; }
.rb-component-item {
  display: flex; gap: 14px; align-items: flex-start;
  background: #faf8f6; border: 1px solid #ede5e0;
  border-radius: 12px; padding: 14px 16px;
  transition: border-color 0.25s, box-shadow 0.25s;
}
.rb-component-item:hover {
  border-color: #ff6b35;
  box-shadow: 0 4px 16px rgba(255,107,53,0.08);
}
.rb-component-icon {
  width: 36px; height: 36px; border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  font-size: 16px; flex-shrink: 0; margin-top: 2px;
}
.rb-component-content strong {
  font-family: 'Poppins', sans-serif;
  font-size: 13px; font-weight: 700;
  color: #1a0f08; display: block; margin-bottom: 4px;
}
.rb-component-content p {
  font-family: 'Poppins', sans-serif;
  font-size: 12px; color: #7a6a62;
  line-height: 1.7; margin: 0;
}
.rb-component-content p strong { color: #3a2010; }

/* ---- SPA Diagram (Slide 3) ---- */
.rb-spa-diagram {
  display: flex; align-items: stretch; gap: 8px;
}
.rb-spa-step {
  flex: 1; border-radius: 12px; padding: 18px 16px;
  display: flex; flex-direction: column; gap: 8px;
  border: 1px solid #ede5e0;
}
.rb-spa-sense   { background: rgba(0,180,216,0.04); border-color: rgba(0,180,216,0.2); }
.rb-spa-process { background: rgba(102,16,242,0.04); border-color: rgba(102,16,242,0.15); }
.rb-spa-act     { background: rgba(255,107,53,0.04); border-color: rgba(255,107,53,0.2); }
.rb-spa-icon {
  width: 36px; height: 36px; border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  font-size: 16px; margin-bottom: 4px;
}
.rb-spa-sense   .rb-spa-icon { background: rgba(0,180,216,0.1); color: #0094b8; }
.rb-spa-process .rb-spa-icon { background: rgba(102,16,242,0.1); color: #6610f2; }
.rb-spa-act     .rb-spa-icon { background: rgba(255,107,53,0.1); color: #ff6b35; }
.rb-spa-step strong {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; font-weight: 800; letter-spacing: 2px;
  text-transform: uppercase; display: block;
}
.rb-spa-sense   strong { color: #0094b8; }
.rb-spa-process strong { color: #6610f2; }
.rb-spa-act     strong { color: #ff6b35; }
.rb-spa-step p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; color: #7a6a62;
  line-height: 1.7; margin: 0;
}
.rb-spa-examples {
  display: flex; flex-wrap: wrap; gap: 4px; margin-top: auto;
}
.rb-spa-examples span {
  font-family: 'Poppins', sans-serif;
  font-size: 9px; font-weight: 600;
  color: #d4820a; background: rgba(212,130,10,0.07);
  border: 1px solid rgba(212,130,10,0.15);
  border-radius: 10px; padding: 2px 7px;
}
.rb-spa-arrow {
  display: flex; align-items: center; justify-content: center;
  color: #d0c0b8; font-size: 18px; flex-shrink: 0;
}

/* ---- Prog Grid (Slide 4) ---- */
.rb-prog-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.rb-prog-item {
  background: #faf8f6; border: 1px solid #ede5e0;
  border-radius: 12px; padding: 16px;
  transition: border-color 0.25s, transform 0.25s, box-shadow 0.25s;
}
.rb-prog-item:hover {
  border-color: #ff6b35; transform: translateY(-3px);
  box-shadow: 0 6px 20px rgba(255,107,53,0.1);
}
.rb-prog-icon {
  width: 32px; height: 32px;
  background: rgba(255,107,53,0.08); border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  color: #ff6b35; font-size: 16px; margin-bottom: 8px;
}
.rb-prog-item strong {
  font-family: 'Poppins', sans-serif;
  font-size: 13px; font-weight: 700;
  color: #1a0f08; display: block; margin-bottom: 6px;
}
.rb-prog-item p {
  font-family: 'Poppins', sans-serif;
  font-size: 11.5px; color: #7a6a62;
  line-height: 1.7; margin: 0;
}

/* ---- Code Example (Slide 4) ---- */
.rb-code-example { margin-top: 4px; }
.rb-code-label {
  font-family: 'Poppins', sans-serif;
  font-size: 9px; font-weight: 700; letter-spacing: 2px;
  text-transform: uppercase; color: #ff6b35; margin-bottom: 6px;
}
.rb-code-block {
  background: #1a0f08; border: 1px solid #2a1a10;
  border-radius: 10px; padding: 14px 16px;
  font-family: 'Courier New', monospace;
  font-size: 12px; line-height: 1.8; color: #e8c8b0;
}
.rb-code-keyword { color: #ffc800; }
.rb-code-fn      { color: #ff6b35; }
.rb-code-num     { color: #ffb080; }

/* ---- Types Grid (Slide 5) ---- */
.rb-types-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.rb-type-item {
  background: #faf8f6; border: 1px solid #ede5e0;
  border-radius: 12px; padding: 16px;
  transition: border-color 0.25s, transform 0.25s, box-shadow 0.25s;
}
.rb-type-item:hover {
  border-color: #ffc800; transform: translateY(-3px);
  box-shadow: 0 6px 20px rgba(255,200,0,0.1);
}
.rb-type-icon {
  width: 32px; height: 32px;
  background: rgba(255,200,0,0.1); border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  color: #d4820a; font-size: 16px; margin-bottom: 8px;
}
.rb-type-item strong {
  font-family: 'Poppins', sans-serif;
  font-size: 11.5px; font-weight: 700;
  color: #1a0f08; display: block; margin-bottom: 6px;
}
.rb-type-item p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; color: #7a6a62;
  line-height: 1.65; margin: 0;
}

/* ---- Sensors Grid (Slide 6) ---- */
.rb-sensors-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.rb-sensor-item {
  background: #faf8f6; border: 1px solid #ede5e0;
  border-radius: 12px; padding: 14px;
  transition: border-color 0.25s, box-shadow 0.25s;
}
.rb-sensor-item:hover {
  border-color: #0094b8;
  box-shadow: 0 4px 14px rgba(0,148,184,0.1);
}
.rb-sensor-icon {
  width: 30px; height: 30px;
  background: rgba(0,148,184,0.08); border-radius: 6px;
  display: flex; align-items: center; justify-content: center;
  color: #0094b8; font-size: 14px; margin-bottom: 8px;
}
.rb-sensor-item strong {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; font-weight: 700;
  color: #1a0f08; display: block; margin-bottom: 5px;
}
.rb-sensor-item p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; color: #7a6a62;
  line-height: 1.65; margin: 0;
}
.rb-sensor-item p em { color: #d4820a; font-style: normal; font-weight: 600; }

/* ---- Platform Compare (Slide 8) ---- */
.rb-platform-compare { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.rb-platform-col {
  background: #faf8f6; border: 1px solid #ede5e0;
  border-radius: 12px; overflow: hidden;
}
.rb-platform-header {
  padding: 14px 18px;
  font-family: 'Poppins', sans-serif;
  font-size: 13px; font-weight: 700;
  display: flex; align-items: center; gap: 10px;
}
.rb-arduino-col .rb-platform-header { background: rgba(0,148,184,0.08); color: #0094b8; }
.rb-pi-col      .rb-platform-header { background: rgba(255,107,53,0.08); color: #ff6b35; }
.rb-platform-detail {
  font-family: 'Poppins', sans-serif;
  font-size: 11.5px; color: #7a6a62;
  padding: 8px 18px;
  border-top: 1px solid #ede5e0;
  line-height: 1.6;
}
.rb-platform-detail strong { color: #1a0f08; font-weight: 600; }

/* ---- Build Steps (Slide 9) ---- */
.rb-build-steps { display: flex; flex-direction: column; gap: 10px; }
.rb-build-step {
  display: flex; gap: 16px; align-items: flex-start;
  background: #faf8f6; border: 1px solid #ede5e0;
  border-radius: 12px; padding: 14px 16px;
  transition: border-color 0.25s, box-shadow 0.25s;
}
.rb-build-step:hover {
  border-color: #ff6b35;
  box-shadow: 0 4px 14px rgba(255,107,53,0.08);
}
.rb-build-num {
  font-family: 'Poppins', sans-serif;
  font-size: 18px; font-weight: 800; color: #ff6b35;
  opacity: 0.3; flex-shrink: 0; line-height: 1;
  min-width: 28px; margin-top: 2px;
}
.rb-build-content strong {
  font-family: 'Poppins', sans-serif;
  font-size: 12px; font-weight: 700;
  color: #1a0f08; display: block; margin-bottom: 4px;
}
.rb-build-content p {
  font-family: 'Poppins', sans-serif;
  font-size: 11.5px; color: #7a6a62;
  line-height: 1.7; margin: 0;
}

/* ---- Competitions (Slide 10) ---- */
.rb-competitions { display: grid; grid-template-columns: repeat(2, 1fr); gap: 12px; }
.rb-comp-item {
  background: #faf8f6; border: 1px solid #ede5e0;
  border-radius: 12px; padding: 16px;
  transition: border-color 0.25s, transform 0.25s, box-shadow 0.25s;
}
.rb-comp-item:hover {
  border-color: #ffc800; transform: translateY(-3px);
  box-shadow: 0 6px 20px rgba(255,200,0,0.1);
}
.rb-comp-icon {
  width: 32px; height: 32px;
  background: rgba(255,200,0,0.1); border-radius: 8px;
  display: flex; align-items: center; justify-content: center;
  color: #d4820a; font-size: 16px; margin-bottom: 8px;
}
.rb-comp-item strong {
  font-family: 'Poppins', sans-serif;
  font-size: 12px; font-weight: 700;
  color: #1a0f08; display: block; margin-bottom: 6px;
}
.rb-comp-item p {
  font-family: 'Poppins', sans-serif;
  font-size: 11px; color: #7a6a62;
  line-height: 1.65; margin: 0;
}

/* ---- Action Steps (Slide 12) ---- */
.rb-action-steps { display: flex; flex-direction: column; gap: 10px; }
.rb-action-step {
  display: flex; gap: 16px; align-items: flex-start;
  background: #faf8f6; border: 1px solid #ede5e0;
  border-radius: 12px; padding: 14px 16px;
  transition: border-color 0.25s, box-shadow 0.25s;
}
.rb-action-step:hover {
  border-color: #ff6b35;
  box-shadow: 0 4px 14px rgba(255,107,53,0.08);
}
.rb-action-num {
  font-family: 'Poppins', sans-serif;
  font-size: 10px; font-weight: 700;
  letter-spacing: 1px; text-transform: uppercase;
  color: #ff6b35; background: rgba(255,107,53,0.07);
  border: 1px solid rgba(255,107,53,0.18);
  border-radius: 8px; padding: 4px 10px;
  white-space: nowrap; flex-shrink: 0;
  align-self: flex-start; margin-top: 2px;
}
.rb-action-content strong {
  font-family: 'Poppins', sans-serif;
  font-size: 12px; font-weight: 700;
  color: #1a0f08; display: block; margin-bottom: 4px;
}
.rb-action-content p {
  font-family: 'Poppins', sans-serif;
  font-size: 11.5px; color: #7a6a62;
  line-height: 1.7; margin: 0;
}

/* ---- Right Visual Panel ---- */
.rb-slide-visual {
  width: 260px; flex-shrink: 0;
  background: linear-gradient(160deg, #fff8f4, #fff5ec);
  border-left: 1px solid #ede5e0;
  display: flex; flex-direction: column;
  align-items: center; justify-content: center;
  gap: 28px; padding: 36px 24px;
}
.rb-icon-display {
  width: 110px; height: 110px; border-radius: 28px;
  background: linear-gradient(135deg, rgba(255,107,53,0.1), rgba(255,200,0,0.08));
  border: 1px solid rgba(255,107,53,0.2);
  display: flex; align-items: center; justify-content: center;
  font-size: 46px; color: #ff6b35;
  box-shadow: 0 8px 30px rgba(255,107,53,0.12);
}

/* Animations */
.rb-float {
  animation: rbFloat 3s ease-in-out infinite;
}
@keyframes rbFloat {
  0%, 100% { transform: translateY(0); }
  50%       { transform: translateY(-10px); }
}
.rb-spin {
  animation: rbSpin 6s linear infinite;
}
@keyframes rbSpin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}
.rb-pulse {
  animation: rbPulse 2s ease-in-out infinite;
}
@keyframes rbPulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%       { opacity: 0.65; transform: scale(0.9); }
}

/* ---- Stat blocks ---- */
.rb-stat-block { display: flex; flex-direction: column; gap: 12px; width: 100%; }
.rb-stat {
  text-align: center; background: #ffffff;
  border: 1px solid #ede5e0; border-radius: 10px; padding: 12px 10px;
  box-shadow: 0 2px 8px rgba(180,100,60,0.06);
}
.rb-stat-num {
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 18px; font-weight: 800;
  background: linear-gradient(90deg, #ff6b35, #ffc800);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  line-height: 1; margin-bottom: 4px;
}
.rb-stat-label {
  display: block;
  font-family: 'Poppins', sans-serif;
  font-size: 9px; font-weight: 600;
  letter-spacing: 0.5px; color: #c0b0a8;
  text-transform: uppercase; line-height: 1.4;
}

/* ---- Dot Navigation ---- */
.rb-dot-nav { display: flex; justify-content: center; gap: 8px; margin-top: 32px; }
.rb-dot {
  width: 8px; height: 8px; border-radius: 50%;
  background: #e0d0c8; border: none; cursor: pointer;
  transition: all 0.3s; padding: 0;
}
.rb-dot-active {
  background: #ff6b35; width: 24px; border-radius: 4px;
  box-shadow: 0 0 10px rgba(255,107,53,0.4);
}

/* ---- Responsive ---- */
@media (max-width: 900px) {
  .rb-slide { flex-direction: column; }
  .rb-slide-visual {
    width: 100%; border-left: none; border-top: 1px solid #ede5e0;
    flex-direction: row; padding: 20px 24px; gap: 20px;
    justify-content: flex-start; background: #fff8f4;
  }
  .rb-icon-display { width: 60px; height: 60px; font-size: 26px; flex-shrink: 0; }
  .rb-stat-block { flex-direction: row; flex-wrap: wrap; }
  .rb-stat { flex: 1; min-width: 90px; }
  .rb-types-grid { grid-template-columns: repeat(2, 1fr); }
  .rb-sensors-grid { grid-template-columns: repeat(2, 1fr); }
  .rb-platform-compare { grid-template-columns: 1fr; }
  .rb-slide-inner { padding: 28px 24px 20px; }
  .rb-spa-diagram { flex-direction: column; }
  .rb-spa-arrow { transform: rotate(90deg); }
}
@media (max-width: 600px) {
  .rb-slides-header { flex-direction: column; gap: 16px; padding: 0 20px; }
  .rb-header-line { display: none; }
  .rb-controls-bar { padding: 0 20px; gap: 12px; }
  .rb-slides-track-outer { padding: 0 20px; }
  .rb-types-grid { grid-template-columns: 1fr 1fr; }
  .rb-sensors-grid { grid-template-columns: 1fr 1fr; }
  .rb-prog-grid { grid-template-columns: 1fr 1fr; }
  .rb-competitions { grid-template-columns: 1fr; }
  .rb-slide-inner { padding: 22px 18px 18px; gap: 12px; }
  .rb-slide-title { font-size: 18px; }
  .rb-slide-body p { font-size: 12.5px; }
  .rb-counter-current { font-size: 22px; }
}
/* ============================================================
   END ROBOTICS SLIDES CSS — WHITE THEME
============================================================ */
/* ------- contact us page -------- */

.location{
    width: 80%;
    margin: auto;
    padding: 80px 0;
    animation: appear linear;
    animation-timeline: view();
    animation-range: entry 0 cover 40%;
}
.location iframe{
    width: 100%;
}
.contact-us{
   width: 80%;
   justify-content: center;
   align-items: center;
   margin-left: 100px;
}


.contact-col{
    flex-basis: 48%;
    margin-bottom: 30px;
    animation: appear linear;
    animation-timeline: view();
    animation-range: entry 0 cover 40%;
}
.contact-col div{
    display: flex;
    align-items: center;
    margin-bottom: 40px;
}
.contact-col div .fa-solid{
    font-size: 28px;
    color: #f44336;
    margin: 10px;
    margin-right: 30px;
}
.contact-col div p{
    padding: 0;
}
.contact-p{
  margin-left: -60%;
}
.contact-col div h5{
    font-size: 20px;
    margin-bottom: 5px;
    color: #555;
    font-weight: 400;
}

.contact-col input, .contact-col textarea{
    width: 100%;
    padding: 15px;
    margin-bottom: 17px;
    outline: none;
    border: 2px solid #ccc;
    border-radius: 10px;
    box-sizing: border-box;
}

.contact-btn{
  color: #000000;
  border-radius: 10px;
  padding: 10px;
  justify-content: space-between;
}
.contact-reset{
  color: #ff0000;
}
@media(max-width: 768px){
  .contact-us{
    margin-left: 20px;
  }
  .contact-col div h5{
    font-size: 15px;
    font-weight: 600;
  }
} 


/* wave animition */
.waves{
  width: 100%;
  margin-top: -213px;
}
.hero-waves {
    display: block;
    width: 100%;
    height: 50px;
    position: relative;
  
  }
  
  .wave1 use {
    -webkit-animation: move-forever1 10s linear infinite;
    animation: move-forever1 10s linear infinite;
    -webkit-animation-delay: -2s;
    animation-delay: -2s;
  }
  
  .wave2 use {
    -webkit-animation: move-forever2 8s linear infinite;
    animation: move-forever2 8s linear infinite;
    -webkit-animation-delay: -2s;
    animation-delay: -2s;
  }
  
  .wave3 use {
    -webkit-animation: move-forever3 6s linear infinite;
    animation: move-forever3 6s linear infinite;
    -webkit-animation-delay: -2s;
    animation-delay: -2s;
  }
  
  @-webkit-keyframes move-forever1 {
    0% {
      transform: translate(85px, 0%);
    }
  
    100% {
      transform: translate(-90px, 0%);
    }
  }
  
  @keyframes move-forever1 {
    0% {
      transform: translate(85px, 0%);
    }
  
    100% {
      transform: translate(-90px, 0%);
    }
  }
  
  @-webkit-keyframes move-forever2 {
    0% {
      transform: translate(-90px, 0%);
    }
  
    100% {
      transform: translate(85px, 0%);
    }
  }
  
  @keyframes move-forever2 {
    0% {
      transform: translate(-90px, 0%);
    }
  
    100% {
      transform: translate(85px, 0%);
    }
  }
  
  @-webkit-keyframes move-forever3 {
    0% {
      transform: translate(-90px, 0%);
    }
  
    100% {
      transform: translate(85px, 0%);
    }
  }
  
  @keyframes move-forever3 {
    0% {
      transform: translate(-90px, 0%);
    }
  
    100% {
      transform: translate(85px, 0%);
    }
  }
  @media(max-width: 768px){
    .hero-waves{
       width: 100%;
       height: 90px;
       margin-top: 141px;
    }

  }

  @media(max-width: 2000px){
    .hero-waves{
       width: 100%;
       height: 100px;
       margin-top: 114px;
    }
    .headingone{
      margin-top: 10%;
    }

  }
  @media(max-width: 700px){
    .hero-waves{
       width: 100%;
       height: 100px;
       margin-top: 120px;
    }
   .headingone{
    margin-top: 20%;
   }
  }
  @media(max-width: 400px){
    .hero-waves{
       width: 100%;
       height: 90px;
       margin-top: 125px;
    }

  }




  
   
  
  .faqs{
    width: 80%;
    margin: auto;
    text-align: center;
    padding-top: 100px;
    animation: appear linear;
    animation-timeline: view();
    animation-range: entry 0 cover 40%;
  }
  .accordion{
    display: flex;
    max-width: 1010px;
    width: 100%;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    border-radius: 25px;
    padding: 45px 90px 45px 60px;
  }
  .accordion .image-box{
    height: 360px;
    width: 300px;
  }
  .accordion .image-box img{
    height: 100%;
    width: 100%;
    object-fit: contain;
  }
  .accordion .accordion-text{
    width: 60%;
  }
  .accordion .accordion-text .title{
    font-size: 35px;
    font-weight: 600;
    color: #7d2ae8;
    font-family: 'Fira Sans', sans-serif;
  }
  .accordion .accordion-text .faq-text{
    margin-top: 25px;
    height: 263px;
    overflow-y: auto;
  }
  .faq-text::-webkit-scrollbar{
    display: none;
  }
  .accordion .accordion-text li{
    list-style: none;
    cursor: pointer;
  }
  .accordion-text li .question-arrow{
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .accordion-text li .question-arrow .question{
    font-size: 18px;
    font-weight: 500;
    color: #595959;
    transition: all 0.3s ease;
  }
  .accordion-text li .question-arrow .arrow{
    font-size: 20px;
    color: #595959;
    transition: all 0.3s ease;
  }
  .accordion-text li.showAnswer .question-arrow .arrow{
    transform: rotate(-180deg);
  }
  .accordion-text li:hover .question-arrow .question,
  .accordion-text li:hover .question-arrow .arrow{
    color: #7d2ae8;
  }
  .accordion-text li.showAnswer .question-arrow .question,
  .accordion-text li.showAnswer .question-arrow .arrow{
    color: #7d2ae8;
  }
  .accordion-text li .line{
    display: block;
    height: 2px;
    width: 100%;
    margin: 10px 0;
    background: rgba(0, 0, 0, 0.1);
  }
  .accordion-text li p{
    width: 92%;
    font-size: 15px;
    font-weight: 500;
    color: #595959;
    display: none;
  }
  .accordion-text li.showAnswer p{
    display: block;
  }
  
  @media (max-width: 994px) {
    body{
      padding: 40px 20px;
    }
    .accordion{
      max-width: 100%;
      padding: 45px 60px 45px 60px;
    }
    .accordion .image-box{
      height: 360px;
      width: 220px;
    }
    .accordion .accordion-text{
      width: 63%;
    }
  }
  @media (max-width: 820px) {
    .accordion{
      flex-direction: column;
    }
    .accordion .image-box{
      height: 360px;
      width: 300px;
      background: #7d2ae8;
      width: 100%;
      border-radius: 25px;
      padding: 30px;
    }
    .accordion .accordion-text{
      width: 100%;
      margin-top: 30px;
    }
  }
  @media (max-width: 538px) {
    .accordion{
      padding: 25px;
    }
    .accordion-text li p{
      width: 98%;
    }
  }

.admission{
  background: linear-gradient(#ffdad5,#fff7f9);
}
.contact-container{
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: space-evenly;
}
.contact-left{
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: 20px;
}
.contact-left-title h2{
  font-weight: 600;
  color: #a363aa;
  font-size: 40px;
  margin-bottom: 5px;

}
.contact-left-title hr{
  border: none;
  width: 120px;
  height: 5px;
  background-color: #a363aa;
  border-radius: 10px;
  margin-bottom: 20px;
}

.projects{
  width: 80%;
  justify-content: center;
  align-items: center;
  margin: 50px;
  animation: appear linear;
    animation-timeline: view();
    animation-range: entry 0 cover 40%;

 
}
.calculator-section {
  background-color: #f9f9f9; 
  padding: 0; 
  margin: 20px;            
  margin-left: 20%;          
  border: 3px solid #ccc;   
  border-radius: 5px;       
  text-align: center;     
  width: 80%;
  justify-content: center;
  height: 50%;
  animation: appear linear;
    animation-timeline: view();
    animation-range: entry 0 cover 40%;
}

.projects-h2{
  justify-content: center;
  align-items: center;
  margin-left:  50%;
  padding-top: 10px;
  font-size: 24px;

}
.projects-p{
  margin-left: -50%;
  justify-content: center;

}

.calculator-section h3 {
  color: #333;     
  justify-content: center;         
}

.calculator-image {
  width: 300px;             
  height: 250px;              
  cursor: pointer;           
  transition: transform 0.2s; 
  border-radius: 20px;

}

.calculator-image:hover {
  transform: scale(1.05);    
}
.break{
  width: 50%;
  margin-left: 35%;
  height: 100%;
  animation: appear linear;
    animation-timeline: view();
    animation-range: entry 0 cover 40%;
}
.line-container {
  position: relative;          
  height: 100px;              
  width: 100px;               
  margin: 20px;               
  animation: appear linear;
    animation-timeline: view();
    animation-range: entry 0 cover 40%;
}

.vertical-line {
  width: 3px;                 
  height: 100px;           
  background-color: #6610f2;    
  position: absolute;          
  left: 50%;                   
  top: 0;                     
  transform: translateX(-50%); 
}

.horizontal-line {
  height: 3px;                
  width: 200px;               
  background-color: #260c68;    
  position: absolute;          
  top: 50%;                   
  left: 0;       
  margin-left: 50px;             
}

@media (max-width: 760px){
   .projects{
    width: 80%;
    padding: 10px;
    margin-left: -0%;
    align-items: center;
    justify-content: center;
   }
   .projects-p{
    font-size: 10px;

   }
  .projects-h2 h2{
    font-size: 23px;
    margin-left: -50%;
  }
   .calculator-image{
    width: 120px;
    height: 120px;
   }
}



  

  /* -------custom scrollbar-------- */
  ::-webkit-scrollbar{
    width: 15px;
  }
  ::-webkit-scrollbar-track{
    background: #d1e5ff23;
  }
  ::-webkit-scrollbar-thumb{
    background: linear-gradient(#000000ba , #6610f2);
    border-radius: 5px;
    height: 50px;
  }
/* -------custom scrollbar end-------- */

@keyframes appear{
  from{
    opacity: 0;
    scale: 0.5;
  }
  to{
    opacity: 1;
    scale: 1;
  }
}
/* EVENT SECTIONS */
.event-section {
  text-align: center;
  padding: 60px 20px;
  background: linear-gradient(135deg, rgba(0, 212, 255, 0.05) 0%, rgba(255, 255, 255, 0) 100%);
}

.event-title {
  font-size: 32px;
  font-weight: 700;
  color: #00d4ff;
  margin-bottom: 10px;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.event-subtitle {
  font-size: 16px;
  color: #888;
  margin-bottom: 40px;
  font-weight: 300;
}

.event-gallery {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 20px;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
}

.event-gallery .gallery-item {
  position: relative;
  overflow: hidden;
  border-radius: 12px;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
  aspect-ratio: 1;
  background: #f0f0f0;
}

.event-gallery .gallery-item img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  border-radius: 12px;
  transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1), filter 0.35s ease;
}

.event-gallery .gallery-item:hover img {
  transform: scale(1.08);
  filter: brightness(1.1);
}

.gallery {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
  grid-auto-rows: 10px;  /* base row height */
  gap: 20px;
  padding: 40px;
  background-color: #fafafa;
}

.gallery-item {
  border-radius: 8px;
  overflow: hidden;
  cursor: pointer;
  box-shadow: 0 0 0 transparent;
  transition: transform 0.3s, box-shadow 0.3s;
}

/* This trick helps control the height to align in the grid */
.gallery-item img {
  width: 100%;
  display: block;
  border-radius: 8px;
  transition: transform 0.3s, box-shadow 0.3s;
  grid-row-end: span var(--row-span);
}

.gallery-item:hover img {
  transform: scale(1.03);
  box-shadow: 0px 8px 20px rgba(0,0,0,.2);
}

/* ==================================================
    LIGHTBOX STYLES
================================================== */
.lightbox {
  display: none;
  position: fixed;
  z-index: 1000;
  padding: 40px;
  left: 0;
  top: 0;
  width:100vw;
  height:100vh;
  background-color: rgba(0,0,0,0.9);
  justify-content: center;
  align-items: center;
}
.lightbox-content {
  max-width: 95vw;
  max-height: 95vh;
  object-fit: contain;
  border-radius: 12px;
}
.close {
  position: absolute;
  top: 30px;
  right: 40px;
  font-size: 40px;
  font-weight: bold;
  color: #fff;
  cursor: pointer;
}

/* ==================================================
    DOWNLOAD BUTTON STYLE
================================================== */
.download-button {
  position: absolute;
  bottom: 40px;
  font-size: 15px;
  font-weight: 500;
  padding: 10px 20px;
  border-radius: 25px;
  text-decoration: none;
  color: #fff;
  background: linear-gradient(135deg, #007BFF, #00d4ff);
  box-shadow: 0px 4px 12px rgba(0, 123, 255, 0.3);
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 8px;
  transition: all 0.3s ease;
}
.download-button:hover {
  background: linear-gradient(135deg, #0056b3, #009ec7);
  box-shadow: 0px 6px 18px rgba(0, 123, 255, 0.4);
  transform: translateY(-3px);
}
.download-icon {
  width: 18px;
  height: 18px;
  margin-right: 8px;
  display: inline-block;
  vertical-align: middle;
}

/* Lightbox navigation buttons */
.lightbox-nav {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,0.35);
  border: none;
  color: #fff;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 28px;
  cursor: pointer;
  box-shadow: 0 6px 18px rgba(0,0,0,0.4);
}
.lightbox-nav.prev { left: 28px; }
.lightbox-nav.next { right: 28px; }

/* adjust download button position and z-index */
.download-button { z-index: 1011; left: 50%; transform: translateX(-50%); }

@media (max-width: 640px) {
  .lightbox-nav { width: 44px; height: 44px; font-size: 22px; }
  .close { top: 18px; right: 18px; font-size: 32px; }
  .download-button { bottom: 20px; padding: 8px 14px; }
}

/* ==================================================
    GALLERY SCROLL ANIMATION
================================================== */
@keyframes popUp {
  0% {
    opacity: 0;
    transform: scale(0.6);
  }
  80% {
    opacity: 1;
    transform: scale(1.05);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
.gallery-item {
  opacity: 0;
  transform: scale(0.6);
  animation-name: popUp;
  animation-fill-mode: forwards;
  animation-duration: 0.5s;
  animation-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}
/* ==================================================
    RESPONSIVE MEDIA QUERIES
================================================== */

/* Large screens (1024px+) = 4 columns */
@media (max-width: 1024px) {
  .event-gallery {
    grid-template-columns: repeat(3, 1fr);
    gap: 15px;
  }
}

/* Tablets (768px–1023px) = Maintain 3 columns */
@media (max-width: 768px) {
  .event-gallery {
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
  }
}

/* Small screens (480px–767px) = Maintain 3 columns */
@media (max-width: 480px) {
  .event-gallery {
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
  }
}

/* Scroll to Top Button */
.scroll-to-top {
  position: fixed;
  bottom: 30px;
  right: 30px;
  width: 50px;
  height: 50px;
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
  color: white;
  border: none;
  border-radius: 50%;
  cursor: pointer;
  font-size: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s ease;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
  z-index: 999;
}

.scroll-to-top.show {
  opacity: 1;
  visibility: visible;
}

.scroll-to-top:hover {
  background: linear-gradient(135deg, #764ba2 0%, #667eea 100%);
  transform: translateY(-3px);
  box-shadow: 0 6px 20px rgba(102, 126, 234, 0.4);
}

.scroll-to-top:active {
  transform: translateY(-1px);
}

/* Responsive scroll to top button */
@media (max-width: 768px) {
  .scroll-to-top {
    width: 45px;
    height: 45px;
    bottom: 20px;
    right: 20px;
    font-size: 20px;
  }
}

/* when screen is narrow, keep card slides side-by-side horizontally */
@media (max-width: 760px) {
  .card-containers .main-card .cards {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding: 10px 5px;
  }
  .main-card .cards .card {
    width: 260px; /* fixed card width for horizontal scroll */
    flex: 0 0 auto;
    margin-right: 10px;
  }
}


/* keep cards side-by-side on smaller screens for course/campus/events */
@media (max-width: 760px) {
  .course .row,
  .campus .row,
  .blog .row {
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    flex-direction: row; /* enforce horizontal orientation */
  }
  .course .row .course-cols,
  .campus .row .campus-col,
  .blog .row .blog-col {
    flex: 0 0 80%;
    scroll-snap-align: start;
    margin-right: 20px;
  }
}

/* navigation arrows styling for team section */
.team-nav {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  display: flex;
  justify-content: space-between;
  transform: translateY(-40%);
  pointer-events: none;
}
.team-arrow {
  background: rgba(255,255,255,0.8);
  border: none;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  pointer-events: all;
  transition: background 0.3s;
  z-index: 2;
}
.team-arrow:disabled {
  opacity: 0.4;
  cursor: default;
}
.team-arrow:hover:not(:disabled) {
  background: rgba(255,255,255,1);
}
.team-arrow i {
  font-size: 18px;
  color: #6610f2;
}

/* LEARN PAGE STYLES */
.learn-hero {
  padding: 120px 20px 60px;
  background: #f9f9f9;
}
.learn-topics-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
}
.learn-topic-card {
  width: 220px;
  height: 280px;
  padding: 20px;
  border-radius: 12px;
  color: #fff;
  box-shadow: 0 6px 18px rgba(0,0,0,0.25);
  cursor: pointer;
  display: flex;
  align-items: flex-end;
  transition: transform 0.3s, box-shadow 0.3s;
}
.learn-topic-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 24px rgba(0,0,0,0.35);
}
.learn-topic-card:nth-child(1){background:#6610f2;}
.learn-topic-card:nth-child(2){background:#ff6b6b;}
.learn-topic-card:nth-child(3){background:#ffb74d;}
.learn-topic-card:nth-child(4){background:#4db6ac;}
.learn-topic-card:nth-child(5){background:#ba68c8;}
.learn-topic-card:nth-child(6){background:#90a4ae;}
.learn-topic-card:nth-child(7){background:#ffa726;}
.learn-topic-card h3{margin-bottom:10px;font-size:18px;}

.learn-book-container {
  position: fixed;
  top:0; left:0; width:100%; height:100%;
  background: rgba(0,0,0,0.85);
  display:flex; align-items:center; justify-content:center;
  opacity:0; visibility:hidden;
  transition:0.3s;
  z-index:2000;
}
.learn-book-container.active{opacity:1;visibility:visible;}
.learn-close-book {
  position:absolute; top:20px; right:20px;
  background:transparent; border:none;
  font-size:36px; color:#fff; cursor:pointer; z-index:2100;
}
.learn-book {
  width:80%; max-width:1000px; min-height:60vh;
  background:#fdfcf8;
  display:flex; position:relative;
  box-shadow:0 10px 30px rgba(0,0,0,0.5);
  transform-origin:center;
  transition:transform 0.5s;
  transform:scale(0.7);
}
.learn-book-container.active .learn-book {transform:scale(1);}
.learn-page {
  width:50%; padding:40px; overflow-y:auto;
}
.learn-left {border-right:2px solid #ccc; background:#faf9f6;}
.learn-right {background:#fff;}
.learn-spine {
  position:absolute; width:4px; background:#999;
  height:100%; left:50%; transform:translateX(-50%);
}
.learn-book-nav {
  position:absolute; bottom:15px; width:100%; text-align:center;
}
.learn-book-nav button {
  background:#6610f2; color:#fff; border:none;
  padding:8px 16px; margin:0 10px; border-radius:4px; cursor:pointer;
}
.learn-book-nav button:disabled{
  background:#ccc; cursor:default;
}
.learn-progress-bar {
  position:absolute; top:10px; left:10px; right:10px;
  height:6px; background:#ddd; border-radius:3px;
}
.learn-progress {
  height:100%; width:0; background:#6610f2; border-radius:3px;
}
.learn-toc-list li{margin-bottom:8px;cursor:pointer;}
.learn-toc-list li.active{font-weight:600;}

.learn-pull-quote{
  font-style:italic; border-left:4px solid #6610f2;
  margin:20px; padding-left:16px;
}
.learn-info-box{
  background:#f0f0f0; border-left:4px solid #6610f2;
  padding:12px; margin:20px 0;
}
.learn-fun-fact{
  background:#fff5f5; border-left:4px solid #ff5722;
  padding:12px; margin:20px 0;
}

@media(max-width:600px){
  .learn-book{flex-direction:column;}
  .learn-page{width:100%;border-right:none;border-bottom:2px solid #ccc;}
  .learn-spine{display:none;}
}

.learn-scroll-to-top{
  position:fixed; bottom:30px; right:30px;
  background:#6610f2; color:#fff;
  width:45px; height:45px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  opacity:0; visibility:hidden; transition:0.3s; z-index:1500;
}
.learn-scroll-to-top.show{opacity:1;visibility:visible;}
.learn-scroll-to-top:hover{background:#500dc0;}

