:root {
	--color-primary: #3a3a3c;
	--color-primary-strong: #1f2937;
	--color-accent: #c2bc9f;
	--color-accent-strong: #a89f79;
	--color-accent-dark: #6e653b;
	--color-text: #000000;
	--color-text-soft: #333333;
	--color-muted: #666666;
	--color-white: #ffffff;
	--color-black: #000000;
	--color-bg-soft: #f6f8fb;
	--color-bg-soft-2: #eef2f8;
	--color-border: #e6e8ec;
	--color-border-muted: #d1d5db;
	--color-divider: #444444;
	--color-brand-blue: #013370;
	--color-brand-orange: #ff9c01;
	--color-brand-black: #0e0e0e;
	--color-danger: #d63636;
	--color-danger-2: #dc3232;
	--color-success-bg: #e8f4ee;
	--color-success-border: #46b450;
	--color-success-text: #1e7e34;
	--color-overlay-dark: rgba(0, 0, 0, 0.35);
	--color-overlay-black: #000000;
	--color-overlay-accent: #c2bc9f5c;
	--color-shadow-soft: 0 8px 24px rgb(0 0 0 / 6%);
	--color-shadow-hover: 0 18px 35px rgba(0, 0, 0, 0.12);
	--color-shadow-md: 0 4px 10px rgba(0, 0, 0, 0.15);
	--color-shadow-sm: 0 6px 16px rgba(0, 0, 0, 0.08);
	--color-shadow-brand: 0 0 0 3px rgba(1, 51, 112, 0.12);
	--color-shadow-brand-soft: 0 4px 14px rgba(1, 51, 112, 0.15);
	--color-shadow-card: 0px 8px 24px 0px rgba(149, 157, 165, 0.2);
	--color-brand-bg-soft: #0133700a;
	--color-brand-border-15: rgba(1, 51, 112, 0.15);
	--color-brand-border-25: rgba(1, 51, 112, 0.25);
}

/* Start Header Css */
.search-bar a.ekit_navsearch-button.ekit-modal-popup {
	display: flex;
	align-items: center;
	justify-content: center;
}
.call-section .elementor-icon-wrapper {
	line-height: 0 !important;
}
.link-sec a {
    color: var(--color-accent-dark) !important;
}
.link-sec a:hover {
    color: var(--color-white) !important;
    transition: 0.2s linear;
}
.link-text a {
    text-decoration: none !important;
}
.link-text a:hover {
    color: var(--color-brand-orange) !important;
    transition: 0.2s linear;
}
/* End Header Css */


/* Start Banner Breadcrumbs Css */
.custom-breadcrumb {
	font-size: 18px;
	display: flex;
	align-items: center;
	gap: 6px;
	color: var(--color-white);
	font-family: 'Poppins';
	line-height: 1.7em;
}
.custom-breadcrumb a {
	text-decoration: none !important;
	transition: color 0.3s ease;
	color: var(--color-white);
}
.custom-breadcrumb a:hover {
	color: var(--color-primary);
}
.custom-breadcrumb .current {
	color: var(--color-primary);
	font-weight: 500;
}
.custom-breadcrumb .bc-separator {
	color: var(--color-white);
}
/* End Banner Breadcrumbs Css */



