/*=================================
Theme Name : BuildSphere
Author     : Your Name
Version    : 1.0
==================================*/

/*=================================
Google Fonts
==================================*/
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&family=Inter:wght@300;400;500;600;700&display=swap');

/*=================================
CSS Reset
==================================*/
*,
*::before,
*::after{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html,
body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
}

body{
    font-family:'Inter',sans-serif;
    font-size:16px;
    font-weight:400;
    line-height:1.7;
    color:#666;
    background:#fff;
    overflow-x:hidden;
}

/*=================================
Typography
==================================*/
h1,h2,h3,h4,h5,h6{
    font-family:'Poppins',sans-serif;
    color:#111;
    font-weight:700;
    line-height:1.3;
    margin:0;
}

p{
    margin:0 0 15px;
}

a{
    text-decoration:none;
    color:inherit;
    transition:.3s ease;
}

a:hover{
    color:#be2525;
}

img{
    max-width:100%;
    height:auto;
    display:block;
}

ul,
ol{
    margin:0;
    padding:0;
    list-style:none;
}

button,
input,
textarea,
select{
    font-family:inherit;
    outline:none;
    border:none;
}

button{
    cursor:pointer;
}

.container{
    width:100%;
    max-width:1320px;
    margin:auto;
    padding:0 15px;
}

section{
    position:relative;
    padding:120px 0;
}

:root{
    --primary:#be2525;
    --secondary:#111111;
    --text:#666666;
    --white:#ffffff;
    --border:#e5e5e5;
    --bg:#f8f8f8;
    --transition:all .3s ease;
}



/*=========================================
Base
=========================================*/

.yst-container{
    width:100%;
    max-width:1320px;
    margin:0 auto;
    padding:0 15px;
}

.yst-header,
.yst-topbar{
    width:100%;
}

.yst-header a,
.yst-topbar a{
    text-decoration:none;
}

.yst-header ul,
.yst-topbar ul{
    margin:0;
    padding:0;
    list-style:none;
}

/*=========================================
Top Header
=========================================*/

.yst-topbar{
    background:#0f172a;
    color:#fff;
    font-size:14px;
}

.yst-topbar .yst-container{
    display:flex;
    justify-content:space-between;
    align-items:center;
    min-height:45px;
}

.yst-topbar-left,
.yst-topbar-right{
    display:flex;
    align-items:center;
}

.yst-topbar-left{
    gap:25px;
}

.yst-topbar-left a{
    color:#fff;
    transition:.3s;
}

.yst-topbar-left a:hover{
    color:#be2525;
}

.yst-topbar-left i{
    margin-right:8px;
    color:#be2525;
}

.yst-topbar-right{
    gap:10px;
}

.yst-topbar-right a{
    width:34px;
    height:34px;
    border-radius:50%;
    background:rgba(255,255,255,.08);
    color:#fff;
    display:flex;
    justify-content:center;
    align-items:center;
    transition:.3s;
}

.yst-topbar-right a:hover{
    background:#be2525;
}

/*=========================================
Main Header
=========================================*/

.yst-header{
    position:relative;
    background:#fff;
    z-index:999;
    transition:.35s;
    border-bottom:1px solid #eee;
}

.yst-header .yst-container{
    display:flex;
    align-items:center;
    justify-content:space-between;
    min-height:90px;
}

.yst-logo img{
    max-height:62px;
    display:block;
}

/*=========================================
Navigation
=========================================*/

.yst-navbar>ul{
    display:flex;
    align-items:center;
    gap:35px;
}

.yst-navbar>ul>li{
    position:relative;
}

.yst-navbar>ul>li>a{
    height:90px;
    display:flex;
    align-items:center;
    gap:8px;
    color:#222;
    font-size:16px;
    font-weight:600;
    transition:.3s;
    position:relative;
}

.yst-navbar>ul>li>a:hover{
    color:#be2525;
}

.yst-navbar>ul>li>a::after{
    content:"";
    position:absolute;
    left:0;
    bottom:22px;
    width:0;
    height:2px;
    background:#be2525;
    transition:.35s;
}

.yst-navbar>ul>li:hover>a::after{
    width:100%;
}

/*=========================================
Button
=========================================*/

.yst-btn{
    display:inline-flex;
    justify-content:center;
    align-items:center;
    padding:14px 28px;
    background:#be2525;
    color:#fff;
    font-weight:600;
    border-radius:4px;
    transition:.35s;
}

.yst-btn:hover{
    background:#111;
    color:#fff;
}

/*=========================================
Sticky Header
=========================================*/

.yst-header.sticky{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    background:#fff;
    box-shadow:0 8px 30px rgba(0,0,0,.08);
    animation:headerSticky .4s;
}

@keyframes headerSticky{

    from{
        transform:translateY(-100%);
    }

    to{
        transform:translateY(0);
    }

}
/*=========================================
Mega Menu
=========================================*/

.yst-mega{
    position:static;
}

.yst-mega-menu{

    position:absolute;

    left:50%;
    top:100%;

    transform:translateX(-50%) translateY(20px);

    background:#fff;

    border-radius:8px;

    box-shadow:0 20px 60px rgba(0,0,0,.12);

    border-top:4px solid #be2525;

    opacity:0;
    visibility:hidden;

    transition:.35s;

    z-index:999;

    padding:35px;

}

/* Products */

.products-menu{

    width:760px;

    display:grid;

    grid-template-columns:repeat(2,1fr);

    gap:40px;

}

/* Services */

.services-menu{

    width:1050px;

    display:grid;

    grid-template-columns:repeat(5,1fr);

    gap:40px;

}

.yst-mega:hover .yst-mega-menu{

    opacity:1;

    visibility:visible;

    transform:translateX(-50%) translateY(0);

}

/*=========================================
Mega Column
=========================================*/

.yst-mega-column h4{

    /* font-size:18px; */
    font-size:14px;

    margin-bottom:18px;

    padding-bottom:12px;

    border-bottom:1px solid #eee;

    color:#111;

}

.yst-mega-column ul{

    margin:0;
    padding:0;

}

.yst-mega-column ul li{

    margin-bottom:10px;

}

.yst-mega-column ul li:last-child{

    margin-bottom:0;

}

.yst-mega-column ul li a{

    display:block;

    color:#666;

    padding:8px 0;

    transition:.3s;

    position:relative;

}

.yst-mega-column ul li a::before{

    content:"";

    width:0;

    height:2px;

    background:#be2525;

    position:absolute;

    left:0;

    top:50%;

    transition:.3s;

}

.yst-mega-column ul li a:hover{

    color:#be2525;

    padding-left:18px;

}

.yst-mega-column ul li a:hover::before{

    width:10px;

}

/*=========================================
Blog Dropdown
=========================================*/

.yst-dropdown{

    position:relative;

}

.yst-submenu{

    position:absolute;

    left:0;

    top:100%;

    width:250px;

    background:#fff;

    border-top:4px solid #be2525;

    box-shadow:0 20px 50px rgba(0,0,0,.12);

    border-radius:6px;

    opacity:0;

    visibility:hidden;

    transform:translateY(20px);

    transition:.35s;

    z-index:999;

}

.yst-dropdown:hover .yst-submenu{

    opacity:1;

    visibility:visible;

    transform:translateY(0);

}

.yst-submenu li{

    border-bottom:1px solid #eee;

}

.yst-submenu li:last-child{

    border-bottom:none;

}

.yst-submenu li a{

    display:block;

    padding:15px 22px;

    color:#444;

    font-size:15px;

    transition:.3s;

}

.yst-submenu li a:hover{

    background:#be2525;

    color:#fff;

    padding-left:30px;

}

/*=========================================
Icons
=========================================*/

.yst-navbar i{

    font-size:12px;

    transition:.3s;

}

.yst-navbar li:hover>a>i{

    transform:rotate(180deg);

}
/*=========================================
Mobile Header
=========================================*/

.yst-mobile-toggle,
.yst-mobile-menu,
.yst-overlay{
    display:none;
}

/*=========================================
Mobile Toggle
=========================================*/

.yst-mobile-toggle{

    width:48px;
    height:48px;

    border:none;

    background:#be2525;

    border-radius:5px;

    display:none;

    justify-content:center;
    align-items:center;

    flex-direction:column;

    gap:5px;

    cursor:pointer;

}

.yst-mobile-toggle span{

    width:22px;
    height:2px;

    background:#fff;

    transition:.3s;

}

/*=========================================
Overlay
=========================================*/

.yst-overlay{

    position:fixed;

    left:0;
    top:0;

    width:100%;
    height:100%;

    background:rgba(0,0,0,.65);

    opacity:0;

    visibility:hidden;

    transition:.4s;

    z-index:9998;

}

.yst-overlay.active{

    opacity:1;

    visibility:visible;

}

/*=========================================
Mobile Menu
=========================================*/

.yst-mobile-menu{

    position:fixed;

    top:0;

    right:-360px;

    width:340px;

    max-width:100%;

    height:100vh;

    background:#fff;

    overflow-y:auto;

    transition:.4s;

    z-index:9999;

}

.yst-mobile-menu.active{

    right:0;

}

/*=========================================
Top
=========================================*/

.yst-mobile-top{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:20px;

    border-bottom:1px solid #eee;

}

.yst-mobile-top img{

    height:55px;

}

.yst-mobile-close{

    width:42px;

    height:42px;

    border:none;

    background:#be2525;

    color:#fff;

    border-radius:5px;

    cursor:pointer;

}

/*=========================================
Mobile Navigation
=========================================*/

.yst-mobile-nav{

    margin:0;

    padding:0;

    list-style:none;

}

.yst-mobile-nav>li{

    border-bottom:1px solid #eee;

}

.yst-mobile-nav>li>a{

    display:block;

    padding:16px 20px;

    color:#222;

    font-weight:600;

}

/*=========================================
Accordion
=========================================*/

.yst-mobile-link{

    display:flex;

    justify-content:space-between;

    align-items:center;

    padding:16px 20px;

}

.yst-mobile-link a{

    font-weight:600;

    color:#222;

}

.yst-sub-toggle{

    width:35px;

    height:35px;

    background:#f4f4f4;

    display:flex;

    justify-content:center;

    align-items:center;

    cursor:pointer;

}

.yst-mobile-submenu{

    display:none;

    background:#fafafa;

    padding-bottom:15px;

}

.yst-has-sub.active .yst-mobile-submenu{

    display:block;

}

.yst-mobile-heading{

    display:block;

    padding:18px 20px 8px;

    font-weight:700;

    color:#be2525;

}

.yst-mobile-submenu li a{

    display:block;

    padding:10px 35px;

    color:#555;

    transition:.3s;

}

.yst-mobile-submenu li a:hover{

    color:#be2525;

    padding-left:45px;

}

/*=========================================
Mobile Button
=========================================*/

.yst-mobile-btn{

    padding:20px;

}

.yst-mobile-btn .yst-btn{

    width:100%;

}

/*=========================================
Responsive
=========================================*/

@media(max-width:991px){

    .yst-topbar{

        display:none;

    }

    .yst-navbar{

        display:none;

    }

    .yst-header-btn{

        display:none;

    }

    .yst-mobile-toggle{

        display:flex;

    }

    .yst-mobile-menu{

        display:block;

    }

    .yst-overlay{

        display:block;

    }

    .yst-header .yst-container{

        min-height:80px;

    }

    .yst-logo img{

        max-height:52px;

    }

}

@media(max-width:575px){

    .yst-mobile-menu{

        width:100%;

        right:-100%;

    }

}


.yst-navbar a.active{

    color:#be2525;

}

.yst-mobile-nav a.active{

    color:#be2525;

    font-weight:700;

}
/*==============================
Blog Dropdown
==============================*/

.ystblog-dropdown{
    position:relative;
}

.ystblog-menu{
    position:absolute;
    top:100%;
    left:0;
    width:240px;
    background:#fff;
    border-radius:8px;
    box-shadow:0 10px 30px rgba(0,0,0,.12);
    opacity:0;
    visibility:hidden;
    transition:.35s;
    transform:translateY(15px);
    z-index:999;
    padding:10px 0;
}

.ystblog-dropdown:hover>.ystblog-menu{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

.ystblog-menu li{
    list-style:none;
    position:relative;
}

.ystblog-menu li>a{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:12px 20px;
    color:#222;
    text-decoration:none;
    transition:.3s;
    font-size:15px;
}

.ystblog-menu li>a:hover{
    background:#be2525;
    color:#fff;
}

/*==============================
Second Level
==============================*/

.ystblog-submenu{
    position:absolute;
    left:100%;
    top:0;
    width:240px;
    background:#fff;
    border-radius:8px;
    box-shadow:0 10px 30px rgba(0,0,0,.12);
    opacity:0;
    visibility:hidden;
    transition:.35s;
    transform:translateX(15px);
    padding:10px 0;
}

.ystblog-has-sub:hover>.ystblog-submenu{
    opacity:1;
    visibility:visible;
    transform:translateX(0);
}

.ystblog-submenu li{
    list-style:none;
}

.ystblog-submenu li a{
    display:block;
    padding:12px 20px;
    color:#222;
    text-decoration:none;
    transition:.3s;
}

.ystblog-submenu li a:hover{
    background:#be2525;
    color:#fff;
}


.yst-mobile-link{
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.yst-mobile-submenu{
    display:none;
    padding-left:18px;
}

.yst-mobile-submenu li{
    list-style:none;
}

.yst-mobile-submenu li a{
    display:block;
    padding:10px 15px;
    color:#333;
    text-decoration:none;
}

.yst-mobile-submenu li a:hover{
    color:#be2525;
}


/*========================================
Footer
========================================*/

.bs-footer {
    /*background: #111111;*/
    /*color: #b8b8b8;*/
        background: #faf7f7;
    color: #161616;
    padding-top: 75px;
}


/*========================================
Footer Grid
========================================*/

.bs-footer-grid {
    display: grid;
    grid-template-columns: 1.5fr 1fr 1.2fr 1.2fr;
    gap: 50px;
    padding-bottom: 60px;
}


/*========================================
Footer Logo
========================================*/

.bs-footer-logo {
    display: inline-block;
    margin-bottom: 22px;
}

.bs-footer-logo img {
    max-width: 180px;
    height: auto;
}


.bs-footer-about p {
    max-width: 380px;
    font-size: 17px;
    line-height: 1.8;
    margin: 0 0 25px;
}


/*========================================
Footer Heading
========================================*/

.bs-footer-col h4 {
    /*color: #ffffff;*/
    
    color: #101010;

    font-size: 19px;
    font-weight: 600;
    margin: 0 0 25px;
    position: relative;
    padding-bottom: 12px;
}

.bs-footer-col h4::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 42px;
    height: 2px;
    background: #be2525;
}


/*========================================
Footer Links
========================================*/

.bs-footer-col ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.bs-footer-col ul li {
    margin-bottom: 13px;
}

.bs-footer-col ul li a {
    /*color: #b8b8b8;*/
        color: #111111;

    text-decoration: none;
    font-size: 17px;
    transition: all 0.3s ease;
}

.bs-footer-col ul li a:hover {
    color: #ffffff;
    padding-left: 5px;
}


/*========================================
Social Icons
========================================*/

.bs-footer-social {
    display: flex;
    gap: 10px;
}

.bs-footer-social a {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;

    border: 1px solid #333;
    border-radius: 50%;

       color: #161616;
    text-decoration: none;

    transition: all 0.3s ease;
}

.bs-footer-social a:hover {
    background: #be2525;
    border-color: #be2525;
}


/*========================================
Contact
========================================*/

.bs-footer-contact li {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 18px !important;
    line-height: 1.6;
}

.bs-contact-icon {
    color: #be2525;
    min-width: 18px;
}

.bs-footer-contact a {
    color: #b8b8b8;
}


/*========================================
Bottom Footer
========================================*/

.bs-footer-bottom {
    border-top: 1px solid #292929;
    padding: 20px 0;
}

.bs-footer-bottom-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.bs-footer-bottom p {
    margin: 0;
     font-size: 17px;
    /*color: #888888;*/
        color: #141313;

}

.bs-footer-bottom-links {
    display: flex;
    align-items: center;
    gap: 12px;
}

.bs-footer-bottom-links a {
    color: #888888;
     font-size: 17px;
    text-decoration: none;
    transition: 0.3s;
}

.bs-footer-bottom-links a:hover {
    color: #ffffff;
}

.bs-footer-bottom-links span {
    color: #444444;
}


/*========================================
Tablet
========================================*/

@media (max-width: 991px) {

    .bs-footer-grid {
        grid-template-columns: 1fr 1fr;
        gap: 40px 30px;
    }

}


/*========================================
Mobile
========================================*/

@media (max-width: 767px) {

    .bs-footer {
        padding-top: 55px;
    }

    .bs-footer-grid {
        grid-template-columns: 1fr;
        gap: 35px;
        padding-bottom: 40px;
    }

    .bs-footer-about p {
        max-width: 100%;
    }

    .bs-footer-bottom-inner {
        flex-direction: column;
        text-align: center;
    }

    .bs-footer-bottom-links {
        justify-content: center;
        flex-wrap: wrap;
    }

}


/*========================================
Small Mobile
========================================*/

@media (max-width: 480px) {

    .bs-footer {
        padding-top: 45px;
    }

    .bs-footer-col h4 {
        font-size: 18px;
    }

    .bs-footer-bottom-links {
        gap: 8px;
    }

}


/* ========================================
Hero Slider
========================================= */

.bs-slider {
    position: relative;
    width: 100%;
    height: 780px;
    overflow: hidden;
    background: #111;
}


/* ========================================
Slide
========================================= */

.bs-slide {
    position: absolute;
    inset: 0;

    opacity: 0;
    visibility: hidden;

    transition: opacity 0.8s ease;

    z-index: 1;
}

.bs-slide.active {
    opacity: 1;
    visibility: visible;
    z-index: 2;
}


/* ========================================
Image
========================================= */

.bs-slide-img {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    object-fit: cover;
    object-position: center;

    z-index: -2;
}


/* ========================================
Overlay
========================================= */

.bs-slide-overlay {
    position: absolute;
    inset: 0;

    background: linear-gradient(
        90deg,
        rgba(0,0,0,0.75) 0%,
        rgba(0,0,0,0.55) 45%,
        rgba(0,0,0,0.15) 100%
    );

    z-index: -1;
}


/* ========================================
Content
========================================= */

.bs-slide .container {
    height: 100%;
}

.bs-slide-content {
    height: 100%;

    display: flex;
    flex-direction: column;
    justify-content: center;

    max-width: 700px;

    padding-bottom: 30px;
}


/* ========================================
Tag
========================================= */

.bs-slide-tag {
    display: inline-block;

    color: #fff;

     font-size: 17px;
    font-weight: 600;

    letter-spacing: 2px;

    margin-bottom: 18px;

    padding-left: 50px;

    position: relative;
}

.bs-slide-tag::before {
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 35px;
    height: 2px;

    background: #be2525;

    transform: translateY(-50%);
}


/* ========================================
Heading
========================================= */

.bs-slide-content h1 {
    color: #fff;

    font-size: 64px;
    line-height: 1.08;

    font-weight: 700;

    margin: 0 0 22px;
}

.bs-slide-content p {
    color: rgba(255,255,255,0.88);

    font-size: 17px;
    line-height: 1.8;

    max-width: 600px;

    margin: 0 0 32px;
}


/* ========================================
Buttons
========================================= */

.bs-slide-buttons {
    display: flex;
    align-items: center;
    gap: 15px;
}

.bs-slide-btn {
    min-height: 52px;

    padding: 0 28px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 10px;

    background: #be2525;
    border: 1px solid #be2525;

    color: #fff;

    font-size: 15px;
    font-weight: 600;

    text-decoration: none;

    transition: all 0.3s ease;
}

.bs-slide-btn:hover {
    background: #fff;
    border-color: #fff;
    color: #111;
}

.bs-slide-btn-light {
    background: transparent;
    border-color: rgba(255,255,255,0.7);
}

.bs-slide-btn-light:hover {
    background: #be2525;
    border-color: #be2525;
    color: #fff;
}


/* ========================================
Previous / Next
========================================= */

.bs-slide-prev,
.bs-slide-next {
    position: absolute;

    top: 50%;
    transform: translateY(-50%);

    width: 52px;
    height: 52px;

    border: 1px solid rgba(255,255,255,0.5);

    background: rgba(0,0,0,0.25);

    color: #fff;

    display: flex;
    align-items: center;
    justify-content: center;

    cursor: pointer;

    z-index: 10;

    transition: all 0.3s ease;
}

.bs-slide-prev {
    left: 30px;
}

.bs-slide-next {
    right: 30px;
}

.bs-slide-prev:hover,
.bs-slide-next:hover {
    background: #be2525;
    border-color: #be2525;
}


/* ========================================
Dots
========================================= */

.bs-slide-dots {
    position: absolute;

    left: 50%;
    bottom: 30px;

    transform: translateX(-50%);

    display: flex;
    gap: 8px;

    z-index: 10;
}

.bs-slide-dots button {
    width: 30px;
    height: 4px;

    padding: 0;
    border: 0;

    background: rgba(255,255,255,0.45);

    cursor: pointer;

    transition: all 0.3s ease;
}

.bs-slide-dots button.active {
    width: 55px;
    background: #be2525;
}


/* ========================================
Tablet
========================================= */

@media (max-width: 991px) {

    .bs-slider {
        height: 680px;
    }

    .bs-slide-content {
        max-width: 600px;
    }

    .bs-slide-content h1 {
        font-size: 50px;
    }

    .bs-slide-prev {
        left: 20px;
    }

    .bs-slide-next {
        right: 20px;
    }

}


/* ========================================
Mobile
========================================= */

@media (max-width: 767px) {

    .bs-slider {
        height: 650px;
    }

    .bs-slide-img {
        object-position: center;
    }

    .bs-slide-overlay {
        background: linear-gradient(
            90deg,
            rgba(0,0,0,0.72),
            rgba(0,0,0,0.40)
        );
    }

    .bs-slide-content {
        padding: 30px 20px 70px;
    }

    .bs-slide-tag {
        font-size: 11px;
        letter-spacing: 1.5px;
        padding-left: 40px;
    }

    .bs-slide-tag::before {
        width: 28px;
    }

    .bs-slide-content h1 {
        font-size: 37px;
        line-height: 1.15;
        margin-bottom: 18px;
    }

    .bs-slide-content p {
         font-size: 17px;
        line-height: 1.7;
        margin-bottom: 25px;
    }

    .bs-slide-buttons {
        flex-wrap: wrap;
    }

    .bs-slide-btn {
        min-height: 46px;
        padding: 0 20px;
         font-size: 17px;
    }

    .bs-slide-prev,
    .bs-slide-next {
        width: 40px;
        height: 40px;

        top: auto;
        bottom: 20px;

        transform: none;
    }

    .bs-slide-prev {
        left: 20px;
    }

    .bs-slide-next {
        right: 20px;
    }

    .bs-slide-dots {
        bottom: 38px;
    }

}


/* ========================================
Small Mobile
========================================= */

@media (max-width: 480px) {

    .bs-slider {
        height: 600px;
    }

    .bs-slide-content h1 {
        font-size: 31px;
    }

    .bs-slide-content p {
        font-size: 13px;
    }

    .bs-slide-buttons {
        flex-direction: column;
        align-items: flex-start;
    }

}


/*========================================
About Us
=========================================*/

.bs-about {
    padding: 100px 0;
    background: #ffffff;
}


/*========================================
Wrapper
=========================================*/

.bs-about-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 75px;
}


/*========================================
Image
=========================================*/

.bs-about-image {
    position: relative;
    padding-right: 35px;
    padding-bottom: 35px;
}

.bs-about-image::after {
    content: "";

    position: absolute;

    right: 0;
    bottom: 0;

    width: 70%;
    height: 70%;

    border: 3px solid #be2525;

    z-index: 0;
}

.bs-about-image img {
    position: relative;

    display: block;

    width: 100%;
    height: 560px;

    object-fit: cover;

    z-index: 1;
}


/*========================================
Experience
=========================================*/

.bs-about-experience {
    position: absolute;

    left: -25px;
    bottom: 65px;

    z-index: 3;

    background: #be2525;

    color: #ffffff;

    padding: 20px 25px;

    display: flex;
    align-items: center;
    gap: 12px;
}

.bs-experience-number {
    font-size: 38px;
    font-weight: 700;
    line-height: 1;
}

.bs-experience-text {
    font-size: 13px;
    line-height: 1.4;
}


/*========================================
Section Tag
=========================================*/

.bs-section-tag {
    display: inline-block;

    color: #be2525;

    font-size: 13px;
    font-weight: 700;

    letter-spacing: 2px;

    margin-bottom: 15px;

    padding-left: 45px;

    position: relative;
}

.bs-section-tag::before {
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 32px;
    height: 2px;

    background: #be2525;

    transform: translateY(-50%);
}


