@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700;800;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Rubik+Glitch&display=swap');

html,
body {
	font-family: 'Montserrat', sans-serif;
	color: #000;
	overflow-x: hidden;
}

body .container-width {
	width: 100%;
	max-width: 1350px;
}

/* header */
.main-header {
	z-index: 999;
	padding-left: 30px;
	padding-right: 30px;
}

.page-title-box {
	padding-left: 50px;
	padding-right: 50px;
}

#mobile-menu {
	display: none;
}

.main-header .navbar-nav {
	gap: 20px;
}

.main-header .navbar-light .navbar-nav .nav-link {
	color: #000 !important;
	font-weight: 600;
	letter-spacing: 1px;
}

.main-header .navbar-light .navbar-nav .nav-link:hover {
	color: #7e7e7e !important;
}

.main-header .navbar-light .navbar-nav .nav-item a.active {
	color: #7e7e7e !important;
}

.main-header .navbar-light .navbar-toggler i {
	font-size: 25px;
	color: #000;
}

.logo-img {
	width: 100%;
	max-width: 50px;
}

.logo-foot {
	width: 100%;
	max-width: 50px;
}

.logo-img2 {
	display: none;
}

/* footer */
.main-footer {
	padding-left: 50px;
	padding-right: 100px;
}

.footer-link {
	color: #000;
}

.footer-link li {
	list-style: none;
	font-size: 16px;
	font-weight: 500;
}

.footer-link li i {
	font-size: 20px;
}

footer h5 {
	font-size: 16px;
	font-weight: 700;
	color: #000;
}

.footer-link a,
.footer-link p {
	color: #000;
	text-decoration: none;
	font-family: Rolide;
}

.footer-form {
	border-radius: 16px;
	background: linear-gradient(181deg, #F9F9F9 1.12%, rgba(182, 182, 182, 0.00) 117.32%);
	box-shadow: 0px 0px 2px 0px rgba(0, 0, 0, 0.25);
	padding: 30px 50px;
}

.footer-form form .form-control {
	border-radius: 4px;
	background: #FFF;
	box-shadow: 0px 0px 0px 0px rgba(0, 0, 0, 0.25);
	border: none;
}

.footer-form form .submit-btn {
	border-radius: 0px 5px 5px 0px;
	background: #FFF;
	box-shadow: 0px 0px 1px 0px rgba(0, 0, 0, 0.25);
}

.footer-2 .copy-text {
	font-family: Rolide;
	font-size: 20px;
}

/* video section */
.slider-video {
	width: 100%;
	height: 100%;
}

.slider-video2 {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.slider-box {
	z-index: 999;
	width: 100%;
	text-align: center;
}

.slider-box h1 {
	font-size: 30px;
	line-height: 40px;
	color: #fff;
	font-weight: 400;
	font-family: Rolide;
}

.slider-box h1 span {
	font-family: "Rubik Glitch";
}

.text-animation {
	position: relative;
	width: 100%;
	position: absolute;
	top: 50vh;
	left: 0;
	z-index: 999;
}

.company-name {
	position: absolute;
	top: calc(100vh - 40px);
	left: 0;
	width: 100%;
	padding: 0px 40px;
	z-index: 999;
}

.company-name h2 {
	color: #FFF;
	font-family: Rolide;
	font-size: 20px;
	font-weight: 400;
}

.video-section video {
	width: 100%;
	/* 	height: 905px;  */
}

/* about section */
.about-box {
	max-width: 800px;
	width: 100%;
	margin: 0 auto;
	color: #000;
}

.about-box h1 {
	font-size: 46px;
	font-weight: 600;
	color: #000;
}

.about-box h2 {
	font-size: 30px;
	font-weight: 600;
}

.offer-list li {
	font-size: 12px;
	font-family: Rolide;
}

.offer-list ul {
	margin-right: 50px;
}

.Offer-list-ul {
	display: flex;
}

.about-text {
	font-family: Rolide;
}

/* project pages */
.project-box {
	max-width: 468px;
	width: 100%;
	border-radius: 42px;
	background: #FFF;
	box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.25);
	padding: 32px;
}

.project-sec h1 {
	font-size: 64px;
	font-weight: 600;
}

.project-box p {
	font-size: 18px;
	font-weight: 500;
	text-align: justify;
	font-family: Rolide;
}

.main-project {
	background-image: url('../assets/Appartment-S.jpg');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	height: 660px;
}

.project-title {
	position: absolute;
	bottom: 20px;
	left: 50px;
	font-size: 25px;
	font-weight: 500;
}

.main-project1 {
	background-image: url('../assets/Appartment-K.jpg');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	height: 660px;
}

.main-project2 {
	background-image: url('../assets/Apartment-B&S.jpg');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	height: 660px;
}

.main-project3 {
	background-image: url('../assets/BMW-Showroom.jpg');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	height: 650px;
}

.main-project4 {
	background-image: url('../assets/Apartment-P.jpg');
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	height: 650px;
}

.project-col {
	padding: 0px 12px 0px 0px !important;
}

.project-col1 {
	padding: 0px 0px 0px 12px !important;
}

.project-box2 {
	border-radius: 42px;
	background: #FFF;
	box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.25);
	padding: 25px 50px;
}

