/* =========================
   HERO + NAVBAR FULL STYLE
========================= */

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

body{
  font-family:Arial, sans-serif;
}

.container{
  width:90%;
  max-width:1200px;
  margin:auto;
}

/* HERO */

.hero-growth{
  min-height:100vh;
  position:relative;
  overflow:hidden;
  color:#fff;

  display:flex;
  flex-direction:column;

  background:
  linear-gradient(rgba(17,25,28,.65), rgba(17,25,28,.65)),
  url("../images/hero-section.webp") center/cover no-repeat;
}
.hero-growth::after{
  content:"";
  position:absolute;
  inset:0;
  background:rgba(8,14,16,.25);
  z-index:1;
}
.hero-content{
  flex:1;
  display:flex;
  flex-direction:column;
  justify-content:center;

  max-width:980px;

  padding-top:40px;
  padding-bottom:80px;
}
.hero-nav,
.hero-content,
.hero-dots{
  position:relative;
  z-index:9999;
}

/* NAVBAR */

.hero-nav{
  padding:24px 0;
}

.hero-nav-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  position:relative;
}

.logo{
  color:#fff;
  text-decoration:none;
  font-size:24px;
  font-weight:800;
  display:flex;
  align-items:center;
  gap:10px;
}

.logo-icon{
  width:30px;
  height:30px;
  border-radius:50%;
  background:#fff;
  color:#111;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:16px;
}

.nav-links{
  display:flex;
  align-items:center;
  gap:34px;
  list-style:none;
  margin:0;
  padding:0;
}

.nav-links li{
  position:relative;
}

.nav-links a{
  color:#fff;
  text-decoration:none;
  font-size:14px;
  font-weight:600;
  transition:.3s;
}

.nav-links a:hover{
  opacity:.7;
}

.nav-btn{
  background:#fe9e2e;
  color:#193579;
  text-decoration:none;
  padding:13px 25px;
  border-radius:40px;
  font-size:14px;
  font-weight:700;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  transition:.3s;
}

.nav-btn:hover{
  transform:translateY(-2px); color:#fff
}

/* DROPDOWN */

.dropdown-menu{
  position:absolute;
  top:130%;
  left:0;
  background:#fff;
  min-width:220px;
  padding:12px 0;
  border-radius:12px;
  opacity:0;
  visibility:hidden;
  transform:translateY(12px);
  transition:.3s;
  box-shadow:0 18px 45px rgba(0,0,0,.18);z-index: 999999;

}

.dropdown:hover .dropdown-menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

.dropdown-menu li{
  list-style:none;
}

.dropdown-menu a{
  color:#111;
  display:block;
  padding:12px 20px;
  font-size:14px;
}

.dropdown-menu a:hover{
  background:#f4f4f4;
  opacity:1;
}

/* MOBILE ICON */

.menu-toggle{
  display:none;
  width:44px;
  height:44px;
  border:1px solid rgba(255,255,255,.35);
  border-radius:50%;
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:27px;
  cursor:pointer;
  line-height:1;
}

.mobile-btn{
  display:none;
}

/* HERO CONTENT */

.hero-content{
  padding-top:115px;
  max-width:980px;
}

.hero-small{
  font-size:15px;
  font-weight:600;
  display:inline-block;

  opacity:.95;
}

.hero-content h1{
  font-size:clamp(48px, 8vw, 95px);
  line-height:.95;
  font-weight:900;
  letter-spacing:-5px;
  margin:0 0 35px;color:#13cec5
}

.hero-bottom{
  display:flex;
  align-items:center;
  gap:34px;
}

.hero-stat{
  border-left:3px solid #fff;
  padding-left:22px;
  min-width:145px;
}

.hero-stat h3{
  font-size:42px;
  font-weight:900;
  margin:0;color:#fe9e2e
}

.hero-stat p{
  font-size:13px;
  line-height:1.5;
  margin:5px 0 0;
  text-transform:uppercase;
  opacity:.9;
}

