/* Base CSS */
@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap');

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

a:focus {
  outline: 0 solid
}

img {
  max-width: 100%;
  height: auto;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 15px;
  color: #07171D;
}

body {
  color: #07171D;
  font-weight: 400;
  font-family: "Lato", sans-serif;
}

.selector-for-some-widget {
  box-sizing: content-box;
}

li {
  list-style: none;
}

a {
  text-decoration: none;
  transition: all .3s ease-in-out;
}

ul {
  margin: 0;
  padding: 0;
}

a:hover {
  text-decoration: none
}

a,
button,
input,
textarea {
  outline: none !important;
}


.section__title span img {
  height: 10px;
}

.section__title span {
  line-height: 1;
}

.section__title h2 {
  font-size: 42px;
  color: #00818C;
  margin-bottom: 5px;
}


/* ----------------------------------------- HEADER AREA START ------------------------ */

.header__logo a img {
  height: 80px;
}

.header__logo {
  text-align: center;
  padding-bottom: 10px;
}

.header__area {
  padding-top: 15px;
}

.main__menu ul li a {
  font-size: 16px;
  display: block;
  text-transform: capitalize;
  color: #002F33;
  font-weight: 500;
}

.main__menu ul {
  gap: 45px;
}

.main__menu {
  background-color: #EDF8F9;
  padding: 15px 0;
}

.main__menu ul li:hover a {
  color: #00818C;
}

/* ----------------------------------------- HEADER AREA END ------------------------ */


/* ----------------------------------------- HERO AREA START ------------------------ */

.hero__area {
  background-repeat: repeat;
  background-size: contain;
  min-height: 860px;
  position: relative;
  z-index: 1;
  padding: 50px 0;
  padding-top: 85px;
}

.hero__area:before {
  position: absolute;
  top: 0;
  left: 0;
  height: 70px;
  width: 100%;
  z-index: -1;
  content: '';
  background-color: #2AB7BFB2;
}

.hero__area:after {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 70px;
  width: 100%;
  z-index: -1;
  content: '';
  background-color: #2AB7BFB2;
}

.hero__content h1 {
  font-size: 52px;
  color: #fff;
}

.hero__content h4 {
  font-size: 25px;
  color: #fff;
  padding: 10px 0;
  position: relative;
  z-index: 1;
}

.hero__content h4:before {
  right: 0;
  width: 9000px;
  position: absolute;
  top: 0;
  height: 100%;
  z-index: -1;
  content: '';
  background-color: #2AB7BFB2;
}

.hero__content h4:after {
  left: 100%;
  width: 9000px;
  position: absolute;
  top: 0;
  height: 100%;
  z-index: -1;
  content: '';
  background-color: #2AB7BFB2;
}

.hero__content p {
  max-width: 490px;
  font-size: 29px;
  color: #fff;
  margin: 0;
}

.hero__thumb {
  content: '';
  background-image: url(../img/hero-thumb.jpg);
  position: absolute;
  top: 0;
  right: 0;
  height: 100%;
  width: 58%;
  background-size: cover;
  background-repeat: no-repeat;
  clip-path: polygon(21% 0%, 100% 0%, 100% 100%, 0% 100%);
}

/* ----------------------------------------- HERO AREA END ------------------------ */


/* ----------------------------------------- SERVICE AREA START ------------------------ */
.service__area {
  padding: 90px 0;
}

.service__list__wrap ul li {
  font-size: 28px;
  color: #002F33;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 8px;
}

.service__list__wrap ul li span img {
  height: 29px;
}

.service__list__wrap ul li span {
  line-height: 0;
  flex: 0 0 auto;
}

.service__list__wrap {
  padding: 30px 50px;
  background-color: #EDF8F9;
  margin: 30px 0;
}

.service__list__wrap ul li:not(:last-child) {
  margin-bottom: 15px;
}

.common__button {
  font-size: 22px;
  color: #fff;
  padding: 12px 30px;
  background-color: #00818C;
  border: 2px solid #00818C;
  display: inline-block;
}

.common__button:hover {
  color: #00818C;
  background-color: #fff;
}

.service__button {
  gap: 30px;
}

.secondary__button {
  font-size: 22px;
  color: #00818C;
  padding: 12px 30px;
  background-color: #fff;
  border: 2px solid #00818C;
}

.secondary__button:hover {
  background-color: #00818C;
  color: #fff;
}

/* ----------------------------------------- SERVICE AREA END ------------------------ */


/* ----------------------------------------- CHOOSE AREA START ------------------------ */

.choose__area {
  padding: 80px 0;
  background-color: #EDF8F9;
}

.choose__card {
  border: 3px solid #00818C;
  padding: 30px 15px;
  text-align: center;
  min-height: 320px;
}

.choose__card__title h4 {
  font-size: 33px;
  font-weight: 700;
  color: #002F33;
  margin-bottom: 25px;
}

.choose__card__title p {
  font-size: 22px;
  color: #002F33;
  margin: 0;
}

.choose__card__wrap {
  padding-top: 40px;
}

/* ----------------------------------------- CHOOSE AREA END ------------------------ */


/* ----------------------------------------- FEATURES AREA START ------------------------ */

.card__icon {
  height: 140px;
  width: 140px;
  margin: 0 auto;
  margin-bottom: 20px;
  display: flex;
  justify-content: center;
}