.project-box2 p {
	font-size: 14px;
	text-align: justify;
	font-family: Rolide;
}

.project-box2 .last-text {
	margin-bottom: 0px !important;
}

.project-sec1 {
	max-width: 1118px;
	width: 100%;
	margin: 0 auto;
}

.project-sec1 h1 {
	font-size: 60px;
	font-weight: 500;
}

.single-project img,
.single-project1 img {
	width: 100%;
	height: 100%;
}

.single-project {
	padding: 10px 10px 0px 5px;
}

.single-project1 {
	padding: 10px 5px 0px 10px;
}

.single-project-sec {
	padding: 50px 00px 150px 00px;
}

.single-project-sec2 {
	box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.25);
}

.project-col img,
.project-col1 img {
	width: 100%;
}

@font-face {
	font-family: Rolide;
	src: url("../assets/Rolide-Regular.otf") format("opentype");
}

/* contact page */
.author-box {
	box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.25);
	width: 198px;
	text-align: center;
}

.info-box .info-name {
	font-family: Rolide;
	font-size: 24px;
	font-weight: 400;
}

.info-box p {
	color: rgba(0, 0, 0, 0.60);
	font-family: Rolide;
	font-size: 16px;
	font-weight: 400;
}

.info-box .mail-text a {
	color: #000;
}

.contact-sec {
	padding-left: 72px;
	padding-right: 161px;
}

.contact-sec hr {
	border-top: 1px solid #717171;
}

.contact-head h3 {
	font-family: Rolide;
	font-size: 24px;
	font-weight: 400;
}

.contact-head p {
	font-family: Rolide;
	font-size: 16px;
	font-weight: 400;
}

.contact-form h5 {
	font-family: Poppins;
	font-size: 18px;
	font-weight: 600;
	line-height: 26px;
}

.contact-form {
	box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.25);
	margin: 0px 20px;
}

.contact-form form {
	position: relative;
}

.contact-form .form-control {
	background: linear-gradient(180deg, #EEE 17.3%, rgba(112, 112, 112, 0.00) 136.29%);
	color: rgba(0, 0, 0, 0.60);
	font-family: Poppins;
	font-size: 11px;
	font-weight: 400;
	height: 40px;
}

.textarea-text {
	height: 200px !important;
}

.contact-form .submit-btn {
	background-color: #fff;
	color: rgba(0, 0, 0, 0.80);
	font-family: Poppins;
	font-size: 12px;
	font-weight: 500;
	position: absolute;
	right: 0;
	bottom: 17px;
	box-shadow: 0px 0px 1px 0px rgba(0, 0, 0, 0.25);
	border-radius: 0px;
}

#close-menu {
	display: none;
}

/* media css */
@media (max-width: 990px) {
	.main-navbar {
		width: 100%;
	}

	#navbarNavDropdown {
		display: none;
	}

	#mobile-menu .navbar-nav .nav-link {
		color: #000 !important;
	}

	.main-header .navbar-light .navbar-nav .nav-link,
	.navbar-nav .nav-item a.active {
		color: #000 !important;
	}

	.item-1 {
		width: 100%;
	}

	.logo-img {
		position: absolute;
		right: 20px;
	}
}

