@import url('https://fonts.googleapis.com/css2?family=Oswald:wght@200..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Sofia+Sans+Semi+Condensed:ital,wght@0,1..1000;1,1..1000&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css');
/* =========================
   GLOBAL CSS
========================= */

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family: "Oswald", sans-serif;
        font-size: 16px;
    background: linear-gradient(90deg,rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 100%);
    color:#091413;
}

img{
    max-width:100%;
    display:block;
}

a{
    text-decoration:none;
}

.header-style-five {
    top: 0;
    width: 100%;
    z-index: 10;
    padding-top: 20px;
    position: absolute;
}
.container-fluid {
    width: 95%;
    margin: 0 auto;
}
.header-main-menu {
    display: flex;	
justify-content: space-between;
align-items: center;
}
.site-logo img {
    width: 350px;
}
.header-style-five .header-cta-btn {
    height: 48px;
    width: 150px;
    font-weight: 700;
    line-height: 48px;
    margin-left: 20px;
    background-color: #fff;
    border-radius: 5px;
	    text-transform: uppercase;
}
.header-style-five .header-cta-btn a {
    color: #005c98;
    width: 100%;
    display: block;
    text-align: center
}
.main-header-menu-item {
    display: flex;
}





/* =========================
   NAVBAR
========================= */

.ye-nav-wrapper .navbar{
    max-width:100%;
    margin:auto;
    padding:0px 0px;
    display:flex;
    align-items:center;
    justify-content:space-between;
}

.ye-nav-wrapper .logo img{
    max-height:60px;
    display:block;
}

/* =========================
   MENU
========================= */

.ye-nav-wrapper .menu{
    list-style:none;
    display:flex;
    gap:8px;
    margin:0;
    padding:0;
}

.ye-nav-wrapper .menu li{
    position:relative;
    list-style:none;
}

.ye-nav-wrapper .menu li a,
.ye-nav-wrapper .drop-btn{
    padding:8px 12px;
    color:#fff;
    font-size:15px;
    font-weight:500;
    border-radius:12px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    cursor:pointer;
    transition:0.3s;
    text-decoration:none;
}

.ye-nav-wrapper .menu li a:hover,
.ye-nav-wrapper .drop-btn:hover{
    color:#ff6600;
}

/* =========================
   DROPDOWN
========================= */

.ye-nav-wrapper .drop-toggle{
    display:none;
}

.ye-nav-wrapper .dropdown{
    position:absolute;
    top:110%;
    left:0;
    width:260px;
    background:#000;
    border-radius:18px;
    padding:15px 0;
    box-shadow:0 20px 50px rgba(0,0,0,0.08);
    opacity:0;
    visibility:hidden;
    transform:translateY(15px);
    transition:0.35s;
    z-index:999;
}

.ye-nav-wrapper .menu li:hover > .dropdown{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
}

.ye-nav-wrapper .dropdown li{
    list-style:none;
}
.ye-nav-wrapper .menu li ul li.submenu-parent .submenu-btn span a {
  padding: 0;
}
.ye-nav-wrapper .dropdown li a{
    display:block;
    padding:10px 16px;
    border-radius:0;
}

/* =========================
   SUBMENU
========================= */

.ye-nav-wrapper .submenu-parent{
    position:relative;
}

.ye-nav-wrapper .submenu-parent input{
    display:none;
}

.ye-nav-wrapper .submenu-btn{
    width:100%;
    padding:8px 14px;
}

.ye-nav-wrapper .submenu{
    position:absolute;
    left:100%;
    top:0;
    width:260px;
    background: #fff;
    border-radius:18px;
    padding:15px 0;
    box-shadow:0 20px 50px rgba(0,0,0,0.08);
    opacity:0;
    visibility:hidden;
    transform:translateX(10px);
    transition:0.35s;
    z-index:999;
    max-height:400px;
    overflow-y:auto;
}

.ye-nav-wrapper .submenu li a{
    padding:10px 16px;
    border-bottom:1px solid #ececec;
    border-radius:0;
    color: #000;
}

.ye-nav-wrapper .submenu li:last-child a{
    border-bottom:none;
}

.ye-nav-wrapper .submenu-parent:hover > .submenu{
    opacity:1;
    visibility:visible;
    transform:translateX(0);
}

/* Scrollbar */

.ye-nav-wrapper .submenu::-webkit-scrollbar{
    width:6px;
}

.ye-nav-wrapper .submenu::-webkit-scrollbar-thumb{
    background:#ccc;
    border-radius:10px;
}

/* =========================
   MOBILE MENU BUTTON
========================= */

.ye-nav-wrapper .menu-btn{
    display:none;
}

.ye-nav-wrapper .hamburger{
    width:35px;
    height:35px;
    color:#fff;
    border-radius:8px;
    display:none;
    align-items:center;
    justify-content:center;
    font-size:20px;
    cursor:pointer;
}

/* =========================
   MOBILE
========================= */

@media(max-width:991px){

    .ye-nav-wrapper .navbar{
        padding:10px;
    }

    .ye-nav-wrapper .hamburger{
        display:flex;
    }

    .ye-nav-wrapper .menu{
        position:fixed;
        top:0;
        left:-100%;
        width:320px;
        height:100vh;
        background:#282323;
        flex-direction:column;
        align-items:flex-start;
        padding:80px 15px;
        overflow-y:auto;
        transition:0.4s;
        box-shadow:0 0 50px rgba(0,0,0,0.1);
        z-index:99999;
    }

    .ye-nav-wrapper .menu li{
        width:100%;
    }

    .ye-nav-wrapper .menu li a,
    .ye-nav-wrapper .drop-btn{
        width:100%;
        padding:12px 14px;
    }

    .ye-nav-wrapper .menu-btn:checked ~ .menu{
        left:0;
    }

    /* MOBILE DROPDOWN */

    .ye-nav-wrapper .dropdown{
        position:static;
        width:100%;
        box-shadow:none;
        border-radius:0;
        padding:0;
        opacity:1;
        visibility:visible;
        transform:none;
        max-height:0;
        overflow:hidden;
        transition:0.4s;
        background:#b5a9a9;
    }

    .ye-nav-wrapper .drop-toggle:checked ~ .dropdown{
        max-height:2000px;
        margin-top:10px;
    }

    /* MOBILE SUBMENU */

    .ye-nav-wrapper .submenu{
        position:static;
        width:100%;
        box-shadow:none;
        border-radius:0;
        opacity:1;
        visibility:visible;
        transform:none;
        max-height:0;
        overflow:hidden;
        transition:0.4s;
        background:transparent;
        padding:0;
    }

    .ye-nav-wrapper .submenu-parent:hover .submenu{
        transform:none;
    }

    .ye-nav-wrapper .submenu-toggle{
        display:none;
    }

    .ye-nav-wrapper .submenu-toggle:checked ~ .submenu{
        max-height:1500px;
    }

    .ye-nav-wrapper .submenu li a{
        padding:10px 25px;
        border-bottom:1px solid #e5e4e4;
    }
}



/* =========================
   Banner CSS
========================= */

.ss_slider{
    position:relative;
    overflow:hidden;
    height:800px;
}

.ss_slider .ss_banner{
    position:absolute;
    inset:0;
    opacity:0;
    visibility:hidden;
    transition:1.2s ease;
}

.ss_slider .ss_banner.active{
    opacity:1;
    visibility:visible;
    z-index:2;
}

/* Premium Zoom Effect */
.ss_slider .ss_banner img{
    transform:scale(1);
    transition:8s linear;
}

.ss_slider .ss_banner.active img{
    transform:scale(1);
}

/* Content Animation */
.ss_content{
    opacity:0;
    transform:translateY(-50%) translateX(-80px);
    transition:1s ease .4s;
}

.ss_banner.active .ss_content{
    opacity:1;
    transform:translateY(-50%) translateX(0);
}

/* Dots */
.ss_nav{
    position:absolute;
    right:20px;
    top:55%;
    transform:translateY(-50%);
    display:flex;
    flex-direction:column;
    gap:12px;
    z-index:11;
}

/* Inactive Dot */
.ss_nav span{
    width:9px;
    height:9px;
    border-radius:50%;
    background:#fff;
    cursor:pointer;
    transition:all .3s ease;
}

/* Hover */
.ss_nav span:hover{
    transform:scale(1.1);
}

/* Active Dot */
.ss_nav span.active{
    background:transparent;
    border:2px solid #d97a22; /* was 1px */
    position:relative;
    width:13px;
    height:13px;
    left: -2px;
}

/* Center Orange Dot */
.ss_nav span.active::before{
    content:"";
    position:absolute;
    width:4px;      /* was 4px */
    height:4px;     /* was 4px */
    border-radius:50%;
    background:#d97a22;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
}

.ss_progress{
    position:absolute;
    top:0;
    left:0;
    height:3px;
    width:100%;
    z-index:999;
    overflow:hidden;
}

.ss_progress::after{
    content:"";
    position:absolute;
    left:0;
    top:0;
    height:100%;
    width:100%;
    background:#d97a22;
    transform-origin:left;
    animation:ssProgress 6s linear infinite;
}

.ss_slider:hover .ss_progress::after{
    animation-play-state:paused;
}

@keyframes ssProgress{
    from{
        transform:scaleX(0);
    }
    to{
        transform:scaleX(1);
    }
}
.ss_banner{
    position:relative;
    height:100%;
    overflow:hidden;
    background:#000;
}

.ss_banner img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}



.ss_content{
    position:absolute;
    top:45%;
    left:3.5%;
    transform:translateY(-50%);
    z-index:2;
    max-width:900px;
}

.ss_tag{
    display:block;
    color:#d97a22;
    text-transform:uppercase;
    letter-spacing:4px;
    font-size:16px;
    margin-bottom:25px;
    font-weight:500;
    position:relative;
}

.ss_tag:after{
    content:"";
    display:block;
    width:90px;
    height:1px;
    background: rgb(0 0 0 / 48%);
    margin-top:5px;
}

.ss_content .h_1{
    margin:0;
    line-height:.98;
    text-transform:uppercase;
}

.steel,
.orange{
    display:block;
    letter-spacing:2px;
}

.steel{
    font-size: 55px;
    text-transform: capitalize;
    color: #005c98;
}

.orange{
    margin-top:10px;
    font-size:60px;

}

.ss_content p{
    color:#000;
    font-size:25px;
    line-height:1.8;
    max-width:650px;
    margin:25px 0;
}

.ss_content a{
    display:inline-flex;
    align-items:center;
    padding:12px 15px;
    border:1px solid #000;
    color:#000;
    text-decoration:none;
    text-transform:uppercase;
    letter-spacing:2px;
    transition:.4s;
        font-size: 14px;
}

.ss_content a:hover{
    background:#d97a22;
    color:#fff;
}

@media(max-width:991px){

    .steel{
        font-size:70px;
    }

    .orange{
        font-size:75px;
    }

    .ss_content{
        left:20px;
        right:20px;
    }
}

@media(max-width:767px){

    .ss_banner{
        height:600px;
    }

    .steel{
        font-size:28px;
    }

    .orange{
        font-size:35px;
    }

    .ss_content p{
        font-size:20px;
        margin: 20px 0;
        font-weight: 500;
    }
}




/* =========================
   PREMIUM LOGO SECTION
========================= */

.lux_logo_section{
    position:relative;
    padding:20px 30px;
    overflow:hidden;
    background: #fff;
        width: 80%;
    margin: 0 auto;
    margin-top: -60px;
    z-index: 11;
border-radius: 1px;
}

/* Slider */

.lux_logo_slider{
    position:relative;
    overflow:hidden;
    z-index:2;
}

.lux_logo_slider::before,
.lux_logo_slider::after{
    content:'';
    position:absolute;
    top:0;
    width:180px;
    height:100%;
    z-index:3;
}

.lux_logo_track{
    display:flex;
    gap:30px;
    width:max-content;
    animation:luxScroll 10s linear infinite;
}

.lux_logo_slider:hover .lux_logo_track{
    animation-play-state:paused;
}

@keyframes luxScroll{
    from{
        transform:translateX(0);
    }
    to{
        transform:translateX(-50%);
    }
}

/* Logo Card */

.lux_logo_item{
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(255,255,255,.8);
    border-radius:0px;
    transition:.45s ease;
    position:relative;
    overflow:hidden;
}

.lux_logo_item::before{
    content:'';
    position:absolute;
    top:0;
    left:-150%;
    width:70%;
    height:100%;
    background:linear-gradient(
    90deg,
    transparent,
    rgba(255,255,255,.8),
    transparent);
    transform:skewX(-25deg);
}

.lux_logo_item:hover::before{
    left:200%;
    transition:1s;
}


.lux_logo_item img{
    max-width:140px;
    max-height:70px;
    object-fit:contain;
    transition:.4s;
}

.lux_logo_item:hover img{
    filter:grayscale(0%);
    opacity:1;
    transform:scale(1.08);
}

/* Mobile */