.common__card__content h3 {
  font-size: 33px;
  font-weight: 900;
  text-transform: uppercase;
  text-align: center;
  color: #002F33;
  margin-bottom: 25px;
}

.common__card__content p {
  margin: 0;
  font-size: 24px;
  font-weight: 500;
  text-align: center;
  color: #00818C;
}

.common__card__item {
  border: 5px solid #002F33;
  padding: 30px;
  min-height: 490px;
}

.features__area {
  padding: 100px 0;
}

.features__area .row {
  --bs-gutter-x: 30px;
  --bs-gutter-y: 30px;
}

.works__inner__wrap {
  padding: 70px 0;
  background-color: #EDF8F9;
}

.works__single__content h4 {
  font-size: 26px;
  color: #002F33;
  text-transform: uppercase;
  font-weight: 900;
  display: flex;
  align-items: center;
  gap: 15px;
}

.works__single__content p {
  font-size: 26px;
  color: #002F33;
  font-weight: 500;
  max-width: 285px;
}

.works__single__content h4 span {
  height: 60px;
  width: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  border: 2px solid #00818C;
  color: #00818C;
}

.works__left__content {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
}

.works__left__content .works__single__content p {
  margin-left: auto;
  text-align: right;
}

.works__content {
  width: 100%;
  padding-top: 30px;
}

.mobile__thumb {
  width: 360px;
  flex: 0 0 auto;
  padding: 0 20px;
}

.works__area .secondary__button {
  background-color: #EDF8F9;
}

.works__area .secondary__button:hover {
  background-color: #00818C;
}

.optimize__thumb {
  max-width: 1000px;
  margin: 0 auto;
}

.optimize__content .section__title {
  max-width: 800px;
  margin: 0 auto;
  margin-bottom: 25px;
}

.optimize__content>h5 {
  font-size: 28px;
  color: #002F33;
}

.optimize__area {
  padding: 80px 0;
  background-color: #EDF8F9;
}

.solar__bottom__content p {
  font-size: 28px;
  color: #002F33;
  text-align: center;
  max-width: 1170px;
  margin: 0 auto;
  font-weight: 500;
}

.solar__bottom__content {
  margin-top: 30px;
}

.action__video__area {
  max-width: 1000px;
  margin: 0 auto;
  position: relative;
}

