@import url("https://fonts.googleapis.com/css2?family=Nunito:wght@200;300;400;500;600;700&display=swap");
@import url('https://fonts.googleapis.com/css?family=Quicksand&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600;700&display=swap');

/* General Reset */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* Body Styling */
body {
    font-family: 'Roboto', sans-serif; /* Clean modern font */
    line-height: 1.6; /* Improve readability */
    color: #333; /* Dark grey text */
    background-color: #f4f4f4; /* Light grey background */
    text-align: justify;
}

/* Container for consistent layout */
.container {
    max-width: 1200px; /* Limit width for larger screens */
    margin: 0 auto; /* Center the container */
    padding: 20px; /* Inner padding */
}

/* Header Styles */
header {
    background: #007BFF; /* Primary color */
    color: #fff; /* White text */
    padding: 15px 0; /* Padding for header */
    text-align: center; /* Centered text */
    position: relative; /* Positioning for sticky */
    z-index: 1000; /* Ensure it stays above other content */
}

.header-icon { width: 50px; position: relative; display: inline-block; top: 5px; margin-top: -5px; }
.header-icon .header-icon-hover { width: 50px; display: none; position: absolute; top: 0px; left: 0px; z-index: 99; }
.header-icon:hover .header-icon-hover { display: inline; }

.close-icon img { margin: 5px 5px 2.5px; border-radius: 100%; }


.header .logo { width: 550px; display: flex; flex-direction: row;
  margin-right: auto;
  color: #444;
  font-weight: bolder;
}

.header .collage-name { font-size: 26px; padding-left: 25px; margin-top: 10px; text-align: center;}

header .logo img {
    height: auto; /* Maintain aspect ratio */
    max-height: 80px; /* Maintain height */
    width: auto; /* Maintain width */
}

nav ul {
    list-style: none; /* Remove bullet points */
    display: flex; /* Flexbox for horizontal layout */
    justify-content: center; /* Center navigation items */
    padding: 10px 0; /* Padding for nav */
}

nav ul li {
    margin: 0 15px; /* Spacing between items */
}

nav ul li a {
    color: #fff; /* White text for links */
    text-decoration: none; /* Remove underline */
    font-weight: bold; /* Bold text */
    font-size: 16px; /* Medium font size */
    padding: 10px 15px; /* Add padding for larger buttons */
    transition: color 0.3s; /* Smooth transition */
}

nav ul li a:hover {
    color: #FFD700; /* Change color on hover */
}

/* Search Bar Styles */
.search-bar {
    display: flex; /* Flexbox for search bar */
    justify-content: center; /* Center the search bar */
    margin-top: 10px; /* Space above */
}

.search-bar input {
    padding: 10px; /* Padding for input */
    border-radius: 5px; /* Rounded corners */
    border: 1px solid #ccc; /* Light border */
    width: 300px; /* Fixed width */
}


.account-form {
    position: fixed;
    top: 0;
    right: -105%;
    width: 35rem;
    background: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 2rem;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 100%;
    z-index: 1200;
    padding: 2rem;
    text-align: center;
  }
  
  .account-form.active {
    right: 0;
    -webkit-box-shadow: 0 0 0 100vw rgba(0, 0, 0, 0.8);
            box-shadow: 0 0 0 100vw rgba(0, 0, 0, 0.8);
  }
  
  .account-form #close-form {
    position: absolute;
    top: 1.5rem;
    right: 2.5rem;
    font-size: 4rem;
    cursor: pointer;
    color: #444;
  }
  
  .account-form #close-form:hover {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  
  .account-form form {
    border: 0.1rem solid #4e65ff;
    padding: 2rem;
    display: none;
  }
  
  .account-form form.active {
    display: block;
  }
  
  .account-form form h3 {
    font-size: 2.5rem;
    text-transform: capitalize;
    color: #444;
    padding-bottom: .5rem;
    text-transform: uppercase;
  }
  
  .account-form form .box {
    width: 100%;
    padding: 1.2rem 1.4rem;
    border: 0.1rem solid #0eb582;
    font-size: 1.6rem;
    margin: .7rem 0;
  }
  
  .account-form form .flex {
    padding: 1rem 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: .5rem;
  }
  
  .account-form form .flex label {
    font-size: 1.5rem;
    color: #777;
    cursor: pointer;
  }
  
  .account-form form .flex a {
    font-size: 1.5rem;
    color: #777;
    margin-left: auto;
  }
  
  .account-form form .flex a:hover {
    text-decoration: underline;
    color: #0eb582;
  }
  
  .account-form form .btn {
    width: 100%;
  }
  
  .account-form .buttons .btn {
    margin: 0 .5rem;
  }
  
  .account-form .buttons .btn.active {
    background: #0eb582;
    color: #fff;
  }
  
