/* ===================================================
   RESET
=================================================== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html, body {
    width: 100%;
    overflow-x: hidden;
    font-family: Arial, sans-serif;
}

/* ===================================================
   BANNER SECTION
=================================================== */
.banner {
    width: 100%;
    overflow: hidden;
    display: block;
}

.banner img {
    width: 100%;
    height: 120px; 
    object-fit: cover;
    display: block;
}

/* ===================================================
   NAVBAR SECTION
=================================================== */
nav {
    width: 100%;
    background: #d32f2f;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    padding: 5px 0;
    display: block;
    clear: both;
}

nav a {
    color: #fff;
    text-decoration: none;
    padding: 6px 12px;
    margin: 0 2px;
    font-size: 14px;
    font-weight: bold;
    display: inline-block;
    transition: 0.3s;
}

nav a:hover {
    background: #fff;
    color: #d32f2f;
    border-radius: 4px;
}

/* ===================================================
   NEWS SCROLLING BAR
=================================================== */
.news-ticker-container {
    width: 100%;
    background: #ffffff;
    border-top: 2px solid #e74c3c;
    border-bottom: 2px solid #e74c3c;
    display: block;
    clear: both;
}

marquee {
    background: #ffcc00;
    color: black;
    padding: 5px;
    font-size: 12px;
    font-weight: bold;
    display: block;
}

/* ===================================================
   RESPONSIVE SETTINGS
=================================================== */

/* 📱 MOBILE (768px se kam) */
@media screen and (max-width: 768px) {
    .banner img {
        height: 60px; /* मोबाइल पर बैनर छोटा होगा */
    }

    nav {
        display: block;
        white-space: nowrap;
        overflow-x: auto; /* मोबाइल पर मेनू उंगली से स्क्रॉल होगा */
        -webkit-overflow-scrolling: touch;
        text-align: center;
    }

    nav a {
        width: auto;
        padding: 8px 12px;
        border-bottom: none;
    }
}

/* 💻 DESKTOP (769px se zyada) */
@media screen and (min-width: 769px) {
    .banner img {
        height: 120px; 
    }
    nav {
        display: flex;
        justify-content: center;
    }
}

/* ===================================================
   IMAGE SLIDER
=================================================== */


/* ===================================================
   WELCOME SECTION
=================================================== */

.welcome-section{
    width:92%;
    margin:30px 0 30px 50px;
}

.welcome-section h1{
    color:#003366;
    font-size:32px;
    margin-bottom:20px;
}

.welcome-box{
    display:flex;
    flex-direction:row-reverse;
    gap:30px;
    align-items:flex-start;
}

.welcome-image{
    width:300px;
    flex-shrink:0;
}

.welcome-image img{
    width:300px;
    height:200px;
    object-fit:cover;
    display:block;
    border-radius:5px;
}

.welcome-content{
    flex:1;
}

.welcome-content p{
    font-size:16px;
    line-height:1.8;
    text-align:justify;
    margin-top:0;
}
/* ===================================================
   MOBILE RESPONSIVE
=================================================== */

@media screen and (max-width:768px){

    .welcome-section{
        width:95%;
        margin:20px auto;
    }

    .welcome-box{
        flex-direction:column;
        gap:20px;
        align-items:center;
    }

    .welcome-image{
        width:100%;
        text-align:center;
    }

    .welcome-image img{
        width:250px;
        height:auto;
        max-width:100%;
    }

    .welcome-content{
        width:100%;
    }

    .welcome-section h1{
        font-size:24px;
        text-align:center;
    }

    .welcome-content p{
        font-size:14px;
        line-height:1.7;
    }

}

/* SMALL MOBILE */

@media screen and (max-width:480px){

    .welcome-section{
        width:95%;
        margin:15px auto;
    }

    .welcome-section h1{
        font-size:20px;
    }

    .welcome-image img{
        width:200px;
    }

    .welcome-content p{
        font-size:13px;
    }

}
/* ===================================================
   TOPPERS SECTION
=================================================== */

.toppers-section{
    width:95%;
    margin:30px auto;
}

.toppers-section h2{
    background:#003366;
    color:#fff;
    text-align:center;
    padding:12px;
    margin-bottom:20px;
}

/* MARQUEE WRAPPER */
.toppers-marquee{
    width:100%;
    overflow:hidden;
    position:relative;
}

/* TRACK */
.toppers-track{
    display:flex;
    width:max-content;
}

/* TOPPERS ANIMATION */
.toppers-section .toppers-track{
    animation:scrollLeft 20s linear infinite;
}