.play__button {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.play__button img {
  height: 170px;
}

.action__area {
  background-color: #EDF8F9;
  padding: 80px 0;
}

.section__title h5 {
  font-size: 28px;
  color: #002F33;
  font-weight: 500;
}

.accordion__block .accordion-button {
  font-size: 26px;
  font-weight: 900;
  color: #002F33 !important;
  background-color: #fff !important;
  box-shadow: none !important;
  padding: 22px;
}

.accordion__block .accordion-item {
  border-radius: 0;
  border: 3px solid #0E8792 !important;
  margin-bottom: 22px;
}

.accordion__block .accordion-body p {
  font-size: 24px;
  font-weight: 500;
  color: #00818C;
  margin: 0;
}

.accordion__block .accordion-body {
  padding-top: 0;
}

.accordion__block .accordion-button::after {
  content: '\e59e';
  font-family: "Font Awesome 6 Pro";
  font-weight: 400;
  background-image: none !important;
  height: 22px;
  width: 22px;
  font-size: 20px;
  display: flex;
  justify-content: center;
  align-items: center;
}

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

.faq__area {
  padding-top: 100px;
}

/* ----------------------------------------- FEATURES AREA END ------------------------ */


/* ----------------------------------------- PRICING AREA START ------------------------ */

.pricing__card__header h3 {
  font-size: 40px;
  font-weight: 900;
  color: #002F33;
  text-align: center;
}

.pricing__card {
  border: 3px solid #EDF8F9;
  padding: 50px 30px;
  transition: all .3s ease-in-out;
}

.pricing__card__list li {
  font-size: 22px;
  color: #002F33;
  font-weight: 500;
  display: inline-block;
  margin-bottom: 12px;
}

.pricing__card__list li span {
  color: #37B7C2;
  margin-right: 4px;
}

.pricing__bottom__content span {
  font-size: 22px;
  color: #37B7C2;
  font-weight: 700;
  text-align: center;
  display: block;
  margin-top: 30px;
  min-height: 66px;
}

.pricing__card__footer a:hover {
  color: #37B7C2;
}

.pricing__bottom__content p {
  font-size: 22px;
  color: #002F33;
  font-weight: 500;
  text-align: center;
  margin: 20px 0;
}

.pricing__card__footer a {
  width: 100%;
  text-align: center;
  background-color: #37B7C2;
  border-color: #37B7C2;
}

.pricing__card.active .pricing__card__footer a {
  background-color: #00818C;
  border-color: #00818C;
}

.pricing__card.active {
  background-color: #EDF8F9;
  border-color: #00818C;
}

.pricing__card__list {
  min-height: 235px;
  display: inline-block;
  text-align: center;
}

/* ----------------------------------------- PRICING AREA END ------------------------ */

/* Custom Select Focus Style */
.report__form .form-select:focus {
  border-color: #009b9b !important;
  box-shadow: 0 0 0 0.25rem rgba(0, 155, 155, 0.25) !important;
}


/* ----------------------------------------- DASHBOARD AREA START ------------------------ */
.dashboard__wrapper .container {
  max-width: 1400px;
}

.dashboard__wrapper {
  background-color: #00818C;
  padding: 50px 0;
}

.dashboard__inner__wrap {
  box-shadow: 0px 1px 11px 1px rgba(107, 107, 107, 0.69);
  -webkit-box-shadow: 0px 1px 11px 1px rgba(107, 107, 107, 0.69);
  -moz-box-shadow: 0px 1px 11px 1px rgba(107, 107, 107, 0.69);
  border-radius: 14px;
  overflow: hidden;
  background-color: #FFFFFF;
  position: relative;
  z-index: 1;
  height: 900px;
}

.logo__sidebar {
  display: flex;
  position: relative;
  z-index: 4444;
  width: 90px;
  justify-content: center;
}

.menu_icon {
  flex: 0 0 auto;
  position: relative;
  z-index: 4444;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 90px;
}

.dashboard__inner__wrap:after {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 90px;
  z-index: 444;
  content: '';
  background-color: #34B5C0;
}

.menu_icon img {
  height: 30px;
}

.dashboard__sidebar {
  height: 100%;
  flex: 0 0 auto;
  padding: 20px 0;
  display: inline-flex;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
}

.sidebar__logo a {
  display: flex;
  align-items: center;
}

.logo__text img {
  height: 17px;
}

.logo__text {
  padding-left: 10px;
  transition: all .3s ease-in-out;
  position: relative;
  z-index: 444;
}

.sidebar__menu ul li a .menu_text {
  display: inline-block;
  font-size: 16px;
  color: #093438;
  font-weight: 600;
  flex: 0 0 auto;
  width: 200px;
  padding: 17px;
  padding-right: 5px;
  padding-left: 10px;
  line-height: 1;
  padding-bottom: 19px;
  border-top-right-radius: 18px;
  border-bottom-right-radius: 18px;
  transition: all .3s ease-in-out;
  position: relative;
  z-index: 444;
}

.sidebar__menu ul li a {
  display: flex;
  align-items: center;
}

.sidebar__menu ul li {
  display: block;
  margin-top: 5px;
}

.sidebar__logo {
  flex: 0 0 auto;
}

.sidebar__mid__part {
  max-height: 100%;
  height: 100%;
  overflow-y: auto;
  position: relative;
  padding-top: 12px;
}

.logo__sidebar img {
  height: 55px;
}

.sidebar__menu ul li.active a .menu_icon::after {
  position: absolute;
  right: -40px;
  top: -50px;
  height: 40px;
  width: 40px;
  content: '';
  box-shadow: 8px 12px 0px -2px#34B5C0;
  background-color: transparent;
  border-radius: 50%;
  transform: rotate(71deg);
  transition: all .3s ease-in-out;
}

.sidebar__menu ul li.active a .menu_icon::before {
  position: absolute;
  right: -40px;
  bottom: -50px;
  height: 40px;
  width: 40px;
  content: '';
  box-shadow: 8px 12px 0px -2px #34B5C0;
  background-color: transparent;
  border-radius: 50%;
  transform: rotate(-187deg);
  transition: all .3s ease-in-out;
}

.sidebar__menu ul li.active a .menu_text {
  background-color: #34B5C0;
  color: #fff !important;
}

.sidebar__menu ul li:hover a .menu_text {
  color: #34B5C0;
}

.dashboard__body {
  padding: 15px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow-y: auto;
  z-index: 333;
  background-color: #fff;
  transition: all .3s ease-in-out;
  padding-left: 305px;
}

.profile__picture {
  display: inline-block;
  height: 45px;
  width: 45px;
  border-radius: 50%;
  border: 1px solid #34B5C0;
}

.profile__picture img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  border-radius: 50%;
}

.dashboard__header__end {
  gap: 20px;
}

.dashboard__header__links {
  display: flex;
  align-items: center;
  gap: 20px;
}

.dashboard__header__links a img {
  height: 26px;
}

.report__link {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 20px;
  font-weight: 700;
  color: #00818C;
  transition: all .3s ease-in-out;
}

.report__link:hover {
  color: #34B5C0;
}

.dashboard__title {
  font-size: 20px;
  color: #002F33;
  margin: 0;
}

.dashboard__header {
  padding-bottom: 15px;
  border-bottom: 1.5px solid #D4ECEE;
  margin-bottom: 15px;
  background-color: #fff;
  position: relative;
  z-index: 22;
}

.address__title {
  font-size: 20px;
  font-weight: 700;
  color: #002F33;
  margin-bottom: 8px;
}

.find__address__inner input {
  font-size: 16px;
  width: 500px;
  color: #01818C;
  font-weight: 600;
  height: 46px;
  padding: 5px 15px;
  border: 1px solid #34B5C0;
  border-radius: 15px;
  background-color: #EDF8F9;
}

.find__address__inner button {
  height: 46px;
  width: 46px;
  display: flex;
  justify-content: center;
  align-items: center;
  border: 0;
  background-color: #34B5C0;
  padding: 10px;
  border-radius: 15px;
  flex: 0 0 auto;
}

.find__address__inner {
  display: flex;
  gap: 15px;
}