@media(max-width: 768px) {
	.open #mobile-menu {
		display: block;
		z-index: 9999;
		position: absolute;
		width: 100%;
		left: 0px;
		padding: 20px;
		background-color: #fff;
		color: #000 !important;
		top: 70px;
		border-bottom: 0.5px solid #c1b5b5;
	}

	.main-footer {
		padding-left: 20px;
		padding-right: 20px;
	}

	.page-title-box,
	.single-project-sec {
		padding-left: 20px;
		padding-right: 20px;
	}

	.about-box h1 {
		font-size: 30px;
	}

	.project-sec h1 {
		font-size: 30px;
	}

	.project-box p {
		font-size: 16px;
	}

	.project-col,
	.project-col1 {
		padding: 0px 0px 24px 0px !important;
	}

	.single-project1,
	.single-project {
		padding: 10px;
	}

	.project-sec1 h1 {
		font-size: 30px;
	}

	.slider-box h1 {
		font-size: 20px;
		line-height: 30px;
	}

	.company-name {
		bottom: 1px;
		padding: 0px 20px;
	}

	.company-name h2 {
		font-size: 20px;
	}

	.Offer-list-ul {
		display: block !important;
	}

	.project-box2 {
		padding: 25px 25px;
	}

	.contact-sec {
		padding-left: 20px;
		padding-right: 20px;
	}

	.author-box {
		margin: 0 auto;
		width: 170px;
	}

	.info-box {
		text-align: center;
	}
}

@media(max-width: 991px) {
	.open #mobile-menu {
		display: block;
		z-index: 9999;
		position: absolute;
		width: 100%;
		left: 0px;
		padding: 20px;
		background-color: #fff;
		color: #000 !important;
		top: 70px;
		border-bottom: 0.5px solid #c1b5b5;
	}

	.services-title {
		font-size: 22px !important;
	}
}

.services-box {
	border-radius: 42px;
	background: #FFF;
	box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.25);
	padding: 32px;
}

.services-list {
	margin-top: 20px;
}

.services-title {
	font-size: 26px;
	font-weight: 600;
}

.services-list li {
	padding-bottom: 10px;
	font-size: 16px !important;
	font-weight: 500;
}

/* shop page css */
.content-area {
	padding: 50px;
}

.product-container .content-area {
	padding: 0px;
}

.product-container {
	padding: 40px;
	display: flex;
	column-gap: 50px;
}

.woocommerce-products-header__title.page-title {
	font-size: 64px;
	font-weight: 600;
}

.products li {
	list-style-type: none;
	border-radius: 20px;
  background: #FFF;
  box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.25);
  padding: 20px;

}

/*ul.products {
padding-left: 0px !important;
display: flex;
flex-wrap: wrap;
justify-content: start;
gap: 60px;
}*/
.products li h2 {
	font-size: 17px;
	line-height: 24px;
	margin-bottom: 4px;
	font-weight: 600;
	color: #3F3F46;
	max-width: 300px;
	margin-top: 60px;
}

.products li img {
	width: 100% !important;

}

p.woocommerce-result-count {
	float: left;
	display: block;
	padding-right: 19px;
	padding-top: 17px;
	margin-bottom: 0px;
}

.product-container #sidebar ul:nth-child(2) li {
	list-style-type: none;
	padding-left: 0px !important;
}

.product-container #sidebar ul:nth-child(2) li ul {
	padding-left: 0px !important;
}

.woocommerce-ordering {
	padding-top: 8px;
}

.product-container #sidebar ul {
	padding-left: 0px;
}
.columns-4 {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 30px;
	padding-left: 0px !important;
	margin-top: 30px;
}
.columns-5 {
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	gap: 30px;
	padding-left: 0px !important;
	margin-top: 30px;
}
.woocommerce-LoopProduct-link.woocommerce-loop-product__link {
  display: inline-block;
  width: 100%;
}
.product-container #sidebar ul {
	list-style-type: none;
	padding-left: 0px !important;
}

#searchsubmit {
	margin-top: 10px !important;
	display: inline-block;
}

#sidebar {
	display: none;
}

.product-container #sidebar ul:nth-child(2) li a {
	color: #000;
}

.product-container #sidebar ul:nth-child(2) li h2 {
	font-size: 23px;
	margin-bottom: 10px;
	margin-top: 35px;
}

.product-container form.woocommerce-ordering select {
	padding: 8px;
}

