.hero-wrapper {
    height: 100%;
}

.hero-overlay {
    position: absolute;
    inset: 0;
    background-color: color-mix(in srgb, var(--bs-green) 70%, transparent);
    pointer-events: none;
}

a {
    text-decoration: none !important;
    color: var(--bs-dark) !important;
}

.custom-border-shadow {
    border: 1px solid #D5D2D2;
    box-shadow: 0px 4px 16px 0px color-mix(in srgb, var(--bs-dark) 8%, transparent);
}

.custom-border{
    border: 1px solid #D9D9D9;
}

.paragraph {
    color: #4D4D4D;
}



/*HEADER START*/

header {
    background-color: var(--bs-green);
}

header .desktop-menu .nav-item:hover .nav-link {
    color: var(--bs-green) !important;
    transition: none !important;
}

header .desktop-menu .nav-item:hover {
    color: var(--bs-green) !important;
    border: 1px var(--bs-green);
    background-color: var(--bs-white);
    border-top-right-radius: 0.3rem;
    border-top-left-radius: 0.3rem;
    border-bottom-right-radius: 0.3rem;
    border-bottom-left-radius: 0.3rem;
}

header .desktop-menu .dropdown:hover {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
}

.desktop-menu .dropdown-menu {
    border-top: none;
    border-top-right-radius: 0;
    border-top-left-radius: 0;
    border-bottom-right-radius: 0rem;
    border-bottom-left-radius: 0rem;
    transform: translateX(-1px);
    transition: all 0.3s ease;
    border-radius: 0 0 8px 8px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.1);
    padding: 10px 0;
    background-color: var(--bs-white);

}

.dropdown-menu {
    padding: 0.3rem !important;
}

.desktop-menu .dropdown-menu .dropdown-item {
    padding: 8px 20px;
    color: var(--bs-green) !important;
    background-color: var(--bs-white)!important;
}

header .dropdown-item:hover, 
.dropdown-item:focus,
.desktop-menu .dropdown-menu .dropdown-item:hover {
    background-color: var(--bs-green)!important;
    border-radius: 0.3rem !important;
    color: var(--bs-white) !important;
    border-radius: 0;
}

header .desktop-menu .nav-item .nav-link {
    color: var(--bs-white) !important;
}

header .desktop-menu .dropdown .dropdown-menu .dropdown-item.dropdown-toggle:hover{
    display: block;
}

header .desktop-menu .dropdown:hover > .dropdown-menu { 
    display: block; 
}

header .desktop-menu .dropend:hover > .dropdown-menu {
    display: block;
    margin-top: 0;
    border-radius: 0.3rem;
}

header .desktop-menu .dropend .dropdown-menu {
    top: 0;
    left: 100%;
}

header .mobile .nav-item .collapse .dropend .dropdown-item {
    color: var(--bs-dark);
}

.offcanvas-body .mobile .dropdown-menu {
    position: relative !important;
    transform: translate(0, 0) !important;
    border: 0px;
}

.offcanvas-body .mobile .dropdown-item {
    color: var(--bs-gray-new) !important;
}

.offcanvas-body .mobile .dropdown-item:hover,
.offcanvas-body .mobile .dropdown-item:focus {
    color: var(--bs-gray-new) !important;
    background-color: var(--bs-white);
}

.aside-menu .offcanvas-body .mobile .dropdown-item:hover,
.aside-menu .offcanvas-body .mobile .dropdown-item:focus,
.aside-menu .offcanvas-body .mobile .collapse .nav-link:hover, 
.aside-menu .offcanvas-body .mobile .collapse .nav-link:focus {
    color: var(--bs-gray-new) !important;
    background-color: color-mix(in srgb, var(--bs-blue) 7%, transparent);
}

.mobile .dropdown-toggle::after{
    content: "";
    width: 16px;
    height: 16px;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='var(--bs-blue)'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-size: contain;
    border: none;
    transition: transform 0.3s ease;
}

.aside-menu .offcanvas-body .navbar-nav .nav-item:has(.collapse.show) > .header,
.offcanvas .offcanvas-body .navbar-nav .nav-item:has(.collapse.show) > .header {
    background-color: color-mix(in srgb, var(--bs-blue) 15%, transparent);
    backdrop-filter: saturate(180%) blur(5px);
    border-bottom-right-radius: 0.3rem;
    border-bottom-left-radius: 0.3rem;
}