.current__location {
  display: flex;
  justify-content: center;
  align-items: center;
  border: 0;
  background-color: #34B5C0;
  padding: 11px 16px;
  border-radius: 15px;
  flex: 0 0 auto;
  gap: 15px;
  font-weight: 600;
  color: #fff;
}

.current__location img {
  height: 23px;
}

.current__location span {
  line-height: 1;
}

.address__form {
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
}

.address__map {
  margin-top: 12px;
}

.address__map iframe {
  width: 100%;
  height: 375px;
  border: 1px solid #34B5C0 !important;
  border-radius: 14px;
}

.close__sidebar {
  position: absolute;
  top: 0;
  right: 0;
  height: 40px;
  width: 40px;
  border: 0;
  background-color: #34B5C0;
  font-size: 20px;
  display: flex;
  justify-content: center;
  border-bottom-left-radius: 45px;
  padding-left: 9px;
  padding-top: 4px;
  color: #fff;
  transition: all .3s ease-in-out;
  z-index: 444;
}

.close__sidebar:hover {
  background-color: #00808B;
}

.open__sidebar {
  position: absolute;
  top: 50%;
  left: 0;
  height: 40px;
  width: 40px;
  border: 0;
  background-color: #34B5C0;
  font-size: 20px;
  display: flex;
  justify-content: center;
  border-radius: 3px;
  color: #fff;
  transition: all .3s ease-in-out;
  align-items: center;
  transform: translateY(-50%) scale(.5);
  visibility: hidden;
  opacity: 0;
}

.open__sidebar:hover {
  background-color: #00808B;
}

.sidebar__open__gap {
  transition: all .3s ease-in-out;
}

.remove__sidebar .sidebar__open__gap {
  transform: translateX(45px);
}

.remove__sidebar .open__sidebar {
  opacity: 1;
  visibility: visible;
  transform: translateY(-50%) scale(1);
}

.remove__sidebar .logo__text {
  transform: translateX(-200px);
}

.remove__sidebar .menu_text {
  transform: translateX(-200px);
}

.remove__sidebar .sidebar__menu ul li.active a .menu_icon::after {
  opacity: 0;
}

.remove__sidebar .sidebar__menu ul li.active a .menu_icon::before {
  opacity: 0;
}

.dashboard__inner__wrap::before {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 290px;
  content: '';
  z-index: 444;
  background-color: #EDF8F9;
  transition: all .3s ease-in-out;
}

.remove__sidebar .close__sidebar {
  transform: translateX(-200px);
}

.remove__sidebar .dashboard__body {
  padding-left: 105px;
}

.remove__sidebar .dashboard__inner__wrap::before {
  transform: translateX(-200px);
}

.property__data__title h4 {
  font-size: 22px;
  font-weight: 700;
  color: #00818C;
  margin-bottom: 5px;
}

.property__data__title p {
  font-size: 17px;
  color: #093438;
  font-weight: 600;
}

.property__info span {
  display: flex;
  align-items: center;
  width: 166px;
  gap: 10px;
  padding: 5px 10px;
  border: 1px solid #55C1CA;
  border-radius: 7px;
  font-size: 18px;
  font-weight: 500;
  color: #093438;
  background-color: #EDF8F9;
}

.property__info span small {
  line-height: 1;
}

.property__info span small img {
  height: 20px;
}

.property__info {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  margin-bottom: 20px;
}

.property__info__list h5 {
  font-size: 22px;
  font-weight: 700;
  color: #00818C;
  margin-bottom: 10px;
}

.property__info__list ul li {
  width: 100%;
  gap: 10px;
  padding: 5px 10px;
  border: 1px solid #55C1CA;
  border-radius: 7px;
  font-size: 18px;
  font-weight: 500;
  color: #093438;
  background-color: #EDF8F9;
}

.property__info__list ul li:not(:last-child) {
  margin-bottom: 10px;
}

.property__view__content {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}

.view__icon img {
  height: 25px;
}

.property__view__content h5 {
  font-size: 22px;
  font-weight: 900;
  color: #00818C;
  margin-bottom: 10px;
  margin: 0;
}

.property__thumb {
  height: 280px;
  border-radius: 12px;
  border: 1px solid #34B5C0;
  overflow: hidden;
}

.property__thumb img {
  height: 100%;
  width: 100%;
  object-fit: cover;
}

.property__info__list__block .row {
  --bs-gutter-x: 25px;
  --bs-gutter-y: 20px;
}

.property__data__area>.row {
  --bs-gutter-x: 50px;
  --bs-gutter-y: 30px;
}

.property__data__area {
  overflow: hidden;
}


.material__table {
  border-collapse: separate;
  border-spacing: 0 10px;
  min-width: 743px;
  margin: 0;
}

.material__table th {
  background-color: #50b6c5;
  color: white;
  text-align: left;
}

.material__table td {
  border: 1px solid #a9d4db;
  padding: 7px;
  border-left: 0;
  border-right: 0;
  font-size: 18px;
  font-weight: 500;
  color: #093438;
}

.keppel__bg td {
  background-color: #EDF8F9;
}

.material__table td:first-child {
  border-left: 1px solid #a9d4db;
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
}

.material__table td:last-child {
  border-right: 1px solid #a9d4db;
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;
}

.material__table th:first-child {
  border-top-left-radius: 8px;
  border-bottom-left-radius: 8px;
}

.material__table th:last-child {
  border-top-right-radius: 8px;
  border-bottom-right-radius: 8px;
}