@media(max-width:768px){

    .lux_logo_section{
        padding:10px 0 10px 0;
        margin-top: 0px;
    }

    .lux_logo_item{
        width:120px;
        min-width:120px;
        height:80px;
    }

    .lux_logo_item img{
        max-width: 100%;
    }

    .lux_logo_slider::before,
    .lux_logo_slider::after{
        width:60px;
    }
}




/* =========================
   STEPS CSS
========================= */

.steps-process{
    max-width:100%;
    margin:auto;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-wrap:wrap;
    padding: 50px 0;
        margin-top: 40px;
}

/* ==========================
   CARD WRAPPER
========================== */

.step-box{
    width:258px;
    height:210px;
    position:relative;
        border-radius: 20px;
        background: #fff;
}

/* Outer Border */

.step-box::before{
    content:"";
    position:absolute;
    inset:0;
    border:2px solid;
    border-radius:30px;
    z-index:1;
}

/* Inner Card */

.card{
    position:absolute;
    top:20px;
    left:20px;
    right:20px;
    bottom:20px;

    border-radius:24px;
    padding:15px;
    text-align:center;

    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;

    z-index:2;

}

/* Decorative Tabs */

.tab{
    width:70px;
    height:20px;
    border-radius:20px;
    position:absolute;
    left:50%;
    transform:translateX(-50%);
}

.top{
    top:-10px;
        z-index: -1;
}

.bottom{
    bottom:-10px;
z-index: -1;
}

/* ==========================
   CARD 1
========================== */

.card-1::before{
    border-color:#000;
}

.card-1 .card{
    background:#f5f5f5;
}

.card-1 .tab{
    background:#005c98;
}

/* ==========================
   CARD 2
========================== */

.card-2::before{
    border-color:#000;
}

.card-2 .card{
    background:#f9f9f9;
}

.card-2 .tab{
    background:#005c98;
}

/* ==========================
   CARD 3
========================== */

.card-3::before{
    border-color:#000;
}

.card-3 .card{
    background:#f5f5f5;
}

.card-3 .tab{
    background:#005c98;
}

/* ==========================
   CARD 4
========================== */

.card-4::before{
    border-color:#000;
}

.card-4 .card{
    background:#f5f5f5;
}

.card-4 .tab{
    background:#005c98;
}

/* ==========================
   ICONS
========================== */

.icon{
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:10px;
    font-size:32px;
    font-weight:700;
}

.card-1 .icon{
    color:#000;
}

.card-2 .icon{
    color:#000;
}

.card-3 .icon{
    color:#000;
}

.card-4 .icon{
    color:#000;
}

/* ==========================
   TEXT
========================== */

.card h4{
font-size: 20px;
    font-weight: 700;
    margin-bottom: 5px;
    color: #005c98;
    letter-spacing: .3px;
    text-transform: uppercase;
}

.card p{
    font-size:15px;
    line-height:1.6;
    color:#666;
}

/* ==========================
   CONNECTOR
========================== */

.connector{
    width:55px;
    height:2px;
    background:#005c98;
    position:relative;
}

.connector::before,
.connector::after{
    content:"";
    width:14px;
    height:14px;
    background:#fff;
    border:2px solid #005c98;
    border-radius:50%;

    position:absolute;
    top:50%;
    transform:translateY(-50%);
        z-index: 11;
}

.connector::before{
    left:-7px;
}

.connector::after{
    right:-7px;
}

/* ==========================
   MOBILE
========================== */

@media(max-width:1200px){

    .steps-process{
        flex-direction:column;
        gap:0px;
    }

    .connector{
        width:2px;
        height:60px;
    top: 0px;
    }

    .connector::before{
        left:50%;
        top:-7px;
        transform:translateX(-50%);
    }

    .connector::after{
        left:50%;
        top:auto;
        bottom:-7px;
        transform:translateX(-50%);
    }
}




/* =========================
   ACHIEVEMENT CSS
========================= */
.achievement-section{
    padding:0px;
    margin-top: 80px;
}

.container{
    max-width:1200px;
    margin:auto;
}

.top-wrapper{
    display:grid;
    grid-template-columns:2fr 260px;
    gap:25px;
    margin-bottom:5px;
align-items: center;
}

.intro-box{
    background:#f9f9f9;
    padding:40px;
    border-radius:0px;
}

.intro-box span{
color: #005c98;
    font-size: 14px;
    font-weight: 600;
    text-transform: uppercase;
}

.intro-box h2{
    font-size:42px;
    line-height:1.15;
    margin:10px 0 15px;
    color:#000;
}

.intro-box p{
    color:#666;
    line-height:1.8;
    margin-bottom:25px;
}

.intro-box a{
    display:inline-block;
    padding:12px 28px;
    background:#005c98;
    color:#fff;
    text-decoration:none;
    border-radius:50px;
}

