/*=============================================================
    eSec Solutions
    Responsive Stylesheet
==============================================================*/
/*=============================================================
    Large Tablets / Small Laptops
==============================================================*/

@media(max-width:1199px) {

    .carousel-caption {
        width: 560px;
        bottom: 15%;
    }

    .carousel-caption h1 {
        font-size: 56px;
    }

    .slider-image {
        height: 650px;
    }

}


/*=============================================================
    Tablets
==============================================================*/

@media(max-width:991px) {

    .section-padding {
        padding: 70px 0;
    }

    .section-title {
        font-size: 36px;
    }

    .navbar-collapse {
        background: #ffffff;
        padding: 20px;
        margin-top: 15px;
        border-radius: 16px;
        box-shadow: var(--shadow);
    }

    .nav-link {
        margin-left: 0;
        margin-bottom: 12px;
    }

    .slider-image {
        height: 620px;
    }

    .carousel-caption {
        width: 80%;
        left: 7%;
        bottom: 14%;
    }

    .carousel-caption h1 {
        font-size: 48px;
    }

    .carousel-caption p {
        font-size: 18px;
    }

    .about-preview img,
    .why-us img {
        margin-bottom: 35px;
    }

    .counter-box {
        margin-bottom: 25px;
    }

    .testimonial-card {
        margin-bottom: 25px;
    }

}


/*=============================================================
    Mobile Landscape
==============================================================*/

@media(max-width:767px) {

    .navbar-brand {
        font-size: 26px;
    }

    .hero-slider {
        margin-top: 76px;
    }

    .slider-image {
        height: 560px;
    }

    .carousel-caption {
        width: 88%;
        left: 6%;
        bottom: 12%;
    }

    .hero-badge {
        font-size: 13px;
        padding: 8px 18px;
    }

    .carousel-caption h1 {
        font-size: 38px;
    }

    .carousel-caption p {
        font-size: 16px;
        line-height: 1.6;
    }

    .hero-feature {
        gap: 15px;
    }

    .hero-feature div {
        font-size: 15px;
    }

    .section-title {
        font-size: 31px;
    }

    .section-description {
        font-size: 16px;
    }

    .cta-section h2 {
        font-size: 34px;
    }

}


/*=============================================================
    Small Mobile
==============================================================*/

@media(max-width:575px) {

    .slider-image {
        height: 520px;
    }

    .carousel-caption h1 {
        font-size: 32px;
    }

    .carousel-caption p {
        font-size: 15px;
    }

    .hero-feature {
        display: none;
    }

    .btn-primary,
    .btn-outline-primary {
        padding: 12px 26px;
        font-size: 15px;
    }

    .section-padding {
        padding: 60px 0;
    }

    .section-title {
        font-size: 28px;
    }

    .service-card,
    .industry-card,
    .testimonial-card {
        padding: 30px 22px;
    }

    .counter {
        font-size: 44px;
    }

    .footer {
        text-align: center;
    }

    .social-icons {
        justify-content: center;
    }

}

/*=============================================================
    MOBILE MEGA MENU
==============================================================*/

@media(max-width:991px) {

    .mega-dropdown {
        position: static;
    }

    .mega-dropdown:hover>.mega-menu,
    .mega-dropdown.open>.mega-menu {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translateX(-50%) translateY(0);
    }

    .mega-menu {
        position: static;
        display: none;
        width: 100%;
        max-height: none;
        opacity: 1;
        visibility: visible;
        transform: none;
        padding: 20px 15px;
        box-shadow: none;
        border-radius: 18px;
    }

    .mega-dropdown.mobile-open .mega-menu {
        display: block;
    }

    .mega-title {
        font-size: 20px;
        margin-bottom: 20px;
    }

    .mega-title i {
        font-size: 24px;
    }

    .mega-item {
        gap: 14px;
        padding: 12px;
        margin-bottom: 10px;
    }

    .mega-item>i {
        width: 48px;
        height: 48px;
        min-width: 48px;
        font-size: 20px;
        border-radius: 14px;
    }

    .mega-item h6 {
        font-size: 16px;
    }

    .mega-item span {
        font-size: 13px;
    }

}

@media(max-width:767px) {

    .catalog-card,
    .learning-path-card {
        padding: 28px 24px;
    }

    .learning-path-card h3 {
        font-size: 22px;
    }

}

@media(max-width:1199px) {

    .training-process-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

}

@media(max-width:767px) {

    .training-process-grid {
        grid-template-columns: 1fr;
    }

    .training-process-card {
        padding: 32px 24px;
    }

}