/* Start Square Infra Contact Form */
.square-infra-contact {
	padding-top: 20px;
}
.square-infra-contact .contact-col p,
.square-infra-contact .contact-row p {
	margin: 0 !important;
}
.square-infra-contact .contact-row {
	display: flex;
	gap: 20px;
	margin-bottom: 20px;
}
.square-infra-contact .contact-row.full {
	flex-direction: column;
}
.square-infra-contact .contact-col {
	flex: 1;
}
.square-infra-contact input, .square-infra-contact textarea, .square-infra-contact select {
    width: 100%;
    padding: 12px 16px;
    border: 1px solid var(--color-accent);
    border-radius: 0;
    font-size: 15px;
    transition: border-color 0.3s ease;
    font-family: 'Poppins';
    color: var(--color-text);
}
.square-infra-contact input:focus,
.square-infra-contact textarea:focus,
.square-infra-contact select:focus {
	border-color: var(--color-primary);
	outline: none;
}
.square-infra-contact textarea {
	min-height: 100px;
	resize: vertical;
}
.square-infra-contact .square-infra-btn {
	background: var(--color-white) !important;
	color: var(--color-white);
	border: none;
	padding: 10px 20px;
	font-size: 16px;
	border-radius: 100px;
	cursor: pointer;
	transition: background 0.3s ease;
	width: 100%;
	max-width: 110px;
	font-family: 'Poppins';
}
.square-infra-contact .square-infra-btn:hover {
    background: var(--color-primary) !important;
}
.page-id-573 input.wpcf7-form-control.wpcf7-submit.has-spinner.square-infra-btn {
    background: var(--color-accent) !important;
    color: var(--color-white) !important;
}
.page-id-573 input.wpcf7-form-control.wpcf7-submit.has-spinner.square-infra-btn:hover {
    background: var(--color-primary) !important;
    color: var(--color-white) !important;
}
.link-text a {
    color: var(--color-primary) !important;
}
.link-text a:hover {
    color: var(--color-primary) !important;
    transition: 0.2s linear;
}
.square-infra-contact .wpcf7-not-valid-tip {
	font-size: 13px;
	color: var(--color-danger);
	margin-top: 5px;
}
.square-infra-contact .wpcf7-response-output {
	margin-top: 20px;
	border-radius: 6px;
	font-size: 14px;
}
.square-infra-contact .contact-row.full:last-child {
    margin: 0 !important;
}
/* End Square Infra Contact Form */


/* Start Home Page Services Slider Css */
.re-grid .slick-track {
    display: flex;
    gap: 20px;
}
.re-project-slider .re-grid.re-slick-slider {
    margin: 0 -10px;
}
.re-project-slider .slick-dots {
  position: relative;
  bottom: 0;
  margin-top: 35px;
  display: flex !important;
  justify-content: center;
  align-items: center;
  gap: 10px;
  padding: 0;
}
.re-project-slider .slick-dots li {
  width: auto;
  height: auto;
  margin: 0;
}
.re-project-slider .slick-dots li button:before {
	display: none;
}
.re-project-slider .slick-dots li button {
  font-size: 0;
  line-height: 0;
  width: 10px;
  height: 10px;
  padding: 0;
  border-radius: 50px;
  background: var(--color-border-muted);
  border: none;
  cursor: pointer;
  transition: all 0.35s ease;
}
.re-project-slider .slick-dots li.slick-active button {
    width: 34px;
    background: var(--color-black);
}
.re-project-slider .slick-dots li button:hover {
  background: var(--color-black);
}

/* End Home Page Services Slider Css */




