.elementor-10239 .elementor-element.elementor-element-56ab6343{--display:flex;--min-height:550px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--background-transition:0.3s;--overlay-opacity:0.5;overflow:visible;}.elementor-10239 .elementor-element.elementor-element-56ab6343::before, .elementor-10239 .elementor-element.elementor-element-56ab6343 > .elementor-background-video-container::before, .elementor-10239 .elementor-element.elementor-element-56ab6343 > .e-con-inner > .elementor-background-video-container::before, .elementor-10239 .elementor-element.elementor-element-56ab6343 > .elementor-background-slideshow::before, .elementor-10239 .elementor-element.elementor-element-56ab6343 > .e-con-inner > .elementor-background-slideshow::before, .elementor-10239 .elementor-element.elementor-element-56ab6343 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';background-color:#455772;}.elementor-10239 .elementor-element.elementor-element-56ab6343, .elementor-10239 .elementor-element.elementor-element-56ab6343::before{--border-transition:0.3s;}.elementor-10239 .elementor-element.elementor-element-634a58f2 .elementor-heading-title{color:#FFFFFF;font-family:"Manrope", Sans-serif;font-size:60px;font-weight:800;line-height:1.1em;letter-spacing:-0.03em;}.elementor-10239 .elementor-element.elementor-element-624c7b28{width:var( --container-widget-width, 75% );max-width:75%;--container-widget-width:75%;--container-widget-flex-grow:0;text-align:center;color:#FFFFFF;font-family:"DM Sans", Sans-serif;font-size:18px;font-weight:400;font-style:italic;line-height:1.6em;}.elementor-10239 .elementor-element.elementor-element-624c7b28.elementor-element{--align-self:center;}.elementor-10239 .elementor-element.elementor-element-39d10565{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--background-transition:0.3s;overflow:visible;}.elementor-10239 .elementor-element.elementor-element-6aa3fcb > .elementor-widget-container{margin:-50px 0px 0px 0px;}.elementor-10239 .elementor-element.elementor-element-26650504{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--background-transition:0.3s;--margin-top:-50px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;overflow:visible;}.elementor-10239 .elementor-element.elementor-element-d76576d > .elementor-widget-container{margin:-50px 0px -50px 0px;}.elementor-10239 .elementor-element.elementor-element-38d2b842{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--background-transition:0.3s;overflow:visible;}.elementor-10239 .elementor-element.elementor-element-610e054c > .elementor-widget-container{margin:-50px 0px -50px 0px;}.elementor-10239 .elementor-element.elementor-element-1289d432{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--background-transition:0.3s;overflow:visible;}.elementor-10239 .elementor-element.elementor-element-384f266c > .elementor-widget-container{margin:-100px 0px -100px 0px;}.elementor-10239 .elementor-element.elementor-element-22790008{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--background-transition:0.3s;overflow:visible;}.elementor-10239 .elementor-element.elementor-element-3902f671{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--background-transition:0.3s;overflow:visible;}.elementor-10239 .elementor-element.elementor-element-4d67d58e > .elementor-widget-container{margin:-50px 0px -50px 0px;}.elementor-10239 .elementor-element.elementor-element-3cfae790{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--background-transition:0.3s;overflow:visible;}@media(max-width:1024px){.elementor-10239 .elementor-element.elementor-element-634a58f2 .elementor-heading-title{font-size:46px;}.elementor-10239 .elementor-element.elementor-element-624c7b28{font-size:18px;}}@media(max-width:767px){.elementor-10239 .elementor-element.elementor-element-634a58f2{text-align:center;}.elementor-10239 .elementor-element.elementor-element-634a58f2 .elementor-heading-title{font-size:36px;}.elementor-10239 .elementor-element.elementor-element-624c7b28{font-size:16px;}}/* Start custom CSS for html, class: .elementor-element-6aa3fcb */.fire-intro{

    max-width:1000px;

    margin:100px auto;

    padding:0 30px;

    text-align:center;

}

.fire-intro-badge{

    display:inline-block;

    background:#fff1f1;

    color:#d62828;

    padding:10px 22px;

    border-radius:999px;

    font-size:13px;

    font-weight:700;

    letter-spacing:2px;

    margin-bottom:25px;

}

.fire-intro h2{

    font-size:68px;

    line-height:1.05;

    color:#071d49;

    margin-bottom:30px;

    font-weight:800;

}

.fire-intro p{

    max-width:850px;

    margin:0 auto 20px;

    color:#6b7280;

    line-height:1.9;

    font-size:18px;

}

