@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,200..800;1,200..800&display=swap");

/* Roboto */
/* @import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&display=swap'); */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  scroll-behavior: smooth;
}

body {
  font-family: "Plus Jakarta Sans", sans-serif;
  background: #f2fcfe !important;
}

:root {
  --primary-color: #004976;
  --secondary-color: #ffc513;
  --light: #b5eefe;
  --black: #000;
  --white: #fff;
  --font-family: "Plus Jakarta Sans", sans-serif;
  --transition: all 0.3s ease;
}

li {
  list-style: none;
}

a {
  text-decoration: none !important;
}

p {
  line-height: 1.5rem;
  /*margin-bottom: 0 !important;*/
}
.resi-content{
    
    width: 100%;
    padding: 15px 60px 0 60px;
    margin-bottom: -30px;
}
.resi-content h3{
    font-size: 1.6rem;
    margin-bottom: 10px;
}
.resi-content p{
    padding: 6px 0 0 0;
    margin-bottom: 15px;
}
.resi-content ul{
    margin-left: 25px;
}
.resi-content ul li{
    list-style: disc;
}



/* =========================header=================== */

/* header {
    width: 100%;
    position: relative;
  
} */

.top-header {
  width: 100%;
  display: flex;
  justify-content: space-between;
  background-color: var(--primary-color);
  color: var(--white);
  padding: 12px 65px;
  position: relative;
  z-index: 10;
}

.top-header-left,
.top-header-right {
  display: flex;
  align-items: center;
}

.top-header-left {
  width: 70%;
}

.top-header-left-details {
  display: flex;
  align-items: center;
  gap: 30px;
}

.top-details-box {
  display: flex;
  align-items: center;
}

.top-details-box i {
  font-size: 18px;
  margin-right: 10px;
  color: var(--secondary-color);
}

.top-details-box p {
  margin-top: -4px;
  font-size: 1rem;
}

.top-details-box a {
  color: var(--white);
  font-size: 1rem;
}

.top-header-right {
  width: 30%;
  justify-content: flex-end;
}

.top-header-right-social {
  display: flex;
  align-items: center;
  gap: 20px;
}

.top-header-right-social a {
  font-size: 1.2rem;
  border-right: 1px solid #ccc;
  padding-right: 10px;
  transition: var(--transition);
}

.top-header-right-social a {
  color: var(--white);
  transition: var(--transition);
}

.top-header-right-social a:last-child {
  border-right: none;
}

.top-header-right-social a:hover {
  color: var(--secondary-color);
  margin-top: -3px;
}

.main-header {
  width: 100%;
  padding: 10px 65px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #fff;
  /* position: relative; */
  position: sticky;
  top: 0;
  z-index: 100000;
  box-shadow: 0 4px 3px rgba(0, 0, 0, 0.314);
}

.main-header-left {
  width: 15%;
}

.main-header-left-logo {
  width: 90px;
}

.main-header-left-logo img {
  width: 100%;
  height: auto;
}

.main-header-mid {
  width: 65%;
}

.main-header-menu ul {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 50px;
}

.main-header-menu ul li {
  position: relative;
  transition: var(--transition);
}

.main-header-menu ul li a {
  color: var(--black);
  font-size: 1.1rem;
  font-weight: 600;
  transition: var(--transition);
}

.main-header-menu ul li i {
  margin-left: 10px;
  color: var(--black);
  transition: var(--transition);
}

.main-header-menu ul li:hover > i {
  transform: rotate(180deg);
}

.main-header-menu ul li::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 3px;
  background-color: var(--primary-color);
  bottom: -5px;
  left: 0;
  transition: transform 0.3s ease-in-out;
  transform: scaleX(0);
  transform-origin: right;
}

.main-header-menu ul li:hover::before {
  transform-origin: left;
  transform: scaleX(1);
}

.has-menu {
  position: relative;
}

.has-menu:hover > .submenu,
.has-menu .submenu:hover {
  opacity: 1;
  visibility: visible !important;
}

.has-menu:hover > .submenu {
  opacity: 1;
  position: absolute;
  top: 40px;
  left: -20px;
  background: var(--white);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  border-radius: 5px;
  padding: 5px 0 0 0;
  width: 300px;
  z-index: 100;
}

.has-menu:hover > .submenu li {
  padding: 10px 20px;
  border-bottom: 1px solid #eee;
}

.submenu {
  position: absolute;
  top: 40px;
  left: -20px;
  background: var(--white);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  border-radius: 5px;
  padding: 5px 0 0 0;
  width: 300px;
  z-index: 100;
  opacity: 0;
  visibility: hidden !important;
  transition:
    opacity 0.3s ease,
    visibility 0.3s ease;
  display: block !important;
}

.main-header-right {
  width: 20%;
  display: flex;
  justify-content: flex-end;
}

.main-header-right-button a {
  padding: 12px 25px;
  background: var(--primary-color);
  color: var(--white);
  border-radius: 5px;
  font-weight: 700;
  transition: var(--transition);
      display: flex;
    justify-content: center;
    align-items: center;
}

.main-header-right-button a:hover {
  background: var(--secondary-color);
  color: var(--black);
}

.main-header-right-button a img{
    height: 30px;
        padding-right: 8px;

}
.menu-icon-div {
  width: 40px;
  height: 40px;
  display: none;
}

.menu-icon-div img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ======================= Side-bar============== */
.side-menu-container {
  width: 100%;
  position: fixed;
  background: linear-gradient(
    90deg,
    rgba(0, 73, 118, 0.87) 0%,
    rgba(0, 73, 118, 0.7) 50%,
    rgba(0, 73, 118, 0.414) 100%
  );
  top: 0;
  left: 0px;
  z-index: 1;
  height: 100vh;
  backdrop-filter: blur(8px);
  display: flex;
  justify-content: end;
  align-items: start;
  box-shadow: inset 0 4px 10px rgba(0, 0, 0, 0.15);
  overflow: hidden;
  transform: translateX(100%);
  transition: all 0.5s ease-in-out;
}

.side-menu-container.active {
  transform: translateX(0);
}

.side-menu-container aside {
  width: 50%;
  height: 100%;
  background-color: var(--white);
  padding: 20px;
  overflow-y: scroll;
}