.hero-text{
  max-width:470px;
}

.hero-text p{
  font-size:15px;
  line-height:1.8;
  opacity:.9;
  margin-bottom:22px;
}

.main-btn{
  display:inline-block;
  background:#193579;
  color:#fff;
  padding:14px 28px;
  border-radius:3px;
  font-weight:800;
  font-size:30px;
  text-decoration:none;
}



/* MOBILE */

@media(max-width:991px){

  .hero-growth{
    min-height:100vh;
  }

  .hero-content{
    justify-content:center;
    padding-top:30px;
    padding-bottom:120px;z-index: 1;
  }

  .menu-toggle{
    display:flex;
    align-items:center;
    justify-content:center;
  }

  .desktop-btn{
    display:none;color:#fff
  }

  .nav-links{
    position:absolute;
    top:72px;
    left:0;
    width:100%;
    background:#182126;
    flex-direction:column;
    align-items:flex-start;
    gap:0;
    padding:18px;
    border-radius:16px;
    opacity:0;
    visibility:hidden;
    transform:translateY(-15px);
    transition:.3s;
    box-shadow:0 25px 60px rgba(0,0,0,.35);
  }

  .nav-links.active{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
  }

  .nav-links li{
    width:100%;
  }

  .nav-links a{
    width:100%;
    display:flex;
    justify-content:space-between;
    padding:14px 10px;
    border-bottom:1px solid rgba(255,255,255,.08);
  }

  .dropdown-menu{
    position:static;
    opacity:1;
    visibility:visible;
    transform:none;
    display:none;
    min-width:100%;
    margin-top:4px;
    padding:8px 0;
    background:#202b31;
    border-radius:10px;
    box-shadow:none;
  }

  .dropdown.active .dropdown-menu{
    display:block;
  }

  .dropdown-menu a{
    color:#fff;
    padding:12px 18px;
    border-bottom:none;
  }

  .mobile-btn{
    display:block;
    margin-top:12px;
  }

  .mobile-btn .nav-btn{
    width:100%;
    background:#fff;
    color:#111;
    border-bottom:none;
  }

  .hero-content{
    padding-top:90px;
  }

  .hero-content h1{
    letter-spacing:-2px;
  }

  .hero-bottom{
    flex-direction:column;
    align-items:flex-start;
  }
}

@media(max-width:575px){

  .hero-growth{
    min-height:600px;
  }

  .hero-nav{
    padding:18px 0;
  }

  .logo{
    font-size:19px;
  }

  .hero-content{
    padding-top:70px;
  }

  .hero-content h1{
    font-size:56px;
  }

  .hero-small{
    font-size:13px;
  }

  .hero-text p{
    font-size:14px;
  }

  .hero-dots{
    display:none;
  }
}
/* EXTRA HERO DESIGN */

.hero-growth::before{
  content:"";
  position:absolute;
  width:420px;
  height:420px;
  right:-120px;
  bottom:-120px;
  border-radius:50%;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.18);
  z-index:2;
}

.hero-offer-card{
  position:absolute;
  right:8%;
  bottom:110px;
  z-index:6;
  width:210px;
  padding:24px 22px;
  border-radius:24px;
  background:rgba(255,255,255,.12);
  backdrop-filter:blur(14px);
  border:1px solid rgba(255,255,255,.25);
  color:#fff;
  box-shadow:0 25px 60px rgba(0,0,0,.35);
  animation:floatCard 4s ease-in-out infinite;
}

.hero-offer-card span{
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:1px;
  opacity:.85;
}

.hero-offer-card strong{
  display:block;
  font-size:42px;
  line-height:1;
  margin:10px 0;
}

.hero-offer-card small{
  font-size:14px;
  line-height:1.5;
}

.hero-service-tags{
  position:absolute;
  left:5%;
  bottom:34px;
  z-index:6;
  display:flex;
  gap:12px;
  flex-wrap:wrap;
}