@media(max-width:768px){

    .fire-intro h2{

        font-size:42px;

    }

    .fire-intro p{

        font-size:16px;

    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d76576d */.fire-framework{

    max-width:1200px;
    margin:120px auto;
    padding:0 30px;

    display:grid;
    grid-template-columns:0.9fr 1.1fr;
    gap:80px;

    align-items:center;

}

.framework-badge{

    display:inline-block;

    padding:10px 22px;

    background:#fff1f1;
    color:#d62828;

    border-radius:999px;

    font-size:13px;
    font-weight:700;
    letter-spacing:2px;

    margin-bottom:25px;

}

.framework-left h2{

    font-size:72px;
    line-height:1;

    color:#071d49;

    margin-bottom:25px;

}

.framework-left h2 span{

    color:#d62828;
    display:block;

}

.framework-left p{

    color:#6b7280;

    line-height:1.9;
    font-size:18px;

}

.framework-right{

    position:relative;
    padding-left:40px;

}

.response-step{

    display:flex;
    align-items:flex-start;
    gap:25px;

    position:relative;

    transition:.4s ease;

}

.response-step:hover{

    transform:translateX(15px);

}

.step-icon{

    width:80px;
    height:80px;
    min-width:80px;

    border-radius:50%;

    background:linear-gradient(
        135deg,
        #d62828,
        #ff5c5c
    );

    display:flex;
    align-items:center;
    justify-content:center;

    font-size:34px;

    box-shadow:0 15px 35px rgba(214,40,40,.25);

    transition:.4s ease;

}

.response-step:hover .step-icon{

    transform:scale(1.12) rotate(8deg);

    box-shadow:0 20px 45px rgba(214,40,40,.35);

}

.step-content{

    background:#fff;

    padding:25px;

    border-radius:24px;

    border:1px solid #ececec;

    flex:1;

    transition:.4s ease;

}

.response-step:hover .step-content{

    border-color:#d62828;

    box-shadow:0 20px 45px rgba(214,40,40,.15);

}

.step-content h3{

    color:#071d49;

    font-size:28px;

    margin-bottom:10px;

    transition:.3s;

}

.response-step:hover h3{

    color:#d62828;

}

.step-content p{

    color:#6b7280;

    line-height:1.8;

    margin:0;

}

.step-line{

    width:4px;

    height:70px;

    background:linear-gradient(
        to bottom,
        #d62828,
        #ffb4b4
    );

    margin:10px 0 10px 38px;

    border-radius:999px;

    position:relative;

    overflow:hidden;

}

.step-line::after{

    content:"";

    position:absolute;

    top:-40px;
    left:0;

    width:100%;
    height:40px;

    background:white;

    opacity:.8;

    animation:signalFlow 2s linear infinite;

}

@keyframes signalFlow{

    0%{

        top:-40px;

    }

    100%{

        top:100%;

    }

}

@media(max-width:768px){

    .fire-framework{

        grid-template-columns:1fr;

        gap:50px;

    }

    .framework-left h2{

        font-size:48px;

    }

    .framework-right{

        padding-left:0;

    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-610e054c */.fire-premium-hub{

    position:relative;

    max-width:1200px;

    margin:120px auto;

    padding:90px 60px;

    border-radius:40px;

    overflow:hidden;

    background-image:url('https://ksafe.com.my/wp-content/uploads/2026/06/fire-safety-managers-1170x700-1.jpg');

    background-size:cover;

    background-position:center;

}

.fire-overlay{

    position:absolute;

    inset:0;

    background:linear-gradient(
        135deg,
        rgba(7,29,73,.88),
        rgba(214,40,40,.65)
    );

}

.hub-content{

    position:relative;

    z-index:2;

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:40px;

    align-items:center;

}

.hub-badge{

    display:inline-block;

    padding:10px 22px;

    background:rgba(255,255,255,.15);

    color:white;

    border-radius:999px;

    font-size:13px;

    font-weight:700;

    letter-spacing:2px;

    margin-bottom:20px;

}

.hub-left h2{

    font-size:70px;

    line-height:1;

    color:white;

    margin-bottom:25px;

}

.hub-left h2 span{

    display:block;

    color:#ffd2d2;

}

.hub-left p{

    color:rgba(255,255,255,.9);

    line-height:1.9;

    font-size:18px;

}

.hub-right{

    display:flex;

    flex-direction:column;

    gap:25px;

}

.glass-card{

    backdrop-filter:blur(18px);

    background:rgba(255,255,255,.12);

    border:1px solid rgba(255,255,255,.15);

    border-radius:28px;

    padding:30px;

    transition:.4s ease;

}

.glass-card:hover{

    transform:translateY(-8px);

    background:rgba(255,255,255,.18);

}

.glass-card h3{

    color:white;

    font-size:28px;

    margin-bottom:25px;

}

.info-row{

    display:flex;

    justify-content:space-between;

    padding:14px 0;

    border-bottom:1px solid rgba(255,255,255,.1);

}

.info-row:last-child{

    border-bottom:none;

}

.info-row span{

    color:rgba(255,255,255,.8);

}

.info-row strong{

    color:white;

}

.audience-tags{

    display:flex;

    flex-wrap:wrap;

    gap:12px;

}

.audience-tags span{

    padding:12px 16px;

    border-radius:999px;

    background:rgba(255,255,255,.12);

    border:1px solid rgba(255,255,255,.15);

    color:white;

    transition:.3s;

}

.audience-tags span:hover{

    background:#d62828;

    transform:translateY(-3px);

}

@media(max-width:768px){

    .fire-premium-hub{

        padding:60px 25px;

    }

    .hub-content{

        grid-template-columns:1fr;

    }

    .hub-left h2{

        font-size:44px;

    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-384f266c */.fire-gallery{

    max-width:1200px;
    margin:120px auto;
    padding:0 30px;

}

.gallery-header{

    text-align:center;

    max-width:700px;

    margin:0 auto 50px;

}

.gallery-badge{

    display:inline-block;

    background:#fff1f1;
    color:#d62828;

    padding:10px 22px;

    border-radius:999px;

    font-size:13px;
    font-weight:700;

    letter-spacing:2px;

    margin-bottom:20px;

}

.gallery-header h2{

    font-size:58px;

    color:#071d49;

    margin-bottom:15px;

    line-height:1.1;

}

.gallery-header h2 span{

    color:#d62828;

}

.gallery-header p{

    color:#6b7280;

    line-height:1.8;

}

.gallery-grid{

    display:grid;

    grid-template-columns:repeat(3,1fr);

    gap:20px;

}

.gallery-item{

    overflow:hidden;

    border-radius:24px;

    position:relative;

}

.gallery-item img{

    width:100%;

    height:280px;

    object-fit:cover;

    display:block;

    transition:transform .5s ease;

}

.gallery-item:hover img{

    transform:scale(1.08);

}

.gallery-item::after{

    content:"";

    position:absolute;

    inset:0;

    background:linear-gradient(
        to top,
        rgba(0,0,0,.12),
        transparent
    );

    opacity:0;

    transition:.3s;

}

.gallery-item:hover::after{

    opacity:1;

}

@media(max-width:768px){

    .gallery-header h2{

        font-size:42px;

    }

    .gallery-grid{

        grid-template-columns:1fr;

    }

    .gallery-item img{

        height:250px;

    }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4d67d58e */.osh-cta{
    max-width:1100px;
    margin:80px auto;
    padding:50px 60px;
    border-radius:28px;

    background:linear-gradient(
        135deg,
        #071d49 0%,
        #0c2f73 100%
    );

    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:40px;

    box-shadow:0 20px 50px rgba(7,29,73,.12);
}

.osh-cta-left{
    flex:1;
}

.osh-cta-badge{
    display:inline-block;
    padding:10px 20px;
    border-radius:50px;

    background:rgba(255,255,255,.12);
    color:white;

    font-size:12px;
    font-weight:700;
    letter-spacing:1px;

    margin-bottom:18px;
}

.osh-cta h2{
    color:white;
    font-size:42px;
    line-height:1.15;
    font-weight:800;
    margin-bottom:15px;
}

.osh-cta h2 span{
    color:#ff4d4d;
}

.osh-cta p{
    color:rgba(255,255,255,.85);
    font-size:17px;
    line-height:1.7;
    max-width:550px;
    margin:0;
}

.osh-cta-right{
    text-align:center;
}

.osh-cta-btn{
    display:inline-block;

    background:#d62828;
    color:white;

    padding:16px 34px;
    border-radius:50px;

    text-decoration:none;
    font-size:16px;
    font-weight:700;

    transition:.3s ease;
}

.osh-cta-btn:hover{
    background:white;
    color:#071d49;
    transform:translateY(-3px);
}

.osh-contact{
    margin-top:15px;

    color:rgba(255,255,255,.8);

    font-size:14px;
    font-weight:500;
}

@media(max-width:768px){

    .osh-cta{
        flex-direction:column;
        text-align:center;

        padding:40px 25px;
    }

    .osh-cta h2{
        font-size:32px;
    }

    .osh-cta p{
        max-width:100%;
    }

}/* End custom CSS */