.side-menu-container aside .heading {
  width: 100%;
  height: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.side-menu-container aside .heading img {
  width: 40px;
}

.side-menu-container aside .heading a img {
  width: 80px;
  height: 100%;
}

.side-menu-container aside ul {
  margin-top: 20px;
  display: flex;
  justify-content: space-evenly;
  align-items: stretch;
  flex-direction: column;
  gap: 10px;
  /* border: 1px solid; */
  height: 45vh;
}

.side-menu-container aside ul li a {
  color: var(--primary-color);
  font-size: 17px;
  font-weight: 600;
  letter-spacing: 0.04rem;
}

.side-menu-container aside ul .has-menu a {
  margin-right: 60px;
}

.side-menu-container aside ul li .submenu-list {
  width: 100%;
  /* max-height: 200px; */
  max-height: 0px;
  border-left: 5px solid var(--secondary-color);
  padding: 0px 15px;
  overflow: hidden;
  transition: all 0.6s ease-in-out;
  margin-top: 0px;
}

.side-menu-container aside ul li .submenu-list.active {
  max-height: 200px;
  margin: 10px 0px;
}

/* ======================Hero-banner================= */

#hero-banner {
  position: relative;
  height: 600px;
  width: 100%;
  overflow: hidden;
  color: #fff;
}

.hero-container {
  position: relative;
  height: 100%;
  width: 100%;
}

/* Slider Backgrounds */
.slider-backgrounds {
  position: absolute;
  width: 100%;
  height: 100%;
}

@keyframes SlideCome {
  0% {
    transform: scale(1);
  }

  100% {
    transform: scale(1.4);
  }
}

.slide-bg {
  position: absolute;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  opacity: 0;
  transition: opacity transform 1s ease-in-out;
  z-index: 1;
  animation: SlideCome 20s ease-in-out infinite alternate;
  animation-fill-mode: forwards;
}

.slide-bg.active {
  opacity: 1;
  z-index: 2;
}

/* Overlay Content */
.hero-overlay {
  position: relative;
  z-index: 3;
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  background: linear-gradient(
    90deg,
    rgba(0, 73, 118, 0.897) 0%,
    rgba(0, 73, 118, 0.7) 50%,
    rgba(0, 73, 118, 0.414) 100%
  );
  padding: 15px 5% 0 5%;
}

.hero-content {
  width: 60%;
  padding-right: 40px;
}

.hero-content h1 {
  font-size: 3rem;
  font-weight: 700;
  margin-bottom: 20px;
  line-height: 1.2;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.subtitle {
  font-size: 1.2rem;
  margin-bottom: 30px;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}

.benefits-list {
  margin-bottom: 40px;
}

.benefits-list li {
  margin-bottom: 15px;
  font-size: 1.1rem;
  display: flex;
  align-items: center;
}

.benefits-list i {
  color: var(--secondary-color);
  margin-right: 10px;
  font-size: 1.3rem;
}

.hero-content-btns {
  display: flex;
  gap: 20px;
}

.hero-content-btns a {
  background-color: var(--secondary-color);
  color: var(--primary-color);
  padding: 15px 30px;
  border-radius: 50px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  transition: all 0.3s ease;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

.hero-content-btns a:nth-child(2) {
  border: 2px solid var(--secondary-color);
  color: var(--white);
  background: none;
  backdrop-filter: blur(5px);
}

.hero-content a:hover {
  background-color: #ffd700;
  transform: translateY(-3px);
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3);
  color: var(--black);
}

/* Hero Form */
.hero-form {
  width: 50%;
  text-align: right;
}

.form-container {
  width: 65%;
  margin: 0 auto;
  background: white;
  border-radius: 10px;
  padding: 30px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
  float: right;
}

.form-container h3 {
  color: var(--primary-color);
  font-size: 1.5rem;
  margin-bottom: 20px;
  text-align: center;
}

.form-container .form-group-2:nth-child(2) {
  position: relative;
}

.form-container .form-group-2:nth-child(2) img {
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translateY(-50%);
}

.form-group-2 {
  margin-bottom: 13px !important;
}

.form-group-2 input::placeholder {
  font-weight: 500;
  font-style: italic;
}

.form-group-2 textarea::placeholder {
  font-weight: 500;
  font-style: italic;
}

.form-group-2 input,
.form-group-2 select {
  width: 100%;
  padding: 10px 15px !important;
  border: 1px solid #ddd;
  border-radius: 5px;
  font-size: 1rem;
  transition: all 0.3s ease;
}

.form-container .form-group-2:nth-child(2) input {
  padding-left: 50px !important;
}

.form-group input:focus,
.form-group select:focus {
  border-color: var(--primary-color);
  outline: none;
  box-shadow: 0 0 0 3px rgba(0, 73, 118, 0.1);
}

.submit-btn {
  width: 100%;
  padding:8px 15px;
  background-color: var(--primary-color);
  color: white;
  border: none;
  border-radius: 5px;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
   width: fit-content;
}

.submit-btn:hover {
  background-color: var(--secondary-color);
  color: var(--black);
}

.form-note {
  font-size: 0.8rem;
  color: #666;
  text-align: center;
  margin-top: 15px;
}

/* Slider Controls */
.slider-controls {
  position: absolute;
  bottom: 40px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 4;
  display: flex;
  align-items: center;
  gap: 20px;
}

.slider-prev,
.slider-next {
  background: rgba(255, 255, 255, 0.2);
  border: none;
  color: white;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s ease;
}

.slider-prev:hover,
.slider-next:hover {
  background: rgba(255, 255, 255, 0.4);
}

.slider-dots {
  display: flex;
  gap: 10px;
}

.dot {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.4);
  cursor: pointer;
  transition: all 0.3s ease;
}

.dot.active {
  background: white;
  transform: scale(1.2);
}

/* =================about-us================== */

#about {
  width: 100%;
  padding: 50px 0;
  /* background-image: url('../images/bg-element.jpg'); */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  /* background-attachment: fixed; */
  position: relative;
}

#about::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(255, 255, 255, 0.688);
  z-index: 1;
}

.about-upper-box {
  width: 100%;
  padding: 10px 0;
  height: 100%;
  position: relative;
  z-index: 2;
}

.about-upper-box h5 {
  font-size: 1.2rem;
  color: #0e0e0e;
  letter-spacing: 3px;
}

.about-upper-box h2 {
  font-size: 2.5rem;
  color: var(--primary-color);
  margin-top: 10px;
  margin-bottom: 20px;
}

.right-upper {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.right-upper .exp {
  position: relative;
  font-size: 4rem;
  color: #dd6e00;
  font-weight: 700;
  margin-right: 20px;
  text-align: center;
  padding: 69px 18px !important;
  border-radius: 50%;
}

.right-upper .exp::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border: 3px dashed #eb943c;
  border-radius: 50%;
  animation: border-rotation 10s linear infinite;
}