.hero-service-tags span{
  padding:10px 18px;
  border-radius:50px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.22);
  color:#fff;
  font-size:13px;
  font-weight:700;
  backdrop-filter:blur(10px);
}

.hero-circle-text{
  position:absolute;
  right:18%;
  top:190px;
  z-index:6;
  width:130px;
  height:130px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.35);
  display:flex;
  align-items:center;
  justify-content:center;
  animation:spinCircle 12s linear infinite;
}

.hero-circle-text span{
  width:90px;
  height:90px;
  font-size:11px;
  text-align:center;
  display:flex;
  align-items:center;
  justify-content:center;
  line-height:1.4;
}

@keyframes floatCard{
  0%,100%{
    transform:translateY(0);
  }
  50%{
    transform:translateY(-16px);
  }
}

@keyframes spinCircle{
  from{
    transform:rotate(0deg);
  }
  to{
    transform:rotate(360deg);
  }
}

@media(max-width:991px){
  .hero-offer-card{
    right:5%;
    bottom:70px;
    width:185px;
  }

  .hero-offer-card strong{
    font-size:34px;
  }

  .hero-circle-text{
    display:none;
  }

  .hero-service-tags{
    left:5%;
    bottom:22px;
  }
}

@media(max-width:575px){
  .hero-offer-card{
    position:relative;
    right:auto;
    bottom:auto;
    margin:35px auto 20px;
  }

  .hero-service-tags{
    position:relative;
    left:auto;
    bottom:auto;
    padding:0 5%;
    margin-bottom:25px;
  }
}

/* =========================
   ABOUT SECTION
========================= */

.about-modern{
  padding:110px 0;
  background:#fff;
  position:relative;
}

.about-images{
  position:relative;
  min-height:500px;
}

.about-img{
  overflow:hidden;
  border-radius:18px;
}

.about-img img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:.5s;
}

.about-img:hover img{
  transform:scale(1.05);
}

/* BIG IMAGE */

.about-img-big{
  width:58%;
  height:430px;
}

/* SMALL IMAGE */

.about-img-small{
  position:absolute;
  right:20px;
  top:70px;
  width:42%;
  height:320px;
  border:10px solid #fff;
  box-shadow:0 25px 60px rgba(0,0,0,.12);
}

/* PLAY BOX */

.play-box{
  position:absolute;
  left:35%;
  bottom:35px;

  background:#193579;
  color:#fff;

  padding:16px 22px;

  border-radius:14px;

  display:flex;
  align-items:center;
  gap:14px;

  box-shadow:0 20px 50px rgba(0,0,0,.2);
}

.play-box a{
  width:52px;
  height:52px;
  border-radius:50%;
  background:#13cec5;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-size:18px;
}

.play-box span{
  font-size:14px;
  font-weight:700;
}

/* CONTENT */

.about-content{
  padding-left:20px;
}

.about-tag{
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:1px;
  color:#13cec5;
  font-weight:700;
  display:inline-block;
  margin-bottom:15px;
}

.about-content h2{
  font-size:48px;
  line-height:1.1;
  font-weight:800;
  color:#193579;
  margin-bottom:22px;
}

.about-content p{
  font-size:16px;
  line-height:1.9;
  color:#666;
  margin-bottom:30px;
}

/* INFO */

.about-info{
  display:flex;
  flex-direction:column;
  gap:22px;
  margin-bottom:35px;
}

.about-info-item{
  display:flex;
  align-items:center;
  gap:18px;
}

.about-icon{
  width:55px;
  height:55px;
  border-radius:50%;
  background:#f3f7f8;
  color:#13cec5;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:20px;
  font-weight:700;
}

.about-info-item h5{
  margin:0;
  font-size:18px;
  color:#111c22;
}

.about-info-item span{
  font-size:14px;
  color:#777;
}

/* BUTTON */

.about-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  padding:14px 28px;

  background:#fe9e2e;
  color:#fff;

  border-radius:4px;

  text-decoration:none;
  font-weight:700;

  transition:.3s;
}