.review-box{
    background:linear-gradient(135deg,#005c98,#005c98);
    border-radius:25px;
    color:#fff;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
    padding:30px 30px 50px 30px;
        height: auto;
}

.review-box .star{
    font-size:36px;
    color:#ffd54f;
}

.review-box h3{
    font-size:65px;
    margin:10px 0;
    line-height:1;
}

.review-box p{
    margin:0;
    font-weight:600;
    text-transform:uppercase;
    letter-spacing:1px;
}

.counter-row{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:20px;
    margin-top: 60px;
    border-top: 1px solid #cfcfcf;
    padding: 30px 0 0 0;
}

.counter-box{
    background:#fff;
    padding:35px 25px;
    border-radius:20px;
    text-align:center;
    transition:.3s;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.counter-box{
    position: relative;
}

.counter-box:not(:last-child)::after{
    content: "";
    position: absolute;
    top: 50%;
    right: -10px; /* half of 20px gap */
    transform: translateY(-50%);
    width: 2px;
    height: 80px;
    background: linear-gradient(
        to bottom,
        transparent 0%,
        #cfcfcf 20%,
        #cfcfcf 80%,
        transparent 100%
    );
}

.counter-box:hover{
    transform:translateY(-5px);
}

.counter-box h3{
    position:relative;
    display:block;
    font-size:52px;
    font-weight:700;
    margin:0 0 8px;
    color:#000;
    z-index:1;
}

.counter-box h3::before{
    content:"";
    position:absolute;
    width:110px;
    height:70px;
    top:30%;
    left:30%;
    transform:translate(-50%,-50%);
    background-image:radial-gradient(#005c98 1.8px, transparent 1.8px);
    background-size:10px 10px;
    opacity:.5;
    z-index:-1;
}
.counter-box span{
    font-size:20px;
    color:#555;
    font-weight:500;
}

@media(max-width:991px){

    .top-wrapper{
        grid-template-columns:1fr;
    }

    .counter-row{
        grid-template-columns:repeat(2,1fr);
    }

    .intro-box h2{
        font-size:34px;
    }
}

@media(max-width:576px){

    .counter-row{
        grid-template-columns:1fr 1fr;
        width: 90%;
    margin: 60px auto 0;
    }

    .intro-box{
        padding:50px 15px;
    }

    .intro-box h2{
        font-size:28px;
    }
}





/* =========================
   WHY US CSS
========================= */
.whyus-premium{
    background:#f9f9f9;
    padding:80px 30px;
    position:relative;
    overflow:hidden;
    margin-top: 40px;
}

.whyus-premium *{
    box-sizing:border-box;
}

.whyus-header{
    max-width:1200px;
    margin:auto;
    display:flex;
    justify-content:space-between;
    align-items:center;
    position:relative;
    z-index:5;
}

.whyus-title h2{
    margin:0;
    font-size:62px;
    line-height:1.05;
        letter-spacing: -3px;
    color:#222;
    font-weight:700;
}

.whyus-title span{
    display:block;
    color:#005c98;
    font-size:12px;
    font-weight:600;
    margin-bottom:15px;
    letter-spacing:1px;
}


/* =====================================
   EXACT DIVIDER STYLE
===================================== */

.premium-divider{
    position:absolute;
    top:150px;
    left:50%;
    width:50%;
    height:1px;
    z-index:1;
}

.premium-divider:before{
    content:"";
    position:absolute;
    width:100%;
    height:2px;

    background:
    repeating-linear-gradient(
        to right,
        #bcbcbc 0px,
        #bcbcbc 8px,
        transparent 6px,
        transparent 13px
    );

    opacity:.85;
}

/* ===================================== */

.whyus-content{
    max-width:1200px;
    margin: 30px auto 0;
    display:grid;
    grid-template-columns:300px 1fr 300px;
    gap:60px;
    align-items:center;
    position:relative;
    z-index:5;
}

.info-column{
    display:flex;
    flex-direction:column;
    gap:20px;
}

.info-card{
    background:#fff;
    border-radius:10px;
    padding:25px;
    box-shadow:0 5px 20px rgba(0,0,0,.04);
}

.info-card.large h3{
    font-size:26px;
    margin:0 0 15px;
    padding-bottom:10px;
    border-bottom:2px solid #222;
}

.info-card.large p{
    color:#666;
    line-height:1.8;
    font-size:14px;
}

.card-number{
    margin-top:20px;
    color:#005c98;
    font-size:38px;
    font-weight:700;
}

.card-number span{
    display:block;
    font-size:14px;
    color:#666;
    font-weight:400;
}

.small-number{
    color:#d84747;
    font-size:36px;
    font-weight:700;
    margin-bottom:10px;
}

.center-area{
    text-align:center;
}

/* CROSS IMAGE */

.cross-image{
    width:100%;
    height:480px;
    margin:auto;
    position:relative;
}

.cross-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.center-area p{
    max-width:280px;
    margin:25px auto;
    line-height:1.8;
    color:#444;
}

.premium-btn{
    display:inline-block;
    background:#111;
    color:#fff;
    text-decoration:none;
    padding:16px 35px;
    border-radius:8px;
    box-shadow:0 15px 25px rgba(0,0,0,.35);
    font-size:14px;
    letter-spacing:.5px;
}

@media(max-width:991px){

    .whyus-header{
        flex-direction:column;
        gap:20px;
            display: block;
    }

    .whyus-title h2{
        font-size:30px;
        letter-spacing: normal;
    }

    .premium-divider{
        display:none;
    }

    .whyus-content{
        grid-template-columns:1fr;
            gap: 40px;
    }
}





/* =========================
   PROJECT CSS
========================= */
.project-slider-section{
    background: #fff;
    padding:0px 0 40px 0;
    overflow:hidden;
    position:relative;
}

.projectSwiper{
    width:100%;
    max-width:1200px;
    margin:auto;
    padding-bottom:80px;
}

.projectSwiper .swiper-slide{
    height:auto;
}

.project-card{
    position:relative;
}

.project-image{
    height:420px;
    overflow:hidden;
}

.project-image img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}

.project-content{
    background:#fff;
    width:78%;
    margin:-60px auto 0;
    position:relative;
    z-index:2;
    padding:28px 22px 30px;
    box-sizing:border-box;
}

.project-category{
    display:block;
    color:#005c98;
    font-size:15px;
    font-weight:700;
    letter-spacing:.5px;
    text-transform:uppercase;
    margin-bottom:12px;
}

.project-content h3{
    margin:0;
    font-size:30px;
    line-height:1.3;
    font-weight:600;
    text-transform:uppercase;
    color:#000;
}
.project-content a {
    color:#000;
}


/* Pagination */

.projectSwiper .swiper-pagination{
    bottom:0 !important;
}

.projectSwiper .swiper-pagination-bullet{
    width:12px;
    height:12px;
    background:#005c98;
    opacity:1;
    margin:0 6px !important;
}

.projectSwiper .swiper-pagination-bullet-active{
    width:30px;
    border-radius:30px;
}

/* Responsive */

@media(max-width:991px){

    .project-image{
        height:350px;
    }

    .project-content h3{
        font-size:32px;
    }

}

@media(max-width:767px){

    .project-content{
        width:88%;
    }

    .project-content h3{
        font-size:23px;
    }

    .project-image{
        height:280px;
    }

}




/* =========================
   PRODUCT CSS
========================= */
.product-card-banner{
    padding:0px 0 0 0;
}

.pcb-inner{
max-width: 1200px;
    margin: auto;
    display: flex;
    align-items: center;
    gap: 30px;
    padding: 25px 35px;
    background: #005c98;
    flex-wrap: wrap;
    justify-content: space-between;
}

.pcb-title{
    min-width:180px;
}

.pcb-title h2{
    margin:0;
    font-size:40px;
    line-height:1.3;
    font-weight:700;
    color:#fff;
}

.pcb-title span{
    display:block;
    margin-top:8px;
    font-size:13px;
    letter-spacing:4px;
    text-transform:uppercase;
    color:#e9e9e9;
}

.pcb-divider{
    width:1px;
    height:80px;
    background:#fff;
}

.pcb-content{
    flex:1;
    color:#e9e9e9;
    font-size:15px;
    line-height:1.7;
    max-width:500px;
}

.pcb-btn{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:120px;
    height:45px;
    padding:0 30px;
    background: linear-gradient(
  to bottom,
  #e8e8e8 0%,
  #c0c0c0 50%,
  #f5f5f5 100%
);
    color:#000;
    text-decoration:none;
    font-size:15px;
    font-weight:600;
    border-radius:0px;
    transition:.3s;
}

.pcb-btn:hover{
    background:#935720;
    transform:translateY(-2px);
}

/* Responsive */
@media(max-width:991px){

    .pcb-inner{
        flex-direction:column;
        text-align:center;
    }

    .pcb-divider{
        width:100%;
        height:1px;
    }

    .pcb-content{
        max-width:100%;
    }

    .pcb-title h2{
        font-size:30px;
    }
}






/* =========================
   TESTIMONIAL CSS
========================= */
.testimonial-section{
    background: #fff;
    padding:90px 0 0px 0;
    overflow:hidden;
    margin-top: -70px;
        position: relative;
}
.testimonial-section::before {
    content: "";
    border-radius: 50%;
    position: absolute;
    width: 350px;
    height: 350px;
    background: rgb(0 92 152 / 29%);
    top: -200px;
    left: 0px;
}

.testimonialSwiper{
    max-width:1200px;
    margin:auto;
    padding-bottom:70px;
}

.testimonial-card{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:50px;
}

.testimonial-content{
    flex:1;
    max-width:650px;
}

.quote-icon{
    color:#005c98;
    font-size:70px;
    line-height:1;
    margin-bottom:10px;
}

.testimonial-content h2{
    margin:0 0 25px;
    font-size:55px;
    line-height:1.1;
    font-weight:800;
    text-transform:uppercase;
    color:#111;
}

.testimonial-content p{
    font-size:18px;
    line-height:1.8;
    color:#444;
    margin-bottom:40px;
}

.testimonial-content h4{
    margin:0;
    font-size:34px;
    font-weight:700;
    text-transform:uppercase;
}

.testimonial-content span{
    display:block;
    margin-top:8px;
    font-size:18px;
    color:#555;
}
.testimonial-content span a {
    color:#555;
    border-bottom: 1px solid #111;
    padding: 0 0 2px 0;
}

.testimonial-image{
    width:550px;
    flex-shrink:0;
}

.testimonial-image img{
    width:100%;
    height:545px;
    object-fit:inherit;
    display:block;
}

/* Pagination */

.testimonial-pagination{
    text-align:left;
    margin-top:30px;
}

.testimonial-pagination .swiper-pagination-bullet{
    width:12px;
    height:12px;
    background:#005c98;
    opacity:1;
    margin:0 5px !important;
}

.testimonial-pagination .swiper-pagination-bullet-active{
    width:30px;
    border-radius:30px;
}

/* Responsive */

@media(max-width:991px){

    .testimonial-card{
        flex-direction:column-reverse;
        gap:40px;
    }

    .testimonial-image{
        width:100%;
        max-width:450px;
    }

    .testimonial-content h2{
        font-size:40px;
    }

    .testimonial-content h4{
        font-size:22px;
    }
}

@media(max-width:767px){

    .testimonial-section{
        padding:85px 15px 0 15px;
        margin-top: -120px;
    }

    .testimonial-content h2{
        font-size:30px;
    }

    .testimonial-content p{
        font-size:16px;
    }

    .testimonial-image img{
        height:auto;
    }
}







/* =========================
   BLOG CSS
========================= */
.adnews-section{
    padding:80px 0;
    background:#f8f8f8;
}

.adnews-wrapper{
    max-width:1320px;
    margin:auto;
    padding:0 15px;
    display:grid;
    grid-template-columns:2fr 1fr;
    gap:50px;
}

.adnews-feature{
    display:grid;
    grid-template-columns:330px 1fr;
    align-items:center;
}

.adnews-content-box{
    background:#fff;
    padding:50px 40px;
    position:relative;
    z-index:2;
    box-shadow:0 10px 30px rgba(0,0,0,.04);
}

.adnews-tag,
.adnews-post-cat{
    display:flex;
    align-items:center;
    gap:10px;
    font-size:12px;
    color:#575757;
    margin-bottom:20px;
}

.adnews-tag::before,
.adnews-post-cat::before{
    content:"";
    width:18px;
    height:2px;
    background:#d81b4e;
}

.adnews-title{
    font-size:42px;
    line-height:1.2;
    color:#111;
    margin-bottom:25px;
    font-weight:700;
}

.adnews-desc{
    font-size:15px;
    line-height:1.8;
    color:#575757;
    margin-bottom:35px;
}

.adnews-read-btn{
    display:inline-block;
    text-decoration:none;
    color:#111;
    font-weight:600;
    margin-bottom:50px;
}


.adnews-image-box{
    margin-left:-70px;
}

.adnews-image-box img{
    width:100%;
    height:620px;
    object-fit:cover;
    display:block;
}

.adnews-sidebar-title{
    font-size:24px;
    font-weight:600;
    margin-bottom:35px;
    position:relative;
    padding-left:18px;
}

.adnews-sidebar-title::before{
    content:"";
    position:absolute;
    left:0;
    top:4px;
    width:3px;
    height:28px;
    background:#d81b4e;
}

.adnews-post{
    padding:30px 0;
    border-bottom:1px solid #e5e5e5;
}

.adnews-post h4{
    font-size:22px;
    line-height:1.5;
    color:#111;
    font-weight:500;
}
.adnews-post h4 a {
    color:#111;
}

@media(max-width:991px){

    .adnews-wrapper{
        grid-template-columns:1fr;
    }

    .adnews-feature{
        grid-template-columns:1fr;
    }

    .adnews-image-box{
        margin-left:0;
    }

    .adnews-image-box img{
        height: auto;
    }

    .adnews-title{
        font-size:30px;
    }

    .adnews-post h4{
        font-size:18px;
    }
}






/* =========================
   CONTACT CSS
========================= */
.hero-bg{
    height:650px;
    background:url('../images/enq.webp') center center/cover no-repeat;
    position:relative;
}
.hero-bg .container p {
    color: #fff;
}

.overlay{
    position:absolute;
    inset:0;
    background:
    linear-gradient(
        90deg,
        rgba(0,0,0,.78) 0%,
        rgba(0,0,0,.50) 45%,
        rgba(0,0,0,.15) 100%
    );
}

.hero-content{
    position:relative;
    z-index:2;
    width:470px;
    padding-top:45px;
}

.eyebrow{
    color:#cdb28a;
    font-size:11px;
    font-weight:700;
    letter-spacing:1px;
}

.hero-content .h_1{
    margin-top:15px;
    color:#fff;
    font-size:58px;
    line-height:.95;
    font-weight:900;
    text-transform:uppercase;
}

.hero-content p{
    color:#4c4c4c;
    width:310px;
    margin-top:18px;
    font-size:14px;
    line-height:1.5;
}

/* =======================
   RED SECTION
======================= */

.red-section{
    background:#005c98;
    height:380px;
    position:relative;
}

/* =======================
   FLOATING FORM
======================= */

.quote-box{
    position:relative;
    margin-top:-82px;
    margin-left:0px;
        top: -80px;

    width:950px;
    background:#fff;

    display:flex;
    padding:60px 60px;
    z-index:10;
}

.quote-left{
    width:230px;
    color:#fff;
}

.quote-left h3{
    font-size:32px;
    line-height:1.05;
    font-weight:700;
    color: #000;
}

.arrow{
    display:block;
    margin:18px 0;
    color:#005c98;
    font-size:30px;
}

.quote-left small{
    display:block;
    margin-bottom:12px;
    font-size:13px;
    color: #000;
}

.quote-left h4{
    color:#005c98;
    font-size:15px;
    font-weight:800;
}
.quote-left h4 a {
    color:#005c98;
}

/* =======================
   FORM
======================= */

.quote-right{
    flex:1;
}

.quote-right form{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
}

.quote-right input,
.quote-right select{
    height:40px;
    background:transparent;
    border:1px solid #444;
    color:#fff;
    padding:0 10px;
    font-size:11px;
}

.full{
    grid-column:1/-1;
}

.full p{
    color:#575757;
    font-size:11px;
    line-height:1.4;
}

button{
    background:#d7192d;
    color:#fff;
    border:none;
    height:40px;
    padding:0 24px;
    font-size:11px;
    font-weight:700;
    cursor:pointer;
    margin-top: 10px;
}

/* =======================
   OFFERS
======================= */

.offers{
    gap: 90px;
    color: #fff;
    position: relative;
    margin: 0 0 0 1020px;
    top: -400px;
}





/* =========================
   REVIEWS CSS
========================= */
.crv-section{
    padding:50px 0 30px 0;
    background:#f5f5f5;
}

.crv-container{
    max-width:1200px;
    margin:auto;
    padding:0 15px;
}

.crv-heading{
    text-align:center;
    margin-bottom:30px;
}

.crv-title{
    font-size:42px;
    color:#222;
    margin:0;
    font-weight:700;
}

.crvSwiper{
    padding:40px 5px 70px;
}

.crv-card{
    position:relative;
    background:#005c98;
    border-radius:12px;
    padding:65px 25px 30px;
    text-align:center;
    transition:.4s ease;
}

.crv-card:hover{
    transform:translateY(-8px);
}

.crv-avatar{
    width:80px;
    height:80px;
    border-radius:50%;
    overflow:hidden;
    position:absolute;
    left:50%;
    top:-30px;
    transform:translateX(-50%);
    border:7px solid #fff;
        background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 40px;
    color: #d5d5d5;
        font-weight: 700;
}

.crv-avatar img{
    width:100%;
    height:100%;
    object-fit:cover;
}

.crv-quote{
    width:40px;
    height:40px;
    border-radius:50%;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:15px;
    font-size:70px;
}

.crv-name{
    font-size:24px;
    margin-bottom:5px;
    color:#fff;
}

.crv-role{
    display:block;
    font-size:14px;
    color:#fff;
    margin-bottom:18px;
}

.crv-text{
    font-size:15px;
    line-height:1.8;
    color:#fff;
    margin-bottom:20px;
}

.crv-stars{
    color:#d89a1f;
    letter-spacing:3px;
    font-size:18px;
}

.crv-pagination{
    text-align:center;
    margin-top:30px;
}

.crv-pagination .swiper-pagination-bullet{
    width:10px;
    height:10px;
}

.crv-pagination .swiper-pagination-bullet-active{
    background:#005c98;
}

@media(max-width:767px){

    .crv-title{
        font-size:30px;
    }

}



/* =========================
   OTHER CSS
========================= */
.brochure-box {
    display: flex;
    align-items: flex-start;
    gap: 20px;
    padding: 0;
    max-width: 100%;
    flex-direction: column;
}

.brochure-box h4 {
    margin: 0;
    color: #fff;
    font-size: 24px;
    font-weight: 700;
}

.download-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 22px;
    background: #fff;
    color: #000;
    text-decoration: none;
    font-weight: 700;
    border-radius: 0px;
    transition: all 0.3s ease;
}

.download-btn:hover {
    transform: translateY(-3px) scale(1.05);
    background: #f8fafc;
    box-shadow: 0 8px 20px rgba(255,255,255,0.25);
}
.swiper {
    padding: 40px 0 !important;
        padding-bottom: 0 !important;
}
.mngd {
    max-width: 1300px;
    margin: auto;
    padding: 0 140px;
}
.mngd a {
    float: right;
    color: #fff;
}



/* =========================
   FOOTER CSS
========================= */
.lc-footer{
    position:relative;
    overflow:hidden;
    background:#010814;
    color:#fff;
    padding:90px 0 60px;
}

/* Grid Background */
.lc-footer::before{
    content:"";
    position:absolute;
    inset:0;

    background-image:
        linear-gradient(rgba(255,255,255,.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px);

    background-size:235px 235px;
    background-position:center center;
    pointer-events:none;
}

/* Top Line */
.lc-footer::after{
    content:"";
    position:absolute;
    top:38px;
    left:40px;
    right:40px;
    height:1px;
    background:rgba(255,255,255,.08);
}

/* ==========================
   CONTAINER
========================== */

.lc-footer-grid{
    max-width:1300px;
    margin:auto;
    padding:0 40px;
    position:relative;
    z-index:2;

    display:grid;
    grid-template-columns:2fr 2fr 1fr 1fr 1fr;
    gap:20px;
}

/* Left & Right Vertical Lines */
.lc-footer-grid::before,
.lc-footer-grid::after{
    content:"";
    position:absolute;
    top:-90px;
    bottom:-60px;
    width:1px;
    background:rgba(255,255,255,.12);
}

.lc-footer-grid::before{
    left:0;
}

.lc-footer-grid::after{
    right:0;
}

/* ==========================
   LOGO
========================== */

.lc-logo{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:25px;
}

.lc-logo-text{
    font-size:30px;
    font-weight:700;
    line-height:1.3;
    letter-spacing:1px;
}

.lc-footer-about p{
    max-width:380px;
    color: #c9c9c9;
    line-height:1.8;
    font-size:14px;
}

.lc-copyright{
    margin-top:55px;
    font-size:13px;
    color: #c9c9c9;
}
.lc-copyright a {
    color: #fff;
}

/* ==========================
   SOCIAL
========================== */

.lc-social{
    display:flex;
    gap:10px;
    margin-top:25px;
}

.lc-social a{
    width:40px;
    height:40px;
    border:1px solid rgba(255,255,255,.15);
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    text-decoration:none;
    transition:.3s ease;
}

.lc-social a:hover{
    background:#fff;
    color:#010814;
}

/* ==========================
   HEADING
========================== */

.lc-footer-contact h4,
.lc-footer-col h4{
    color: #fff;
    font-size:15px;
    letter-spacing:2px;
    margin-bottom:25px;
    font-weight:600;
}

/* ==========================
   CONTACT
========================== */

.lc-contact-item{
    display:flex;
    gap:15px;
    align-items:flex-start;
    margin-bottom:25px;
    padding-bottom:20px;
    border-bottom: 1px solid rgb(255 255 255 / 10%);
}

.lc-contact-item:last-child{
    border-bottom:none;
    margin-bottom:0;
}

.lc-contact-icon{
    width:42px;
    height:42px;
    border:1px solid rgba(255,255,255,.12);
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}

.lc-contact-item span{
    display:block;
    font-size:11px;
    color: #c9c9c9;
    letter-spacing:1px;
    text-transform:uppercase;
    margin-bottom:6px;
}

.lc-contact-item a{
    color:#fff;
    text-decoration:none;
    font-size:14px;
    transition:.3s;
}

.lc-contact-item a:hover{
    color:#cacccd;
}

.lc-contact-item p{
    margin:0;
    color: #fff;
    font-size:14px;
    line-height:1.7;
}

/* ==========================
   MENU
========================== */

.lc-footer-col ul{
    list-style:none;
}

.lc-footer-col li{
    margin-bottom:16px;
}

.lc-footer-col a{
    text-decoration:none;
    color:#fff;
    font-size:15px;
    transition:.3s ease;
}

.lc-footer-col a:hover{
    color:#9bb3ff;
    padding-left:5px;
}

/* ==========================
   RESPONSIVE
========================== */

@media (max-width:1100px){

    .lc-footer-grid{
        grid-template-columns:1fr 1fr;
        gap:50px;
    }

    .lc-footer-grid::before,
    .lc-footer-grid::after{
        display:none;
    }
}

@media (max-width:768px){

    .lc-footer{
        padding:50px 0 15px;
    }

    .lc-footer-grid{
        grid-template-columns:1fr;
        padding:0 25px;
        gap:25px;
    }

    .lc-footer::after{
        left:20px;
        right:20px;
    }

    .lc-footer::before{
        background-size:140px 140px;
    }

    .lc-copyright{
        margin-top:30px;
    }
}
.lc-footer-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        180deg,
        rgba(0,0,0,.05) 0%,
        rgba(0,0,0,.25) 100%
    );
    pointer-events:none;
}