/*========================================
Heading
=========================================*/

.bs-about-content h2 {
    color: #111111;

    font-size: 46px;
    line-height: 1.15;

    font-weight: 700;

    margin: 0 0 22px;
}

.bs-about-content h2 span {
    color: #be2525;
}


/*========================================
Text
=========================================*/

.bs-about-content p {
    color: #666666;

    font-size: 17px;
    line-height: 1.8;

    margin-bottom: 18px;
}

.bs-about-intro {
    color: #333333 !important;

    font-size: 17px !important;
    font-weight: 500;
}


/*========================================
Features
=========================================*/

.bs-about-features {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 20px;

    margin: 30px 0;
}


.bs-about-feature {
    display: flex;

    align-items: flex-start;

    gap: 14px;
}


.bs-feature-icon {
    flex-shrink: 0;

    width: 45px;
    height: 45px;

    display: flex;

    align-items: center;
    justify-content: center;

    background: #f8eeee;

    color: #be2525;

    font-size: 18px;
}


.bs-about-feature h4 {
    color: #222222;

    font-size: 16px;

    margin: 0 0 5px;
}


.bs-about-feature p {
    font-size: 17px !important;

    line-height: 1.5 !important;

    margin: 0 !important;
}


/*========================================
Button
=========================================*/

.bs-about-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 10px;

    min-height: 50px;

    padding: 0 25px;

    background: #be2525;

    border: 1px solid #be2525;

    color: #ffffff;

    text-decoration: none;

     font-size: 17px;
    font-weight: 600;

    transition: all .3s ease;
}

.bs-about-btn:hover {
    background: #111111;

    border-color: #111111;

    color: #ffffff;
}


/*========================================
Tablet
=========================================*/

@media (max-width: 991px) {

    .bs-about {
        padding: 75px 0;
    }

    .bs-about-wrapper {
        gap: 45px;
    }

    .bs-about-content h2 {
        font-size: 38px;
    }

    .bs-about-image img {
        height: 480px;
    }

}


/*========================================
Mobile
=========================================*/

@media (max-width: 767px) {

    .bs-about {
        padding: 60px 0;
    }

    .bs-about-wrapper {
        grid-template-columns: 1fr;

        gap: 45px;
    }


    .bs-about-image {
        padding-right: 20px;
        padding-bottom: 20px;
    }

    .bs-about-image img {
        height: 400px;
    }


    .bs-about-experience {
        left: 0;
        bottom: 40px;

        padding: 15px 18px;
    }

    .bs-experience-number {
        font-size: 30px;
    }


    .bs-about-content h2 {
        font-size: 34px;
    }


    .bs-about-features {
        grid-template-columns: 1fr;

        gap: 18px;
    }

}


/*========================================
Small Mobile
=========================================*/

@media (max-width: 480px) {

    .bs-about {
        padding: 50px 0;
    }

    .bs-about-image img {
        height: 330px;
    }

    .bs-about-content h2 {
        font-size: 30px;
    }

    .bs-about-intro {
        font-size: 15px !important;
    }

}


/*========================================
Our Products
=========================================*/

.bs-products {
    padding: 100px 0;
    background: #f7f7f7;
}


/*========================================
Heading
=========================================*/

.bs-products-heading {
    max-width: 700px;
    margin: 0 auto 55px;
    text-align: center;
}

.bs-products-heading .bs-section-tag {
    padding-left: 0;
}

.bs-products-heading .bs-section-tag::before {
    display: none;
}

.bs-products-heading h2 {
    color: #111;
    font-size: 44px;
    line-height: 1.2;
    margin: 10px 0 18px;
    font-weight: 700;
}

.bs-products-heading h2 span {
    color: #be2525;
}

.bs-products-heading p {
    color: #666;
    font-size: 15px;
    line-height: 1.8;
    margin: 0;
}


/*========================================
Products Grid
=========================================*/

.bs-products-grid {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 25px;
}


/*========================================
Product Card
=========================================*/

.bs-product-card {
    background: #fff;

    border: 1px solid #eeeeee;

    overflow: hidden;

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}

.bs-product-card:hover {
    transform: translateY(-8px);

    box-shadow:
        0 15px 40px rgba(0,0,0,.10);
}


/*========================================
Product Image
=========================================*/

.bs-product-image {
    width: 100%;
    height: 230px;

    overflow: hidden;
}

.bs-product-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform .5s ease;
}

.bs-product-card:hover .bs-product-image img {
    transform: scale(1.06);
}


/*========================================
Product Content
=========================================*/

.bs-product-content {
    position: relative;

    padding: 25px;
}

.bs-product-number {
    display: block;

    color: #be2525;

    font-size: 13px;
    font-weight: 700;

    margin-bottom: 8px;
}

.bs-product-content h3 {
    color: #111;

    font-size: 20px;
    line-height: 1.3;

    margin: 0 0 12px;
}

.bs-product-content p {
    color: #666;

     font-size: 17px;
    line-height: 1.7;

    margin: 0 0 20px;
}


/*========================================
Learn More Button
=========================================*/

.bs-product-btn {
    display: inline-flex;

    align-items: center;

    gap: 8px;

    color: #be2525;

     font-size: 17px;
    font-weight: 600;

    text-decoration: none;

    transition: .3s;
}

.bs-product-btn i {
    font-size: 17px;

    transition: transform .3s ease;
}

.bs-product-btn:hover {
    color: #111;
}

.bs-product-btn:hover i {
    transform: translateX(5px);
}


/*========================================
Tablet
=========================================*/

@media (max-width: 991px) {

    .bs-products {
        padding: 75px 0;
    }

    .bs-products-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 20px;
    }

}


/*========================================
Mobile
=========================================*/

@media (max-width: 767px) {

    .bs-products {
        padding: 55px 0;
    }

    .bs-products-heading {
        margin-bottom: 35px;
    }

    .bs-products-heading h2 {
        font-size: 32px;
    }

    .bs-products-heading p {
         font-size: 17px;
    }


    /* 2 boxes in one row */

    .bs-products-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 12px;
    }


    .bs-product-image {
        height: 145px;
    }


    .bs-product-content {
        padding: 15px;
    }


    .bs-product-number {
        font-size: 11px;
        margin-bottom: 5px;
    }


    .bs-product-content h3 {
        font-size: 16px;
        margin-bottom: 8px;
    }


    .bs-product-content p {
        font-size: 17px;
        line-height: 1.5;

        margin-bottom: 13px;
    }


    .bs-product-btn {
        font-size: 17px;
    }

}


/*========================================
Small Mobile
=========================================*/

@media (max-width: 480px) {

    .bs-products-grid {
        gap: 10px;
    }

    .bs-product-image {
        height: 125px;
    }

    .bs-product-content {
        padding: 13px;
    }

    .bs-product-content h3 {
        font-size: 15px;
    }

    .bs-product-content p {
        font-size: 11px;
    }

    .bs-product-btn {
        font-size: 11px;
    }

}

/* ========================================
   PRODUCT CARD - EQUAL HEIGHT
======================================== */

.bs-product-card {
    display: flex;
    flex-direction: column;
    height: 100%;
}


/* Product Content */

.bs-product-content {
    display: flex;
    flex-direction: column;
    flex: 1;
}


/* ========================================
   Learn More Button
======================================== */

.bs-product-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    width: fit-content;

    min-height: 42px;

    padding: 0 18px;

    margin-top: auto;

    background: #be2525;
    border: 1px solid #be2525;

    color: #ffffff !important;

    font-size: 13px;
    font-weight: 600;

    text-decoration: none;

    transition: all 0.3s ease;
}


.bs-product-btn i {
    font-size: 11px;

    transition: transform 0.3s ease;
}


.bs-product-btn:hover {
    background: #111111;
    border-color: #111111;

    color: #ffffff !important;
}


.bs-product-btn:hover i {
    transform: translateX(4px);
}


/* ========================================
   Product Content - Same Height
======================================== */

.bs-product-content {
    min-height: 220px;
}


/* ========================================
   Mobile
======================================== */

@media (max-width: 767px) {

    .bs-product-content {
        min-height: 190px;
        padding: 15px;
    }

    .bs-product-btn {
        min-height: 38px;

        padding: 0 13px;

        font-size: 11px;
    }

}

/*========================================
Our Services
=========================================*/

.bs-services {
    padding: 100px 0;
    background: #ffffff;
}


/*========================================
Section Heading
=========================================*/

.bs-services-heading {
    max-width: 700px;
    margin: 0 auto 55px;
    text-align: center;
}

.bs-services-heading .bs-section-tag {
    padding-left: 0;
}

.bs-services-heading .bs-section-tag::before {
    display: none;
}

.bs-services-heading h2 {
    color: #111111;
    font-size: 44px;
    line-height: 1.2;
    font-weight: 700;
    margin: 10px 0 18px;
}

.bs-services-heading h2 span {
    color: #be2525;
}

.bs-services-heading p {
    color: #666666;
    font-size: 15px;
    line-height: 1.8;
    margin: 0;
}


/*========================================
Services Grid
3 Columns Desktop
=========================================*/

.bs-services-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 30px;
}


/*========================================
Service Card
=========================================*/

.bs-service-card {
    display: flex;
    flex-direction: column;

    height: 100%;

    background: #ffffff;

    border: 1px solid #eeeeee;

    overflow: hidden;

    transition:
        transform .3s ease,
        box-shadow .3s ease;
}

.bs-service-card:hover {
    transform: translateY(-8px);

    box-shadow:
        0 15px 40px rgba(0, 0, 0, .10);
}


/*========================================
Service Image
=========================================*/

.bs-service-image {
    position: relative;

    width: 100%;
    height: 250px;

    overflow: hidden;
}

.bs-service-image img {
    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform .5s ease;
}

.bs-service-card:hover .bs-service-image img {
    transform: scale(1.06);
}


/*========================================
Service Number
=========================================*/

.bs-service-number {
    position: absolute;

    right: 15px;
    top: 15px;

    width: 45px;
    height: 45px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #be2525;
    color: #ffffff;

     font-size: 17px;
    font-weight: 700;
}


/*========================================
Service Content
=========================================*/

.bs-service-content {
    position: relative;

    display: flex;
    flex-direction: column;

    flex: 1;

    padding: 28px;
}


/*========================================
Icon
=========================================*/

.bs-service-icon {
    width: 52px;
    height: 52px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-top: -52px;
    margin-bottom: 20px;

    background: #ffffff;

    border: 1px solid #eeeeee;

    color: #be2525;

    font-size: 21px;

    position: relative;
    z-index: 2;

    transition: all .3s ease;
}

.bs-service-card:hover .bs-service-icon {
    background: #be2525;
    border-color: #be2525;
    color: #ffffff;
}


/*========================================
Title
=========================================*/

.bs-service-content h3 {
    color: #111111;

    font-size: 21px;
    line-height: 1.3;

    margin: 0 0 12px;

    font-weight: 700;
}


/*========================================
Description
=========================================*/

.bs-service-content p {
    color: #666666;

     font-size: 17px;
    line-height: 1.7;

    margin: 0 0 22px;
}


/*========================================
Learn More
=========================================*/

.bs-service-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    width: fit-content;

    min-height: 42px;

    padding: 0 18px;

    margin-top: auto;

    background: #be2525;

    border: 1px solid #be2525;

    color: #ffffff !important;

    text-decoration: none;

    font-size: 13px;
    font-weight: 600;

    transition: all .3s ease;
}

.bs-service-btn i {
    font-size: 11px;

    transition: transform .3s ease;
}

.bs-service-btn:hover {
    background: #111111;
    border-color: #111111;

    color: #ffffff !important;
}

.bs-service-btn:hover i {
    transform: translateX(4px);
}


/*========================================
Tablet
=========================================*/

@media (max-width: 991px) {

    .bs-services {
        padding: 75px 0;
    }

    .bs-services-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 20px;
    }

    .bs-service-image {
        height: 220px;
    }

}


/*========================================
Mobile
2 Boxes Per Row
=========================================*/

@media (max-width: 767px) {

    .bs-services {
        padding: 55px 0;
    }

    .bs-services-heading {
        margin-bottom: 35px;
    }

    .bs-services-heading h2 {
        font-size: 32px;
    }

    .bs-services-heading p {
         font-size: 17px;
    }


    .bs-services-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 12px;
    }


    .bs-service-image {
        height: 145px;
    }


    .bs-service-number {
        width: 32px;
        height: 32px;

        right: 8px;
        top: 8px;

        font-size: 10px;
    }


    .bs-service-content {
        padding: 15px;
    }


    .bs-service-icon {
        width: 40px;
        height: 40px;

        margin-top: -40px;
        margin-bottom: 14px;

        font-size: 16px;
    }


    .bs-service-content h3 {
        font-size: 15px;

        margin-bottom: 8px;
    }


    .bs-service-content p {
        font-size: 11px;
        line-height: 1.5;

        margin-bottom: 15px;
    }


    .bs-service-btn {
        width: 100%;

        min-height: 36px;

        padding: 0 8px;

        font-size: 10px;
    }

}


/*========================================
Small Mobile
=========================================*/

@media (max-width: 480px) {

    .bs-services-grid {
        gap: 10px;
    }

    .bs-service-image {
        height: 125px;
    }

    .bs-service-content {
        padding: 12px;
    }

    .bs-service-content h3 {
         font-size: 17px;
    }

    .bs-service-content p {
        font-size: 10px;
    }

}

/*========================================
Why Choose Us
=========================================*/

.bs-why {
    padding: 100px 0;
    background: #f6f6f6;
}


/*========================================
Heading
=========================================*/

.bs-why-heading {
    max-width: 720px;
    margin: 0 auto 60px;
    text-align: center;
}

.bs-why-heading .bs-section-tag {
    padding-left: 0;
}

.bs-why-heading .bs-section-tag::before {
    display: none;
}

.bs-why-heading h2 {
    color: #222;
    font-size: 44px;
    line-height: 1.2;
    margin: 10px 0 18px;
}

.bs-why-heading h2 span {
    color: #be2525;
}

.bs-why-heading p {
    color: #666;
    font-size: 15px;
    line-height: 1.8;
    margin: 0;
}


/*========================================
Main Wrapper
=========================================*/

.bs-why-wrapper {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
    align-items: center;
}


/*========================================
Why Content
=========================================*/

.bs-why-content {
    display: flex;
    flex-direction: column;
    gap: 0;
}


/*========================================
Why Item
=========================================*/

.bs-why-item {
    position: relative;

    display: flex;
    gap: 20px;

    padding: 22px 25px;

    background: #ffffff;

    border-bottom: 1px solid #e5e5e5;

    transition: all .3s ease;
}

.bs-why-item:first-child {
    border-top: 1px solid #e5e5e5;
}

.bs-why-item:hover {
    transform: translateX(7px);

    box-shadow: 0 8px 25px rgba(0,0,0,.06);
}


/*========================================
Red Line
=========================================*/

.bs-why-line {
    display: block;

    width: 4px;

    min-width: 4px;

    background: #be2525;

    transition: .3s;
}

.bs-why-item:hover .bs-why-line {
    width: 7px;
}


/*========================================
Item Heading
=========================================*/

.bs-why-item h3 {
    color: #222;

    font-size: 18px;

    margin: 0 0 7px;

    font-weight: 600;
}


/*========================================
Item Text
=========================================*/

.bs-why-item p {
    color: #666;

    font-size: 15px;

    line-height: 1.7;

    margin: 0;
}


/*========================================
Image
=========================================*/

.bs-why-image {
    position: relative;

    padding: 0 25px 25px 0;
}

.bs-why-image::after {
    content: "";

    position: absolute;

    right: 0;
    bottom: 0;

    width: 65%;
    height: 65%;

    border: 3px solid #be2525;

    z-index: 0;
}

.bs-why-image img {
    position: relative;

    display: block;

    width: 100%;
    height: 570px;

    object-fit: cover;

    z-index: 1;
}


/*========================================
Experience Box
=========================================*/

.bs-why-image-box {
    position: absolute;

    left: -20px;
    bottom: 55px;

    z-index: 3;

    display: flex;
    align-items: center;
    gap: 15px;

    padding: 18px 25px;

    background: #be2525;

    color: #ffffff;
}

.bs-why-image-box strong {
    font-size: 38px;
    line-height: 1;
}

.bs-why-image-box span {
    font-size: 13px;
    line-height: 1.4;
}


/*========================================
Tablet
=========================================*/

@media (max-width: 991px) {

    .bs-why {
        padding: 75px 0;
    }

    .bs-why-wrapper {
        gap: 40px;
    }

    .bs-why-heading h2 {
        font-size: 38px;
    }

    .bs-why-image img {
        height: 480px;
    }

}


/*========================================
Mobile
=========================================*/

@media (max-width: 767px) {

    .bs-why {
        padding: 60px 0;
    }

    .bs-why-heading {
        margin-bottom: 40px;
    }

    .bs-why-heading h2 {
        font-size: 32px;
    }

    .bs-why-heading p {
         font-size: 17px;
    }


    .bs-why-wrapper {
        grid-template-columns: 1fr;
        gap: 45px;
    }


    /* Image */

    .bs-why-image {
        order: -1;

        padding-right: 18px;
        padding-bottom: 18px;
    }

    .bs-why-image img {
        height: 380px;
    }


    /* Experience */

    .bs-why-image-box {
        left: 0;
        bottom: 35px;

        padding: 14px 18px;
    }

    .bs-why-image-box strong {
        font-size: 30px;
    }

    .bs-why-image-box span {
        font-size: 11px;
    }


    /* Items */

    .bs-why-item {
        padding: 18px 15px;
        gap: 14px;
    }

    .bs-why-item h3 {
        font-size: 16px;
    }

    .bs-why-item p {
        font-size: 17px;
        line-height: 1.6;
    }

}


/*========================================
Small Mobile
=========================================*/

@media (max-width: 480px) {

    .bs-why {
        padding: 50px 0;
    }

    .bs-why-heading h2 {
        font-size: 29px;
    }

    .bs-why-image img {
        height: 320px;
    }

}


/*========================================
Industries / Areas We Serve
=========================================*/

.bs-industries {
    padding: 100px 0;
    background: #f7f7f7;
}


/*========================================
Heading
=========================================*/

.bs-industries-heading {
    max-width: 720px;
    margin: 0 auto 55px;
    text-align: center;
}

.bs-industries-heading .bs-section-tag {
    padding-left: 0;
}

.bs-industries-heading .bs-section-tag::before {
    display: none;
}

.bs-industries-heading h2 {
    color: #222;
    font-size: 44px;
    line-height: 1.2;
    margin: 10px 0 18px;
}

.bs-industries-heading h2 span {
    color: #be2525;
}

.bs-industries-heading p {
    color: #666;
    font-size: 15px;
    line-height: 1.8;
    margin: 0;
}


/*========================================
Grid
=========================================*/

.bs-industries-grid {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 20px;
}


/*========================================
Industry Box
=========================================*/

.bs-industry-box {
    position: relative;

    display: flex;
    flex-direction: column;

    min-height: 280px;

    padding: 30px 25px;

    background: #ffffff;

    border: 1px solid #e8e8e8;

    transition: all .3s ease;
}

.bs-industry-box:hover {
    transform: translateY(-7px);

    border-color: #be2525;

    box-shadow: 0 15px 35px rgba(0,0,0,.08);
}


/*========================================
Icon
=========================================*/

.bs-industry-icon {
    width: 65px;
    height: 65px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 22px;

    background: #fbecec;

    color: #be2525;

    font-size: 26px;

    transition: all .3s ease;
}

.bs-industry-box:hover .bs-industry-icon {
    background: #be2525;
    color: #ffffff;
}


/*========================================
Title
=========================================*/

.bs-industry-box h3 {
    color: #222;

    font-size: 20px;
    line-height: 1.3;

    margin: 0 0 10px;
}


/*========================================
Description
=========================================*/

.bs-industry-box p {
    color: #666;

    font-size: 17px;
    line-height: 1.7;

    margin: 0 0 20px;
}


/*========================================
Learn More
=========================================*/

.bs-industry-link {
    display: inline-flex;

    align-items: center;

    gap: 8px;

    margin-top: auto;

    color: #be2525;

    font-size: 13px;
    font-weight: 600;

    text-decoration: none;

    transition: all .3s ease;
}

.bs-industry-link i {
    font-size: 11px;

    transition: transform .3s ease;
}

.bs-industry-link:hover {
    color: #111;
}

.bs-industry-link:hover i {
    transform: translateX(5px);
}


/*========================================
Tablet
=========================================*/

@media (max-width: 991px) {

    .bs-industries {
        padding: 75px 0;
    }

    .bs-industries-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 18px;
    }

}


/*========================================
Mobile
2 Boxes Per Row
=========================================*/

@media (max-width: 767px) {

    .bs-industries {
        padding: 55px 0;
    }

    .bs-industries-heading {
        margin-bottom: 35px;
    }

    .bs-industries-heading h2 {
        font-size: 32px;
    }

    .bs-industries-heading p {
         font-size: 17px;
    }

    .bs-industries-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 12px;
    }

    .bs-industry-box {
        min-height: 240px;

        padding: 20px 15px;
    }

    .bs-industry-icon {
        width: 48px;
        height: 48px;

        font-size: 20px;

        margin-bottom: 15px;
    }

    .bs-industry-box h3 {
        font-size: 16px;
    }

    .bs-industry-box p {
        font-size: 11px;
        line-height: 1.55;
    }

    .bs-industry-link {
        font-size: 11px;
    }

}


/*========================================
Small Mobile
=========================================*/

@media (max-width: 480px) {

    .bs-industries-grid {
        gap: 10px;
    }

    .bs-industry-box {
        min-height: 225px;
        padding: 17px 13px;
    }

    .bs-industry-icon {
        width: 44px;
        height: 44px;

        font-size: 18px;
    }

    .bs-industry-box h3 {
         font-size: 17px;
    }

    .bs-industry-box p {
        font-size: 10px;
    }

}

/*========================================
Portfolio
=========================================*/

.bs-portfolio {
    padding: 100px 0;
    background: #f7f7f7;
}


/*========================================
Section Heading
=========================================*/

.bs-portfolio-heading {
    max-width: 720px;
    margin: 0 auto 55px;
    text-align: center;
}

.bs-portfolio-heading .bs-section-tag {
    padding-left: 0;
}

.bs-portfolio-heading .bs-section-tag::before {
    display: none;
}

.bs-portfolio-heading h2 {
    color: #222222;

    font-size: 44px;
    line-height: 1.2;

    font-weight: 700;

    margin: 10px 0 18px;
}

.bs-portfolio-heading h2 span {
    color: #be2525;
}

.bs-portfolio-heading p {
    color: #666666;

    font-size: 15px;
    line-height: 1.8;

    margin: 0;
}


/*========================================
Portfolio Grid
=========================================*/

.bs-portfolio-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 25px;
}


/*========================================
Portfolio Card
=========================================*/

.bs-portfolio-card {
    display: block;

    text-decoration: none;

    overflow: hidden;

    background: #ffffff;
}


/*========================================
Portfolio Image
=========================================*/

.bs-portfolio-image {
    position: relative;

    width: 100%;
    height: 380px;

    overflow: hidden;
}

.bs-portfolio-image img {
    display: block;

    width: 100%;
    height: 100%;

    object-fit: cover;

    transition: transform .6s ease;
}


/* Image Hover */

.bs-portfolio-card:hover .bs-portfolio-image img {
    transform: scale(1.08);
}


/*========================================
Overlay
=========================================*/

.bs-portfolio-overlay {
    position: absolute;

    inset: 0;

    background: linear-gradient(
        to top,
        rgba(0, 0, 0, .88) 0%,
        rgba(0, 0, 0, .40) 55%,
        rgba(0, 0, 0, 0) 100%
    );

    pointer-events: none;
}


/*========================================
Portfolio Content
=========================================*/

.bs-portfolio-content {
    position: absolute;

    left: 25px;
    right: 65px;
    bottom: 25px;

    color: #ffffff;

    pointer-events: none;
}

.bs-portfolio-content span {
    display: inline-block;

    color: #ffffff;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 1.5px;

    margin-bottom: 8px;

    padding-bottom: 5px;

    border-bottom: 2px solid #be2525;
}

.bs-portfolio-content h3 {
    color: #ffffff;

    font-size: 22px;
    line-height: 1.3;

    margin: 0 0 6px;
}

.bs-portfolio-content p {
    color: rgba(255,255,255,.80);

    font-size: 13px;

    margin: 0;
}


/*========================================
Expand Button
=========================================*/

.bs-portfolio-arrow {
    position: absolute;

    right: 20px;
    bottom: 25px;

    width: 42px;
    height: 42px;

    display: flex;

    align-items: center;
    justify-content: center;

    background: #be2525;

    color: #ffffff;

    font-size: 13px;

    transition: all .3s ease;

    pointer-events: none;
}