.material__table th {
  padding: 7px;
  font-size: 18px;
  font-weight: 700;
}

.material__table tr:not(:last-child) {
  border-bottom: 1px solid #a9d4db;
}

.table__bottom__text {
  font-size: 12px;
  color: #093438;
  font-weight: 600;
}

.rangebar__block h5 {
  margin: 0;
  font-size: 17px;
  color: #093438;
  font-weight: 600;
}

.rangebar {
  display: inline-block;
  width: 240px;
  height: 15px;
  border-radius: 30px;
  border: 1px solid #34B5C0;
  background-color: #EDF8F9;
  position: relative;
}

.rangebar:before {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 20%;
  content: '';
  background-color: #34B5C0;
  border-radius: 30px;
}

.rangebar__block {
  margin-bottom: 15px;
  flex-wrap: wrap;
}

.pricing__dropdown label {
  font-size: 22px;
  font-weight: 700;
  color: #00818C;
  margin-bottom: 10px;
  display: block;
}

.pricing__dropdown .nice-select {
  font-size: 17px;
  color: #093438;
  font-weight: 500;
  float: unset;
  width: 260px;
  background-color: #EDF8F9;
  border: 1px solid #34B5C0;
}

.pricing__dropdown .nice-select:after {
  border-color: #34B5C0;
  width: 10px;
  height: 10px;
  border-width: 1px;
  top: 44%;
}

.pricing__box__wrap {
  margin-top: 15px;
}

.pricing__box__wrap h4 {
  margin-bottom: 7px;
  font-size: 17px;
  color: #093438;
  font-weight: 600;
}

.pricing__box span {
  font-size: 17px;
  color: #009E0B;
  font-weight: 600;
  line-height: 1;
}

.auto__pulled span {
  width: auto;
  padding: 5px 20px;
  font-weight: 600;
}

.pricing__box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 10px;
  border: 1px solid #34B5C0;
  border-radius: 10px;
  width: 146px;
}

.pricing__boxes {
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
}

.total__ammount {
  margin: 0;
  margin-top: 20px;
  font-size: 22px;
  font-weight: 700;
  color: #00818C;
}

.total__ammount b {
  color: #0F393D;
}

.checklist__content h5 {
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 5px;
}

.checklist__content p {
  margin: 0;
}

.single__checklist {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 10px;
  border: 1.5px solid transparent;
  border-radius: 13px;
  margin-top: 10px;
}

.checklist__icon {
  line-height: 1;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  height: 30px;
  width: 30px;
  flex: 0 0 auto;
}

.checklist__icon img {
  height: 25px;
}

.success_checklist {
  background-color: #ECFDF5;
  border-color: #A7E8C6;
}

.success_checklist h5 {
  color: #047857;
}

.success_checklist p {
  color: #0A986C;
}

.allert_checklist h5 {
  color: #B45309;
}

.allert_checklist p {
  color: #D97706;
}

.allert_checklist {
  background-color: #FFFBEB;
  border-color: #EDDA92;
}

.error_checklist h5 {
  color: #B91C1C;
}

.error_checklist p {
  color: #DC2626;
}

.error_checklist {
  border-color: #F0A1A1;
  background-color: #FEF2F2;
}

.rangebar__block h5 span {
  color: #34B5C0;
}

.timeline__area {
  padding: 15px;
  border-radius: 5px;
  border: 1px solid #34B5C0;
}

.timeline__thub {
  margin: 20px 0;
}

.timeline__bottom__content p {
  margin: 0;
}

.timeline__bottom__content p {
  color: #34B5C0;
  font-size: 12px;
  font-weight: 700;
}

.permit__area .row {
  --bs-gutter-x: 60px;
  --bs-gutter-y: 30px;
}

.permit__area {
  overflow: hidden;
  margin-top: 22px;
}

.range_60::before {
  width: 60%;
}

.damage__list ul li {
  color: #093438;
  font-size: 12px;
  display: block;
  margin-bottom: 2px;
}

.single__cost__card h4 {
  font-size: 22px;
  color: #00818C;
  margin-bottom: 8px;
  font-weight: 600;
}

.single__cost__card h3 {
  font-size: 40px;
  color: #093438;
  font-weight: 700;
  margin-bottom: 5px;
}

.single__cost__card p {
  margin: 0;
  font-size: 18px;
  color: #093438;
  font-weight: 600;
}

.single__cost__card {
  flex: 0 0 auto;
  border: 1px solid #34B5C0;
  border-radius: 4px;
  padding: 10px 15px;
}

.chart__thumb {
  max-width: 450px;
}

.sustainability__cards .single__cost__card h3 {
  color: #00818C;
}

.sustainability__lists ul li {
  display: flex;
  gap: 7px;
  color: #093438;
  font-weight: 600;
  margin-top: 5px;
}

.sustainability__lists ul li span {
  color: #0EC800;
}

.roof__solar__thumb {
  height: 290px;
}

.roof__solar__thumb img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  border-radius: 20px;
  border: 1px solid #34B5C0;
}

.roof__solar__lists ul li {
  font-size: 18px;
  color: #093438;
}

.roof__solar__lists ul li b {
  display: inline-block;
  min-width: 130px;
  font-weight: 900;
  margin-right: 8px;
}