/* Hero Section */
.hero-section {
    position: relative; /* To position content over images */
    overflow: hidden; /* Hide overflow */
}

.hero-banner {
    position: relative; /* For absolute positioning of content */
}

.banner-images img {
    width: 100%; /* Make images responsive */
    height: auto; /* Maintain aspect ratio */
}

.hero-content {
    display: inline; flex: content;
    justify-content: center;
    text-align: center;
    box-shadow: cornsilk;
}

/* Heading Styles */
h2, h3, h4 {
    color: #007BFF; /* Secondary color */
    margin-bottom: 15px; /* Space below headings */
}

/* parallex css start*/

.paralex-body {
    font-family: 'Times New Roman', Times, serif;
    font-size: 20px;
    margin: 0;
    line-height: 2; letter-spacing: 0.6px;
  }
  .paralex-head {
    width: 100%;
    height: 560px; 
    background-size: cover;
    background-attachment: fixed;
    overflow: hidden;
    position: relative;
    border-radius: 0% 0% 50% 50% / 0% 0% 10% 10%;
    z-index: 1;
    object-fit: cover;
  }
  
  .paralex-images {
    animation: paralex-animate 20s linear infinite;
  }
  
  @keyframes paralex-animate {
    0%,20% {
      background: url('../images/campus-photo-1.jpg') no-repeat center;
      background-attachment: fixed; background-size: 100% 100%;
    }
    25%,45% {
      background: url('../images/campus-photo-2.jpg') no-repeat center;
      background-attachment: fixed; background-size: 100% 100%;
    }
    50%,70% {
      background: url('../images/campus-photo-3.jpg') no-repeat center;
      background-attachment: fixed; background-size: 100% 100%;
    }
    75%,95% {
      background: url('../images/hero-banner.jpg') no-repeat center;
      background-attachment: fixed; background-size: 100% 100%;
    }
  }
  
  .paralex-text {
    text-align: center;
    color: #fff;
    height: 100%;
    display: flex; height: 100%;
    justify-content: center;
    flex-direction: column;
    align-items: center;
    padding: 20px;
  }
  
  .paralex-text h1 {
    line-height: 1.5;
    font-size: 36px;
    font-weight: 700;
    padding: 1px;
    text-shadow:  9px 8px 29px #1c1a1a,
               -5px -5px 15px #6e6666;
  }
  
  .paralex-text p {
    font-size: 20px;
    margin: 40px 0px;
    color: white;
  }
  
 /*-- Why Choose MIP Start --*/

.about-bottom { 
    padding: 90px 0px; 
    position: relative; 
}

.about-bottom-container { 
    box-sizing: border-box; 
    padding: 0px 0px 25px; 
    max-width: 100%; 
    background: #f0f0f0; 
    background-size: cover; 
}

.row {
    display: flex; /* Use flexbox to arrange boxes side-by-side */
    justify-content: space-between; /* Space between boxes */
    flex-wrap: wrap; /* Allow wrapping for smaller screens */
}