/* RECENT ANIMATION */
.recent-section .toppers-track{
    animation:scrollRight 20s linear infinite;
}

/* HOVER PAUSE */
.toppers-track:hover{
    animation-play-state:paused !important;
}

/* CARD */
.topper-card{
    min-width:180px;
    flex-shrink:0;
    margin-right:10px;
    border:2px solid #003366;
    padding:8px;
    background:#fff;
    border-radius:8px;
    box-sizing:border-box;
}

/* IMAGE */
.student-img{
    width:100%;
    height:100px;
    object-fit:cover;
    object-position:top;
    display:block;
    border-radius:5px;
}

/* TEXT */
.topper-card p{
    margin:2px 0;
    font-size:13px;
    line-height:1.2;
}

/* TOPPERS LEFT SCROLL */
@keyframes scrollLeft{
    from{
        transform:translateX(0);
    }
    to{
        transform:translateX(-33.333%);
    }
}

/* RECENT RIGHT SCROLL */
@keyframes scrollRight{
    from{
        transform:translateX(-33.333%);
    }
    to{
        transform:translateX(0);
    }
}
/* ===================================================
   OUR PROGRAMMES SECTION
=================================================== */
.program-title{
    text-align:center;
    position:relative;
    margin:30px 0;
}

.program-title::before{
    content:"";
    position:absolute;
    top:50%;
    left:0;
    width:100%;
    height:2px;
    background:#003366;
    z-index:1;
}

.program-title span{
    background:#fff; /* section ka background color */
    padding:0 15px;
    position:relative;
    z-index:2;
}
.programmes-section{
    width:95%;
    margin:30px auto;
}

.program-title{
    text-align:center;
    font-size:30px;
    color:#003366;
    font-weight:bold;
    margin-bottom:25px;
}

.programmes-row{
    display:grid;
    grid-template-columns:repeat(4, 1fr);
    gap:20px;
}

.programme-card{
    border:2px solid #003366;
    padding:10px;
    text-align:center;
    background:#ffffff;
    border-radius:5px;
}

.programme-card img{
    width:100%;
    height:180px;
    object-fit:cover;
}

.programme-card h3{
    margin-top:10px;
    font-size:15px;
    color:#003366;
}

/* ===================================================
   RESPONSIVE
=================================================== */

@media(max-width:768px){

    .programmes-row{
        grid-template-columns:repeat(2,1fr);
    }

    .programme-card img{
        height:140px;
    }

    .program-title{
        font-size:22px;
    }
}

@media(max-width:480px){

    .programmes-row{
        grid-template-columns:1fr;
    }

    .programme-card img{
        height:180px;
    }

    .program-title{
        color:#003366;
    }
}

/* ===================================================
   FOOTER (FIXED)
=================================================== */
/* SOCIAL MEDIA ICON */

.social-icon{
    width: 40px;px;
    height:40px;

    vertical-align:middle;

    margin-right:8px;
}

/* SOCIAL LINKS */

.footer-box p{
    margin:10px 0;
}

.footer-box a{
    text-decoration:none;
    color:white;
}

.footer-box a:hover{
    text-decoration:underline;
}
/* ==========================================
   CONTACT HEADING
========================================== */
.footer-box i{
    font-size:20px;
    margin-right:8px;
}
.contact-heading{
    text-align:center;
    color:red;
    font-size:32px;
    margin:40px 0 20px;
}

/* ==========================================
   FOOTER
========================================== */

.footer{
    width:100%;
    background:#003366;
    color:white;
}

.footer-container{
    width:95%;
    margin:auto;
    padding:40px 20px;
    display:flex;
    justify-content:space-between;
    gap:30px;
    flex-wrap:wrap;
}

.footer-box{
    flex:1;
    min-width:280px;
}

.footer-box h3{
    color:#ffd700;
    margin-bottom:15px;
    border-bottom:2px solid #ffd700;
    padding-bottom:8px;
}

.footer-box p{
    line-height:1.8;
}

.footer-box a{
    color:white;
    text-decoration:none;
}

.footer-box a:hover{
    color:#ffd700;
}

.location-btn{
    display:inline-block;
    background:red;
    color:white;
    padding:10px 15px;
    border-radius:5px;
}

.location-btn:hover{
    background:#cc0000;
}

/* ==========================================
   FOOTER BOTTOM
========================================== */

.footer-bottom{
    background:red;
    color:yellow;
    text-align:center;
    padding:15px;
    font-weight:bold;
}

/* Mobile */

@media(max-width:768px){

    .footer-container{
        flex-direction:column;
    }

}
*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Arial;
}