.bs-portfolio-card:hover .bs-portfolio-arrow {
    background: #ffffff;

    color: #be2525;
}


/*========================================
View All Button
=========================================*/

.bs-portfolio-button {
    text-align: center;

    margin-top: 45px;
}

.bs-portfolio-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 10px;

    min-height: 50px;

    padding: 0 25px;

    background: #be2525;

    border: 1px solid #be2525;

    color: #ffffff;

    text-decoration: none;

     font-size: 17px;
    font-weight: 600;

    transition: all .3s ease;
}

.bs-portfolio-btn:hover {
    background: #222222;

    border-color: #222222;

    color: #ffffff;
}


/*========================================
Tablet
=========================================*/

@media (max-width: 991px) {

    .bs-portfolio {
        padding: 75px 0;
    }

    .bs-portfolio-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 20px;
    }

    .bs-portfolio-image {
        height: 330px;
    }

}


/*========================================
Mobile
2 Projects Per Row
=========================================*/

@media (max-width: 767px) {

    .bs-portfolio {
        padding: 55px 0;
    }

    .bs-portfolio-heading {
        margin-bottom: 35px;
    }

    .bs-portfolio-heading h2 {
        font-size: 32px;
    }

    .bs-portfolio-heading p {
         font-size: 17px;
    }


    .bs-portfolio-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 12px;
    }


    .bs-portfolio-image {
        height: 250px;
    }


    .bs-portfolio-content {
        left: 14px;
        right: 42px;
        bottom: 15px;
    }


    .bs-portfolio-content span {
        font-size: 8px;

        letter-spacing: 1px;

        margin-bottom: 5px;

        padding-bottom: 3px;
    }


    .bs-portfolio-content h3 {
        font-size: 15px;

        margin-bottom: 4px;
    }


    .bs-portfolio-content p {
        font-size: 9px;
    }


    .bs-portfolio-arrow {
        right: 10px;
        bottom: 15px;

        width: 30px;
        height: 30px;

        font-size: 10px;
    }


    .bs-portfolio-button {
        margin-top: 30px;
    }

}


/*========================================
Small Mobile
=========================================*/

@media (max-width: 480px) {

    .bs-portfolio-grid {
        gap: 10px;
    }

    .bs-portfolio-image {
        height: 220px;
    }

    .bs-portfolio-content h3 {
         font-size: 17px;
    }

}

.google-reviews-section{
    padding:50px 0;
    background:#f8f9fb;
}

.section-title{
    text-align:center;
    margin-bottom:40px;
}

.section-title span{
    color:#0d6efd;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:1px;
}

.section-title h2{
    font-size:40px;
    margin:10px 0;
    font-weight:700;
}

.section-title p{
    color:#666;
    max-width:700px;
    margin:auto;
    line-height:28px;
}

.google-rating-box{
    background:#fff;
    padding:30px;
    border-radius:12px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:45px;
    flex-wrap:wrap;
}

.rating-left h3{
    font-size:46px;
    margin:0;
    font-weight:700;
}

.rating-left small{
    font-size:22px;
}

.stars{
    color:#fbbc04;
    font-size:26px;
    margin:10px 0;
}

.rating-left p{
    color:#666;
    margin:0;
}

.review-btn{
    background:#0d6efd;
    color:#fff;
    padding:15px 30px;
    border-radius:6px;
    text-decoration:none;
    font-weight:600;
    transition:.3s;
}

.review-btn:hover{
    background:#084298;
    color:#fff;
}

.review-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:25px;
}

.review-card{
    background:#fff;
    border-radius:12px;
    padding:25px;
    box-shadow:0 10px 25px rgba(0,0,0,.08);
    transition:.3s;
}

.review-card:hover{
    transform:translateY(-6px);
}

.review-top{
    display:flex;
    justify-content:space-between;
    align-items:center;
    margin-bottom:18px;
}

.review-user{
    display:flex;
    align-items:center;
    gap:15px;
}

.review-initial{
    width:55px;
    height:55px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:22px;
    font-weight:700;
    flex-shrink:0;
}

.blue{
    background:#4285F4;
}

.red{
    background:#EA4335;
}

.green{
    background:#34A853;
}

.yellow{
    background:#FBBC05;
    color:#333;
}

.review-user h4{
    margin:0;
    font-size:18px;
    font-weight:700;
}

.review-user span{
    color:#777;
    font-size:13px;
}

.review-stars{
    color:#fbbc04;
    font-size:18px;
}

.review-card p{
    color:#555;
    line-height:28px;
    margin-bottom:0;
}

@media(max-width:768px){

.google-rating-box{
    text-align:center;
    justify-content:center;
    gap:20px;
}

.section-title h2{
    font-size:30px;
}

.review-top{
    flex-direction:column;
    align-items:flex-start;
    gap:10px;
}

}


.google-rating-box{
    position:relative;
    background:#fff;
    padding:30px;
    border-radius:12px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    min-height:170px;
}

.rating-left{
    position:absolute;
    left:30px;
    top:50%;
    transform:translateY(-50%);
}

.rating-right{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
}

.review-btn-wrap{
    margin-top:30px;
    margin-bottom:45px;
    text-align:center;
}

.review-btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding:16px 38px;
    border-radius:8px;
    background:#E8040F;
    color:#fff;
    font-size:17px;
    font-weight:600;
    text-decoration:none;
    transition:.3s;
}

.review-btn:hover{
    background:#1D4564;
    color:#fff;
    transform:translateY(-3px);
}


/*========================================
FAQ Section
=========================================*/

.bs-faq {
    padding: 100px 0;
    background: #ffffff;
}


/*========================================
Heading
=========================================*/

.bs-faq-heading {
    max-width: 700px;
    margin: 0 auto 55px;
    text-align: center;
}

.bs-faq-heading .bs-section-tag {
    padding-left: 0;
}

.bs-faq-heading .bs-section-tag::before {
    display: none;
}

.bs-faq-heading h2 {
    color: #222222;

    font-size: 44px;
    line-height: 1.2;

    font-weight: 700;

    margin: 10px 0 18px;
}

.bs-faq-heading h2 span {
    color: #be2525;
}

.bs-faq-heading p {
    color: #666666;

    font-size: 15px;
    line-height: 1.8;

    margin: 0;
}


/*========================================
FAQ Grid
=========================================*/

.bs-faq-grid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 15px 25px;
}


/*========================================
FAQ Item
=========================================*/

.bs-faq-item {
    background: #f7f7f7;

    border: 1px solid #e8e8e8;

    transition: all .3s ease;
}

.bs-faq-item.active {
    border-color: #be2525;
}


/*========================================
Question
=========================================*/

.bs-faq-question {
    width: 100%;

    min-height: 70px;

    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 20px;

    padding: 18px 22px;

    border: 0;

    background: transparent;

    color: #222222;

    text-align: left;

    font-family: inherit;

    font-size: 17px;

    font-weight: 600;

    cursor: pointer;
}

.bs-faq-question span {
    flex: 1;
}


/*========================================
Plus
=========================================*/

.bs-faq-question i {
    width: 28px;
    height: 28px;

    flex-shrink: 0;

    display: flex;

    align-items: center;
    justify-content: center;

    background: #be2525;

    color: #ffffff;

    font-size: 11px;

    transition: transform .3s ease;
}

.bs-faq-item.active .bs-faq-question i {
    transform: rotate(45deg);
}


/*========================================
Answer
=========================================*/

.bs-faq-answer {
    display: none;

    padding: 0 22px 20px;
}

.bs-faq-item.active .bs-faq-answer {
    display: block;
}

.bs-faq-answer p {
    color: #666666;

    font-size: 16px;

    line-height: 1.7;

    margin: 0;
}


/*========================================
Tablet
=========================================*/

@media (max-width: 991px) {

    .bs-faq {
        padding: 75px 0;
    }

    .bs-faq-grid {
        grid-template-columns: 1fr;
    }

}


/*========================================
Mobile
=========================================*/

@media (max-width: 767px) {

    .bs-faq {
        padding: 55px 0;
    }

    .bs-faq-heading {
        margin-bottom: 35px;
    }

    .bs-faq-heading h2 {
        font-size: 32px;
    }

    .bs-faq-heading p {
         font-size: 17px;
    }

    .bs-faq-grid {
        grid-template-columns: 1fr;

        gap: 10px;
    }

    .bs-faq-question {
        min-height: 62px;

        padding: 15px;

        font-size: 13px;

        gap: 12px;
    }

    .bs-faq-question i {
        width: 25px;
        height: 25px;

        font-size: 10px;
    }

    .bs-faq-answer {
        padding: 0 15px 16px;
    }

    .bs-faq-answer p {
        font-size: 17px;
    }

}


/*========================================
Final CTA / Contact
=========================================*/

.bs-final-cta {
    padding: 80px 0;
    background: #f6f6f6;
}


/*========================================
Wrapper
=========================================*/

.bs-final-cta-wrapper {
    display: grid;

    grid-template-columns: 1.4fr 1fr;

    align-items: stretch;

    gap: 35px;
}


/*========================================
Left Content
=========================================*/

.bs-final-cta-content {
    padding: 45px 0;
}

.bs-final-cta-content .bs-section-tag {
    padding-left: 0;
}

.bs-final-cta-content .bs-section-tag::before {
    display: none;
}


.bs-final-cta-content h2 {
    color: #222222;

    font-size: 44px;
    line-height: 1.2;

    font-weight: 700;

    margin: 10px 0 18px;
}

.bs-final-cta-content h2 span {
    color: #be2525;
}


.bs-final-cta-content > p {
    max-width: 620px;

    color: #666666;

    font-size: 16px;
    line-height: 1.8;

    margin: 0 0 30px;
}


/*========================================
Contact Info
=========================================*/

.bs-final-contact-info {
    display: flex;

    flex-wrap: wrap;

    gap: 30px;
}


.bs-final-contact-info a {
    display: flex;

    align-items: center;

    gap: 12px;

    color: #222222;

    text-decoration: none;

     font-size: 17px;

    font-weight: 600;
}


.bs-final-contact-info a > i {
    width: 45px;
    height: 45px;

    display: flex;

    align-items: center;
    justify-content: center;

    background: #be2525;

    color: #ffffff;

    font-size: 15px;
}


.bs-final-contact-info a span {
    display: flex;

    flex-direction: column;

    gap: 3px;
}


.bs-final-contact-info small {
    color: #888888;

    font-size: 11px;

    font-weight: 500;
}


/*========================================
Right CTA Box
=========================================*/

.bs-final-cta-action {
    display: flex;
}


.bs-final-cta-box {
    width: 100%;

    display: flex;

    flex-direction: column;

    justify-content: center;

    padding: 45px;

    background: #be2525;

    position: relative;

    overflow: hidden;
}


/* Decorative Shape */

.bs-final-cta-box::after {
    content: "";

    position: absolute;

    width: 180px;
    height: 180px;

    right: -70px;
    top: -70px;

    border: 35px solid rgba(255,255,255,.08);

    border-radius: 50%;
}


.bs-final-cta-box h3 {
    position: relative;
    z-index: 1;

    color: #ffffff;

    font-size: 27px;

    line-height: 1.3;

    margin: 0 0 12px;
}


.bs-final-cta-box p {
    position: relative;
    z-index: 1;

    color: rgba(255,255,255,.85);

     font-size: 17px;

    line-height: 1.7;

    margin: 0 0 25px;
}


/*========================================
Buttons
=========================================*/

.bs-final-buttons {
    position: relative;
    z-index: 2;

    display: flex;

    flex-wrap: wrap;

    gap: 10px;
}


.bs-final-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    min-height: 45px;

    padding: 0 20px;

    background: #ffffff;

    border: 1px solid #ffffff;

    color: #be2525;

    text-decoration: none;

    font-size: 13px;

    font-weight: 600;

    transition: all .3s ease;
}


.bs-final-btn:hover {
    background: #222222;

    border-color: #222222;

    color: #ffffff;
}


.bs-final-btn-outline {
    background: transparent;

    color: #ffffff;

    border-color: rgba(255,255,255,.7);
}


.bs-final-btn-outline:hover {
    background: #ffffff;

    border-color: #ffffff;

    color: #be2525;
}


/*========================================
Tablet
=========================================*/

@media (max-width: 991px) {

    .bs-final-cta {
        padding: 70px 0;
    }

    .bs-final-cta-wrapper {
        grid-template-columns: 1fr;
    }

    .bs-final-cta-content {
        padding: 0;
    }

}


/*========================================
Mobile
=========================================*/

@media (max-width: 767px) {
.yst-btn{
    display: none;
}
    .bs-final-cta {
        padding: 55px 0;
    }


    .bs-final-cta-content h2 {
        font-size: 32px;
    }


    .bs-final-cta-content > p {
         font-size: 17px;
    }


    .bs-final-contact-info {
        flex-direction: column;

        gap: 15px;
    }


    .bs-final-contact-info a {
        font-size: 13px;
    }


    .bs-final-contact-info a > i {
        width: 40px;
        height: 40px;
    }


    .bs-final-cta-box {
        padding: 30px 22px;
    }


    .bs-final-cta-box h3 {
        font-size: 22px;
    }


    .bs-final-cta-box p {
        font-size: 13px;
    }


    .bs-final-buttons {
        flex-direction: column;
    }


    .bs-final-btn {
        width: 100%;
    }

}

/*========================================
Page Banner
=========================================*/

.bs-page-banner {
    position: relative;

    padding: 110px 0;

    background-image:
        linear-gradient(
            rgba(0, 0, 0, 0.50),
            rgba(0, 0, 0, 0.50)
        ),
        url("../images/contact-banner.jpg");

    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}


/*========================================
Banner Content
=========================================*/

.bs-page-banner-content {
    text-align: center;
}


.bs-page-tag {
    display: block;

    color: #ffffff;

    font-size: 17px;
    font-weight: 600;

    letter-spacing: 2px;

    margin-bottom: 10px;
}


.bs-page-banner h1 {
    color: #ffffff;

    font-size: 52px;
    line-height: 1.2;

    font-weight: 700;

    margin: 0 0 18px;
}


/*========================================
Breadcrumb
=========================================*/

.bs-breadcrumb {
    display: flex;

    align-items: center;
    justify-content: center;

    gap: 10px;
}


.bs-breadcrumb a {
    color: #ffffff;

    font-size: 13px;

    text-decoration: none;

    transition: color .3s ease;
}


.bs-breadcrumb a:hover {
    color: #be2525;
}


.bs-breadcrumb span {
    color: #dddddd;

    font-size: 13px;
}


.bs-breadcrumb i {
    color: #be2525;

    font-size: 9px;
}


/*========================================
Mobile
=========================================*/

@media (max-width: 767px) {

    .bs-page-banner {
        padding: 70px 0;
    }

    .bs-page-tag {
        font-size: 10px;
    }

    .bs-page-banner h1 {
        font-size: 34px;
        margin-bottom: 14px;
    }

    .bs-breadcrumb {
        gap: 8px;
    }

    .bs-breadcrumb a,
    .bs-breadcrumb span {
        font-size: 11px;
    }

}

/*========================================
Contact Section
=========================================*/

.bs-contact-section {
    padding: 100px 0;
    background: #ffffff;
}


/*========================================
Heading
=========================================*/

.bs-contact-heading {
    max-width: 720px;

    margin: 0 auto 55px;

    text-align: center;
}

.bs-contact-heading .bs-section-tag {
    padding-left: 0;
}

.bs-contact-heading .bs-section-tag::before {
    display: none;
}

.bs-contact-heading h2 {
    color: #222222;

    font-size: 44px;
    line-height: 1.2;

    font-weight: 700;

    margin: 10px 0 18px;
}

.bs-contact-heading h2 span {
    color: #be2525;
}

.bs-contact-heading p {
    color: #666666;

    font-size: 15px;
    line-height: 1.8;

    margin: 0;
}


/*========================================
Main Grid
=========================================*/

.bs-contact-main {
    display: grid;

    grid-template-columns: 0.85fr 1.15fr;

    gap: 50px;

    align-items: stretch;
}


/*========================================
Contact Details
=========================================*/

.bs-contact-details {
    padding: 45px 40px;

    background: #f7f7f7;

    border: 1px solid #eeeeee;
}

.bs-contact-small-title {
    display: block;

    color: #be2525;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 1.5px;

    margin-bottom: 10px;
}

.bs-contact-details h3 {
    color: #222222;

    font-size: 32px;

    line-height: 1.25;

    margin: 0 0 15px;
}

.bs-contact-details h3 span {
    color: #be2525;
}

.bs-contact-description {
    color: #666666;

    font-size: 17px;

    line-height: 1.8;

    margin: 0 0 25px;
}


/*========================================
Contact Detail
=========================================*/

.bs-contact-detail {
    display: flex;

    align-items: flex-start;

    gap: 15px;

    padding: 17px 0;

    border-bottom: 1px solid #dddddd;
}

.bs-contact-detail-icon {
    width: 44px;
    height: 44px;

    min-width: 44px;

    display: flex;

    align-items: center;
    justify-content: center;

    background: #be2525;

    color: #ffffff;

    font-size: 14px;
}

.bs-contact-detail-text span {
    display: block;

    color: #888888;

    font-size: 11px;

    margin-bottom: 4px;
}

.bs-contact-detail-text a {
    color: #222222;

    font-size: 17px;

    font-weight: 600;

    text-decoration: none;
}

.bs-contact-detail-text a:hover {
    color: #be2525;
}

.bs-contact-detail-text p {
    color: #222222;

    font-size: 17px;

    line-height: 1.6;

    margin: 0;
}


/*========================================
Social
=========================================*/

.bs-contact-social {
    margin-top: 25px;
}

.bs-contact-social > span {
    display: block;

    color: #222222;

    font-size: 13px;

    font-weight: 600;

    margin-bottom: 12px;
}

.bs-contact-social > div {
    display: flex;

    gap: 8px;
}

.bs-contact-social a {
    width: 38px;
    height: 38px;

    display: flex;

    align-items: center;
    justify-content: center;

    background: #222222;

    color: #ffffff;

    text-decoration: none;

    transition: all .3s ease;
}

.bs-contact-social a:hover {
    background: #be2525;
}


/*========================================
Contact Form
=========================================*/

.bs-contact-form-wrapper {
    padding: 40px;

    background: #ffffff;

    border: 1px solid #e5e5e5;

    box-shadow: 0 12px 35px rgba(0, 0, 0, .06);
}

.bs-contact-form-heading {
    margin-bottom: 28px;
}

.bs-contact-form-heading h3 {
    color: #222222;

    font-size: 28px;

    margin: 0 0 8px;
}

.bs-contact-form-heading p {
    color: #777777;

    font-size: 17px;

    margin: 0;
}


/*========================================
Form Row
=========================================*/

.bs-form-row {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 18px;
}


/*========================================
Form Group
=========================================*/

.bs-form-group {
    margin-bottom: 20px;
}

.bs-form-group label {
    display: block;

    color: #333333;

    font-size: 17px;

    font-weight: 600;

    margin-bottom: 8px;
}

.bs-form-group input,
.bs-form-group select,
.bs-form-group textarea {
    width: 100%;

    border: 1px solid #dddddd;

    background: #fafafa;

    color: #222222;

    font-family: inherit;

    font-size: 13px;

    outline: none;

    transition: all .3s ease;
}

.bs-form-group input,
.bs-form-group select {
    height: 48px;

    padding: 0 15px;
}

.bs-form-group textarea {
    min-height: 140px;

    padding: 13px 15px;

    resize: vertical;
}

.bs-form-group input:focus,
.bs-form-group select:focus,
.bs-form-group textarea:focus {
    border-color: #be2525;

    background: #ffffff;
}


/*========================================
Submit Button
=========================================*/

.bs-contact-submit {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 10px;

    min-height: 50px;

    padding: 0 26px;

    border: 1px solid #be2525;

    background: #be2525;

    color: #ffffff;

    font-family: inherit;

    font-size: 14px;

    font-weight: 600;

    cursor: pointer;

    transition: all .3s ease;
}

.bs-contact-submit:hover {
    background: #222222;

    border-color: #222222;
}


/*========================================
Tablet
=========================================*/

@media (max-width: 991px) {

    .bs-contact-section {
        padding: 75px 0;
    }

    .bs-contact-main {
        grid-template-columns: 1fr;

        gap: 25px;
    }

}


/*========================================
Mobile
=========================================*/

@media (max-width: 767px) {

    .bs-contact-section {
        padding: 55px 0;
    }

    .bs-contact-heading {
        margin-bottom: 35px;
    }

    .bs-contact-heading h2 {
        font-size: 32px;
    }

    .bs-contact-heading p {
        font-size: 14px;
    }

    .bs-contact-details {
        padding: 30px 18px;
    }

    .bs-contact-details h3 {
        font-size: 26px;
    }

    .bs-contact-description {
        font-size: 13px;
    }

    .bs-contact-form-wrapper {
        padding: 25px 18px;
    }

    .bs-contact-form-heading h3 {
        font-size: 23px;
    }

    .bs-form-row {
        grid-template-columns: 1fr;

        gap: 0;
    }

    .bs-contact-submit {
        width: 100%;
    }

}


/*=========================================================
ABOUT US PAGE
=========================================================*/


/*=========================================================
1. ABOUT INTRO
=========================================================*/

.bs-about-intro {
    /* padding: 100px 0; */
    background: #ffffff;
}

.bs-about-intro-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 70px;
}


/* Image */

.bs-about-intro-image {
    position: relative;
    overflow: hidden;
}

.bs-about-intro-image img {
    display: block;
    width: 100%;
    height: 560px;
    object-fit: cover;
}


/* Content */

.bs-about-intro-content {
    padding-right: 20px;
}

.bs-about-intro-content .bs-section-tag {
    padding-left: 0;
}

.bs-about-intro-content .bs-section-tag::before {
    display: none;
}

.bs-about-intro-content h2 {
    color: #222222;
    font-size: 44px;
    line-height: 1.2;
    font-weight: 700;
    margin: 10px 0 20px;
}

.bs-about-intro-content h2 span {
    color: #be2525;
}

.bs-about-intro-content p {
    color: #666666;
    font-size: 17px;
    line-height: 1.8;
    margin: 0 0 15px;
}


/* Button */

.bs-about-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    margin-top: 15px;

    min-height: 50px;
    padding: 0 25px;

    background: #be2525;
    border: 1px solid #be2525;

    color: #ffffff;
    font-size: 14px;
    font-weight: 600;

    text-decoration: none;

    transition: all .3s ease;
}

.bs-about-btn:hover {
    background: #222222;
    border-color: #222222;
    color: #ffffff;
}


/*=========================================================
COMMON SECTION HEADING
=========================================================*/

.bs-section-heading {
    max-width: 720px;
    margin: 0 auto 55px;
    text-align: center;
}

.bs-section-heading .bs-section-tag {
    padding-left: 0;
}

.bs-section-heading .bs-section-tag::before {
    display: none;
}

.bs-section-heading h2 {
    color: #222222;
    font-size: 44px;
    line-height: 1.2;
    font-weight: 700;
    margin: 10px 0 18px;
}

.bs-section-heading h2 span {
    color: #be2525;
}

.bs-section-heading p {
    color: #666666;
    font-size: 17px;
    line-height: 1.8;
    margin: 0;
}


/*=========================================================
2. MISSION & VISION
=========================================================*/

.bs-mission-vision {
    padding: 100px 0;
    background: #f7f7f7;
}

.bs-mv-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 25px;
}

.bs-mv-box {
    display: flex;
    align-items: flex-start;
    gap: 25px;

    padding: 35px;

    background: #ffffff;
    border: 1px solid #e8e8e8;

    transition: all .3s ease;
}

.bs-mv-box:hover {
    transform: translateY(-6px);
    border-color: #be2525;
    box-shadow: 0 15px 35px rgba(0, 0, 0, .07);
}


/* Icon */

.bs-mv-icon {
    width: 65px;
    height: 65px;

    min-width: 65px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #fbecec;
    color: #be2525;

    font-size: 24px;

    transition: all .3s ease;
}

.bs-mv-box:hover .bs-mv-icon {
    background: #be2525;
    color: #ffffff;
}


/* Text */

.bs-mv-box h3 {
    color: #222222;
    font-size: 23px;
    margin: 0 0 10px;
}

.bs-mv-box p {
    color: #666666;
    font-size: 17px;
    line-height: 1.75;
    margin: 0;
}


/*=========================================================
3. CORE VALUES
=========================================================*/

.bs-values {
    padding: 100px 0;
    background: #ffffff;
}

.bs-values-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}

.bs-value-box {
    padding: 30px 25px;
    min-height: 250px;

    background: #f7f7f7;
    border: 1px solid #eeeeee;

    transition: all .3s ease;
}

.bs-value-box:hover {
    transform: translateY(-7px);

    background: #ffffff;

    border-color: #be2525;

    box-shadow: 0 15px 35px rgba(0, 0, 0, .07);
}