.roof__solar__list__wrap {
  padding: 15px;
  border-radius: 10px;
  border: 1px solid #34B5C0;
  margin-bottom: 10px;
}


.include__switch__inner .form-check {
  display: flex;
  align-items: center;
  padding-left: 0;
}

.include__switch__block .include__switch__inner:first-child .form-check {
  width: 200px;
}

.include__switch__inner .form-switch .form-check-input {
  margin: 0;
  position: absolute;
  right: 0;
  width: 50px;
  background-image: none;
  outline: none !important;
  background-color: #EDF8F9;
  border: 1px solid #AFD0D3;
}

.include__switch__inner .form-switch .form-check-input:focus {
  box-shadow: none;
}

.include__switch__inner {
  position: relative;
  width: 100%;
}

.include__switch__inner label {
  font-size: 14px;
  color: #093438;
  font-weight: 600;
}

.include__switch__inner .form-switch .form-check-input:checked {
  border-color: #34B5C0;
}

.include__switch__block {
  padding: 15px;
  border-radius: 10px;
  border: 1px solid #34B5C0;
}

.include__switch__inner .form-check:not(:last-child) {
  margin-bottom: 5px;
}

/* Custom Switch Styling */
.form-switch {
  position: relative;
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
}

.form-check-input {
  width: 50px;
  height: 16px;
  background-color: #ccc;
  border-radius: 50px;
  border: none;
  position: relative;
  appearance: none;
  outline: none;
  cursor: pointer;
  transition: background 0.3s ease-in-out;
}

.form-check-input::before {
  content: "";
  position: absolute;
  width: 18px;
  height: 10px;
  background: #AACCCF;
  border-radius: 30px;
  top: 2px;
  left: 2px;
  transition: transform 0.3s ease-in-out;
}

/* When checked */
.form-check-input:checked {
  background-color: #4caf50;
}

.form-check-input:checked::before {
  transform: translateX(26px);
  background-color: #34B5C0;
}

/* Customizing the labels */
.form-check-label {
  font-size: 16px;
  color: #333;
  font-weight: 500;
}

.small__text {
  font-size: 12px;
  color: #093438;
  font-weight: 600;
  margin-top: 3px !important;
}

.report__form__input label {
  font-size: 18px;
  color: #00818C;
  font-weight: 700;
  display: block;
  margin-bottom: 8px;
}

.report__form__input input {
  width: 100%;
  padding: 10px;
  border-radius: 15px;
  color: #00818C;
  background-color: #EDF8F9;
  border: 1px solid #34B5C0;
}

.report__form__input input::placeholder {
  color: #00818C;
}

.add__another__report {
  border-radius: 15px;
  width: 100%;
  font-size: 18px;
  font-weight: 700;
  color: #093438;
  height: 46px;
  border: 1px dashed #34B5C0;
  background-color: transparent;
  margin-top: 10px;
}

.add__another__report>span {
  color: #34B5C0;
}

.inclute__title h4 {
  font-size: 18px;
  color: #093438;
  font-weight: 700;
  display: block;
  margin-bottom: 8px;
  margin-top: 15px;
}

.save__btn {
  background: transparent;
  border: 0;
  font-size: 18px;
  font-weight: 700;
  color: #1A8E98;
  display: flex;
  align-items: center;
  gap: 9px;
  position: absolute;
  bottom: 10px;
  right: 10px;
}

.save__input input {
  padding-right: 90px;
}

.save__btn img {
  height: 22px;
}

.save__btn span {
  line-height: 1;
}

.report__form__input {
  position: relative;
}

.report__buttons a {
  display: flex;
  align-items: center;
  font-size: 18px;
  font-weight: 700;
  color: #FFFFFF;
  border-radius: 14px;
  background-color: #34B5C0;
  gap: 8px;
  padding: 10px;
}

.report__buttons a img {
  width: 25px;
}

.report__buttons {
  display: flex;
  justify-content: flex-end;
  gap: 13px;
  flex-wrap: wrap;
  margin-top: 12px;
}

.start__chat {
  display: flex;
  align-items: center;
  gap: 12px;
}

.chat__btn {
  flex: 0 0 auto;
  font-size: 18px;
  color: #fff;
  background-color: #34B5C0;
  font-weight: 600;
  padding: 9px 12px;
  border-radius: 14px;
  border: 1px solid #34B5C0;
  transition: all .3s ease-in-out;
}

.chat__btn:hover {
  background-color: #fff;
  color: #34B5C0;
}





.chat__form {
  border: 1px solid #34B5C0;
  border-radius: 10px;
  overflow: hidden;
  background-color: #EDF8F9;
}

.chat__profile a {
  display: flex;
  align-items: center;
  gap: 14px;
  background-color: #34B5C0;
  padding: 8px 10px;
  font-size: 18px;
  font-weight: 600;
  color: #fff;
}

.chat__profile__image {
  height: 48px;
  width: 48px;
  border-radius: 50%;
  overflow: hidden;
  border: 1px solid #fff;
  flex: 0 0 auto;
}

.chat__input input {
  width: 100%;
  border: 0;
  background: transparent;
  font-size: 18px;
  color: #34B5C0;
}

.chat__input input::placeholder {
  color: #00818C;
}

.chat__input {
  display: flex;
  align-items: center;
  padding: 8px;
  border-top: 1px solid #34B5C0;
}

