body{ padding: 0; margin: 0; font-size: 14px;}
html, html body, body #wrapper {overflow-x: hidden;}
body .site{ padding: 0; margin: 0; box-shadow: none; max-width: none; width: 100%; overflow: hidden; }
footer#colophon{ max-width: none; margin: 0; padding: 0; }

/* Defolt CSS
------------------------------- */

span {
  font-weight: 400;
}
a{color:#828282; }
a:hover{color: #fe0000 !important;transition: all 3.0s ease 0s;}
a.elementor-button{color: #fff !important;font-size: 14px !important; font-weight: 600 !important;text-transform: uppercase; text-decoration: none;}
a.elementor-button:hover{color: #fff !important;transition: all 3.0s ease 0s;}
a.elementor-button span{font-weight: 600;}
p{
  font-family: "Montserrat", Sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: var( --e-global-color-text );
}
.aut span {color: #fe0000 !important;}
/*============================================*/
 #mainnav ul li a.hfe-menu-item{border-right: 1px dashed var(--e-global-color-secondary);}


.calltoaction{
    background:linear-gradient(135deg,#0d6efd,#198754);
    color:#fff;
    text-align:center;
    padding:60px 20px;
}
.calltoaction h1{
    font-size:40px;
    margin-bottom:10px;
}
.calltoaction p{
    font-size:18px;
    color: #fff;
}

.services{
    display:flex;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:20px;
}
.card{
    background:#f8f9fa;
    padding:25px;
    border-radius:10px;
    text-align:center;
    box-shadow:0 2px 8px rgba(0,0,0,.1);
}
.services .card a{color:#828282; }
.services .card a:hover{color: #fe0000 !important;transition: all 3.0s ease 0s;}
.services .card p {
    font-family: "Montserrat", Sans-serif;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    color: var( --e-global-color-text );
    min-height: 63px;
}
.card h3 {
    margin-bottom: 10px;
    font-family: 'Oswald';
    min-height: 64px;
}

.services .icon {
    font-size: 54px;
}

input.wpcf7-form-control.wpcf7-submit.has-spinner.form-control {
    background: #0d6efd;
    color: #fff;
    text-transform: uppercase;
    width: 36%;
    min-height: 54px;
}

/* Floating Buttons */
.call-btn,
.whatsapp-btn{
    position:fixed;
    right:20px;
    width:60px;
    height:60px;
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
    text-decoration:none;
    color:#fff;
    font-size:28px;
    z-index:999;
}
.call-btn{
    bottom:90px;
    background:#0d6efd;
}
.whatsapp-btn{
    bottom:20px;
    background:#25D366;
}
.btn{
    display:inline-block;
    margin:10px;
    padding:14px 28px;
    background:#fff;
    color:#0d6efd;
    text-decoration:none;
    border-radius:0px;
    font-weight:bold;
}
.btn:hover{
    opacity:.7;
}

 /* Cursor */
.cursor{
    position: relative;
    width: 100%;
    margin: 0px auto;
    border-right: 2px solid var( --e-global-color-accent );
    font-size: 18px;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    transform: translateY(-50%); 
    font-weight: 600; 
    color: #fe0000;
    font-family: "Montserrat", Sans-serif;  
}

/* Animation */
.typewriter-animation {
  animation: 
    typewriter 5s steps(50) 1s 1 normal both,
}
@keyframes typewriter {
  from { width: 0; }
  to { width: 100%; }
}
@keyframes blinkingCursor{
  from { border-right-color: rgba(255,255,255,.75); }
  to { border-right-color: transparent; }
}



.error-404.not-found span {
  color: #828282;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
}
.error-404.not-found .page-title {
  position: relative;
  display: block;
  color: var( --e-global-color-accent );
  font-size: 180px;
  line-height: 150px;
  font-weight: 700;
  text-transform: uppercase;
  margin: 13px 0 14px;
}
.error-404.not-found:hover .page-title {
  color: var( --e-global-color-text );
  transform: perspective(1200px) rotateY(0deg) translateX(0px);
  transition: all 3.0s ease 0s;
}
.error-404.not-found p {
  font-size: 18px;
  line-height: 28px;
  margin: 0 0 32px;
}
.error-404.not-found a {
  color: #fff;
  font-size: 14px;
  line-height: 1;
  fill: #fff;
  text-align: center;
  width: 17%;
  display: flex;
  padding: 18px 24px;
  justify-content: center;
  align-items: center;
  text-transform: uppercase;
  margin: 18px auto;
  font-weight: bold;
  border-radius: 5px;
  background-color: var( --e-global-color-accent );
  text-decoration: none;
}
.error-404.not-found:hover a{
  background-color: var( --e-global-color-text );
  color: #FFFFFF !important;
  transition: all 3.0s ease 0s;
}

.search .search-form {
  width: 30%;
  margin: 0 auto;
  position: relative;
  border: 1px solid;
  display: flex;
  align-items: center;
  border-radius: 5px;
}
.search .search-form label {
  display: inline-block;
  margin-bottom: 0;
}
.search .search-form .search-field {
  width: 100%;
  min-height: 45px;
  border: transparent;
  padding: 0 53px 0 12px;
}
.search .search-form .search-submit {
  position: absolute;
  right: 7px;
  border: tan;
  background: transparent;
  font-size: 26px;
  color: var(--e-global-color-accent );
}
.search .page-header .page-title {
  font-family: "Montserrat", Sans-serif;
  font-size: 24px;
  font-weight: 700;
  color: var( --e-global-color-primary );
  line-height: 36px;
  letter-spacing: -1px;
  margin-top: 36px;
}

#Estimate-btn {
  position: fixed;
  top: 0;
  right: 0;
  width: 99px;
}

/* Responsive bootstrup 4.6
============================================*/

/*Extra large devices (large desktops, 1200px and up)
=================================================================*/
@media (min-width: 1920px) {
	
}
/*Extra large devices (large desktops, 1200px and up)
=================================================================*/
@media (max-width: 1367px) {
	
	
}

/*Large devices (desktops, 992px and up)
=================================================================*/
@media (min-width: 992px) and (max-width: 1199.98px) {
	
}

/*Medium devices (tablets, 768px and up)
=================================================================*/
@media (min-width: 768px) and (max-width: 991.98px) {
	.contact-form .wpcf7-submit {width: 100%;}
}

/* Small devices (landscape phones, 576px and up)
=================================================================*/
@media (min-width: 576px) and (max-width: 767.98px) { 
	
}




@media (max-width: 1024px){
	
}
@media (max-width: 768px){

}
/*Extra small devices (portrait phones, less than 576px)
=================================================================*/
@media (max-width: 575.98px) {
  div.elementor-element.e-con.e-parent {padding-left: 15px;padding-right: 15px;text-align: center;}
	.cursor { white-space: break-spaces;font-size: 15px;line-height: 18px;}
  #qc{display: none;}
  .hfe-nav-menu__layout-horizontal.hfe-nav-menu__submenu-arrow.hfe-dropdown {width: 187px !important;}
  .elementor .e-1145c89 {margin-block-start: 95px;}
  .services {display: flex; flex-direction: column;}
  #ContactUs {display: flex; flex-direction: column;}
}

@media (max-width: 400px) {

}