/* Icon */

.bs-value-icon {
    width: 58px;
    height: 58px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-bottom: 20px;

    background: #fbecec;
    color: #be2525;

    font-size: 22px;

    transition: all .3s ease;
}

.bs-value-box:hover .bs-value-icon {
    background: #be2525;
    color: #ffffff;
}


/* Text */

.bs-value-box h3 {
    color: #222222;
    font-size: 20px;
    margin: 0 0 10px;
}

.bs-value-box p {
    color: #666666;
    font-size: 17px;
    line-height: 1.7;
    margin: 0;
}


/*=========================================================
4. WHY BUILDSPHERE
=========================================================*/

.bs-about-why {
    padding: 100px 0;
    background: #f7f7f7;
}

.bs-about-why-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
    align-items: center;
}


/* Content */

.bs-about-why-content .bs-section-tag {
    padding-left: 0;
}

.bs-about-why-content .bs-section-tag::before {
    display: none;
}

.bs-about-why-content h2 {
    color: #222222;
    font-size: 44px;
    line-height: 1.2;
    font-weight: 700;
    margin: 10px 0 20px;
}

.bs-about-why-content h2 span {
    color: #be2525;
}

.bs-about-why-content > p {
    color: #666666;
    font-size: 17px;
    line-height: 1.8;
    margin: 0 0 30px;
}


/* Why Items */

.bs-about-why-item {
    display: flex;
    align-items: flex-start;
    gap: 15px;

    margin-bottom: 20px;
}

.bs-about-why-item > i {
    width: 28px;
    height: 28px;

    min-width: 28px;

    display: flex;
    align-items: center;
    justify-content: center;

    margin-top: 2px;

    background: #be2525;
    color: #ffffff;

    border-radius: 50%;

    font-size: 11px;
}

.bs-about-why-item h4 {
    color: #222222;
    font-size: 20px;
    margin: 0 0 5px;
}

.bs-about-why-item p {
    color: #666666;
    font-size: 15px;
    line-height: 1.6;
    margin: 0;
}


/* Image */

.bs-about-why-image {
    overflow: hidden;
}

.bs-about-why-image img {
    display: block;

    width: 100%;
    height: 550px;

    object-fit: cover;

    transition: transform .6s ease;
}

.bs-about-why-image:hover img {
    transform: scale(1.04);
}


/*=========================================================
5. WORKING PROCESS
=========================================================*/

.bs-process {
    padding: 100px 0;
    background: #ffffff;
}

.bs-process-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}

.bs-process-item {
    position: relative;

    padding: 35px 25px;

    min-height: 250px;

    background: #f7f7f7;

    border: 1px solid #eeeeee;

    transition: all .3s ease;
}

.bs-process-item:hover {
    transform: translateY(-6px);

    background: #ffffff;

    border-color: #be2525;

    box-shadow: 0 15px 35px rgba(0, 0, 0, .07);
}


/* Number */

.bs-process-number {
    color: #be2525;

    font-size: 40px;
    line-height: 1;

    font-weight: 700;

    margin-bottom: 25px;

    opacity: .85;
}


/* Process Content */

.bs-process-item h3 {
    color: #222222;

    font-size: 21px;

    margin: 0 0 10px;
}

.bs-process-item p {
    color: #666666;

    font-size: 17px;

    line-height: 1.7;

    margin: 0;
}





/*=========================================================
7. ABOUT PAGE FINAL CTA
=========================================================*/

.bs-final-cta {
    padding: 80px 0;

    background: #f6f6f6;
}

.bs-final-cta-wrapper {
    display: grid;

    grid-template-columns: 1.4fr .6fr;

    align-items: center;

    gap: 40px;

    padding: 45px 50px;

    background: #be2525;
}


/* Content */

.bs-final-cta-content .bs-section-tag {
    color: #ffffff;

    padding-left: 0;
}

.bs-final-cta-content .bs-section-tag::before {
    display: none;
}

.bs-final-cta-content h2 {
    color: #ffffff;

    font-size: 40px;
    line-height: 1.2;

    margin: 10px 0 15px;
}

.bs-final-cta-content h2 span {
    color: #ffffff;
}

.bs-final-cta-content p {
    max-width: 600px;

    color: rgba(255, 255, 255, .85);

    font-size: 17px;

    line-height: 1.7;

    margin: 0;
}


/* CTA Action */

.bs-final-cta-action {
    display: flex;

    justify-content: flex-end;
}

.bs-final-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 10px;

    min-height: 50px;

    padding: 0 25px;

    background: #ffffff;

    border: 1px solid #ffffff;

    color: #be2525;

    font-size: 14px;

    font-weight: 600;

    text-decoration: none;

    transition: all .3s ease;
}

.bs-final-btn:hover {
    background: #222222;

    border-color: #222222;

    color: #ffffff;
}


/*=========================================================
TABLET
=========================================================*/

@media (max-width: 991px) {

    /* About Intro */

    .bs-about-intro {
        padding: 75px 0;
    }

    .bs-about-intro-grid {
        grid-template-columns: 1fr;

        gap: 40px;
    }

    .bs-about-intro-content {
        padding-right: 0;
    }

    .bs-about-intro-image img {
        height: 500px;
    }


    /* Mission Vision */

    .bs-mission-vision {
        padding: 75px 0;
    }


    /* Values */

    .bs-values {
        padding: 75px 0;
    }

    .bs-values-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }


    /* Why */

    .bs-about-why {
        padding: 75px 0;
    }

    .bs-about-why-grid {
        grid-template-columns: 1fr;

        gap: 40px;
    }

    .bs-about-why-image {
        order: -1;
    }


    /* Process */

    .bs-process {
        padding: 75px 0;
    }

    .bs-process-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }


    /* CTA */

    .bs-final-cta-wrapper {
        grid-template-columns: 1fr;

        gap: 25px;
    }

    .bs-final-cta-action {
        justify-content: flex-start;
    }

}


/*=========================================================
MOBILE
=========================================================*/

@media (max-width: 767px) {

    /* Common Heading */

    .bs-section-heading {
        margin-bottom: 35px;
    }

    .bs-section-heading h2 {
        font-size: 32px;
    }

    .bs-section-heading p {
        font-size: 14px;
    }


    /* About Intro */

    .bs-about-intro {
        padding: 55px 0;
    }

    .bs-about-intro-grid {
        gap: 30px;
    }

    .bs-about-intro-image img {
        height: 350px;
    }

    .bs-about-intro-content h2 {
        font-size: 32px;
    }

    .bs-about-intro-content p {
        font-size: 14px;
    }

    .bs-about-btn {
        width: 100%;
    }


    /* Mission Vision */

    .bs-mission-vision {
        padding: 55px 0;
    }

    .bs-mv-grid {
        grid-template-columns: 1fr;

        gap: 12px;
    }

    .bs-mv-box {
        gap: 15px;

        padding: 25px 18px;
    }

    .bs-mv-icon {
        width: 50px;
        height: 50px;

        min-width: 50px;

        font-size: 19px;
    }

    .bs-mv-box h3 {
        font-size: 19px;
    }

    .bs-mv-box p {
        font-size: 17px;
    }


    /* Values */

    .bs-values {
        padding: 55px 0;
    }

    .bs-values-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));

        gap: 10px;
    }

    .bs-value-box {
        min-height: 220px;

        padding: 20px 15px;
    }

    .bs-value-icon {
        width: 45px;
        height: 45px;

        font-size: 18px;

        margin-bottom: 15px;
    }

    .bs-value-box h3 {
        font-size: 16px;
    }

    .bs-value-box p {
        font-size: 11px;

        line-height: 1.6;
    }


    /* Why Choose */

    .bs-about-why {
        padding: 55px 0;
    }

    .bs-about-why-grid {
        gap: 30px;
    }

    .bs-about-why-image img {
        height: 350px;
    }

    .bs-about-why-content h2 {
        font-size: 32px;
    }

    .bs-about-why-content > p {
        font-size: 14px;
    }

    .bs-about-why-item h4 {
        font-size: 15px;
    }

    .bs-about-why-item p {
        font-size: 11px;
    }


    /* Process */

    .bs-process {
        padding: 55px 0;
    }

    .bs-process-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));

        gap: 10px;
    }

    .bs-process-item {
        min-height: 220px;

        padding: 22px 15px;
    }

    .bs-process-number {
        font-size: 30px;

        margin-bottom: 18px;
    }

    .bs-process-item h3 {
        font-size: 16px;
    }

    .bs-process-item p {
        font-size: 11px;

        line-height: 1.6;
    }


    /* Final CTA */

    .bs-final-cta {
        padding: 55px 0;
    }

    .bs-final-cta-wrapper {
        padding: 30px 20px;
    }

    .bs-final-cta-content h2 {
        font-size: 30px;
    }

    .bs-final-cta-content p {
        font-size: 13px;
    }

    .bs-final-cta-action {
        width: 100%;
    }

    .bs-final-btn {
        width: 100%;
    }

}


/*=========================================================
SMALL MOBILE
=========================================================*/

@media (max-width: 480px) {

    .bs-about-intro-image img {
        height: 300px;
    }

    .bs-about-why-image img {
        height: 300px;
    }

    .bs-values-grid,
    .bs-process-grid {
        gap: 8px;
    }

    .bs-value-box,
    .bs-process-item {
        padding: 18px 12px;
    }

}


/*========================================
Clientele Counter Section
=========================================*/

.bs-clientele {
    padding: 75px 0;
    background: #f7f7f7;
}


/*========================================
Clientele Grid
=========================================*/

.bs-clientele-grid {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 20px;
}


/*========================================
Clientele Item
=========================================*/

.bs-clientele-item {
    position: relative;

    padding: 30px 25px;

    text-align: center;

    background: #ffffff;

    border: 1px solid #e8e8e8;

    transition: all .3s ease;
}


/* Hover */

.bs-clientele-item:hover {
    transform: translateY(-6px);

    border-color: #be2525;

    box-shadow: 0 15px 35px rgba(0, 0, 0, .07);
}


/*========================================
Counter Number
=========================================*/

.bs-clientele-number {
    display: flex;

    align-items: baseline;

    justify-content: center;

    color: #be2525;

    font-size: 48px;

    line-height: 1;

    font-weight: 700;

    margin-bottom: 15px;
}


/*========================================
Plus Symbol
=========================================*/

.bs-counter-plus {
    font-size: 30px;

    line-height: 1;

    margin-left: 2px;
}


/*========================================
Counter Title
=========================================*/

.bs-clientele-item h3 {
    color: #222222;

    font-size: 17px;

    line-height: 1.4;

    font-weight: 600;

    margin: 0 0 8px;
}


/*========================================
Counter Description
=========================================*/

.bs-clientele-item p {
    color: #777777;

    font-size: 17px;

    line-height: 1.6;

    margin: 0;
}


/*========================================
Tablet
=========================================*/

@media (max-width: 991px) {

    .bs-clientele {
        padding: 65px 0;
    }

    .bs-clientele-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 15px;
    }

}


/*========================================
Mobile
=========================================*/

@media (max-width: 767px) {

    .bs-clientele {
        padding: 55px 0;
    }

    .bs-clientele-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 10px;
    }

    .bs-clientele-item {
        padding: 25px 12px;
    }


    /* Counter number */

    .bs-clientele-number {
        font-size: 36px;

        margin-bottom: 10px;
    }


    /* Plus */

    .bs-counter-plus {
        font-size: 23px;
    }


    /* Title */

    .bs-clientele-item h3 {
        font-size: 17px;
    }


    /* Description */

    .bs-clientele-item p {
        font-size: 11px;
    }

}


/*========================================
Small Mobile
=========================================*/

@media (max-width: 480px) {

    .bs-clientele-item {
        padding: 20px 10px;
    }

    .bs-clientele-number {
        font-size: 32px;
    }

    .bs-counter-plus {
        font-size: 20px;
    }

    .bs-clientele-item h3 {
        font-size: 17px;
    }

}

/*========================================
Our Commitment
=========================================*/

.bs-commitment {
    padding: 100px 0;

    background: #ffffff;
}


/*========================================
Wrapper
=========================================*/

.bs-commitment-wrapper {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 70px;

    align-items: center;
}


/*========================================
Content
=========================================*/

.bs-commitment-content .bs-section-tag {
    padding-left: 0;
}

.bs-commitment-content .bs-section-tag::before {
    display: none;
}


.bs-commitment-content h2 {
    color: #222222;

    font-size: 44px;

    line-height: 1.2;

    font-weight: 700;

    margin: 10px 0 20px;
}


.bs-commitment-content h2 span {
    color: #be2525;
}


.bs-commitment-content p {
    color: #666666;

    font-size: 17px;

    line-height: 1.8;

    margin: 0 0 15px;
}


/*========================================
Commitment Points
=========================================*/

.bs-commitment-points {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 15px;
}


/*========================================
Commitment Item
=========================================*/

.bs-commitment-item {
    display: flex;

    align-items: flex-start;

    gap: 15px;

    padding: 25px 20px;

    background: #f7f7f7;

    border: 1px solid #eeeeee;

    transition: all .3s ease;
}


.bs-commitment-item:hover {
    transform: translateY(-5px);

    background: #ffffff;

    border-color: #be2525;

    box-shadow: 0 12px 30px rgba(0, 0, 0, .06);
}


/*========================================
Icon
=========================================*/

.bs-commitment-icon {
    width: 45px;

    height: 45px;

    min-width: 45px;

    display: flex;

    align-items: center;

    justify-content: center;

    background: #fbecec;

    color: #be2525;

    font-size: 16px;

    transition: all .3s ease;
}


.bs-commitment-item:hover .bs-commitment-icon {
    background: #be2525;

    color: #ffffff;
}


/*========================================
Text
=========================================*/

.bs-commitment-item h3 {
    color: #222222;

    font-size: 17px;

    line-height: 1.3;

    margin: 0 0 6px;
}


.bs-commitment-item p {
    color: #777777;

    font-size: 17px;

    line-height: 1.6;

    margin: 0;
}


/*========================================
Tablet
=========================================*/

@media (max-width: 991px) {

    .bs-commitment {
        padding: 75px 0;
    }

    .bs-commitment-wrapper {
        grid-template-columns: 1fr;

        gap: 40px;
    }

}


/*========================================
Mobile
=========================================*/

@media (max-width: 767px) {

    .bs-commitment {
        padding: 55px 0;
    }

    .bs-commitment-wrapper {
        gap: 30px;
    }

    .bs-commitment-content h2 {
        font-size: 32px;
    }

    .bs-commitment-content p {
        font-size: 14px;
    }


    .bs-commitment-points {
        grid-template-columns: 1fr 1fr;

        gap: 10px;
    }


    .bs-commitment-item {
        display: block;

        padding: 20px 15px;
    }


    .bs-commitment-icon {
        margin-bottom: 12px;
    }


    .bs-commitment-item h3 {
        font-size: 15px;
    }


    .bs-commitment-item p {
        font-size: 11px;
    }

}


/*========================================
Small Mobile
=========================================*/

@media (max-width: 480px) {

    .bs-commitment-points {
        gap: 8px;
    }

    .bs-commitment-item {
        padding: 18px 12px;
    }

    .bs-commitment-icon {
        width: 40px;
        height: 40px;

        min-width: 40px;

        font-size: 14px;
    }

}

/*========================================
Product Specifications
=========================================*/

.bs-product-specifications {
    padding: 100px 0;
    background: #f7f7f7;
}


/*========================================
Section Heading
=========================================*/

.bs-product-specifications .bs-section-heading {
    max-width: 700px;

    margin: 0 auto 45px;

    text-align: center;
}

.bs-product-specifications .bs-section-heading h2 {
    color: #222222;

    font-size: 42px;
    line-height: 1.2;

    margin: 10px 0 15px;
}

.bs-product-specifications .bs-section-heading h2 span {
    color: #be2525;
}

.bs-product-specifications .bs-section-heading p {
    color: #666666;

    font-size: 14px;
    line-height: 1.8;

    margin: 0;
}


/*========================================
Specification Card
=========================================*/

.bs-spec-card {
    max-width: 1000px;

    margin: 0 auto;

    background: #ffffff;

    border: 1px solid #e5e5e5;

    box-shadow: 0 15px 40px rgba(0, 0, 0, .06);

    overflow: hidden;
}


/*========================================
Header
=========================================*/

.bs-spec-header {
    padding: 30px 35px;

    background: #be2525;

    color: #ffffff;
}

.bs-spec-header span {
    display: block;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 1.5px;

    margin-bottom: 6px;

    opacity: .85;
}

.bs-spec-header h3 {
    color: #ffffff;

    font-size: 25px;

    margin: 0;
}


/*========================================
Specification List
=========================================*/

.bs-spec-list {
    width: 100%;
}


/*========================================
Specification Row
=========================================*/

.bs-spec-row {
    display: grid;

    grid-template-columns: 40% 60%;

    min-height: 65px;

    border-bottom: 1px solid #eeeeee;

    transition: all .3s ease;
}


/* Last row */

.bs-spec-row:last-child {
    border-bottom: 0;
}


/* Alternate background */

.bs-spec-row:nth-child(even) {
    background: #fafafa;
}


/* Hover */

.bs-spec-row:hover {
    background: #fff5f5;
}


/*========================================
Specification Label
=========================================*/

.bs-spec-label {
    display: flex;

    align-items: center;

    padding: 15px 25px;

    color: #333333;

    font-size: 17px;

    font-weight: 600;

    border-right: 1px solid #eeeeee;
}


/*========================================
Specification Value
=========================================*/

.bs-spec-value {
    display: flex;

    align-items: center;

    padding: 15px 25px;

    color: #666666;

    font-size: 17px;

    line-height: 1.6;
}


/*========================================
Tablet
=========================================*/

@media (max-width: 991px) {

    .bs-product-specifications {
        padding: 75px 0;
    }

    .bs-spec-card {
        max-width: 100%;
    }

}


/*========================================
Mobile
=========================================*/

@media (max-width: 767px) {

    .bs-product-specifications {
        padding: 55px 0;
    }

    .bs-product-specifications .bs-section-heading {
        margin-bottom: 30px;
    }

    .bs-product-specifications .bs-section-heading h2 {
        font-size: 32px;
    }

    .bs-product-specifications .bs-section-heading p {
        font-size: 13px;
    }


    /* Header */

    .bs-spec-header {
        padding: 22px 18px;
    }

    .bs-spec-header h3 {
        font-size: 20px;
    }


    /* Mobile rows */

    .bs-spec-row {
        grid-template-columns: 1fr;
    }


    .bs-spec-label {
        padding: 12px 15px;

        border-right: 0;

        border-bottom: 1px solid #eeeeee;

        background: #f7f7f7;

        font-size: 17px;
    }


    .bs-spec-value {
        padding: 12px 15px;

        font-size: 17px;
    }

}

/*=========================================================
PRODUCT DETAIL PAGE
=========================================================*/


/*=========================================================
PRODUCT MAIN
=========================================================*/




/*=========================================================
PRODUCT IMAGE
=========================================================*/

.bs-product-gallery {
    width: 100%;
}

.bs-product-main-image {
    width: 100%;
    height: 550px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 35px;

    background: #f7f7f7;

    border: 1px solid #eeeeee;
}

.bs-product-main-image img {
    width: 100%;
    height: 100%;

    object-fit: contain;
}


/*=========================================================
PRODUCT INFORMATION
=========================================================*/

.bs-product-category {
    display: block;

    color: #be2525;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 1.5px;

    margin-bottom: 10px;
}

.bs-product-information h2 {
    color: #222222;

    font-size: 44px;

    line-height: 1.2;

    font-weight: 700;

    margin: 0 0 18px;
}

.bs-product-short-description {
    color: #666666;

    font-size: 15px;

    line-height: 1.8;

    margin: 0 0 25px;
}


/*=========================================================
PRODUCT HIGHLIGHTS
=========================================================*/

.bs-product-highlights {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 12px;

    margin-bottom: 30px;
}

.bs-product-highlight {
    display: flex;

    align-items: center;

    gap: 10px;

    color: #444444;

    font-size: 13px;
}

.bs-product-highlight i {
    color: #be2525;

    font-size: 13px;
}


/*=========================================================
PRODUCT BUTTONS
=========================================================*/

.bs-product-actions {
    display: flex;

    align-items: center;

    gap: 12px;
}

.bs-product-btn,
.bs-product-call {
    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 10px;

    min-height: 50px;

    padding: 0 24px;

    font-size: 13px;

    font-weight: 600;

    text-decoration: none;

    transition: all .3s ease;
}

.bs-product-btn {
    background: #be2525;

    border: 1px solid #be2525;

    color: #ffffff;
}

.bs-product-btn:hover {
    background: #222222;

    border-color: #222222;

    color: #ffffff;
}

.bs-product-call {
    background: #ffffff;

    border: 1px solid #dddddd;

    color: #222222;
}

.bs-product-call:hover {
    border-color: #be2525;

    color: #be2525;
}


/*=========================================================
PRODUCT DESCRIPTION
=========================================================*/

.bs-product-description {
    padding: 100px 0;

    background: #f7f7f7;
}

.bs-product-content {
    max-width: 1000px;

    margin: 0 auto;

    text-align: center;
}

.bs-product-content .bs-section-tag {
    padding-left: 0;
}

.bs-product-content .bs-section-tag::before {
    display: none;
}

.bs-product-content h2 {
    color: #222222;

    font-size: 42px;

    line-height: 1.2;

    margin: 10px 0 22px;
}

.bs-product-content h2 span {
    color: #be2525;
}

.bs-product-content p {
    color: #666666;

    font-size: 17px;

    line-height: 1.9;

    margin: 0 auto 15px;
}


/*=========================================================
FEATURES
=========================================================*/

.bs-product-features {
    padding: 100px 0;

    background: #ffffff;
}

.bs-feature-grid {
    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 20px;
}

.bs-feature-box {
    padding: 30px 25px;

    min-height: 240px;

    background: #f7f7f7;

    border: 1px solid #eeeeee;

    transition: all .3s ease;
}

.bs-feature-box:hover {
    transform: translateY(-6px);

    background: #ffffff;

    border-color: #be2525;

    box-shadow: 0 15px 35px rgba(0, 0, 0, .06);
}

.bs-feature-icon {
    width: 55px;
    height: 55px;

    display: flex;

    align-items: center;

    justify-content: center;

    margin-bottom: 20px;

    background: #fbecec;

    color: #be2525;

    font-size: 20px;
}

.bs-feature-box h3 {
    color: #222222;

    font-size: 19px;

    margin: 0 0 10px;
}

.bs-feature-box p {
    color: #666666;

    font-size: 17px;

    line-height: 1.7;

    margin: 0;
}


/*=========================================================
APPLICATIONS
=========================================================*/

.bs-product-applications {
    padding: 100px 0;

    background: #f7f7f7;
}

.bs-product-application-grid {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 60px;

    align-items: center;
}

.bs-product-application-image {
    overflow: hidden;
}

.bs-product-application-image img {
    width: 100%;

    height: 500px;

    display: block;

    object-fit: cover;
}

.bs-product-application-content .bs-section-tag {
    padding-left: 0;
}

.bs-product-application-content .bs-section-tag::before {
    display: none;
}

.bs-product-application-content h2 {
    color: #222222;

    font-size: 42px;

    line-height: 1.2;

    margin: 10px 0 20px;
}

.bs-product-application-content h2 span {
    color: #be2525;
}

.bs-product-application-content > p {
    color: #666666;

    font-size: 17px;

    line-height: 1.8;

    margin: 0 0 25px;
}

.bs-product-application-content ul {
    padding: 0;

    margin: 0;

    list-style: none;
}

.bs-product-application-content li {
    display: flex;

    align-items: center;

    gap: 10px;

    color: #444444;

    font-size: 17px;

    margin-bottom: 14px;
}

.bs-product-application-content li i {
    color: #be2525;
}


/*=========================================================
SPECIFICATIONS
=========================================================*/

.bs-product-specifications {
    padding: 100px 0;

    background: #ffffff;
}

.bs-spec-table-wrapper {
    width: 100%;

    overflow-x: auto;
}

.bs-spec-table {
    width: 100%;

    border-collapse: collapse;

    border: 1px solid #e5e5e5;
}

.bs-spec-table th,
.bs-spec-table td {
    padding: 17px 20px;

    border-bottom: 1px solid #e5e5e5;

    text-align: left;

    font-size: 14px;
}

.bs-spec-table th {
    width: 35%;

    color: #222222;

    background: #f7f7f7;

    font-weight: 600;
}

.bs-spec-table td {
    color: #666666;

    background: #ffffff;
}

.bs-spec-table tr:last-child th,
.bs-spec-table tr:last-child td {
    border-bottom: 0;
}


/*========================================================
RELATED PRODUCTS
=========================================================*/

.bs-related-products {
    padding: 90px 0;
    background: #f7f7f7;
}


/* Heading */

