html, body { scroll-behavior: smooth; }
body { padding: 90px 0 0 0; text-shadow: none; overflow-x: hidden; }
img { max-width: 100%; height: auto; }
p { color: #4a5565; font-size: 20px; }
.cls_trasition { transition: all 0.3s; }
#ui-to-top { display: none; }


.form_wrapper { background-color: #fff; padding: 20px 40px; border-radius: 20px; }
.form_wrapper .form_header { text-align: center; }
.form_wrapper .form_header h3 { color: #101828; font-size: 24px; text-shadow: none; font-weight: 700; line-height: 35px; }
.form_wrapper .form_body { padding: 0 0 0 0; }
.form_wrapper .crm_form { height: 700px; }
/*.form_wrapper .form_body iframe { height: auto; }*/

.heading_box { padding: 0 0 30px 0; text-align:center; }
.heading_box .heading { color: #101828; font-size: 36px; text-shadow: none; font-weight: 700; line-height: 30px; }
.heading_box .tagline { color: #4a5565; font-size: 20px; padding: 15px 0 0 0; }

.site_btn { display: inline-flex; border-radius: 8px; border: 0; padding: 0 20px; align-items: center; justify-content: center; cursor: pointer; height: 46px; gap: 0 10px; position: relative; overflow: hidden; background-color: #00b8db; }
.site_btn .icon { display: flex; align-items: center; justify-content: center; }
.site_btn .icon svg path { stroke: #fff; }
.site_btn .text { color: #fff; line-height: 1; white-space: nowrap; font-size: 18px; font-weight: 600; }
.site_btn.call_btn { background-color: #1e4a6f; }
.site_btn.quote_btn {  }

.site_flex { display: flex; }

header { position: fixed; top: 0; left: 0; right: 0; background-color: #fff; box-shadow: 0 0 10px 0px rgba(0,0,0,.4); padding: 10px 0; z-index: 9; }
header .site_flex { justify-content: space-between; align-items: center; }
header .site_flex .logo { width: 200px; }
header .site_flex nav { flex: 1 0 auto; }
header .primary_nav { display: flex; justify-content: flex-end; gap: 20px; }
header .primary_nav li {  }

section { padding: 70px 0; }
section p { margin: 0 0 0 0; padding: 0 0 20px 0; }
section p:last-child { padding: 0 0 0 0; }

.banner { background-color: rgba(22, 79, 120, .8); }
.banner .site_flex {  }
.banner .site_flex .left_box { width: calc(100% - 520px); padding: 0 80px 0 0; }
.banner .site_flex .left_box h1 { color: #fff; font-size: 40px; line-height: 48px; font-weight: 600; padding: 0 0 25px 0; }
.banner .site_flex .left_box .tagline { color: #dbeaea; font-size: 28px; line-height: 36px; padding: 0 0 25px 0; }
.banner .site_flex .left_box P { color: #f3f4f6; font-size: 20px; line-height: 26px; }
.banner .site_flex .left_box .usp_list { display: flex; flex-wrap: wrap; margin: 20px 0 0 -20px; gap: 20px 0; }
.banner .site_flex .left_box .usp_list .usp_item { width: calc(33.33% - 20px); margin: 0 0 0 20px; padding: 15px; border: 1px solid #fff3; background-color: rgba(255, 255, 255, 0.1); backdrop-filter: blur(8px); border-radius: 8px; display: flex; gap: 10px; align-items: center; }
.banner .site_flex .left_box .usp_list .usp_item .icon { width: 40px; height: 40px; flex: 1 0 40px; background-color: #738ea5; display: flex; align-items: center; justify-content: center; border-radius: 6px; }
.banner .site_flex .left_box .usp_list .usp_item .text { color: #fff; font-size: 16px; font-weight: 600; line-height: 18px; }
.banner .site_flex .right_box { width: 520px; }
.banner .hightlighted_usp { display: flex; gap: 20px; margin: 50px 0 0 0; }
.banner .hightlighted_usp .htext { flex: 1 1 0; display: flex; background-color: #fff; padding: 15px 25px; justify-content: center; align-items: center; color: #1e4a6f; font-size: 18px; font-weight: 600; border-radius: 10px; text-align: center; line-height: 24px; }
.banner .hightlighted_usp .htext:first-child { background-color: #00b8db; color: #fff; }

@keyframes marquee_scroll {
	from { transform: translateX(0); } 
	to { transform: translateX(-50%); }
}
.certifications { border-bottom: 1px solid rgba(0,0,0,0.1); }
.certifications .logo_marquee { display: flex; gap: 50px; width: max-content; animation: marquee_scroll 30s linear infinite; overflow: hidden; }
.certifications .logo_marquee .marquee_track { display: flex; gap: 50px; }
.certifications .logo_marquee .marquee_track .logo_item { width: 180px; height: 180px; padding: 15px; display: flex; align-items: center; justify-content: center; border: 1px solid rgba(0, 0, 0, 0.1); }

.our_services { border-bottom: 1px solid rgba(0,0,0,0.1); }
.our_services .services { display: flex; margin: 0 0 0 -20px; gap: 20px 0; flex-wrap: wrap; }
.our_services .services .service_item { width: calc(33.33% - 20px); margin: 0 0 0 20px; position: relative; border-radius: 20px; overflow: hidden; transition: all 0.3s; }
.our_services .services .service_item:after { content: ""; position: absolute; background-color: rgba(30, 74, 111, 0.95); z-index:2; left: 0; bottom: 0; right: 0; }
.our_services .services .service_item .media_wrapper {  }
.our_services .services .service_item .media_wrapper img { transition: 0.5s; }
.our_services .services .service_item .content_wrapper { position: absolute; z-index: 3; bottom: 0; padding: 20px; }
.our_services .services .service_item .content_wrapper .icon { padding: 0 0 0 0; }
.our_services .services .service_item .content_wrapper .icon svg { stroke: #fff; }
.our_services .services .service_item .content_wrapper .service_name { color: #fff; font-size: 22px; font-weight: 600; text-shadow: none; padding: 5px 0 10px 0; margin: 0 0 0 0; }
.our_services .services .service_item .content_wrapper .service_text { padding: 0 0 0 0; }
.our_services .services .service_item .content_wrapper .service_text p, li { color: #fff; font-size: 16px; line-height: 24px; }
.our_services .services .service_item .content_wrapper .service_text .ul_head { padding: 0 0 0 0; }
.our_services .services .service_item .content_wrapper .service_text ul { list-style: disc; padding: 0 0 0 20px; }
.our_services .services .service_item .content_wrapper .service_text ul li { display: list-item; }
.our_services .services .service_item .content_wrapper .service_link { display: inline-flex; align-items: center; padding: 10px 20px; color: #000; font-size: 18px; background-color: #fff; border-radius: 6px; line-height: 1; margin: 15px 0 0 0; font-weight: 600; }
.our_services .services .service_item:hover .media_wrapper img { transform: scale(1.1); }
.our_services .services .service_item:not(.fix_item) { .our_services .services .service_item:not(.fix_item) }
.our_services .services .service_item:not(.fix_item):before { content: ""; position: absolute; background-color: rgba(0, 0, 0, 0.7); z-index:1; left: 0; bottom: 0; right: 0; top: 0; }
.our_services .services .service_item:not(.fix_item) .content_wrapper .service_text { max-height: 0; overflow: hidden; opacity: 0; transform: translateY(-8px); transition: 0.3s; }
.our_services .services .service_item:not(.fix_item):hover .content_wrapper .service_text { max-height: 300px; opacity: 1; transform: translateY(0); }
.our_services .services .service_item:not(.fix_item):hover:before { display: none; }
.our_services .services .service_item:not(.fix_item):hover:after { top: 0; }
.our_services .services .service_item.fix_item:after { top: 0; }

.why_us {  }
.why_us .why_us_list { display: flex; margin: 50px 0 0 -30px; gap: 30px 0; flex-wrap: wrap; }
.why_us .why_us_list .why_item { width: calc(50% - 30px); margin: 0 0 0 30px; display: flex; border: 1px solid #dbeafe; padding: 30px 20px; border-radius: 20px; background-image: linear-gradient(to right, rgba(239, 246, 255, 1) 0%, rgba(255, 255, 255, 1) 100%); transition: all 0.3s; will-change: box-shadow }
.why_us .why_us_list .why_item .why_icon { background-color: #1e4a6f; width: 56px; height: 56px; display: flex; align-items: center; justify-content: center; border-radius: 5px; flex: 1 0 auto; }
.why_us .why_us_list .why_item .why_icon svg { height: 28px; width: 28px; }
.why_us .why_us_list .why_item .why_text { padding: 0 0 0 20px; }
.why_us .why_us_list .why_item .why_text h3 { color: #101828; font-size: 20px; font-weight: 600; text-shadow: none; padding: 0 0 10px 0; }
.why_us .why_us_list .why_item .why_text p { font-size: 16px; line-height: 24px; }
.why_us .why_us_list .why_item:hover { box-shadow: 0 8px 12px -6px rgba(0, 0, 0, 0.25); }

.customer_review { background-image: linear-gradient(to right, rgba(239, 246, 255, 0.5), rgba(219, 234, 254, 0.5)); }

.about_house_transformers { padding-bottom: 20px; }
.about_house_transformers .site_flex { flex-wrap: wrap; }
.about_house_transformers .site_flex .content_box { width: 55%; padding: 0 50px 0 0; }
.about_house_transformers .site_flex .content_box p { padding: 0 0 30px 0; }
.about_house_transformers .site_flex .content_box .heading_box { text-align: left; }
.about_house_transformers .site_flex .content_box .call_line { color: #1e4a6f; font-weight: 600; }
.about_house_transformers .site_flex .form_box { width: 45%; }
.about_house_transformers .site_flex .form_box .form_wrapper .form_header h3 { font-size: 32px; text-align: left; line-height: 40px; font-weight: bold; }

.real_projects {  }
.real_projects .recent_slider_box {  }
.real_projects .recent_slider_box #recent_project_slider {  }
.real_projects .recent_slider_box #recent_project_slider .recent_slide { display: inline-flex; border-radius: 20px; overflow: hidden; }
.real_projects .recent_slider_box #recent_project_slider .recent_slide img { transition: all 0.3s; }
.real_projects .recent_slider_box #recent_project_slider .recent_slide:hover img { transform: scale(1.1); }
.real_projects .recent_slider_box #recent_project_slider .recent_slide_wrapper { padding: 0 10px; }
.slick-dots { display: flex; justify-content: center; margin: 20px 0 0 0; }
.slick-dots li { padding: 0 5px; }
.slick-dots li button { background-color: #1e4a6f; border-radius: 100%; font-size: 0; width: 16px; height: 16px; display: flex; border: 0; }
.slick-dots .slick-active button { background-color: #00b8db; }

footer { background-color: #101828; color: #99a1af; }
footer p, footer ul li, footer a { color: #99a1af; }
footer .contact_box { display: flex; gap: 10px; }
footer .contact_box .cmedia {  }
footer .contact_box .cinfo {  }
footer .contact_box .cinfo .ctext { color: #fff; font-weight: 600; }
footer .contact_box .cinfo .clabel { color: #99a1af; }
footer .contact_box + .contact_box { margin: 20px 0 0 0; }
footer .footer_line_1 { padding: 60px 0; display: flex; margin: 0 0 0 -40px; }
footer .footer_line_1 .child { width: calc(25% - 40px); margin: 0 0 0 40px; }
footer .footer_line_1 .child h3 { color: #fff; font-size: 18px; font-weight: 600; padding: 0 0 20px 0; }
footer .footer_line_1 .child ul {  }
footer .footer_line_1 .child ul li {  }
footer .footer_line_1 .child ul li a { font-weight: 600; font-size: 16px; display: block; padding: 0 0 5px 0; }
footer .footer_line_1 .child_1 .footer_logo { width: 120px; }
footer .footer_line_1 .child_1 .blurb { padding: 15px 0 0 0; color: #99a1af; }
footer .footer_line_2 { padding: 30px 0; border-top: 1px solid rgba(255,255,255,0.1); }
footer .footer_line_2 .site_flex { justify-content: space-between; }
footer .footer_line_2 .contact_nav { display: flex; gap: 30px; }

@media(max-width: 767px)
{
	body { padding: 65px 0 0 0; }
	header .site_flex .logo { width: 100px; }
	header .site_btn .text { display: none; }
	header .site_btn { padding: 0 10px; }
	section { padding: 30px 0; }
	p { font-size: 16px; }
	.form_wrapper { padding: 15px; }
	.form_wrapper .form_header h3 { font-size: 18px; line-height: 24px; }
	.form_wrapper .crm_form { height: 860px; }
	.heading_box { padding: 0 0 15px 0; }
	.heading_box .heading { font-size: 22px; line-height: 30px; }
	.heading_box .tagline { font-size: 16px; line-height: 22px; }
	.banner .site_flex { flex-direction: column; }
	.banner .site_flex .left_box { width: 100%; padding: 0 0 20px 0; text-align: center; }
	.banner .site_flex .left_box h1 { font-size: 22px; line-height: 30px; padding: 0 0 20px 0; }
	.banner .site_flex .left_box .tagline { font-size: 18px; line-height: 24px; padding: 0 0 20px 0; }
	.banner .site_flex .left_box P { font-size: 16px; line-height: 22px; }
	.banner .site_flex .left_box .usp_list .usp_item { width: calc(50% - 20px); flex-direction: column; }
	.banner .site_flex .right_box { width: 100%; }
	.banner .hightlighted_usp { flex-direction: column; }
	.certifications .logo_marquee { gap: 15px; }
	.certifications .logo_marquee .marquee_track .logo_item { height: 100px; width: 100px; }
	.certifications .logo_marquee .marquee_track { gap: 15px; }
	.our_services .services { margin: 0 0 0 0; }
	.our_services .services .service_item { width: 100%; margin: 0 0 0 0; }
	.our_services .services .service_item .content_wrapper { position: relative; }
	.our_services .services .service_item .media_wrapper { position: absolute; height: 100%; }
	.our_services .services .service_item .media_wrapper img { height: 100%; }
	.our_services .services .service_item:not(.fix_item) .content_wrapper .service_text { opacity: 1; max-height: none; transform: none; }
	.why_us .why_us_list { margin: 20px 0 0 0; }
	.why_us .why_us_list .why_item { width: 100%; margin: 0 0 0 0; padding: 15px; }
	.about_house_transformers .site_flex .content_box { width: 100%; padding: 0 0 0 0; }
	.about_house_transformers .site_flex .form_box { width: 100%; }
	.about_house_transformers .site_flex .form_box .form_wrapper .form_header h3 { text-align: center; font-size: 22px; line-height: 30px; text-align: center; }
	footer .footer_line_1 { padding: 30px 0; flex-direction: column; gap: 30px; margin: 0 0 0 0; }
	footer .footer_line_1 .child { width: 100%; margin: 0 0 0 0; }
	footer .footer_line_2 .site_flex { flex-direction: column; }
	footer .footer_line_2 .contact_nav { gap: 10px; }
	footer .footer_line_2 a { font-size: 12px; }
	footer .footer_line_1 .child h3 { padding: 0 0 10px 0; line-height: 1; }
	.slick-dots li { padding: 0 2px; }
	.slick-dots li button { height: 12px; width: 12px; }
}

@media(min-width: 768px) and (max-width: 1199px)
{
	body { padding: 70px 0 0 0; }
	header .site_flex .logo { width: 150px; }
	section { padding: 40px 0; }
	p { font-size: 18px; }
	.site_btn { padding: 0 15px; }
	.site_btn .text { font-size: 16px; }
	.banner .site_flex { flex-direction: column; }
	.banner .site_flex .left_box { width: 100%; padding: 0 0 20px 0; text-align: center; }
	.banner .site_flex .right_box { width: 100%; }
	.heading_box .heading { font-size: 26px; line-height: 30px; }
	.heading_box .tagline { font-size: 18px; line-height: 22px; }
	.certifications .logo_marquee { gap: 25px; }
	.certifications .logo_marquee .marquee_track .logo_item { height: 120px; width: 120px; }
	.certifications .logo_marquee .marquee_track { gap: 25px; }
	.our_services .services .service_item { width: calc(50% - 20px); }
	.about_house_transformers .site_flex .form_box .form_wrapper .form_header h3 { font-size: 20px; line-height: 30px; text-align: center; }
	.about_house_transformers .site_flex .content_box { width: 100%; }
	.about_house_transformers .site_flex .form_box { width: 100%; }
	footer .footer_line_2 .contact_nav { gap: 10px; }
	footer .footer_line_2 .contact_nav a { font-size: 12px; }
}

@media(min-width: 992px) and (max-width: 1199px)
{
	
}

@media(min-width: 1200px) and (max-width: 1399px)
{
	
}

@media(min-width: 1400px) and (max-width: 1599px)
{
	
}

@media(min-width: 1600px)
{
	
}

/* new marquee page css starts here */

.marquee_track.inner_new_logo_marquee {
    display: flex;
    flex-wrap: wrap;
    gap: 26px;
}

.logo_item {
    flex: 0 0 20%;
}

.logo_item img {
    border: 1px solid lightgray;
    padding: 12px;
}
a.site_btn.call_btn.hero_btn {
    background-color: #fff;
}

.hero_btn span.text {
    color: #1e4a6f;
    font-size: 21px;
}

h3.get_free {
    margin-top: 25px;
}


.hero_btn svg.lucide.lucide-phone.w-5.h-5 {
    fill: #1e4a6f;
}

@media(max-width: 420px)
{
	.marquee_track.inner_new_logo_marquee {  
    	gap: 19px;
	}
}


.sticky-call{
    position: fixed;
    right: 24px;
    bottom: calc(24px + env(safe-area-inset-bottom, 0px)); /* iPhone safe area */
    z-index: 99999;

    display: inline-flex;
    align-items: center;
    gap: 10px;

    padding: 14px 18px;
    border-radius: 999px;

    background: #2f6fed; /* change color if you want */
    color: #fff;
    text-decoration: none;
    font: 600 15px/1.1 system-ui, -apple-system, Segoe UI, Roboto, Arial;

    box-shadow: 0 12px 30px rgba(0,0,0,.22);
    transition: transform .15s ease, box-shadow .15s ease, opacity .15s ease;
    opacity: 1;
    visibility: visible;
  }

  .sticky-call:hover{
    transform: translateY(-1px);
    box-shadow: 0 16px 40px rgba(0,0,0,.28);
  }

  .sticky-call:active{
    transform: translateY(0);
  }

  .sticky-call:focus-visible{
    outline: 3px solid rgba(255,255,255,.9);
    outline-offset: 3px;
  }

  .sticky-call__icon{
    width: 20px;
    height: 20px;
    fill: currentColor;
    flex: 0 0 auto;
  }

  span.sticky-call__text {
    font-size: 18px;
    color: #fff;
}

  /* Optional: smaller on very small screens */
  @media (max-width: 360px){
    .sticky-call{ right: 14px; bottom: calc(14px + env(safe-area-inset-bottom, 0px)); padding: 12px 14px; }
    .sticky-call__text{ font-size: 14px; }
  }

  /* Optional: if you want ONLY icon on mobile */
  /* @media (max-width: 480px){
    .sticky-call__text{ display:none; }
  } */