@keyframes border-rotation {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.right-upper p:nth-child(2) {
  font-size: 1.2rem;
  color: #0e0e0e;
  line-height: 1.8rem;
}

.about-lower {
  width: 100%;
  padding: 10px 0;
  position: relative;
  z-index: 2;
}

.about-lower-box {
  padding: 10px 0;
}

.about-lower-image {
  width: 100%;
  height: 390px;
}

.about-lower-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 10px;
}

.about-lower-content {
  padding: 20px;
}

.about-lower-content p {
  font-size: 1rem;
  color: #0e0e0e;
  text-align: justify;
}

.about-lists {
  margin-top: 20px;
}

.about-lists li {
  font-size: 1rem;
  color: #0e0e0e;
  margin-bottom: 10px;
  margin-left: 20px;
  position: relative;
  list-style: circle;
}

.about-lower-btn {
  margin-top: 40px;
}

.about-lower-content a {
  background-color: var(--primary-color);
  font-weight: 600;
  padding: 10px 25px;
  transition: var(--transition);
  color: var(--white);
  border-radius: 5px;
}

.about-lower-content a:hover {
  background-color: var(--secondary-color);
  color: var(--black);
}

/* ======================services================= */

#services {
  padding: 50px 0;
  width: 100%;
  overflow: hidden;
}

.ac-element {
  text-align: center;
  margin: -80px auto 80px auto;
  height: 250px;
  width: 900px;
  display: flex;
  justify-content: center;
}

.ac-element img {
  width: 100%;
  height: 100%;
}

.section-upper {
  margin: 0 65px;
}

.section-upper-box {
  width: 100%;
  padding: 10px 0;
  height: 100%;
  text-align: center;
}

.section-upper-box h5 {
  font-size: 1.2rem;
  color: #0e0e0e;
  letter-spacing: 3px;
}

.section-upper-box h2 {
  font-size: 2.5rem;
  color: var(--primary-color);
  margin-top: 10px;
  margin-bottom: 20px;
}

.right-service-upper p {
  font-size: 1rem;
  color: #0e0e0e;
  text-align: right;
}

.right-service-upper {
  display: flex;
  flex-direction: column;
  align-items: end;
  justify-content: center;
}

.section-upper-box-btn {
  margin-top: 30px;
  display: flex;
  gap: 30px;
}

.section-upper-box-btn a {
  background-color: var(--primary-color);
  font-weight: 600;
  padding: 15px 25px;
  transition: var(--transition);
  color: var(--white);
  border-radius: 50px;
}

.section-upper-box-btn a:hover {
  background-color: var(--secondary-color);
  color: var(--black);
}

.services-below {
  width: 100%;
  padding: 40px 0 0 0;
  position: relative;
  z-index: 2;
}

.service-box {
  width: 100%;
  padding: 15px;
  background: #ffffff6e;
  border-radius: 5px;
  box-shadow: 0 0 5px 2px rgba(0, 0, 0, 0.1);
}

.service-image {
  width: 100%;
  height: 250px;
  border-radius: 5px;
}

.service-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 5px;
}

.service-box h3 {
  font-size: 1.5rem;
  color: var(--primary-color);
  margin: 15px 0 0 0;
  font-weight: 800;
}

.service-card-content {
  display: flex;
  width: 100%;
  padding: 15px 0;
}

.service-card-content p {
  width: 80%;
  font-size: 1rem;
  color: #0e0e0e;
}

.service-card-content a {
  width: 20%;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.service-card-content a i {
  font-size: 1.5rem;
  color: var(--white);
  transition: var(--transition);
  background: var(--primary-color);
  padding: 15px;
  border-radius: 50%;
  transform: rotate(-50deg);
}

.service-card-content a i:hover {
  background: var(--secondary-color);
  color: var(--black);
  transform: rotate(0deg);
}

/* ====================why-choose============== */

#why-choose {
  width: 100%;
  padding: 50px 0 0 0;
  /* background-image: url('../images/bg-element.jpg'); */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
  height: auto;
}

#why-choose::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(255, 255, 255, 0.688);
  z-index: 1;
}

.why-choose-box {
  width: 100%;
  /* padding: 10px 0; */
  height: 100%;
  position: relative;
  z-index: 2;
}

.why-choose-image {
  width: 90%;
  height: 750px;
}

.why-choose-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
  border-radius: 10px;
}

.why-choose-content {
  width: 100%;
  padding: 20px 0;
}

.why-choose-content h5 {
  font-size: 1.2rem;
  color: #0e0e0e;
  letter-spacing: 3px;
}

.why-choose-content h2 {
  font-size: 2.5rem;
  color: var(--primary-color);
  margin-top: 10px;
  margin-bottom: 20px;
}

.why-choose-content p {
  font-size: 1rem;
  color: #0e0e0e;
  margin-bottom: 20px;
  text-align: justify;
}

.why-choose-lists li {
  font-size: 1rem;
  color: #0e0e0e;
  margin-bottom: 10px;
  position: relative;
  padding-left: 20px;
}

.why-choose-lists li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 5px;
  width: 10px;
  height: 10px;
  background-color: var(--secondary-color);
  border-radius: 50%;
}

.why-choose-btn {
  margin-top: 40px;
  display: flex;
  gap: 30px;
}

.why-choose-btn a {
  background-color: var(--primary-color);
  font-weight: 600;
  padding: 15px 25px;
  transition: var(--transition);
  color: var(--white);
  border-radius: 50px;
}

.why-choose-btn a:hover {
  background-color: var(--secondary-color);
  color: var(--black);
}

/* ======================other-services================= */

#other-services {
  width: 100%;
  padding: 50px 0 20px 0;
  background: #f2fcfe;
}

.new-head h5 {
  color: #000000;
}

.new-head h2 {
  color: #000000;
}

.new-head p {
  color: #000000;
}

.new-btn a {
  background-color: var(--secondary-color);
  font-weight: 600;
  padding: 15px 25px;
  transition: var(--transition);
  color: var(--black);
  border-radius: 50px;
}

.new-btn a:hover {
  background-color: var(--white);
  color: var(--primary-color);
}

.other-service-below {
  width: 100%;
  padding: 30px 0;
}

.other-service-card {
  width: 100%;
  padding: 20px;
  background: #ffffff3d;
  border-radius: 10px;
  border: 1px solid #cccccca1;
  margin-bottom: 20px;
  height: 350px;
  transition: var(--transition);
}