.bs-related-products .bs-section-heading {
    margin-bottom: 35px;
}

.bs-related-products .bs-section-tag {
    display: block;

    color: #be2525;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 1.5px;

    margin-bottom: 8px;
}

.bs-related-products .bs-section-heading h2 {
    margin: 0;

    color: #222222;

    font-size: 38px;
}

.bs-related-products .bs-section-heading h2 span {
    color: #be2525;
}


/*========================================================
SLIDER
=========================================================*/

.bs-related-slider {
    width: 100%;

    padding: 5px 5px 55px !important;
}

.bs-related-slider .swiper-slide {
    height: auto;

    display: flex;
}


/*========================================================
CARD
=========================================================*/

.bs-related-card {
    width: 100%;

    background: #ffffff;

    border: 1px solid #e5e5e5;

    transition: all .3s ease;

    overflow: hidden;
}

.bs-related-card:hover {
    transform: translateY(-5px);

    box-shadow: 0 12px 30px rgba(0,0,0,.08);
}


/* Image */

.bs-related-image {
    width: 100%;

    height: 230px;

    overflow: hidden;

    background: #eeeeee;
}

.bs-related-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform .5s ease;
}

.bs-related-card:hover .bs-related-image img {
    transform: scale(1.05);
}


/* Content */

.bs-related-content {
    padding: 22px;
}

.bs-related-content span {
    display: block;

    color: #be2525;
    font-size: 13px;

    /* font-size: 9px; */
    font-weight: 700;

    letter-spacing: 1.3px;

    margin-bottom: 7px;
}

.bs-related-content h3 {
    color: #222222;

    font-size: 19px;
    line-height: 1.3;

    margin: 0 0 15px;
}

.bs-related-content a {
    display: inline-flex;

    align-items: center;

    gap: 8px;

    color: #222222;

    font-size: 16px;
    font-weight: 600;

    text-decoration: none;

    transition: all .3s ease;
}

.bs-related-content a i {
    color: #be2525;

    transition: transform .3s ease;
}

.bs-related-content a:hover {
    color: #be2525;
}

.bs-related-content a:hover i {
    transform: translateX(4px);
}


/*========================================================
NAVIGATION
=========================================================*/

.bs-related-prev,
.bs-related-next {
    width: 38px;
    height: 38px;

    display: flex;

    align-items: center;
    justify-content: center;

    background: #ffffff;

    border: 1px solid #dddddd;

    color: #222222;

    cursor: pointer;

    transition: all .3s ease;

    position: absolute;

    bottom: 0;

    z-index: 10;
}

.bs-related-prev {
    left: 5px;
}

.bs-related-next {
    left: 52px;
}

.bs-related-prev:hover,
.bs-related-next:hover {
    background: #be2525;

    border-color: #be2525;

    color: #ffffff;
}

.bs-related-prev.swiper-button-disabled,
.bs-related-next.swiper-button-disabled {
    opacity: .4;

    cursor: not-allowed;
}


/*========================================================
PAGINATION
=========================================================*/

.bs-related-pagination {
    position: absolute;

    right: 5px !important;

    bottom: 10px !important;

    left: auto !important;

    width: auto !important;
}

.bs-related-pagination .swiper-pagination-bullet {
    width: 7px;
    height: 7px;

    opacity: .35;
}

.bs-related-pagination .swiper-pagination-bullet-active {
    opacity: 1;
}


/*========================================================
TABLET
=========================================================*/

@media (max-width: 991px) {

    .bs-related-products {
        padding: 70px 0;
    }

    .bs-related-image {
        height: 220px;
    }

}


/*========================================================
MOBILE
=========================================================*/

@media (max-width: 767px) {

    .bs-related-products {
        padding: 55px 0;
    }

    .bs-related-products .bs-section-heading h2 {
        font-size: 30px;
    }

    .bs-related-image {
        height: 220px;
    }

    .bs-related-content {
        padding: 18px;
    }

}

/*=========================================================
PRODUCT CTA
=========================================================*/

.bs-product-cta {
    padding: 80px 0;

    background: #ffffff;
}

.bs-product-cta-wrapper {
    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 40px;

    padding: 45px 50px;

    background: #be2525;
}

.bs-product-cta-wrapper > div:first-child {
    max-width: 750px;
}

.bs-product-cta-wrapper span {
    color: #ffffff;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 1.5px;
}

.bs-product-cta-wrapper h2 {
    color: #ffffff;

    font-size: 36px;

    line-height: 1.25;

    margin: 10px 0 12px;
}

.bs-product-cta-wrapper p {
    color: rgba(255,255,255,.85);

    font-size: 14px;

    line-height: 1.7;

    margin: 0;
}

.bs-product-cta-btn {
    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 10px;

    min-height: 50px;

    padding: 0 25px;

    background: #ffffff;

    border: 1px solid #ffffff;

    color: #be2525;

    font-size: 14px;

    font-weight: 600;

    text-decoration: none;

    white-space: nowrap;

    transition: all .3s ease;
}

.bs-product-cta-btn:hover {
    background: #222222;

    border-color: #222222;

    color: #ffffff;
}


/*=========================================================
TABLET
=========================================================*/

@media (max-width: 991px) {

    .bs-product-detail,
    .bs-product-description,
    .bs-product-features,
    .bs-product-applications,
    .bs-product-specifications,
    .bs-related-products {
        padding: 75px 0;
    }

    .bs-product-detail-grid {
        grid-template-columns: 1fr;

        gap: 40px;
    }

    .bs-product-main-image {
        height: 500px;
    }

    .bs-feature-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

    .bs-product-application-grid {
        grid-template-columns: 1fr;

        gap: 40px;
    }

    .bs-related-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

}


/*=========================================================
MOBILE
=========================================================*/

@media (max-width: 767px) {

    .bs-product-detail,
    .bs-product-description,
    .bs-product-features,
    .bs-product-applications,
    .bs-product-specifications,
    .bs-related-products {
        padding: 55px 0;
    }


    /* Product */

    .bs-product-main-image {
        height: 350px;

        padding: 20px;
    }

    .bs-product-information h2 {
        font-size: 32px;
    }

    .bs-product-short-description {
        font-size: 14px;
    }

    .bs-product-highlights {
        grid-template-columns: 1fr;
    }

    .bs-product-actions {
        flex-direction: column;

        align-items: stretch;
    }

    .bs-product-btn,
    .bs-product-call {
        width: 100%;
    }


    /* Description */

    .bs-product-content h2 {
        font-size: 32px;
    }

    .bs-product-content p {
        font-size: 14px;
    }


    /* Features */

    .bs-feature-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 10px;
    }

    .bs-feature-box {
        min-height: 210px;

        padding: 22px 15px;
    }

    .bs-feature-icon {
        width: 45px;
        height: 45px;

        font-size: 17px;

        margin-bottom: 15px;
    }

    .bs-feature-box h3 {
        font-size: 16px;
    }

    .bs-feature-box p {
        font-size: 11px;
    }


    /* Applications */

    .bs-product-application-image img {
        height: 350px;
    }

    .bs-product-application-content h2 {
        font-size: 32px;
    }

    .bs-product-application-content > p {
        font-size: 13px;
    }

    .bs-product-application-content li {
        font-size: 13px;
    }


    /* Specification */

    .bs-spec-table {
        min-width: 600px;
    }


    /* Related */

    .bs-related-grid {
        grid-template-columns: 1fr;
    }

    .bs-related-image {
        height: 220px;
    }


    /* CTA */

    .bs-product-cta {
        padding: 55px 0;
    }

    .bs-product-cta-wrapper {
        flex-direction: column;

        align-items: flex-start;

        padding: 30px 20px;
    }

    .bs-product-cta-wrapper h2 {
        font-size: 29px;
    }

    .bs-product-cta-btn {
        width: 100%;
    }

}


/*========================================
Product Advantages
=========================================*/

.bs-product-advantages {
    padding: 100px 0;

    background: #ffffff;
}


/*========================================
Advantages Grid
=========================================*/

.bs-advantages-grid {
    display: grid;

    grid-template-columns:
        repeat(3, minmax(0, 1fr));

    gap: 20px;
}


/*========================================
Advantage Box
=========================================*/

.bs-advantage-box {
    position: relative;

    min-height: 230px;

    padding: 30px 25px;

    background: #f7f7f7;

    border: 1px solid #eeeeee;

    overflow: hidden;

    transition: all .3s ease;
}


/* Top Line */

.bs-advantage-box::before {
    content: "";

    position: absolute;

    top: 0;
    left: 0;

    width: 0;
    height: 3px;

    background: #be2525;

    transition: width .3s ease;
}


.bs-advantage-box:hover::before {
    width: 100%;
}


.bs-advantage-box:hover {
    background: #ffffff;

    border-color: #be2525;

    transform: translateY(-6px);

    box-shadow: 0 15px 35px rgba(0, 0, 0, .06);
}


/*========================================
Number
=========================================*/

.bs-advantage-number {
    display: block;

    color: #be2525;

    font-size: 28px;

    line-height: 1;

    font-weight: 700;

    margin-bottom: 25px;

    opacity: .8;
}


/*========================================
Title
=========================================*/

.bs-advantage-box h3 {
    color: #222222;

    font-size: 19px;

    line-height: 1.3;

    margin: 0 0 10px;
}


/*========================================
Description
=========================================*/

.bs-advantage-box p {
    color: #666666;

    font-size: 17px;

    line-height: 1.7;

    margin: 0;
}


/*========================================
Tablet
=========================================*/

@media (max-width: 991px) {

    .bs-product-advantages {
        padding: 75px 0;
    }

    .bs-advantages-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));
    }

}


/*========================================
Mobile
=========================================*/

@media (max-width: 767px) {

    .bs-product-advantages {
        padding: 55px 0;
    }

    .bs-advantages-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: 10px;
    }

    .bs-advantage-box {
        min-height: 210px;

        padding: 22px 15px;
    }

    .bs-advantage-number {
        font-size: 23px;

        margin-bottom: 18px;
    }

    .bs-advantage-box h3 {
        font-size: 16px;
    }

    .bs-advantage-box p {
        font-size: 11px;

        line-height: 1.6;
    }

}


/*========================================
PRODUCT FAQ V2
=========================================*/

.bs-pdetail-faq-v2 {
    padding: 90px 0;
    background: #f7f7f7;
}


/*========================================
HEADING
=========================================*/

.bs-pdetail-faq-v2-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;

    gap: 50px;

    margin-bottom: 50px;
}

.bs-pdetail-faq-v2-tag {
    display: block;

    color: #be2525;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 1.5px;

    margin-bottom: 10px;
}

.bs-pdetail-faq-v2-heading h2 {
    margin: 0;

    color: #222;

    font-size: 42px;
    line-height: 1.15;
}

.bs-pdetail-faq-v2-heading h2 span {
    color: #be2525;
}

.bs-pdetail-faq-v2-heading > p {
    max-width: 450px;

    margin: 0;

    color: #666;

    font-size: 14px;
    line-height: 1.8;
}


/*========================================
MAIN GRID
=========================================*/

.bs-pdetail-faq-v2-grid {
    display: grid;

    grid-template-columns: 390px 1fr;

    gap: 45px;

    align-items: start;
}


/*========================================
LEFT IMAGE
=========================================*/

.bs-pdetail-faq-v2-info {
    position: relative;
}

.bs-pdetail-faq-v2-image {
    width: 100%;
    height: 245px;

    overflow: hidden;
}

.bs-pdetail-faq-v2-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;
}


/*========================================
CONTACT CARD
=========================================*/

.bs-pdetail-faq-v2-contact {
    margin: -30px 20px 0 0;

    position: relative;

    padding: 27px 28px;

    background: #be2525;

    z-index: 2;
}

.bs-pdetail-faq-v2-contact span {
    display: block;

    color: rgba(255,255,255,.75);

    font-size: 14px;
    font-weight: 700;

    letter-spacing: 1.5px;

    margin-bottom: 8px;
}

.bs-pdetail-faq-v2-contact h3 {
    color: #fff;

    font-size: 22px;
    line-height: 1.3;

    margin: 0 0 12px;
}

.bs-pdetail-faq-v2-contact p {
    color: rgba(255,255,255,.85);

    font-size: 17px;
    line-height: 1.7;

    margin: 0 0 18px;
}

.bs-pdetail-faq-v2-contact a {
    display: inline-flex;

    align-items: center;

    gap: 8px;

    padding: 12px 17px;

    background: #fff;

    color: #be2525;

    font-size: 17px;
    font-weight: 600;

    text-decoration: none;

    transition: .3s ease;
}

.bs-pdetail-faq-v2-contact a:hover {
    background: #222;
    color: #fff;
}


/*========================================
FAQ LIST
=========================================*/

.bs-pdetail-faq-v2-list {
    border-top: 1px solid #ddd;
}


/*========================================
FAQ ITEM
=========================================*/

.bs-pdetail-faq-v2-item {
    border-bottom: 1px solid #ddd;

    background: transparent;
}

.bs-pdetail-faq-v2-item.active {
    background: #fff;

    border-left: 3px solid #be2525;
}


/*========================================
QUESTION
=========================================*/

.bs-pdetail-faq-v2-question {
    width: 100%;

    min-height: 70px;

    padding: 0 22px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 20px;

    background: transparent;

    border: 0;

    color: #222;

    font-family: inherit;

    font-size: 17px;
    font-weight: 600;

    text-align: left;

    cursor: pointer;
}

.bs-pdetail-faq-v2-question b {
    width: 28px;
    height: 28px;

    display: flex;

    align-items: center;
    justify-content: center;

    background: #fff;

    color: #be2525;

    font-size: 18px;

    font-weight: 400;

    transition: .3s ease;
}

.bs-pdetail-faq-v2-item.active
.bs-pdetail-faq-v2-question b {
    background: #be2525;

    color: #fff;

    transform: rotate(45deg);
}


/*========================================
ANSWER
=========================================*/

.bs-pdetail-faq-v2-answer {
    max-height: 0;

    overflow: hidden;

    transition: max-height .4s ease;
}

.bs-pdetail-faq-v2-answer p {
    margin: 0;

    padding: 0 50px 0 22px;

    color: #666;

    font-size: 17px;

    line-height: 1.8;
}

.bs-pdetail-faq-v2-item.active
.bs-pdetail-faq-v2-answer {
    max-height: 180px;
}

.bs-pdetail-faq-v2-item.active
.bs-pdetail-faq-v2-answer p {
    padding-bottom: 22px;
}


/*========================================
TABLET
=========================================*/

@media (max-width: 991px) {

    .bs-pdetail-faq-v2 {
        padding: 70px 0;
    }

    .bs-pdetail-faq-v2-heading {
        display: block;
    }

    .bs-pdetail-faq-v2-heading > p {
        margin-top: 15px;
    }

    .bs-pdetail-faq-v2-grid {
        grid-template-columns: 1fr;
    }

    .bs-pdetail-faq-v2-info {
        max-width: 600px;
    }

}


/*========================================
MOBILE
=========================================*/

@media (max-width: 767px) {

    .bs-pdetail-faq-v2 {
        padding: 55px 0;
    }

    .bs-pdetail-faq-v2-heading {
        margin-bottom: 30px;
    }

    .bs-pdetail-faq-v2-heading h2 {
        font-size: 31px;
    }

    .bs-pdetail-faq-v2-heading > p {
        font-size: 13px;
    }

    .bs-pdetail-faq-v2-grid {
        gap: 35px;
    }

    .bs-pdetail-faq-v2-image {
        height: 220px;
    }

    .bs-pdetail-faq-v2-contact {
        margin-top: -20px;

        margin-right: 12px;

        padding: 22px 18px;
    }

    .bs-pdetail-faq-v2-contact h3 {
        font-size: 20px;
    }

    .bs-pdetail-faq-v2-question {
        min-height: 60px;

        padding: 0 15px;

        font-size: 17px;
    }

    .bs-pdetail-faq-v2-answer p {
        padding-left: 15px;
        padding-right: 15px;

        font-size: 17px;
    }

}

/*========================================
PRODUCT DETAIL SIDEBAR
=========================================*/

.bs-pdetail-sidebar {
    width: 100%;
}


/*========================================
SIDEBAR BOX
=========================================*/

.bs-pdetail-sidebar-box {
    margin-bottom: 25px;

    background: #ffffff;

    border: 1px solid #e5e5e5;
}


/*========================================
SIDEBAR TITLE
=========================================*/

.bs-pdetail-sidebar-title {
    padding: 25px 25px 20px;

    border-bottom: 1px solid #eeeeee;
}

.bs-pdetail-sidebar-title span {
    display: block;

    color: #be2525;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 1.5px;

    margin-bottom: 7px;
}

.bs-pdetail-sidebar-title h3 {
    margin: 0;

    color: #222222;

    font-size: 22px;

    line-height: 1.3;
}


/*========================================
CATEGORY LIST
=========================================*/

.bs-pdetail-category-list {
    list-style: none;

    padding: 0;

    margin: 0;
}

.bs-pdetail-category-list li {
    border-bottom: 1px solid #eeeeee;
}

.bs-pdetail-category-list li:last-child {
    border-bottom: 0;
}

.bs-pdetail-category-list a {
    min-height: 55px;

    padding: 0 20px 0 25px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 15px;

    color: #444444;

    font-size: 13px;

    font-weight: 500;

    text-decoration: none;

    transition: all .3s ease;
}

.bs-pdetail-category-list a span {
    color: #be2525;

    font-size: 17px;

    transition: transform .3s ease;
}

.bs-pdetail-category-list li:hover a,
.bs-pdetail-category-list li.active a {
    color: #be2525;

    background: #fafafa;
}

.bs-pdetail-category-list li:hover a span,
.bs-pdetail-category-list li.active a span {
    transform: translateX(4px);
}


/*========================================
QUICK ENQUIRY
=========================================*/

.bs-pdetail-sidebar-enquiry {
    position: relative;

    margin-bottom: 25px;

    padding: 30px 25px;

    background: #be2525;

    overflow: hidden;
}

.bs-pdetail-sidebar-enquiry::after {
    content: "";

    position: absolute;

    width: 120px;

    height: 120px;

    right: -55px;

    bottom: -60px;

    border: 1px solid rgba(255,255,255,.2);

    border-radius: 50%;
}

.bs-pdetail-sidebar-enquiry span,
.bs-pdetail-sidebar-contact span {
    display: block;

    color: rgba(255,255,255,.75);

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 1.5px;

    margin-bottom: 9px;
}

.bs-pdetail-sidebar-enquiry h3 {
    position: relative;

    z-index: 1;

    color: #ffffff;

    font-size: 22px;

    line-height: 1.3;

    margin: 0 0 12px;
}

.bs-pdetail-sidebar-enquiry p {
    position: relative;

    z-index: 1;

    color: rgba(255,255,255,.85);

    font-size: 17px;

    line-height: 1.7;

    margin: 0 0 20px;
}


/*========================================
SIDEBAR BUTTON
=========================================*/

.bs-pdetail-sidebar-btn {
    position: relative;

    z-index: 2;

    display: inline-flex;

    align-items: center;

    gap: 8px;

    min-height: 42px;

    padding: 0 17px;

    background: #ffffff;

    color: #be2525;

    font-size: 17px;

    font-weight: 600;

    text-decoration: none;

    transition: all .3s ease;
}

.bs-pdetail-sidebar-btn:hover {
    background: #222222;

    color: #ffffff;
}


/*========================================
CONTACT BOX
=========================================*/

.bs-pdetail-sidebar-contact {
    padding: 27px 25px;

    background: #222222;
}

.bs-pdetail-sidebar-contact h3 {
    color: #ffffff;

    font-size: 21px;

    line-height: 1.3;

    margin: 0 0 12px;
}

.bs-pdetail-sidebar-contact p {
    color: #bbbbbb;

    font-size: 17px;

    line-height: 1.7;

    margin: 0 0 18px;
}

.bs-pdetail-sidebar-contact a {
    display: block;

    color: #ffffff;

    font-size: 13px;

    text-decoration: none;

    margin-top: 8px;

    transition: color .3s ease;
}

.bs-pdetail-sidebar-contact a:hover {
    color: #be2525;
}


/*========================================
TABLET
=========================================*/

@media (max-width: 991px) {

    .bs-pdetail-sidebar {
        margin-top: 40px;
    }

}


/*========================================
MOBILE
=========================================*/

@media (max-width: 767px) {

    .bs-pdetail-sidebar-box {
        margin-bottom: 18px;
    }

    .bs-pdetail-sidebar-title {
        padding: 20px 18px 16px;
    }

    .bs-pdetail-sidebar-title h3 {
        font-size: 20px;
    }

    .bs-pdetail-category-list a {
        min-height: 50px;

        padding-left: 18px;
        padding-right: 18px;

        font-size: 17px;
    }

    .bs-pdetail-sidebar-enquiry {
        margin-bottom: 18px;

        padding: 25px 20px;
    }

    .bs-pdetail-sidebar-enquiry h3 {
        font-size: 20px;
    }

    .bs-pdetail-sidebar-contact {
        padding: 24px 20px;
    }

}

/*========================================================
PRODUCT DETAIL SECTION
=========================================================*/

.bs-product-detail {
    width: 100%;

    padding: 90px 0;

    background: #ffffff;
}


/*========================================================
MAIN PRODUCT + SIDEBAR LAYOUT
=========================================================*/

.bs-product-main-layout {

    display: grid;

    grid-template-columns:
        minmax(0, 1fr)
        320px;

    gap: 40px;

    align-items: start;
}


/*========================================================
LEFT PRODUCT CONTENT
=========================================================*/

.bs-product-main-content {
    width: 100%;

    min-width: 0;
}


/*========================================================
PRODUCT GRID
=========================================================*/

.bs-product-detail-grid {

    display: grid;

    grid-template-columns:
        minmax(0, 0.95fr)
        minmax(0, 1.05fr);

    gap: 45px;

    align-items: center;
}


/*========================================================
PRODUCT IMAGE
=========================================================*/

.bs-product-gallery {
    width: 100%;
}


.bs-product-main-image {

    width: 100%;

    height: 500px;

    overflow: hidden;

    background: #f5f5f5;
}


.bs-product-main-image img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    object-position: center;

    transition: transform .5s ease;
}


.bs-product-main-image:hover img {

    transform: scale(1.03);

}


/*========================================================
PRODUCT INFORMATION
=========================================================*/

.bs-product-information {
    width: 100%;
}


.bs-product-category {

    display: inline-block;

    color: #be2525;

    font-size: 11px;

    font-weight: 700;

    letter-spacing: 1.5px;

    margin-bottom: 12px;
}


.bs-product-information h1 {

    color: #222222;

    font-size: 42px;

    line-height: 1.15;

    font-weight: 700;

    margin: 0 0 18px;
}


.bs-product-short-description {

    color: #444444;

    font-size: 17px;

    line-height: 1.7;

    margin: 0 0 18px;
}


.bs-product-description-text {

    color: #666666;

    font-size: 17px;

    line-height: 1.8;

    margin: 0 0 25px;
}


/*========================================================
PRODUCT HIGHLIGHTS
=========================================================*/

.bs-product-highlights {

    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 14px 25px;

    margin-bottom: 30px;
}


.bs-product-highlight {

    display: flex;

    align-items: center;

    gap: 10px;
}


.bs-product-highlight i {

    color: #be2525;

    font-size: 17px;
}


.bs-product-highlight span {

    color: #444444;

    font-size: 17px;

    line-height: 1.5;
}


/*========================================================
PRODUCT BUTTONS
=========================================================*/

.bs-product-actions {

    display: flex;

    align-items: center;

    gap: 12px;
}


.bs-product-btn {

    min-height: 45px;

    padding: 0 20px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    background: #be2525;

    border: 1px solid #be2525;

    color: #ffffff;

    font-size: 17px;

    font-weight: 600;

    text-decoration: none;

    transition: all .3s ease;
}


.bs-product-btn:hover {

    background: #222222;

    border-color: #222222;

    color: #ffffff;
}


.bs-product-call {

    min-height: 45px;

    padding: 0 20px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    background: #ffffff;

    border: 1px solid #dddddd;

    color: #333333;

    font-size: 17px;

    font-weight: 600;

    text-decoration: none;

    transition: all .3s ease;
}


.bs-product-call:hover {

    border-color: #be2525;

    color: #be2525;
}


/*========================================================
SIDEBAR
=========================================================*/

.bs-product-sidebar {

    width: 320px;

    position: sticky;

    top: 110px;
}


/*========================================================
SIDEBAR CATEGORY BOX
=========================================================*/

.bs-product-sidebar-box {

    width: 100%;

    margin-bottom: 22px;

    background: #ffffff;

    border: 1px solid #e2e2e2;
}


/*========================================================
SIDEBAR HEADING
=========================================================*/

.bs-product-sidebar-heading {

    padding: 25px 22px 20px;

    border-bottom: 1px solid #eeeeee;
}


