
@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap');
html{
   overflow-x: hidden;
}

body{
    font-size: 18px;
  font-family: "Work Sans", sans-serif;
  font-weight: 400;
  font-style: normal;
  overflow-x:hidden;
}
h1,h2,h3,h4,h5,h6{
    font-family: "Bebas Neue", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.container{
    max-width: 1320px !important;
}
.header{
background:#005b82;
padding:20px 0;
}

.header .container{
     display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 100% !important;
    padding-inline: 3rem;
}

.menu ul{
display:flex;
gap:30px;
list-style:none;
margin:0;
padding:0;

}

.menu a{
color:#fff;
font-weight:600;
text-decoration:none; text-transform: uppercase;
}

.hamburger{
display:none;
width:35px;
cursor:pointer;
}

.hamburger span{
display:block;
height:3px;
background:#fff;
margin:7px 0;
transition:.3s;
}
.hamburger{
    width:35px;
    height:30px;
    display:none;
    cursor:pointer;
    position:relative;
    z-index:1001;
}
.hamburger span{
    position:absolute;
    left:0;
    width:100%;
    height:3px;
    background:#fff;
    transition:.35s ease;
}
.hamburger span:nth-child(1){
    top:0;
}
.hamburger span:nth-child(2){
    top:12px;
}
.hamburger span:nth-child(3){
    top:24px;
}
/* X Animation */

.hamburger.active span:nth-child(1){
    transform:rotate(45deg);
    top:12px;
}
.hamburger.active span:nth-child(2){
    opacity:0;
}
.hamburger.active span:nth-child(3){
    transform:rotate(-45deg);
    top:12px;
}
/* hero */
.hero{
    overflow:hidden;
}

.hero-slide{
    height:85vh;
    display:flex;
    align-items:center;
    background-size:cover;
    background-position:center;
    position:relative;
}

.hero-slide::before{
    content:"";
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.45);
}

.hero-slide .container{
    position:relative;
    z-index:2;
}

.hero-content{
    color:#fff;
}

.hero-content h1{
    font-size:clamp(42px,6vw,72px);
    font-weight:700;
    line-height:1.1;
    margin-bottom:20px;
}

.hero-content p{
    font-size:clamp(18px,2vw,28px);
    margin:0;
}

.hero-slide-1{
    background:url("../images/hero.jpg") center/cover no-repeat;
}

.hero-slide-2{
    background:url("../images/slider2.jpg") center/cover no-repeat;
}

.hero-slide-3{
    background:url("../images/slider3.jpg") center/cover no-repeat;
}

.hero .swiper-button-next,
.hero .swiper-button-prev{
    color:#fff;
}

.hero .swiper-pagination-bullet{
    width:12px;
    height:12px;
    background:#fff;
    opacity:.5;
}

.hero .swiper-pagination-bullet-active{
    opacity:1;
    background:#ffc107;
}
ul.feature-list {
    padding-left: 0;
}
.hero .container{
    position:relative;
    z-index:2;
    max-width: 100% !important;
    padding-inline: 4rem;
}
.hero h1{
font-family: "Bebas Neue", sans-serif;
font-size:clamp(2.5rem,7vw,8rem);
font-weight:400;
line-height:.92;
text-transform:uppercase;
color:#fff;
margin-bottom:clamp(1rem,2vw,2rem);
}

.hero p{
font-size:clamp(1rem,1.6vw,1.9rem);
font-weight:600;
line-height:1.5;
color:#fff;
margin-bottom:clamp(1.5rem,3vw,2.5rem);
}

.hero-btn{
display:inline-flex;
align-items:center;
justify-content:center;
padding:clamp(.8rem,1vw,1rem) clamp(1.8rem,3vw,3rem);
font-size:clamp(.9rem,1.1vw,1.1rem);
font-weight:700;
border-radius:3.125rem;
background:#f4b000;
color:#fff;
transition:.3s;
}

.hero-btn:hover{
background:#005b82;
color:#fff;
}

.lightning{
position:absolute;
left:clamp(45%,52vw,55%);
top:clamp(28%,40vh,45%);
width:clamp(4rem,8vw,7rem);
animation:flash 2s infinite;
z-index:3;
}
.py-120{
padding-block:clamp(4rem,8vw,7.5rem);
}

.about-heading{
margin-bottom:clamp(2rem,4vw,3rem);
}