.other-service-card i {
  font-size: 2rem;
  background: var(--light);
  padding: 15px;
  border-radius: 50%;
  margin-bottom: 10px;
}

.other-service-card h3 {
  font-size: 1.3rem;
  color: #000;
  margin: 20px 0 25px 0;
}

.other-service-card p {
  font-size: 1rem;
  color: #0e0e0e;
  margin-bottom: 20px;
}

.other-service-card a {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.other-service-card a i {
  font-size: 1.5rem;
  color: var(--white);
  transition: var(--transition);
  background: var(--primary-color);
  padding: 15px;
  border-radius: 50%;
  transform: rotate(-50deg);
}

.other-service-card a i:hover {
  background: var(--secondary-color);
  color: var(--black);
  transform: rotate(0deg);
}

.contact-card {
  width: 100%;
  border-radius: 10px;
  overflow: hidden;
  background-image: url("../images/service-contact-bg.jpg");
  position: relative;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border: none;
}

.contact-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0) 0.19%,
    rgba(32, 58, 79, 0.8) 55.8%
  );
}

.contact-content {
  position: relative;
  z-index: 2;
  padding: 20px;
  color: #fff;
  text-align: right;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  align-items: flex-end;
}

.contact-content p {
  font-size: 1.2rem;
  margin-bottom: 10px;
  font-weight: 600;
  color: var(--secondary-color);
}

.contact-content h2 {
  font-size: 2rem;
  margin-bottom: 20px;
}

.contact-content a {
  background-color: var(--secondary-color);
  color: var(--black);
  padding: 15px 25px;
  border-radius: 50px;
  font-weight: 600;
  transition: var(--transition);
  width: fit-content;
}

.contact-content a:hover {
  background-color: var(--white);
  color: var(--primary-color);
}

/* ======================how-it-works================= */

#how-it-works {
  width: 100%;
  padding: 50px 0;
  background: #fff;
}

.work-upper-box {
  width: 100%;
  height: 100%;
  align-items: center;
  padding: 0 0 20px 0;
}

.work-upper-content h5 {
  font-size: 1.2rem;
  color: #0e0e0e;
  letter-spacing: 3px;
}

.work-upper-content h2 {
  font-size: 2.5rem;
  color: var(--primary-color);
  margin-top: 10px;
  margin-bottom: 20px;
}

.right-work-upper {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 100%;
  text-align: center;
  float: right;
}

.right-work-upper .review-xyz {
  font-size: 3rem;
  color: #234;
  margin-bottom: 10px;
}

.right-work-upper .review-xyz i {
  color: #edb600;
  font-size: 2rem;
}

.right-work-upper .clients {
  text-transform: uppercase;
  letter-spacing: 1px;
  line-height: 1.6;
}

.right-work-upper .clients p:first-child {
  font-size: 1.3rem;
  font-weight: 700;
  color: #234;
  margin-bottom: 5px;
}

.right-work-upper .clients p:last-child {
  font-size: 1.1rem;
  color: #0e0e0e;
}

.works-below {
  width: 100%;
  padding: 20px 0;
}

.works-below-box {
  width: 100%;
  padding: 10px;
}

.work-below-left {
  display: flex;
  width: 100%;
}

.work-below-left .works-below-text {
  width: 20%;
}

.works-below-text h2 {
  background: linear-gradient(
    90deg,
    rgba(113, 128, 150, 0.066) -15.97%,
    rgba(36, 41, 48, 0.136) 100%
  );
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  transform: rotate(-180deg) translateY(-2%);
  writing-mode: vertical-rl;
  transition: all 0.4s ease-in-out;
  font-size: 4rem;
  text-shadow: 0 0 5px 2px #ccc;
}

.work-below-left .works-below-image {
  width: 80%;
  height: 550px;
}

.work-below-left .works-below-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 10px;
}

.works-below-steps {
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 30px;
  margin-top: 50px;
}

.work-step {
  width: 100%;
  height: 100%;
  align-items: center;
  display: flex;
  gap: 20px;
  border-bottom: 2px solid #ccccccbd;
  padding-bottom: 20px;
}

.work-step-number {
  width: 21%;
  background: var(--primary-color);
  padding: 20px;
  border-radius: 5px;
}

.work-step-number p {
  color: #fff;
  font-size: 2.3rem;
  text-align: center;
}

.work-step-content h3 {
  font-size: 1.3rem;
  padding-bottom: 5px;
}

/* =====================web-content=============== */

.web-content {
  width: 100%;
  padding: 20px 0;
  background: #f8fdfe;
}

.web-content h3 {
  font-size: 1.6rem;
  color: var(--primary-color);
  margin: 15px 0 10px 0;
  font-weight: 700;
}

.web-content p {
  font-size: 1rem;
  color: #0e0e0e;
  line-height: 1.5rem;
  margin-bottom: 10px;
  text-align: justify;
}

.web-content ul {
  margin-left: 20px;
  margin-top: 10px;
}

.web-content ul li {
  font-size: 1rem;
  color: #0e0e0e;
  margin-bottom: 20px;
  position: relative;
  list-style: circle;
  text-align: justify;
}

/* =========================faqs================ */

#faqs {
  width: 100%;
  padding: 50px 0 0 0;
  /* background-image: url('../images/bg-element.jpg'); */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
  height: auto;
}

#faqs::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(255, 255, 255, 0.688);
  z-index: 1;
}

.faqs-box {
  position: relative;
  z-index: 2;
  padding: 20px 0px;
}

.faqs-image {
  width: 100%;
  height: 650px;
}

.faqs-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scaleX(-1);
  filter: drop-shadow(0px 2px 3px rgba(0, 0, 0, 0.678));
}

.faqs-box-2 {
  padding-bottom: 0px;
}

.faq-box-content h5 {
  font-size: 1.2rem;
  color: #0e0e0e;
  letter-spacing: 3px;
}

.faq-box-content h2 {
  font-size: 2.5rem;
  color: var(--primary-color);
  margin-top: 10px;
  margin-bottom: 20px;
}

.accordion {
  width: 100%;
  margin: auto;
}

.accordion-item {
  border-bottom: 1px solid #ccc;
}

.accordion-header {
  background: #f2f9ff;
  padding: 15px;
  cursor: pointer;
  font-size: 18px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  transition: background 0.3s ease-in-out;
}

.accordion-header.active {
  background: var(--primary-color);
  color: var(--white);
}

.accordion-header::after {
  content: "\25BC";
  transition: transform 0.3s;
}