.bs-product-sidebar-heading span {

    display: block;

    color: #be2525;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 1.5px;

    margin-bottom: 8px;
}


.bs-product-sidebar-heading h3 {

    color: #222222;

    font-size: 22px;

    line-height: 1.3;

    margin: 0;
}


/*========================================================
CATEGORY LIST
=========================================================*/

.bs-product-category-list {

    list-style: none;

    padding: 0;

    margin: 0;
}


.bs-product-category-list li {

    border-bottom: 1px solid #eeeeee;
}


.bs-product-category-list li:last-child {

    border-bottom: 0;
}


.bs-product-category-list a {

    min-height: 58px;

    padding: 0 18px 0 22px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 15px;

    color: #444444;

    font-size: 17px;

    font-weight: 500;

    text-decoration: none;

    transition: all .3s ease;
}


.bs-product-category-list a b {

    color: #be2525;

    font-size: 16px;

    font-weight: 400;

    transition: transform .3s ease;
}


.bs-product-category-list li:hover a {

    color: #be2525;

    background: #fafafa;
}


.bs-product-category-list li:hover a b {

    transform: translateX(4px);
}


.bs-product-category-list li.active a {

    color: #be2525;

    background: #fafafa;
}


/*========================================================
QUICK ENQUIRY
=========================================================*/

.bs-product-sidebar-enquiry {

    width: 100%;

    margin-bottom: 22px;

    padding: 28px 22px;

    background: #be2525;

    position: relative;

    overflow: hidden;
}


.bs-product-sidebar-enquiry::after {

    content: "";

    position: absolute;

    width: 120px;

    height: 120px;

    right: -60px;

    bottom: -60px;

    border: 1px solid rgba(255,255,255,.2);

    border-radius: 50%;
}


.bs-product-sidebar-enquiry span {

    display: block;

    color: rgba(255,255,255,.75);

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 1.5px;

    margin-bottom: 9px;

    position: relative;

    z-index: 1;
}


.bs-product-sidebar-enquiry h3 {

    color: #ffffff;

    font-size: 21px;

    line-height: 1.35;

    margin: 0 0 12px;

    position: relative;

    z-index: 1;
}


.bs-product-sidebar-enquiry p {

    color: rgba(255,255,255,.85);

    font-size: 17px;

    line-height: 1.7;

    margin: 0 0 20px;

    position: relative;

    z-index: 1;
}


/*========================================================
SIDEBAR BUTTON
=========================================================*/

.bs-product-sidebar-btn {

    min-height: 42px;

    padding: 0 17px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    background: #ffffff;

    color: #be2525;

    font-size: 17px;

    font-weight: 600;

    text-decoration: none;

    position: relative;

    z-index: 2;

    transition: all .3s ease;
}


.bs-product-sidebar-btn:hover {

    background: #222222;

    color: #ffffff;
}


/*========================================================
CONTACT BOX
=========================================================*/

.bs-product-sidebar-contact {

    width: 100%;

    padding: 28px 22px;

    background: #222222;
}


.bs-product-sidebar-contact span {

    display: block;

    color: rgba(255,255,255,.65);

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 1.5px;

    margin-bottom: 9px;
}


.bs-product-sidebar-contact h3 {

    color: #ffffff;

    font-size: 21px;

    line-height: 1.35;

    margin: 0 0 12px;
}


.bs-product-sidebar-contact p {

    color: #bbbbbb;

    font-size: 17px;

    line-height: 1.7;

    margin: 0 0 18px;
}


.bs-product-sidebar-contact a {

    display: block;

    color: #ffffff;

    font-size: 17px;

    text-decoration: none;

    margin-top: 9px;

    transition: color .3s ease;
}


.bs-product-sidebar-contact a:hover {

    color: #be2525;
}


/*========================================================
TABLET
=========================================================*/

@media (max-width: 1199px) {

    .bs-product-main-layout {

        grid-template-columns:
            minmax(0, 1fr)
            290px;

        gap: 30px;
    }


    .bs-product-sidebar {

        width: 290px;
    }


    .bs-product-detail-grid {

        gap: 30px;
    }


    .bs-product-information h1 {

        font-size: 36px;
    }

}


/*========================================================
TABLET / SMALL LAPTOP
=========================================================*/

@media (max-width: 991px) {

    .bs-product-detail {

        padding: 70px 0;
    }


    .bs-product-main-layout {

        display: grid;

        grid-template-columns: 1fr;

        gap: 40px;
    }


    .bs-product-sidebar {

        width: 100%;

        position: relative;

        top: auto;
    }


    .bs-product-sidebar-box,
    .bs-product-sidebar-enquiry,
    .bs-product-sidebar-contact {

        max-width: 700px;

        margin-left: auto;

        margin-right: auto;
    }

}


/*========================================================
MOBILE
=========================================================*/

@media (max-width: 767px) {

    .bs-product-detail {

        padding: 50px 0;
    }


    .bs-product-main-layout {

        display: block;
    }


    .bs-product-detail-grid {

        display: grid;

        grid-template-columns: 1fr;

        gap: 30px;
    }


    .bs-product-main-image {

        height: 350px;
    }


    .bs-product-information h1 {

        font-size: 30px;

        margin-bottom: 15px;
    }


    .bs-product-short-description {

        font-size: 14px;
    }


    .bs-product-description-text {

        font-size: 17px;
    }


    .bs-product-highlights {

        grid-template-columns: 1fr;

        gap: 12px;

        margin-bottom: 25px;
    }


    .bs-product-actions {

        flex-wrap: wrap;
    }


    .bs-product-btn,
    .bs-product-call {

        min-height: 43px;

        padding: 0 16px;
    }


    .bs-product-sidebar {

        width: 100%;

        margin-top: 35px;
    }


    .bs-product-sidebar-heading {

        padding: 22px 18px 18px;
    }


    .bs-product-sidebar-heading h3 {

        font-size: 20px;
    }


    .bs-product-category-list a {

        min-height: 52px;

        padding-left: 18px;

        padding-right: 18px;

        font-size: 17px;
    }


    .bs-product-sidebar-enquiry {

        padding: 24px 20px;
    }


    .bs-product-sidebar-enquiry h3 {

        font-size: 20px;
    }


    .bs-product-sidebar-contact {

        padding: 24px 20px;
    }

}


/*========================================================
SMALL MOBILE
=========================================================*/

@media (max-width: 480px) {

    .bs-product-main-image {

        height: 300px;
    }


    .bs-product-information h1 {

        font-size: 27px;
    }


    .bs-product-actions {

        display: grid;

        grid-template-columns: 1fr;

        width: 100%;
    }


    .bs-product-btn,
    .bs-product-call {

        width: 100%;
    }

}

/*========================================================
PRODUCT DETAIL - APPLICATIONS & BENEFITS
=========================================================*/

.bs-pdetail-benefits {
    margin-top: 55px;
    padding-top: 45px;

    border-top: 1px solid #e5e5e5;
}


/*========================================================
HEADING
=========================================================*/

.bs-pdetail-benefits-heading {
    max-width: 700px;

    margin-bottom: 30px;
}

.bs-pdetail-benefits-heading > span {
    display: block;

    color: #be2525;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 1.5px;

    margin-bottom: 8px;
}

.bs-pdetail-benefits-heading h2 {
    color: #222222;

    font-size: 30px;
    line-height: 1.25;

    margin: 0 0 12px;
}

.bs-pdetail-benefits-heading h2 strong {
    color: #be2525;

    font-weight: 700;
}

.bs-pdetail-benefits-heading p {
    color: #666666;

    font-size: 13px;
    line-height: 1.8;

    margin: 0;
}


/*========================================================
BENEFIT GRID
=========================================================*/

.bs-pdetail-benefits-grid {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 12px;
}


/*========================================================
BENEFIT CARD
=========================================================*/

.bs-pdetail-benefit-card {
    padding: 22px 22px;

    background: #f7f7f7;

    border-left: 3px solid transparent;

    transition: all .3s ease;
}

.bs-pdetail-benefit-card:hover {
    background: #ffffff;

    border-left-color: #be2525;

    box-shadow: 0 8px 25px rgba(0,0,0,.06);

    transform: translateY(-2px);
}

.bs-pdetail-benefit-card h3 {
    color: #222222;

    font-size: 15px;
    line-height: 1.4;

    margin: 0 0 8px;
}

.bs-pdetail-benefit-card p {
    color: #666666;

    font-size: 17px;
    line-height: 1.7;

    margin: 0;
}


/*========================================================
BOTTOM CTA
=========================================================*/

.bs-pdetail-benefits-bottom {
    margin-top: 15px;

    padding: 20px 22px;

    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 20px;

    background: #222222;
}

.bs-pdetail-benefits-bottom span {
    display: block;

    color: #aaaaaa;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 1.5px;

    margin-bottom: 5px;
}

.bs-pdetail-benefits-bottom h3 {
    color: #ffffff;

    font-size: 16px;

    margin: 0;
}

.bs-pdetail-benefits-bottom a {
    flex-shrink: 0;

    display: inline-flex;

    align-items: center;

    gap: 8px;

    min-height: 40px;

    padding: 0 16px;

    background: #be2525;

    color: #ffffff;

    font-size: 11px;
    font-weight: 600;

    text-decoration: none;

    transition: .3s ease;
}

.bs-pdetail-benefits-bottom a:hover {
    background: #ffffff;

    color: #be2525;
}


/*========================================================
TABLET
=========================================================*/

@media (max-width: 991px) {

    .bs-pdetail-benefits {
        margin-top: 45px;
    }

}


/*========================================================
MOBILE
=========================================================*/

@media (max-width: 767px) {

    .bs-pdetail-benefits {
        margin-top: 40px;

        padding-top: 35px;
    }

    .bs-pdetail-benefits-heading h2 {
        font-size: 26px;
    }

    .bs-pdetail-benefits-heading p {
        font-size: 17px;
    }

    .bs-pdetail-benefits-grid {
        grid-template-columns: 1fr;
    }

    .bs-pdetail-benefit-card {
        padding: 20px 18px;
    }

    .bs-pdetail-benefits-bottom {
        display: block;

        padding: 20px 18px;
    }

    .bs-pdetail-benefits-bottom h3 {
        font-size: 15px;

        margin-bottom: 15px;
    }

    .bs-pdetail-benefits-bottom a {
        width: 100%;

        justify-content: center;
    }

}
/*========================================
PRODUCT APPLICATIONS
=========================================*/

.bs-pdetail-applications {
    margin-top: 50px;
    padding-top: 40px;
    border-top: 1px solid #e5e5e5;
}

.bs-pdetail-app-heading {
    margin-bottom: 25px;
}

.bs-pdetail-app-heading span {
    display: block;
    color: #be2525;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;
    margin-bottom: 8px;
}

.bs-pdetail-app-heading h2 {
    margin: 0 0 12px;
    color: #222;
    font-size: 28px;
    line-height: 1.25;
}

.bs-pdetail-app-heading h2 strong {
    color: #be2525;
}

.bs-pdetail-app-heading p {
    max-width: 700px;
    margin: 0;
    color: #666;
    font-size: 13px;
    line-height: 1.7;
}


/* APPLICATION CARDS */

.bs-pdetail-app-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.bs-pdetail-app-card {
    padding: 22px;
    background: #f7f7f7;
    border: 1px solid #eeeeee;
    transition: .3s ease;
}

.bs-pdetail-app-card:hover {
    background: #fff;
    border-color: #be2525;
    transform: translateY(-3px);
    box-shadow: 0 8px 25px rgba(0,0,0,.06);
}

.bs-pdetail-app-card h3 {
    margin: 0 0 8px;
    color: #222;
    font-size: 15px;
}

.bs-pdetail-app-card p {
    margin: 0;
    color: #666;
    font-size: 17px;
    line-height: 1.7;
}


/* CTA */

.bs-pdetail-app-cta {
    margin-top: 12px;
    padding: 20px;
    background: #222;
    
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.bs-pdetail-app-cta span {
    display: block;
    color: #aaa;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 1.5px;
    margin-bottom: 5px;
}

.bs-pdetail-app-cta h3 {
    margin: 0;
    color: #fff;
    font-size: 15px;
}

.bs-pdetail-app-cta a {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 17px;
    background: #be2525;
    color: #fff;
    font-size: 11px;
    font-weight: 600;
    text-decoration: none;
}


/* MOBILE */

@media (max-width: 767px) {

    .bs-pdetail-applications {
        margin-top: 35px;
        padding-top: 30px;
    }

    .bs-pdetail-app-heading h2 {
        font-size: 24px;
    }

    .bs-pdetail-app-grid {
        grid-template-columns: 1fr;
    }

    .bs-pdetail-app-cta {
        display: block;
    }

    .bs-pdetail-app-cta h3 {
        margin-bottom: 15px;
    }

    .bs-pdetail-app-cta a {
        width: 100%;
        justify-content: center;
    }

}

/*================================================
HOME INTRO SECTION
=================================================*/

.bs-home-intro {
    padding: 75px 0;
    background: #ffffff;
    text-align: center;
}

.bs-home-intro-content {
    max-width: 1050px;
    margin: 0 auto;
}

.bs-home-intro-tag {
    display: block;

    margin-bottom: 12px;

    color: #be2525;

    font-size: 11px;
    font-weight: 700;

    letter-spacing: 1.8px;
}

.bs-home-intro h2 {
    margin: 0 0 20px;

    color: #222222;

    font-size: 36px;
    line-height: 1.25;
    font-weight: 700;
}

.bs-home-intro h2 span {
    color: #be2525;
}

.bs-home-intro p {
    max-width: 1000px;

    margin: 0 auto 12px;

    color: #555555;

    font-size: 17px;
    line-height: 1.9;
}


/*================================================
TABLET
=================================================*/

@media (max-width: 991px) {

    .bs-home-intro {
        padding: 60px 20px;
    }

    .bs-home-intro h2 {
        font-size: 32px;
    }

}


/*================================================
MOBILE
=================================================*/

@media (max-width: 767px) {

    .bs-home-intro {
        padding: 50px 18px;
    }

    .bs-home-intro h2 {
        font-size: 27px;
    }

    .bs-home-intro p {
        font-size: 13px;
        line-height: 1.8;
    }

}

/*========================================================
PDS PRODUCT DETAIL
=========================================================*/

.pds-detail {
    padding: 80px 0;
    background: #ffffff;
}


/*========================================================
GRID
=========================================================*/

.pds-detail-grid {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 55px;

    align-items: center;
}


/*========================================================
PRODUCT IMAGE
=========================================================*/

.pds-detail-gallery {
    width: 100%;
}


.pds-detail-main-image {
    width: 100%;
    height: 520px;

    background: #f5f5f5;

    overflow: hidden;
}


.pds-detail-main-image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform .5s ease;
}


.pds-detail-main-image:hover img {
    transform: scale(1.03);
}


/*========================================================
PRODUCT INFORMATION
=========================================================*/

.pds-detail-info {
    padding: 10px 0;
}


.pds-detail-category {
    display: block;

    margin-bottom: 12px;

    color: #be2525;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 1.7px;
}


.pds-detail-info h2 {
    margin: 0 0 18px;

    color: #222222;

    font-size: 40px;
    line-height: 1.2;

    font-weight: 700;
}


/*========================================================
DESCRIPTIONS
=========================================================*/

.pds-detail-intro {
    margin: 0 0 15px;

    color: #444444;

    font-size: 15px;

    line-height: 1.8;

    font-weight: 500;
}


.pds-detail-description {
    margin: 0 0 25px;

    color: #666666;

    font-size: 13px;

    line-height: 1.85;
}


/*========================================================
HIGHLIGHTS
=========================================================*/

.pds-detail-highlights {

    display: grid;

    grid-template-columns: 1fr 1fr;

    column-gap: 30px;

    row-gap: 14px;

    margin-bottom: 30px;
}


.pds-detail-highlight {

    display: flex;

    align-items: center;

    gap: 10px;

    color: #555555;

    font-size: 12px;

    line-height: 1.5;
}


.pds-detail-highlight i {

    flex-shrink: 0;

    color: #be2525;

    font-size: 12px;
}


/*========================================================
ACTION BUTTONS
=========================================================*/

.pds-detail-actions {

    display: flex;

    align-items: center;

    gap: 10px;
}


.pds-detail-primary,
.pds-detail-secondary {

    min-height: 45px;

    padding: 0 20px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    font-size: 11px;

    font-weight: 600;

    text-decoration: none;

    transition: all .3s ease;
}


.pds-detail-primary {

    background: #be2525;

    color: #ffffff;
}


.pds-detail-primary:hover {

    background: #222222;

    color: #ffffff;
}


.pds-detail-secondary {

    background: #ffffff;

    color: #333333;

    border: 1px solid #dddddd;
}


.pds-detail-secondary:hover {

    background: #222222;

    border-color: #222222;

    color: #ffffff;
}


/*========================================================
TABLET
=========================================================*/

@media (max-width: 991px) {

    .pds-detail {
        padding: 65px 0;
    }

    .pds-detail-grid {
        gap: 35px;
    }

    .pds-detail-main-image {
        height: 450px;
    }

    .pds-detail-info h2 {
        font-size: 34px;
    }

}


/*========================================================
MOBILE
=========================================================*/

@media (max-width: 767px) {

    .pds-detail {
        padding: 50px 0;
    }

    .pds-detail-grid {
        grid-template-columns: 1fr;

        gap: 35px;
    }

    .pds-detail-main-image {
        height: 350px;
    }

    .pds-detail-info h2 {
        font-size: 30px;
    }

    .pds-detail-intro {
        font-size: 13px;
    }

    .pds-detail-description {
        font-size: 12px;
    }

    .pds-detail-highlights {
        grid-template-columns: 1fr;

        gap: 12px;
    }

    .pds-detail-actions {
        flex-wrap: wrap;
    }

    .pds-detail-primary,
    .pds-detail-secondary {
        min-height: 44px;
    }

}


/*========================================================
SMALL MOBILE
=========================================================*/

@media (max-width: 480px) {

    .pds-detail-main-image {
        height: 300px;
    }

    .pds-detail-info h2 {
        font-size: 27px;
    }

    .pds-detail-actions {
        display: grid;

        grid-template-columns: 1fr 1fr;
    }

    .pds-detail-primary,
    .pds-detail-secondary {
        width: 100%;

        padding: 0 10px;
    }

}


/*========================================================
HOMEPAGE CTA
=========================================================*/

.pds-home-cta {
    padding: 80px 0;
    background: #f5f5f5;
}


/* Main */

.pds-home-cta-wrapper {
    display: grid;
    grid-template-columns: 1.25fr .75fr;

    background: #ffffff;

    border: 1px solid #e5e5e5;
}


/*========================================================
LEFT
=========================================================*/

.pds-home-cta-content {
    padding: 60px;
}


.pds-home-cta-label {
    display: block;

    margin-bottom: 12px;

    color: #be2525;

    font-size: 10px;
    font-weight: 700;

    letter-spacing: 1.8px;
}


.pds-home-cta-content h2 {
    margin: 0 0 20px;

    color: #222222;

    font-size: 42px;
    line-height: 1.2;
}


.pds-home-cta-content h2 span {
    color: #be2525;
}


.pds-home-cta-content p {
    max-width: 650px;

    margin: 0 0 12px;

    color: #666666;

    font-size: 17px;
    line-height: 1.85;
}


/*========================================================
RIGHT
=========================================================*/

.pds-home-cta-action {
    position: relative;

    padding: 50px 45px;

    display: flex;
    flex-direction: column;
    justify-content: center;

    /* background: #be2525; */
        background: #f7f7f7;

    overflow: hidden;
}


/* Decorative circle */

.pds-home-cta-action::after {
    content: "";

    position: absolute;

    width: 280px;
    height: 280px;

    right: -130px;
    bottom: -150px;

    border: 1px solid rgba(255,255,255,.25);

    border-radius: 50%;
}


.pds-home-cta-action > span {
    position: relative;
    z-index: 2;

    margin-bottom: 10px;

    color: rgba(255,255,255,.75);

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 1.5px;
}


.pds-home-cta-action h3 {
    position: relative;
    z-index: 2;

    margin: 0 0 15px;

    color: #ffffff;

    font-size: 28px;
    line-height: 1.3;
}


.pds-home-cta-action p {
    position: relative;
    z-index: 2;

    margin: 0 0 25px;

    color: rgba(255,255,255,.85);

    font-size: 17px;
    line-height: 1.7;
}


/*========================================================
BUTTONS
=========================================================*/

.pds-home-cta-buttons {
    position: relative;
    z-index: 3;

    display: flex;

    gap: 10px;
}


.pds-home-cta-primary,
.pds-home-cta-secondary {

    min-height: 45px;

    padding: 0 20px;

    display: inline-flex;

    align-items: center;
    justify-content: center;

    gap: 8px;

    font-size: 15px;
    font-weight: 600;

    text-decoration: none;

    transition: .3s ease;
}


/* Primary */

.pds-home-cta-primary {
    background: #ffffff;

    color: #be2525;
}


.pds-home-cta-primary:hover {
    background: #222222;

    color: #ffffff;
}


/* Secondary */

.pds-home-cta-secondary {
    border: 1px solid rgba(255,255,255,.6);

    color: #ffffff;
}


.pds-home-cta-secondary:hover {
    background: #ffffff;

    border-color: #ffffff;

    color: #be2525;
}


/* Arrow */

.pds-home-cta-primary i {
    transition: transform .3s ease;
}

.pds-home-cta-primary:hover i {
    transform: translateX(4px);
}


/*========================================================
TABLET
=========================================================*/

@media (max-width: 991px) {

    .pds-home-cta {
        padding: 65px 20px;
    }

    .pds-home-cta-wrapper {
        grid-template-columns: 1fr;
    }

    .pds-home-cta-content {
        padding: 50px 40px;
    }

}


/*========================================================
MOBILE
=========================================================*/

@media (max-width: 767px) {

    .pds-home-cta {
        padding: 50px 15px;
    }

    .pds-home-cta-content {
        padding: 40px 22px;
    }

    .pds-home-cta-content h2 {
        font-size: 30px;
    }

    .pds-home-cta-content p {
        font-size: 13px;
    }

    .pds-home-cta-action {
        padding: 40px 22px;
    }

    .pds-home-cta-action h3 {
        font-size: 24px;
    }

}


/*========================================================
SMALL MOBILE
=========================================================*/

@media (max-width: 480px) {

    .pds-home-cta-content h2 {
        font-size: 27px;
    }

    .pds-home-cta-buttons {
        display: grid;

        grid-template-columns: 1fr 1fr;
    }

    .pds-home-cta-primary,
    .pds-home-cta-secondary {
        width: 100%;

        padding: 0 10px;
    }

}


/*========================================================
PDS SERVICES PAGE
=========================================================*/

.pds-service-page {
    padding: 90px 0;
    background: #ffffff;
}


/*========================================================
MAIN LAYOUT
=========================================================*/

.pds-service-layout {

    display: grid;

    grid-template-columns: 300px minmax(0, 1fr);

    gap: 45px;

    align-items: start;
}


/*========================================================
SIDEBAR
=========================================================*/

.pds-service-sidebar {

    width: 300px;

    position: sticky;

    top: 110px;
}


/*========================================================
SIDEBAR CATEGORY BOX
=========================================================*/

.pds-service-side-box {

    background: #ffffff;

    border: 1px solid #e2e2e2;

    margin-bottom: 20px;
}


.pds-service-side-heading {

    padding: 25px 22px 20px;

    border-bottom: 1px solid #eeeeee;
}


.pds-service-side-heading span {

    display: block;

    margin-bottom: 8px;

    color: #be2525;

    font-size: 13px;

    font-weight: 700;

    letter-spacing: 1.5px;
}


.pds-service-side-heading h3 {

    margin: 0;

    color: #222222;

    font-size: 21px;

    line-height: 1.3;
}


/*========================================================
SIDEBAR LIST
=========================================================*/

.pds-service-side-list {

    list-style: none;

    padding: 0;

    margin: 0;
}


.pds-service-side-list li {

    border-bottom: 1px solid #eeeeee;
}


.pds-service-side-list li:last-child {

    border-bottom: 0;
}


.pds-service-side-list a {

    min-height: 55px;

    padding: 0 18px 0 22px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 12px;

    color: #444444;

    font-size: 17px;

    font-weight: 500;

    text-decoration: none;

    transition: all .3s ease;
}


.pds-service-side-list a b {

    color: #be2525;

    font-size: 16px;

    font-weight: 400;

    transition: transform .3s ease;
}


.pds-service-side-list li:hover a,
.pds-service-side-list li.active a {

    color: #be2525;

    background: #fafafa;
}


.pds-service-side-list li:hover a b {

    transform: translateX(4px);
}


/*========================================================
QUICK ENQUIRY
=========================================================*/

.pds-service-side-enquiry {

    position: relative;

    padding: 28px 22px;

    margin-bottom: 20px;

    background: #be2525;

    overflow: hidden;
}


