body,html{
    width: 100%;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    font-family: "Roboto", sans-serif !important;
}

.logo{
    width: 42%;
}

h2{
    font-size: 46px !important;
    font-weight: 600;
    color: #2a2a2a;
}

h3{
    font-size: 23px !important;
    color: #2a2a2a;
}

.header{
    padding: 20px 10px;
    background-image: url('../images/bg-img.jpg');
    background-size:auto;
    background-position: center;
}

.header .row .col-lg-6{
    place-content: center;
}

.header .row .call-btn{
    text-align: end;
}

.header .row .call-btn a{
    background: #09a0e0;
    color: #fff;
    padding: 10px 20px;
    border-radius: 50px;
    font-size: 18px;
    text-decoration: none;
    font-weight: 500;
    transition: 0.5s all;
}

.header .row .call-btn a:hover{
    background: #24559d !important;
}

.group-photo{
    width: 100%;
    margin: 40px auto 30px auto;
    display: block;
}

.products-img{
    width: 90%;
    margin-bottom: 50px;
}

.header h1{
    font-size: 59px;
    margin-top: 16px;
    font-weight: 700;
    color: #2a2a2a;
}

.header h1 span{
    color: #10a0dd;
    font-size: 36px;
    font-weight: 500;
    font-style: italic;
    display: block;
    line-height: 73px;
}

.header-form{
    background: #fff;
    width: 90%;
    margin: 46px 0 20px 60px;
    padding: 35px;
    border-radius: 20px;
    box-shadow: 10px 10px 12px 1px #c9c9c926;
}

.form-ctn{
    font-size: 30px;
    font-weight: 600;
    margin-bottom: 0px;
    color: #2a2a2a;
}

.form-ctn2{
    color: #6c6c6c;
    font-size: 18px;
    margin-bottom: 28px;
}

.input-txt{
    display: block;
    width: 100%;
    margin: 20px 0;
    height: 40px;
    border: 0px;
    border-bottom: 1px solid #dbdbdb;
}

.msg-txt{
    display: block;
    width: 100%;
    height: 100px;
    margin: 20px 0;
    border: 0px;
    border-bottom: 1px solid #dbdbdb;
}

input:focus, textarea:focus {
  outline: none;
}

.sub-btn{
    margin: 15px 0 0 0;
    width: 100%;
    background: #24559d;
    padding: 10px;
    font-size: 21px;
    border: 0px;
    color: #fff;
    border-radius: 10px;
    transition: 0.5s all;
}

.sub-btn:hover{
    background: #10a0dd !important;
}

.establish{
    margin: 40px 0;
}

.establish .col-lg-4{
    place-content: center;
}

.establish .col-lg-8{
    place-content: center;
}

.fct-number{
    font-size: 85px;
    font-weight: 600;
    color: #15a0da;
    margin-bottom: 0px;
}

.fct-title{
    margin-bottom: -5px;
    font-size: 22px;
}

.fct-dsc{
    font-size: 35px;
    font-weight: 600;
    margin-bottom: 0px;
}

.pro-img{
    width: 90%;
    margin: 0px auto 10px auto;
    display: block;
}

.product-box{
    border: 1px solid #eee;
    padding: 30px;
    border-radius: 20px;
    margin: 20px 10px;
}

.product-box p{
    color: #6c6c6c;
    text-align: justify;
}

.product-box .prod-btn{
    margin-top: 15px;
    width: 100%;
    background: #18a0d7;
    color: #fff;
    border: 0px;
    padding: 12px;
    font-size: 20px;
    border-radius: 10px;
    transition: .5s all;
}

.btn-close:hover{
    color: #fff;
}

.product-box .prod-btn:hover{
    background: #24559d !important;
}

.about-us{
    background: linear-gradient(0deg, rgba(232, 250, 255, 1) 0%, rgba(255, 255, 255, 1) 100%);
}

