.google-map-container {
    width: 100%;
    overflow: hidden;
    border-radius: 8px;
}

.google-map-container iframe {
    display: block;
    width: 100%;
    height: 450px;
    border: 0;
}

@media (max-width: 768px) {
    .google-map-container iframe {
        height: 320px;
    }
}
/*
body,
button,
input,
textarea,
select,
.navbar,
.rd-navbar,
.rd-navbar-nav a,
h1,
h2,
h3,
h4,
h5,
h6,
p,
span,
li{
    font-family:'Saira', sans-serif !important;
}

@font-face {
    font-family: 'Saira';
    src: url('../fonts/Saira-VariableFont_wdth.woff2') format('woff2'),
         url('../fonts/Saira-VariableFont_wdth,wght.ttf') format('truetype');
    font-weight: normal;
    font-style: normal;
}*/
body{
    font-family:'Saira', sans-serif !important;
}
*/


.preloader{
    position:fixed;
    inset:0;
    background:#fff;
    z-index:99999;
}

.preloader-body{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    gap:0;
}

.loader-logo img{
    width: 100px;      /* Desktop */
    height: auto;
    display: block;
    margin: 0 auto;
	margin-bottom: 28px;   /* Increase space below logo */
}

.loader-process{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;                 /* Controls total width */
    margin:18px 0;
}

.loader-stage{
    width:8px;
    height:8px;
    border-radius:50%;
    background:#d6d6d6;
    position:relative;
    flex:0 0 auto;
}

.loader-stage.active{
    background:#00AEEF;
    box-shadow:0 0 8px rgba(0,174,239,.5);
}

/* Remove old spacing */
.loader-stage:not(:last-child){
    margin-right:0;
}

/* Remove the pseudo-element line completely */
.loader-stage:not(:last-child)::after{
    display:none;
}
.loader-text{
    margin-top:16px;
    font-size:12px;
    font-weight:500;
    letter-spacing:1px;
    color:#2d5f38;
    text-align:center;
}

/* Mobile */
@media (max-width:768px){

    .loader-logo{
        margin-bottom:8px;
    }

    .loader-logo img{
        width:80px;
    }

    .loader-process{
        transform:scale(0.75);
        transform-origin:center;
        margin:12px 0;
    }

    .loader-stage{
        width:8px;
        height:8px;
    }

    .loader-line{
        width:6px;
        margin:0 2px;
        height:2px;
    }

    .loader-text{
        margin-top:12px;
        font-size:12px;
        letter-spacing:.5px;
    }

}
/* horizontal line 

.ro-process::before{
    content:"";
    position:absolute;
    left:7%;
    right:7%;
    top:90px;
    height:3px;
    background:#00a4d8;
}
*/

.ro-process{
    display:grid;
    grid-template-columns:repeat(7,1fr);
    column-gap:20px;
    position:relative;
    max-width:1400px;
    margin:auto;
}
.ro-item{
    position:relative;
    text-align:center;
}

.ro-item.top{
    margin-top:0;
}

.ro-item.bottom{
    margin-top:140px;
}

.ro-item img{
    width:105px;
    display:block;
    margin:auto;
    border-radius:50%;
}

.ro-item span{
    position:absolute;
    top:-12px;
    right:30%;
    width:30px;
    height:30px;
    border-radius:50%;
    background:#0d6efd;
    color:#fff;
    line-height:30px;
    font-weight:bold;
}

.ro-item h5{
    margin-top:20px;
    font-size:18px;
}

.ro-item p{
    font-size:14px;
}

/* tablet */

@media(max-width:992px){
.ro-process{
grid-template-columns:repeat(2,1fr);
row-gap:60px;
}

.ro-process::before{
display:none;
}
.ro-item.bottom{
margin-top:0;
}

}

/* mobile */

@media(max-width:576px){

.ro-process{

grid-template-columns:1fr;

}

}


.gallery-item {
    width: 280px !important;
    margin: 0 auto;
}

.gallery-item img {
    width: 100% !important;
    height: auto;
    border: 1px solid #dcdcdc;
    border-radius: 4px;      /* Optional: slightly rounded corners */
    box-sizing: border-box;
}

@media (max-width:767px){

    .gallery-column{
        display:flex;
        justify-content:center;
        margin-bottom:30px;
    }

    .gallery-item{
        max-width:280px;
        width:100%;
    }
	.gallery-caption{
        padding:12px 15px;
    }
}
@media (max-width: 767px) {

    .mobile-spacing{
        padding-top:90px !important;
        clear:both;
    }

}
@media (max-width: 767px) {

.social-section{
    padding-top:40px !important;
}

}

/* ======================================
   Social Media Icons
====================================== */

.social-section {
    padding-bottom: 60px !important;
}

.group.social-icons {
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    flex-wrap:wrap;
    gap:15px;
}

.social-icons .icon{
    width:55px;
    height:55px;
    line-height:55px;
    border-radius:50%;
    display:inline-flex;
    justify-content:center;
    align-items:center;
    margin:8px;
    font-size:30px;
    color:#ffffff !important;
    text-decoration:none;
    transition:all .3s ease;
}

/* WhatsApp */
.whatsapp{
    background:#25D366 ;
}

/* Facebook */
.facebook{
    background:#1877F2;
}

/* Twitter/X */
.twitter{
    background:#000000;
}

/* Instagram */
.instagram{
    background:linear-gradient(45deg,
        #f09433,
        #e6683c,
        #dc2743,
        #cc2366,
        #bc1888);
}

/* LinkedIn */
.linkedin{
    background:#0A66C2;
}

/* Email */
.email{
    background:#EA4335;
}

/* Hover Effect */
.social-icons .icon:hover{
    transform:translateY(-4px);
    box-shadow:0 8px 18px rgba(0,0,0,.25);
    color:#fff !important;
}

@media (max-width: 767.98px) {
    .social-icons .icon {
        width: 38px;
        height: 38px;
        line-height: 38px;
        font-size: 20px;
        margin: 4px;
    }
}

@media (max-width: 991px) {
    .google-map-container,
    .rd-google-map__model{
        position: relative !important;
        display: block !important;
        margin-bottom: 70px !important;
    }

    .google-map-container iframe{
        display: block;
        width: 100%;
        height: 280px;
    }

}