.sub-title{
display:inline-block;
font-size:clamp(.75rem,.8vw,.9rem);
font-weight:700;
text-transform:uppercase;
color:#d89b00;
letter-spacing:1px;
margin-bottom:.8rem;
}

.about-heading h2{
font-size:clamp(2rem,3.4vw,3.6rem);
line-height:.95;
text-transform:uppercase;
color:#015a84;
margin:0;
max-width:650px;
}

.about-img{
border-radius:20px;
overflow:hidden;
height:100%;
}

.about-img img{
width:100%;
height:100%;
object-fit:cover;
transition:.4s;
}

.about-img:hover img{
transform:scale(1.05);
}

.about-card{
background:#d89b00;
border-radius:20px;
padding:clamp(1.5rem,2vw,2rem);
height:100%;
position:relative;
color:#fff;
overflow:hidden;
}

.about-card h4{
font-size:clamp(1.2rem,1.5vw,1.8rem);
text-transform:uppercase;
margin-bottom:.5rem;
}

.about-card h3{
font-size:clamp(1.2rem,1.5vw,1.8rem);
line-height:1.4;
margin-bottom:2rem;
}

.about-card ul{
padding:0;
margin:0;
list-style:none;
}

.about-card li{
display:flex;
align-items:center;
gap:.6rem;
font-size:clamp(.9rem,.95vw,1rem);
margin-bottom:1rem;
}

.about-card i{
color:#fff;
}

.trophy{
position:absolute;
right:20px;
bottom:20px;
width:90px;
opacity:.12;
}

.counter-box{
background:#d89b00;
border-radius:20px;
padding:clamp(2rem,3vw,3rem);
height:100%;
display:flex;
flex-direction:column;
justify-content:center;
color:#fff;
}

.counter-box h2{
font-family:"Barlow Condensed",sans-serif;
font-size:clamp(3rem,5vw,5rem);
font-weight:700;
margin-bottom:1rem;
}

.counter-box p{
font-size:clamp(.95rem,1vw,1.1rem);
line-height:1.8;
margin:0;
}

.result-text{
font-size:clamp(.9rem,1vw,1rem);
color:#777;
}

.result-text a{
color:#222;
font-weight:600;
text-decoration:underline;
}

@media(max-width:991px){

.about-heading{
text-align:center;
}

.about-card,
.counter-box,
.about-img{
height:auto;
}

}
.services-section{
padding:clamp(4rem,8vw,7rem) 0;
background:#045f87;
    margin-inline: 20px;
    border-radius: 8px;
}

.services-wrap{
/*max-width:max-content;*/
margin:auto;
}

.section-title{
margin-bottom:3rem;
}

.sub-title{
display:inline-flex;
align-items:center;
gap:.4rem;
font-size:.85rem;
font-weight:700;
text-transform:uppercase;
color:#ffc107;
letter-spacing:1px;
margin-bottom:1rem;
}

.section-title h2{
font-size:clamp(2.2rem,4vw,4rem);
color:#fff;
line-height:1;
margin-bottom:1rem;
text-transform:uppercase;
}

.section-title p{
max-width:650px;
margin:auto;
font-size:clamp(.9rem,1vw,1rem);
line-height:1.8;
color:#d8edf7;
}

.custom-accordion{
margin-top:3rem;
}

.custom-accordion .accordion-item{
border:0;
border-radius:12px;
overflow:hidden;
margin-bottom:2px;
background:transparent;
}

.custom-accordion .accordion-button{
display:flex;
align-items:center;
gap:16px;
padding:1.4rem 2rem;
background:#ffc107;
color:#111;
/*font-family:"Barlow Condensed",sans-serif;*/
font-size:1.55rem;
font-weight:700;
text-transform:uppercase;
box-shadow:none;
border-radius: 10px !important; font-weight:400; letter-spacing:1px;
}

.custom-accordion .accordion-button:not(.collapsed){
background:#fff;
color:#015a84;
border-radius: 10px 10px 0px 0px !important;
}

.custom-accordion .accordion-button::after{
display:none;
}