.chat__input button {
  flex: 0 0 auto;
  border: 0;
  background-color: transparent;
  font-size: 22px;
  color: #34B5C0;
}

.chat__messages {
  height: 100%;
}
.chat__messages__block {
	height: 420px;
	overflow-y: scroll;
  padding: 10px;
}
.chat__message {
  max-width: 347px;
  padding: 10px;
  border-radius: 10px;
  font-size: 16px;
  color: #fff;
}

.chat__message--support {
  margin-left: auto;
  background-color: #00818C;
}

.chat__messages .chat__message:not(:last-child) {
  margin-bottom: 10px;
}

.chat__message--user {
  background-color: #34B5C0;
  margin-right: auto;
}

/* ----------------------------------------- DASHBOARD AREA END ------------------------ */





/* --- Auth Page Styles --- */
body.auth-page-bg { /* Add class="auth-page-bg" to <body> tag on new pages */
  background-color: #EDF8F9 !important; /* Light teal background */
  font-family: 'Lato', sans-serif !important;
  color: #093438;
}

body.auth-page-bg .auth__area {
  padding: 60px 15px !important; /* Adjusted padding for potentially smaller screens */
  min-height: calc(100vh - 200px) !important; /* Adjust 200px based on combined header/footer */
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}

body.auth-page-bg .auth__card {
  background-color: #fff !important;
  padding: 30px !important; /* Slightly reduced padding */
  border-radius: 15px !important;
  box-shadow: 0px 4px 15px rgba(0, 0, 0, 0.1) !important;
  max-width: 480px !important; /* Reduced max-width */
  width: 100% !important;
  margin: auto !important;
  border: none !important;
}

.auth__card .auth-logo img {
  height: 50px; /* Slightly smaller logo */
  margin-bottom: 20px;
}

.auth__card h2 {
  font-size: 24px; /* Adjusted font size */
  font-weight: 700;
  color: #002F33;
  margin-bottom: 15px;
}
.auth__card h3 {
  font-size: 18px; /* Adjusted font size */
  font-weight: 600;
  color: #093438;
  margin-bottom: 25px;
  line-height: 1.4;
}


.auth__card .form-label {
  font-size: 15px; /* Adjusted font size */
  font-weight: 600;
  color: #093438;
  margin-bottom: 6px; /* Adjusted margin */
}

body.auth-page-bg .auth__card .form-control {
  background-color: #EDF8F9 !important;
  border: 1px solid #34B5C0 !important;
  border-radius: 10px !important;
  height: 48px !important; /* Adjusted height */
  font-size: 15px !important; /* Adjusted font size */
  color: #01818C !important;
  padding: 0.5rem 1rem !important;
  transition: all 0.2s ease !important;
}
body.auth-page-bg .auth__card .form-control:focus {
   background-color: #fff !important;
   border-color: #00818C !important;
   box-shadow: 0 0 0 0.2rem rgba(0, 129, 140, 0.25) !important;
}
body.auth-page-bg .auth__card .form-control::placeholder {
   color: rgba(1, 129, 140, 0.7) !important;
}


body.auth-page-bg .auth__card .btn-auth-action {
  background-color: #00818C !important;
  border-color: #00818C !important;
  color: #fff !important;
  font-size: 16px !important; /* Adjusted font size */
  font-weight: 700 !important;
  padding: 10px 20px !important; /* Adjusted padding */
  width: 100% !important;
  border-radius: 10px !important;
  margin-top: 15px !important;
  margin-bottom: 20px !important;
  transition: background-color .2s ease, border-color .2s ease !important;
  text-transform: none !important;
  display: block !important;
}
body.auth-page-bg .auth__card .btn-auth-action:hover {
  background-color: #006a73 !important;
  border-color: #006a73 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1) !important;
}

.auth__card .auth-divider {
  text-align: center;
  margin: 20px 0;
  color: #6c757d;
  font-size: 14px; /* Adjusted font size */
  font-weight: 500;
  position: relative;
}
.auth__card .auth-divider::before,
.auth__card .auth-divider::after {
  content: '';
  position: absolute;
  top: 50%;
  width: 38%; /* Adjusted width */
  height: 1px;
  background-color: #dee2e6;
}
.auth__card .auth-divider::before {
  left: 0;
}
.auth__card .auth-divider::after {
  right: 0;
}

body.auth-page-bg .auth__card .btn-google {
  background-color: #fff !important;
  border: 1px solid #ced4da !important;
  color: #495057 !important;
  font-weight: 500 !important;
  font-size: 15px !important; /* Adjusted font size */
  width: 100% !important;
  padding: 10px !important;
  border-radius: 10px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  margin-bottom: 25px !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
}
.auth__card .btn-google img {
  height: 18px; /* Adjusted icon size */
}
body.auth-page-bg .auth__card .btn-google:hover {
   background-color: #f8f9fa !important;
   transform: translateY(-1px) !important;
   box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1) !important;
   text-decoration: none !important;
}