.mobile .dropdown-toggle[aria-expanded="true"]::after {
    transform: rotate(-180deg);
}

.mobile .nav-item {
    padding-bottom: 0rem;
    padding-top: 0rem;
    border-bottom: 0.7px solid color-mix(in srgb, var(--bs-gray) 20%, transparent) !important;
    width: 100%;
}

.mobile .nav-item .nav-link {
    padding-left: 1rem;
    padding-right: 1rem;
}

.offcanvas .mobile .header[aria-expanded="true"] {
    background-color: color-mix(in srgb, var(--bs-green) 15%, transparent);
    border-radius: 0 0 8px 8px !important;
}

.mobile .nav-item:last-child {
    border-bottom: 0 !important;
}

.mobile .nav-item:focus {
    background-color: color-mix(in srgb, var(--bs-green) 95%, transparent) !important;
}

header.fixed-top.scrolled {
    box-shadow: 0 5px 10px color-mix(in srgb, var(--bs-white) 20%, transparent) !important;
    background-color: color-mix(in srgb, var(--bs-green) 95%, transparent) !important;
    backdrop-filter: saturate(180%) blur(6px) !important;
    transition: all 0.3s ease;
}

.mobile li:has(> ul.collapse.show) > .header {
    background-color: color-mix(in srgb, var(--bs-green) 15%, transparent);
    border-radius: .5rem;
}

/*HEADER END*/


/*ASIDE MENU START*/

.aside-col {
    position: sticky;
    top: 7rem;
    align-self: flex-start;
}

.aside-menu {
    position: static;   /* remove sticky from inner */
    top: auto;
}

.aside-menu .offcanvas-body .navbar-nav .nav-item:has(.collapse.show) > .header,
.offcanvas .offcanvas-body .navbar-nav .nav-item:has(.collapse.show) > .header {
    background-color: color-mix(in srgb, var(--bs-blue) 10%, transparent);
    backdrop-filter: saturate(180%) blur(5px);
    border-bottom-right-radius: 0.5rem;
    border-bottom-left-radius: 0.5rem;
}

.aside-menu .offcanvas-body .mobile .dropdown-item:hover,
.aside-menu .offcanvas-body .mobile .dropdown-item:focus,
.aside-menu .offcanvas-body .mobile .collapse .nav-link:hover, 
.aside-menu .offcanvas-body .mobile .collapse .nav-link:focus {
    color: var(--bs-gray-new) !important;
    background-color: color-mix(in srgb, var(--bs-blue) 10%, transparent);
}

/*ASIDE MENU END*/


/*FOOTER START*/

footer .footer-up {
    background-color: var(--bs-green);
    color: var(--bs-white) !important;
}

footer .footer-up .contact-icons .icons-item {
    background-color: var(--bs-gray);
    width: 35px;
    height: 35px;
}

footer .footer-up .contact-icons .icons-item .icon {
    width: 25px;
    height: 25px;
}

footer .footer-up .column-text-color,
footer .footer-up .column-text-color a{
    color: var(--bs-white) !important;
}

footer .footer-down {
    background-color: var(--bs-gray);
}

footer .footer-down .text,
footer .footer-down .text a{
    color: var(--bs-green);
}

.custom-color-footer {
    color: var(--bs-green) !important;
}
/*FOOTER END*/

    

/*HERO-1 START*/

.hero-1 {
    background-color: var(--bs-green);
}

.hero-1 .back-mask,
.aboutUs .back-mask {
    position: absolute;
    inset: 0;                 
    z-index: 1;               
    pointer-events: none;
}

.hero-1 .back-mask .image,
.aboutUs .back-mask .image {
    width: 100%;
    height: 100%;
    object-fit: contain;      
    opacity: 0.25;
    transform: translateX(5%)            
}

@keyframes move {

 0% {
    transform: translateY(0) translateX(0px) scale(1) rotate(0deg);
  }
  25% {
    transform: translateY(-20px) translateX(-10px)scale(1.05) rotate(-5deg);
  }
  50% {
    transform: translateY(10px) translateX(10px) scale(1.1) rotate(3deg);
  }
  75% {
    transform: translateY(-10px) translateX(-20px) scale(1.08) rotate(-3deg);
  }
  100% {
    transform: translateY(0) translateX(0px) Scale(1) rotate(0deg);
  }
}

.hero-1 .back-mask .image {
    animation: move 15s ease-in-out infinite;
}

/*HERO-1 END*/



/*BUTTONS START*/