.service-icon{
width:48px;
height:48px;
display:flex;
align-items:center;
justify-content:center;
font-size:1.4rem;
flex-shrink:0;
}
.feature-content h3 {
    color: #00587E;
    margin-bottom: 40px;
    font-size: 2rem;
}
li.feature-item span {
    font-size: 24px;
    font-weight: 400;
    text-transform: uppercase;
    font-family: "Bebas Neue", sans-serif;
    color: #015b84;
}
.service-title{
flex:1;
}

.plus-icon{
font-size:2rem;
font-weight:300;
line-height:1;
transition:.35s;
}

.accordion-button:not(.collapsed) .plus-icon{
transform:rotate(45deg);
}

.custom-accordion .accordion-body{
background:#fff;
padding:2.3rem;
}

.custom-accordion .accordion-body p{
font-size:1.2rem;
line-height:2;
color:#4c6472;
margin-bottom:2rem;
}

.custom-accordion .accordion-body img{
width:100%;
border-radius:14px;
display:block;
}

.view-btn{
display:inline-flex;
align-items:center;
justify-content:center;
padding:.95rem 2.4rem;
background:#ffc107;
border-radius:50px;
font-size:.8rem;
font-weight:400;
color:#fff;
text-transform:uppercase;
transition:.3s;
text-decoration: none;

font-family:"Bebas Neue", sans-serif;
font-size: 1.1rem;
letter-spacing:1px;

}

.view-btn:hover{
background:#015a84;
color:#fff;
}

/*.custom-accordion .accordion-item:first-child{*/
/*border-radius:14px 14px 0 0;*/
/*}*/

.custom-accordion .accordion-item:last-child{
border-radius:0 0 14px 14px;
margin-bottom:0;
}
.feature-item{
display:flex;
align-items:center;
gap:15px;
padding:18px 0;
cursor:pointer;
border-bottom:1px solid #ddd;
transition:.3s;
}

.feature-item.active{
color:#015b84;
font-weight:700;
}

.feature-item:hover{
padding-left:10px;
}

#featureImage{
transition:.35s;
}
.features-section{
    padding: clamp(4rem, 8vw, 7rem) 0;
    background: #f8f8f8;
    margin-inline: 20px;
    border-radius: 8px;
    margin-top: 20px;
}
.cta-section{
padding-block:clamp(4rem,8vw,7rem);
position:relative;
}

.cta-video {
    margin-inline: auto;
    max-width: 1660px;
    z-index: 6;
    margin-right: 0;
    width: 100%;
}

.cta-video img{
border-radius:20px;
display:block;
}

.play-btn{
position:absolute;
left:50%;
top:50%;
transform:translate(-50%,-50%);
width:72px;
height:72px;
border-radius:50%;
background:#ffc107;
display:flex;
align-items:center;
justify-content:center;
color:#fff;
font-size:2rem;
transition:.3s;
z-index:5;
}

.play-btn:hover{
background:#015b84;
color:#fff;
}

.cta-content{
position:relative;
z-index:3;
    margin-top: -200px;
}

.cta-left{
background: #ffc107 url(../images/elect-sign.png) no-repeat right 25% bottom 30px;
background-size: clamp(60px, 8vw, 120px);
padding:clamp(2rem,3vw,3rem);
border-radius:10px;
min-height:210px;
display:flex;
flex-direction:column;
justify-content:center;
padding-top:250px;
}

.cta-left h2{
font-size:clamp(2rem,3vw,3rem);
line-height:1;
color:#fff;
text-transform:uppercase;
margin-bottom:1rem;
}

.cta-left p{
color:#fff;
font-size:1rem;
}
.cta-left * {
    max-width: 827px;
    margin: auto;
    margin-right: 0;
    width: 100%;
}
.cta-icon{
background:#ffc107;
min-height:210px;
display:flex;
align-items:center;
justify-content:center;
}


.cta-right{
background:#fff;
min-height:210px;
display:flex;
align-items:center;
justify-content:center;
padding:2rem;
border-radius:0 0 20px 0;
padding-top: 182px;
}

.cta-right h2{
font-family:"Barlow Condensed",sans-serif;
font-size:clamp(2.4rem,3.8vw,4.5rem);
font-weight:700;
line-height:1.1;
text-transform:uppercase;
-webkit-text-stroke:1px #015b84;
color:transparent;
margin:0;
}
.contact-section{
padding-block:clamp(4rem,8vw,7rem);
background:#fff;
}

.section-heading{
text-align:start;
margin-bottom:clamp(2rem,3vw,3rem);
}