.about-btn:hover{
  background:#13cec5;
  color:#fff;
}

/* MOBILE */

@media(max-width:991px){

  .about-modern{
    padding:80px 0;
  }

  .about-images{
    min-height:auto;
  }

  .about-img-big{
    width:100%;
    height:400px;
  }

  .about-img-small{
    position:relative;
    width:80%;
    height:280px;
    top:-60px;
    right:auto;
    left:40px;
  }

  .play-box{
    left:20px;
    bottom:-10px;
  }

  .about-content{
    padding-left:0;
  }

  .about-content h2{
    font-size:38px;
  }

}

@media(max-width:575px){

  .about-content h2{
    font-size:32px;
  }

  .about-img-big{
    height:300px;
  }

  .about-img-small{
    width:85%;
    height:220px;
    left:20px;
  }

  .play-box{
    padding:12px 15px;
  }

  .play-box a{
    width:45px;
    height:45px;
    font-size:15px;
  }

}
.services-list-section{
  padding:110px 0;
  background:#eafdfa;
}

.services-head{
  margin-bottom:45px;
}

.services-head span{
  font-size:12px;
  text-transform:uppercase;
  color:#13cec5;
  font-weight:700;
  letter-spacing:1px;
}

.services-head h2{
  font-size:42px;
  font-weight:800;
  color:#193579;
  margin-top:10px;
}

.services-list{
  max-width:860px;
  margin:auto;
  display:flex;
  flex-direction:column;
  gap:18px;
}

.service-row{
  display:grid;
  grid-template-columns:70px 210px 1fr 48px;
  align-items:center;
  gap:20px;
  padding:22px 24px;
  background:#fff;
  transition:.3s;
}

.service-row:hover{
  transform:translateX(8px);
  background:#eef8f7;
}

.service-icon{
  width:48px;
  height:48px;
  border-radius:50%;
  background:#fff;
  color:#13cec5;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:24px;
}

.service-row h4{
  font-size:17px;
  color:#182126;
  margin:0;
}

.service-row p{
  font-size:14px;
  line-height:1.7;
  color:#666;
  margin:0;
}

.service-row a{
  width:42px;
  height:42px;
  background:#193579;
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-size:22px;
  transition:.3s;
}

.service-row a:hover{
  background:#13cec5;
}

.service-dark{
  background:
    linear-gradient(rgba(24,33,38,.82), rgba(24,33,38,.82)),
    url("images/carpet-service.jpg") center/cover no-repeat;
}

.service-dark h4,
.service-dark p{
  color:#fff;
}

@media(max-width:768px){
  .service-row{
    grid-template-columns:1fr;
    text-align:left;
  }

  .services-head h2{
    font-size:32px;
  }
}


/*======================*/

.work-process{
    padding:110px 0;
    background:#193579;
    color:#fff;
    overflow:hidden;
}

.work-tag{
    color:#13cec5;
    font-size:13px;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:1px;
}

.work-process h2{
    font-size:46px;
    font-weight:800;
    margin:15px 0 40px; color:#fff
}

.work-items{
    display:flex;
    flex-direction:column;
    gap:25px;
}

.work-box{
    display:flex;
    align-items:center;
    gap:20px;

    padding:25px;

    background:#fff;

    border:1px solid rgba(255,255,255,.08);

    border-radius:15px;

    transition:.4s; color: #193579;
}

.work-box:hover{

transform:translateX(10px);

background:#fff;

}

.work-box.active{

background:#ffffff;

}

.work-number{

width:65px;
height:65px;

border-radius:50%;

background:#13cec5;

display:flex;
align-items:center;
justify-content:center;

font-size:20px;
font-weight:700;

flex-shrink:0;

}

.work-content h4{

margin-bottom:10px;
font-size:22px; color:#fe9e2e

}

.work-content p{

margin:0;
line-height:1.8;
opacity:.8; color: #193579;

}

.work-image{

position:relative;
text-align:center;

}

