/* ✅ Body ko NO padding - hero section khud handle karega */
body {
    margin: 0;
    padding: 0;
    padding-top: 0 !important;
}

/* About Hero Section Styling */
.about-hero-section {
    position: relative;
    height: 40vh;
    min-height: 260px;
    background-image: url('images/aboutheroban.jpg');
    background-size: cover;
    background-position: center;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: white;
    
    /* ✅ CRITICAL: Hero section ko header ke neeche push karo */
    margin-top: 0;
    padding-top: 0;
}

/* ✅ Desktop: Hero section ko topbar + header ke neeche push karo */
@media (min-width: 992px) {
    .about-hero-section {
        margin-top: calc(60px + 80px); /* topbar 60px + header 80px = 140px */
    }
    
    /* ✅ When scrolled and topbar hidden */
    body.nav-scrolled .about-hero-section {
        margin-top: 80px; /* only header height */
    }
}

/* ✅ Mobile/Tablet: Hero section ko only header ke neeche push karo */
@media (max-width: 991px) {
    .about-hero-section {
        margin-top: 80px; /* only header height */
    }
}

/* ✅ Overlay Added */
.about-hero-section::before{
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0,0,0,0.55);
    z-index: 1;
}

/* ✅ Content overlay ke upar rahe */
.hero-content{
    position: relative;
    z-index: 2;
    padding: 0 20px;
}

.hero-title {
    font-size: 3rem;
    font-weight: bold;
    color: #e60000;
    margin-bottom: 10px;
    text-transform: uppercase;
    letter-spacing: 2px;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}

.hero-breadcrumb {
    font-size: 1.2rem;
    color: #fff;
    margin: 0;
    text-transform: uppercase;
    font-weight: 600;
    text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.3);
}

/* ✅ Home link: white + no underline line */
.hero-breadcrumb .breadcrumb-link{
    color: #fff;
    text-decoration: none;
    font-weight: 700;
    transition: 0.25s ease;
}

/* ✅ hover pe bhi line nahi aayegi */
.hero-breadcrumb .breadcrumb-link:hover{
    color: #e60000;
    text-decoration: none;
    opacity: 1;
}

/* Responsive Styling */

/* Tablet View (Below 1024px) */
@media (max-width: 1024px) {
    .about-hero-section {
        height: 50vh;
        min-height: 240px;
    }

    .hero-title {
        font-size: 50px;
    }

    .hero-breadcrumb {
        font-size: 1rem;
    }
}

/* Mobile View (Below 768px) */
@media (max-width: 768px) {
    .about-hero-section {
        height: 50vh;
        min-height: 260px;
    }

    .hero-title {
        font-size: 2rem;
    }

    .hero-breadcrumb {
        font-size: 0.9rem;
    }
}

/* Mobile View (Below 480px) */
@media (max-width: 480px) {
    .about-hero-section {
        min-height: 260px;
    }

    .hero-title {
        font-size: 1.5rem;
    }

    .hero-breadcrumb {
        font-size: 0.8rem;
    }
}
/* section 1 css */
/* About Section 1 */
.about-section-1 {
    display: flex;
    justify-content: center; /* Center the content horizontally */
    align-items: center; /* Center the content vertically */
    width: 100%;
    padding: 30px;
}

/* About Card */
.about-card {
    display: flex;
    align-items: center;
    background-color: #fff;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    width: 100%;
    max-width: 1200px; /* Increased max-width for larger card */
    padding: 30px;
    justify-content: center; /* Center the content horizontally */
    flex-wrap: wrap;
    gap: 20px;
    margin: 0 20px; /* Adjust margin to avoid touching sides */
}

/* Image Style */
.about-card-image {
    flex: 1;
}

.about-card-image img {
    width: 100%;
    height: auto;
    border-radius: 10px;
}

/* Text Style */
.about-card-text {
    flex: 1;
    padding-left: 30px;
    text-align: left;
}