.sub-title{
display:inline-flex;
align-items:start;
gap:.4rem;
font-size:.8rem;
font-weight:700;
text-transform:uppercase;
letter-spacing:1px;
color:#f6b500;
margin-bottom:1rem;
}

.section-heading h2{
font-size:clamp(2.5rem,4vw,3.5rem);
line-height:.95;
text-transform:uppercase;
color:#015b84;
margin:0;
}

.call-card{
background:#015b84;
border-radius:12px;
padding:clamp(1.5rem,2vw,2rem);
height:100%;
display:flex;
flex-direction:column;
justify-content:center;
}


.call-card h5{
font-family:"Barlow Condensed",sans-serif;
font-size:1.3rem;
font-weight:700;
text-transform:uppercase;
color:#fff;
margin-bottom:1rem;
}

.call-card a{
display:block;
color:#fff;
font-size:1rem;
text-decoration:none;
margin-bottom:.6rem;
}

.call-card .appointment{
margin-top:1rem;
font-size:.8rem;
font-weight:700;
text-transform:uppercase;
text-decoration:underline;
}

.call-box{
display:flex;
align-items:center;
gap:12px;
margin-left:30px;
color:#fff;
}

.call-icon{
width:55px;
height:55px;
background:#f4b000;
border-radius:50%;
display:flex;
align-items:center;
justify-content:center;
font-size:18px;
color:#fff;
margin-bottom: 0;
}
.logo img{
max-width:clamp(180px,18vw,330px);
height:auto;
}
.call-box span{
display:block;
font-size:12px;
line-height:1;
margin-bottom:4px;
}

.call-box a{
color:#fff;
font-size:15px;
font-weight:600;
text-decoration: none;
}

.contact-image{
height:100%;
border-radius:12px;
overflow:hidden;
}

.contact-image img{
width:100%;
height:100%;
object-fit:cover;
display:block;
}

.contact-form{
background:#015b84;
padding:clamp(2rem,3vw,3rem);
border-radius:12px;
}

.contact-form h3{
font-size:clamp(2rem,3vw,2rem);
text-transform:uppercase;
color:#fff;
margin-bottom:1rem;
}
.call-card .call-icon {
    width: 45px;
    height: 45px;
    background: #fff;
    color: #000000;
    margin-bottom: 0;
}
.call-card .d-flex {
    align-items: center;
    gap: 10px;
    margin-bottom: 15px;
}
.call-card .d-flex h5{
    margin-bottom: 0;
}
.contact-form p{
color:#d9edf7;
font-size:1rem;
margin-bottom:2rem;
}

.form-group{
margin-bottom:1.8rem;
}

.contact-form input,
.contact-form textarea{
width:100%;
background:transparent;
border:0;
border-bottom:1px solid rgba(255,255,255,.35);
padding:.8rem 0;
color:#fff;
font-size:1rem;
outline:none;
resize:none;
}

.contact-form input::placeholder,
.contact-form textarea::placeholder{
color:#d9edf7;
}

.theme-btn{
display:inline-flex;
align-items:center;
justify-content:center;
padding:1rem 2.8rem;
background:#f6b500;
border:none;
border-radius:50px;
font-family:"Barlow Condensed",sans-serif;
font-size:1rem;
font-weight:700;
text-transform:uppercase;
color:#fff;
transition:.3s;
text-decoration: none;
}

.theme-btn:hover{
background:#fff;
color:#015b84;
}
.footer-section{
background:#045f87;
overflow:hidden;
}

.footer-image{
height:100%;
min-height:650px;
background:url("../images/footer-bg.png") center center/cover no-repeat;
}

.footer-content{
padding:clamp(2rem,4vw,4rem);
color:#fff;
}

.footer-text{
    font-size: clamp(1rem, 1.8vw, 1.8rem);
    line-height: 1.3;
    text-transform: uppercase;
    max-width: 484px;
    font-family: "Bebas Neue", sans-serif;
    font-weight: 400;
}

.footer-content hr{
    margin: 1rem 0;
    border-color: rgba(255, 255, 255, .5);
    margin-bottom: 0 !important;
}

.footer-content h3{
font-size:1.8rem;
margin-bottom:1rem;
}

.footer-content h4{
font-size:clamp(1.6rem,2vw,2rem);
margin-bottom:1rem;
}