.pds-service-side-enquiry::after {

    content: "";

    position: absolute;

    width: 140px;

    height: 140px;

    right: -75px;

    bottom: -75px;

    border: 1px solid rgba(255,255,255,.2);

    border-radius: 50%;
}


.pds-service-side-enquiry span {

    display: block;

    position: relative;

    z-index: 1;

    margin-bottom: 9px;

    color: rgba(255,255,255,.7);

    font-size: 12px;

    font-weight: 700;

    letter-spacing: 1.5px;
}


.pds-service-side-enquiry h3 {

    position: relative;

    z-index: 1;

    margin: 0 0 12px;

    color: #ffffff;

    font-size: 21px;

    line-height: 1.35;
}


.pds-service-side-enquiry p {

    position: relative;

    z-index: 1;

    margin: 0 0 20px;

    color: rgba(255,255,255,.85);

    font-size: 17px;

    line-height: 1.7;
}


.pds-service-side-enquiry a {

    position: relative;

    z-index: 2;

    display: inline-flex;

    align-items: center;

    gap: 8px;

    min-height: 41px;

    padding: 0 16px;

    background: #ffffff;

    color: #be2525;

    font-size: 17px;

    font-weight: 600;

    text-decoration: none;

    transition: all .3s ease;
}


.pds-service-side-enquiry a:hover {

    background: #222222;

    color: #ffffff;
}


/*========================================================
CONTACT BOX
=========================================================*/

.pds-service-side-contact {

    padding: 27px 22px;

    background: #222222;
}


.pds-service-side-contact span {

    display: block;

    margin-bottom: 9px;

    color: #999999;

    font-size: 9px;

    font-weight: 700;

    letter-spacing: 1.5px;
}


.pds-service-side-contact h3 {

    margin: 0 0 18px;

    color: #ffffff;

    font-size: 20px;

    line-height: 1.35;
}


.pds-service-side-contact a {

    display: block;

    margin-top: 9px;

    color: #ffffff;

    font-size: 15px;

    text-decoration: none;

    transition: color .3s ease;
}


.pds-service-side-contact a:hover {

    color: #be2525;
}


/*========================================================
SERVICE CONTENT
=========================================================*/

.pds-service-content {

    min-width: 0;
}


/*========================================================
INTRO
=========================================================*/

.pds-service-intro {

    padding-bottom: 35px;

    margin-bottom: 35px;

    border-bottom: 1px solid #e5e5e5;
}


.pds-service-intro > span {

    display: block;

    margin-bottom: 10px;

    color: #be2525;

    font-size: 10px;

    font-weight: 700;

    letter-spacing: 1.6px;
}


.pds-service-intro h1 {

    max-width: 750px;

    margin: 0 0 15px;

    color: #222222;

    font-size: 40px;

    line-height: 1.2;
}


.pds-service-intro h1 strong {

    color: #be2525;
}


.pds-service-intro p {

    max-width: 850px;

    margin: 0;

    color: #666666;

    font-size: 14px;

    line-height: 1.85;
}


/*========================================================
SERVICE ITEM
=========================================================*/

.pds-service-item {

    display: grid;

    grid-template-columns: 280px minmax(0, 1fr);

    gap: 30px;

    align-items: center;

    padding: 0 0 35px;

    margin-bottom: 35px;

    border-bottom: 1px solid #e8e8e8;

    scroll-margin-top: 120px;
}


.pds-service-item-image {

    width: 100%;

    height: 220px;

    overflow: hidden;

    background: #f2f2f2;
}


.pds-service-item-image img {

    width: 100%;

    height: 100%;

    display: block;

    object-fit: cover;

    transition: transform .5s ease;
}


.pds-service-item:hover .pds-service-item-image img {

    transform: scale(1.04);
}


/*========================================================
SERVICE DETAIL IMAGE
=========================================================*/

.pds-service-detail-image {
    width: 100%;
    height: 430px;
    margin-bottom: 35px;
    overflow: hidden;
    background: #f3f3f3;
}

.pds-service-detail-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}


/*========================================================
SERVICE INTRO
=========================================================*/

.pds-service-detail-intro {
    padding-bottom: 30px;
    margin-bottom: 35px;
    border-bottom: 1px solid #e5e5e5;
}

.pds-service-detail-intro > span {
    display: block;
    margin-bottom: 10px;

    color: #be2525;

    font-size: 14px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.pds-service-detail-intro h1 {
    margin: 0 0 18px;

    color: #222;

    font-size: 38px;
    line-height: 1.2;
}

.pds-service-detail-intro h1 strong {
    color: #be2525;
}

.pds-service-detail-intro p,
.pds-service-detail-description p {
    margin: 0 0 13px;

    color: #666;

    font-size: 17px;
    line-height: 1.85;
}


/*========================================================
DESCRIPTION
=========================================================*/

.pds-service-detail-description {
    margin-bottom: 50px;
}

.pds-service-detail-description h2 {
    margin: 0 0 15px;

    color: #222;

    font-size: 27px;
}

.pds-service-detail-description p:last-child {
    margin-bottom: 0;
}


/*========================================================
COMMON SECTION HEADING
=========================================================*/

.pds-service-section-heading {
    margin-bottom: 25px;
}

.pds-service-section-heading span {
    display: block;

    margin-bottom: 8px;

    color: #be2525;

    font-size: 14px;
    font-weight: 700;

    letter-spacing: 1.5px;
}

.pds-service-section-heading h2 {
    margin: 0;

    color: #222;

    font-size: 28px;
    line-height: 1.3;
}

.pds-service-section-heading h2 strong {
    color: #be2525;
}


/*========================================================
ADVANTAGES
=========================================================*/

.pds-service-advantages {
    margin-bottom: 50px;
}

.pds-service-advantage-grid {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 12px;
}

.pds-service-advantage-card {
    padding: 22px;

    background: #f7f7f7;

    border: 1px solid #e8e8e8;

    transition: .3s ease;
}

.pds-service-advantage-card:hover {
    background: #ffffff;

    border-color: #be2525;

    transform: translateY(-3px);
}

.pds-service-advantage-card h3 {
    margin: 0 0 8px;

    color: #222;

    font-size: 17px;
}

.pds-service-advantage-card p {
    margin: 0;

    color: #666;

    font-size: 15px;

    line-height: 1.7;
}


/*========================================================
BENEFITS
=========================================================*/

.pds-service-benefits {
    margin-bottom: 50px;
}

.pds-service-benefit-list {
    display: grid;

    grid-template-columns: 1fr 1fr;

    gap: 20px;
}

.pds-service-benefit {
    display: flex;

    align-items: flex-start;

    gap: 12px;
}

.pds-service-benefit > i {
    flex-shrink: 0;

    width: 28px;
    height: 28px;

    display: flex;

    align-items: center;
    justify-content: center;

    background: #f9eaea;

    color: #be2525;

    font-size: 11px;
}

.pds-service-benefit h3 {
    margin: 0 0 5px;

    color: #222;

    font-size: 20px;
}

.pds-service-benefit p {
    margin: 0;

    color: #666;

    font-size: 17px;

    line-height: 1.7;
}


/*========================================================
SPECIFICATION TABLE
=========================================================*/

.pds-service-specifications {
    margin-bottom: 55px;
}

.pds-service-table-wrap {
    width: 100%;

    overflow-x: auto;
}

.pds-service-table {
    width: 100%;

    border-collapse: collapse;

    border: 1px solid #e1e1e1;

    background: #ffffff;
}

.pds-service-table th,
.pds-service-table td {
    padding: 15px 18px;

    text-align: left;

    border-bottom: 1px solid #e5e5e5;

    font-size: 12px;

    line-height: 1.5;
}

.pds-service-table tr:last-child th,
.pds-service-table tr:last-child td {
    border-bottom: 0;
}

.pds-service-table th {
    width: 35%;

    background: #f6f6f6;

    color: #333;

    font-weight: 600;
    font-size: 17px;
}

.pds-service-table td {
    color: #666;
        font-size: 18px;
}


/*========================================================
WHY CHOOSE US
=========================================================*/

.pds-service-why {
    margin-bottom: 50px;

    padding: 35px;

    background: #f7f7f7;
}

.pds-service-why-grid {
    display: grid;

    grid-template-columns: repeat(3, 1fr);

    gap: 20px;
}

.pds-service-why-item {
    padding-right: 20px;

    border-right: 1px solid #ddd;
}

.pds-service-why-item:last-child {
    border-right: 0;
}

.pds-service-why-item h3 {
    margin: 0 0 8px;

    color: #222;

    font-size: 25px;
}

.pds-service-why-item p {
    margin: 0;

    color: #666;

    font-size: 17px;

    line-height: 1.7;
}


/*========================================================
CONTACT
=========================================================*/

.pds-service-contact {
    position: relative;

    padding: 30px;

    display: flex;

    align-items: center;

    justify-content: space-between;

    gap: 25px;

    background: #be2525;

    overflow: hidden;
}

.pds-service-contact-content {
    position: relative;

    z-index: 2;
}

.pds-service-contact-content > span {
    display: block;

    margin-bottom: 8px;

    color: rgba(255,255,255,.7);

    font-size: 15px;

    font-weight: 700;

    letter-spacing: 1.5px;
}

.pds-service-contact-content h2 {
    margin: 0 0 8px;

    color: #fff;

    font-size: 25px;
}

.pds-service-contact-content p {
    max-width: 500px;

    margin: 0;

    color: rgba(255,255,255,.85);

    font-size: 15px;

    line-height: 1.7;
}

.pds-service-contact-action {
    position: relative;

    z-index: 2;

    display: flex;

    gap: 10px;

    flex-shrink: 0;
}

.pds-service-contact-action a {
    min-height: 43px;

    padding: 0 17px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    gap: 8px;

    color: #be2525;

    background: #fff;

    font-size: 15px;

    font-weight: 600;

    text-decoration: none;

    transition: .3s ease;
}

.pds-service-contact-action a:last-child {
    color: #fff;

    background: transparent;

    border: 1px solid rgba(255,255,255,.6);
}

.pds-service-contact-action a:hover {
    background: #222;

    color: #fff;
}


/*========================================================
TABLET
=========================================================*/

@media (max-width: 991px) {

    .pds-service-detail-image {
        height: 350px;
    }

    .pds-service-detail-intro h1 {
        font-size: 33px;
    }

    .pds-service-why-grid {
        grid-template-columns: 1fr 1fr;
    }

    .pds-service-why-item:nth-child(2) {
        border-right: 0;
    }

    .pds-service-contact {
        display: block;
    }

    .pds-service-contact-action {
        margin-top: 20px;
    }

}


/*========================================================
MOBILE
=========================================================*/

@media (max-width: 767px) {

    .pds-service-detail-image {
        height: 280px;

        margin-bottom: 28px;
    }

    .pds-service-detail-intro h1 {
        font-size: 28px;
    }

    .pds-service-detail-intro p,
    .pds-service-detail-description p {
        font-size: 13px;
    }

    .pds-service-advantage-grid {
        grid-template-columns: 1fr;
    }

    .pds-service-benefit-list {
        grid-template-columns: 1fr;
    }

    .pds-service-why {
        padding: 25px 20px;
    }

    .pds-service-why-grid {
        grid-template-columns: 1fr;
    }

    .pds-service-why-item {
        padding: 0 0 18px;

        border-right: 0;

        border-bottom: 1px solid #ddd;
    }

    .pds-service-why-item:last-child {
        padding-bottom: 0;

        border-bottom: 0;
    }

    .pds-service-contact {
        padding: 25px 20px;
    }

    .pds-service-contact-action {
        display: grid;

        grid-template-columns: 1fr 1fr;
    }

    .pds-service-contact-action a {
        width: 100%;

        padding: 0 8px;
    }

}


/*========================================================
SMALL MOBILE
=========================================================*/

@media (max-width: 480px) {

    .pds-service-detail-image {
        height: 230px;
    }

    .pds-service-detail-intro h1 {
        font-size: 25px;
    }

    .pds-service-section-heading h2 {
        font-size: 24px;
    }

    .pds-service-table th,
    .pds-service-table td {
        padding: 12px;

        font-size: 11px;
    }

}

@media (max-width: 767px) {

    /* Main service page */
    .pds-service-page {
        padding: 50px 15px;
    }

    .pds-service-layout {
        display: flex;
        flex-direction: column;
        gap: 35px;
    }

    /* FIRST - SERVICE CONTENT */
    .pds-service-content {
        order: 1;
        width: 100%;
    }

    /* SECOND - SIDEBAR */
    .pds-service-sidebar {
        order: 2;
        width: 100%;
        position: relative;
        top: auto;
    }


    /* Service image */

    .pds-service-detail-image {
        width: 100%;
        height: 280px;
        margin-bottom: 28px;
    }

    .pds-service-detail-image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }


    /* Heading */

    .pds-service-detail-intro h1 {
        font-size: 28px;
        line-height: 1.2;
    }


    /* Description */

    .pds-service-detail-intro p,
    .pds-service-detail-description p {
        font-size: 13px;
        line-height: 1.8;
    }


    /* Advantages */

    .pds-service-advantage-grid {
        grid-template-columns: 1fr;
    }


    /* Benefits */

    .pds-service-benefit-list {
        grid-template-columns: 1fr;
    }


    /* Why Choose Us */

    .pds-service-why {
        padding: 25px 20px;
    }

    .pds-service-why-grid {
        grid-template-columns: 1fr;
    }

    .pds-service-why-item {
        padding: 0 0 18px;
        border-right: 0;
        border-bottom: 1px solid #ddd;
    }

    .pds-service-why-item:last-child {
        padding-bottom: 0;
        border-bottom: 0;
    }


    /* Contact */

    .pds-service-contact {
        padding: 25px 20px;
        display: block;
    }

    .pds-service-contact-action {
        display: grid;
        grid-template-columns: 1fr 1fr;
        margin-top: 20px;
    }


    /* Sidebar */

    .pds-service-sidebar {
        margin-top: 10px;
    }

    .pds-service-side-box,
    .pds-service-side-enquiry,
    .pds-service-side-contact {
        width: 100%;
    }

}
.pds-blog-author-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;

    margin-bottom: 20px;

    color: #777;
   font-size: 15px;
    line-height: 1.6;
}

.pds-blog-author-meta strong {
    color: #333;
    font-weight: 600;
}

.pds-blog-meta-divider {
    color: #ccc;
}


/* Mobile */

@media (max-width: 767px) {

    .pds-blog-author-meta {
        gap: 6px;

        font-size: 11px;
    }

    .pds-blog-meta-divider {
        display: none;
    }

}

.pds-blog-author-meta a {
    color: #333;
    font-weight: 600;
        font-size: 15px;
    text-decoration: none;
}

.pds-blog-author-meta a:hover {
    color: #be2525;
}



.review-user {
    display: flex;
    align-items: center;
    gap: 15px;
}

.review-initial {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;

    border-radius: 50% !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    font-size: 20px !important;
    font-weight: 600 !important;

    line-height: 1 !important;
    text-align: center !important;

    flex-shrink: 0 !important;
}

.review-user-info {
    display: flex;
    flex-direction: column;
}

.review-user-info h4 {
    margin: 0 0 5px;
    font-size: 17px;
    font-weight: 700;
}

.review-user-info span {
    font-size: 13px;
    color: #888;
}

.review-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.review-stars {
    color: #ffb000;
    font-size: 16px;
    white-space: nowrap;
}

 table {
  width: 100%;
  border-collapse: collapse;
  margin: 30px 0;
  background: #fff;
  border: 1px solid #e5e7eb;
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);
  background-color: black;
}

 th,
 td {
  padding: 16px 22px;
  border: 1px solid #e5e7eb;
  font-size: 16px;
  line-height: 28px;
}

 th {
  width: 35%;
  background: #f8f9fa;
  color: #222;
  font-weight: 600;
  text-align: center;
}

 td {
  background: #fff;
  color: #555;
}

 tbody tr:nth-child(even) td,
 tbody tr:nth-child(even) th {
  background: #fcfcfc;
}

 tbody tr:hover th,
 tbody tr:hover td {
  background: #f5f7fa;
  transition: 0.3s ease;
}

@media (max-width: 768px) {
  ,
   tbody,
   tr,
   th,
   td {
    display: block;
    width: 100%;
  }

   tr {
    margin-bottom: 15px;
    border: 1px solid #ddd;
    border-radius: 8px;
    overflow: hidden;
  }

   th {
    border-bottom: 1px solid #ddd;
  }

   td {
    border-top: none;
  }
}


     /* ========================================
           MANAGEMENT PAGE
        ======================================== */

        .inch-management-page {
            font-family: Arial, sans-serif;
            color: #172033;
            overflow: hidden;
        }

        .inch-management-page p {
            color: #667085;
            line-height: 1.8;
            margin-bottom: 18px;
        }

        .inch-management-section-tag {
            display: inline-flex;
            align-items: center;
            gap: 10px;
            color: #c92d2d;
            font-size: 13px;
            font-weight: 700;
            letter-spacing: 2px;
            text-transform: uppercase;
            margin-bottom: 18px;
        }

        .inch-management-section-tag::before {
            content: "";
            width: 28px;
            height: 2px;
            background: #c92d2d;
            display: inline-block;
        }


        /* ========================================
           HERO
        ======================================== */

        .inch-management-hero {
            padding: 110px 0 105px;
            background: #f6f7f9;
            border-bottom: 1px solid #e7e9ed;
        }

        .inch-management-hero-content {
            max-width: 1000px;
        }

        .inch-management-hero h1 {
            font-size: 54px;
            line-height: 1.15;
            font-weight: 800;
            margin: 0 0 22px;
            color: #111827;
        }

        .inch-management-hero h1 span {
            color: #c92d2d;
        }

        .inch-management-hero p {
            max-width: 850px;
            font-size: 18px;
            margin-bottom: 0;
        }


        /* ========================================
           INTRO
        ======================================== */

        .inch-management-intro {
            padding: 100px 0;
            background: #ffffff;
        }

        .inch-management-intro-heading {
            max-width: 850px;
            margin: auto;
            text-align: center;
        }

        .inch-management-intro-heading .inch-management-section-tag {
            justify-content: center;
        }

        .inch-management-intro-heading .inch-management-section-tag::before {
            display: none;
        }

        .inch-management-intro-heading h2 {
            font-size: 45px;
            line-height: 1.2;
            font-weight: 800;
            color: #111827;
            margin-bottom: 22px;
        }

        .inch-management-intro-heading h2 span {
            color: #c92d2d;
        }

        .inch-management-intro-heading p {
            font-size: 17px;
            max-width: 800px;
            margin: auto;
        }


        /* ========================================
           LEADERSHIP APPROACH
        ======================================== */

        .inch-management-approach {
            padding: 100px 0;
            background: #f7f8fa;
        }

        .inch-management-approach-grid {
            display: grid;
            grid-template-columns: 0.9fr 1.1fr;
            gap: 80px;
            align-items: center;
        }

        .inch-management-approach-content h2 {
            font-size: 43px;
            line-height: 1.2;
            font-weight: 800;
            margin-bottom: 25px;
            color: #111827;
        }

        .inch-management-approach-content h2 span {
            color: #c92d2d;
        }

        .inch-management-approach-points {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 25px;
        }

        .inch-management-point {
            background: #ffffff;
            padding: 30px;
            border: 1px solid #e6e8ec;
            transition: 0.3s ease;
        }

        .inch-management-point:hover {
            transform: translateY(-5px);
            box-shadow: 0 15px 35px rgba(0, 0, 0, 0.07);
        }

        .inch-management-point > span {
            display: block;
            font-size: 14px;
            font-weight: 800;
            color: #c92d2d;
            margin-bottom: 18px;
        }

        .inch-management-point h3 {
            font-size: 21px;
            font-weight: 700;
            margin-bottom: 12px;
            color: #172033;
        }

        .inch-management-point p {
            font-size: 14px;
            margin: 0;
        }


        /* ========================================
           VALUES
        ======================================== */

        .inch-management-values {
            padding: 105px 0;
            background: #ffffff;
        }

        .inch-management-values-heading {
            text-align: center;
            max-width: 800px;
            margin: 0 auto 55px;
        }

        .inch-management-values-heading .inch-management-section-tag {
            justify-content: center;
        }

        .inch-management-values-heading .inch-management-section-tag::before {
            display: none;
        }

        .inch-management-values-heading h2 {
            font-size: 43px;
            font-weight: 800;
            margin-bottom: 20px;
            color: #111827;
        }

        .inch-management-values-heading h2 span {
            color: #c92d2d;
        }

        .inch-management-values-heading p {
            margin-bottom: 0;
        }

        .inch-management-values-grid {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 25px;
        }

        .inch-management-value-box {
            padding: 35px 28px;
            border: 1px solid #e4e6ea;
            background: #fff;
            position: relative;
            transition: 0.3s ease;
        }

        .inch-management-value-box:hover {
            border-color: #c92d2d;
            transform: translateY(-7px);
            box-shadow: 0 15px 35px rgba(0, 0, 0, 0.07);
        }

        .inch-management-value-number {
            font-size: 14px;
            font-weight: 800;
            color: #c92d2d;
            margin-bottom: 25px;
        }

        .inch-management-value-box h3 {
            font-size: 23px;
            font-weight: 700;
            margin-bottom: 14px;
            color: #172033;
        }

        .inch-management-value-box p {
            font-size: 14px;
            margin-bottom: 0;
        }


        /* ========================================
           EXPERIENCE
        ======================================== */

        .inch-management-experience {
            padding: 105px 0;
            background: #111827;
            color: #ffffff;
        }

        .inch-management-experience-content {
            max-width: 900px;
            margin: auto;
            text-align: center;
        }

        .inch-management-experience .inch-management-section-tag {
            color: #e04444;
        }

        .inch-management-experience .inch-management-section-tag::before {
            background: #e04444;
        }

        .inch-management-experience h2 {
            font-size: 45px;
            line-height: 1.2;
            font-weight: 800;
            margin-bottom: 25px;
            color: #ffffff;
        }

        .inch-management-experience h2 span {
            color: #e04444;
        }

        .inch-management-experience p {
            color: #c7ccd5;
            font-size: 16px;
        }


        /* ========================================
           COMMITMENT
        ======================================== */

        .inch-management-commitment {
            padding: 105px 0;
            background: #f7f8fa;
        }

        .inch-management-commitment-wrapper {
            display: grid;
            grid-template-columns: 1fr 0.8fr;
            gap: 80px;
            align-items: center;
        }

        .inch-management-commitment-content h2 {
            font-size: 43px;
            line-height: 1.2;
            font-weight: 800;
            color: #111827;
            margin-bottom: 25px;
        }

        .inch-management-commitment-content h2 span {
            color: #c92d2d;
        }

        .inch-management-commitment-list {
            display: flex;
            flex-direction: column;
            gap: 15px;
        }

        .inch-management-commitment-item {
            display: flex;
            align-items: center;
            gap: 18px;
            padding: 20px 22px;
            background: #ffffff;
            border: 1px solid #e4e6ea;
        }

        .inch-management-commitment-item span {
            width: 34px;
            height: 34px;
            min-width: 34px;
            display: flex;
            align-items: center;
            justify-content: center;
            border-radius: 50%;
            background: #c92d2d;
            color: #ffffff;
            font-size: 15px;
            font-weight: 700;
        }

        .inch-management-commitment-item p {
            margin: 0;
            color: #344054;
            font-size: 15px;
            font-weight: 600;
        }


        /* ========================================
           CTA
        ======================================== */

        .inch-management-cta {
            padding: 95px 0;
            background: #ffffff;
        }

        .inch-management-cta-content {
            max-width: 850px;
            margin: auto;
            text-align: center;
        }

        .inch-management-cta-content .inch-management-section-tag {
            justify-content: center;
        }

        .inch-management-cta-content .inch-management-section-tag::before {
            display: none;
        }

        .inch-management-cta h2 {
            font-size: 45px;
            line-height: 1.2;
            font-weight: 800;
            color: #111827;
            margin-bottom: 20px;
        }

        .inch-management-cta h2 span {
            color: #c92d2d;
        }

        .inch-management-cta p {
            max-width: 700px;
            margin: 0 auto 30px;
        }

        .inch-management-cta-btn {
            display: inline-flex;
            align-items: center;
            gap: 12px;
            padding: 15px 28px;
            background: #c92d2d;
            color: #ffffff;
            text-decoration: none;
            font-size: 15px;
            font-weight: 700;
            transition: 0.3s ease;
        }

        .inch-management-cta-btn:hover {
            background: #a91f1f;
            color: #ffffff;
            transform: translateY(-3px);
        }


        /* ========================================
           RESPONSIVE
        ======================================== */

        @media (max-width: 991px) {

            .inch-management-hero {
                padding: 80px 0;
            }

            .inch-management-hero h1 {
                font-size: 43px;
            }

            .inch-management-approach-grid,
            .inch-management-commitment-wrapper {
                grid-template-columns: 1fr;
                gap: 50px;
            }

            .inch-management-values-grid {
                grid-template-columns: 1fr 1fr;
            }

        }


        @media (max-width: 767px) {

            .inch-management-hero {
                padding: 65px 0;
            }

            .inch-management-hero h1 {
                font-size: 34px;
            }

            .inch-management-hero p {
                font-size: 15px;
            }

            .inch-management-intro,
            .inch-management-approach,
            .inch-management-values,
            .inch-management-experience,
            .inch-management-commitment,
            .inch-management-cta {
                padding: 70px 0;
            }

            .inch-management-intro-heading h2,
            .inch-management-values-heading h2,
            .inch-management-experience h2,
            .inch-management-cta h2,
            .inch-management-approach-content h2,
            .inch-management-commitment-content h2 {
                font-size: 32px;
            }

            .inch-management-approach-points {
                grid-template-columns: 1fr;
            }

            .inch-management-values-grid {
                grid-template-columns: 1fr;
            }

            .inch-management-point {
                padding: 25px;
            }

        }