@media(max-width:991px) {

    .training-menu-layout {
        display: block;
    }

    .training-category-panel {
        border-radius: 18px;
        padding: 12px;
    }

    .training-category-btn {
        border-radius: 12px;
        margin-bottom: 6px;
    }

    .training-content-panel {
        padding: 24px 12px;
    }

    .training-panel {
        display: none;
    }

    .training-panel.active {
        display: block;
    }

}
/*=============================================================
    MOBILE TRAINING MEGA MENU
==============================================================*/
@media(max-width:991px){

    .gicsp-menu-highlights{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

}

@media(max-width:575px){

    .gicsp-menu-intro{
        display:block;
        padding:20px;
    }

    .gicsp-menu-icon{
        margin-bottom:17px;
    }

    .gicsp-menu-highlights{
        grid-template-columns:1fr;
    }

    .gicsp-menu-actions{
        flex-direction:column;
    }

    .gicsp-menu-actions .btn{
        width:100%;
    }

}

@media(max-width:991px){

    .navbar-collapse{
        max-height:calc(100vh - 110px);
        overflow-y:auto;
    }

    .mega-dropdown{
        position:relative;
        width:100%;
    }

    .mega-menu{
        position:static;
        width:100%;
        max-height:none;
        display:none;
        opacity:1;
        visibility:visible;
        pointer-events:auto;
        transform:none;
        padding:0;
        margin-top:8px;
        border-radius:18px;
        box-shadow:none;
        overflow:hidden;
    }

    .mega-dropdown.mobile-open > .mega-menu{
        display:block;
    }

    .training-menu-layout{
        display:block;
        min-height:auto;
    }

    .training-category-panel{
        padding:12px;
        border-radius:16px 16px 0 0;
    }

    .training-category-heading{
        padding:14px 16px;
    }

    .training-category-btn{
        padding:13px 15px;
        border-radius:10px;
        margin-bottom:5px;
    }

    .training-content-panel{
        padding:22px 14px;
    }

    .training-panel-header{
        display:block;
        margin-bottom:20px;
    }

    .training-panel-header h3{
        font-size:22px;
    }

    .training-view-link{
        display:inline-flex;
        margin-top:12px;
    }

    .training-menu-card{
        padding:15px;
    }

    .training-mega-footer{
        display:block;
        padding:20px 15px;
    }

    .training-mega-footer .btn{
        width:100%;
        margin-top:15px;
    }

}
@media(max-width:991px){

    .training-final-cta-box{
        grid-template-columns:1fr;
        padding:45px 35px;
    }

    .training-cta-stats{
        grid-template-columns:repeat(3, minmax(0,1fr));
    }

}

@media(max-width:767px){

    .training-final-cta{
        padding:65px 0;
    }

    .training-final-cta-box{
        padding:38px 24px;
        border-radius:24px;
    }

    .training-final-cta h2{
        font-size:32px;
    }

    .training-cta-actions{
        flex-direction:column;
    }

    .training-cta-actions .btn{
        width:100%;
    }

    .training-cta-stats{
        grid-template-columns:1fr;
    }

}

/*=============================================================
    TRAINING DETAILS PAGE
==============================================================*/
@media(max-width:991px){

    .course-details-hero h1{
        font-size:44px;
    }

    .course-enrollment-card{
        margin-top:20px;
    }

    .course-details-sidebar{
        position:static;
        display:flex;
        overflow-x:auto;
        gap:8px;
        margin-bottom:15px;
    }

    .course-details-sidebar a{
        min-width:max-content;
        margin:0;
    }

    .course-skills-grid,
    .course-audience-grid,
    .course-deliverables-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

}

@media(max-width:575px){

    .course-details-hero{
        padding:145px 0 70px;
    }

    .course-details-hero h1{
        font-size:34px;
    }

    .course-details-meta{
        grid-template-columns:1fr;
    }

    .course-enrollment-card{
        padding:27px 22px;
    }

    .course-detail-content h2{
        font-size:28px;
    }

    .course-skills-grid,
    .course-audience-grid,
    .course-deliverables-grid{
        grid-template-columns:1fr;
    }

    .course-highlight-box{
        display:block;
    }

    .course-highlight-box > i{
        margin-bottom:15px;
    }

}

@media(max-width:991px){

    .mvv-feature-card{
        display:block;
    }

    .mvv-feature-icon{
        margin-bottom:20px;
    }

    .why-premium-img{
        min-height:auto;
    }

}

@media(max-width:575px){

    .mvv-feature-card,
    .value-card{
        padding:27px 23px;
    }

    .mvv-feature-content h3{
        font-size:24px;
    }

    .core-values-heading h3{
        font-size:29px;
    }

    .why-image-badge{
        position:relative;
        left:auto;
        right:auto;
        bottom:auto;
        margin-top:15px;
    }

}

@media(max-width:991px){

    .services-popup-header{
        align-items:flex-start;
    }

    .dynamic-service-hero h1,
    .services-main-hero h1{
        font-size:44px;
    }

    .dynamic-service-sidebar{
        position:static;
        display:flex;
        gap:8px;
        overflow-x:auto;
        margin-bottom:20px;
    }

    .dynamic-service-sidebar a{
        min-width:max-content;
        margin:0;
    }

}

@media(max-width:767px){

    .services-popup-header{
        display:block;
    }

    .services-view-all{
        margin-top:15px;
    }

    .dynamic-service-hero h1,
    .services-main-hero h1{
        font-size:34px;
    }

    .dynamic-benefits-grid,
    .dynamic-approach-grid,
    .dynamic-deliverables-grid{
        grid-template-columns:1fr;
    }

    .dynamic-engagement-box{
        display:block;
        padding:32px 24px;
    }

    .dynamic-engagement-box .btn{
        width:100%;
        margin-top:24px;
    }

}

@media(max-width:991px){

    .service-product-hero h1{
        font-size:44px;
    }

    .service-enquiry-card{
        position:static;
    }

    .service-hero-features{
        grid-template-columns:1fr;
    }

    .service-benefit-cards{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .service-deliverable-cards{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .service-product-cta-box{
        display:block;
    }

    .service-product-cta-box .btn{
        margin-top:25px;
    }

}

@media(max-width:575px){

    .service-product-hero{
        padding:135px 0 65px;
    }

    .service-product-hero h1{
        font-size:34px;
    }

    .service-benefit-cards,
    .service-scope-grid,
    .service-deliverable-cards{
        grid-template-columns:1fr;
    }

    .service-methodology-timeline::before{
        display:none;
    }

    .service-methodology-timeline article{
        grid-template-columns:1fr;
    }

    .service-methodology-number{
        width:58px;
        height:58px;
    }

    .service-product-cta-box{
        padding:34px 24px;
    }

    .service-product-cta-box h2{
        font-size:28px;
    }

    .service-product-cta-box .btn{
        width:100%;
    }

}