/* .type-product {
padding-top: 3%;
} */
/*.product-container .content-area {
padding: 0px;
display: inline-block;
width: calc(100% - 19%);
}*/
.summary.entry-summary {
	padding-top: 50px;
}

.related.products {
	display: block;
}

.products li h2 {
	display: none;
}

a.button.product_type_simple {
	margin-top: 15px;
	display: inline-block;
	background-color: #000;
	color: #fff !important;
	padding: 12px 20px;
	font-weight: 600;
}
.related.products .woocommerce-LoopProduct-link.woocommerce-loop-product__link {
  display: block;
  width: 100%;
}
.related.products h2{
	font-size: 30px;
  font-weight: 700;
  text-transform: capitalize;
}
@media (max-width: 768px) {
	.products {
		grid-template-columns: repeat(2, 1fr);
	}

	.product-container {
		flex-direction: column;
		padding: 20px;
	}

	.products li h2 {
		margin-top: 30px;
	}

	#sidebar div {
		padding: 2px;
	}

	#sidebar {
		border-top: 1px solid #ccc;
		margin-top: 20px;
	}

	.type-product {
		padding-top: 3%;
		width: 100%;
		height: auto;
		text-align: center;
	}

	.summary.entry-summary {
		padding-top: 30px;
	}

	.type-product img {
		width: 100%;
		height: auto;
		display: inline-block;
	}

	.type-product a {
		width: 100%;
		height: auto;
		display: inline-block;
	}
	a.button.product_type_simple{
		width: fit-content;
	}

	.woocommerce-product-gallery__image {
		width: 100%;
		height: auto;
	}

	.woocommerce-product-gallery__wrapper {
		width: 100%;
	}

	.woocommerce-product-gallery {
		width: 100%;
		height: auto;
	}

	.product-container .content-area {
		width: 100%;
	}
}

@media (max-width: 480px) {
	.products {
		grid-template-columns: 1fr;
	}
}
/* --- Layout wrapper --- */
.product.type-product {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}

/* --- Left side: Product images --- */
.product.type-product .woocommerce-product-gallery {
  flex: 1 1 40%;
  max-width: 40%;
}
.product_title.entry-title{
	font-size: 40px;
	font-weight: 600;
}
/* --- Right side: Summary --- */
.product.type-product .summary.entry-summary {
  flex: 1 1 55%;
  max-width: 55%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

/* --- Full-width Tabs below image + summary --- */
.product.type-product .woocommerce-tabs {
  flex: 1 1 100%;
  width: 100%;
  margin-top: 40px;
}

/* --- Full-width Related Products --- */
.product.type-product section.related.products {
  flex: 1 1 100%;
  width: 100%;
  margin-top: 60px;
}

/* --- Responsive fix for mobile --- */
@media (max-width: 768px) {
  .product.type-product {
    flex-direction: column;
  }

  .product.type-product .woocommerce-product-gallery,
  .product.type-product .summary.entry-summary {
    max-width: 100%;
    flex: 1 1 100%;
  }
  .product_title.entry-title {
  font-size: 25px;
}
}

/* Ensure images resize correctly */
.product.type-product img {
  width: 100%;
  height: auto;
}
.woocommerce-breadcrumb{
	margin-bottom: 30px;
}
.woocommerce-product-details__short-description {
  font-size: 20px;
}
.content-area a{
	color: #000 !important;
	font-weight: 600 !important;
}
.product_meta{
	font-size: 18px;
  font-weight: 600;
}
/* ---------- Tabs Header Styling ---------- */
.woocommerce-tabs .tabs {
  display: flex;
  border-bottom: 2px solid #e0e0e0;
  list-style: none;
  padding-left: 0;
  margin: 40px 0 20px 0;
}

.woocommerce-tabs .tabs li {
  margin-right: 30px;
}

.woocommerce-tabs .tabs li a {
  display: block;
  padding: 12px 20px;
  background: #f9f9f9;
  border: 1px solid #ddd;
  border-bottom: none;
  border-radius: 5px 5px 0 0;
  color: #333;
  text-decoration: none;
  font-weight: 600;
  transition: all 0.3s ease;
}

.woocommerce-tabs .tabs li.active a {
background: #000;
  border-color: #000;
  border-bottom: 2px solid black;
  color: #fff !important;
}

/* ---------- Tabs Content Styling ---------- */
.woocommerce-Tabs-panel {
  border: 1px solid #ddd;
  background: #fff;
  padding: 25px;
  border-radius: 0 5px 5px 5px;
  margin-bottom: 40px;
}

/* Headings inside tabs */
.woocommerce-Tabs-panel h2 {
  font-size: 20px;
  margin-bottom: 15px;
}

/* Links in tab content */
.woocommerce-Tabs-panel a {
  color: #0066cc;
  text-decoration: underline;
}

/* ---------- Reviews Form Styling ---------- */
#review_form_wrapper {
  margin-top: 30px;
}