.btnWhite {
    font-size: 13px;
    background-color: var(--bs-white);
    color: var(--bs-green) !important;
    border: 2px solid var(--bs-white);
    border-radius: 10px;
    transition: all 0.3s ease;
    display: flex; 
    justify-content: center; 
    align-items: center; 
    gap: 8px;
    padding: 0.5rem 3rem 0.5rem 1rem;
    position: relative; 
}

.btnWhite:hover {
    color: var(--bs-green);
    padding: 0.5rem 1rem 0.5rem 3rem;
}

.btnOrange {
    background-color: var(--bs-orange);
    color: var(--bs-white) !important;
    border: 2px solid var(--bs-orange);
    border-radius: 10px;
    padding: 0.5rem 0.7rem;
    transition: all 0.3s ease;
}

.btnOrange:hover{
    color: var(--bs-white) !important;
    box-shadow: 0 5px 10px color-mix(in srgb, var(--bs-orange) 20%, transparent);
}

.btnGreen {
    background-color: var(--bs-green);
    color: var(--bs-white) !important;
    border: 2px solid var(--bs-green);
    border-radius: 10px;
    padding: 0.5rem 0.7rem;
    transition: all 0.3s ease;
}

.btnGreen:hover {
    color: var(--bs-white) !important;
    box-shadow: 0 5px 10px color-mix(in srgb, var(--bs-green) 20%, transparent);
}

.btnWhite .left-svg,
.btnWhite .right-svg {
    width: 25px; 
    height: auto;
    transition: transform 0.3s ease, opacity 0.3s ease; 
    position: absolute; 
    top: 50%;
    transform: translateY(-50%);
}

.btnWhite .left-svg {
    left: 0;
    opacity: 0;
    transform: translate(-10px, -50%); 
}

.btnWhite .right-svg {
    right: 0.9rem; 
    opacity: 1;
    transform: translate(0, -50%); 
}

.btnWhite:hover .left-svg {
    opacity: 1;
    transform: translate(0, -50%); 
    left: 0.9rem; 
}

.btnWhite:hover .right-svg {
    opacity: 0;
    transform: translate(10px, -50%); 
    right: 0.9rem; 
}

.btnWhiteBorder {
    font-size: 13px;
    background-color: var(--bs-green);
    color: var(--bs-white) !important;
    border: 2px solid var(--bs-white);
    border-radius: 10px;
    padding: 0.5rem 1rem 0.5rem 1rem;
    transition: all 0.3s ease;
}

.btnWhiteBorder:hover {
    color: var(--bs-white) !important;
    box-shadow: 0 5px 10px color-mix(in srgb, var(--bs-white) 15%, transparent);
}

/*BUTTONS END*/


/*HEADER-1 START*/

.firstHeader .icon,
.secondHeader .icon,
.thirdHeader .icon,
.aboutUs .icon {
    background-color: color-mix(in srgb, var(--bs-green) 15%, transparent);
    width: 55px;
    height: 55px;
}

/*HEADER-1 END*/

/*IMPORTANT MESSAGES START*/

.important-messages .icon,
.meetUs .col-12 .icon,
.becomePartOfUs .icon  {
    background-color: color-mix(in srgb, var(--bs-orange) 15%, transparent);
    width: 55px;
    height: 55px;
}

.important-messages .cards,
.mission .cards {
    background-color: color-mix(in srgb, var(--bs-gray) 15%, transparent);
}

.important-messages .cards .row .col .card-item,
.specialties .cards .row .col .card-item,
.mission .cards .row .col .card-item {
    background-color: var(--bs-white);
}

.important-messages .cards .row .col .card-item .row .col .label {
    font-size: 15px;
    border-top-right-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
    width: fit-content;
    background-color: var(--bs-orange);
}

.important-messages .cards .row .col .card-item .row .col .date .image,
.currentNews .cards .row .col .card-item .row .col .date .image, 
.currentNews .cards .row .col .card-item .content .date .image,
.gallery .cards .row .col .card-item .content .date .image {
    width: 20px;
    height: 20px;
}

.important-messages .cards .row .col .card-item:hover .row .col .label {
    box-shadow: 0 5px 10px color-mix(in srgb, var(--bs-gray) 20%, transparent);
}

.currentNews .cards .row .col .card-item:hover {
    transform: scale(1.02);
    box-shadow: 0 5px 10px color-mix(in srgb, var(--bs-gray) 20%, transparent);
}