.footer-menu{
list-style:none;
padding:0;
margin:0;
}

.footer-menu li{
margin-bottom:12px;
}

.footer-menu a{
color:#fff;
text-decoration:none;
transition:.3s;
}

.footer-menu a:hover{
color:#ffc107;
}

.copyright{
margin-top:4rem;
font-size:.9rem;
color:rgba(255,255,255,.7);
}
.inner-hero-banner{
    width: 100%;
    overflow: hidden;
}

.inner-hero-banner img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: cover;
}
.section-subtitle {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1rem;
    color: #f6a800;
    font-size: clamp(0.75rem, 1vw, 0.875rem);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}


.section-title {
    margin-bottom: 1.5rem;
    color: #0d5b8f;
    font-size: clamp(2rem, 4vw, 3.5rem);
    line-height: 1.1;   
    text-transform: uppercase;
}
.integritySlider{
    width:100%;
    overflow:hidden;
}

.integritySlider .swiper-slide{
    width:100%;
}

.integritySlider img{
    width:100%;
    display:block;
}
/* Pagination Position */
.integritySlider .swiper-pagination {
    position: relative;
    margin-top: 20px;
    text-align: center;
}

/* Default Dot */
.integritySlider .swiper-pagination-bullet {
    width: 15px;
    height: 6px;
    background: #d9d9d9;
    opacity: 1;
    border-radius: 30px;
    margin: 0 5px !important;
    transition: all 0.3s ease;
}

/* Active Dot */
.integritySlider .swiper-pagination-bullet-active {
    width: 25px;
    height: 6px;
    border-radius: 30px;
    background: #f4b400;
}
.section-title span {
    color: #0d5b8f;
}
.integrity-section {
    padding: clamp(4rem, 8vw, 7rem) 0;
    background: #fff;
}

.integrity-wrapper {
    display: grid;
    grid-template-columns: 1.1fr 0.9fr;
    align-items: center;
    gap: clamp(2rem, 5vw, 5rem);
}

.integrity-content {
    max-width: 40rem;
}

.integrity-content p {
    margin: 1.5rem 0 2rem;
}

.integrity-content ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.integrity-content li {
    margin-bottom: 1rem;
    color: #333;
     line-height: 1.5;
}

.integrity-content li strong {
    color: #0b4f75;
    font-weight: 700;
}

.integrity-image {
    border-radius: 1rem;
    overflow: hidden;
}

.integrity-image img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: 1rem;
}
.values-section {
    padding: clamp(4rem, 8vw, 7rem) 0;
    background: #005b84;
}

.values-wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: clamp(2rem, 4vw, 4rem);
}

.value-item {
    color: #fff;
}

.value-icon {
   margin-bottom: 20px;
    height:65px;
}


.value-item h3 {
    margin-bottom: 1rem;
    color: #f5b400;
    font-size: clamp(1.25rem, 2vw, 1.5rem);
}

.value-item p {
    color: rgba(255,255,255,.9);
    line-height: 1.5;
    /*font-size: clamp(.95rem, 1vw, 1rem);*/
}
.gallery-grid {
    display: flex;
    gap: 1.5rem;
}