/* Start service single */
/* Start service single */
.service-hero{
	padding:70px 0;
}
.hero-container {
	max-width: 1360px;
	margin: auto;
	padding: 0 50px;
	width: 100%;
	box-sizing: border-box
}
.hero-grid{
	display:grid;
	grid-template-columns: 2.2fr 1fr;
	gap:24px;
}
.hero-main{
	position:relative;
	border-radius:18px;
	overflow:hidden;
	cursor:zoom-in;
}
.hero-main img{
	width:100%;
	height:520px;
	object-fit:cover;
}
.hero-main::after{
	content:"View Gallery";
	position:absolute;
	inset:0;
	display:flex;
	align-items:center;
	justify-content:center;
	color: var(--color-white);
	font-weight:600;
	background: var(--color-overlay-dark);
	opacity:0;
	transition:.3s;
}
.hero-main:hover::after{
	opacity:1
}
.hero-side{
	height:520px;
	overflow:hidden;
	position:relative;
}
.hero-thumb{
	border-radius:16px;
	overflow:hidden;
	cursor:zoom-in;
}
.hero-thumb img{
	width:100%;
	height:160px;
	object-fit:cover;
}
.hero-stack{
	display:flex;
	flex-direction:column;
	gap:18px;
}
.hero-swiper{
	height:520px;
}
.hero-swiper .swiper-slide{
	height:auto;
	margin-bottom:18px;
}
.gallery-modal{
	position:fixed;
	inset:0;
	background: var(--color-overlay-black);
	display:none;
	align-items:center;
	justify-content:center;
	z-index:9999;
}
.gallery-modal.active{display:flex}
.gallery-close{
	position:absolute;
	top:30px;
	right:40px;
	color: var(--color-white);
	font-size:40px;
	cursor:pointer;
}
.gallery-swiper{
	width:90%;
	max-width:1400px;
}
.gallery-swiper img{
	width:100%;
	height:85vh;
	object-fit:contain;
}
.hero-side{
	height:520px;
	position:relative;
}
.hero-swiper-wrapper{
	height:100%;
	position:relative;
}
.hero-swiper{
	height:100%;
}
.hero-swiper .swiper-slide {
	height:160px;          
	margin-bottom:18px;
}
.hero-nav{
	position:absolute;
	left:50%;
	transform:translateX(-50%);
	width:36px;
	height:36px;
	background: var(--color-white);
	border-radius:50%;
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:14px;
	color: var(--color-brand-blue);
	cursor:pointer;
	box-shadow: var(--color-shadow-md);
	z-index:5;
}
.hero-prev { 
	top:10px; 
}
.hero-next { 
	bottom:10px; 
}
.hero-thumb img{
	width:100%;
	height:160px;
	object-fit:cover;
}
.hero-swiper-wrapper .swiper-wrapper {
	flex-direction: column;
}
.service-highlight-bar {
    margin: 10px auto 80px auto;
    padding: 0 50px;
    max-width: 1260px;
}
.highlight-wrap {
    margin: auto;
    padding: 28px 40px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: var(--color-brand-bg-soft);
    border-radius: 10px;
}
.highlight-item{
	display:flex;
	align-items:center;
	gap:16px;
}
.hi-icon{
	width:54px;
	height:54px;
	border-radius:50%;
	background: var(--color-accent);
	display:flex;
	align-items:center;
	justify-content:center;
	box-shadow: var(--color-shadow-sm);
}
.hi-icon i{
	font-size:22px;
	color: var(--color-white);
}
.hi-text strong {
    font-size: 28px;
    font-weight: 500;
    color: var(--color-brand-black);
    line-height: 1.5;
    font-family: 'Poppins';
}
.hi-text small {
    display: block;
    margin-top: 4px;
    font-size: 14px;
    text-transform: uppercase;
    color: var(--color-muted);
    font-weight: 600;
    font-family: 'Poppins';
}
.service-description-product {
    background: var(--color-white);
    border-radius: 10px;
    padding: 30px;
    box-shadow: var(--color-shadow-card);
}
.desc-product-wrap{
	max-width:900px;
	margin:auto;
}
.desc-title{
	font-size:26px;
	font-weight:500;
	color: var(--color-brand-blue);
	margin-bottom:26px;
	letter-spacing:.3px;
}
.desc-product-content{
	font-size:16px;    
	line-height:1.8;
	color: var(--color-text-soft);
}
.desc-product-content p{
	margin-bottom:20px;
}
.desc-product-content ul{
	margin:24px 0;
	padding-left:18px;
}
.desc-product-content h3{
	font-size:20px;
	font-weight:500;
	color: var(--color-brand-blue);
	margin:36px 0 16px;
}
.desc-product-content strong{
	font-weight:500;
	color: var(--color-brand-blue);
}
.service-desc-features-wrap .service-flex-container {
    max-width: 1350px;
    padding: 0 50px;
    margin: 0 auto;
    box-sizing: border-box;
    display: flex;
    align-items: flex-start;
    gap: 30px;
    margin-bottom: 80px;
}
.service-desc-features-wrap .service-flex-container .service-desc-features-inner {
    width: 50%;
    display: flex;
    flex-direction: column;
    gap: 30px;
}
.service-desc-features-wrap .service-flex-container section.service-enquiry-section {
    position: sticky;
    top: 130px;
    width: 50%;
    height: fit-content;
}
.service-category-title {
	font-size: 48px;
	margin: 0;
	font-family: 'Poppins';
	color: var(--color-white);
	text-transform: capitalize;
	font-weight: 700;
	line-height: 1.2em;
}
.service-features-table {
    background: var(--color-white);
    border-radius: 10px;
    padding: 30px;
    box-shadow: var(--color-shadow-card);
}
.desc-title, .features-title {
    font-size: 24px;
    font-weight: 600;
    color: var(--color-primary);
    margin-bottom: 18px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--color-brand-border-15);
    margin-top: 0 !important;
    line-height: 1.3;
	font-family: 'Poppins';
}
.desc-product-content {
    font-size: 15px;
    line-height: 1.8;
    color: var(--color-text);
    font-family: 'Poppins';
}
.desc-product-content p {
	margin-bottom: 14px;
}
.service-brochure-cta {
	margin-top: 28px;
}
.brochure-btn {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	background: var(--color-accent);
	color: var(--color-white);
	padding: 12px 22px;
	border-radius: 30px;
	font-size: 16px;
	font-weight: 400;
	text-decoration: none;
	transition: all 0.3s ease;
	border: none;
}
.brochure-btn:hover {
	background: var(--color-primary);
	color: var(--color-white);
}
.brochure-btn i {
	font-size: 16px;
}
.features-table {
	display: flex;
	flex-direction: column;
	gap: 12px;
}
.feature-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	padding: 12px 14px;
	border-radius: 10px;
	background: var(--color-bg-soft);
}
.feature-row:nth-child(even) {
	background: var(--color-bg-soft-2);
}
.feature-label {
	font-size: 14px;
	font-weight: 500;
	color: var(--color-primary);
}
.feature-value {
	font-size: 14px;
	color: var(--color-text);
	text-align: right;
}
section.service-floor-plans {
    background: var(--color-accent);
    padding: 100px 0;
}
section.service-floor-plans .floor-flex-container {
    width: 100%;
    max-width: 1350px;
    margin: 0 auto;
    padding: 0 50px;
    box-sizing: border-box;
}
section.service-floor-plans .floor-flex-container .floor-plans-inner .floor-grid {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    margin: 0 -15px;
	row-gap: 30px;
}
.floor-title {
    font-size: 40px;
    line-height: 1.2;
    font-weight: 600;
    color: var(--color-text);
    margin: 0;
    text-align: center;
    padding-bottom: 50px;
    position: relative;
}
h2.floor-title:after {
    content: "";
    position: absolute;
    bottom: 40px;
    height: 1px;
    width: 70px;
    background: var(--color-text);
    left: 50%;
    transform: translate(-50%);
}
section.service-floor-plans .floor-flex-container .floor-plans-inner .floor-grid .floor-card {
    width: calc(50% - 30px);
    border-radius: 10px;
    padding: 0 15px;
}
section.service-floor-plans .floor-flex-container .floor-plans-inner .floor-grid .floor-card .floor-image img {
    width: 100%;
    border-radius: 10px;
    height: 100%;
}
.enquiry-wrap {
    margin: 0 auto;
    border-radius: 10px 50px 10px 50px;
    padding: 30px;
    box-shadow: var(--color-shadow-card);
    background: var(--color-accent);
}
.enquiry-title {
    font-size: 30px;
    font-weight: 600;
    color: var(--color-primary);
    text-align: left;
    margin: 0 !important;
}
.enquiry-form input[type="text"],
.enquiry-form input[type="email"],
.enquiry-form input[type="tel"],
.enquiry-form textarea,
.enquiry-form select {
	width: 100%;
	padding: 14px 16px;
	border-radius: 0;
	border: 1px solid var(--color-brand-border-25);
	font-size: 14px;
	color: var(--color-text);
	background: var(--color-white);
	transition: all 0.3s ease;
	box-sizing: border-box;
}
.enquiry-form textarea {
    height: 90px !important;
    resize: vertical;
}
.enquiry-form input:focus,
.enquiry-form textarea:focus,
.enquiry-form select:focus {
	outline: none;
	border-color: var(--color-primary);
	box-shadow: var(--color-shadow-brand);
}
.enquiry-form label {
	font-size: 13px;
	font-weight: 500;
	color: var(--color-primary);
	margin-bottom: 6px;
	display: block;
}
.wpcf7-response-output {
	margin-top: 18px;
	padding: 12px 16px;
	border-radius: 10px;
	font-size: 13px;
}
.wpcf7-mail-sent-ok {
	background: var(--color-success-bg);
	border: 1px solid var(--color-success-border);
	color: var(--color-success-text);
}
.wpcf7-validation-errors,
.wpcf7-not-valid-tip {
	color: var(--color-danger-2);
	font-size: 12px;
}
.re-listing {
    max-width: 1350px;
    margin: 0 auto;
    padding: 100px 50px;
	box-sizing: border-box;
}
.re-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.re-card {
    background: var(--color-white);
    border-radius: 0 30px 0 30px;
    overflow: hidden;
    border: 1px solid var(--color-border);
    transition: all 0.3s ease;
	box-shadow: var(--color-shadow-soft);
}
.re-card:hover {
  box-shadow: var(--color-shadow-hover);
}
.re-image {
  position: relative;
  display: block;
}
.re-image img {
  width: 100%;
  height: 235px;
  object-fit: cover;
  display: block;
}
.re-image::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 4px;
  background: var(--color-accent);
}
.re-float {
  padding: 30px;
}

