.navbar{
   
    height: 85px;
}
.navbar .navbar-nav .nav-link {
    color: #000;
}
.navbar .navbar-right .button {
    position: relative;
    display: flex
;
    align-items: center;
    z-index: 5;
    border-radius: 5px;
    transition: border-color 300ms ease, transform 300ms ease, background-color 300ms ease, color 300ms ease;
    transform-style: preserve-3d;
    font-family: "Urbanist", sans-serif;
    font-size: 15px;
    font-weight: 400;
    color: #fff;
    background-color: #297cbe;
    padding: 4px 10px;
    border: 1px solid #297cbe;
}

[data-overlay-dark] h1 {
    color: #fff;
    font-family: "Urbanist", sans-serif;
    font-size: 32px;
}
[data-overlay-dark] p {
    color: #fff;
    font-size: 18px;
}
.section-title {
    font-weight: bold;
    font-family: "Urbanist", sans-serif;
    font-size: 30px;
    line-height: 40px;
    color: #141414;
    position: relative;
    margin-bottom: 15px;
    text-transform: uppercase;
}
.button-2 {
    display: inline-block;
    height: auto;
    padding: 5px 15px;
    border: 1px solid #297cbe;
    border-radius: 5px;
    background-color: #297cbe;
    color: #fff;
    text-align: center;
    font-size: 17px;
    font-weight: 400;
    line-height: 30px;
    transition: border-color 300ms ease, transform 300ms ease, background-color 300ms ease, color 300ms ease;
    transform-style: preserve-3d;
}
.button-3 {
    display: inline-block;
    height: auto;
    padding: 5px 15px;
    border: 1px solid #297cbe;
    border-radius: 5px;
    background-color: #297cbe;
    color: #fff;
    text-align: center;
    font-size: 17px;
    font-weight: 400;
    line-height: 30px;
    transition: border-color 300ms ease, transform 300ms ease, background-color 300ms ease, color 300ms ease;
    transform-style: preserve-3d;
}
.text-justify{
    text-align: justify;
}
.section-padding {
    padding: 50px 0;
}
.footer .top {
    padding: 40px 0 20px 0;
    border: none;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}
.footer .bottom {
    position: relative;
    display: block;
    padding: 5px 0;
}
.ft_menu, .ft_contact{
    padding: 0px;
}
.ft_menu li{
    margin: 6px 0;
    list-style: none;
}
.ft_contact li {
    margin: 6px 0;
    list-style: none;
    display: flex;
}

.ft_contact li.address::before {
    content: "📍 ";
    margin-right: 6px;
}
.ft_contact li.phone::before {
    content: "📞 ";
    margin-right: 6px;
}
.ft_contact li.email::before {
    content: "✉️ ";
    margin-right: 6px;
}
.ft_contact i {
    margin-right: 13px; 
    margin-top: 8px;
}
.footer {
    position: relative;
    background-color: #297cbe;
}
.footer .top .item p, .footer .top .item p a {
    color: rgba(255, 255, 255, 0.6);
}
.ft_menu li a, .ft_contact li a, .ft_contact li, .ft_contact li i{
    color: rgba(255, 255, 255, 0.6);
}
.amenities .item .cont .text p{
    color: #000;
}
.amenities .item:hover .cont h5, .amenities .item:hover .cont .icon i, .amenities .item:hover .cont p{
    color: #fff;
}
.industries .item .cont .text h5{
    font-size: 17px;
    margin-bottom: 5px;
}
.industries .item{
    background-color: rgb(248 249 250);
    padding: 5px;
}
.industries .item.hover-box *{
    margin-top: 5px;
}
.industries .item .cont .icon i {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
;
    margin-bottom: 15px;
    font-size: 40px;
    color: #297cbe;
    justify-content: center !important;
}

.industries .item .cont.up {
    will-change: transform;
    -webkit-transform: translateY(30px);
    transform: translateY(0px);
}
.industries .item .cont {
    padding-left: 5% !important;
    padding-bottom: 5% !important;
    padding-right: 5% !important;
    padding-top: 5% !important;
}

.stats .stat{
    display:flex; 
    align-items:center; 
    gap:18px; 
    justify-content:center;
}