.gallery-column {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.gallery-item {
    overflow: hidden;
    border-radius: 1rem;
}

.gallery-item img {
    width: 100%;
    display: block;
    border-radius: 1rem;
}

.gallery-item.tall img {
    height: 100%;
    min-height: 31rem;
    object-fit: cover;
}
section.gallery-section {
    padding-block: 60px;
}
.industrial-services{
    padding:clamp(3.75rem,6vw,6.25rem) 0;
    background:#f8f8f8;
    border-radius:20px;
    margin-inline: 20px;
}


.section-title{
    text-align:center;
    margin-bottom:clamp(2rem,4vw,3rem);
}


.section-title h2 span{
    display:block;
}

.services-wrapper{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:clamp(2rem,4vw,4rem);
}

.services-list{
    flex:1;
}

.services-list ul{
    margin:0;
    padding:0;
    list-style:none;
}

.services-list li{
    position:relative;
    /*padding-left:1.5rem;*/
    margin-bottom:0.9rem;
    /*font-size:clamp(0.875rem,1vw,1rem);*/
    line-height:1.5;
    color:#222;
}

.services-list li::before{
    /*content:"";*/
    position:absolute;
    left:0;
    top:0.55rem;
    width:0.625rem;
    height:0.625rem;
    border-radius:50%;
    background:#005b8f;
}

.services-list i {color:#0d5b8f; padding-right:10px;}

.services-image{
    flex:1;
}

.services-image img{
    width:100%;
    display:block;
    border-radius:16px;
    object-fit:cover;
    min-height: 550px;
}
/* Contact   */
.contact-info-section {
    padding: clamp(60px, 8vw, 100px) 0;
    background: #f8fafc;
}

.contact-card {
    background: #fff;
    border: 1px solid #e7e7e7;
    border-radius: 20px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .05);
    height: 100%;
    overflow: hidden;
}

/* Left Card */

.info-row {
    display: flex;
    align-items: center;
    padding: clamp(24px, 3vw, 35px);
    border-bottom: 1px solid #ececec;
}

.info-row:last-child {
    border-bottom: 0;
}

.icon {
       width: 65px;
    height: 65px;
    min-width: 65px;
    border-radius: 50%;
    background: #005b8f;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 30px;
    position: relative;
}

.icon::after {
    content: "";
    position: absolute;
    right: -16px;
    top: 50%;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #005b8f;
    transform: translateY(-50%);
}
.content::before {
    content: "";
    position: absolute;
    left: -18px;
    width: 1px;
    height: 100%;
    border-radius: 50%;
    background: #777777;
}

.icon i {
    color: #fff;
    font-size: 34px;
}

.content {
    flex: 1;
        position: relative;
}

.content h4 {
    font-size: clamp(22px, 2vw, 26px);
    font-weight: 700;
    color: #1c1c1c;
    margin-bottom: 8px;
}

.content p {
    margin: 0 0 10px;
    color: #555;
    font-size: clamp(16px, 1vw, 18px);
    line-height: 1.7;
}

.content a {
    color: #005b8f;
    font-weight: 700;
    text-decoration: none;
}

.content a:hover {
    text-decoration: underline;
}

/* Right Card */

.location-title {
    display: flex;
    align-items: center;
    gap: 20px;
    padding: 30px;
    border-bottom: 1px solid #ececec;
}

.title-icon {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #005b8f;
    display: flex;
    justify-content: center;
    align-items: center;
}

.title-icon i {
    color: #fff;
    font-size: 26px;
}

.location-title h3 {
    margin: 0;
    text-transform: uppercase;
    font-size: clamp(26px, 2vw, 32px);
    font-weight: 700;
    color: #222;
}

/* Location List */

.location-list {
    list-style: none;
    margin: 0;
    padding: 30px;
}

.location-list li {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 16px;
    font-size: 16px;
    color: #444;
    line-height: 1.6;
}

.location-list li i {
    color: #005b8f;
    font-size: 15px;
}

.location-list a {
    color: #005b8f;
    text-decoration: none;
    font-weight: 700;
    margin-left: auto;
}

.location-list a:hover {
    text-decoration: underline;
}

/* Divider Between Location Columns */

.contact-card .col-md-6:first-child {
    border-right: 1px solid #ececec;
}

/* Email */

.email-row {
    display: flex;
    align-items: center;
    gap: 25px;
    padding: 30px;
    border-top: 1px solid #ececec;
}

.email-icon {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: #005b8f;
    display: flex;
    justify-content: center;
    align-items: center;
}

.email-icon i {
    color: #fff;
    font-size: 24px;
}

.email-content p {
    margin-bottom: 8px;
    font-size: 18px;
}

.email-content a {
    color: #005b8f;
    font-weight: 700;
    text-decoration: none;
}

.email-content a:hover {
    text-decoration: underline;
}

/* Bottom Features */

.feature-row {
    margin-top: 60px;
}

.feature-item {
    display: flex;
    align-items: center;
    justify-content: start;
    gap: 15px;
}

.feature-item i {
    width: 72px;
    height: 72px;
    border: 1px solid #ddd;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 34px;
    color: #005b8f;
    background: #fff;
}

.feature-item h5 {
    margin: 0;
    font-size: 18px;
    font-weight: 500;
    color: #222;
    text-transform: uppercase;
    line-height: 1.2;
}

.feature-item span {
    display: block;
    color: #005b8f;
    font-weight: 700;
    text-transform: uppercase;
}

/* Responsive */

@media (max-width:991px) {

    .contact-card .col-md-6:first-child {
        border-right: 0;
        border-bottom: 1px solid #ececec;
    }

    .location-list {
        padding-bottom: 10px;
    }

    .feature-item {
        flex-direction: column;
        text-align: center;
    }

}

@media (max-width:767px) {

    .info-row,
    .email-row {
        flex-direction: column;
        text-align: center;
    }

    .icon,
    .email-icon {
        margin-right: 0;
    }

    .icon::after {
        display: none;
    }

    .location-title {
        flex-direction: column;
        text-align: center;
    }

    .location-list li {
        flex-wrap: wrap;
        justify-content: center;
        text-align: center;
    }

    .location-list a {
        width: 100%;
        margin-left: 0;
    }

}
.contact-form-section{
    padding:clamp(70px,8vw,110px) 0;
    background:#eef2fa;
}

.section-title{
    margin:0 auto 60px;
    text-align:center;
}

.section-title span{
    color:#005b8f;
    text-transform:uppercase;
    letter-spacing:4px;
    font-weight:600;
}

.contact-info-section .section-title h2::after, .contact-form-section .section-title h2::after{
    content:"";
    width:70px;
    height:3px;
    background:#005b8f;
    display:block;
    margin:18px auto 0;
}

.contact-form-section .section-title p{
    color:#666;
    line-height:1.8;
    font-size:18px;
    max-width:950px;
}

.highlight-text{
    margin-top:20px;
}

.highlight-text strong{
    color:#005b8f;
}

.contact-form-wrap{
    background:#fff;
    border-radius:20px;
    padding:50px;
    box-shadow:0 20px 40px rgba(0,0,0,.08);
}

.form-group{
    margin-bottom:25px;
}

.form-group label{
    display:block;
    font-weight:600;
    color:#333;
    margin-bottom:10px;
    text-transform:uppercase;
    font-size:14px;
    letter-spacing:1px;
}

.form-control{
    height:58px;
    border:1px solid #d9d9d9;
    border-radius:10px;
    padding:15px 20px;
    font-size:16px;
    box-shadow:none;
}

textarea.form-control{
    height:220px;
    resize:none;
}

.form-control:focus{
    border-color:#005b8f;
    box-shadow:none;
}

.captcha-box{
    display:flex;
    align-items:center;
    gap:18px;
    border:1px solid #ddd;
    padding:18px;
    border-radius:12px;
}

.captcha-icon{
    width:55px;
    height:55px;
    background:#005b8f;
    color:#fff;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:24px;
}

.captcha-box p{
    margin:0;
    color:#777;
    font-size:14px;
}

.contact-form-wrap .theme-btn{
    background:#005b8f;
    color:#fff;
    border:none;
    padding:16px 40px;
    border-radius:50px;
    font-size:16px;
    font-weight:600;
    transition:.3s;
}

.contact-form-wrap .theme-btn:hover{
    background:#003f66;
}

.theme-btn i{
    margin-left:8px;
}
#menu ul li a.active {
    color: #ffc107;
    font-weight: 600;
}

