/*==================================================
    TRUSTED BY / LOGO MARQUEE SECTION
==================================================*/
.yp-trusted-heading {
    text-align: center;
    padding: 20px 20px 32px;
    background: radial-gradient(ellipse at 50% 0%, rgba(227, 6, 19, .08), transparent 60%),
        radial-gradient(ellipse at 50% 100%, rgba(20, 20, 26, .04), transparent 70%);
    font-size: 35px;
    font-weight: 700;
    letter-spacing: 4px;
    text-transform: capitalize;
    color: #14141a;
}

.yp-trusted-heading strong {
    color: #E30613;
    font-weight: 800;
}

.yp-marquee {
    overflow: hidden;
    width: 100%;

    -webkit-mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
    mask-image: linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);
}

.yp-marquee-track {
    display: flex;
    width: max-content;
    animation: marquee 60s linear infinite;
}

.yp-marquee:hover .yp-marquee-track {
    animation-play-state: paused;
}

.yp-marquee-item {
    margin-right: 20px;
    flex: 0 0 180px;
    width: 180px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.yp-marquee-item img {
    max-width: 150px;
    max-height: 70px;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
    transition: all .3s ease;
}

.yp-marquee-item img:hover {
    transform: translateY(-3px) scale(1.05);
}

@keyframes marquee {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(calc(-1 * var(--scroll-width)));
    }
}

@media (max-width: 768px) {
    .yp-marquee-item {
        flex-basis: 120px;
        width: 120px;
        height: 60px;
    }

    .yp-marquee-item img {
        max-width: 95px;
        max-height: 40px;
    }
}

/*==================================================
    TRAINING SOLUTIONS SECTION
==================================================*/

.training-section {
    padding: 60px 0;
    background: #fff;
}

.text-accent {
    color: #e30613;
}

.training-tabs {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}



.training-tabs .nav-link.active,
.training-tabs .nav-link:hover {
    border-color: #fff;
    color: #fff;
    background: #000000;
}

.training-card {
    border: 1px solid rgba(20, 20, 26, .1);
    border-radius: 20px;padding: 20px;
    box-shadow: 0 24px 60px rgba(20, 20, 26, .1);
}


.tabsinncontent h3 {

        font-weight: 700 !important;
        font-size: 48px;
        color: #000;
        margin: 0 0 10px 0;
        text-align: left;

}
.tabsinncontent p {
    font-size: 20px !important;
        color: #6c757d;
        padding: 0;
        line-height: 32px;
        font-family: Raleway;
        margin: 0 0 10px 0;
        text-align: left;
}


.tabsinn {
    display: flex;
    gap: 40px;

}


.industries-topbar .section-title.text-lg-start {
    text-align: left;
}







.mobile-next {
    position: absolute;
    right: 16px;
    bottom: 16px;
    width: 48px;
    height: 48px;
    border: 0;
    border-radius: 50%;
    display: none;
    align-items: center;
    justify-content: center;
    background: #e30613;
    color: #fff;
}

.feature-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
    padding: 0;
    margin: 24px 0 0;
    list-style: none;
}

.feature-list li {
    display: flex;
        align-items: center;
        gap: 10px;
        border: 1px solid rgba(20, 20, 26, .1);
        border-radius: 12px;
        padding: 12px 14px;
        background: #fff;
        font-weight: 700;
        color: rgba(20, 20, 26, .75);
        font-family: Raleway;
        font-size: 16px;
}

.feature-list i {
    color: #f52323;
}