/* =========================
   SLIDE TEXT ANIMATION
========================= */

.ss_banner .fade-slide-up {
    opacity: 0;
    filter: blur(10px);
    transform: translateY(45px);
}

/* Animate ONLY when slide is active */

.ss_banner.active .fade-slide-up {
    animation: fadeSlideUp 1s cubic-bezier(.16, 1, .3, 1) forwards;
}

/* Delays */

.ss_banner.active .fade-slide-up.delay-2 {
    animation-delay: .25s;
}

.ss_banner.active .fade-slide-up.delay-3 {
    animation-delay: .5s;
}

/* Animation */

@keyframes fadeSlideUp {
    0% {
        opacity: 0;
        filter: blur(10px);
        transform: translateY(45px);
    }

    70% {
        opacity: 1;
        filter: blur(0);
        transform: translateY(-4px);
    }

    100% {
        opacity: 1;
        filter: blur(0);
        transform: translateY(0);
    }
}
.light-sweep {
    position: relative;
    display: inline-block;
    overflow: hidden;
}

.light-sweep::after {
    content: "";
    position: absolute;
    top: 0;
    left: -120%;
    width: 50%;
    height: 100%;

    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.7),
        transparent
    );

    transform: skewX(-20deg);
    pointer-events: none;
}
.ss_banner.active .light-sweep::after {
    animation: lightSweep 2s ease-in-out 0.8s forwards;
}

@keyframes lightSweep {
    0% {
        left: -120%;
    }

    100% {
        left: 150%;
    }
}



.creative-section {
    width: 100%;
    overflow: hidden;
}

/* =========================
   TOP WHITE AREA
========================= */

.creative-top {
    min-height: auto;
    background: linear-gradient(
    to bottom,
    rgba(125, 160, 190, 0.85) 0%,
    rgba(165, 185, 200, 0.55) 28%,
    rgba(215, 210, 195, 0.35) 52%,
    rgba(242, 205, 160, 0.45) 75%,
    rgba(235, 175, 105, 0.65) 100%
);
    display: flex;
    align-items: flex-end;
    padding: 170px 50px 120px 50px;
    gap: 10%;
        margin-bottom: 20px;
}

.creative-top-title {
    width: 55%;
}

.creative-top-title .light-text {
    display: block;
    color: #c5c5c5;
    font-size: clamp(90px, 5vw, 76px);
    line-height: .88;
    font-weight: 300;
    letter-spacing: -5px;
}

.creative-top-title .dark-text {
    display: block;
    color: #111111;
    font-size: clamp(120px, 5vw, 76px);
    line-height: .95;
    font-weight: 400;
    letter-spacing: -5px;
}

.creative-top-description {
    width: 50%;
    color: #111111;
    font-size: 22px;
    line-height: 1.25;
}

/* =========================
   HERO AREA
========================= */

.creative-hero {
    position: relative;
    min-height: auto;
    padding: 60px 50px 140px 50px;
    background: #fff;
    overflow: hidden;
}

/* Top/right thin border */

.hero-border {
    position: absolute;
    top: 70px;
    right: 5%;
    width: 54%;
    height: calc(85% - 75px);
    border-top: 1px solid rgb(0 0 0 / 80%);
    border-right: 1px solid rgb(0 0 0 / 80%);
        border-bottom: 1px solid rgb(0 0 0 / 80%);
    border-radius: 0 30px 30px 0;
    pointer-events: none;
}

/* Bottom border */


/* =========================
   SMALL BRAND ROW
========================= */

.hero-brand {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    gap: 16px;
    margin-left: 1.5%;
    margin-top: 0;
}

.brand-logo {
    width: 44px;
    height: 44px;
    border-radius: 7px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 31px;
    font-weight: bold;
    background: #d97a22;
}

.brand-text {
    color: #4c4c4c;
    font-size: 14px;
    line-height: 1.4;
        width: 400px;
    text-transform: uppercase;
    font-weight: 400;
}

/* =========================
   HERO CONTENT
========================= */

.hero-content {
    position: relative;
    z-index: 2;
    margin-left: 1.5%;
    margin-top: 20px;
    width: 41%;
}

.hero-heading {
    color: #000;
    font-size: clamp(55px, 5.2vw, 72px);
    line-height: 1.04;
    letter-spacing: -3px;
    font-weight: 700;
    margin-bottom: 23px;
}

.hero-description {
    max-width: 570px;
    color: #ffffff;
    font-size: 15px;
    line-height: 1.45;
}

/* =========================
   IMAGE
========================= */

.hero-image-wrap {
    position: absolute;
    z-index: 3;
    right: 8.5%;
    top: 115px;
    width: 100%;
    max-width: max-content;
    height: auto;
    border-radius: 27px;
    overflow: hidden;
}

.hero-image-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* =========================
   RESPONSIVE
========================= */

@media (max-width: 1000px) {

    .creative-top {
        padding: 25px 7%;
        gap: 5%;
    }

    .creative-top-title {
        width: 60%;
    }

    .creative-top-description {
        width: 260px;
        font-size: 14px;
    }

    .hero-content {
        width: 65%;
    }

    .hero-heading {
        font-size: 54px;
    }

    .hero-image-wrap {
        right: 4%;
        width: 27%;
        height: 380px;
    }
}


@media (max-width: 700px) {

    .creative-top {
        display: block;
        padding: 150px 15px 60px 15px;
        min-height: auto;
    }

    .creative-top-title {
        width: 100%;
    }

    .creative-top-title .light-text,
    .creative-top-title .dark-text {
        font-size: 52px;
        letter-spacing: -3px;
    }

    .creative-top-description {
        width: 100%;
        max-width: 350px;
        margin-top: 25px;
    }

    .creative-hero {
        padding: 25px 20px 45px;
        min-height: auto;
    }

    .hero-border {
        display: none;
    }

    .hero-bottom-line {
        display: none;
    }

    .hero-brand {
        margin-left: 0;
    }

    .brand-text {
        font-size: 12px;
                line-height: 1.6em;
    }

    .hero-content {
        width: 100%;
        margin-left: 0;
        margin-top: 20px;
    }

    .hero-heading {
        font-size: 48px;
        line-height: 1.02;
        letter-spacing: -2px;
    }

    .hero-description {
        font-size: 13px;
        max-width: 100%;
    }

    .hero-image-wrap {
        position: relative;
        top: auto;
        right: auto;
        width: 100%;
        max-width: 350px;
        height: auto;
        margin: 35px auto 0;
        border-radius: 25px;
        margin-bottom: 25px;
    }
}


@media (max-width: 450px) {

    .creative-top-title .light-text,
    .creative-top-title .dark-text {
        font-size: 42px;
    }

    .hero-heading {
        font-size: 40px;
    }

    .hero-image-wrap {
        height: auto;
    }
}


.creative_description {
    padding: 0px 0;
        margin-top: 30px;
    position: relative;
}
.description_container {
    padding: 80px 70px;
    background: #f5f5f5;
    margin: 0 70px;
}
.des_tag {
    background: #fff;
    width: fit-content;
    padding: 10px 20px;
    font-size: 18px;
    margin: 0 0 20px 0;
}
.description_container h2 {
    font-size: 35px;
    line-height: 1.1em;
    font-weight: 400;
        margin-bottom: 20px;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
        width: 650px;
}
.description_container h3 {
    font-size: 25px;
    line-height: 1.1em;
    font-weight: 400;
    margin: 25px 0 0 0;
    font-family: "Sofia Sans Semi Condensed", sans-serif;
}
.description_container h4 {
        font-size: 16px;
    margin: 20px 0 0 0;
}
.description_container p {
    font-family: "Poppins", sans-serif;
    margin-top: 10px;
}
.description_container ul {
      margin: 5px 0 0 20px;
          font-family: "Poppins", sans-serif;
}



.mbl {
    display: none !important;
}
.mt {
    margin-top: 0;
}
.wid_90 {
    width: 72%;
        margin-top: 0;
}
.wid_100 {
    width: 100% !important;
    max-width: 100% !important;
}
.mtop {
    margin-top: 30px;
}


.stats-box {
width: 55%;
    margin-left: auto;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 12px;
    margin-top: -80px;
    position: relative;
    padding-right: 70px;
}

.stat-item {
  padding: 12px 14px;
  background: #fff;
  border: 1px solid #e8e8e8;
  border-radius: 8px;
  text-align: left;
  box-shadow: 0 3px 12px rgba(0,0,0,0.06);
}

.stat-number {
  display: block;
  font-size: 24px;
  font-weight: 700;
  color: #111;
  line-height: 1.1;
}

.stat-title {
  display: block;
  margin-top: 5px;
  font-size: 12px;
  color: #706f6f;
  line-height: 1.3;
}


/* =========================================
   SS GRILLS EDITORIAL DESIGN
========================================= */

.ssg_editorial_section {
    position: relative;
    width: 100%;
    overflow: hidden;
    padding: 90px 25px;
    font-family: 'Poppins', sans-serif;
}

/* Main wrapper */

.ssg_editorial_wrapper {
    position: relative;
    z-index: 2;
    max-width: 1210px;
    min-height: 850px;
    margin: auto;

    display: grid;

    grid-template-columns:
        1.05fr
        0.95fr
        0.95fr;

    grid-template-rows:
        280px
        300px
        270px;

    gap: 0;
}


/* =========================================
   RED DECORATIVE CIRCLES
========================================= */

.ssg_red_circle {
    position: absolute;
    z-index: 0;
    width: 520px;
    height: 520px;
    border-radius: 50%;
    background: #f45459;
}

.ssg_circle_one {
    top: -180px;
    left: 8%;
}

.ssg_circle_two {
    right: 8%;
    bottom: -250px;
}


/* =========================================
   INTRO BLOCK
========================================= */

.ssg_intro_block {
    position: relative;
    background: linear-gradient(90deg,rgba(245, 245, 245, 1) 0%, rgba(245, 245, 245, 1) 100%);

    padding: 45px 48px;

    grid-column: 1 / 2;
    grid-row: 1 / 3;

    display: flex;
    flex-direction: column;
    justify-content: center;

    overflow: hidden;
}

.ssg_intro_block:after {
    content: "";
    position: absolute;
    width: 180px;
    height: 180px;
    border: 1px solid #d7d7d7;
    border-radius: 50%;
    right: -80px;
    bottom: -50px;
}

.ssg_small_label {
    display: block;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 2px;
    color: #777;
    margin-bottom: 22px;
}

.ssg_intro_block h2 {
    margin: 0;

    font-size: clamp(42px, 5vw, 72px);
    line-height: .94;
    letter-spacing: -4px;
    font-weight: 500;
    color: #151515;
}

