/* ===========================
   HOMEPAGE HEADER & HERO
=========================== */
.hero {
    min-height: 680px;
    padding: 112px 0 42px;
    display: flex;
    align-items: center;
    background: #000;
}

.hero-content {
    width: 100%;
    padding-top: 0;
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(400px, 1.1fr);
    align-items: center;
    column-gap: 30px;
}

.hero-copy { position: relative; z-index: 3; }

.hero-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 24px;
    padding: 7px 13px;
    border: 1px solid rgba(255, 99, 17, .26);
    border-radius: 20px;
    color: #f27325;
    background: rgba(18, 12, 8, .78);
    font-size: 8px;
    font-weight: 700;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.hero-kicker span { font-size: 14px; }

.hero-copy h1 {
    margin: 0;
    color: #f5f4f3;
    font-size: clamp(45px, 5.2vw, 74px);
    font-weight: 800;
    line-height: .98;
    letter-spacing: -.045em;
    text-transform: uppercase;
    background: none;
}

.hero-copy h1 em { color: #ff5a0a; font-style: normal; }
.hero-lead-line { white-space: nowrap; }

.hero-description {
    max-width: 475px;
    margin: 22px 0 0;
    color: #a9a9a9;
    font-size: 13px;
    line-height: 1.9;
}

.hero-actions { justify-content: flex-start; margin-top: 28px; gap: 14px; }
.hero .btn { width: auto; height: 44px; padding: 0 18px; border-color: #84340e; color: #ff7a35; font-size: 9px; }
.hero .btn-primary { border-color: #ff5a0a; color: #fff; background: #f65108; box-shadow: 0 12px 28px rgba(255, 81, 8, .22); }
.hero .btn-primary:hover { background: #ff6c21; color: #fff; }
.hero .btn span { margin-left: 10px; font-size: 14px; }
.hero .btn .play-mark { margin: 0 8px 0 0; color: #ff5a0a; font-size: 10px; }

.hero-visual { position: relative; z-index: 2; height: 500px; min-width: 0; }
.hero-visual::before { content: ""; position: absolute; z-index: 0; inset: 10% -8% 6% 12%; background: radial-gradient(ellipse at center, rgba(255, 90, 10, .28), transparent 62%); filter: blur(22px); pointer-events: none; }
.hero-visual::after { content: ""; position: absolute; z-index: 1; top: 9%; right: -1%; bottom: 7%; left: 15%; border: 1px solid rgba(255, 90, 10, .42); border-left-color: transparent; border-radius: 52% 46% 48% 40%; box-shadow: 0 0 22px rgba(255, 90, 10, .18), inset 0 0 22px rgba(255, 90, 10, .08); pointer-events: none; }
.hero-visual > img { position: relative; z-index: 2; display: block; width: 120%; max-width: none; height: 100%; object-fit: contain; object-position: center; transform: translateX(8%); }
.orbit { position: absolute; border: 1px solid rgba(255, 90, 10, .32); border-radius: 50%; }
.orbit-one { width: 355px; height: 355px; right: 11%; top: 52px; }
.orbit-two { width: 450px; height: 300px; right: -2%; top: 78px; border-left-color: transparent; transform: rotate(-22deg); }
.cap-icon { position: absolute; top: 15px; right: 27%; width: 135px; height: 82px; border: 2px solid #ff762b; transform: perspective(170px) rotateX(47deg) rotateZ(-5deg); box-shadow: 0 0 22px rgba(255, 91, 13, .45); }
.cap-icon::before { content: ""; position: absolute; width: 3px; height: 72px; right: 17px; top: 37px; background: #ff762b; transform: rotate(-8deg); box-shadow: 0 69px 0 -1px #ff762b; }
.cap-icon span { position: absolute; inset: 21px 25px; border: 1px solid rgba(255, 118, 43, .7); }
.laptop { position: absolute; z-index: 2; width: min(360px, 72%); left: 50%; bottom: 31px; transform: translateX(-47%) rotate(-4deg); }
.laptop-screen { position: relative; height: 206px; padding: 4px; border: 5px solid #181b1e; border-bottom-width: 10px; border-radius: 9px 9px 4px 4px; background: linear-gradient(140deg, #080b0d, #252829); box-shadow: -21px 22px 35px rgba(0,0,0,.66), 0 0 25px rgba(255, 76, 2, .22); }
.laptop-screen::before { content: ""; position: absolute; inset: 9px 9px 48px; background: linear-gradient(145deg, rgba(255, 105, 30, .14), transparent 55%); }
.laptop-screen img { position: relative; z-index: 1; width: 70%; height: 100%; object-fit: contain; display: block; margin: auto; filter: drop-shadow(0 0 12px rgba(255, 93, 15, .6)); }
.laptop-base { position: relative; width: 122%; height: 26px; left: -11%; border-radius: 2px 2px 50% 50%; background: linear-gradient(180deg, #4a4440, #111213 65%); box-shadow: 0 14px 13px rgba(0,0,0,.55); }
.laptop-base::after { content: ""; position: absolute; left: 42%; top: 2px; width: 16%; height: 4px; border-radius: 0 0 4px 4px; background: #8b7667; }
.feature-tag { position: absolute; z-index: 3; display: grid; place-items: center; width: 52px; height: 52px; border: 1px solid #b14a19; border-radius: 7px; color: #ff762b; background: rgba(7, 8, 9, .89); font-size: 18px; box-shadow: 0 0 19px rgba(255, 82, 8, .14); }
.feature-tag small { position: absolute; top: 60px; left: 50%; width: 76px; transform: translateX(-50%); color: #ddd; font-size: 6px; font-weight: 700; line-height: 1.25; letter-spacing: .04em; text-align: center; text-transform: uppercase; }
.tag-mentors { left: 13%; top: 82px; }.tag-projects { left: 5%; top: 209px; }.tag-classes { right: 4%; top: 112px; }.tag-placement { right: 2%; top: 240px; }

.hero-stats { grid-column: 1 / -1; z-index: 4; display: grid; grid-template-columns: repeat(4, 1fr); width: min(880px, 100%); margin-top: -2px; border: 1px solid rgba(255, 90, 10, .24); border-radius: 10px; background: rgba(15, 15, 16, .92); box-shadow: 0 18px 35px rgba(0,0,0,.25), 0 0 25px rgba(255, 90, 10, .08); }
.hero-stats article { display: flex; align-items: center; gap: 15px; padding: 20px 24px; border-right: 1px solid rgba(255,255,255,.09); }.hero-stats article:last-child { border: 0; }
.stat-icon { color: #ff5a0a; font-size: 34px; }.hero-stats strong,.hero-stats small { display: block; }.hero-stats strong { color: #e9e9e9; font-size: 20px; line-height: 1.2; }.hero-stats small { color: #b5b5b5; font-size: 10px; white-space: nowrap; }


.hero .container {
    width: min(1200px, calc(100% - 60px));
}

.hero-glow {
    display: none;
}

#particleCanvas { display: none; }

.site-header {
    background: rgba(5, 6, 7, .88);
    backdrop-filter: blur(16px);
    border-bottom: 1px solid rgba(255, 210, 90, .08);
}

.navbar {
    width: min(1200px, calc(100% - 60px));
    margin: auto;
    min-height: 88px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.brand {
    flex: 0 0 auto;
}

.brand-logo {
    width: auto;
    height: 68px;
}

.nav-menu {
    gap: clamp(22px, 3vw, 40px);
}

.nav-menu a {
    position: relative;
    font-size: 11px;
    letter-spacing: .15em;
    font-weight: 700;
}

.login-link {
    padding: 13px 22px;
    border-color: #a94417;
    color: #ff7a35;
    font-size: 10px;
    letter-spacing: .12em;
}

.login-link span { margin-left: 7px; font-size: 13px; }
.nav-menu a.active::after { content: ""; position: absolute; right: 0; bottom: -15px; left: 0; height: 1px; background: #ff5a0a; }

/*======================================
 PROFESSIONAL ADVANTAGE
======================================*/

.advantage{
    padding:120px 0;
}

.advantage>.container{
    max-width:1240px;
    margin:0 auto;
    padding:0 24px;
}
.advantage .section-heading{
    text-align:center;
    margin-bottom:50px;
}
.advantage .section-heading p{
    margin-top:12px;
    color:#6f6f6f;
    font-size:12px;
    letter-spacing:.32em;
    text-transform:uppercase;
}
.advantage-slider{
    position:relative;
    width:100%;
    height:520px;
    overflow:hidden;
    border-radius:10px;
    background:#0b0b0b;
    box-shadow:0 25px 70px rgba(0,0,0,.35);
}

.advantage-slider::-webkit-scrollbar{
    display:none;
}

.advantage-slide{
    position:absolute;
    inset:0;
    display:grid;
    grid-template-columns:46% 54%;
    background:#0b0b0b;
    border:1px solid rgba(255,255,255,.08);
    border-radius:8px;
    opacity:0;
    transform:translateX(90px);
    transition:
        opacity .9s ease,
        transform .9s cubic-bezier(.22,.61,.36,1);
    pointer-events:none;
    will-change:opacity,transform;
}
.advantage-content{
    padding:60px 70px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    gap:20px;
}
.advantage-slide.active{
    opacity:1;
    transform:translateX(0);
    pointer-events:auto;
    z-index:5;
}
.advantage-slide.exit{
    opacity:0;
    transform:translateX(-90px);
    pointer-events:none;
    z-index:4;
}
.advantage-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    transform:scale(1);
    transition:
        transform 6s ease,
        opacity .9s ease;
}

.advantage-slide.active .advantage-image img{
    transform:scale(1.06);
}
.advantage-icon{
    width:62px;
    height:62px;
    display:grid;
    place-items:center;
    border:1px solid rgba(214,163,35,.35);
    color:var(--gold);
    margin-bottom:30px;
}

.advantage-icon svg{
    width:26px;
    height:26px;
}

.advantage-content h3{
    font-size:48px;
    font-weight:800;
    line-height:1.05;
    margin:0;
    text-transform:uppercase;

}

.advantage-content h3 span{
    display:block;
    color:var(--gold);
}

.gold-line{
    width:70px;
    height:3px;
    background:var(--gold);
     margin:8px 0 10px;
}

.advantage-content p{
    max-width:410px;
    margin-top:10px;
    color:#a4a4a4;
    font-size:16px;
    line-height:1.85;
}

.advantage-image{
    height:100%;
}

.advantage-image{
    overflow:hidden;
}

.advantage-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center;
    transition:transform 6s ease;

}
/* ======================================
   SECTION HEADING
====================================== */

.advantage .section-heading{
    display:flex;
    flex-direction:column;
    align-items:center;
    text-align:center;
    margin-bottom:50px;
}

.advantage .section-heading h2{
    margin:0;
}

.section-heading-divider{
    width:90px;
    height:3px;

    margin:18px 0 16px;

    background:linear-gradient(
        90deg,
        transparent,
        var(--gold),
        transparent
    );

    border-radius:999px;
}

.advantage .section-heading p{
    margin:0;
    color:#7f7f7f;
    font-size:11px;
    letter-spacing:.45em;
    text-transform:uppercase;
    font-weight:500;
}
/* ===========================
   INTERNSHIP PROTOCOL CARDS
=========================== */


.protocol-card:hover {
    border-color: rgba(214, 163, 35, .25);
    transform: translateY(-4px);
}
/*==========================================
  INTERNSHIP PROTOCOLS
==========================================*/

.internship{

    padding:120px 0;

}

.internship-layout{

    display:grid;

    grid-template-columns:1.05fr .95fr;

    gap:70px;

    align-items:start;

}
.phone-card{
    display:flex;
    align-items:center;
    gap:18px;
    padding:22px 24px;
    border:1px solid rgba(255,255,255,.08);
    background:#0b0b0b;
    margin-top:18px;
    transition:.3s;
}

.phone-card:hover{
    border-color:rgba(214,163,35,.35);
    transform:translateX(6px);
}

.phone-icon{
    width:52px;
    height:52px;
    display:grid;
    place-items:center;
    background:#090909;
    border:1px solid rgba(214,163,35,.22);
    color:var(--gold);
    flex-shrink:0;
}

.phone-icon svg{
    width:22px;
    height:22px;
}

.phone-card small{
    display:block;
    color:#777;
    font-size:10px;
    letter-spacing:.32em;
    text-transform:uppercase;
    margin-bottom:6px;
}

.phone-card strong{
    color:#fff;
    font-size:17px;
    font-weight:600;
}
.section-chip{
   display:inline-block;
    border:1px solid rgba(255,215,90,.18);
padding:10px 22px;
    font-size:9px;
    letter-spacing:.38em;
    text-transform:uppercase;
    letter-spacing:.35em;
    color:var(--gold);
    margin-bottom:30px;
}

.internship-left h2{
    font-size:56px;
    line-height:1;
    font-weight:800;
    text-transform:uppercase;
}

.internship-left h2 span{
    display:block;
    color:var(--gold);
}

.section-line{
    width:70px;
    height:3px;
    background:var(--gold);
    margin:30px 0;
}

.internship-left p{
    color:#8c8c8c;
    font-size:16px;
    line-height:1.8;
    max-width:470px;
}

.eligibility-card{
    display:flex;
    align-items:center;
    gap:24px;
    background:#0d0d0d;
    border:1px solid rgba(255,255,255,.08);
    padding:28px;
}

.eligibility-icon{
    width:52px;
    height:52px;
    display:grid;
    place-items:center;
    background:#090909;
    border:1px solid rgba(214,163,35,.18);
    color:var(--gold);
    flex-shrink:0;
}

.eligibility-icon svg{
    width:24px;
    height:24px;
}

.eligibility-card small{
    display:block;
    color:#777;
    font-size:10px;
    letter-spacing:.32em;
    text-transform:uppercase;
    margin-bottom:8px;
}

.eligibility-card strong{
    color:#fff;
    font-size:15px;
    line-height:1.6;
    font-weight:500;
}

.internship-right{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:22px;
}

.feature-card{
    background:#0b0b0b;
    border:1px solid rgba(255,255,255,.08);
     padding:28px;
    min-height:170px;
    transition:.35s;
}

.feature-card:hover{
    border-color:rgba(214,163,35,.35);
    transform:translateY(-6px);
}

.feature-card small{
    display:block;
    margin:18px 0 12px;
    text-transform:uppercase;
    letter-spacing:.28em;
    color:#777;
    font-size:10px;
    letter-spacing:.32em;
}

.feature-card h3{
    color:#fff;
    font-size:18px;
    line-height:1.55;
    font-weight:600;
}

.feature-icon{
    width:46px;
    height:46px;
    display:grid;
    place-items:center;
    background:#090909;
    border:1px solid rgba(214,163,35,.18);
    color:var(--gold);
    margin-bottom:18px;
}

.feature-icon svg{
    width:22px;
    height:22px;
}

.feature-wide{
    grid-column:1 / -1;
}
.protocol-card h3 {
    margin-top: 20px;
    color: #f0f0f0;
    font-size: 14px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.protocol-card p {
    margin-top: 12px;
    color: #666;
    font-size: 12px;
    line-height: 1.7;
}

.protocol-grid .protocol-card:nth-child(2),
.protocol-grid .protocol-card:nth-child(3) {
    transform: translateY(28px);
}

.protocol-grid .protocol-card:nth-child(2).active,
.protocol-grid .protocol-card:nth-child(3).active {
    transform: translateY(0);
}

.protocol-grid .protocol-card:nth-child(2):hover,
.protocol-grid .protocol-card:nth-child(3):hover {
    transform: translateY(-4px);
}

/* ===========================
   PLACEMENT ICONS
=========================== */
.placement-icon {
    width: 48px;
    height: 48px;
    margin: 0 auto 18px;
    display: grid;
    place-items: center;
    color: var(--gold);
}

.placement-icon svg {
    width: 28px;
    height: 28px;
}

.placement-grid article {
    transition: transform .3s ease, border-color .3s ease;
}

.placement-grid article:hover {
    transform: translateY(-6px);
    border-color: rgba(214, 163, 35, .2);
}

/* ===========================
   FOOTER SOCIAL
=========================== */
.footer-address {
    color: #8b8b8b;
    font-size: 11px;
    line-height: 1.7;
    margin-bottom: 12px;
    text-transform: uppercase;
}

.social-links {
    display: flex;
    gap: 14px;
    margin-top: 20px;
}

.social-links a {
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    border: 0;
    border-radius: 0;
    color: var(--gold);
    transition: background .3s ease, border-color .3s ease;
}

.social-links a:hover {
    background: rgba(214, 163, 35, .12);
    border-color: rgba(214, 163, 35, .3);
}

.social-links svg {
    width: 16px;
    height: 16px;
}

.social-links img {
    width: 28px;
    height: 28px;
    object-fit: contain;
}

.social-links a,
.social-links a:hover {
    border-color: transparent;
    background: transparent;
}
/* =========================================
   PARTNERS MARQUEE
========================================= */

.partners{
    position:relative;
    overflow:hidden;
   padding:40px 0;
    background:#080808;
   border-top:1px solid rgba(255,255,255,.05);
    border-bottom:1px solid rgba(255,255,255,.05);
}

.partners-track{
    overflow:hidden;
    width:100%;
}

.partners-slide{
    display:flex;
    align-items:center;
    gap:90px;
    width:max-content;
    animation:partners-scroll 28s linear infinite;
}

.partners-slide img{
    height:54px;
    width:auto;
    opacity:1;
    filter:none;
    transition:.35s ease;
}

.partners-slide img:hover{
    opacity:1;
    filter:none;
    transform:scale(1.08);
}

@keyframes partners-scroll{
    from{
        transform:translateX(0);
    }
    to{
        transform:translateX(-50%);
    }
}
.partners::before,
.partners::after{
    content:"";
    position:absolute;
    top:0;
    width:120px;
    height:100%;
    z-index:2;
   pointer-events:none;
}

.partners::before{
    left:0;
    background:linear-gradient(
        to right,
        #080808,
        transparent
    );
}

.partners::after{
    right:0;
    background:linear-gradient(
       to left,
        #080808,
        transparent
    );
}