#menu ul li a.active::after {
    width: 100%;
}
@media(max-width:767px){

    .contact-form-wrap{
        padding:30px 20px;
    }

    .theme-btn{
        width:100%;
    }

}
/* Contact   */
.integrity-section .section-title {
    margin: 0 auto 30px;
    text-align: left;
}

@media(max-width:991px){
    .services-wrapper{
        flex-direction:column;
    }

    .services-image,
    .services-list{
        width:100%;
    }
}
@media (max-width:991px) {
    .gallery-grid {
        flex-wrap: wrap;
    }

    .gallery-column {
        flex: 0 0 calc(50% - .75rem);
    }
}

@media (max-width:767px) {
    .gallery-column {
        flex: 0 0 100%;
    }

    .gallery-item.tall img {
        min-height: auto;
    }
}
@media (max-width: 991px) {
    .values-wrapper {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .values-wrapper {
        grid-template-columns: 1fr;
    }

    .value-item {
        text-align: center;
    }

    .value-icon {
        margin: 0 auto 1.5rem;
    }
}

@media (max-width: 991px) {
    .integrity-wrapper {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .integrity-content {
        max-width: 100%;
    }

    .integrity-image {
        max-width: 36rem;
        margin: 0 auto;
    }
}
@media(max-width:1366px){
    .location-list li {
    font-size: 15px;
}
.menu ul {
    gap: 18px;
}
.header .container {
    padding-inline: 1rem;
}
.hero {
    height: clamp(32rem, 85dvh / 1.2, 56rem);
}

}
@media(max-width:991px){

.footer-image{
min-height:350px;
}

.footer-content{
padding:2rem;
}

.footer-menu{
margin-top:2rem;
}

}
@media(max-width:991px){

.section-heading{
text-align:center;
}

.call-card,
.contact-image{
height:auto;
}

.contact-image{
margin-top:1rem;
}

.contact-form{
margin-top:2rem;
}

}

@media(max-width:767px){
.hero {
    height: auto;
}
.cta-left{
    padding: clamp(2rem, 3vw, 3rem) !important;
}
.cta-content {
        margin-top: 20px;
    }
.section-heading h2{
font-size:2.5rem;
}

.call-card{
text-align:center;
align-items:center;
}

.contact-form{
padding:2rem;
}

.theme-btn{
width:100%;
}

}
@media(max-width:991px){

.cta-content{
margin-top:0;
}

.cta-left{
border-radius:0;
text-align:center;
}

.cta-icon{
min-height:120px;
}

.cta-right{
        border-radius: 0 0 20px 20px;
        min-height: inherit;
        padding-top: 30px;
}

.cta-right h2{
text-align:center;
}
.cta-left {
    background: #ffc107 url(../images/elect-sign.png) no-repeat right 3% bottom 30px;
    padding-top: 51px;
}
.hero-slide {
    height: 45vh;
}
}
@media(max-width:991px){

.custom-accordion .accordion-body{
padding:1.5rem;
}

.custom-accordion .accordion-button{
padding:1rem 1.2rem;
font-size:1.2rem;
}

.service-icon{
width:40px;
height:40px;
font-size:1.1rem;
}

.plus-icon{
font-size:1.6rem;
}

.custom-accordion .accordion-body img{
margin-top:1.5rem;
}

}

@media(max-width:576px){

.section-title{
margin-bottom:2rem;
}

.custom-accordion .accordion-button{
gap:10px;
font-size:1rem;
padding:1rem;
}

.service-icon{
width:34px;
height:34px;
font-size:.9rem;
border-radius:8px;
}

.plus-icon{
font-size:1.3rem;
}

.view-btn{
width:100%;
}

}

@keyframes flash{
0%,100%{transform:scale(1);}
50%{transform:scale(1.08);}
}

@media(max-width:991px){
    .hamburger{
        display:block;
    }

.menu{
position:fixed;
top:0;
left:-100%;
width:280px;
height:100%;
background:#005b82;
padding:20px 20px;
transition:.4s;
z-index:999;
}

.menu.active{
left:0;
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5);
}

.menu ul{
flex-direction:column;
gap:20px;
}

.call-box{
display:none;
}

.hamburger{
display:block;
z-index:1000;
}
.logo{
   max-width: 220px;
   width: 100%;
}
.logo img{
   width: 100%;
}
}


@media screen and (max-width:767px){
    
    body, .about-card li {font-size:1.1rem;}
    .about-card h4, .about-card h3, .custom-accordion .accordion-button, .value-item h3, .footer-text, .footer-content h3 { font-size:24px;}
    .service-icon img {width:100%; height:100%; object-fit:contain}
    .custom-accordion .accordion-body p {line-height:1.5; font-size: 1.1rem;} 
    .service-icon { width: 50px;}
    .plus-icon { font-size:2rem;}
    .feature-content { text-align:center;}
    .hamburger span {width:90%; margin-top:0px;}
     .contact-section { padding-top:0px;}
 .contact-image{    height: 100%;
    margin-top: 0px;}    
    .cta-left { background-image:none;}
    .call-card .call-icon {min-width:45px;}
    .gallery-grid {gap: 1rem;justify-content: center;}
    .gallery-column {
        flex: 0 0 45%;
    }
    .services-list li {display:flex;}
    .services-list i {padding-right: 15px; padding-top: 3px;}
    .services-image img { min-height:auto;}
    .footer-text { text-align:center;}
    .industrial-services {width: 100%;
    margin-left: 0px;
    border-radius: 0px;
    padding: 60px 15px;}
    
    
}