@keyframes shake-swing {
    0%   { transform: rotate(0deg); }
    10%  { transform: rotate(15deg); }
    20%  { transform: rotate(-15deg); }
    30%  { transform: rotate(0deg); }
    100% { transform: rotate(0deg); }
}

.important-messages .icon .icon-item,
.secondHeader .icon .icon-item {
    display: inline-block;
    animation: shake-swing 6s ease-in-out infinite;
    transform-origin: center center;
}
/*IMPORTANT MESSAGES END*/


/*CURRENT NEWS START*/

.currentNews .icon {
    background-color: color-mix(in srgb, var(--bs-orange) 15%, transparent);
    width: 55px;
    height: 55px;
}

.currentNews .cards .row .col .card-item,
.gallery .cards .row .col .card-item, 
.schoolAdmission .cards .row .col .card-item {
    background-color: var(--bs-white);
    transition: transform 0.3s ease-in-out;
}



.currentNews .cards .row .col .card-item .row .col .label {
    font-size: 15px;
    border-top-right-radius: 0.5rem;
    border-bottom-right-radius: 0.5rem;
    width: fit-content;
    background-color: var(--bs-green);
    transition: transform 0.3s ease-in-out;
}

.currentNews .cards .row .col .card-item .media,
.gallery .cards .row .col .card-item .media,
.schoolAdmission .cards .row .col .card-item .media {
    width: 100%;
    height: 150px;
    border-top-right-radius: 0.5rem;
    border-top-left-radius: 0.5rem;
}

.currentNews .cards .row .col .card-item .media .image,
.gallery .cards .row .col .card-item .media .image,
.schoolAdmission .cards .row .col .card-item .media .image {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;  
    filter: opacity(50%); 
    transition: all 0.3s ease;
}

.currentNews .cards .row .col .card-item .media .overlay,
.gallery .cards .row .col .card-item .media .overlay,
.schoolAdmission .cards .row .col .card-item .media .overlay {
    position: absolute;
    inset: 0;                
    pointer-events: none; 
}

.currentNews .cards .row .col .card-item:hover .media .image,
.gallery .cards .row .col .card-item:hover .media .image,
.schoolAdmission .cards .row .col .card-item:hover .media .image { 
    filter: opacity(100%);
}

.currentNews .cards .row .col .card-item,
.gallery .cards .row .col .card-item,
.schoolAdmission .cards .row .col .card-item {
    transition: transform 0.3s ease;
}
/*CURRENT NEWS END*/

/*SPECIALTIES START*/

.specialties .cards .row .col .card-item .icon,
.mission .cards .row .col .card-item .icon {
    background-color: color-mix(in srgb, var(--bs-green) 15%, transparent);
    width: 55px;
    height: 55px;
    transition: transform 0.3s ease !important;
}

.specialties .cards .row .col .card-item, 
.mission .cards .row .col .card-item,
.currentNews .cards .row .col .card-item,
.gallery .cards .row .col .card-item,
.important-messages .cards .row .col .card-item  {
    transition: transform 0.3s ease !important;
}

.specialties .cards .row .col .card-item:hover,
.mission .cards .row .col .card-item:hover,
.currentNews .cards .row .col .card-item:hover,
.gallery .cards .row .col .card-item:hover,
.important-messages .cards .row .col .card-item:hover  {
    transform: scale(1.03) !important;
}

.specialties .cards .row .col .card-item:hover .icon,
.mission .cards .row .col .card-item:hover .icon {
    transform: scale(1.1) !important;
}

/*SPECIALTIES END*/
.cards .row {
    align-items: stretch; 
}

.cards .row > .col {
    display: flex;        
}

.cards .row > .col .card-item {
    display: flex;        
    flex-direction: column;
    width: 100%;
    height: 100%;       
}

.specialties .cards .row .col .card-item, 
.currentNews .cards .row .col .card-item {
    color: var(--bs-black) !important;
    transition: color 0.3s ease;
}

.specialties .cards .row .col .card-item:hover .header,
.specialties .cards .row .col .card-item:focus .header,
.mission .cards .card-item:hover .header,
.currentNews .cards .row .col .card-item:hover .header,
.gallery .cards .row .col .card-item:hover .header {
    color: var(--bs-green) !important;
}