.about-us p{
    color: #6c6c6c;
    text-align: justify;
    margin-right: 30px;
}

.about-img{
    width: 100%;
    border-radius: 20px;
}

.achievements{
    background-color: #10a0dd;
}

.achievements .col-lg-7, .achievements .col-lg-8{
    place-content: center;
}

.achi-number{
    font-size: 75px;
    font-weight: 600;
    color: #ffffff;
    margin-bottom: 0px;
}

.achi-title{
    margin-bottom: -5px;
    font-size: 20px;
    color: #ffffff;
}

.achi-dsc{
    font-size: 33px;
    font-weight: 600;
    margin-bottom: 0px;
    color: #ffffff;
}

.infra-item {
  position: relative;
  border-radius: 20px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease;
  margin: 10px 0px;
}

.caption {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background: #ffffffc7;;
    margin: 10px;
    border-radius: 10px;
    padding: 10px;
    color: #2a2a2a;
  font-weight: 500;
  z-index: 1;
}

.infra-item img{
    width: 100%;
    border-radius: 20px;
}

.reviews{
    background: linear-gradient(180deg,rgba(255, 255, 255, 1) 0%, rgba(232, 250, 255, 1) 51%, rgba(219, 236, 255, 1) 100%);
}

.review{
    border: 1px solid #d7d7d7;
    padding: 20px;
    border-radius: 20px;
    margin: 10px 0;
}

.review p{
    color: #6c6c6c;
}

.rating i{
    color: #ffa726;
}

.clients{
    background: linear-gradient(0deg,rgba(255, 255, 255, 1) 0%, rgba(232, 250, 255, 1) 51%, rgba(219, 236, 255, 1) 100%);
}

.client-logo{
    width: 100%;
    margin: 10px 0;
    border-radius: 20px;
}

.app-item {
  position: relative;
  border-radius: 20px;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
  transition: transform 0.3s ease;
  margin: 10px 0px;
}

.app-item img{
    width: 100%;
    border-radius: 20px;
}

.presence .domestic{
    background-color: #e8f8ff;
    padding: 70px;
}

.presence .international{
    background-color: #10a0dd;
    color: #fff;
    padding: 70px;
}

.presence .map{
    width: 90%;
}

.flags{
    margin: 10px 0;
}

.presence .international .flag-img{
    width: 100%;
    border-radius: 10px;
}

.flag-name{
    text-align: center;
    margin: 5px;
}

.footer iframe{
    width: 100%;
}

.footer-form-bg{
    background-color: #27569a;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
}

.footer-form{
    background-color: #27569a;
    padding: 32px 32px 50px 32px;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
}

.footer-form .form-ctn, .footer-form .form-ctn2{
    color: #fff;
}

.footer-form .input-txt{
    display: block;
    width: 100%;
    margin: 20px 0;
    height: 40px;
    border: 0px;
    border-bottom: 1px solid #dbdbdb7e;
    background-color: transparent;
    color: #fff;
}

.footer-form .msg-txt{
    display: block;
    width: 100%;
    height: 100px;
    margin: 20px 0;
    border: 0px;
    border-bottom: 1px solid #dbdbdb7e;
    background-color: transparent;
    color: #fff;
}

.footer-form .sub-btn{
    background-color: #fff !important;
    color: #2a2a2a;
}

::placeholder {
  color: rgb(199, 199, 199);
  opacity: 1; /* Firefox */
}

.address, .call, .email{
    display: grid;
    grid-template-columns: 1fr 8fr;
  gap: 3px;
  margin: 20px 0 40px 60px;
}

.icon{
    width: 50px;
    height: 50px;
    border: 2px solid #2a2a2a;
    place-content: center;
    text-align: center;
    border-radius: 50px;
}

.icon i{
    color: #2a2a2a;
    font-size: 27px;
}

.social-section{
    display: flex;
    margin: 20px 0 40px 60px;
}