.ssg_intro_block h2 span {
    color: #005c98;
}

.ssg_intro_block p {
    max-width: 400px;
    margin: 30px 0 0;

    color: #666;
    font-size: 14px;
    line-height: 1.8;
}


/* Round button */

.ssg_round_btn {
    width: 62px;
    height: 62px;

    margin-top: 30px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: linear-gradient(90deg,rgba(217, 122, 34, 1) 0%, rgba(217, 122, 34, 1) 100%);
    color: #fff;

    text-decoration: none;

    font-size: 11px;
    font-weight: 600;

    transition: .3s ease;
}

.ssg_round_btn:hover {
    background: #111;
    transform: rotate(10deg);
}


/* =========================================
   SERVICE CARDS
========================================= */

.ssg_service_card {
    position: relative;
    overflow: hidden;
    background: #fff;
}


/* Image */

.ssg_card_image {
    width: 100%;
    height: 100%;
}

.ssg_card_image img {
    width: 100%;
    height: 100%;

    display: block;

    object-fit: cover;



    transition: .5s ease;
}

.ssg_service_card:hover .ssg_card_image img {
    filter: grayscale(0%);
    transform: scale(1.05);
}


/* Content */

.ssg_card_content {
    position: absolute;

    left: 0;
    right: 0;
    bottom: 0;

    padding: 28px;

    background: rgb(255 255 255 / 86%);
}

.ssg_card_number {
    display: block;

    margin-bottom: 8px;

    color: #d97a22;

    font-size: 11px;
    font-weight: 600;
    letter-spacing: 2px;
}

.ssg_card_content h3 {
    margin: 0 0 9px;

    color: #111;

    font-size: 28px;
    line-height: 1;

    font-weight: 500;
    letter-spacing: -1px;
}

.ssg_card_content p {
    margin: 0;

    max-width: 270px;

    color: #555;

    font-size: 12px;
    line-height: 1.65;
}

.ssg_arrow {
    position: absolute;

    right: 22px;
    top: 25px;

    font-size: 22px;
    color: #111;

    transition: .3s ease;
}

.ssg_service_card:hover .ssg_arrow {
    color: #f45459;
    transform: translate(4px,-4px);
}


/* =========================================
   CARD POSITIONS
========================================= */

/* Commercial */

.ssg_commercial_card {
    grid-column: 2 / 3;
    grid-row: 1 / 2;
}


/* Industrial */

.ssg_industrial_card {
    grid-column: 3 / 4;
    grid-row: 1 / 3;

    margin-left: 0;
}


/* Residential */

.ssg_residential_card {
    grid-column: 1 / 2;
    grid-row: 3 / 4;

    margin-top: 0;
}


/* Corporate */

.ssg_corporate_card {
    grid-column: 2 / 3;
    grid-row: 2 / 4;
}


/* =========================================
   RED FEATURE PANEL
========================================= */

.ssg_editorial_wrapper:after {
    content: "AT";
    
    position: absolute;

    right: 0px;
    bottom: 35px;

    width: 260px;
    height: 180px;

    display: flex;
    align-items: center;
    justify-content: center;

    background: #005c98;

    color: #fff;

    font-size: 100px;
    font-weight: 700;

    line-height: 1;
    letter-spacing: -10px;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 950px) {

    .ssg_editorial_section {
        padding: 60px 20px;
    }

    .ssg_editorial_wrapper {
        min-height: auto;

        grid-template-columns: 1fr 1fr;

        grid-template-rows:
            430px
            320px
            320px;
    }

    .ssg_intro_block {
        grid-column: 1 / 3;
        grid-row: 1 / 2;
    }

    .ssg_commercial_card {
        grid-column: 1 / 2;
        grid-row: 2 / 3;
    }

    .ssg_industrial_card {
        grid-column: 2 / 3;
        grid-row: 2 / 3;
    }

    .ssg_residential_card {
        grid-column: 1 / 2;
        grid-row: 3 / 4;
    }

    .ssg_corporate_card {
        grid-column: 2 / 3;
        grid-row: 3 / 4;
    }

    .ssg_editorial_wrapper:after {
        display: none;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

    .ssg_editorial_section {
        padding: 40px 15px;
    }

    .ssg_editorial_wrapper {
        display: flex;
        flex-direction: column;
    }

    .ssg_intro_block {
        min-height: 400px;
        padding: 40px 30px;
    }

    .ssg_intro_block h2 {
        font-size: 48px;
        letter-spacing: -2px;
    }

    .ssg_service_card {
        height: 390px;
    }

    .ssg_card_content {
        padding: 24px;
    }

    .ssg_card_content h3 {
        font-size: 25px;
    }

    .ssg_red_circle {
        width: 300px;
        height: 300px;
    }

    .ssg_circle_one {
        top: -100px;
        left: -100px;
    }

    .ssg_circle_two {
        right: -120px;
        bottom: -100px;
    }
}



/* =========================================================
   UNIQUE CITY PROPERTY SECTION
   Prefix: uxc-city-
   Designed to avoid conflicts with existing website CSS
   ========================================================= */

.uxc-city-section {
  width: 100%;
  box-sizing: border-box;
  padding: 25px 20px;
  background: #ffffff;
  overflow: hidden;
}

.uxc-city-section *,
.uxc-city-section *::before,
.uxc-city-section *::after {
  box-sizing: border-box;
}

.uxc-city-container {
  width: 100%;
  max-width: 1250px;
  margin: 0 auto;

  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 24px;

  align-items: stretch;
}


/* =========================
   CARD
   ========================= */

.uxc-city-card {
  position: relative;
  width: 100%;
  min-width: 0;

  padding: 8px;

  background: #ffffff;
  border: 1px solid #dce9f5;
  border-radius: 18px;

  box-shadow: 0 2px 7px rgba(35, 83, 120, 0.03);

  overflow: hidden;

  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    border-color 0.3s ease;
}

.uxc-city-card:hover {
  transform: translateY(-5px);
  border-color: #c5def2;
  box-shadow: 0 12px 28px rgba(36, 91, 138, 0.12);
}


/* =========================
   IMAGE
   ========================= */

.uxc-city-image-wrap {
  position: relative;
  width: 100%;
  height: 318px;

  overflow: hidden;
  border-radius: 13px;

  background: #edf3f7;
}

.uxc-city-image {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;
  object-position: center;

  transition: transform 0.5s ease;
}

.uxc-city-card:hover .uxc-city-image {
  transform: scale(1.045);
}


/* =========================
   CARD CONTENT
   ========================= */

.uxc-city-card-bottom {
  position: relative;

  min-height: 105px;
  padding: 16px 7px 9px 8px;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.uxc-city-info {
  min-width: 0;
  padding-right: 4px;
}

.uxc-city-info h3 {
  margin: 0 0 5px 0;

  color: #101010;

  font-family:
    Arial,
    Helvetica,
    sans-serif;

  font-size: 17px;
  line-height: 1.45;
  font-weight: 700;

  word-break: normal;
}

.uxc-city-info p {
  margin: 0;

  color: #6d7c8b;

  font-family:
    Arial,
    Helvetica,
    sans-serif;

  font-size: 14px;
  line-height: 1.4;
  font-weight: 400;
}


/* =========================
   ARROW BUTTON
   ========================= */

.uxc-city-arrow {
  flex: 0 0 35px;

  width: 35px;
  height: 35px;

  display: flex;
  align-items: center;
  justify-content: center;

  margin-right: 1px;

  background: #b5dcfb;
  border-radius: 9px;

  color: #087ed1;
  text-decoration: none;

  transition:
    background 0.25s ease,
    transform 0.25s ease,
    color 0.25s ease;
}

.uxc-city-arrow span {
  display: block;

  margin-top: -3px;

  font-family: Arial, Helvetica, sans-serif;
  font-size: 29px;
  line-height: 1;
  font-weight: 400;
}

.uxc-city-arrow:hover {
  background: #087ed1;
  color: #ffffff;
  transform: translateX(3px);
}


/* =========================
   TABLET
   ========================= */

@media (max-width: 1050px) {

  .uxc-city-container {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }

  .uxc-city-image-wrap {
    height: auto;
  }
}


/* =========================
   MOBILE
   ========================= */

@media (max-width: 650px) {

  .uxc-city-section {
    padding: 18px 12px;
  }

  .uxc-city-container {
    grid-template-columns: 1fr;
    gap: 18px;
    max-width: 500px;
  }

  .uxc-city-image-wrap {
    height: auto;
  }

  .uxc-city-card-bottom {
    min-height: 95px;
  }
}


/* =========================
   SMALL MOBILE
   ========================= */

@media (max-width: 380px) {

  .uxc-city-image-wrap {
    height: 270px;
  }

  .uxc-city-info h3 {
    font-size: 16px;
  }

  .uxc-city-info p {
    font-size: 13px;
  }
}



/* =========================================================
   STANDALONE BLOG GRID
   Unique prefix: uxc-blog-grid-
   ========================================================= */

.uxc-blog-grid-wrap {
  width: 100%;
  max-width: 1250px;
  margin: 0 auto;

  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;

  padding: 20px;

  font-family: Arial, Helvetica, sans-serif;
}


/* =========================
   BLOG CARD
   ========================= */

.uxc-blog-grid-card {
  width: 100%;
  min-width: 0;

  overflow: hidden;

  background: #ffffff;

  border: 1px solid #dce9f5;
  border-radius: 17px;

  box-shadow: 0 3px 14px rgba(25, 74, 110, 0.05);

  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease,
    border-color 0.3s ease;
}

.uxc-blog-grid-card:hover {
  transform: translateY(-6px);

  border-color: #c6dff2;

  box-shadow: 0 15px 35px rgba(25, 74, 110, 0.12);
}


/* =========================
   IMAGE
   ========================= */

.uxc-blog-grid-image {
  position: relative;

  width: 100%;
  height: 225px;

  overflow: hidden;

  background: #edf4f8;
}

.uxc-blog-grid-image img {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;
  object-position: center;

  transition: transform 0.55s ease;
}

.uxc-blog-grid-card:hover
.uxc-blog-grid-image img {
  transform: scale(1.06);
}


/* =========================
   CONTENT
   ========================= */

.uxc-blog-grid-content {
  padding: 19px 20px 21px;
}


/* =========================
   META
   ========================= */

.uxc-blog-grid-meta {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 9px;

  color: #8997a5;

  font-size: 12px;
  line-height: 1.4;
}

.uxc-blog-grid-meta i {
  display: block;

  width: 4px;
  height: 4px;

  flex: 0 0 4px;

  background: #b9c4ce;

  border-radius: 50%;
}


/* =========================
   TITLE
   ========================= */

.uxc-blog-grid-content h3 {
  display: -webkit-box;

  margin: 10px 0 16px;

  min-height: 51px;

  overflow: hidden;

  color: #151d2d;

  font-size: 18px;
  line-height: 1.42;
  font-weight: 700;


}


/* =========================
   READ MORE
   ========================= */

.uxc-blog-grid-link {
  display: inline-flex;

  align-items: center;
  gap: 7px;

  color: #087ed1;

  text-decoration: none;

  font-size: 14px;
  line-height: 1.4;
  font-weight: 700;

  transition:
    gap 0.25s ease,
    color 0.25s ease;
}

.uxc-blog-grid-link span {
  font-size: 19px;
  line-height: 1;
}

.uxc-blog-grid-link:hover {
  gap: 12px;
  color: #0569b0;
}


/* =========================
   TABLET
   ========================= */

@media (max-width: 900px) {

  .uxc-blog-grid-wrap {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

}


/* =========================
   MOBILE
   ========================= */

@media (max-width: 600px) {

  .uxc-blog-grid-wrap {
    grid-template-columns: 1fr;

    gap: 18px;

    padding: 15px;
  }

  .uxc-blog-grid-image {
    height: 220px;
  }

  .uxc-blog-grid-content {
    padding: 18px;
  }

}


/* =========================
   SMALL MOBILE
   ========================= */

@media (max-width: 380px) {

  .uxc-blog-grid-image {
    height: 200px;
  }

  .uxc-blog-grid-content h3 {
    font-size: 17px;
  }

}
/* Inner Page Section */
.inner-page {
    --accent: #005c98;
    --text: #292929;
    --muted: #666;
    font-family: Arial, Helvetica, sans-serif;
    background: #ffffff;
    color: var(--text);
    padding: 60px 20px;
    line-height: 1.8;
}

.inner-page * {
    box-sizing: border-box;
}

.inner-container {
    max-width: 1100px;
    margin: 0 auto;
}

/* Main Heading */
.inner-page h1 {
    font-size: clamp(30px, 4vw, 44px);
    line-height: 1.25;
    color: #111;
    margin: 0 0 25px;
    font-weight: 800;
        text-align: center;
}

/* Featured Image */
.inner-image {
    width: 100%;
    margin: 25px 0 35px;
    overflow: hidden;
    border-radius: 14px;
    background: #f4f4f4;
}

.inner-image img {
    width: 100%;
    height: auto;;
    object-fit: cover;
    display: block;
}

/* Headings */
.inner-page h2 {
    font-size: 30px;
    line-height: 1.4;
    color: #171717;
    margin: 35px 0 15px;
    font-weight: 750;
}

.inner-page h2::after {
    content: "";
    display: block;
    width: 65px;
    height: 4px;
    background: var(--accent);
    margin-top: 10px;
    border-radius: 5px;
}

.inner-page h3 {
    font-size: 23px;
    color: var(--accent);
    margin: 28px 0 12px;
    line-height: 1.4;
}

.inner-page h4 {
    font-size: 19px;
    color: #333;
    margin: 22px 0 10px;
}

.inner-page p {
    font-size: 16px;
    color: var(--muted);
    margin: 0 0 18px;
}

/* Lists */
.inner-page ul,
.inner-page ol {
    padding-left: 25px;
    margin: 15px 0 25px;
    color: var(--muted);
}

.inner-page li {
    padding: 5px 0 5px 5px;
    font-size: 16px;
}

.inner-page ul li::marker {
    color: var(--accent);
}

.inner-page ol li::marker {
    color: var(--accent);
    font-weight: bold;
}

/* Highlight Box */
.inner-highlight {
    background: #fff5f7;
    border-left: 4px solid var(--accent);
    border-radius: 8px;
    padding: 22px 25px;
    margin: 30px 0;
}

.inner-highlight p {
    margin: 0;
    color: #444;
}

/* Responsive Design */
@media (max-width: 768px) {
    .inner-page {
        padding: 35px 16px;
    }

    .inner-page h1 {
        font-size: 30px;
    }

    .inner-page h2 {
        font-size: 25px;
    }

    .inner-page h3 {
        font-size: 21px;
    }

    .inner-image img {
        height: 260px;
    }
}

@media (max-width: 480px) {
    .inner-image img {
        height: 210px;
    }

    .inner-page p,
    .inner-page li {
        font-size: 15px;
    }

    .inner-highlight {
        padding: 18px;
    }
}


/* =========================================
   LFC CONTACT SECTION
   Unique prefix: lfc-
========================================= */

.lfc-contact-section {
  --lfc-accent: #005c98;
  --lfc-text: #171717;
  --lfc-muted: #404038;
  --lfc-border: #e4e4e4;
  --lfc-surface: #f5f5f5;

  width: 100%;
  padding: 70px 20px;
  background: #ffffff;
  color: var(--lfc-text);
  box-sizing: border-box;
}

.lfc-contact-section *,
.lfc-contact-section *::before,
.lfc-contact-section *::after {
  box-sizing: border-box;
}

.lfc-contact-container {
  max-width: 1210px;
  width: 100%;
  margin: 0 auto;
}

/* Header */

.lfc-contact-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 35px;
  margin-bottom: 48px;
}

.lfc-header-left {
  flex: 1;
}

.lfc-small-label {
  display: inline-block;
  padding: 5px 13px;
  border: 1px solid #dedede;
  border-radius: 30px;
  color: #555;
  font-size: 20px;
  margin-bottom: 10px;
}

.lfc-header-left h1 {
  margin: 0;
  font-size: clamp(30px, 4vw, 55px);
  line-height: 1.15;
  font-weight: 500;
  letter-spacing: -1.8px;
}

.lfc-header-left h1 em,
.lfc-contact-info h2 em {
  font-weight: 700;
  font-style: italic;
}

/* Quick contact links */

.lfc-quick-contact {
  display: flex;
  flex-direction: column;
  gap: 13px;
    width: 900px;
}

.lfc-quick-item {
  display: flex;
  align-items: center;
  gap: 12px;
  color: inherit;
  text-decoration: none;
  transition: opacity 0.2s ease;
}

.lfc-quick-item:hover {
  opacity: 0.7;
}

.lfc-quick-icon {
  width: 46px;
  height: 46px;
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid #e8e8e8;
  border-radius: 50%;
  color: #005c98;
  font-size: 22px;
}

.lfc-quick-item small,
.lfc-quick-item strong {
  display: block;
}

.lfc-quick-item small {
  margin-bottom: 3px;
  color: var(--lfc-muted);
  font-size: 15px;
  font-family: 'Poppins', sans-serif;
}

.lfc-quick-item strong {
  font-size: 19px;
  font-weight: 600;
  font-family: 'Poppins', sans-serif;
}
.lfc-quick-item strong span {
    border-bottom: 1px solid #818181;
}

/* Main layout */

.lfc-contact-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 75px;
  align-items: center;
}

.lfc-contact-info h2 {
  margin: 0 0 28px;
  font-size: clamp(29px, 3.5vw, 42px);
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -1.5px;
}

.lfc-contact-info h2 span {
  font-weight: 400;
}

/* Map preview */

.lfc-map-wrapper {
  width: 100%;
  overflow: hidden;
  border: 1px solid #e6e6e6;
  border-radius: 9px;
}

.lfc-map-preview {
  position: relative;
  width: 100%;
  min-height: 290px;
  overflow: hidden;
  background-color: #dff3e8;
  background-image:
    linear-gradient(
      35deg,
      transparent 47%,
      rgba(255,255,255,0.8) 48%,
      rgba(255,255,255,0.8) 49%,
      transparent 50%
    ),
    linear-gradient(
      120deg,
      transparent 47%,
      rgba(255,255,255,0.65) 48%,
      rgba(255,255,255,0.65) 49%,
      transparent 50%
    ),
    repeating-linear-gradient(
      0deg,
      transparent 0px,
      transparent 44px,
      rgba(153,205,177,0.35) 45px,
      rgba(153,205,177,0.35) 47px
    ),
    repeating-linear-gradient(
      90deg,
      transparent 0px,
      transparent 53px,
      rgba(153,205,177,0.3) 54px,
      rgba(153,205,177,0.3) 56px
    );
}

/* Decorative map river */

.lfc-map-river {
  position: absolute;
  top: -40px;
  left: 46%;
  width: 60px;
  height: 450px;
  background: #8ed8e9;
  border: 5px solid rgba(255,255,255,0.5);
  border-radius: 50%;
  transform: rotate(38deg);
}

/* Map roads */

.lfc-map-road {
  position: absolute;
  height: 5px;
  background: #ffffff;
  border: 1px solid #d8d6c9;
  border-radius: 10px;
}

.lfc-map-road-one {
  top: 34%;
  left: -10%;
  width: 125%;
  transform: rotate(-15deg);
}

.lfc-map-road-two {
  top: 68%;
  left: -10%;
  width: 125%;
  transform: rotate(12deg);
}

.lfc-map-road-three {
  top: -5%;
  left: 28%;
  width: 120%;
  transform: rotate(68deg);
}

.lfc-map-road-four {
  top: 40%;
  left: 20%;
  width: 110%;
  transform: rotate(-48deg);
}

/* Map blocks */

.lfc-map-block {
  position: absolute;
  background: rgba(187, 222, 170, 0.75);
  border: 1px solid rgba(153, 195, 145, 0.65);
  border-radius: 4px;
}

.lfc-map-block-one {
  top: 22%;
  left: 12%;
  width: 19%;
  height: 18%;
}

.lfc-map-block-two {
  top: 54%;
  left: 62%;
  width: 25%;
  height: 20%;
}

.lfc-map-block-three {
  top: 12%;
  right: 7%;
  width: 16%;
  height: 20%;
}

.lfc-map-place {
  position: absolute;
  color: #668575;
  font-size: 10px;
  text-shadow: 0 1px 2px #ffffff;
}

.lfc-place-one {
  top: 47%;
  left: 12%;
}

.lfc-place-two {
  top: 74%;
  left: 43%;
}

.lfc-place-three {
  top: 28%;
  right: 12%;
}

/* Map button and pin */

.lfc-map-button {
  position: absolute;
  z-index: 2;
  top: 12px;
  left: 12px;
  display: inline-block;
  padding: 9px 13px;
  background: #ffffff;
  border: 1px solid #dedede;
  border-radius: 5px;
  color: #2863b9;
  text-decoration: none;
  font-size: 12px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.06);
  transition: background 0.2s ease;
}