.accordion-header.active::after {
  transform: rotate(180deg);
}

.accordion-content {
  display: none;
  padding: 15px;
  transition: max-height 0.3s ease-out;
  overflow: hidden;
}

.accordion-content.active {
  display: block;
}

.faq-box-btn {
  margin-top: 50px;
}

.faq-box-btn a {
  background-color: var(--primary-color);
  font-weight: 600;
  padding: 15px 25px;
  transition: var(--transition);
  color: var(--white);
  border-radius: 50px;
}

.faq-box-btn a:hover {
  background-color: var(--secondary-color);
  color: var(--black);
}

/* ======================Locations we cover================= */

#locations {
  width: 100%;
  padding: 50px 0;
  /* background-image: url('../images/map-element.png'); */
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  overflow: hidden;
}

#locations::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  /* background-color: rgba(255, 255, 255, 0.432); */
  z-index: 1;
}

.locations-upper,
.locations-below {
  position: relative;
  z-index: 2;
}

.locations-box {
  width: 100%;
  padding: 10px 0;
  position: relative;
  z-index: 2;
}

/* .locations-upper .row .col-lg-6.col-md-6{
     position: relative;
}

.locations-upper .row:nth-child(1) .col-lg-6.col-md-6::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(255, 255, 255, 0.616);
    z-index: 1;
} */

.locations-box h5 {
  font-size: 1.2rem;
  color: #0e0e0e;
  letter-spacing: 3px;
}

.locations-box h2 {
  font-size: 2.5rem;
  color: var(--primary-color);
  margin: 10px 0;
}

.locations-box p {
  font-size: 1rem;
  color: #0e0e0e;
  margin-bottom: 20px;
}

.right-locations-box {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  height: 100%;
}

.right-locations-box a {
  background-color: var(--primary-color);
  font-weight: 600;
  padding: 15px 25px;
  transition: var(--transition);
  color: var(--white);
  border-radius: 50px;
}

.right-locations-box a:hover {
  background-color: var(--secondary-color);
  color: var(--black);
}

.locations-below {
  width: 100%;
  padding: 20px 0;
  background-image: url("../images/map-element.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
}

.locations-name {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  padding: 0px 40px;
}

.location-card {
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.884);
  padding: 20px 30px 20px 20px;
  display: flex;
  flex-direction: column;
  justify-items: self-start;
  box-shadow: 1px 1px 4px #7f8c8d;
  border-left: 8px solid var(--secondary-color);
}

.location-card a {
  display: inline-flex;
  align-items: start;
  justify-self: self-start;
  gap: 6px;
  padding: 6px 20px 6px 20px;
  position: relative;
  letter-spacing: 0.5px;
  cursor: pointer;
  transition: all 0.5s ease-in-out;
}

/* icon */
.location-card a::before {
  content: "";
  position: absolute;
  left: -8px;
  top: 50%;
  transform: translateY(-50%);
  width: 20px;
  height: 20px;
  background-image: url("../images/gps.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.location-card a:hover {
  color: var(--primary-color);
}

/* ======================cta================= */

#cta {
  width: 100%;
  background: var(--primary-color);
  padding: 20px 0;
  position: relative;
  height: 100%;
}

.container-cta {
  width: 100%;
  padding: 0px 65px;
  max-width: 1500px;
}

.cta-box {
  width: 100%;
  padding: 10px 0;
  height: 100%;
}

.cta-box h5 {
  font-size: 1.2rem;
  color: #fff;
  letter-spacing: 3px;
}

.cta-box h2 {
  font-size: 2rem;
  color: var(--secondary-color);
  margin-top: 10px;
  margin-bottom: 20px;
}

.cta-box p {
  font-size: 1rem;
  color: #fff;
}

.right-cta-box {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: center;
  height: 100%;
}

.cta-box a {
  background-color: var(--secondary-color);
  font-weight: 600;
  padding: 15px 25px;
  transition: var(--transition);
  color: var(--black);
  border-radius: 50px;
}

.cta-box a:hover {
  background-color: var(--white);
  color: var(--primary-color);
}

/* ===========================about-page================== */

/* =================inner page banner=========== */

#inner-banner {
  width: 100%;
  height: 300px;
  background: url("../images/service-contact-bg.jpg");
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
  background-repeat: no-repeat;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* this is for location page baner */
.inner-banner-location-page-sec {
  width: 100%;
  height: 350px;
  background: url("../images/location-page-img.webp");
  background-size: cover;
  background-position: bottom center;
  background-attachment: fixed;
  background-repeat: no-repeat;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

#inner-banner::before {
  width: 100%;
  height: 100%;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(2, 82, 131, 0.866);
  z-index: 1;
}

/* this is for location page baner */
.inner-banner-location-page-sec::before {
  width: 100%;
  height: 100%;
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(2, 82, 131, 0.866);
  z-index: 1;
}

.inner-banner-content {
  position: relative;
  width: 100%;
  height: 100%;
  color: var(--white);
  text-align: center;
  z-index: 2;
}

.inner-banner-content h1 {
  font-size: 2.9rem;
  margin-bottom: 10px;
}

.inner-banner-content p {
  margin-top: 20px;
  padding: 2px 0 5px 0;
  font-size: 1.1rem;
  background: radial-gradient(
    circle,
    rgba(2, 106, 171, 0.76) 0%,
    rgba(255, 255, 255, 0) 100%
  );
  font-weight: 600;
}

.inner-banner-content a {
  color: var(--secondary-color);
  transition: var(--transition);
}

/* =================about we============= */

#about-we {
  width: 100%;
  padding: 50px 0;
  background: #ffffff;
}

.about-we-content {
  width: 100%;
  padding: 10px 0;
  text-align: center;
}

.about-we-content h2 {
  font-size: 2.5rem;
  margin-bottom: 20px;
}

.about-we-content h2 span {
  color: var(--primary-color);
}

.about-we-content p {
  font-size: 1rem;
  color: #0e0e0e;
  margin-bottom: 20px;
}

/* =================best aircon=============== */

#best-aircon {
  width: 100%;
  padding: 50px 0;
}

.best-aircon-box {
  width: 100%;
  padding: 10px 0;
}

.best-airon-content {
  width: 100%;
  padding: 20px 0;
}

.best-airon-content h4 {
  font-size: 1.1rem;
  margin-bottom: 10px;
  background: #d0edff;
  padding: 5px 10px;
  border-radius: 5px;
  width: fit-content;
}