.social-icon{
    width: 50px;
    height: 50px;
    background: #10a0dd;
    border: 2px solid #10a0dd;
    place-content: center;
    text-align: center;
    border-radius: 50px;
    margin: 0px 10px 0 0;
    cursor: pointer;
    transition: .5s all;
}

.social-icon:hover{
    background: #fff !important;
}

.social-icon:hover i{
    color: #10a0dd !important;
}

.social-icon i{
    color: #fff;
    font-size: 27px;
    margin-top: 3px;
}

.footer .details p{
    color: #6c6c6c;
    margin-bottom: 0px;
}

.footer h4{
    font-size: 23px;
}

.footer-details{
    place-content: center;
}


.wh-ap-btn {
	outline: none;
	width: 60px;
	height: 60px;
	border: 0;
	/* background-color: #2ecc71; */
	padding: 0;
	border-radius: 100%;
	/* box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); */
	cursor: pointer;
	transition: opacity 0.3s, background 0.3s, box-shadow 0.3s;
    color: #fff;
    font-size: 37px !important;
    margin: 10px 0px 0px 0px;
}

/* button.wh-ap-btn::after {
	content: "";
	background-image: url("//i.imgur.com/cAS6qqn.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 60%;
	width: 100%;
	height: 100%;
	display: block;
	opacity: 1;
} */

.wh-ap-btn:hover {
	opacity: 1;
	/* background-color: #20bf6b;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23); */
}

.wh-api {
	position: fixed;
	bottom: 0;
	right: 0;
}

.wh-fixed {
	margin-right: 15px;
	margin-bottom: 15px;
}

.wh-fixed > a {
	display: block;
	text-decoration: none;
}

/* .wh-ap-btn::before {
	content: "Chat with me";
	display: block;
	position: absolute;
	margin-left: -130px;
	margin-top: 16px;
	height: 25px;
	background: #49654e;
	color: #fff;
	font-weight: 400;
	font-size: 15px;
	border-radius: 3px;
	width: 0;
	opacity: 0;
	padding: 0;
	transition: opacity 0.4s, width 0.4s, padding 0.5s;
	padding-top: 7px;
	border-radius: 30px;
	box-shadow: 0 1px 15px rgba(32, 33, 36, 0.28);
}

.wh-fixed > a:hover .wh-ap-btn::before {
	opacity: 1;
	width: auto;
	padding-top: 7px;
	padding-left: 10px;
	padding-right: 10px;
	width: 100px;
} */

/* animacion pulse */

.whatsapp-pulse {
	width: 60px;
	height: 60px;
	right: 10px;
	bottom: 80px;
	background: #10b418;
	position: fixed;
	text-align: center;
	color: #ffffff;
	cursor: pointer;
	border-radius: 50%;
	z-index: 99;
	display: inline-block;
	line-height: 65px;
}

.whatsapp-pulse:before {
	position: absolute;
	content: " ";
	z-index: -1;
	bottom: -15px;
	right: -15px;
	background-color: #10b418;
	width: 90px;
	height: 90px;
	border-radius: 100%;
	animation-fill-mode: both;
	-webkit-animation-fill-mode: both;
	opacity: 0.6;
	-webkit-animation: pulse 1s ease-out;
	animation: pulse 1.8s ease-out;
	-webkit-animation-iteration-count: infinite;
	animation-iteration-count: infinite;
}

@-webkit-keyframes pulse {
	0% {
		-webkit-transform: scale(0);
		opacity: 0;
	}
	25% {
		-webkit-transform: scale(0.3);
		opacity: 1;
	}
	50% {
		-webkit-transform: scale(0.6);
		opacity: 0.6;
	}
	75% {
		-webkit-transform: scale(0.9);
		opacity: 0.3;
	}
	100% {
		-webkit-transform: scale(1);
		opacity: 0;
	}
}