.lfc-map-button:hover {
  background: #f2f6ff;
}

.lfc-map-pin {
  position: absolute;
  top: 49%;
  left: 51%;
  width: 25px;
  height: 25px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #ffffff;
  border: 5px solid #e6f1eb;
  border-radius: 50%;
  color: #dc7546;
  font-size: 9px;
  box-shadow: 0 2px 7px rgba(0,0,0,0.15);
}

.lfc-map-credit {
  position: absolute;
  right: 8px;
  bottom: 7px;
  padding: 4px 7px;
  background: rgba(255,255,255,0.85);
  color: #777;
  font-size: 9px;
}

/* Form card */

.lfc-form-column {
  width: 100%;
}

.lfc-form-card {
  padding: 32px;
  border: 1px solid var(--lfc-border);
  border-radius: 13px;
  background: #ffffff;
}

.lfc-form-eyebrow {
  display: block;
  margin-bottom: 3px;
  color: var(--lfc-muted);
  font-size: 12px;
}

.lfc-form-card h3 {
  margin: 0 0 23px;
  font-size: 23px;
  font-weight: 500;
  letter-spacing: -0.7px;
}

/* Form fields */

.lfc-contact-form {
  width: 100%;
}

.lfc-form-group {
  margin-bottom: 17px;
}

.lfc-form-group label {
  display: block;
  margin-bottom: 7px;
  color: #444;
  font-size: 12px;
}

.lfc-form-group input,
.lfc-form-group textarea {
  display: block;
  width: 100%;
  padding: 13px 15px;
  border: 1px solid transparent;
  border-radius: 30px;
  outline: none;
  background: var(--lfc-surface);
  color: var(--lfc-text);
  font-family: inherit;
  font-size: 13px;
  transition:
    border-color 0.2s ease,
    background 0.2s ease;
}

.lfc-form-group input {
  min-height: 45px;
}

.lfc-form-group textarea {
  min-height: 50px;
  resize: vertical;
  border-radius: 18px;
}

.lfc-form-group input::placeholder,
.lfc-form-group textarea::placeholder {
  color: #a0a0a0;
  opacity: 0;
}

.lfc-form-group input:focus,
.lfc-form-group textarea:focus {
  border-color: var(--lfc-accent);
  background: #ffffff;
}

.lfc-form-group input:focus::placeholder,
.lfc-form-group textarea:focus::placeholder {
  opacity: 1;
}

/* Submit button */

.lfc-submit-button {
  display: block;
  width: 100%;
  min-height: 47px;
  margin-top: 5px;
  padding: 13px 20px;
  border: none;
  border-radius: 30px;
  background: var(--lfc-accent);
  color: #fff;
  font-family: inherit;
  text-transform: uppercase;
  font-size: 15px;
  font-weight: 500;
  cursor: pointer;
  transition:
    background 0.25s ease,
    transform 0.25s ease;
}

.lfc-submit-button:hover {
  background: #d97a22;
  transform: translateY(-2px);
}

.lfc-terms {
  margin: 17px 0 0;
  color: var(--lfc-muted);
  text-align: center;
  font-size: 11px;
  line-height: 1.6;
}

