@import url("https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap");

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

:root {
  --poppins: "Poppins", sans-serif;
  --gray: #161514;
  --dark-gray: #201f1f;
  --brown: #d49a51;
  --text-color: #c0c0bf;
  --heading-color: #f0f0f0;
}

body {
  font-family: var(--poppins);
  background: #000;
}

.bg_brown {
  background: var(--brown);
}

.bg_gray {
  background: var(--gray);
}

.padding_70 {
  padding: 70px 0px;
}

a {
  text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6,
a,
span,
p,
label,
strong,
ul,
li {
  margin-bottom: 0;
  padding: 0;
  list-style: none;
}

.gray_btn {
  background: var(--dark-gray) !important;
  box-shadow: inset -3px 5px 4px 0px #2c2c2c;
  color: #fff !important;
  border: none;
  padding: 16px 20px;
  border-radius: 10px;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.black_btn {
  background: #000;
  color: #fff !important;
  border: none;
  padding: 16px 20px;
  border-radius: 10px;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

.brown_btn {
  background: linear-gradient(180deg, #deab6d 0%, #785c3b 100%);
  color: #fff !important;
  border: none;
  padding: 16px 20px;
  border-radius: 10px;
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
}

/* header */

header {
  width: 100%;
  transition: all 0.3s ease;
}

header.fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: #000;
  box-shadow: 0 0 5px #808080;
  transition: all 0.3s ease;
  z-index: 9999;
}

.header-wrapper {
  height: auto;
}

img.logo_img {
  max-width: 70px;
}

.navbar-expand-lg .navbar-nav .nav-link {
  color: #fff;
  padding: 16px 24px;
  border-radius: 5px;
  font-size: 14px;
  line-height: 20px;
  font-weight: 400;
  border: 1px solid #000;
}

.navbar-expand-lg .navbar-nav .nav-link:hover,
.navbar-expand-lg .navbar-nav .nav-link.active {
  background: var(--gray);
  border: 1px solid #282726;
}

.navbar-expand-lg .navbar-nav {
  gap: 10px;
}

button.navbar-toggler {
  filter: brightness(0) invert(1);
  box-shadow: none !important;
}

/* lets_build_sec */

.lets_build_sec .info {
  display: flex;
  flex-direction: column;
  gap: 30px;
  width: 70%;
  margin: auto;
}

.lets_build_sec .info_wrapper {
  position: relative;
  overflow: hidden;
  z-index: 1;
  border-radius: 20px;
}

.lets_build_sec .info_wrapper::before,
.lets_build_sec .info_wrapper::after {
  position: absolute;
  content: "";
  background: url(../images/circle_pattern.webp);
  width: 500px;
  height: 500px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  z-index: -1;
}

.lets_build_sec .info_wrapper::before {
  top: -230px;
  left: -230px;
}

.lets_build_sec .info_wrapper::after {
  bottom: -230px;
  right: -230px;
}

.lets_build_sec .info h2 {
  font-weight: 600;
  font-size: 60px;
  line-height: 70px;
  color: #fff;
}

/* footer */

.ftr_left {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
}

form.subscribe_form {
  display: flex;
  align-items: center;
  border: 1px solid #201f1f;
  color: #fff;
  padding: 0px 10px;
  border-radius: 5px;
  font-size: 20px;
  width: 95%;
}

.ftr_left .form-control {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  color: #fff;
}

.ftr_list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.ftr_list h3 {
  font-weight: 500;
  font-size: 20px;
  line-height: 30px;
  margin-bottom: 10px;
  color: #8d8d8c;
}

.ftr_list a {
  font-size: 14px;
  line-height: 20px;
  color: #fff;
}

/* copyright */

.cprt_txt {
  font-size: 14px;
  line-height: 20px;
  font-weight: 500;
  color: #8d8d8c;
}

.cpy_box {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.social_icons {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 20px;
}

.social_icons i {
  background: #000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 10px 20px;
  border-radius: 5px;
  font-size: 16px;
}

/* home_bnr  */

.home_bnr {
  position: relative;
  overflow: hidden;
  z-index: 1;
}

.home_bnr::before,
.home_bnr::after {
  position: absolute;
  content: "";
  z-index: -1;
}

.home_bnr::before {
  background: url(../images/brown_bg.webp);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  top: -30%;
  left: -15%;
  width: 645px;
  height: 675px;
  backdrop-filter: blur(140px);
}

.home_bnr::after {
  background: url(../images/pattern_top.webp);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: 1014px;
  height: 1014px;
  top: -30%;
  right: 0;
}

.home_bnr .info {
  padding-left: 260px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.info h1.heading {
  font-size: 70px;
  line-height: 80px;
  font-weight: 600;
  color: #fff;
}

.info p.dscp {
  font-weight: 400;
  font-size: 18px;
  line-height: 30px;
  color: var(--text-color);
}

.home_bnr p.dscp {
  width: 60%;
}

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

.bnr_rgt {
  position: relative;
}

.bnr_rgt .overlay {
  position: absolute;
  top: 170px;
  left: 0;
  display: flex;
  align-items: center;
  gap: 10px;
  width: 350px;
  padding: 10px;
  border-radius: 20px;
  color: #fff;
  background: linear-gradient(
    84.26deg,
    rgba(223, 223, 223, 0.5) 15.93%,
    rgba(172, 168, 168, 0.5) 35.86%
  );
  backdrop-filter: blur(3px);
  box-shadow: 4px 2px 4px 0px #a399942e;
}

.bnr_rgt .overlay p {
  font-weight: 400;
  font-size: 14px;
}

.star_box i {
  color: #fabb42;
}

/* space_sec */

.space_sec {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, #d9a460 0%, #785c3b 100%);
  z-index: 1;
}

.space_sec::before,
.space_sec::after {
  position: absolute;
  content: "";
  background: url(../images/space_overlay_img.webp);
  background-size: contain;
  background-repeat: no-repeat;
  width: 200px;
  height: 250px;
  z-index: -1;
}

.space_sec::before {
  transform: rotate(11deg);
  top: 100px;
  left: 0;
  opacity: 20%;
}

.space_sec::after {
  transform: rotate(-11deg);
  bottom: 100px;
  right: 0;
  opacity: 40%;
}

.space_wrapper {
  position: relative;
  overflow: hidden;
  z-index: 1;
}

.space_wrapper::before {
  position: absolute;
  content: "";
  background: url(../images/circle_pattern.webp);
  width: 100%;
  height: 100%;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  z-index: -1;
  top: 70%;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.space_sec .info {
  width: 60%;
  margin: auto;
}

.rating_box {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  color: #fff;
}

/* featured_projects */

h2.heading {
  font-weight: 600;
  font-size: 60px;
  line-height: 70px;
}

.featured_projects h2.heading {
  display: flex;
  align-items: center;
  gap: 20px;
}

.featured_projects .btn_box {
  justify-content: flex-end;
}

.card {
  border: 1px solid #282726;
  background: #000;
  border-radius: 15px;
}

.card .card-img-top {
  padding: 20px;
}

.card .card-body {
    display: flex;
    flex-direction: column;
    gap: 10px;
    color: #dcdcdc;
}

.card .card-title {
  font-size: 24px;
  font-weight: 500;
  line-height: 32px;
  color: #fff;
  display: flex;
  align-items: center;
  gap: 5px;
}

.card span.profile {
  font-size: 12px;
  color: var(--heading-color);
  font-weight: 400;
}

.card .card-text {
  font-size: 16px;
  line-height: 26px;
  font-weight: 400;
  color: var(--text-color);
}

.location {
  font-size: 13px;
  line-height: 20px;
  font-weight: 400;
  color: #8d8d8c;
}

.tag {
  font-size: 12px;
  line-height: 20px;
  font-weight: 400;
  padding: 10px;
  color: var(--text-color);
  background: #161514;
  border: 1px solid #282726;
  border-radius: 5px;
  width: max-content;
}

.card .brown_btn {
  width: 100%;
}

.owl-theme .owl-nav {
  margin-top: 20px;
  color: #fff;
  font-size: 24px;
  text-align: right;
}

.owl-carousel .owl-nav button.owl-prev,
.owl-carousel .owl-nav button.owl-next {
  background: #000;
  border: 1px solid #282726;
  padding: 0px 5px !important;
}

.owl-carousel .owl-nav button.owl-prev:hover,
.owl-carousel .owl-nav button.owl-next:hover {
  background: #282726;
}

/* quality_service_sec */

a.learn_more {
  color: var(--heading-color);
  border-bottom: 1px solid var(--heading-color);
  width: max-content;
}

/* testimonial_sec */

.testimonial_slider .item {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.testimonial_slider .card {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 20px;
  padding: 20px;
  min-height: 210px;
  height: 100%;
}

.testimonial_slider .card-img-top {
  width: 70px !important;
  padding: 0;
}

.testimonial_slider .card .card-body {
  padding: 0;
}

.testimonial_slider .card .card-text {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 20px;
  font-size: 16px;
  line-height: 28px;
  font-weight: 700;
  color: var(--heading-color);
}

.text_ellipse {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* faq_sec */
.accordion-button,
.accordion-body,
.accordion-button:not(.collapsed) {
  background: #000 !important;
  color: var(--heading-color);
  border: none !important;
  box-shadow: none !important;
  font-size: 14px;
  line-height: 24px;
}

.accordion-button::after {
  filter: brightness(0) invert(1);
}

.accordion-item {
  border: 1px solid #282726 !important;
}

.custom_info p {
  width: 50%;
  margin: auto;
}

/* -------- ABOUT PAGE ---------- */

.sub_heading {
  font-size: 30px;
  line-height: 40px;
  font-weight: 300;
  color: var(--heading-color);
}

.main_bnr .info {
  padding: 0 260px;
  gap: 0;
}

.home_bnr.main_bnr::before {
  top: -300px;
}

p.dscp {
  color: var(--text-color);
}

.about_bnr_img {
  border-radius: 30px;
}

.main_bnr p.dscp {
  width: 100% !important;
}

.achievements_sec .card {
  min-height: 130px;
  align-items: center;
  flex-direction: row;
}

.achievements_sec .card-body {
  gap: 0;
}

.achievements_sec .card .card-title {
  font-weight: 600;
  font-size: 34px !important;
  line-height: 34px !important;
}

.achievements_sec .card .location {
  font-weight: 500;
  font-size: 16px;
  line-height: 26px;
}

.team_slider .card {
  min-height: 500px;
  height: 100%;
}

.team_slider .card .card-img-top,
.team_slider .card .card-body {
  padding: 10px;
}

.team_slider .card .card-title {
  font-size: 16px !important;
  line-height: 26px !important;
}

.team_slider .card .card-text {
  font-size: 14px;
  line-height: 24px;
}

.input-group-text,
.form-control,
.form-select {
  background: #000 !important;
  color: var(--text-color) !important;
  box-shadow: none !important;
  border: 1px solid #fff !important;
  height: 50px;
}

select:not(:-internal-list-box):not([multiple]) option:enabled:hover {
  background: transparent !important;
  color: var(--text-color) !important;
}

.input-group-text {
  border-right: none !important;
  padding-right: 0;
}

.form-control,
.form-select {
  border-left: none !important;
}

#basic-addon7,
textarea.form-control {
  height: 200px;
  align-items: baseline;
}

::placeholder {
  color: var(--text-color) !important;
}

.select_box {
  position: relative !important;
}

.select_box::after {
  position: absolute !important;
  content: "" !important;
  background: url(../images/arrow-down.png) !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  background-size: contain !important;
  width: 20px !important;
  height: 20px !important;
  top: 15px !important;
  right: 7px !important;
  z-index: 999 !important;
}

.check_box {
  display: flex;
  align-items: center;
  gap: 15px;
  color: var(--text-color);
}

input[type="checkbox"] {
  accent-color: #161514;
  width: 25px;
  height: 25px;
}

input[type="checkbox"]:checked {
  background-color: #161514 !important;
  border-color: #282726 !important;
  width: 25px;
  height: 25px;
}

.check_box a {
  color: var(--text-color);
  border-bottom: 1px solid var(--text-color);
}

.service_detail .cnt {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.service_detail ul,
.service_detail ul li {
  color: var(--text-color);
}

.service_detail ul {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.service_detail .cnt p,
.service_detail .cnt ul li {
  font-size: 16px;
  line-height: 26px;
  font-weight: 400;
  color: var(--text-color);
}

.service_detail .cnt ul,
.service_detail .cnt ul li {
  list-style: disc;
}

.service_detail .cnt ul {
  padding-left: 40px;
}

.service_detail .cnt h2 {
  font-size: 45px;
  line-height: 55px;
  font-weight: 600;
  color: var(--heading-color);
}

.service_detail .cnt h3 {
  font-size: 38px;
  line-height: 44px;
  font-weight: 600;
  color: var(--heading-color);
}

.service_detail .cnt h4 {
  font-size: 30px;
  line-height: 40px;
  font-weight: 600;
  color: var(--heading-color);
}

.project-card {
  display: none;
}

.amenties h5 {
  font-weight: 400;
  padding-bottom: 5px;
  border-bottom: 1px solid var(--text-color);
}

.share {
  background: #161514;
  padding: 15px;
  margin-top: 30px;
  border-radius: 5px;
}

.social_box {
  gap: 30px;
}

.social_box a {
  font-size: 24px;
  line-height: 34px;
  color: var(--text-color);
}

hr {
  margin-bottom: 70px;
  color: inherit;
  border: 0;
  border-top: 2px solid var(--text-color);
  opacity: 0.25;
}

.author_name {
  font-size: 13px;
  line-height: 20px;
  font-weight: 400;
  color: #8d8d8c;
}

/* -------- CONTACT PAGE --------- */

.contact_detail .social_icons {
  justify-content: flex-start;
}

.contact_detail .social_icons i {
  background: #161514;
}