.re-float h3 {
    margin: 0 0 20px;
    font-size:19px;
    font-weight: 600;
    color: var(--color-primary);
    line-height: 1.4;
    font-family: 'Poppins';
}
.re-info-bar {
  display: flex;
  flex-wrap: wrap;
  gap: 14px 18px;
  margin-bottom: 22px;
}
.re-info-box {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-size: 17px;
    color: var(--color-text);
    font-family: 'Poppins';
}
.re-info-box i {
  font-size: 14px;
  color: var(--color-primary);
}
.re-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background: var(--color-accent);
    color: var(--color-white);
    padding: 10px 20px;
    border-radius: 30px;
    font-size: 15px;
    line-height: 1;
    text-decoration: none !important;
    border: none;
    transition: all 0.3s ease;
}
.re-card:hover .re-btn {
	background: var(--color-primary-strong);
	color: var(--color-white);
}
.no-results {
  text-align: center;
  padding: 70px 20px;
  font-size: 16px;
  color: var(--color-muted);
}

.re-related-projects h2.re-listing-title {
    font-size: 40px;
    line-height: 1.2;
    margin: 0;
    padding-bottom: 50px;
	position: relative;
}
h2.re-listing-title:after {
    content: "";
    position: absolute;
    bottom: 40px;
    left: 0;
    width: 140px;
    height: 1px;
    background: var(--color-divider);
}
.elementor-117 .elementor-element.elementor-element-158e060 .elementor-button {
    background: var(--color-white);
}
nav.re-breadcrumbs {
    width: 100%;
    max-width: 520px;
    padding: 10px 20px;
    background: color-mix(in srgb, var(--color-bg-soft) 75%, var(--color-accent) 25%);
    border: 1px solid var(--color-border);
    border-radius: 10px;
    margin-bottom: 50px;
    display: flex;
    align-items: center;
    gap: 10px;
}
nav.re-breadcrumbs  span.re-sep {
    line-height: 0;
}
nav.re-breadcrumbs a {
    color: var(--color-text);
    text-decoration: none;
    font-size: 16px;
    line-height: 1.2;
}
nav.re-breadcrumbs a:hover {
    color: var(--color-primary);
}
nav.re-breadcrumbs span.re-sep svg {
    width: 20px;
    height: 20px;
    line-height: 0;
}
nav.re-breadcrumbs span {
    color: var(--color-accent-strong);
    font-weight: 500;
}