.work-image img{

width:100%;
max-width:400px;

height:550px;

object-fit:cover;

border-radius:20px;

box-shadow:
0 30px 70px rgba(0,0,0,.35);

}

/* MOBILE */

@media(max-width:991px){

.work-process{

text-align:center;

}

.work-image{

margin-top:50px;

}

.work-box{

text-align:left;

}

}

@media(max-width:575px){

.work-process h2{

font-size:35px;

}

.work-box{

padding:18px;

}

.work-number{

width:55px;
height:55px;

font-size:18px;

}

}

/*====================*/

.projects-section{
padding:110px 0;
background:#fff;
}

.project-head{
margin-bottom:60px;
}

.project-head span{

font-size:13px;
color:#13cec5;
font-weight:700;
text-transform:uppercase;
letter-spacing:1px;

}

.project-head h2{

font-size:45px;
font-weight:800;
margin-top:10px;
color:#193579;

}

.project-image{

overflow:hidden;
border-radius:15px;

}

.project-image img{

width:100%;
height:680px;
object-fit:cover;

transition:.5s;

}

.project-image:hover img{

transform:scale(1.08);

}

.project-card{

background:#193579;
color:#fff;

padding:50px;

height:100%;

display:flex;
flex-direction:column;
justify-content:center;

}

.project-icon{

width:65px;
height:65px;

border-radius:50%;

background:rgba(255,255,255,.08);

display:flex;
align-items:center;
justify-content:center;

font-size:28px;

margin-bottom:25px;

}

.project-card h3{

font-size:35px;
margin-bottom:20px;

}

.project-card p{

line-height:1.9;
opacity:.8;
margin-bottom:30px;

}

.project-btn{

display:inline-block;

padding:14px 25px;

background:#13cec5;
color:#fff;

text-decoration:none;
font-weight:700;

border-radius:4px;

width:fit-content;

}

.project-nav{

display:flex;
justify-content:center;
gap:15px;

margin-top:35px;

}

.project-nav button{

width:50px;
height:50px;

border:none;
background:#f4f4f4;

cursor:pointer;

font-size:22px;

transition:.3s;

}

.project-nav button:hover{

background:#13cec5;
color:#fff !important;

}


/* MOBILE */

@media(max-width:991px){

.project-card{

margin-top:30px;

}

.project-card h3{

font-size:30px;

}

}

@media(max-width:575px){

.project-head h2{

font-size:34px;

}

.project-card{

padding:30px;

}

.project-image img{

height:320px;

}

}

.pricing-section{
padding:110px 0;
background:#fff;
}

.pricing-head{
margin-bottom:60px;
}

.pricing-head span{
font-size:13px;
color:#13cec5;
font-weight:700;
text-transform:uppercase;
}

.pricing-head h2{
font-size:45px;
font-weight:800;
margin-top:10px;
color:#182126;
}

.price-card{

padding:40px;
background:#fff;

border:1px solid #eee;

transition:.4s;

text-align:center;

position:relative;
}

.price-card:hover{

transform:translateY(-10px);

box-shadow:
0 20px 60px rgba(0,0,0,.08);

}

.featured{

background:#193579;
color:#fff;
transform:scale(1.05);

}



.price-top h3{

font-size:50px;
margin:15px 0; color: #fff;

}

.price-card h4{

margin-bottom:25px; color:#fff

}



.price-btn{

display:inline-block;
padding:14px 30px;

background:#13cec5;
color:#fff;

text-decoration:none;
font-weight:700;

}

@media(max-width:991px){

.featured{

transform:none;

}

}




