@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');

/* --- Global & Basic Setup --- */
* { margin: 0; padding: 0; box-sizing: border-box; }
body { font-family: 'Poppins', sans-serif; font-size: 14px; color: #444; line-height: 1.8; overflow-x: hidden; }
.container { width: 85%; margin: auto; }
.justify-text { text-align: justify; text-justify: inter-word; line-height: 1.8; color: #444; }
.section { padding: 30px 0; } 
.bg-light { background: #f8fbff; }
.badge { color: #f39c12; font-weight: 700; font-size: 12px; letter-spacing: 2px; text-transform: uppercase; margin-bottom: 10px; display: block; }
.text-box h2 { font-size: 20px; color: #003366; margin-bottom: 15px; line-height: 1.25; }

.page-banner{position:relative;width:100%;height:220px;display:flex;align-items:left;justify-content:left;overflow:hidden;border-radius:5%;background-image:linear-gradient(rgba(0,0,0,0.55),rgba(0,0,0,0.55)),url('img/page-banner.png');background-size:cover;background-position:left;background-repeat:no-repeat}
.banner-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.25)}
.banner-content{position:relative;z-index:2;text-align:left;color:#fff}
.banner-content h1{font-size:48px;font-weight:700;margin-bottom:15px;letter-spacing:1px}
.banner-content p{font-size:18px;font-weight:400;color:#f3f4f6}@media(max-width:768px){.page-banner{height:225px}
.banner-content h1{font-size:34px}
.banner-content p{font-size:16px}}.btn{display:inline-block;padding:14px 34px;background:linear-gradient(135deg,#0f172a,#1e3a8a);color:#fff;font-size:16px;font-weight:600;border:0;border-radius:8px;cursor:pointer;text-decoration:none;transition:all .3s ease;box-shadow:0 5px 15px rgba(0,0,0,0.15)}
.btn:hover{background:linear-gradient(135deg,#1e3a8a,#2563eb);transform:translateY(-2px);box-shadow:0 8px 20px rgba(37,99,235,0.25)}
.btn:active{transform:scale(0.98)}.btn-block{width:100%;text-align:center}@media(max-width:768px){.btn{width:100%;padding:14px 20px;font-size:15px}}
/* --- Navbar --- */
.navbar { display: flex; justify-content: space-between; align-items: center; padding: 15px 7.5%; background: #fff; position: sticky; top: 0; z-index: 1000; box-shadow: 0 2px 10px rgba(0,0,0,0.05); }
.logo-img{height:100%;max-height:70px;width:auto;display:block;object-fit:contain; padding: 3%;}
.navbar{height:70px;padding:0 7.5%;}

.logo span { color: #f39c12; }
.nav-links { list-style: none; display: flex; align-items: center; }
.nav-links li { margin-left: 25px; }
.nav-links a { text-decoration: none; color: #333; font-weight: 500; transition: 0.3s; font-size: 14px; }
.nav-links a:hover, .nav-links a.active { color: #f39c12; }
.menu-toggle { display: none; flex-direction: column; cursor: pointer; }
.menu-toggle .bar { width: 25px; height: 3px; background: #003366; margin: 4px; transition: 0.3s; }

/* Dropdown Basic */
.dropdown { position: relative; display: inline-block; }
.dropbtn { cursor: pointer; }
.dropdown-content { display: none; position: absolute; background: #fff; min-width: 240px; box-shadow: 0 8px 16px rgba(0,0,0,0.1); z-index: 1000; border-top: 3px solid #f39c12; border-radius: 4px; top: 100%; left: 0; }
.dropdown-content a { color: #333; padding: 12px 16px; text-decoration: none; display: block; border-bottom: 1px solid #f2f2f2; font-size: 13px; transition: 0.3s; text-align: left; }
.dropdown-content a:hover { background: #f8fbff; color: #f39c12; padding-left: 20px; }
.dropdown-content a i { margin-right: 10px; width: 20px; color: #003366; }
.dropdown:hover .dropdown-content { display: block; }

/* Mobile Menu Dropdown Fix */
/* Mobile dropdown fix */
@media (max-width: 768px) {
    .nav-links { display: none; } /* Default hidden */
    .nav-links.nav-active { display: flex; } /* Show when menu clicked */
    
    .dropdown-content { 
        position: static; 
        display: none; /* Default hidden */
        width: 100%; 
        background: #f9f9f9; 
        box-shadow: none; 
    }
    
    /* Jab JS se 'show' class add hogi tabhi dikhega */
    .dropdown-content.show { 
        display: block !important; 
    }
}
/* --- Hero Slider --- */
.hero-slider { width: 100%; position: relative; overflow: hidden; background-color: #f2f2f2; }
.slider-container { width: 100%; display: flex; }
.slide { display: none; width: 100%; flex-shrink: 0; }
.slide img { width: 100%; height: auto; display: block; }
.fade { animation-name: fade; animation-duration: 1.5s; }
@keyframes fade { from { opacity: .4 } to { opacity: 1 } }

/* --- Flex Layouts --- */
.flex-row { display: flex; align-items: center; gap: 70px; }
.flex-row-reverse { display: flex; flex-direction: row-reverse; align-items: center; gap: 70px; }
.image-box { flex: 1; position: relative; }
.image-box img { width: 100%; border-radius: 12px; box-shadow: 0 15px 35px rgba(0,0,0,0.1); transition: 0.4s ease; }
.image-box img:hover { transform: translateY(-8px); }
.text-box { flex: 1; }
.text-box h2 { font-size: 20px; color: #003366; margin-bottom: 15px; line-height: 1.25; }
.points { list-style: none; margin-top: 20px; }
.points li { margin-bottom: 8px; font-weight: 500; display: flex; align-items: center; }
.points i { color: #f39c12; margin-right: 15px; font-size: 18px; }

/* --- About Page Specific --- */
.about-header { background: linear-gradient(rgba(0,51,102,0.8),rgba(0,51,102,0.8)), url('https://images.unsplash.com/photo-1497366216548-37526070297c?auto=format&fit=crop&w=1500&q=80'); background-size: cover; background-position: center; color: #fff; padding: 80px 0; text-align: center; }
.values-grid { display: grid; grid-template-columns: repeat(auto-fit,minmax(300px,1fr)); gap: 25px; margin-top: 40px; }
.value-box { background: #fff; padding: 35px; border-bottom: 4px solid #f39c12; box-shadow: 0 10px 25px rgba(0,0,0,0.05); border-radius: 8px; transition: .3s; }
.value-box:hover { transform: translateY(-5px); box-shadow: 0 15px 35px rgba(0,0,0,0.1); }
.value-box i { font-size: 35px; color: #f39c12; margin-bottom: 20px; display: block; }
.value-box h3 { color: #003366; margin-bottom: 15px; }
.feature-list { list-style: none; padding: 0; }
.feature-list li { background: #f8fbff; margin-bottom: 15px; padding: 20px; border-radius: 8px; display: flex; gap: 15px; border-left: 4px solid #003366; }
.feature-list i { color: #f39c12; font-size: 20px; margin-top: 4px; }
.feature-list strong { color: #003366; display: block; margin-bottom: 5px; }

/* --- Footer & Quote --- */
.footer-top-quote { background: linear-gradient(135deg,#001529 0%,#003366 100%); color: #fff; padding: 35px 15px; text-align: center; position: relative; overflow: hidden; }
.footer-top-quote::before { content: '"'; position: absolute; top: -40px; left: 50%; transform: translateX(-50%); font-size: 160px; color: rgba(255,255,255,0.05); }
.footer-top-quote h3 { font-size: 20px; font-weight: 300; font-style: italic; margin: 0 auto 12px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 95%; position: relative; z-index: 1; }
.footer-top-quote .line { width: 50px; height: 3px; background: #f39c12; margin: 0 auto; }
.footer { background: #001529; color: #cbd5e0; padding: 35px 0 15px; }
.footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1.2fr 0.8fr; gap: 50px; }
.footer-col h4 { color: #fff; margin-bottom: 20px; font-size: 18px; position: relative; padding-bottom: 10px; }
.footer-col h4::after { content: ''; position: absolute; left: 0; bottom: 0; width: 45px; height: 3px; background: #f39c12; }
.footer-links { list-style: none; }
.footer-links li { margin-bottom: 8px; }
.footer-links a { color: #cbd5e0; text-decoration: none; transition: 0.3s; display: block; }
.footer-links a:hover { color: #f39c12; padding-left: 10px; }
.contact-item p { margin-bottom: 10px; display: flex; gap: 15px; text-align: justify; }
.contact-item i { color: #f39c12; margin-top: 5px; }
.socials { display: flex; gap: 12px; justify-content: flex-start; }
.socials a { color: #fff; background: #1a365d; width: 40px; height: 40px; display: flex; align-items: center; justify-content: center; border-radius: 50%; transition: 0.3s; }
.socials a:hover { background: #f39c12; transform: translateY(-5px); }
.footer-bottom { text-align: center; margin-top: 30px; padding-top: 15px; border-top: 1px solid rgba(255,255,255,0.05); font-size: 12px; }
.contact-form{background:#fff;padding:35px;border-radius:12px;box-shadow:0 12px 35px rgba(0,0,0,.08)}
.contact-form .form-group{margin-bottom:18px}
.contact-form input,.contact-form textarea{width:100%;padding:14px 16px;font-size:15px;border:1px solid #d6dbe1;border-radius:8px;outline:0;transition:.25s ease;background:#f9fbfd;font-family:inherit}
.contact-form textarea{resize:none}
.contact-form input:focus,.contact-form textarea:focus{border-color:#003366;background:#fff;box-shadow:0 0 0 3px rgba(0,51,102,.08)}
.contact-form ::placeholder{color:#8a8f96;font-size:14px}
.contact-form .btn-primary{width:100%;padding:14px;background:linear-gradient(135deg,#003366,#00509e);color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;transition:.3s ease}
.contact-form .btn-primary:hover{background:linear-gradient(135deg,#002244,#003f7d);transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,51,102,.25)}
@media(max-width:768px){.contact-form{padding:25px}}

/* --- Media Queries --- */
@media (max-width: 992px) { .container { width: 90%; } .flex-row, .flex-row-reverse { gap: 40px; } }
@media (max-width: 768px) {
    .menu-toggle { display: flex; z-index: 1002; }
    .nav-links { position: fixed; right: -100%; top: 0; height: 100vh; width: 80%; background: #fff; flex-direction: column; padding: 100px 30px; transition: 0.5s; z-index: 1001; box-shadow: -10px 0 30px rgba(0,0,0,0.1); }
    .nav-links.nav-active { right: 0; }
    .nav-links li { margin: 0; width: 100%; border-bottom: 1px solid #f2f2f2; }
    .nav-links a { font-size: 18px; padding: 18px 0; display: flex; gap: 15px; }
    .flex-row, .flex-row-reverse { flex-direction: column !important; gap: 35px; }
    .image-box, .text-box { width: 100%; }
    .footer-grid { grid-template-columns: 1fr; }
    .footer-top-quote h3 { white-space: normal; font-size: 18px; }
    .menu-toggle.is-active .bar:nth-child(2) { opacity: 0; }
    .menu-toggle.is-active .bar:nth-child(1) { transform: translateY(11px) rotate(45deg); }
    .menu-toggle.is-active .bar:nth-child(3) { transform: translateY(-11px) rotate(-45deg); }
}