/* CHAT BUTTON */
/* AI CHAT BUTTON */
#chat-btn{
    position:fixed;
    bottom:20px;
    right:20px;

    width:80px;
    height:80px;

    border-radius:50%;
    overflow:hidden;

    cursor:pointer;
    z-index:9999;

    animation:robotMove 3s ease-in-out infinite;
}

/* ==========================================
            AI ROBOT BUTTON START
========================================== */

/* CHAT BUTTON */
#chat-btn{
    position:fixed;
    bottom:20px;
    right:20px;

    width:55px;
    height:55px;

    cursor:pointer;
    z-index:9999;
}

/* ROBOT IMAGE */
#chat-btn img{
    width:100%;
    height:100%;

    object-fit:cover;
    border-radius:50%;
    display:block;

    animation:
        robotMove 2s ease-in-out infinite,
        robotGlow 2s infinite alternate;
}

/* ROBOT MOVE ANIMATION */
@keyframes robotMove{

    0%{
        transform:translateY(0px) rotate(0deg);
    }

    25%{
        transform:translateY(-6px) rotate(-5deg);
    }

    50%{
        transform:translateY(-12px) rotate(0deg);
    }

    75%{
        transform:translateY(-6px) rotate(5deg);
    }

    100%{
        transform:translateY(0px) rotate(0deg);
    }
}

/* ROBOT GLOW ANIMATION */
@keyframes robotGlow{

    0%{
        filter:drop-shadow(0 0 5px #00ccff);
    }

    100%{
        filter:drop-shadow(0 0 20px #00ccff);
    }
}

/* ==========================================
             CHAT BOX START
========================================== */

#chat-box{
    position:fixed;
    bottom:85px;
    right:20px;

    width:320px;
    height:420px;

    background:#fff;
    border:1px solid #ccc;
    border-radius:12px;

    display:none;
    flex-direction:column;

    overflow:hidden;

    box-shadow:0 0 15px rgba(0,0,0,0.2);

    z-index:9998;
}

/* OPEN CHAT */
/* CHAT BOX */
#chat-box{
    position:fixed;
    bottom:85px;
    right:20px;

    width:320px;
    height:420px;

    background:#fff;

    border:1px solid #ccc;
    border-radius:10px;

    display:none;

    flex-direction:column;

    overflow:hidden;

    z-index:9999;
}

/* OPEN CHAT */
#chat-box.active{
    display:flex;
}

/* CHAT HEADER */
#chat-header{
    height:50px;
    line-height:50px;

    background:#007bff;
    color:#fff;

    text-align:center;
    font-weight:bold;

    flex-shrink:0;
}

/* CHAT BODY */
#chat-body{
    flex:1;

    padding:10px;

    overflow-y:auto;
    overflow-x:hidden;

    background:#f9f9f9;

    font-size:14px;
}

/* INPUT AREA */
#input-area{
    height:60px;

    display:flex;

    border-top:1px solid #ddd;

    background:#fff;
}

#msg{
    flex:1;
    border:none;
    outline:none;
    padding:10px;
}

#input-area button{
    width:80px;
    border:none;
    background:#007bff;
    color:#fff;
}
/* ==========================================
            AI TYPING EFFECT
========================================== */

/* ==========================================
            AI TYPING EFFECT
========================================== */

.typing{
    color:#666;
    font-style:italic;
    animation:blink 1s infinite;
}

@keyframes blink{

    0%{
        opacity:1;
    }

    50%{
        opacity:0.4;
    }

    100%{
        opacity:1;
    }
}

/* ==========================================
            USER MESSAGE
========================================== */

.user-msg{
    background:BLACK;
    color:white;

    padding:8px 12px;
    border-radius:15px;

    margin:8px 0;

    width:fit-content;
    max-width:80%;

    margin-left:auto;

    word-wrap:break-word;
}

/* ==========================================
             AI MESSAGE
========================================== */

.ai-msg{
    background:#007bff;
    color:white;

    padding:8px 12px;
    border-radius:15px;

    margin:8px 0;

    width:fit-content;
    max-width:80%;

    word-wrap:break-word;
}

/* ==========================================
              CHAT BODY
========================================== */

#chat-body{
    display:flex;
    flex-direction:column;

    padding:10px;

    overflow-y:auto;

    background:white;
}

.ai-msg{
    background:hsl(BLUE);
    color:rgb(:BLACK);

    padding:8px 12px;
    border-radius:15px;

    margin:8px 0;

    width:fit-content;
    max-width:80%;

    word-wrap:break-word;
}

.typing{
    font-style:italic;
    opacity:0.8;
}
/* ==========================================
              CHAT BOX END
========================================== */