.price-btn:hover{color:#fff}

/*====================*/

.testimonial-section{
padding:110px 0;
background:#fff;
}

.testimonial-head{
margin-bottom:60px;
}

.testimonial-head span{

font-size:13px;
font-weight:700;
text-transform:uppercase;
color:#13cec5;

}

.testimonial-head h2{

font-size:45px;
font-weight:800;
margin-top:10px;
color:#182126;

}

.testimonial-wrapper{

display:flex;
align-items:center;
gap:50px;

max-width:1000px;
margin:auto;

}

.testimonial-image{

width:260px;
height:260px;

flex-shrink:0;

overflow:hidden;

border-radius:15px;
}

.testimonial-image img{

width:100%;
height:100%;
object-fit:cover;

}

.testimonial-content{

flex:1;
position:relative;

}

.quote-icon{

font-size:70px;
color:#13cec5;
line-height:1;
margin-bottom:10px;

}

.testimonial-content h4{

font-size:28px;
margin-bottom:20px;
color:#182126;

}

.testimonial-content p{

line-height:2;
font-size:16px;
color:#666;

margin-bottom:25px;

}

.client h5{

margin:0;
font-size:18px;

}

.client span{

color:#777;

}

.testimonial-nav{

display:flex;
justify-content:center;
gap:15px;
margin-top:40px;

}

.testimonial-nav button{

width:50px;
height:50px;

border:none;
background:#f4f4f4;

font-size:20px;
cursor:pointer;

transition:.3s;

}

.testimonial-nav button:hover{

background:#13cec5;
color:#fff;

}

@media(max-width:991px){

.testimonial-wrapper{

flex-direction:column;

text-align:center;

}

}

@media(max-width:575px){

.testimonial-head h2{

font-size:34px;

}

}

.testimonial-slide{
  display:none;
}

.testimonial-slide.active{
  display:block;
}

.testimonial-slide{
display:none;
animation:fade .5s;
}

.testimonial-slide.active{
display:block;
}

@keyframes fade{

from{
opacity:0;
transform:translateY(20px);
}

to{
opacity:1;
transform:translateY(0);
}

}


.contact-section{
padding:100px 0;
background:#eafdfa;
overflow:hidden;
}

.section-title span{
color:#E67E22;
font-weight:700;
}

.section-title h2{
font-size:45px;
font-weight:800;
margin:15px 0;
}

.map-box{
position:relative;
height:450px;
border-radius:30px;
overflow:hidden;
box-shadow:0 25px 60px rgba(0,0,0,.15);
}

.map-box iframe{
width:100%;
height:100%;
border:0;
filter:grayscale(30%);
}

.floating-contact{
position:absolute;
right:40px;
top:50%;
transform:translateY(-50%);
width:520px;
padding:30px;
border-radius:25px;
background:rgba(255,255,255,.95);
backdrop-filter:blur(15px);
box-shadow:0 15px 35px rgba(0,0,0,.15);
}

.contact-item{
display:flex;
gap:15px;
margin-top:25px;
}

.icon{
width:50px;
height:50px;
display:flex;
align-items:center;
justify-content:center;
border-radius:50%;
background:#0B3D78;
color:#fff;
}

.contact-left{
padding-right:40px;
}

.mini-tag{
background:#E67E22;
padding:8px 15px;
border-radius:30px;
color:#fff; margin-bottom: 3%;
}

.contact-features div{
margin-top:15px;
font-weight:600;
}

/* RESET */
*, *::before, *::after {
    box-sizing: border-box;
}

/* FORM WRAPPER */
form.CUS {
    max-width: 900px;
    width: 100%;
    margin: 20px auto;
    padding: 20px;
    background: #f9fafb;
    border: 1px solid #ddd;
    border-radius: 10px;
    font-family: system-ui, sans-serif;
}

/* FLEX FIELDSET */
form.CUS fieldset {
    display: flex;
    flex-wrap: wrap;
    border: none;
    padding: 0;
    margin: 0;
}

/* BASE BLOCK STYLE */
form.CUS fieldset > p {
    width: 100%;
    padding: 10px;
    margin: 0;
    font-size: 0.95rem;
    color: #444;
}

/* Universal input/select styling */
form.CUS input,
form.CUS select,
form.CUS textarea {
    width: 100%;
    padding: 10px;
    margin-top: 6px;
    border: 1px solid #ccc;
    border-radius: 6px;
    font-size: 1rem;
}

/* ===============================
   ROW 1: Name, Phone, Address
=============================== */
form.CUS fieldset > p:nth-of-type(1),
form.CUS fieldset > p:nth-of-type(2),
form.CUS fieldset > p:nth-of-type(3) {
    width: 33.333%;
}

/* ===============================
   ROW 2: City, State, Zip Code
=============================== */
form.CUS fieldset > p:nth-of-type(4),
form.CUS fieldset > p:nth-of-type(5),
form.CUS fieldset > p:nth-of-type(6) {
    width: 33.333%;
}

/* ===============================
   SERVICE NEEDED TEXTAREA
=============================== */
form.CUS fieldset > p:nth-of-type(7) {
    width: 100%;
}

/* ===============================
   SERVICE DATE (Month, Day, Year)
   â†’ ALL 3 IN ONE ROW
=============================== */

/* Make the 8th <p> (Service Date block) a flex row */
form.CUS fieldset > p:nth-of-type(8) {
    width: 100%;
    display: flex;
    flex-wrap: nowrap;
    gap: 10px;
    align-items: flex-start;
}

/* Month, Day, Year = 3 equal flex columns */
form.CUS fieldset > p:nth-of-type(8) select#service_date,
form.CUS fieldset > p:nth-of-type(8) select#service_day,
form.CUS fieldset > p:nth-of-type(8) input#service_year {
    flex: 1 1 0;
    width: auto;          /* flex handles width */
    margin-top: 6px;
}