.comment-form-rating label,
.comment-form-comment label {
  font-weight: bold;
  display: block;
  margin-bottom: 5px;
}

.comment-form-comment textarea {
  width: 100%;
  border: 1px solid #ccc;
  border-radius: 5px;
  padding: 10px;
  resize: vertical;
}

/* Star rating style */
.comment-form-rating .stars a {
  color: #ccc;
  text-decoration: none;
  font-size: 18px;
  padding: 0 2px;
  transition: color 0.3s;
}

.comment-form-rating .stars a:hover,
.comment-form-rating .stars a:focus {
  color: gold;
}

/* Submit button */
#review_form .form-submit input[type="submit"] {
  background: #222;
  color: #fff;
  padding: 10px 20px;
  border: none;
  border-radius: 4px;
  font-weight: bold;
  cursor: pointer;
}

#review_form .form-submit input[type="submit"]:hover {
  background: #444;
}

/* ---------- Responsive ---------- */
@media (max-width: 768px) {
  .woocommerce-tabs .tabs {
    flex-direction: column;
    margin-bottom: 10px;
  }

  .woocommerce-tabs .tabs li {
    margin-right: 0;
    margin-bottom: 10px;
  }

  .woocommerce-tabs .tabs li a {
    border-radius: 5px;
  }
  .custom-category-filter{
	margin-top: 20px !important;
  }
}


/* ----- Review Form Wrapper ----- */


#review_form .comment-reply-title {
    font-size: 20px;
    font-weight: 600;
    margin-bottom: 20px;
}

/* ----- Rating Input ----- */
#review_form .comment-form-rating label {
    display: block;
    font-weight: 600;
    margin-bottom: 10px;
}

#review_form .stars {
    display: flex;
    gap: 5px;
    font-size: 22px;
    color: #ccc;
    cursor: pointer;
}

/* ⭐ Hides "1 of 5 stars" text, keeps it screen reader-friendly */
#review_form .stars span a {
    text-indent: -9999px; /* Hide text */
    position: relative;
    display: inline-block;
    width: 24px;
    height: 24px;
    margin-right: 5px;
    background: url('data:image/svg+xml;utf8,<svg fill="gray" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><polygon points="10,1 12.5,7.5 19,7.5 13.5,11.5 16,18 10,14 4,18 6.5,11.5 1,7.5 7.5,7.5"/></svg>') no-repeat center;
    background-size: contain;
}

#review_form .stars span a:hover,
#review_form .stars span a.active {
    background: url('data:image/svg+xml;utf8,<svg fill="orange" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><polygon points="10,1 12.5,7.5 19,7.5 13.5,11.5 16,18 10,14 4,18 6.5,11.5 1,7.5 7.5,7.5"/></svg>') no-repeat center;
    background-size: contain;
}

#review_form .stars {
    display: flex;
    gap: 4px;
    margin-bottom: 15px;
}
#review_form .stars span a {
    color: #ccc;
    transition: color 0.3s ease;
}

#review_form .stars span a:hover,
#review_form .stars span a.active {
    color: #f5a623;
}

/* ----- Text Input Fields ----- */
#review_form input[type="text"],
#review_form input[type="email"],
#review_form textarea {
    width: 100%;
    padding: 10px 12px;
    margin-bottom: 15px;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 14px;
    resize: vertical;
}

/* ----- Submit Button ----- */
#review_form input[type="submit"] {
    background-color: #000;
    color: #fff;
    padding: 10px 25px;
    font-size: 14px;
    font-weight: 600;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    transition: background 0.3s ease;
}

#review_form input[type="submit"]:hover {
    background-color: #333;
}
.woocommerce-ordering {
  display: inline-block;
}
.custom-category-filter {
  display: inline-block;
}