.stats .icon-disk i{
    font-size:28px; 
    color:#fff;
}
.stats .value-wrap{ 
    text-align:left; 
}
.stats .value{
    color:#297cbe;
    font-weight:800;
    font-size: clamp(34px, 4vw, 56px);
    line-height:1;
    letter-spacing:.5px;
}
.stats .label{
    text-align:center; 
    margin-top:6px; color:#000;
    font-size:16px;
}
.stats .col-md-4{ 
    display:flex; 
    justify-content:center; 
}
.about img {
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 50% 40% 60% 50% / 55% 45% 55% 45%;
    animation: float-shape 6s ease-in-out infinite;
}
@keyframes float-shape {
    0%,100% {
        border-radius: 50% 40% 60% 50% / 55% 45% 55% 45%;
        transform: translateY(0px);
    }
    50% {
        border-radius: 55% 45% 50% 60% / 48% 58% 42% 52%;
        transform: translateY(-10px);
    }
}
:root{
    --brand:#297cbe;       
    --halo: rgba(19,96,198,.35);
}
.icon-disk{
    width:90px;height:90px;
    background:var(--brand);
    color:#fff;
    display:grid;place-items:center;
    position:relative;
    border-radius:48% 52% 50% 50% / 56% 44% 56% 44%;
    animation:blob 9s ease-in-out infinite;
}
.icon-disk i{
    font-size:28px;color:#fff;
}
.icon-disk::after{
    content:"";position:absolute;inset:0;border-radius:inherit;
    box-shadow:0 0 0 0 var(--halo);
    animation:pulse 2.8s ease-out infinite;
}

@keyframes blob{
    0%   {border-radius:46% 54% 50% 50% / 58% 42% 58% 42%;}
    33%  {border-radius:55% 45% 50% 50% / 45% 55% 45% 55%;}
    66%  {border-radius:50% 50% 47% 53% / 48% 52% 46% 54%;}
    100% {border-radius:46% 54% 50% 50% / 58% 42% 58% 42%;}
}
@keyframes pulse{
    0%   {box-shadow:0 0 0 0 var(--halo);}
    70%  {box-shadow:0 0 0 18px rgba(19,96,198,0);}
    100% {box-shadow:0 0 0 0 rgba(19,96,198,0);}
}

/* Respect users who prefer reduced motion */
@media (prefers-reduced-motion: reduce){
    .icon-disk,.icon-disk::after{animation:none}
}
.banner-header .subtitle {
    font-weight: 400;
    margin-bottom: 10px;
    color: #ffffff;
    font-size: 20px;
    display: flex;
    display: inline-flex;
    align-items: center;
    text-transform: uppercase;
    letter-spacing: 3px;
}
.banner-header {
    position: relative;
    background-position: center;
    background-size: cover;
    padding-top: 100px !important;
    padding-bottom: 100px !important;
}

.contact .item {
    height: auto;
    transition: all 0.3s ease; 
    background:rgb(248 249 250);
    border-radius: 5px;
}

.contact .item:hover {
    background: #297cbe;
}
.contact .item:hover .contents .text,
.contact .item:hover .contents span {
    color: #fff;
}
@media screen and (max-width: 991px) {
    .navbar button {
        margin-right: 15px;
        outline: none !important;
        background: #297cbe;
        margin-top: 0px;
        line-height: 30px;
        border: none;
    }
    .navbar button:active, .navbar button:focus, .navbar button:hover {
        background: #000000;
        outline: none;
        color: #fff !important;
    }
   
}
.preloader .centered .cont .loader-line-mask .loader-line {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    box-shadow: inset 0 0 0 1px #2196F3;
}
.floating-contact {
    position: fixed;
    right: 20px;
    bottom: 100px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    z-index: 9999;
}

.floating-contact a {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 22px;
    text-decoration: none;
    box-shadow: 0 4px 8px rgba(0,0,0,0.3);
    transition: transform 0.3s ease, background 0.3s ease;
}

.floating-contact a:hover {
    transform: scale(1.1);
}

/* Call Button */
.call-btn {
    background: #297cbe; /* blue */
}
/* WhatsApp Button */
.whatsapp-btn {
    background: #25D366; /* WhatsApp green */
}
.progress-wrap::after{
    color: #000000;
}
.smart-modal {
    border-radius: 15px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.25);
    overflow: hidden;
    animation: fadeInUp 0.4s ease;
}
.btn-close-custom {
    background: #f1f1f1;
    border: none;
    color: #333;
    font-size: 20px;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s ease;
    cursor: pointer;
}

.btn-close-custom:hover {
    background: #297cbe;
    color: #fff;
    transform: rotate(90deg);
}
input[type="password"], input[type="email"], input[type="number"], input[type="text"], input[type="file"], textarea {
    border: 1px solid #2196f33b;
}