.bottom-box { 
    align-items: center; 
    background-color: white; 
    display: flex; 
    flex-direction: column; 
    margin: 10px; /* Adjust margin to create space around boxes */
    text-align: center; 
    width: 30%; /* Set width to allow three boxes to fit side-by-side */
    box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px; 
    border-radius: 0px 30px; 
}

.bottom-box-img { 
    align-items: center; 
    background: #fff; 
    border-radius: 100%; 
    box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;
    display: flex; 
    width: 110px; 
    height: 110px; 
    justify-content: center; 
    margin: -55px 0 15px; 
    position: relative;  
}

.bottom-box-img img { 
    border-style: none; vertical-align: middle; 
    width: 50px;  
}

.bottom-box p { 
    padding: 0px 10px; 
}

/* Responsive Styles */
@media (max-width: 768px) {
    .bottom-box {
        width: 100%; /* Full width for boxes on smaller screens */
        margin: 10px 0; /* Space between stacked boxes */
    }

    .row {
        flex-direction: column; /* Stack boxes vertically on smaller screens */
        align-items: center; /* Center align */
    }
}

/* Key Highlights Section */
.highlights {
    display: flex; /* Flexbox for layout */
    justify-content: space-around; /* Space between cards */
    margin: 40px 0; /* Margin above and below */
    flex-wrap: wrap; /* Wrap on smaller screens */
}

.highlight-cards {
    display: flex; /* Flexbox for card layout */
    justify-content: space-between; /* Space between cards */
    flex-wrap: wrap; /* Wrap on smaller screens */
}

.highlight-card {
    background: #fff; /* White background for cards */
    border: 1px solid #ddd;    border-radius: 5px; /* Rounded corners */
    padding: 20px; /* Inner padding */
    width: calc(25% - 40px); /* Width for cards (4 in a row) */
    margin: 20px; /* Margin around cards */
    text-align: center; /* Center text */
    transition: transform 0.3s; /* Smooth transition */
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1); /* Add slight shadow */
}

.highlight-card:hover {
    transform: translateY(-5px); /* Lift effect on hover */
    cursor: pointer; /* Pointer cursor for clickable */
}

.highlight-card img {
    width: 50px; /* Icon size */
    margin-bottom: 15px; /* Space below icon */
}

.highlight-card h4 {
    color: #007BFF; /* Primary color for headings */
    margin-bottom: 10px; /* Space below heading */
}

/* Footer Styles */
footer {
    background: #333; /* Dark background */
    color: #fff; /* White text */
    padding: 20px 0; /* Padding for footer */
    text-align: center; /* Centered text */
}

.quick-links {
    display: flex; /* Flexbox for layout */
    justify-content: center; /* Center the links */
    flex-wrap: wrap; /* Wrap on smaller screens */
}

.quick-links ul {
    list-style: none; /* Remove bullet points */
    padding: 0; /* Remove padding */
}

.quick-links li {
    margin: 0 10px; /* Space between links */
}

.quick-links a {
    color: #fff; /* White text for links */
    text-decoration: none; /* Remove underline */
    transition: color 0.3s; /* Smooth transition */
}

.quick-links a:hover {
    color: #FFD700; /* Change color on hover */
}

/* Responsive Styles */
@media (max-width: 768px) {
    nav ul {
        flex-direction: column; /* Stack navigation items on smaller screens */
    }

    nav ul li {
        margin: 10px 0; /* Space between stacked items */
    }

    .highlight-card {
        width: calc(50% - 40px); /* 2 cards in a row */
    }

    .hero {
        height: 300px; /* Reduce height for mobile */
    }

    .hero .cta-button {
        padding: 10px 20px; /* Adjust padding for mobile */
        font-size: 16px; /* Adjust font size */
    }
}

@media (max-width: 480px) {
    .highlight-card {
        width: calc(100% - 40px); /* 1 card in a row */
    }

    .hero {
        height: 200px; /* Further reduce height for very small screens */
    }

    .hero .cta-button {
        padding: 8px 15px; /* Further adjust padding */
        font-size: 14px; /* Further adjust font size */
    }
}