.best-airon-content h3 {
  font-size: 2.5rem;
  color: var(--primary-color);
  margin-bottom: 20px;
}

.best-airon-content p {
  text-align: justify;
  font-size: 1rem;
  color: #0e0e0e;
  margin-bottom: 20px;
}

.best-aircon-image {
  width: 95%;
  height: 600px;
}

.best-aircon-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 10px;
}

/* ================what we serve========= */

#what-we-serve {
  width: 100%;
  padding: 50px 0 10px 0;
  background: #ffffff;
}

.we-serve-content {
  width: 100%;
}

.we-serve-content h4 {
  font-size: 1.1rem;
  margin-bottom: 10px;
  background: #d0edff;
  padding: 5px 10px;
  border-radius: 5px;
  width: fit-content;
}

.we-serve-content h3 {
  font-size: 2.5rem;
  color: var(--primary-color);
  margin-bottom: 20px;
}

.we-serve-content p {
  font-size: 1rem;
  color: #0e0e0e;
  margin-bottom: 20px;
  text-align: justify;
}

/* ======================footer================= */

footer {
  width: 100%;
  background: var(--primary-color);
  padding: 30px 0 15px 0;
  color: var(--white);
}

.footer-box {
  width: 100%;
  padding: 10px 0;
}

.footer-logo {
  width: 100%;
  margin-bottom: 20px;
}

.footer-logo img {
  width: 100px;
  height: auto;
}

.footer-text {
  font-size: 1rem;
  color: var(--white);
  margin-bottom: 20px;
}

.footer-text p {
  margin: 0 !important;
} 

.footer-social {
  display: flex;
  align-items: center;
  gap: 20px;
}

.footer-social a {
  font-size: 1.1rem;
  color: var(--white);
  transition: var(--transition);
}

.footer-social a:hover {
  color: var(--secondary-color);
  transform: translateY(-3px);
}

.footer-social a i {
  border: 1px solid var(--white);
  transition: var(--transition);
  padding: 10px 12px;
  border-radius: 50%;
}

.footer-social a i:hover {
  background: var(--secondary-color);
  color: var(--black);
}

.footer-award {
  margin-top: 20px;
  width: 100px;
}

.footer-award img {
  width: 100%;
  height: auto;
}

.footer-title {
  text-align: center;
  font-size: 1.2rem;
  color: var(--secondary-color);
  margin-bottom: 10px;
}

.contact-title {
  text-align: left;
  margin-left: 50px;
}

.footer-links {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
  margin-left: 20px;
}

.footer-links li {
  list-style: none;
  padding: 8px 0;
  position: relative;
}

.footer-links li::before {
  content: ">";
  position: absolute;
  width: 0;
  height: 2px;
  left: -20px;
}

.footer-links li a {
  color: var(--white);
  font-size: 1rem;
  transition: var(--transition);
}

.footer-links li a:hover {
  color: var(--secondary-color);
  transform: translateY(-3px);
}

.footer-contact {
  margin-left: 50px;
  padding: 5px 0;
}

.f-contact-phone,
.f-contact-email,
.f-contact-address {
  display: flex;
  gap: 20px;
  padding: 10px 0;
}

.f-icon i {
  font-size: 1.3rem;
  color: var(--secondary-color);
}

.f-text p {
  font-size: 1rem;
}

.f-text p a {
  color: #fff;
}

.f-text p a:hover {
  color: var(--secondary-color);
}

.map {
  margin-top: 20px;
  width: 100%;
  height: 150px;
  border-radius: 10px;
  overflow: hidden;
  position: relative;
}

.footer-bottom {
  border-top: 1px solid #ccc;
  width: 100%;
  padding: 12px 0 10px 0;
  text-align: center;
  font-size: 0.9rem;
  color: var(--white);
}

.copy-text {
  font-size: 0.9rem;
  color: var(--white);
}

/* =======================contact-us page============ */

#contact-details {
  width: 100%;
  padding: 40px 0;
}

.contact-details-box {
  width: 90%;
  padding: 30px 20px;
  height: 100%;
  border-radius: 12px;
  background: #fff;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.08);
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
  text-align: center;
  margin: 0 auto;
}

.contact-details-box:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.12);
}

.contact-details-icon {
  font-size: 2.5rem;
  margin-bottom: 20px;
  color: var(--primary);
  background: rgba(11, 196, 199, 0.1);
  width: 70px;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  margin: 0 auto 20px;
}

.contact-details-box h5 {
  font-size: 1.25rem;
  margin-bottom: 10px;
  color: #2c3e50;
  font-weight: 600;
}

.contact-details-box p {
  color: #7f8c8d;
  margin-bottom: 20px;
  font-size: 1rem;
}

.contact-link {
  display: inline-flex;
  align-items: center;
  color: var(--primary);
  text-decoration: none;
  font-weight: 500;
  transition: color 0.3s ease;
}

.contact-link:hover {
  color: var(--secondary-color);
}

.contact-link i {
  margin-left: 5px;
  font-size: 0.9rem;
}

#contact-form-map {
  padding: 80px 0;
  background: #fff;
}

.contact-form-container,
.map-container {
  padding: 30px;
  border-radius: 12px;
  box-shadow: 0 5px 20px rgba(0, 0, 0, 0.05);
  background: #fff;
  height: 100%;
}

.contact-form-container h2,
.map-container h2 {
  font-size: 2rem;
  margin-bottom: 10px;
  color: #2c3e50;
  font-weight: 700;
}

.contact-form-subtitle {
  color: #7f8c8d;
  margin-bottom: 25px;
  font-size: 1rem;
}

/* Form Styling */
.form-group {
  position: relative;
  margin-bottom: 25px;
}

.form-group input,
.form-group select,
.form-group textarea {
  width: 100%;
  padding: 15px;
  border: 1px solid #e0e0e0;
  border-radius: 8px;
  font-size: 1rem;
  transition: all 0.3s ease;
  background: #ffffff;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
  border-color: var(--secondary-color);
  box-shadow: 0 0 0 3px rgba(52, 152, 219, 0.2);
  outline: none;
  background: #fff;
}

.form-group label {
  position: absolute;
  top: 15px;
  left: 15px;
  color: #95a5a6;
  transition: all 0.3s ease;
  pointer-events: none;
  background: #ffffff;
  padding: 0 5px;
}

.form-group input:focus + label,
.form-group input:not(:placeholder-shown) + label,
.form-group select:focus + label,
.form-group select:not([value=""]) + label,
.form-group textarea:focus + label,
.form-group textarea:not(:placeholder-shown) + label {
  top: -10px;
  left: 10px;
  font-size: 0.8rem;
  color: #000;
}