/* ==============================
	GLOBAL FONT & BASE
	================================ */
	.service-hero,
	.service-hero * {
		font-family: 'Poppins', sans-serif;
		color: var(--color-text);
	}

	/* ==============================
	TITLE
	================================ */
	.service-title {
		color: var(--color-primary);
		font-size: 40px;
		font-weight: 600;
		margin-bottom: 30px;
		line-height: 1.2;
	}

	/* ==============================
	MAIN SLIDER (NO CROP)
	================================ */
	.service-main-swiper {
		width: 100%;
		height: 650px;
		overflow: hidden;
		position: relative;
		padding: 0;
		box-sizing: border-box;
	}

	/* Center image */
	.service-main-swiper .swiper-slide {
		display: flex;
		align-items: center;
		justify-content: center;
	}

	.service-main-swiper img {
		width: 100% !important;
		height: 100%;
		object-fit: cover;
		border-radius: 10px;
	}

	/* ==============================
	ARROWS (ROUND + BRAND)
	================================ */
	.service-main-swiper .swiper-button-next,
	.service-main-swiper .swiper-button-prev {
		width: 46px;
		height: 46px;
		border-radius: 50%;
		background: var(--color-primary);
		transition: all 0.3s ease;
	}

	.service-main-swiper .swiper-button-next::after,
	.service-main-swiper .swiper-button-prev::after {
		font-size: 16px;
		font-weight: bold;
		color: var(--color-white);
	}

	.service-main-swiper .swiper-button-next:hover,
	.service-main-swiper .swiper-button-prev:hover {
		background: var(--color-brand-orange);
		transform: scale(1.05);
	}

	/* Arrow positioning */
	.service-main-swiper .swiper-button-prev {
		left: 12px;
	}
	.service-main-swiper .swiper-button-next {
		right: 12px;
	}

	/* ==============================
	THUMB SLIDER (NO CROP)
	================================ */
	.service-thumb-swiper {
		margin-top: 20px;
	}

	.service-thumb-swiper .swiper-slide {
		height: 150px;
		cursor: pointer;
		opacity: 0.45;
		transition: all 0.3s ease;
		background: var(--color-white);
		/* border: 1px solid rgba(1, 51, 112, 0.2); */
		padding: 0;
		box-sizing: border-box;
	}

	/* Contain thumbs */
	.service-thumb-swiper .swiper-slide img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		border-radius: 10px;
	}

	/* ACTIVE THUMB */
	.service-thumb-swiper .swiper-slide-thumb-active {
		opacity: 1;
		border-color: var(--color-primary);
		box-shadow: var(--color-shadow-brand-soft);
	}

	/* HOVER EFFECT */
	.service-thumb-swiper .swiper-slide:hover {
		opacity: 0.85;
	}

	/* ==============================
	MOBILE OPTIMIZATION
	================================ */
	@media (max-width: 768px) {
		.service-title {
			font-size: 28px;
		}

		.service-main-swiper {
			height: 320px;
			padding: 12px;
			border-radius: 14px;
		}

		.service-thumb-swiper .swiper-slide {
			height: 70px;
		}

		.service-main-swiper .swiper-button-next,
		.service-main-swiper .swiper-button-prev {
			width: 40px;
			height: 40px;
		}
	}