/* ===============================
   SERVICE TIME (Full width)
=============================== */
form.CUS fieldset > p:nth-of-type(9) {
    width: 100%;
}

/* ===============================
   SUBMIT BUTTON (Full width)
=============================== */
form.CUS fieldset > p:nth-of-type(10) {
    width: 100%;
}

form.CUS input[type="submit"] {
    width: 100%;
    background: #193579;
    color: #fff;
    border: none;
    padding: 12px;
    border-radius: 6px;
    font-size: 1rem;
    font-weight: 600;
    cursor: pointer;
}

form.CUS input[type="submit"]:hover {
    background: #E67E22;
}

/* Hide honeypot */
form.CUS input.subject {
    display: none;
}

/* ===============================
   MOBILE RESPONSIVE (stack fields)
=============================== */
@media (max-width: 600px) {

    form.CUS fieldset > p {
        width: 100%;
        padding: 6px 0;
    }

    /* Month, Day, Year full width stacked on mobile */
    form.CUS fieldset > p:nth-of-type(8) {
        flex-direction: column;
        gap: 6px;
    }

    form.CUS fieldset > p:nth-of-type(8) select#service_date,
    form.CUS fieldset > p:nth-of-type(8) select#service_day,
    form.CUS fieldset > p:nth-of-type(8) input#service_year {
        flex: none;
        width: 100% !important;
    }
/* ===============================
   ROW 1: Name, Phone, Address
=============================== */
form.CUS fieldset > p:nth-of-type(1),
form.CUS fieldset > p:nth-of-type(2),
form.CUS fieldset > p:nth-of-type(3) {
    width: 100%;
}

/* ===============================
   ROW 2: City, State, Zip Code
=============================== */
form.CUS fieldset > p:nth-of-type(4),
form.CUS fieldset > p:nth-of-type(5),
form.CUS fieldset > p:nth-of-type(6) {
    width: 100%;
}
}
@media(max-width:991px){

.floating-contact{
position:relative;
right:auto;
top:auto;
transform:none;
margin:20px;
width:auto;
}

.contact-left{
padding-right:0;
margin-bottom:40px;
}

.section-title h2{
font-size:34px;
}

}


.carpet-restoration-section{
background:#f7fbff;
position:relative;
overflow:hidden;
}

.restoration-image{
position:relative;
border-radius:30px;
overflow:hidden;
box-shadow:0 25px 60px rgba(0,0,0,.12);
}