/* Submit Button */
.submit-btn {
  background: var(--primary-color);
  color: #ffffff;
  border: none;
  padding: 12px 25px;
  border-radius: 8px;
  font-size: 1rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.3s ease;
  display: flex;
  align-items: center;
   width: fit-content;
}

.submit-btn:hover {
  background: var(--secondary-color);
  transform: translateY(-2px);
  box-shadow: 0 5px 15px rgba(41, 128, 185, 0.3);
}

.submit-btn i {
  margin-left: 8px;
}

/* Map Styling */
.map-wrapper {
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}

/* ================gallery-page========= */

#gallery {
  width: 100%;
  padding: 50px 0;
  background: #ffffff;
}

.gallery-container {
  max-width: 1300px;
  margin: 0 auto;
  padding: 50px 20px;
}

.gallery-header {
  text-align: center;
  margin-bottom: 40px;
}

.gallery-header h2 {
  font-size: 2.5rem;
  color: #2c3e50;
  margin-bottom: 15px;
  position: relative;
  display: inline-block;
}

.gallery-header h2::after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 70px;
  height: 4px;
  background: linear-gradient(90deg, #3498db, #2ecc71);
  border-radius: 2px;
}

.gallery-header p {
  font-size: 1.1rem;
  color: #7f8c8d;
  max-width: 700px;
  margin: 0 auto;
}

.gallery-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 25px;
}

.gallery-item {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
  transition:
    transform 0.3s ease,
    box-shadow 0.3s ease;
  height: 350px;
  cursor: pointer;
}

.gallery-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 20px rgba(0, 0, 0, 0.15);
}

.gallery-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top;
  transition: transform 0.5s ease;
}

.gallery-item:hover .gallery-img {
  transform: scale(1.05);
}

.gallery-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.1));
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 20px;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.gallery-item:hover .gallery-overlay {
  opacity: 1;
}

.gallery-title {
  color: #fff;
  font-size: 1.2rem;
  font-weight: 600;
  margin-bottom: 8px;
  transform: translateY(20px);
  transition: transform 0.3s ease;
}

.gallery-item:hover .gallery-title {
  transform: translateY(0);
}

.gallery-category {
  color: #2ecc71;
  font-size: 0.9rem;
  transform: translateY(20px);
  transition: transform 0.3s ease 0.1s;
}

.gallery-item:hover .gallery-category {
  transform: translateY(0);
}

.gallery-actions {
  position: absolute;
  top: 15px;
  right: 15px;
  display: flex;
  gap: 10px;
  transform: translateY(-10px);
  transition: transform 0.3s ease;
}

.gallery-item:hover .gallery-actions {
  transform: translateY(0);
}

.action-btn {
  width: 35px;
  height: 35px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.9);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #333;
  transition: all 0.3s ease;
  border: none;
  cursor: pointer;
}

.action-btn:hover {
  background: #3498db;
  color: #fff;
  transform: scale(1.1);
}

/* Lightbox Styles */
.lightbox {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.9);
  z-index: 100000;
  justify-content: center;
  align-items: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.lightbox.open {
  display: flex;
  opacity: 1;
}

.lightbox-content {
  max-width: 90%;
  max-height: 90%;
  position: relative;
}

.lightbox-img {
  max-width: 100%;
  max-height: 80vh;
  border-radius: 8px;
  box-shadow: 0 5px 25px rgba(0, 0, 0, 0.3);
}

.lightbox-caption {
  color: #fff;
  text-align: center;
  margin-top: 15px;
  font-size: 1.2rem;
}

.lightbox-close {
  position: absolute;
  top: -40px;
  right: -40px;
  color: #fff;
  font-size: 2rem;
  background: none;
  border: none;
  cursor: pointer;
  transition: color 0.3s ease;
}

.lightbox-close:hover {
  color: #2ecc71;
}

.lightbox-nav {
  position: absolute;
  top: 50%;
  width: 100%;
  display: flex;
  justify-content: space-between;
  transform: translateY(-50%);
  padding: 0 20px;
}

.lightbox-btn {
  color: #fff;
  font-size: 2rem;
  background: rgba(255, 255, 255, 0.1);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: background 0.3s ease;
  border: none;
}

.lightbox-btn:hover {
  background: rgba(255, 255, 255, 0.2);
}

/* Responsive adjustments */
@media (max-width: 768px) {
  .gallery-grid {
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 15px;
  }

  .gallery-header h2 {
    font-size: 2rem;
  }

  .lightbox-close {
    top: -30px;
    right: 10px;
  }

  .lightbox-btn {
    font-size: 1.5rem;
    width: 40px;
    height: 40px;
  }
}

@media (max-width: 480px) {
  .gallery-grid {
    grid-template-columns: 1fr;
  }
}

/* ===============service page pricing section======= */

/* ======================animations================= */

/* ======================media query================= */

.top-header-left-mobile{
    display: none !important;
    padding: 10px 0;
}

.top-header-left-mobile .top-details-box{
    margin-bottom: 20px;
}
.top-header-left-mobile .main-header-right-button a {
    margin-top: 10px;
  padding: 12px 25px;
  background: var(--secondary-color);
  color: #000;
  border-radius: 5px;
  font-weight: 700;
  transition: var(--transition);
}