/* ========================================
   MANAGEMENT HERO - CENTER ALIGN
======================================== */

.inch-management-hero-content {
    max-width: 950px;
    margin: 0 auto;
    text-align: center;
}

.inch-management-hero-content .inch-management-section-tag {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.inch-management-hero-content h1 {
    margin-left: auto;
    margin-right: auto;
}

.inch-management-hero-content p {
    max-width: 850px;
    margin-left: auto;
    margin-right: auto;
}
/* ========================================
   TEAM HERO
========================================= */

.inch-team-hero {
    padding: 120px 0;
    background: #f5f7fa;
    position: relative;
    overflow: hidden;
}

.inch-team-hero-content {
    max-width: 950px;
    margin: 0 auto;
    text-align: center;
}

.inch-team-section-tag {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
    margin-bottom: 18px;
}

.inch-team-hero-content h1 {
    font-size: 52px;
    line-height: 1.15;
    font-weight: 700;
    margin: 0 0 22px;
}

.inch-team-hero-content h1 span {
    display: block;
}

.inch-team-hero-content p {
    max-width: 820px;
    margin: 0 auto;
    font-size: 17px;
    line-height: 1.8;
}


/* ========================================
   TEAM INTRO
========================================= */

.inch-team-intro {
    padding: 100px 0;
    background: #ffffff;
}

.inch-team-intro-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
    align-items: center;
}

.inch-team-intro-image {
    width: 100%;
    height: 520px;
    overflow: hidden;
}

.inch-team-intro-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.inch-team-intro-content {
    max-width: 620px;
}

.inch-team-intro-content h2 {
    font-size: 42px;
    line-height: 1.2;
    margin: 0 0 25px;
}

.inch-team-intro-content h2 span {
    display: block;
}

.inch-team-intro-content p {
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 18px;
}


/* ========================================
   TEAM EXPERTISE
========================================= */

.inch-team-expertise {
    padding: 100px 0;
    background: #f6f8fa;
}

.inch-team-heading {
    max-width: 800px;
    margin: 0 auto 55px;
    text-align: center;
}

.inch-team-heading h2 {
    font-size: 42px;
    line-height: 1.2;
    margin: 0 0 20px;
}

.inch-team-heading h2 span {
    display: block;
}

.inch-team-heading p {
    font-size: 16px;
    line-height: 1.8;
    margin: 0;
}

.inch-team-expertise-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
}

.inch-team-expertise-box {
    background: #ffffff;
    border: 1px solid #e5e8eb;
    overflow: hidden;
    transition: all 0.3s ease;
}

.inch-team-expertise-box:hover {
    transform: translateY(-8px);
}

.inch-team-expertise-image {
    width: 100%;
    height: 220px;
    overflow: hidden;
}

.inch-team-expertise-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

.inch-team-expertise-box:hover
.inch-team-expertise-image img {
    transform: scale(1.05);
}

.inch-team-expertise-box > h3,
.inch-team-expertise-box > p {
    margin-left: 28px;
    margin-right: 28px;
}

.inch-team-expertise-icon {
    width: 55px;
    height: 55px;
    margin: -27px 0 18px 28px;
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid #e5e8eb;
    font-size: 21px;
}

.inch-team-expertise-box h3 {
    font-size: 20px;
    margin-bottom: 12px;
}

.inch-team-expertise-box p {
    font-size: 14px;
    line-height: 1.7;
    margin-bottom: 30px;
}


/* ========================================
   TEAM ACTION
========================================= */

.inch-team-action {
    padding: 110px 0;
    background: #ffffff;
}

.inch-team-action-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 70px;
    align-items: center;
}

.inch-team-action-image {
    width: 100%;
    height: 500px;
    overflow: hidden;
}

.inch-team-action-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.inch-team-action-content {
    max-width: 620px;
}

.inch-team-action-content h2 {
    font-size: 42px;
    line-height: 1.2;
    margin: 0 0 25px;
}

.inch-team-action-content h2 span {
    display: block;
}

.inch-team-action-content p {
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 18px;
}


/* ========================================
   TEAM APPROACH
========================================= */

.inch-team-approach {
    padding: 110px 0;
    background: #f5f7fa;
}

.inch-team-approach-wrapper {
    display: grid;
    grid-template-columns: 0.9fr 1.1fr;
    gap: 80px;
    align-items: center;
}

.inch-team-approach-content {
    max-width: 600px;
}

.inch-team-approach-content h2 {
    font-size: 43px;
    line-height: 1.2;
    margin: 0 0 25px;
}

.inch-team-approach-content h2 span {
    display: block;
}

.inch-team-approach-content p {
    font-size: 16px;
    line-height: 1.8;
    margin-bottom: 18px;
}

.inch-team-approach-list {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.inch-team-approach-item {
    display: flex;
    align-items: flex-start;
    gap: 22px;
    padding: 25px;
    background: #ffffff;
    border: 1px solid #e5e8eb;
    transition: all 0.3s ease;
}

.inch-team-approach-item:hover {
    transform: translateX(7px);
}

.inch-team-approach-number {
    min-width: 45px;
    font-size: 24px;
    font-weight: 700;
}

.inch-team-approach-item h3 {
    font-size: 20px;
    margin: 0 0 7px;
}

.inch-team-approach-item p {
    font-size: 14px;
    line-height: 1.6;
    margin: 0;
}


/* ========================================
   TEAM CTA
========================================= */

.inch-team-cta {
    padding: 90px 0;
    background: #111827;
}

.inch-team-cta-content {
    max-width: 850px;
    margin: 0 auto;
    text-align: center;
}

.inch-team-cta-content .inch-team-section-tag {
    color: #ffffff;
}

.inch-team-cta-content h2 {
    color: #ffffff;
    font-size: 42px;
    line-height: 1.2;
    margin: 0 0 20px;
}

.inch-team-cta-content h2 span {
    display: block;
}

.inch-team-cta-content p {
    max-width: 700px;
    margin: 0 auto 30px;
    color: #d1d5db;
    font-size: 16px;
    line-height: 1.8;
}

.inch-team-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 15px 28px;
    background: #ffffff;
    color: #111827;
    text-decoration: none;
    font-size: 15px;
    font-weight: 600;
    transition: all 0.3s ease;
}

.inch-team-cta-btn:hover {
    transform: translateY(-3px);
    color: #111827;
}


/* ========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .inch-team-hero {
        padding: 90px 0;
    }

    .inch-team-hero-content h1 {
        font-size: 43px;
    }

    .inch-team-intro-grid,
    .inch-team-action-grid {
        grid-template-columns: 1fr;
        gap: 45px;
    }

    .inch-team-intro-image,
    .inch-team-action-image {
        height: 450px;
    }

    .inch-team-intro-content,
    .inch-team-action-content {
        max-width: 100%;
    }

    .inch-team-expertise-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .inch-team-approach-wrapper {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    .inch-team-approach-content {
        max-width: 100%;
    }

}


/* ========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .inch-team-hero {
        padding: 70px 0;
    }

    .inch-team-hero-content h1 {
        font-size: 34px;
    }

    .inch-team-hero-content p {
        font-size: 15px;
    }

    .inch-team-intro,
    .inch-team-expertise,
    .inch-team-action,
    .inch-team-approach {
        padding: 70px 0;
    }

    .inch-team-intro-image,
    .inch-team-action-image {
        height: 350px;
    }

    .inch-team-intro-content h2,
    .inch-team-heading h2,
    .inch-team-action-content h2,
    .inch-team-approach-content h2,
    .inch-team-cta-content h2 {
        font-size: 32px;
    }

    .inch-team-expertise-grid {
        grid-template-columns: 1fr;
    }

    .inch-team-expertise-image {
        height: 240px;
    }

    .inch-team-approach-item {
        padding: 20px;
    }

    .inch-team-section-tag {
        font-size: 11px;
        letter-spacing: 1.5px;
    }

}

/* ========================================
   LAB HERO
========================================= */

.inch-lab-hero {
    position: relative;
    min-height: 600px;
    display: flex;
    align-items: center;
    background-size: cover;
    background-position: center;
    overflow: hidden;
}

.inch-lab-hero-overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.55);
}

.inch-lab-hero .container {
    position: relative;
    z-index: 2;
    width: 100%;
}

.inch-lab-hero-content {
    max-width: 850px;
    margin: auto;
    text-align: center;
    color: #ffffff;
}

.inch-lab-section-tag {
    display: inline-block;
    margin-bottom: 18px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    text-transform: uppercase;
}

.inch-lab-hero-content h1 {
    margin: 0 0 22px;
    font-size: 54px;
    line-height: 1.15;
    font-weight: 700;
}

.inch-lab-hero-content h1 span {
    display: block;
}

.inch-lab-hero-content p {
    max-width: 800px;
    margin: auto;
    font-size: 17px;
    line-height: 1.8;
}


/* ========================================
   INTRO
========================================= */

.inch-lab-intro {
    padding: 100px 0;
    background: #ffffff;
}

.inch-lab-intro-heading {
    max-width: 850px;
    margin: 0 auto 55px;
    text-align: center;
}

.inch-lab-intro-heading h2 {
    margin: 0 0 22px;
    font-size: 43px;
    line-height: 1.2;
}

.inch-lab-intro-heading h2 span {
    display: block;
}

.inch-lab-intro-heading p {
    margin: 0;
    font-size: 16px;
    line-height: 1.8;
}


/* ========================================
   SERVICES
========================================= */

.inch-lab-services-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
}

.inch-lab-service-box {
    background: #f7f9fa;
    border: 1px solid #e3e7ea;
    overflow: hidden;
    transition: all .3s ease;
}

.inch-lab-service-box:hover {
    transform: translateY(-7px);
}

.inch-lab-service-image {
    width: 100%;
    height: 220px;
    overflow: hidden;
}

.inch-lab-service-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .5s ease;
}

.inch-lab-service-box:hover .inch-lab-service-image img {
    transform: scale(1.05);
}

.inch-lab-service-content {
    position: relative;
    padding: 28px;
}

.inch-lab-number {
    position: absolute;
    top: 25px;
    right: 25px;
    font-size: 13px;
    font-weight: 700;
    opacity: .45;
}

.inch-lab-service-icon {
    width: 52px;
    height: 52px;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #ffffff;
    border: 1px solid #dfe4e7;
}

.inch-lab-service-content h3 {
    margin: 0 0 13px;
    font-size: 20px;
}

.inch-lab-service-content p {
    margin: 0;
    font-size: 14px;
    line-height: 1.7;
}


/* ========================================
   PROCESS
========================================= */

.inch-lab-process {
    padding: 100px 0;
    background: #f4f7f9;
}

.inch-lab-process-heading {
    max-width: 800px;
    margin: 0 auto 55px;
    text-align: center;
}

.inch-lab-process-heading h2 {
    margin: 0 0 20px;
    font-size: 43px;
    line-height: 1.2;
}

.inch-lab-process-heading h2 span {
    display: block;
}

.inch-lab-process-heading p {
    margin: 0;
    font-size: 16px;
    line-height: 1.8;
}

.inch-lab-process-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 25px;
}

.inch-lab-process-box {
    padding: 32px 28px;
    background: #ffffff;
    border: 1px solid #e2e7ea;
}

.inch-lab-process-number {
    margin-bottom: 25px;
    font-size: 34px;
    font-weight: 700;
}

.inch-lab-process-box h3 {
    margin: 0 0 12px;
    font-size: 20px;
}

.inch-lab-process-box p {
    margin: 0;
    font-size: 14px;
    line-height: 1.7;
}


/* ========================================
   FEATURE
========================================= */

.inch-lab-feature {
    padding: 110px 0;
    background: #ffffff;
}

.inch-lab-feature-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 75px;
    align-items: center;
}

.inch-lab-feature-image {
    height: 520px;
    overflow: hidden;
}

.inch-lab-feature-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.inch-lab-feature-content h2 {
    margin: 0 0 25px;
    font-size: 42px;
    line-height: 1.2;
}

.inch-lab-feature-content h2 span {
    display: block;
}

.inch-lab-feature-content p {
    margin-bottom: 18px;
    font-size: 16px;
    line-height: 1.8;
}

.inch-lab-check-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-top: 28px;
}

.inch-lab-check-list div {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px;
    background: #f5f7f8;
    border: 1px solid #e3e7ea;
    font-size: 13px;
    font-weight: 600;
}

.inch-lab-check-list i {
    font-size: 12px;
}


/* ========================================
   CTA
========================================= */

.inch-lab-cta {
    padding: 90px 0;
    background: #111827;
}

.inch-lab-cta-content {
    max-width: 800px;
    margin: auto;
    text-align: center;
}

.inch-lab-cta-content .inch-lab-section-tag {
    color: #ffffff;
}

.inch-lab-cta-content h2 {
    margin: 0 0 20px;
    color: #ffffff;
    font-size: 43px;
    line-height: 1.2;
}

.inch-lab-cta-content h2 span {
    display: block;
}

.inch-lab-cta-content p {
    max-width: 700px;
    margin: 0 auto 30px;
    color: #d1d5db;
    font-size: 16px;
    line-height: 1.8;
}

.inch-lab-cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 15px 28px;
    background: #ffffff;
    color: #111827;
    text-decoration: none;
    font-weight: 600;
    transition: all .3s ease;
}

.inch-lab-cta-btn:hover {
    transform: translateY(-3px);
    color: #111827;
}


/* ========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .inch-lab-hero {
        min-height: 500px;
    }

    .inch-lab-services-grid,
    .inch-lab-process-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .inch-lab-feature-grid {
        grid-template-columns: 1fr;
        gap: 50px;
    }

}


/* ========================================
   MOBILE
========================================= */

@media (max-width: 767px) {

    .inch-lab-hero {
        min-height: 500px;
    }

    .inch-lab-hero-content h1 {
        font-size: 35px;
    }

    .inch-lab-hero-content p {
        font-size: 15px;
    }

    .inch-lab-intro,
    .inch-lab-process,
    .inch-lab-feature {
        padding: 70px 0;
    }

    .inch-lab-intro-heading h2,
    .inch-lab-process-heading h2,
    .inch-lab-feature-content h2,
    .inch-lab-cta-content h2 {
        font-size: 32px;
    }

    .inch-lab-services-grid,
    .inch-lab-process-grid {
        grid-template-columns: 1fr;
    }

    .inch-lab-feature-image {
        height: 350px;
    }

    .inch-lab-check-list {
        grid-template-columns: 1fr;
    }

}

/* ========================================
   LABORATORY CAPABILITIES
========================================= */

.inch-lab-capabilities {
    padding: 100px 0;
    background: #ffffff;
}

.inch-lab-capabilities-heading {
    max-width: 850px;
    margin: 0 auto 55px;
    text-align: center;
}

.inch-lab-capabilities-heading h2 {
    margin: 0 0 20px;
    font-size: 44px;
    line-height: 1.2;
}

.inch-lab-capabilities-heading h2 span {
    display: block;
}

.inch-lab-capabilities-heading p {
    margin: 0;
    font-size: 16px;
    line-height: 1.8;
}

.inch-lab-capabilities-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
}

.inch-lab-capability {
    padding: 35px 28px;
    background: #f6f8f9;
    border: 1px solid #e3e7ea;
    transition: all .3s ease;
}

.inch-lab-capability:hover {
    transform: translateY(-7px);
}

.inch-lab-capability-icon {
    width: 58px;
    height: 58px;
    margin-bottom: 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    border: 1px solid #dfe4e7;
    border-radius: 50%;
    font-size: 21px;
}

.inch-lab-capability h3 {
    margin: 0 0 12px;
    font-size: 20px;
}

.inch-lab-capability p {
    margin: 0;
    font-size: 14px;
    line-height: 1.7;
}


/* ========================================
   PARAMETERS
========================================= */

.inch-lab-parameters {
    padding: 100px 0;
    background: #f4f7f9;
}

.inch-lab-parameters-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 80px;
    align-items: center;
}

.inch-lab-parameters-content h2 {
    margin: 0 0 24px;
    font-size: 44px;
    line-height: 1.2;
}

.inch-lab-parameters-content h2 span {
    display: block;
}

.inch-lab-parameters-content p {
    margin: 0 0 18px;
    font-size: 16px;
    line-height: 1.8;
}

.inch-lab-parameter-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 14px;
}

.inch-lab-parameter-item {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 55px;
    padding: 15px 18px;
    background: #ffffff;
    border: 1px solid #e1e6e9;
    font-size: 14px;
    font-weight: 600;
}

.inch-lab-parameter-item i {
    width: 25px;
    height: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #111827;
    color: #ffffff;
    font-size: 11px;
}


/* ========================================
   APPLICATIONS
========================================= */

.inch-lab-applications {
    padding: 100px 0;
    background: #ffffff;
}

.inch-lab-applications-heading {
    max-width: 850px;
    margin: 0 auto 55px;
    text-align: center;
}

.inch-lab-applications-heading h2 {
    margin: 0 0 20px;
    font-size: 44px;
    line-height: 1.2;
}

.inch-lab-applications-heading h2 span {
    display: block;
}

.inch-lab-applications-heading p {
    margin: 0;
    font-size: 16px;
    line-height: 1.8;
}

.inch-lab-applications-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 25px;
}

.inch-lab-application-box {
    padding: 38px 30px;
    background: #f6f8f9;
    border: 1px solid #e2e7ea;
    text-align: center;
    transition: all .3s ease;
}

.inch-lab-application-box:hover {
    transform: translateY(-7px);
}

.inch-lab-application-box > i {
    width: 65px;
    height: 65px;
    margin: 0 auto 22px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #ffffff;
    border: 1px solid #dfe4e7;
    border-radius: 50%;
    font-size: 23px;
}

.inch-lab-application-box h3 {
    margin: 0 0 12px;
    font-size: 20px;
}

.inch-lab-application-box p {
    margin: 0;
    font-size: 14px;
    line-height: 1.7;
}


/* ========================================
   WHY LABORATORY ANALYSIS
========================================= */

.inch-lab-benefits {
    padding: 110px 0;
    background: #f4f7f9;
}

.inch-lab-benefits-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 75px;
    align-items: center;
}

.inch-lab-benefits-image {
    height: 560px;
    overflow: hidden;
}

.inch-lab-benefits-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.inch-lab-benefits-content h2 {
    margin: 0 0 25px;
    font-size: 44px;
    line-height: 1.2;
}

.inch-lab-benefits-content h2 span {
    display: block;
}

.inch-lab-benefits-content > p {
    margin: 0 0 18px;
    font-size: 16px;
    line-height: 1.8;
}

.inch-lab-benefit-list {
    margin-top: 30px;
    display: grid;
    gap: 16px;
}

.inch-lab-benefit-item {
    display: flex;
    align-items: flex-start;
    gap: 18px;
    padding: 18px;
    background: #ffffff;
    border: 1px solid #e1e6e9;
}

.inch-lab-benefit-icon {
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f3f5f6;
    border-radius: 50%;
}

.inch-lab-benefit-item h4 {
    margin: 0 0 6px;
    font-size: 17px;
}

.inch-lab-benefit-item p {
    margin: 0;
    font-size: 13px;
    line-height: 1.6;
}


/* ========================================
   RESPONSIVE - TABLET
========================================= */

@media (max-width: 991px) {

    .inch-lab-capabilities-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .inch-lab-parameters-grid {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    .inch-lab-applications-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .inch-lab-benefits-grid {
        grid-template-columns: 1fr;
        gap: 50px;
    }

    .inch-lab-benefits-image {
        height: 450px;
    }

}


/* ========================================
   RESPONSIVE - MOBILE
========================================= */

@media (max-width: 767px) {

    .inch-lab-capabilities,
    .inch-lab-parameters,
    .inch-lab-applications,
    .inch-lab-benefits {
        padding: 70px 0;
    }

    .inch-lab-capabilities-heading h2,
    .inch-lab-parameters-content h2,
    .inch-lab-applications-heading h2,
    .inch-lab-benefits-content h2 {
        font-size: 32px;
    }

    .inch-lab-capabilities-grid,
    .inch-lab-applications-grid {
        grid-template-columns: 1fr;
    }

    .inch-lab-parameter-list {
        grid-template-columns: 1fr;
    }

    .inch-lab-benefits-image {
        height: 350px;
    }

    .inch-lab-benefit-item {
        padding: 15px;
    }

}

.inch-certificate-list {
    padding: 90px 0;
    background: #f5f7f8;
}

.inch-certificate-heading {
    max-width: 800px;
    margin: 0 auto 50px;
    text-align: center;
}

.inch-certificate-heading h2 {
    margin: 0 0 18px;
    font-size: 42px;
    line-height: 1.2;
}

.inch-certificate-heading h2 span {
    display: block;
}

.inch-certificate-heading p {
    margin: 0;
    font-size: 16px;
    line-height: 1.7;
}


/* 4 IMAGES IN ONE ROW */

.inch-certificate-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
}

.inch-certificate-card {
    background: #fff;
    padding: 12px;
    border: 1px solid #e1e5e8;
    transition: all 0.3s ease;
}

.inch-certificate-card:hover {
    transform: translateY(-6px);
}

.inch-certificate-image {
    width: 100%;
    height: 420px;
    overflow: hidden;
    background: #fff;
}

.inch-certificate-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    display: block;
}


/* TABLET */

@media (max-width: 991px) {

    .inch-certificate-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .inch-certificate-image {
        height: 400px;
    }
}


/* MOBILE */

@media (max-width: 575px) {

    .inch-certificate-grid {
        grid-template-columns: 1fr;
    }

    .inch-certificate-image {
        height: 450px;
    }

    .inch-certificate-heading h2 {
        font-size: 32px;
    }
}


/* =========================================
   CLIENT LOGOS
========================================= */

.inch-clients-section {
    padding: 90px 0;
    background: #f7f8fa;
}

.inch-clients-heading {
    max-width: 750px;
    margin: 0 auto 50px;
    text-align: center;
}

.inch-clients-tag {
    display: inline-block;
    margin-bottom: 12px;
    color: #c62828;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
}

.inch-clients-heading h2 {
    margin: 0 0 15px;
    font-size: 42px;
    line-height: 1.2;
    font-weight: 800;
    color: #172033;
}

.inch-clients-heading h2 span {
    color: #c62828;
}

.inch-clients-heading p {
    margin: 0;
    color: #697386;
    font-size: 16px;
    line-height: 1.7;
}


/* =========================================
   6 LOGOS IN EACH ROW
========================================= */

.inch-client-logos {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 18px;
}


/* Individual Logo Box */

.inch-client-logo {
    height: 145px;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 10px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 20px;

    transition: all 0.35s ease;
}


/* Logo */

.inch-client-logo img {
    width: 100%;
    height: 100%;
    max-width: 145px;
    max-height: 85px;

    object-fit: contain;
    display: block;

    transition: transform 0.35s ease;
}


/* Hover */

.inch-client-logo:hover {
    transform: translateY(-6px);
    border-color: #c62828;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
}

.inch-client-logo:hover img {
    transform: scale(1.06);
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 991px) {

    .inch-client-logos {
        grid-template-columns: repeat(3, 1fr);
    }

}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 575px) {

    .inch-clients-section {
        padding: 60px 0;
    }

    .inch-clients-heading h2 {
        font-size: 32px;
    }

    .inch-client-logos {
        grid-template-columns: repeat(2, 1fr);
        gap: 12px;
    }

    .inch-client-logo {
        height: 120px;
        padding: 15px;
    }

    .inch-client-logo img {
        max-width: 120px;
        max-height: 70px;
    }

}



.pds-home-cta-action {
    width: 100%;
    height: 100%;
    min-height: 495px;
    overflow: hidden;
    position: relative;
}

.pds-home-cta-image {
    width: 100%;
    height: 100%;
    min-height: 495px;

    display: block;

    object-fit: cover;
    object-position: center;
}