/* ===========================
   Tablet (≤991px)
=========================== */
@media (max-width: 991px) {

    .training-section {
        padding: 50px 0;
    }

    .training-card {
        padding: 20px;
    }

    .training-tabs {
        flex-wrap: nowrap;
        justify-content: flex-start;
        overflow-x: auto;
        gap: 10px;
        padding-bottom: 10px;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }

    .training-tabs::-webkit-scrollbar {
        display: none;
    }

  

    /* Video */
    .video-frame {
        aspect-ratio: 9/16;
        border-radius: 14px;

    }

    .video-frame video {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    /* Content */
    .training-card h3 {
        font-size: 28px;
        margin-top: 25px;
    }

    .training-card p {
        font-size: 15px;
        line-height: 1.7;
    }

    .feature-list {
        gap: 10px;
    }

    .feature-list li {
        font-size: 14px;
        padding: 12px;
    }
}


/* Mobile Only */
@media (max-width: 767px) {

    .tabsinn {
        display: flex;
        flex-direction: column;
        gap: 0;
    }

    .video-frame {
        width: 100%;
        aspect-ratio: 16/16;
        margin-bottom: 12px;

    }

    .tabsinncontent {
        width: 100%;
        margin: 0;
        padding: 0;
    }

    .tabsinncontent h3 {
        font-size: 24px;
        margin: 0 0 12px !important;
        line-height: 1.2;
    }

    .tabsinncontent p {
        margin: 0;
        font-size: 15px;
        line-height: 1.6;
    }

    .feature-list {
        grid-template-columns: 1fr;
        margin-top: 16px;
    }
}

/*==========================================
  INDUSTRIES SECTION
==========================================*/

.industries-section {
    position: relative;
    padding: 60px 0 40px;
    background:
        linear-gradient(180deg, #ffffff 0%, #f5f5f7 48%, #ffffff 100%);
    overflow: hidden;
}

.industries-section::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(90deg, rgba(227, 6, 19, .05) 0 1px, transparent 1px 100%),
        linear-gradient(180deg, rgba(20, 20, 26, .05) 0 1px, transparent 1px 100%);
    background-size: 72px 72px;
    opacity: .45;
}

.industries-section .container {
    position: relative;
    z-index: 2;
}

.industries-topbar {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
    gap: 46px;
    align-items: end;
    margin-bottom: 42px;
}

.section-title {
    max-width: 760px;
    margin: 0;
}

.section-title span {
    display: inline-flex;
    align-items: center;
    padding: 8px 16px;
    border: 1px solid rgba(227, 6, 19, .22);
    border-radius: 999px;
    background: #fff;
    color: #E30613;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1.4px;font-family: Raleway;
    text-transform: uppercase;
    box-shadow: 0 10px 28px rgba(20, 20, 26, .06);
}

.section-title h2 {

    margin: 20px 0 18px;
    color: #14141a;
    font-size: clamp(32px, 4vw, 48px);;
    font-weight: 700;
    line-height: 1.05;
    letter-spacing: 0;font-family: Raleway;
}

.section-title p {

    color: rgba(20, 20, 26, .66);
    font-size: 16px;
    line-height: 1.8;
    margin: 0;font-family: Raleway;
}

.industries-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;font-family: Raleway;
        text-align: left;
}

.industry-stat {
    min-height: 112px;
    padding: 20px 18px;
    border: 1px solid rgba(20, 20, 26, .08);
    border-radius: 8px;
    background: rgba(255, 255, 255, .82);
    box-shadow: 0 22px 48px -30px rgba(20, 20, 26, .28);
}

.industry-stat strong {
    display: block;
    color: #14141a;
    font-size: 30px;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 10px;
}

.industry-stat span {
    display: block;
        color: rgba(20, 20, 26, .58);
        font-size: 14px;
        font-weight: 600;
        line-height: 1.35;
}

.industries-slider-shell {
    position: relative;
}

.industriesSlider {
    overflow: visible;
    padding: 6px 0 18px;
}

.industriesSlider .swiper-wrapper {
    align-items: stretch;
}

.industriesSlider .swiper-slide {
    display: flex;
    height: auto;
}

.industries-controls {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 28px;
}

.industries-arrows {
    display: flex;
    gap: 10px;
}

.industries-button-prev,
.industries-button-next {
    position: static;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 46px;
    height: 46px;
    margin: 0;
    border: 1px solid rgba(20, 20, 26, .12);
    border-radius: 50%;
    background: #fff;
    color: #14141a;
    box-shadow: 0 18px 38px -24px rgba(20, 20, 26, .32);
    cursor: pointer;
    transition: background .25s ease, border-color .25s ease, color .25s ease, transform .25s ease;
}

.industries-button-prev::after,
.industries-button-next::after {
    content: none;
}

.industries-button-prev:hover,
.industries-button-next:hover,
.industries-button-prev:focus-visible,
.industries-button-next:focus-visible {
    border-color: #E30613;
    background: #E30613;
    color: #fff;
    transform: translateY(-2px);
}

.industries-controls .swiper-pagination11 {
    position: relative;
    inset: auto;
    width: auto;
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
}

.industries-controls .swiper-pagination-bullet {
    width: 8px;
    height: 8px;
    margin: 0 !important;
    border-radius: 999px;
    background: rgba(20, 20, 26, .18);
    opacity: 1;
    transition: width .25s ease, background .25s ease;
}

.industries-controls .swiper-pagination-bullet-active {
    width: 28px;
    background: #E30613;
}