.lfc-terms a {
  color: #333333;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* Responsive layout */

@media (max-width: 900px) {
  .lfc-contact-grid {
    gap: 35px;
  }

  .lfc-form-card {
    padding: 25px;
  }
}

@media (max-width: 650px) {
  .lfc-contact-section {
    padding: 45px 18px;
  }

  .lfc-contact-header {
    flex-direction: column;
    gap: 28px;
    margin-bottom: 38px;
  }

  .lfc-quick-contact {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .lfc-contact-grid {
    grid-template-columns: 1fr;
    gap: 35px;
  }

  .lfc-contact-info h2 {
    margin-bottom: 22px;
  }

  .lfc-map-preview {
    min-height: 250px;
  }

  .lfc-form-card {
    padding: 24px 20px;
  }

  .lfc-form-card h3 {
    font-size: 21px;
  }
}





/* =========================================
   APROJ - PROJECT LOCATION SECTION
   All classes are uniquely prefixed
========================================= */

.aproj-section {
  --aproj-accent: #005c98;
  --aproj-text: #20211f;
  --aproj-muted: #73756f;
  --aproj-border: #e9eae6;
  --aproj-soft: #f5f5f3;

  padding: 65px 20px 80px;
  background: #fff;
  color: var(--aproj-text);
  font-family: inherit;
  overflow: visible;
}

.aproj-container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

/* Location navigation */

.aproj-filter-bar {
  position: relative;
  z-index: 10;
  display: grid;
  grid-template-columns: 0.85fr 1.25fr 1.2fr 1.2fr 1.2fr;
  align-items: center;
  gap: 12px;
  padding: 10px;
  border: 1px solid var(--aproj-border);
  border-radius: 60px;
  background: #fff;
}

.aproj-tab {
  width: 100%;
  min-width: 0;
  min-height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 14px 20px;
  border: 0;
  border-radius: 40px;
  background: var(--aproj-soft);
  color: #41433e;
  font: inherit;
  font-size: 15px;
  font-weight: 500;
  text-align: center;
  cursor: pointer;
  transition: background .25s ease,
              color .25s ease,
              transform .25s ease;
}

.aproj-tab:hover {
  background: #ededeb;
}

.aproj-tab.is-active {
  background: var(--aproj-accent);
  color: #fff;
}

.aproj-tab:focus-visible,
.aproj-dropdown-menu button:focus-visible {
  outline: 2px solid #777;
  outline-offset: 3px;
}

/* Dropdowns */

.aproj-dropdown {
  position: relative;
  min-width: 0;
}

.aproj-dropdown-toggle {
  justify-content: space-between;
}

.aproj-chevron {
  width: 9px;
  height: 9px;
  flex-shrink: 0;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: rotate(45deg) translateY(-3px);
  transition: transform .2s ease;
}

.aproj-dropdown.is-open .aproj-chevron {
  transform: rotate(225deg) translate(-2px, -1px);
}

.aproj-dropdown-menu {
  position: absolute;
  top: calc(100% + 8px);
  left: 0;
  z-index: 20;
  width: 100%;
  min-width: 180px;
  padding: 8px;
  border: 1px solid var(--aproj-border);
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 12px 35px rgba(0, 0, 0, .09);

  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity .2s ease,
              transform .2s ease,
              visibility .2s ease;
}

.aproj-dropdown.is-open .aproj-dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.aproj-dropdown-menu button {
  width: 100%;
  display: block;
  padding: 12px 14px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: var(--aproj-text);
  font: inherit;
  font-size: 14px;
  text-align: left;
  cursor: pointer;
  transition: background .2s ease;
}

.aproj-dropdown-menu button:hover,
.aproj-dropdown-menu button.is-selected {
  background: #f3f4e6;
}

/* Heading */

.aproj-heading {
  margin: 65px 0 32px;
  text-align: center;
}

.aproj-eyebrow {
  display: inline-block;
  margin-bottom: 12px;
  color: #77796f;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 3px;
}

.aproj-heading h2 {
  margin: 0 0 12px;
  color: var(--aproj-text);
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 650;
  line-height: 1.2;
  letter-spacing: -1.3px;
}

.aproj-heading p {
  max-width: 600px;
  margin: 0 auto;
  color: var(--aproj-muted);
  font-size: 15px;
  line-height: 1.7;
}

/* Projects grid */

.aproj-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 28px 24px;
}

.aproj-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--aproj-border);
  border-radius: 14px;
  background: #fff;
  transition: transform .3s ease,
              box-shadow .3s ease;
  animation: aproj-appear .35s ease both;
}

.aproj-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 14px 35px rgba(0, 0, 0, .07);
}

.aproj-card[hidden] {
  display: none !important;
}

.aproj-card-image {
  position: relative;
  height: 230px;
  overflow: hidden;
  background: #eee;
}

.aproj-card-image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .5s ease;
}

.aproj-card:hover .aproj-card-image img {
  transform: scale(1.05);
}

.aproj-location-tag {
  position: absolute;
  left: 15px;
  bottom: 15px;
  padding: 8px 13px;
  border-radius: 30px;
  background: #fff;
  color: #292a26;
  font-size: 12px;
  font-weight: 600;
}

.aproj-card-content {
  padding: 24px 22px 22px;
}

.aproj-project-number {
  display: block;
  margin-bottom: 10px;
  color: #898b80;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2px;
}

.aproj-card-content h3 {
  margin: 0 0 14px;
  color: var(--aproj-text);
  font-size: 20px;
  font-weight: 600;
  line-height: 1.4;
}

.aproj-address {
  display: flex;
  align-items: flex-start;
  gap: 9px;
  margin: 0;
  color: var(--aproj-muted);
  font-size: 13px;
  line-height: 1.8;
}

.aproj-pin {
  flex-shrink: 0;
  color: #d97a22;
  font-size: 19px;
  line-height: 1.3;
}

.aproj-view-link {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-top: 20px;
  padding-bottom: 4px;
  border-bottom: 1px solid #d97a22a6;
  color: var(--aproj-text);
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  transition: color .2s ease;
}

.aproj-view-link span {
  transition: transform .2s ease;
}

.aproj-view-link:hover {
  color: #d97a22;
}

.aproj-view-link:hover span {
  transform: translate(3px, -3px);
}

/* Empty state */

.aproj-empty {
  padding: 65px 20px;
  border: 1px dashed #d8d9d2;
  border-radius: 14px;
  text-align: center;
}

.aproj-empty[hidden] {
  display: none !important;
}

.aproj-empty-icon {
  display: block;
  margin-bottom: 12px;
  color: #a2a58b;
  font-size: 38px;
}

.aproj-empty h3 {
  margin: 0 0 10px;
  font-size: 23px;
}

.aproj-empty p {
  color: var(--aproj-muted);
  font-size: 14px;
}

.aproj-reset-btn {
  margin-top: 12px;
  padding: 12px 24px;
  border: 0;
  border-radius: 30px;
  background: var(--aproj-accent);
  color: #fff;
  font: inherit;
  font-size: 14px;
  font-weight: 600;
  cursor: pointer;
}

/* Entry animation */

@keyframes aproj-appear {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Tablet */

@media (max-width: 900px) {
  .aproj-filter-bar {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-radius: 24px;
  }

  .aproj-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
  }

  .aproj-card-image {
    height: 210px;
  }
}

/* Mobile */

@media (max-width: 560px) {
  .aproj-section {
    padding: 40px 15px 55px;
  }

  .aproj-filter-bar {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    padding: 8px;
    border-radius: 20px;
  }

  .aproj-tab {
    min-height: 48px;
    padding: 12px 10px;
    gap: 8px;
    font-size: 13px;
  }

  .aproj-dropdown-menu {
    min-width: 0;
  }

  .aproj-heading {
    margin: 45px 0 25px;
  }

  .aproj-heading h2 {
    font-size: 29px;
  }

  .aproj-heading p {
    font-size: 13px;
  }

  .aproj-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .aproj-card-image {
    height: 225px;
  }

  .aproj-card-content {
    padding: 21px 18px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .aproj-section *,
  .aproj-section *::before,
  .aproj-section *::after {
    animation-duration: .01ms !important;
    transition-duration: .01ms !important;
  }
}



/* =========================================
   RESIDENTIAL GALLERY
========================================= */

.rgallery_section {
    width: 100%;
    max-width: 1250px;
    margin: 0 auto;
    padding: 70px 20px;
    box-sizing: border-box;
}


/* =========================================
   TABS
========================================= */

.rgallery_tabs {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    margin-bottom: 45px;
}

.rgallery_tab {
    width: 200px;
    height: 60px;
    border: none;
    border-radius: 50px;
    background: #f3f3f2;
    color: #222;
    font-family: Arial, sans-serif;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
    transition: all 0.35s ease;
}

.rgallery_tab:hover {
    background: #e8e8e8;
}

.rgallery_tab_active {
    background: #07669f;
    color: #fff;
    box-shadow: 0 8px 25px rgba(7, 102, 159, 0.22);
}


/* =========================================
   GALLERY GRID
========================================= */

.rgallery_content {
    display: grid;
    grid-template-columns: 1.55fr 1fr;
    gap: 20px;
    width: 100%;
}


/* =========================================
   BIG IMAGE
========================================= */

.rgallery_big {
    width: 100%;
    height: 600px;
    overflow: hidden;
    border-radius: 20px;
    background: #eee;
}

.rgallery_big img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.7s ease;
}

.rgallery_big:hover img {
    transform: scale(1.06);
}


/* =========================================
   RIGHT SIDE TWO IMAGES
========================================= */

.rgallery_side {
    display: grid;
    grid-template-rows: 0.8fr 0.8fr;
    gap: 20px;
}

.rgallery_small {
    width: 100%;
    min-height: 0;
    overflow: hidden;
    border-radius: 20px;
    background: #eee;
}

.rgallery_small img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform 0.7s ease;
}

.rgallery_small:hover img {
    transform: scale(1.07);
}


/* =========================================
   DELHI GALLERY HIDDEN
========================================= */

.rgallery_delhi {
    display: none;
}


/* =========================================
   TABLET
========================================= */

@media (max-width: 900px) {

    .rgallery_section {
        padding: 55px 20px;
    }

    .rgallery_content {
        grid-template-columns: 1.3fr 1fr;
        gap: 15px;
    }

    .rgallery_big {
        height: 500px;
    }

    .rgallery_side {
        gap: 15px;
    }

    .rgallery_tab {
        width: 180px;
        height: 55px;
    }
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 600px) {

    .rgallery_section {
        padding: 40px 15px;
    }

    .rgallery_tabs {
        gap: 8px;
        margin-bottom: 25px;
    }

    .rgallery_tab {
        width: 150px;
        height: 50px;
        font-size: 13px;
    }

    .rgallery_content {
        grid-template-columns: 1fr;
        gap: 12px;
    }

    .rgallery_big {
        height: 330px;
        border-radius: 15px;
    }

    .rgallery_side {
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 180px;
        gap: 12px;
    }

    .rgallery_small {
        border-radius: 15px;
    }
}


/* =========================================
   SMALL MOBILE
========================================= */

@media (max-width: 380px) {

    .rgallery_tab {
        width: 135px;
        height: 48px;
    }

    .rgallery_big {
        height: 280px;
    }

    .rgallery_side {
        grid-template-rows: 150px;
    }
}



.adnet-client-logo-section { width: 100%; padding: 90px 20px; background: #f7f7f7; overflow: hidden; } .adnet-client-logo-container { max-width: 1250px; margin: 0 auto; } /* Heading */ .adnet-client-logo-heading { max-width: 700px; margin: 0 auto 50px; text-align: center; } .adnet-client-logo-heading span { display: inline-block; margin-bottom: 12px; font-size: 13px; font-weight: 700; letter-spacing: 3px; color: #ba2747; } .adnet-client-logo-heading h2 { margin: 0 0 15px; font-size: 40px; line-height: 1.2; font-weight: 800; color: #151515; } .adnet-client-logo-heading p { margin: 0; font-size: 16px; line-height: 1.7; color: #777; }
/* Logo Grid */ .adnet-client-logo-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 20px; }
/* Logo Box */ .adnet-client-logo-box { height: auto; padding: 10px; background: #ffffff; border: 1px solid #e8e8e8; border-radius: 14px; display: flex; align-items: center; justify-content: center; position: relative; overflow: hidden; transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease; } /* Small top highlight */ .adnet-client-logo-box::before { content: ""; position: absolute; top: 0; left: 0; width: 0; height: 3px; background: #005c98; transition: width 0.35s ease; }
/* Logo */ .adnet-client-logo-box img { max-width: 85%; max-height: 75px; width: auto; height: auto; object-fit: contain; transition: filter 0.35s ease, opacity 0.35s ease, transform 0.35s ease; } /* Hover */ .adnet-client-logo-box:hover { transform: translateY(-7px); border-color: #005c98; box-shadow: 0 15px 35px rgba(0, 0, 0, 0.10); } .adnet-client-logo-box:hover::before { width: 100%; } .adnet-client-logo-box:hover img { filter: grayscale(0%); opacity: 1; transform: scale(1.06); } /* ================= TABLET ================= */ @media (max-width: 991px) { .adnet-client-logo-section { padding: 70px 20px; } .adnet-client-logo-heading h2 { font-size: 34px; } .adnet-client-logo-grid { grid-template-columns: repeat(3, 1fr); } } /* ================= MOBILE ================= */ @media (max-width: 767px) { .adnet-client-logo-section { padding: 55px 15px; } .adnet-client-logo-heading { margin-bottom: 30px; } .adnet-client-logo-heading span { font-size: 11px; letter-spacing: 2px; } .adnet-client-logo-heading h2 { font-size: 28px; } .adnet-client-logo-heading p { font-size: 14px; } .adnet-client-logo-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; } .adnet-client-logo-box { height: 115px; padding: 15px; border-radius: 10px; } .adnet-client-logo-box img { max-width: 90%; max-height: 55px; } } /* ================= SMALL MOBILE ================= */ @media (max-width: 400px) { .adnet-client-logo-grid { gap: 10px; } .adnet-client-logo-box { height: 100px; padding: 10px; } .adnet-client-logo-box img { max-height: 48px; } }


/* ================================ TWO VIDEO GRID ================================ */
.ssgr-video-grid {
  width: 100%;
  padding: 50px 20px;
  box-sizing: border-box;
}
.ssgr-video-grid-inner {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
} /* Video Box */
.ssgr-video-item {
  position: relative;
  display: block;
  width: 100%;
  height: 400px;
  overflow: hidden;
  border-radius: 18px;
  background: #111;
  text-decoration: none;
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
} /* Image */
.ssgr-video-item img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  transition: transform 0.6s ease;
} /* Dark Overlay */
.ssgr-video-dark {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.25);
  transition: background 0.35s ease;
} /* Hover */
.ssgr-video-item:hover img {
  transform: scale(1.07);
}
.ssgr-video-item:hover .ssgr-video-dark {
  background: rgba(0, 0, 0, 0.42);
} /* Play Button */
.ssgr-video-play {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 82px;
  height: 82px;
  transform: translate(-50%, -50%);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 10px 35px rgba(0, 0, 0, 0.3);
  transition: all 0.35s ease;
} /* Play Icon */
.ssgr-video-play span {
  width: 0;
  height: 0;
  margin-left: 6px;
  border-top: 12px solid transparent;
  border-bottom: 12px solid transparent;
  border-left: 19px solid #ba2747;
} /* Play Hover */
.ssgr-video-item:hover .ssgr-video-play {
  transform: translate(-50%, -50%) scale(1.12);
} /* ================================ MOBILE ================================ */
@media (max-width: 767px) {
  .ssgr-video-grid {
    padding: 50px 15px;
  }
  .ssgr-video-grid-inner {
    grid-template-columns: 1fr;
    gap: 20px;
  }
  .ssgr-video-item {
    height: 280px;
    border-radius: 14px;
  }
  .ssgr-video-play {
    width: 68px;
    height: 68px;
  }
  .ssgr-video-play span {
    border-top-width: 10px;
    border-bottom-width: 10px;
    border-left-width: 15px;
  }
}