@keyframes pulse {
	0% {
		transform: scale(0);
		opacity: 0;
	}
	25% {
		transform: scale(0.3);
		opacity: 1;
	}
	50% {
		transform: scale(0.6);
		opacity: 0.6;
	}
	75% {
		transform: scale(0.9);
		opacity: 0.3;
	}
	100% {
		transform: scale(1);
		opacity: 0;
	}
}


@media (max-width:1200px){
    .header h1 span{
        line-height: normal;
        margin-top: 15px;
    }
    .fct-number{
        font-size: 65px !important;
    }
    .fct-dsc{
        font-size: 30px !important;
    }
    .fct-title{
        font-size: 19px !important;
    }
    .address, .call, .email{
        gap: 10px !important;
    }
    .achi-number{
        font-size: 55px !important;
    }
}

@media (max-width:991px){
    .logo{
        width: 60% !important;
    }
    .empty-clm{
        display: none;
    }
    .about-img{
        margin-top: 20px;
    }
    .achi-number{
        font-size: 45px !important;
    }
    .fct-number, .fct-title, .fct-dsc{
        text-align: center !important;
    }
}

@media (max-width:768px){
    .logo{
        margin: 10px 0 40px 0;
    }
    .header .row .col-lg-6{
        text-align: center !important;
    }
    .header .row .call-btn{
        margin: 10px 0 !important;
    }
    .fct-number, .fct-dsc, .fct-title{
        text-align: center;
    }
    .product-range{
        margin-top: 30px !important;
    }
    .header-form{
        margin: 40px auto !important;
    }
    .address, .call, .email{
        gap: 20px !important;
    }
    .footer-details{
        margin: 30px 0 30px 0;
        padding-top: 30px;
    }
    .footer-form{
        border-radius: 20px !important;
    }
    .achi-number, .achi-title, .achi-dsc{
        text-align: center;
    }
    .achievements .col-md-4{
        margin: 20px 0;
    }
    .achi-dsc{
        font-size: 27px !important;
    }
    .footer-form-bg{
        background-color: transparent !important;
        border-top-left-radius: 0px !important;
        border-top-right-radius: 0px !important;
    }
    .address, .call, .email{
        margin: 20px 0 40px 0px !important;
    }
    .form-ctn, .form-ctn2{
        text-align: left !important;
    }
}

.thank-ctn{
    padding: 10rem 0px;
}

.thank-ctn h1{
    color: #2a2a2a;
}

.thank-ctn i{
    font-size: 7rem;
    color: #00b42c;
}

.thank-ctn p{
    color: #6c6c6c;
    font-size: 21px;
    margin-bottom: 40px;
}

.thank-ctn .back-btn{
    background: #24559d;
    padding: 10px 20px;
    border-radius: 50px;
    color: #fff;
    text-decoration: none;
    font-size: 20px;
    transition: .5s all;
}

.thank-ctn .back-btn:hover{
    background-color: #10a0dd !important;
}

.thank-ctn .back-btn i{
    font-size: 20px;
    color: #fff;
    margin-right: 10px;
}

#back-to-top-button {
  display: inline-block;
  background-color: #fff;
  border: 2px solid #10a0dd;
  width: 50px;
  height: 50px;
  text-align: center;
  border-radius: 50px;
  position: fixed;
  bottom: 30px;
  right: 30px;
  transition: background-color .3s, 
    opacity .5s, visibility .5s;
  opacity: 0;
  visibility: hidden;
  z-index: 1000;
  text-decoration: none;
  cursor: pointer;
}
#back-to-top-button::after {
  content: "\f077";
  font-family: FontAwesome;
  font-weight: normal;
  font-style: normal;
  font-size: 1.2em;
  line-height: 45px;
  color: #10a0dd;
}
/* #back-to-top-button:hover {
  cursor: pointer;
  background-color: #10a0dd;
}

#back-to-top-button:hover  ::after{
    color: #fff !important;
} */

#back-to-top-button:active {
  background-color: #555;
}
#back-to-top-button.show {
  opacity: 1;
  visibility: visible;
}