.industry-card {
    position: relative;
    width: 100%;
    min-height: 450px;
    border: 1px solid rgba(20, 20, 26, .08);
    border-radius: 8px;
    background: #fff;
    overflow: hidden;
    box-shadow: 0 24px 54px -34px rgba(20, 20, 26, .32);
    transition: transform .35s cubic-bezier(.2, .7, .3, 1), box-shadow .35s ease, border-color .35s ease;font-family: Raleway;
        text-align: left;
}

.industry-card:hover,
.industry-card:focus-within,
.industry-card.active {
    transform: translateY(-8px);
    border-color: rgba(227, 6, 19, .34);
    box-shadow: 0 34px 70px -36px rgba(20, 20, 26, .42), 0 0 0 1px rgba(227, 6, 19, .12);
}

.industry-image {
    position: absolute;
    inset: 0;
    overflow: hidden;
    background: #15151a;
}

.industry-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transform: scale(1.01);
    filter: saturate(1.02) contrast(1.02);
    transition: transform .7s cubic-bezier(.2, .7, .3, 1), filter .7s ease;
}

.industry-card:hover .industry-image img,
.industry-card:focus-within .industry-image img,
.industry-card.active .industry-image img {
    transform: scale(1.08);
    filter: saturate(1.1) contrast(1.04) brightness(.78);
}

.industry-image::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(to top,
            rgba(0, 0, 0, .88) 0%,
            rgba(0, 0, 0, .48) 42%,
            rgba(0, 0, 0, .08) 76%);
    transition: background .35s ease;
}

.industry-card:hover .industry-image::before,
.industry-card:focus-within .industry-image::before,
.industry-card.active .industry-image::before {
    background: linear-gradient(to top,
            rgba(0, 0, 0, .94) 0%,
            rgba(0, 0, 0, .72) 54%,
            rgba(0, 0, 0, .15) 86%);
}

.industry-index {
    position: absolute;
    top: 18px;
    left: 18px;
    z-index: 3;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 44px;
    font-size: 16px;
    padding: 7px 12px;
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 999px;
    background: rgba(0, 0, 0, .42);
    color: rgba(255, 255, 255, .92);

    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
}

.industry-info {
    position: absolute;
    left: 22px;
    right: 22px;
    bottom: 28px;
    z-index: 3;
    color: #fff;
    transition: transform .4s cubic-bezier(.2, .7, .3, 1), opacity .28s ease;
}

.industry-info h4 {
    margin: 0 0 8px;
    font-size: 26px;
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: 0;
}

.industry-info span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #ffc1c5;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.industry-info span::before {
    content: "";
    width: 22px;
    height: 2px;
    border-radius: 999px;
    background: #E30613;
}

.industry-card:hover .industry-info,
.industry-card:focus-within .industry-info,
.industry-card.active .industry-info {
    opacity: 0;
    transform: translateY(-18px);
}

.industry-bottom {
    position: static;
}

.industry-toggle {
    position: absolute;
    top: 18px;
    right: 18px;
    z-index: 5;
    width: 42px;
    height: 42px;
    padding: 0;
    border: 1px solid rgba(255, 255, 255, .2);
    border-radius: 50%;
    background: rgba(0, 0, 0, .38);
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    transition: background .25s ease, border-color .25s ease, transform .25s ease;
}

.industry-toggle::before {
    content: none;
}

.industry-toggle i {
    font-size: 13px;
    transition: transform .3s ease;
}

.industry-toggle:hover,
.industry-toggle:focus-visible,
.industry-card.active .industry-toggle {
    border-color: #E30613;
    background: #E30613;
}

.industry-card:hover .industry-toggle i,
.industry-card:focus-within .industry-toggle i,
.industry-card.active .industry-toggle i {
    transform: rotate(180deg);
}

.industry-details {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 4;
    height: auto;
    max-height: calc(100% - 96px);
    padding: 28px 22px 24px;
    background: linear-gradient(180deg, rgba(16, 16, 20, .58), rgba(16, 16, 20, .96));
    border-top: 1px solid rgba(255, 255, 255, .14);
    transform: translateY(calc(100% - 22px));
    opacity: 0;
    overflow-y: auto;
    pointer-events: none;
    transition: transform .42s cubic-bezier(.2, .7, .3, 1), opacity .28s ease;
}

.industry-card:hover .industry-details,
.industry-card:focus-within .industry-details,
.industry-card.active .industry-details {
    transform: translateY(0);
    opacity: 1;
    pointer-events: auto;
}

.industry-details p {
    margin: 0 0 18px;
    color: rgba(255, 255, 255, .82);
    font-size: 14px;
    line-height: 1.65;
    overflow: visible;
}