/*GALLERY*/
.gallery-section .single-gallery {
    background-color: color-mix(in srgb, var(--bs-gray) 15%, transparent);
    padding-top: 0.5rem;
    padding-bottom: calc(4px + 0.5rem);
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    border-radius: 0.5rem;
    border: 1px solid #D5D2D2;
    box-shadow: 0px 4px 16px 0px color-mix(in srgb, var(--bs-dark) 8%, transparent);
}

.gallery-section .gallery .col .rounded-4 {
    position: relative;
    aspect-ratio: 16 / 9;
    overflow: hidden;
}

.gallery-section .gallery .col .rounded-4 > img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

.gallery .card-item .square,
.schoolAdmission .card-item .square {
    width: 60px;
    height: 15px;
    background-color: var(--bs-green);
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
}
/*GALLERY*/

/*MEET US START*/

.meetUs .back-mask {
    position: absolute;
    inset: 0;                 
    z-index: 1;               
    pointer-events: none;
}

.meetUs .back-mask .image {
    width: 100%;
    height: 105%;
    object-fit: contain;      
    opacity: 1;
    transform:translate(-10%, -5%)            
}

.masked-image .image {
    object-fit: cover; 
    object-position: center;
}

/*MEET US END*/

.date .image {
    display: flex;
    align-items: center;
}

/*ABOUT US START*/

.aboutUs .icons .icon {
    background-color: color-mix(in srgb, var(--bs-green) 15%, transparent);
    width: 45px;
    height: 45px;
}

.aboutUs .icons .text .element {
    font-size: 14px;
}
/*ABOUT US END*/

/*OUR TEACHER START*/
.our-teachers .image {
    max-width: 120px;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    flex-shrink: 0;
}

.our-teachers .image .image-item {
    object-position: center;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.our-teachers .card-item .contact-icons .icons-item {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background-color: color-mix(in srgb, var(--bs-green) 15%, transparent);
    width: 35px;
    height: 35px;
}

.our-teachers .contact-icons .icons-item .item {
    width: 25px;
    height: 25px;
}

.our-teachers .contact-icons .icons-item:hover {
    box-shadow: 0 5px 10px color-mix(in srgb, var(--bs-green) 20%, transparent);
}

/*OUR TEACHERS END*/
.gallery-section .img-container {
    border-radius: 0.3rem;
}

.our-teachers .cards .my-slider .card-item .image .position-relative .icon-back-1 .image,
.our-teachers .cards .card-item .image .icon-back-1 .image {
    object-fit: cover !important;
}

.main-bg-color {
    background-color: var(--bs-green);
}

.main-bg-color:hover,
.main-bg-color:focus {
    background-color: color-mix(in srgb, var(--bs-green) 85%, black 15%);
    box-shadow: 0 4px 12px color-mix(in srgb, var(--bs-green) 20%, transparent);
}

.link {
    display: flex;
    flex-direction: column;
    gap: .6rem;
}


/*Table start*/

    .acms-table {
        border-collapse: separate;
        border-spacing: 0;
        background-color: var(--bs-white);
        border-radius: 0.75rem;
        overflow: hidden;
    }

    .acms-table thead th {
        background-color: var(--bs-green);
        color: var(--bs-white);
        font-weight: 600;
        letter-spacing: 0.2px;
        text-transform: uppercase;
        font-size: 0.85rem;
    }

    .acms-table tbody td {
        background-color: var(--bs-white);
        transition: background-color 0.2s ease, color 0.2s ease;
    }

    .acms-table td,
    .acms-table th {
        padding: 0.85rem 0.75rem;
        border-color: #dee2e6;
        vertical-align: middle;
    }

    .acms-table td:first-child,
    .acms-table th:first-child {
        font-weight: 600;
        width: 70px;
    }

    .table-responsive {
        border-radius: 0.75rem;
    }

/*Table end*/

.link {
    display: flex;
    flex-direction: column;
    margin-top: 1rem;
}

/*single image section start*/
.single-image-section {
    width: 100%;
    height: 50vh;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.single-image-section .image {
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    display: block;
    object-fit: cover;
    object-position: center;
    border-radius: 0.5rem;
}
/*single image section end*/

@media (min-width: 992px) {
    .navbar .dropdown:hover > .dropdown-menu {
        display: block;
    }
}

@media (max-width: 1200px) {
    .nav { 
        display: none !important; 
    }
}

@media (max-width: 991.98px) {
    .aside-col, 
    .nav { 
        display: none !important; 
    }

    .col-12.col-md-9 { 
        flex: 0 0 100%; 
        max-width: 100%; 
    }
}