.top-header-left-mobile .main-header-right-button a:hover {
  background: var(--secondary-color);
  color: var(--black);
}
@media (max-width:540px) {
    .top-header-left{
        display: none !important;
    }
    .top-header-left-mobile{
        display: block !important;
    }
}

  /* Mobile Bottom Bar Styles */
    .mobile-bottom-bar {
        display: none;
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        background: white;
        box-shadow: 0 -5px 20px rgba(0, 0, 0, 0.1);
        padding: 12px 20px;
        z-index: 9999;
        border-top: 1px solid #e0ecf9;
        backdrop-filter: blur(10px);
        background: rgba(255, 255, 255, 0.95);
    }

    .mobile-bottom-content {
        display: flex;
        align-items: center;
        justify-content: center;
        max-width: 500px;
        margin: 0 auto;
        gap: 15px;
    }

    .mobile-optin {
        display: flex;
        align-items: center;
        gap: 8px;
        font-size: 14px;
        color: #1e3c5f;
        white-space: nowrap;
    }

    .mobile-optin input[type="checkbox"] {
        width: 18px;
        height: 18px;
        accent-color: #1e4e7a;
        cursor: pointer;
    }

    .mobile-buttons {
        display: flex;
        align-items: center;
        gap: 10px;
    }

    .mobile-call-btn, .mobile-wa-btn {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        padding: 10px 18px;
        border-radius: 50px;
        font-weight: 600;
        font-size: 14px;
        text-decoration: none;
        transition: all 0.2s ease;
        white-space: nowrap;
    }

    .mobile-call-btn {
        background: #1e3c5f;
        color: white;
        box-shadow: 0 4px 10px rgba(30, 60, 95, 0.3);
    }

    .mobile-call-btn:hover {
        background: #2a4f7a;
        transform: scale(1.02);
    }

    .mobile-wa-btn {
        background: #25D366;
        color: white;
        box-shadow: 0 4px 10px rgba(37, 211, 102, 0.3);
    }

    .mobile-wa-btn:hover {
        background: #20bd5a;
        transform: scale(1.02);
    }

    .mobile-wa-btn i, .mobile-call-btn i {
        font-size: 16px;
    }

    /* Only show on mobile devices */
    @media (max-width: 768px) {
        .mobile-bottom-bar {
            display: block;
        }
        
        /* Add padding to body to prevent content hiding behind fixed bar */
        body {
            padding-bottom: 90px;
        }
    }

    /* Small phones */
    @media (max-width: 480px) {
        .mobile-bottom-bar {
            padding: 10px 15px;
        }
        
        .mobile-optin {
            font-size: 12px;
        }
        
        .mobile-call-btn, .mobile-wa-btn {
            padding: 8px 12px;
            font-size: 16px;
        }
        
        body {
            padding-bottom: 80px;
        }
    }

    /* Very small phones */
    @media (max-width: 360px) {
        .mobile-bottom-content {
            flex-wrap: wrap;
            justify-content: center;
            gap: 8px;
        }
        
        .mobile-optin {
            width: 100%;
            justify-content: center;
        }
        
        body {
            padding-bottom: 110px;
        }
    }
    
     .tagline-wrapper {
         display: none;
  
}



@media (max-width:768px){
    .tagline-wrapper{
        display: block;
          width: 100%;
    width: 145px;
    margin-right: -59px;
    overflow: hidden;
    height: 35px;
    display: flex;
    align-items: center;
    }
    .tagline-track {
    display: flex;
    width: max-content;
    animation: marquee 15s linear infinite;
}

.tagline-content {
    white-space: nowrap;
    font-size: 18px;
    font-weight: 600;
    color: #084A79;
    padding-right: 30px; /* space between repeats */
}


}
@keyframes marquee {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

/* SECTION */
.reviews-section{
  padding:60px 20px;
  background: #fff;
}

.reviews-container{
  max-width:1200px;
  margin:auto;
  display:flex;
  gap:40px;
}

/* LEFT SIDE */
.review-summary{
  flex:1;
  display: grid;
  place-items: center;

}
.review-summary p{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin-top: -30px;
}
.review-summary p img{
    height: 40px;
    padding-right: 10px;
}
.review-summary h2{
  font-size:24px;
 
}

.review-summary h3{
  font-size:18px;
  color:#555;
 margin-top: -60px;
}

.rating{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top: -30px;
}

.rating-number{
  font-size:36px;
  font-weight:bold;
  color:#ff9900;
}

.stars{
  color:#f4b400;
  font-size:18px;
}

.review-buttons{
  margin-top:20px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top: -20px;

}
.review-buttons img{
    height: 20px;
    padding-left: 5px;
}

.btn{
  padding:10px 18px;
  border-radius:25px;
  text-decoration:none;
  font-size:18px;
  transition:.3s;
  font-weight: 700;
}

.btn-primary{
  background:#004976;
  color:#fff;
   display: flex;
  justify-content: center;
  align-items: center;
}

.btn-secondary{
  border:1px solid #004976;
  color:#004976;
  display: flex;
  justify-content: center;
  align-items: center;
}

.btn:hover{
  opacity:.85;
}

/* SLIDER */
.review-slider{
  flex:2;
  position:relative;
  overflow:hidden;
}

.review-track{
  display:flex;
  gap:20px;
  transition:transform .6s ease;
  padding: 20px;
}

/* CARD */
.review-card{
  flex:0 0 calc((100% - 20px) / 2);
  background:#fff;
  border-radius:20px;
  padding:25px;
  min-height:300px;
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  box-shadow:0 4px 12px rgba(0,0,0,.08);
}

.google-head{
  display:flex;
  align-items:center;
  gap:8px;
  font-weight:600;
  color:#555;
  margin-bottom:15px;
}

.google-head img{
  width:20px;
}

.review-top{
  display:flex;
  justify-content:space-between;
  align-items:center;
}

.review-top h4{
  margin:0;
  font-size:20px;
}

.review-date{
  font-size:13px;
  color:#888;
}

.review-text{
  font-size:15px;
  line-height:1.6;
  color:#555;
  max-height:90px;
  overflow:hidden;
  transition:.3s;
}

.review-text.expanded{
  max-height:300px;
}

.read-toggle{
  margin-top:10px;
  font-weight:600;
  color:#004976;
  cursor:pointer;
}

/* ARROWS */
.slider-btn{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  background:#004976;
  color:#fff;
  border:none;
  width:40px;
  height:40px;
  border-radius:50%;
  cursor:pointer;
  z-index:10;
}

.prev{ left:-15px; }
.next{ right:-15px; }

/* RESPONSIVE */
@media(max-width:992px){
  .reviews-container{
    flex-direction:column;
  }
}

@media(max-width:768px){
  .review-card{
    flex:0 0 100%;
  }
  .review-summary p{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 10px;
    margin-top: 10px;
}
.review-summary p img{
    height: 40px;
    padding-right: 10px;
}
.review-summary h2{
  font-size:24px;
 
}

.review-summary h3{
  font-size:18px;
  color:#555;
 margin-top: 10px;
}

.rating{
  display:flex;
  align-items:center;
  gap:10px;
  margin-top: 10px;
}

.rating-number{
  font-size:36px;
  font-weight:bold;
  color:#ff9900;
}

.stars{
  color:#f4b400;
  font-size:18px;
}

.review-buttons{
  margin-top:20px;
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-top: 10px;

}
}


.rc-anchor-light.rc-anchor-normal, .rc-anchor-light.rc-anchor-compact {
    border: 1px solid #d3d3d3;
    margin-bottom: 10px;
    width: 236px;}
    
    #rc-anchor-container{
        margin-bottom:10px !important;
    }