.industry-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-width: 138px;
    min-height: 42px;
    padding: 0 18px;
    border-radius: 999px;
    background: #E30613;
    color: #fff;
    text-decoration: none;
    font-size: 13px;
    font-weight: 800;
    transition: background .25s ease, transform .25s ease;
}

.industry-btn:hover,
.industry-btn:focus-visible {
    background: #c00510;
    color: #fff;
    transform: translateY(-2px);
}

.industry-btn i {
    transition: transform .25s ease;
}

.industry-btn:hover i,
.industry-btn:focus-visible i {
    transform: translateX(3px);
}

@media(max-width:1199px) {
    .industries-topbar {
        grid-template-columns: 1fr;
        gap: 28px;
    }

    .industry-card {
        min-height: 390px;
    }
}

@media(max-width:991px) {
    .industries-section {
        padding: 88px 0 82px;
    }

    .industries-stats {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .industry-card {
        min-height: 370px;
    }
}

@media(max-width:767px) {
    .industries-section {
        padding: 72px 0;
    }

    .industries-topbar {
        margin-bottom: 32px;
    }

    .section-title p {
        font-size: 15.5px;
    }

    .industries-stats {
        grid-template-columns: 1fr;
    }

    .industry-stat {
        min-height: auto;
        padding: 16px 18px;
    }

    .industry-card {
        min-height: 410px;
    }

    .industry-info {
        left: 18px;
        right: 18px;
    }

    .industry-info h4 {
        font-size: 24px;
    }

    .industry-card:hover .industry-info,
    .industry-card:focus-within .industry-info,
    .industry-card.active .industry-info {
        opacity: 0;
        transform: translateY(-18px);
    }

    .industry-details {
        max-height: calc(100% - 84px);
        padding: 24px 18px 22px;
    }

    .industries-controls {
        align-items: flex-start;
        flex-direction: column-reverse;
    }
}

.tabsinn {
    display: flex;
    gap: 40px;
    /* align-items: center; */
}











   /*==================================================
        TRAINING SOLUTIONS SECTION
    ==================================================*/

   .training-section {
       padding: 60px 0;
       background: #fff;
   }

   .text-accent {
       color: #e30613;
   }

   .training-heading {
       font-size: 2.5rem;
       font-weight: 700;
   }

   .training-lead {
       font-size: 1.1rem;
   }

   .training-tabs {
       display: flex;
       flex-wrap: wrap;
       justify-content: center;
       gap: 12px;
       list-style: none;
   }

   /* hide the radios completely - they drive the CSS-only tab logic */
   .tab-radio {
       position: absolute;
       opacity: 0;
       pointer-events: none;
       width: 0;
       height: 0;
   }

   .training-tabs .nav-link {
    cursor: pointer;
        user-select: none;
        border: 1px solid rgba(20, 20, 26, .1);
        border-radius: 50rem;
        color: #14141a;
        background: #fff;
        font-weight: 700;
        padding: 10px 20px;
        display: flex;
        gap: 11px;
        font-size: 16px;
        font-family: Raleway;
   }

   .training-tabs .nav-link:hover {
       border-color: #fff;
       color: #fff;
       background: #000000;
   }

   ul.nav.training-tabs.mb-4 {
       margin: 0 0 20px 0;
   }

   

   .video-frame {
       position: relative;
       overflow: hidden;
       border-radius: 16px;
       width: 100%;
   }

   .video-frame video {
        width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
            top: 0;
            left: 0;
            z-index: 1;
            border-radius: 18px;
   }

   .mobile-next {
       position: absolute;
       right: 16px;
       bottom: 16px;
       width: 48px;
       height: 48px;
       border: 0;
       border-radius: 50%;
       display: none;
       align-items: center;
       justify-content: center;
       background: #e30613;
       color: #fff;
       cursor: pointer;
       margin: 0;
   }

   .feature-list {
       display: grid;
       grid-template-columns: repeat(2, minmax(0, 1fr));
       gap: 12px;
       padding: 0;
       margin: 24px 0 0;
       list-style: none;
   }

   .feature-list li {
        display: flex;
            align-items: center;
            gap: 4px;
            border: 1px solid rgba(20, 20, 26, .1);
            border-radius: 12px;
            padding: 12px 12px;
            background: #fff;
            font-weight: 700;
            color: rgba(20, 20, 26, .75);
   }

   .feature-list i {
       color: #f52323;
   }

   /* tab panes hidden by default - pure CSS, no bootstrap JS */
   .tab-pane {
       display: none;
   }

  

   .tabsinn .video-frame {
       flex: 0 0 40%;
       max-width: 40%;
   }

   .tabsinncontent {
       flex: 1;
   }

   /* ================================================
       CSS-ONLY TAB SWITCHING 
       Each radio, when checked, reveals its matching
       pane and highlights its matching label.
    ================================================= */
   #tab-fireSafety:checked~.training-tabs label[for="tab-fireSafety"],
   #tab-pharma:checked~.training-tabs label[for="tab-pharma"],
   #tab-automobile:checked~.training-tabs label[for="tab-automobile"],
   #tab-aviation:checked~.training-tabs label[for="tab-aviation"],
   #tab-oilGas:checked~.training-tabs label[for="tab-oilGas"],
   #tab-mining:checked~.training-tabs label[for="tab-mining"],
   #tab-education:checked~.training-tabs label[for="tab-education"],
   #tab-defence:checked~.training-tabs label[for="tab-defence"] {
       border-color: #fff;
       color: #fff;
       background: #000000;
   }

   #tab-fireSafety:checked~.training-card #fireSafety-pane,
   #tab-pharma:checked~.training-card #pharma-pane,
   #tab-automobile:checked~.training-card #automobile-pane,
   #tab-aviation:checked~.training-card #aviation-pane,
   #tab-oilGas:checked~.training-card #oilGas-pane,
   #tab-mining:checked~.training-card #mining-pane,
   #tab-education:checked~.training-card #education-pane,
   #tab-defence:checked~.training-card #defence-pane {
       display: block;
   }

   /* ===========================
       Tablet (≤991px)
    =========================== */
   @media (max-width: 991px) {

       .training-section {
           padding: 50px 0;
       }

       .training-card {
           padding: 20px;
       }

       .training-tabs {
           flex-wrap: nowrap;
           justify-content: flex-start;
           overflow-x: auto;
           gap: 10px;
           padding-bottom: 10px;
           scrollbar-width: none;
           -ms-overflow-style: none;
       }

       .training-tabs::-webkit-scrollbar {
           display: none;
       }

       .training-tabs .nav-link {
           white-space: nowrap;
           flex: 0 0 auto;
           padding: 10px 18px;
           font-size: 14px;
       }

       .video-frame {
           aspect-ratio: 9/16;
           border-radius: 14px;
       }

       .video-frame video {
           width: 100%;
           height: 100%;
           object-fit: cover;
       }

       .training-card h3 {
           font-size: 28px;
           margin-top: 25px;
       }

       .training-card p {
           font-size: 15px;
           line-height: 1.7;
       }

       .feature-list {
           gap: 10px;
       }

       .feature-list li {
           font-size: 14px;
           padding: 12px;
       }
   }

   /* Mobile Only */
   @media (max-width: 767px) {

    .training-lead {
            padding: 0 3% !important;
            line-height: 27px!important;
            margin: 0 0 20px 0!important;
        }

       .tabsinn {
           display: flex;
           flex-direction: column;
           gap: 0;
       }

       .tabsinn .video-frame,
       .tabsinn .tabsinncontent {
           flex: 0 0 100%;
           max-width: 100%;
       }

       .video-frame {
           width: 100%;
           aspect-ratio: 16/16;
           margin-bottom: 12px;
       }

       .mobile-next {
           display: flex;
       }

       .tabsinncontent {
           width: 100%;
           margin: 0;
           padding: 0;
       }

       .tabsinncontent h3 {
           font-size: 24px;
           margin: 0 0 12px !important;
           line-height: 1.2;
       }

       .tabsinncontent p {
           margin: 0;
           font-size: 15px;
           line-height: 1.6;
       }

       .feature-list {
           grid-template-columns: 1fr;
           margin-top: 16px;
       }
   }


   .tabsinn video {
       position: inherit;
       transform: inherit;
   }



   h2.training-heading {
       font-weight: 700 !important;
       font-size: 48px;
       color: #000;margin: 0 0 10px 0;line-height: 50px;
   }


   .training-lead {
       font-size: 20px;
       color: #6c757d;
       padding: 0 23%;
       display: inline-block;
       line-height: 27px;
     
     
     
       font-family: Raleway;margin: 0 0 10px 0;
   }



   .swiper-pagination11 {
       position: relative !important;
       margin-top: 20px;
       text-align: center;
   }

   .swiper-pagination11 .swiper-pagination-bullet {
       width: 10px;
       height: 10px;
       background: #000;
       opacity: 1;
   }

   .swiper-pagination11 .swiper-pagination-bullet-active {
       background: #ff6600;
   }