/* Lightbox poup design css */
.single-our-service .lb-nav a.lb-prev, .single-our-service .lb-nav a.lb-next {
    opacity: 1 !important;
    display: block !important;
	filter: brightness(0) saturate(100%) invert(56%) sepia(58%) saturate(3406%) hue-rotate(331deg) brightness(90%) contrast(103%) !important;
}
/* Lightbox poup design css */


/* Start 3D Projects Css */
.re-3d-projects .re-image {
	position: relative;
	overflow: hidden;
}
.re-3d-projects .re-image img {
	width: 100%;
	display: block;
}
.re-3d-projects .re-overlay {
	position: absolute;
	inset: 0;
	background: var(--color-overlay-accent);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 1;
	transition: opacity 0.35s ease;
	z-index: 2;
}
.re-3d-projects .re-overlay-icon {
    width: 100%;
    max-width: 90px;
}
.re-3d-projects .re-overlay-icon svg {
	width: 100%;
	height: auto;
	display: block;
}
.re-3d-projects .re-card:hover .re-overlay {
	opacity: 1;
}
.re-3d-projects .re-card:hover .re-overlay-icon {
    transform: scale(1.1);
    transition: 0.3s linear;
}
.re-3d-projects .re-card {
    cursor: pointer;
}
.re-3d-projects .re-float {
    padding: 30px;
    text-align: center;
}
/* End 3D Projects Css */


@media (max-width: 1024px) {
	.hero-container,
	.service-highlight-bar,
	.service-desc-features-wrap .service-flex-container {
		padding: 0 30px;
	}
	.service-desc-features-wrap .service-flex-container {
		margin-bottom: 60px;
	}
	.service-highlight-bar {
		margin-bottom: 60px;
	}
	.highlight-wrap {
		padding: 30px;
	}
	.hi-icon {
		width: 40px;
		height: 40px;
	}
	.hi-icon i {
		font-size: 15px;
		color: var(--color-white);
	}
	.hi-text strong {
		font-size: 22px;
	}
	.enquiry-title {
		font-size: 24px;
	}
	section.service-floor-plans {
		padding: 60px 0;
	}
	.floor-title {
		font-size: 24px;
		padding-bottom: 30px;
	}
	section.service-floor-plans .floor-flex-container {
		padding: 0 30px;
	}
	.re-listing {
		padding: 60px 30px;
	}
	.re-related-projects h2.re-listing-title {
		font-size: 24px;
		padding-bottom: 30px;
	}
	.service-title {
		font-size: 30px;
		margin-bottom: 0;
		padding-bottom: 30px;
	}
	.service-hero {
		padding: 50px 0;
	}
	nav.re-breadcrumbs {
		margin-bottom: 30px;
	}
	.re-float h3 {
		margin: 0 0 15px;
		font-size: 18px;
	}
	.re-info-bar {
		gap: 15px;
		margin-bottom: 22px;
	}
	.re-float {
		padding: 20px;
	}
	.re-btn, .square-infra-contact .square-infra-btn {
		padding: 10px 15px;
		font-size: 13px;
	}
	.square-infra-contact .square-infra-btn {
		max-width: 90px;
	}
	.brochure-btn {
		padding: 8px 22px;
		font-size: 13px;
	}
	.square-infra-contact .contact-row {
		display: flex;
		gap: 20px;
		margin-bottom: 10px;
	}
	.enquiry-form input[type="text"], .enquiry-form input[type="email"], .enquiry-form input[type="tel"], .enquiry-form textarea, .enquiry-form select {
		padding: 12px 15px;
	}
	.service-main-swiper {
		height: 500px;
	}
	.service-thumb-swiper .swiper-slide {
		height: 100px;
	}
	h2.floor-title:after {
		bottom: 20px;
		height: 1px;
		width: 40px;
	}
	h2.re-listing-title:after {
		bottom: 20px;
		width: 100px;
	}
}