.restoration-image img{
width:100%;
height:100%;
object-fit:cover;
transition:.5s;
}

.restoration-image:hover img{
transform:scale(1.05);
}

.floating-badge{
position:absolute;
bottom:25px;
left:25px;
background:#0B3D78;
color:#fff;
padding:14px 22px;
border-radius:50px;
font-weight:700;
box-shadow:0 10px 30px rgba(0,0,0,.2);
}

.section-tag{
display:inline-block;
padding:8px 18px;
background:#E67E22;
color:#fff;
border-radius:30px;
font-size:14px;
font-weight:700;
margin-bottom:20px;
}

.restoration-content h2{
font-size:42px;
font-weight:800;
color:#0B3D78;
margin-bottom:25px;
line-height:1.2;
}

.restoration-content p{
font-size:16px;
line-height:1.9;
color:#555;
margin-bottom:20px;
}

.why-box{
margin-top:35px;
padding:35px;
background:#fff;
border-radius:25px;
box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.why-box h4{
font-size:28px;
font-weight:800;
margin-bottom:30px;
color:#0B3D78;
}

.why-item{
display:flex;
gap:18px;
margin-bottom:25px;
}

.why-icon{
min-width:50px;
height:50px;
border-radius:50%;
background:#0B3D78;
color:#fff;
display:flex;
align-items:center;
justify-content:center;
font-size:20px;
font-weight:700;
}

.why-item h5{
font-size:20px;
font-weight:700;
margin-bottom:8px;
color:#0F172A;
}

.why-item p{
margin:0;
font-size:15px;
line-height:1.8;
}

@media(max-width:991px){

.restoration-content h2{
font-size:34px;
}

.why-box{
padding:25px;
}

}


.footer-contact-strip{
padding:80px 0;
background:#0B3D78;
position:relative;
overflow:hidden;
}

.footer-info-card{
height:100%;
padding:35px 30px;
background:rgba(255,255,255,.05);
border:1px solid rgba(255,255,255,.08);
border-radius:25px;
backdrop-filter:blur(10px);
transition:.4s;
}

.footer-info-card:hover{
transform:translateY(-8px);
border-color:#E67E22;
}

.icon-box{
width:65px;
height:65px;
border-radius:18px;
background:#1565C0;
display:flex;
align-items:center;
justify-content:center;
font-size:28px;
margin-bottom:25px;
}

.footer-info-card h4{
color:#fff;
font-size:24px;
font-weight:800;
margin-bottom:15px;
}

.footer-info-card p,
.footer-info-card span{
color:#cbd5e1;
line-height:1.9;
font-size:15px;
}

.footer-info-card a{
display:block;
color:#fff;
text-decoration:none;
margin-bottom:10px;
font-weight:600;
transition:.3s;
word-break:break-word;
}

.footer-info-card a:hover{
color:#fff;
}

.hours{
margin-top:15px;
}

.zip-list{
padding:0;
margin:0;
list-style:none;
display:grid;
grid-template-columns:repeat(2,1fr);
gap:12px; 
}

.zip-list li{
background:rgba(255,255,255,.06);
padding:10px;
border-radius:12px;
text-align:center;
color:#fff;
font-weight:300; font-size: 15px;
}

@media(max-width:991px){

.footer-contact-strip{
padding:60px 0;
}

.footer-info-card{
padding:30px 25px;
}

}

.copyright-section{
background:#13cec5;
padding:22px 0;
border-top:1px solid rgba(255,255,255,.08);
}

.copyright-wrapper{
display:flex;
align-items:center;
justify-content:space-between;
gap:20px;
flex-wrap:wrap;
}

.copyright-wrapper p{
margin:0;
color:#0B3D78;
font-size:15px;
}

.copyright-wrapper a{
color:#0B3D78;
text-decoration:none;
font-weight:700;
transition:.3s;
}

.copyright-wrapper a:hover{
color:#fff;
}

@media(max-width:768px){

.copyright-wrapper{
justify-content:center;
text-align:center;
}

}