body.auth-page-bg .auth__card .auth-links {
  text-align: center !important;
  font-size: 14px !important; /* Adjusted font size */
  font-weight: 500 !important;
  margin-top: 20px !important;
}
body.auth-page-bg .auth__card .auth-links a {
  color: #00818C !important;
  text-decoration: underline !important;
  font-weight: 600 !important;
  transition: color 0.2s ease !important;
}
body.auth-page-bg .auth__card .auth-links a:hover {
  color: #006a73 !important;
  text-decoration: none !important;
}
body.auth-page-bg .auth__card .auth-links p {
  margin-bottom: 5px !important;
  color: #093438 !important; /* Make text darker */
}
body.auth-page-bg .auth__card .auth-links-secondary { /* For forgot password link */
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #00818C !important;
  text-decoration: none !important;
  display: inline-block !important;
  margin-top: 10px !important;
  transition: color 0.2s ease !important;
}
body.auth-page-bg .auth__card .auth-links-secondary:hover {
  text-decoration: underline !important;
  color: #006a73 !important;
}


/* Password Field Icon */
body.auth-page-bg .password-wrapper {
  position: relative !important;
  width: 100% !important;
}

body.auth-page-bg .password-wrapper .form-control {
  padding-right: 2.5rem !important;   /* make room for the eye */
  width: 100% !important;
}

body.auth-page-bg .password-toggle-icon {
  position: absolute !important;
  top: auto !important;               /* kill the old top:50% */
  bottom: 0.75rem !important;         /* ≈ (input‑height – icon‑height) ÷ 2 */
  right: 1rem !important;             /* tweak to match your padding */
  width: 1.5rem !important;           /* your icon box */
  height: 1.5rem !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 1.1rem !important;
  color: #34B5C0 !important;
  cursor: pointer !important;
  z-index: 2 !important;
  background: none !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
  outline: none !important;
}

body.auth-page-bg .password-toggle-icon i {
  color: inherit !important;
  font-size: 1.25rem !important;
  transition: color 0.2s ease !important;
}

body.auth-page-bg .password-toggle-icon:hover i {
  color: #00818C !important;
}


/* 2FA Inputs */
body.auth-page-bg .two-factor-inputs {
  display: flex !important;
  justify-content: center !important;
  gap: 8px !important; /* Reduced gap */
  margin-bottom: 25px !important;
  width: 100% !important;
}

body.auth-page-bg .two-factor-inputs input {
  width: 45px !important; /* Adjusted size */
  height: 50px !important; /* Adjusted size */
  text-align: center !important;
  font-size: 20px !important; /* Adjusted font size */
  font-weight: 600 !important;
  border-radius: 8px !important; /* Adjust radius */
  border: 1px solid #34B5C0 !important;
  background-color: #EDF8F9 !important;
  padding: 0 !important;
  color: #01818C !important;
}

body.auth-page-bg .two-factor-inputs input:focus {
  background-color: #fff !important;
  border-color: #00818C !important;
  box-shadow: 0 0 0 0.2rem rgba(0, 129, 140, 0.25) !important;
  outline: none !important;
}


/* Payment Page */
.payment__card__details .input-group {
  position: relative;
}
.payment__card__details input[type="text"]#cardDetails {
   padding-right: 80px; /* Space for icons */
}
.payment-icons {
  position: absolute;
  right: 1px; /* Adjust as needed */
  top: 1px; /* Adjust as needed */
  bottom: 1px; /* Adjust as needed */
  display: flex;
  align-items: center;
  padding: 0 10px;
  background-color: #EDF8F9; /* Match input bg */
  border-top-right-radius: 10px;
  border-bottom-right-radius: 10px;
  z-index: 3; /* Ensure clickable if needed */
  pointer-events: none; /* Icons are not interactive */
}

.payment-icons img {
  height: 12px; /* Adjust icon size */
  margin-left: 5px;
}
.payment__card__details .row {
  --bs-gutter-x: 10px; /* Reduce gap between MM/YY and CVC */
}
.payment-method-options {
  display: flex;
  justify-content: center;
  gap: 10px; /* Reduced gap */
  margin-top: 10px;
  margin-bottom: 20px;
}
.payment-method-options .btn {
  flex: 1;
  background-color: #f8f9fa;
  border: 1px solid #ced4da;
  color: #495057;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 8px; /* Adjusted padding */
  border-radius: 8px;
  max-width: 120px; /* Optional: limit width */
  transition: background-color .2s ease;
}
.payment-method-options .btn img {
   max-height: 24px; /* Example max height */
   width: auto;
}
.payment-method-options .btn:hover {
   background-color: #e9ecef;
}


/* ----------------------------------------- FOOTER AREA START ------------------------ */
.footer__area {
  padding: 45px 0;
  background-color: #00818C;
}

.footer__menu li a:hover {
  color: #000;
}

.footer__identity__blk p {
  color: #DBF4F7;
}

.footer__menu li a {
  display: block;
  color: #DBF4F7;
  margin-bottom: 10px;
  transition: all .3s ease-in-out;
}

.widget__title {
  font-size: 20px;
  font-weight: 900;
  color: #81FCFD;
  margin-bottom: 45px;
}

.footer__widget {
  padding-top: 60px;
}

.footger__identity img {
  height: 100px;
}

.footger__identity {
  margin-bottom: 30px;
  display: block;
}

.footer__copyright {
  padding-top: 50px;
  margin-top: 50px;
  border-top: 1px solid #1A8E98;
}

.footer__copyright p {
  color: #DBF4F7;
}

.pricing__area {
  padding: 100px 0;
}

/* ----------------------------------------- FOOTER AREA END ------------------------ */