.about-card-title {
    font-size: 1.5rem;
    color: #d32f2f;
    font-weight: bold;
}

.about-card-subtitle {
    font-size: 1rem;
    margin-top: 10px;
    color: #000;
    font-weight: bold;
}

.about-card-description {
    font-size: 1rem;
    margin-top: 20px;
    line-height: 1.6;
    color: #555;
}

.about-card-btn {
    margin-top: 30px;
    padding: 10px 20px;
    background-color: #007bff;
    color: white;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    text-transform: uppercase;
    font-weight: bold;
}

.about-card-btn:hover {
    background-color: #0056b3;
}

/* Center the card only on laptop screens */
@media (min-width: 1024px) and (max-width: 1440px) {
    .about-card {
        margin: 0 auto; /* Center the card horizontally on laptop screens */
        width: 90%; /* Adjust width to fit laptop screen */
    }
}

/* Responsive Design */
@media (max-width: 768px) {
    .about-card {
        flex-direction: column; /* Stack content and image vertically */
        text-align: center;
        width: 95%; /* Wider card on tablets */
        margin: 0 10px; /* Adjust margin for small devices */
    }

    .about-card-text {
        padding-left: 0;
        margin-top: 20px;
    }

    .about-card-image img {
        max-width: 90%; /* Make image width smaller for better appearance */
        margin-bottom: 20px;
    }

    .about-card-btn {
        width: 100%; /* Make buttons full width for mobile */
    }
}

@media (max-width: 480px) {
    .about-card {
        width: 100%; /* Full width for mobile */
        margin: 0 10px; /* Margin to avoid touching edges */
    }

    .about-card-title {
        font-size: 15px;
    }

    .about-card-subtitle {
        font-size: 14px;
    }

    .about-card-description {
        font-size: 13px;
    }

    .about-card-btn {
        font-size: 1rem;
        padding: 10px 20px;
        width: 100%; /* Make button full width */
    }
}

/* section 2 css */
/* Stats Section */
.about-section-2 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 10px; /* Reduced gap between cards */
    padding: 40px;
    justify-items: center;
    align-items: center;
}

.stat-card {
    background-color: #fff;
    padding: 30px;
    text-align: center;
    border-radius: 10px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    width: 250px;  /* Increased card width */
    transition: transform 0.3s ease-in-out;
}

.stat-card:hover {
    transform: translateY(-10px);
}

/* Ensure the icon is centered in the circle */
.stat-icon {
    font-size: 40px;
    color: white;
    padding: 20px;
    border-radius: 50%;
    margin-bottom: 20px;
    width: 80px; /* Set width and height to ensure perfect circle */
    height: 80px;
    display: flex;
    justify-content: center;
    align-items: center; /* Center the icon inside the circle */
    margin: 0 auto; /* Ensures the circle stays centered */
}

.stat-number {
    font-size: 3rem;
    font-weight: bold;
    color: #2c3e50;
}

.stat-label {
    font-size: 1rem;
    color: #7f8c8d;
    margin-top: 10px;
}