/* ================================ SS GR - FAQ 2 GRID ================================ */
.ssgr-faq-grid-section {
  width: 100%;
  padding: 50px 20px;
  box-sizing: border-box;
}
.ssgr-faq-grid {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 25px;
  align-items: start;
}
.ssgr-faq-column {
  display: flex;
  flex-direction: column;
  gap: 14px;
} /* FAQ ITEM */
.ssgr-faq-item {
  background: #fff;
  border: 1px solid #e3e3e3;
  border-radius: 8px;
  overflow: hidden;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}
.ssgr-faq-item:hover {
  border-color: #005c98;
} /* QUESTION */
.ssgr-faq-question {
  width: 100%;
  margin: 0;
  padding: 35px 22px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 15px;
  border: none;
  outline: none;
  background: transparent;
  color: #222;
  font-size: 18px;
  font-weight: 600;
  text-align: left;
  cursor: pointer;
}
.ssgr-faq-question i {
  flex-shrink: 0;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #005c98;
  color: #fff;
  font-size: 21px;
  font-style: normal;
  font-weight: 400;
  transition: all 0.3s ease;
} /* ANSWER */
.ssgr-faq-answer {
  max-height: 0;
  overflow: hidden;
  padding: 0 22px;
  transition: max-height 0.4s ease, padding 0.4s ease;
}
.ssgr-faq-answer p {
  margin: 0;
  color: #222;
  font-size: 15px;
  line-height: 1.7;
} /* ACTIVE */
.ssgr-faq-item.active {
  border-color: #d97a22;
}
.ssgr-faq-item.active .ssgr-faq-answer {
  max-height: 250px;
  padding: 0 22px 20px;
}
.ssgr-faq-item.active .ssgr-faq-question i {
  background: #d97a22;
  color: #fff;
  transform: rotate(45deg);
} /* ================================ MOBILE ================================ */
@media (max-width: 767px) {
  .ssgr-faq-grid-section {
    padding: 30px 15px 50px 15px;
  }
  .ssgr-faq-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }
  .ssgr-faq-column {
    gap: 14px;
  }
  .ssgr-faq-question {
    padding: 30px 16px;
    font-size: 15px;
    line-height: 1.5em;
  }
  .ssgr-faq-question i {
    width: 29px;
    height: 29px;
    font-size: 19px;
  }
  .ssgr-faq-answer {
    padding-left: 16px;
    padding-right: 16px;
  }
  .ssgr-faq-item.active .ssgr-faq-answer {
    padding-left: 16px;
    padding-right: 16px;
    padding-bottom: 17px;
  }
}


.location-section {
    width: 100%;
    max-width: 1250px;
    margin: 0 auto;
    margin-top: 10px;
    margin-bottom: 20px;
}

.location-heading {
    margin: 0 0 0px;
    padding: 0 0px;
        text-align: left;

    color: #fff;
    font-size: 18px;
    font-weight: 600;
}

/* Horizontal scroll */
.location {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;

    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;

    white-space: nowrap;
    padding: 10px 0px;
    box-sizing: border-box;

    scrollbar-width: thin;
    scrollbar-color: #888 #eee;

    -webkit-overflow-scrolling: touch;
}

/* Chrome / Edge / Safari scrollbar */
.location::-webkit-scrollbar {
    height: 6px;
}

.location::-webkit-scrollbar-track {
    background: #eee;
}

.location::-webkit-scrollbar-thumb {
    background: #888;
    border-radius: 10px;
}

.location::-webkit-scrollbar-thumb:hover {
    background: #555;
}

.location .footer_text {
    flex: 0 0 auto;
    white-space: nowrap;
    font-size: 14px;

    color: #fff;
    text-decoration: none;
    padding-right: 5px;
}

.location .footer_text:hover {
    color: #f5c542;
}


.uxc_head {
    padding: 0 30px;
    margin: 0 0 30px 0;
    font-size: 25px;
}
.inpt_wrap {
display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}
.info_tag {
	margin-bottom: 20px;
}
.info_tag strong {
	border-bottom: 1px solid #8d8b8b;
    margin-top: 0 !important;
}



/* =========================================
   ENQUIRY FORM 2
   ========================================= */

#enquiryForm2 {
    width: 100%;
    max-width: 100%;
    margin: 0px auto;
    padding: 0px;
    box-sizing: border-box;

    background: #fff;
    border: none;
    border-radius: 0px;
    box-shadow: none;

    display: grid;
    grid-template-columns: 190px 190px 190px;
    gap: 10px 10px;
}


/* Hidden fields */
#enquiryForm2 > input[type="hidden"],
#enquiryForm2 .sf-hp {
    display: none;
}


/* Fields */
#enquiryForm2 .sf-field {
    margin: 0;
}

#enquiryForm2 .sf-field label {
    display: block;
    margin-bottom: 7px;

    font-size: 12px;
    font-weight: 600;
    color: #1f2937;
}


/* Inputs */
#enquiryForm2 .sf-field input,
#enquiryForm2 .sf-field textarea {
    width: 100%;
    box-sizing: border-box;

    padding: 12px 14px;

    border: 1px solid #d1d5db;
    border-radius: 7px;

    background: #f9fafb;
    color: #111827;

    font-family: inherit;
    font-size: 14px;

    outline: none;
    transition: 0.2s ease;
}

#enquiryForm2 .sf-field input {
    height: 40px;
}

#enquiryForm2 .sf-field textarea {
    height: 55px;
    resize: vertical;
}


/* Focus */
#enquiryForm2 .sf-field input:focus,
#enquiryForm2 .sf-field textarea:focus {
    background: #fff;
    border-color: #2563eb;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.10);
}


/* -----------------------------------------
   Requirement / Message - Full Width
   ----------------------------------------- */

#enquiryForm2 .sf-field:has(#requirement2) {
    grid-column: 1 / -1;
}

.sf-field select {
    width: 100%;
    box-sizing: border-box;

    padding: 7px 10px;

    border: 1px solid #d1d5db;
    border-radius: 7px;

    background: #f9fafb;
    color: #111827;

    font-family: inherit;
    font-size: 14px;

    outline: none;
    transition: 0.2s ease;
}


/* -----------------------------------------
   CAPTCHA - Full Width
   ----------------------------------------- */

#enquiryForm2 .sf-captcha-row {
    grid-column: 1 / -1;

    display: flex;
    align-items: center;
    gap: 12px;

    margin: 0;
    padding: 10px;

    background: #f8fafc;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
}

#enquiryForm2 .sf-captcha-row img {
    width: 170px;
    height: 60px;
    display: block;
    object-fit: contain;
}

#enquiryForm2 .sf-captcha-row button {
    padding: 9px 15px;

    border: 1px solid #d1d5db;
    border-radius: 6px;

    background: #fff;
    color: #374151;

    font-size: 13px;
    font-weight: 600;

    cursor: pointer;
}

#enquiryForm2 .sf-captcha-row button:hover {
    background: #f3f4f6;
}

.cap_fld_row {
display: flex;
    gap: 20px;
    width: 550px;
    justify-content: center;
    align-items: center;
}
.cap_fld_row input {
    width: 250px !important;
}

/* CAPTCHA input */
#enquiryForm2 .sf-field:has(#captcha2) {
    grid-column: 1 / -1;
}


/* -----------------------------------------
   Submit
   ----------------------------------------- */

#enquiryForm2 .sf-submit {
    grid-column: 1 / -1;

    width: 100%;
    height: 48px;

    margin-top: 2px;

    border: 0;
    border-radius: 7px;

    background: #c40e2c;
    color: #fff;

    font-family: inherit;
    font-size: 14px;
    font-weight: 700;

    cursor: pointer;
    transition: 0.2s ease;
}

#enquiryForm2 .sf-submit:hover {
    background: #1d4ed8;
}


/* -----------------------------------------
   Mobile
   ----------------------------------------- */

@media (max-width: 600px) {

    #enquiryForm2 {
        grid-template-columns: 1fr;
        padding: 20px;
    }

    #enquiryForm2 .sf-field:has(#requirement2),
    #enquiryForm2 .sf-captcha-row,
    #enquiryForm2 .sf-field:has(#captcha2),
    #enquiryForm2 .sf-submit {
        grid-column: 1;
    }
}
.sf-message {
    color: #000;
    margin-top: 10px;
}

@media only screen and (max-width: 767px) {


.header-style-five .header-cta-btn {
    display: none;
}
.ss_slider {
    height: 620px;
}
.testimonial-section::before {
    top: -260px;
    left: -100px;
}
.achievement-section {
    margin-top: 50px;
}
.review-box .star {
    font-size: 30px;
}
.review-box h3 {
    font-size: 55px;
}
.review-box {
    padding: 20px 20px 40px 20px;
}
.review-box {
    padding: 20px 20px 40px 20px;
    height: auto;
    width: 90%;
    margin: 0 auto;
}
.counter-box h3 {
    font-size: 35px;
}
.counter-box span {
    font-size: 12px;
}
.whyus-premium {
    padding: 50px 15px;
    margin-top: 30px;
}
.cross-image {
    width: 100%;
    height: auto;
}
.steps-process {
    padding: 30px 0;
    margin-top: 30px;
}
.project-slider-section {
    padding: 0px 15px 50px 15px;
}
.crv-section {
    padding: 30px 0 10px 0;
}
.crv-heading {
    margin-bottom: 20px;
}
.crv-avatar {
    width: 70px;
    height: 70px;
    font-size: 35px;
}
.hero-content {
    width: 100%;
    padding: 25px 0px 0 0px;
        overflow: hidden;
}
.hero-content .h_1 {
    font-size: 40px;
    line-height: 1.2;
}
.red-section {
    height: 100%;
}
.quote-box {
    margin-top: 0;
    margin-left: 0px;
    top: 0;
    width: 100%;
    background: #fff;
    padding: 45px 15px;
    flex-direction: column;
}
.quote-left h3 {
    font-size: 30px;
}
.quote-left {
    width: 100%;
    margin-bottom: 30px;
}
.quote-right form {
    grid-template-columns: auto;
}
.hero-bg {
    padding: 40px 0 80px 0;
    height: 100%;
}
.offers {
    margin: 0 0 0 0px;
    top: 0;
    padding: 30px 0;
}
.adnews-section {
    padding: 60px 0;
}
.adnews-content-box {
    padding: 20px 15px;
}
.adnews-sidebar-title {
    margin-bottom: 15px;
}
.adnews-post {
    padding: 20px 0;
}
.mngd {
    padding: 0 0px;
}
.mngd {
    text-align: center;
}
.mngd a {
    float: none;
            font-size: 14px;
}
body {
    overflow-x: hidden;
}
.header-main-menu {
    gap: 10px;
}
.quote-right {
    width: 250px;
    margin: 0 auto;
}
.container {
    max-width: 100%;
}
.dsktp {
    display: none !important;
}
.mbl {
    display: block !important;
}
.ss_tag {
    font-size: 13px;
    margin-bottom: 15px;
}

.ss_content a {
    padding: 10px 10px;
    font-size: 12px;
}
.swiper {
    padding: 50px 0 0 0 !important;
}
.testimonial-pagination {
    margin-top: 10px;
}
.testimonial-pagination {
    text-align: center;
}
.stats-box {
    width: 90%;
    margin-top: -40px;
    padding: 0;
    justify-content: center;
    margin: 0 auto;
    margin-top: -40px;
}
.brand-logo {
    width: 60px;
    height: 42px;
    font-size: 28px;
}
.mtop {
    margin-bottom: 0;
}
.description_container {
    padding: 30px 15px;
    margin: 0 15px;
}
.description_container h2 {
    font-size: 28px;
    margin-bottom: 15px;
    width: 100%;
}
.uxc_head {
    padding: 0 0;
    margin: 10px 0 20px 0;
}
.lfc-quick-item strong {
    font-size: 15px;
}
.lfc-quick-item {
    align-items: flex-start;
}
.lfc-map-wrapper iframe {
    width: 100%;
}
.lux_logo_section {
    z-index: 1;
}
.location-section {
    width: 87%;
    max-width: 100%;
}
}