@media (max-width: 768px) {
	.hero-container,
	.service-highlight-bar,
	.service-desc-features-wrap .service-flex-container {
		padding: 0 20px;
	}
	.service-desc-features-wrap .service-flex-container {
		margin-bottom: 40px;
		flex-wrap: wrap;
	}
	.service-desc-features-wrap .service-flex-container .service-desc-features-inner {
		gap: 20px;
		width: 100%;
	}
	.service-desc-features-wrap .service-flex-container section.service-enquiry-section {
		width: 100%;
	}
	.service-highlight-bar {
		margin-bottom: 40px;
	}
	.service-title {
		font-size: 22px;
		padding-bottom: 20px;
	}
	nav.re-breadcrumbs {
		margin-bottom: 20px;
		padding: 6px 10px;
		max-width: 420px;
	}
	nav.re-breadcrumbs a {
		font-size: 14px;
	}
	nav.re-breadcrumbs span {
		font-size: 14px;
	}
	.service-main-swiper {
		height: 300px;
	}
	.service-thumb-swiper .swiper-slide {
		height: 80px;
		margin-right: 10px !important;
	}
	.service-thumb-swiper {
		margin-top: 10px;
	}
	.highlight-wrap {
		padding: 20px;
		gap: 20px;
		row-gap: 30px;
		flex-wrap: wrap;
	}
	.hi-text strong {
		font-size: 18px;
	}
	.hi-text small {
		margin-top: 2px;
		font-size: 12px;
	}
	.re-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.re-listing {
		padding: 40px 20px;
	}
	.service-hero {
		padding: 40px 0;
	}
}

@media (max-width: 570px) {
	.re-grid {
		grid-template-columns: repeat(1, 1fr);
	}
	section.service-floor-plans .floor-flex-container .floor-plans-inner .floor-grid .floor-card {
		width: 100%;
		border-radius: 10px;
		padding: 0 5px;
		row-gap: 20px;
	}
	section.service-floor-plans .floor-flex-container .floor-plans-inner .floor-grid {
    row-gap: 10px;
}
	section.service-floor-plans {
		padding: 40px 0;
	}
	.enquiry-wrap {
		border-radius: 10px 30px 10px 30px;
		padding: 20px 15px;
	}
	.service-features-table {
		padding: 20px 15px;
	}
	.service-description-product {
		padding: 20px 15px;
	}
	.desc-title, .features-title {
		font-size: 20px;
		margin-bottom: 7px;
		padding-bottom: 7px;
	}
	.enquiry-form input[type="text"], .enquiry-form input[type="email"], .enquiry-form input[type="tel"], .enquiry-form textarea, .enquiry-form select {
    padding: 10px 15px;
}
	.service-thumb-swiper .swiper-slide {
		height: 50px;
	}
	.service-thumb-swiper .swiper-slide img {
		border-radius: 4px;
	}
	nav.re-breadcrumbs {
		gap: 3px;
		row-gap: 10px;
		max-width: 300px !important;
	}
	nav.re-breadcrumbs a {
		font-size: 12px;
	}
	nav.re-breadcrumbs span.re-sep svg {
		width: 12px;
		height: 12px;
		line-height: 0;
	}
	nav.re-breadcrumbs span {
		font-size: 12px;
	}
	
}