/* Responsive Design */
@media (max-width: 1024px) {
    /* Laptop View: 1 Row */
    .about-section-2 {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (max-width: 768px) {
    /* Tablet View: 2 Cards per Row */
    .about-section-2 {
        grid-template-columns: repeat(2, 1fr); /* Two cards per row */
        gap: 15px; /* Reduced gap for tablet */
    }
}

@media (max-width: 480px) {
    /* Mobile View: 1 Card per Row */
    .about-section-2 {
        grid-template-columns: 1fr;
    }
}

/* section 3 css */
.about-section-3-container {
    padding: 50px 20px;
    text-align: center;
    background-color: #fff;
    margin-top: 20px;
}

.section-title {
    font-size: 2.5rem;
    font-weight: 700;
    color: #003d5c;
    margin-bottom: 15px;
}

.section-subtitle {
    font-size: 1.1rem;
    color: #7f8c8d;
    margin-bottom: 50px;
    font-weight: 400;
}

/* About Section 3 - Our Mission & Vision */
.mv-section-wrapper {
    padding: 60px 20px;
    text-align: center;
    background-color: #f5f5f5;
}

.mv-primary-title {
    font-size: 2.8rem;
    font-weight: 700;
    color: #dc3545;
    margin-bottom: 15px;
}

.mv-tagline {
    font-size: 1.1rem;
    color: #7f8c8d;
    margin-bottom: 60px;
    font-weight: 400;
}

/* ✅ Updated Grid Layout - Bootstrap Compatible */
.mv-grid-layout {
    max-width: 1400px;
    margin: 0 auto;
}

.mv-grid-layout > [class*="col-"] {
    margin-bottom: 40px;
}

.mv-card-box {
    background-color: #ffffff;
    border-radius: 8px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    text-align: left;
    width: 100%;
    height: 100%;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    overflow: hidden;
}

.mv-card-box:hover {
    transform: translateY(-8px);
    box-shadow: 0 6px 25px rgba(0, 0, 0, 0.15);
}

.mv-top-line {
    height: 5px;
    width: 100%;
}

.mv-icon-wrapper {
    font-size: 40px;
    color: white;
    border-radius: 15px;
    margin: 40px 0 0 40px;
    width: 80px;
    height: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.mv-card-heading {
    font-size: 1.8rem;
    color: #003d5c;
    font-weight: 700;
    margin: 25px 40px 20px 40px;
}

.mv-card-content {
    font-size: 1rem;
    color: #666;
    line-height: 1.8;
    margin: 0 40px 40px 40px;
}

/* Tablet View (768px - 1024px) */
@media (max-width: 1024px) and (min-width: 768px) {
    .mv-primary-title {
        font-size: 2.4rem;
    }

    .mv-grid-layout {
        max-width: 1200px;
    }

    .mv-grid-layout > [class*="col-"] {
        margin-bottom: 30px;
    }

    .mv-icon-wrapper {
        width: 70px;
        height: 70px;
        font-size: 35px;
        margin: 35px 0 0 35px;
    }

    .mv-card-heading {
        font-size: 1.6rem;
        margin: 20px 35px 15px 35px;
    }

    .mv-card-content {
        font-size: 0.95rem;
        margin: 0 35px 35px 35px;
    }
}

/* Mobile View (Below 768px) */
@media (max-width: 767px) {
    .mv-primary-title {
        font-size: 2rem;
    }

    .mv-tagline {
        font-size: 0.95rem;
        margin-bottom: 40px;
    }

    .mv-grid-layout > [class*="col-"] {
        margin-bottom: 30px;
    }
    
    .mv-icon-wrapper {
        margin: 30px 0 0 30px;
        width: 65px;
        height: 65px;
        font-size: 32px;
    }
    
    .mv-card-heading {
        font-size: 1.5rem;
        margin: 20px 30px 15px 30px;
    }
    
    .mv-card-content {
        margin: 0 30px 30px 30px;
        font-size: 0.95rem;
    }
}

/* Small Mobile (Below 480px) */
@media (max-width: 480px) {
    .mv-primary-title {
        font-size: 1.7rem;
    }

    .mv-tagline {
        font-size: 0.9rem;
    }

    .mv-icon-wrapper {
        margin: 25px 0 0 25px;
        width: 60px;
        height: 60px;
        font-size: 28px;
    }
    
    .mv-card-heading {
        font-size: 1.3rem;
        margin: 18px 25px 12px 25px;
    }
    
    .mv-card-content {
        margin: 0 25px 25px 25px;
        font-size: 0.9rem;
    }
}

/* section 4 css */
.cv-main-section {
            padding: 60px 40px;
            background-color: #f4f9fd;
        }

        .cv-content-wrapper {
            text-align: center;
            max-width: 1400px;
            margin: 0 auto;
        }

        .cv-content-wrapper h2 {
            font-size: 2.5rem;
            margin-bottom: 10px;
            color: #dc3545;
            font-weight: 700;
        }

        .cv-content-wrapper > p {
            color: #555;
            font-size: 1.1rem;
            margin-bottom: 50px;
        }

        .cv-cards-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 20px;
            padding: 0;
            width: 100%;
        }

        .cv-value-card {
            background-color: white;
            padding: 30px 15px;
            border-radius: 10px;
            box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.1);
            text-align: center;
            transition: transform 0.3s ease, box-shadow 0.3s ease;
        }

        .cv-value-card:hover {
            transform: translateY(-10px);
            box-shadow: 0px 6px 25px rgba(0, 0, 0, 0.15);
        }

        .cv-icon-circle {
            width: 65px;
            height: 65px;
            margin: 0 auto 15px;
            border-radius: 50%;
            display: flex;
            justify-content: center;
            align-items: center;
            font-size: 28px;
            font-weight: bold;
        }

        .cv-value-card .cv-quality-icon {
            background-color: #f26d6d;
            color: white;
        }

        .cv-value-card .cv-trust-icon {
            background-color: #3971b5;
            color: white;
        }

        .cv-value-card .cv-innovation-icon {
            background-color: #f5c042;
            color: white;
        }

        .cv-value-card .cv-sustainability-icon {
            background-color: #6cbf72;
            color: white;
        }

        .cv-value-card h3 {
            font-size: 1.3rem;
            margin-bottom: 10px;
            color: #003d5c;
            font-weight: 700;
        }

        .cv-value-card p {
            color: #777;
            font-size: 0.9rem;
            line-height: 1.6;
        }

        /* Tablet View - 2 cards per row */
        @media (max-width: 1024px) and (min-width: 769px) {
            .cv-main-section {
                padding: 50px 30px;
            }

            .cv-content-wrapper h2 {
                font-size: 2.2rem;
            }

            .cv-cards-grid {
                grid-template-columns: repeat(2, 1fr);
                gap: 30px;
            }

            .cv-value-card {
                padding: 35px 25px;
            }

            .cv-icon-circle {
                width: 75px;
                height: 75px;
                font-size: 32px;
                margin-bottom: 20px;
            }

            .cv-value-card h3 {
                font-size: 1.5rem;
                margin-bottom: 15px;
            }

            .cv-value-card p {
                font-size: 1rem;
            }
        }

        /* Mobile View - 1 card per row */
        @media (max-width: 768px) {
            .cv-main-section {
                padding: 40px 20px;
            }

            .cv-content-wrapper h2 {
                font-size: 2rem;
            }

            .cv-content-wrapper > p {
                font-size: 1rem;
                margin-bottom: 40px;
            }

            .cv-cards-grid {
                grid-template-columns: 1fr;
                gap: 20px;
            }

            .cv-value-card {
                padding: 25px 20px;
            }

            .cv-icon-circle {
                width: 65px;
                height: 65px;
                font-size: 28px;
            }

            .cv-value-card h3 {
                font-size: 1.3rem;
            }
        }

        /* Small Mobile */
        @media (max-width: 480px) {
            .cv-main-section {
                padding: 30px 15px;
            }

            .cv-content-wrapper h2 {
                font-size: 1.7rem;
            }

            .cv-content-wrapper > p {
                font-size: 0.95rem;
            }

            .cv-value-card {
                padding: 20px 15px;
            }

            .cv-icon-circle {
                width: 60px;
                height: 60px;
                font-size: 26px;
            }

            .cv-value-card h3 {
                font-size: 1.2rem;
            }

            .cv-value-card p {
                font-size: 0.9rem;
            }
        }

        /* meet our team section css */
        :root{
  --team-blue:#0a3d73;
  --team-red:#d50d0d;
  --team-yellow:#ffcc00;
  --team-dark:#111;
  --team-shadow: 0 18px 35px rgba(0,0,0,.12);
}

/* RESET */
*{margin:0;padding:0;box-sizing:border-box;}
body{font-family: Arial, Helvetica, sans-serif; background:#fff; color:#222;}

/* SECTION WRAP */
.team-section{
  padding:70px 18px;
  max-width:1200px;
  margin:0 auto;
}

/* TITLE */
.team-top{
  text-align:center;
  margin-bottom:38px;
}

.team-top .team-small-title{
  color:#d10f0f;
  font-weight:700;
  letter-spacing:.5px;
  margin-bottom:10px;
  font-size:24px;
}

.team-top h2{
  font-size:56px;
  font-weight:800;
  line-height:1.05;
  color:#1b1b1b;
}

/* GRID (DEFAULT = DESKTOP/LAPTOP) */
.team-grid{
  display:grid;
  grid-template-columns: repeat(4, minmax(0, 1fr)); /* ✅ 4 always when >=1024 */
  gap:28px;
  align-items:stretch;
}

/* CARD */
.team-card{
  position:relative;
  overflow:hidden;
  background:#fff;
  box-shadow: var(--team-shadow);
  transition: transform .25s ease, box-shadow .25s ease;

  display:flex;          /* ✅ fix white strip issue */
  flex-direction:column; /* ✅ fix white strip issue */
}

.team-card:hover{
  transform: translateY(-6px);
  box-shadow: 0 24px 55px rgba(0,0,0,.18);
}

/* IMAGE AREA (equal size + no gap) */
.team-img{
  position:relative;
  width:100%;
  aspect-ratio: 4/5;     /* ✅ consistent image height in all cards */
  overflow:hidden;
  background:#eee;
}

.team-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transform: scale(1.02);
  transition: transform .45s ease;
}

.team-card:hover .team-img img{
  transform: scale(1.08);
}

/* SOCIAL ICON BOX (top-left slide-in) */
.team-social{
  position:absolute;
  top:0;
  left:0;
  z-index:5;
  display:flex;
  flex-direction:column;

  transform: translate(-120%, -120%);
  transition: transform .35s ease;

  overflow:hidden;
  box-shadow: 0 16px 30px rgba(0,0,0,.18);
}

.team-card:hover .team-social{
  transform: translate(0,0);
}

.team-social a{
  width:54px;
  height:54px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  color:#fff;
  background:#1a78c2;
  transition: background .2s ease, transform .2s ease;
  font-size:18px;
  border-bottom: 1px solid rgba(255,255,255,.18);
}

.team-social a:hover{
  background:#0f5e9e;
  transform: scale(1.03);
}

/* INFO BAR (always bottom, no white strip) */
.team-info{
  margin-top:auto;       /* ✅ pushes footer to bottom */
  padding:18px 16px 16px;
  text-align:center;
  color:#fff;
}

.team-name{
  font-size:23px;
  font-weight:800;
  color: var(--team-yellow);
  margin-bottom:6px;
}

.team-role{
  font-size:18px;
  font-weight:500;
  color:#fff;
  opacity:.95;
}

/* COLOR VARIANTS */
.team-card.team-blue .team-info{ background: var(--team-blue); }
.team-card.team-red  .team-info{ background: var(--team-red); }

/* ===== RESPONSIVE ===== */

/* ✅ Laptop / Desktop: 1024px and above => 4 cards */
@media (min-width: 1024px){
  .team-grid{ grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .team-top h2{ font-size:2.4rem; }
}

/* ✅ Tablet: 768px to 1023px => 2 cards */
@media (min-width: 768px) and (max-width: 1023px){
  .team-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .team-top h2{ font-size:44px; }
  .team-img{ aspect-ratio: 4/5; }
}

/* ✅ Mobile: below 768px => 1 card */
@media (max-width: 767px){
  .team-grid{ grid-template-columns: 1fr; }
  .team-top h2{ font-size:34px; }
  .team-img{ aspect-ratio: 4/5; }
  .team-social a{ width:50px; height:50px; }
}

        /* section 5 css */
        
        .about-faq-section {
            padding: 60px 40px;
            background-color: #f9f9f9;
        }

        .about-faq-container {
            max-width: 1200px;
            margin: 0 auto;
            text-align: center;
        }

        .about-faq-subtitle {
            font-size: 1rem;
            color: #d32f2f;
            font-weight: 600;
            margin-bottom: 10px;
            text-transform: uppercase;
            letter-spacing: 0.5px;
        }

        .about-faq-title {
            font-size: 3rem;
            color: #2c2c2c;
            font-weight: 700;
            margin-bottom: 50px;
        }

        .about-faq-grid {
            display: grid;
            grid-template-columns: 1fr auto 1fr;
            gap: 30px;
            align-items: start;
        }

        .about-faq-column {
            display: flex;
            flex-direction: column;
            gap: 20px;
        }

        .about-faq-divider {
            width: 2px;
            background-color: #d32f2f;
            height: 100%;
            min-height: 300px;
            align-self: stretch;
        }

        .about-faq-item {
            background-color: white;
            padding: 20px 25px;
            border: 1px solid #e0e0e0;
            border-radius: 5px;
            cursor: pointer;
            transition: all 0.3s ease;
            text-align: left;
        }

        .about-faq-item:hover {
            border-color: #d32f2f;
            box-shadow: 0 2px 8px rgba(211, 47, 47, 0.1);
        }

        .about-faq-question {
            display: flex;
            justify-content: space-between;
            align-items: center;
            gap: 15px;
        }

        .about-faq-question-text {
            font-size: 1.05rem;
            color: #2c2c2c;
            font-weight: 500;
        }

        .about-faq-icon {
            font-size: 1.3rem;
            color: #d32f2f;
            font-weight: 700;
            flex-shrink: 0;
        }

        .about-faq-answer {
            max-height: 0;
            overflow: hidden;
            transition: max-height 0.3s ease;
            padding-top: 0;
        }

        .about-faq-answer.active {
            max-height: 500px;
            padding-top: 15px;
        }

        .about-faq-answer-text {
            color: #666;
            font-size: 0.95rem;
            line-height: 1.6;
        }

        /* Tablet View */
        @media (max-width: 1024px) and (min-width: 769px) {
            .about-faq-section {
                padding: 50px 30px;
            }

            .about-faq-title {
                font-size: 2.5rem;
                margin-bottom: 40px;
            }

            .about-faq-grid {
                gap: 25px;
                
            }

            .about-faq-question-text {
                font-size: 1rem;
            }
        }
        

        /* Mobile View */
        @media (max-width: 768px) {
            .about-faq-section {
                padding: 40px 20px;
            }

            .about-faq-subtitle {
                font-size: 0.9rem;
            }

            .about-faq-title {
                font-size: 2rem;
                margin-bottom: 35px;
            }

            .about-faq-grid {
                grid-template-columns: 1fr;
                gap: 15px;
            }

            .about-faq-divider {
                display: none;
            }

            .about-faq-item {
                padding: 18px 20px;
            }

            .about-faq-question-text {
                font-size: 0.95rem;
            }

            .about-faq-icon {
                font-size: 1.2rem;
            }

            .about-faq-answer-text {
                font-size: 0.9rem;
            }
        }

        /* Small Mobile */
        @media (max-width: 480px) {
            .about-faq-section {
                padding: 30px 15px;
            }

            .about-faq-title {
                font-size: 1.7rem;
            }

            .about-faq-item {
                padding: 15px 18px;
            }

            .about-faq-question-text {
                font-size: 0.9rem;
            }
        }