@font-face {
	font-family: "Ploni";
	src: url("../../assets/fonts/ploni-regular.woff") format("woff");
	font-weight: 400;
	font-style: normal;
}

@font-face {
	font-family: "Ploni-light";
	src: url("../../assets/fonts/ploni-light.otf") format("opentype");
	font-weight: 300;
	font-style: normal;
}

@font-face {
	font-family: "Ploni-semibold";
	src: url("../../assets/fonts/ploni-semibold.eot") format("woff");
	font-weight: 600;
	font-style: normal;
}

@font-face {
	font-family: "Ploni-bold";
	src: url("../../assets/fonts/ploni-bold.woff") format("woff");
	font-weight: 700;
	font-style: normal;
}

html,
body {
	overflow-x: hidden;
}

body {
	margin: 0;
	padding: 0;
	font-family: "Ploni", sans-serif;
	color: #231F20;
	text-align: right;
	background-image: url("../../assets/images/bg-sky.jpg");
	background-size: cover;
	background-repeat: no-repeat;
}

a {
	text-decoration: none;
}

ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

a:hover {
	text-decoration: none;
}

.form-label {
	color: #000000;
	font-size: 20px;
	font-weight: 600;
	margin-bottom: 14px;
}

.form-control {
	border-radius: 5px;
	height: 40px;
	font-size: 18px;
	font-weight: 400;
	direction: rtl;
	text-align: right;
}

.form-control::placeholder {
	color: #231F20;
	text-align: right;
}

.form-control:focus {
	box-shadow: none;
	outline: none;
	color: #231F20;
}

.form-group {
	margin-bottom: 25px;
}

textarea {
	height: 95px !important;
	resize: none;
}

img {
	max-width: 100%;
}

.btn {
	padding: 8px 15px 4px;
	border-radius: 30px;
	font-weight: 400;
	font-size: 18px;
	transition: all 0.2s;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 42px;
}

.btn:focus {
	outline: none;
	box-shadow: none;
}


.btn-primary {
	color: #fff;
	border: 1px solid #0169E8;
	background: #0169E8;
}


/* Hero */

.hero-section {
	padding: 0 0 80px;
	background-image: url("../../assets/images/hero-bg.png");
	background-size: cover;
	background-repeat: no-repeat;
	min-height: 1480px;
	margin-top: 450px;
	color: #fff;
	background-position: bottom;
}

.hero-section h3 {
	font-size: 250px;
	font-weight: 600;
	line-height: 200px;
}

.hero-section h3 span {
	font-size: 115px;
}

.hero-section h5 {
	font-size: 94px;
	font-weight: 700;
	margin-bottom: 15px;
}

.hero-section p {
	font-size: 74.108px;
	text-shadow: 0 0 30.549px rgba(2, 67, 147, 0.53);
	line-height: 65px;
	margin-bottom: 0;
}


.hero-section h4 {
	font-size: 74px;
	font-weight: 400;
	line-height: 75px;
	text-shadow: 0 0 30.549px rgba(2, 67, 147, 0.53);
}

.hero-section h4 span {
	font-size: 94px;
	font-weight: 700;
}

.hero-section .card {
	margin-bottom: 80px;
	margin-top: -350px;
	background-image: url('../../assets/images/card-bg.png');
	background-size: cover;
	background-repeat: no-repeat;
	box-shadow: 6px 4px 10px 0 #00000024;
	border-radius: 8px;
}


.hero-section .card h1 {
	font-size: 165.931px;
	text-align: left;
	line-height: 150.531px;
	font-weight: 500;
}

.hero-section .card h1 span {
	color: #0169E8;
	font-weight: 600;
}

.hero-section .card .card-body {
	padding: 50px 30px;
}

.hero-vector {
	position: absolute;
	top: 0;
	right: 0;
}

.hero-section .card .dot {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	position: absolute;
	display: block;
	background: #6794c7;
}

.hero-section .card .dot-up {
	top: -70px;
	left: 50px;
}


.hero-section .card .dot-down {
	bottom: -70px;
	left: 50px;
	background: #0169E8;

}


/* Contact */

.contact-section {
	padding: 20px 0 80px;
	position: relative;
}


.contact-section .form-group {
	margin-bottom: 21px;
}

.contact-section .form-control {
	border-radius: 70px;
	border: 2.741px solid #FFF;
	background: rgba(255, 255, 255, 0.56);
	height: 75px;
	font-size: 40px;
	padding: 8px 25px;
	color: #231F20;
}

.contact-section .form-control:focus {
	border: 3px solid #0169E8;
}

.contact-section .btn {
	height: 75px;
	border-radius: 70px;
	font-size: 32px;
}

.contact-section label span {
	font-size: 18px !important;
}

.contact-section p {
	font-size: 18px !important;
	color: #231F20 !important;
	text-align: center !important;
}

.contact-section p a {
	color: #231F20 !important;
}


.our-project {
	background-image: url("../../assets/images/service-bg.jpg");

	background-size: cover;
	background-repeat: no-repeat;
	padding: 100px 0 120px;
	position: relative;
	overflow: hidden;
}

.our-project h2 {
	font-size: 94.6px;
	margin-bottom: 50px;
	line-height: 90px;
}

.our-project h2 span {
	font-weight: 600;
}

.our-project ul {
	display: grid;
	align-items: center;
	grid-template-columns: repeat(3, 1fr);
	gap: 25px;
}

.our-project ul li {
	border-radius: 20px;
	color: #fff;
	text-align: center;
	width: 100%;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	position: relative;
	z-index: 9;
	border: 3.85px solid #fff;
	backdrop-filter: blur(16.54px);
	-webkit-backdrop-filter: blur(16.54px);
	padding-top: 95.72%;
	height: 0;
	overflow: hidden;
}

.our-project ul li::before {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(0deg, rgba(2, 67, 147, 0.20) 0%, rgba(2, 67, 147, 0.20) 100%);
	border-radius: 20px;
	z-index: 0;
}

.our-project ul li a.project-link {
	position: absolute;
	inset: 0;
	z-index: 2;
}

.our-project ul li div {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	text-align: center;
}

.our-project ul li img {
	position: absolute;
	bottom: calc(100% - 56% + 8%);
	left: 50%;
	transform: translateX(-50%);
}

.our-project ul li h4 {
	position: absolute;
	top: 56%;
	left: 0;
	right: 0;
	margin: 0;
	font-size: 84.17px;
	line-height: 50.50px;
	font-weight: 600;
	transform: translateY(-50%);
}

.our-project ul li p {
	position: absolute;
	top: 68%;
	left: 0;
	right: 0;
	margin: 0;
	font-size: 52.61px;
	line-height: 1.5;
}

.project-vector {
	position: absolute;
	bottom: -80px;
	right: 5%;
	width: 300px;
	max-width: 300px;
}


/* Terms Modal */
.terms-modal {
	display: none;
	position: fixed;
	z-index: 10000;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.7);
	backdrop-filter: blur(5px);
	animation: fadeIn 0.3s ease;
	overflow-y: auto;
}

.terms-modal-content {
	background: #ffffff;
	margin: 3% auto;
	padding: 0;
	border-radius: 15px;
	width: 90%;
	max-width: 900px;
	box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
	position: relative;
	animation: slideDown 0.4s ease;
	margin-bottom: 50px;
}

.terms-modal-close {
	color: #aaa;
	position: sticky;
	top: 20px;
	float: left;
	margin: 20px 0 0 25px;
	font-size: 35px;
	font-weight: 300;
	cursor: pointer;
	transition: color 0.3s;
	line-height: 1;
	z-index: 1;
}

.terms-modal-close:hover,
.terms-modal-close:focus {
	color: #0169E8;
}

.terms-modal-body {
	padding: 60px 50px 50px;
	max-height: 80vh;
	overflow-y: auto;
	direction: rtl;
	text-align: right;
}

.terms-modal-body::-webkit-scrollbar {
	width: 8px;
}

.terms-modal-body::-webkit-scrollbar-track {
	background: #f1f1f1;
	border-radius: 10px;
}

.terms-modal-body::-webkit-scrollbar-thumb {
	background: #0169E8;
	border-radius: 10px;
}

.terms-modal-body::-webkit-scrollbar-thumb:hover {
	background: #0152c7;
}

.terms-modal-body h2 {
	font-size: 32px;
	color: #0169E8;
	margin-bottom: 30px;
	font-weight: 700;
	text-align: center;
	border-bottom: 3px solid #0169E8;
	padding-bottom: 15px;
}

.terms-modal-body h3 {
	font-size: 24px;
	color: #231F20;
	margin-top: 30px;
	margin-bottom: 15px;
	font-weight: 700;
}

.terms-modal-body p {
	font-size: 16px;
	color: #231F20;
	line-height: 1.8;
	margin-bottom: 15px;
}

.terms-modal-body ol {
	padding-right: 25px;
	margin-bottom: 20px;
}

.terms-modal-body ol li {
	font-size: 16px;
	color: #231F20;
	line-height: 1.8;
	margin-bottom: 12px;
}

.terms-modal-body ul {
	padding-right: 25px;
	margin: 10px 0;
	list-style: disc;
}

.terms-modal-body ul li {
	font-size: 16px;
	color: #231F20;
	line-height: 1.7;
	margin-bottom: 8px;
}

.terms-modal-body strong {
	color: #0169E8;
	font-weight: 600;
}

@media (max-width: 767px) {
	.terms-modal-content {
		width: 95%;
		margin: 5% auto 10%;
	}

	.terms-modal-body {
		padding: 50px 25px 30px;
		max-height: 75vh;
	}

	.terms-modal-close {
		font-size: 28px;
		margin: 15px 0 0 20px;
	}

	.terms-modal-body h2 {
		font-size: 24px;
		margin-bottom: 20px;
	}

	.terms-modal-body h3 {
		font-size: 20px;
		margin-top: 20px;
	}

	.terms-modal-body p,
	.terms-modal-body ol li,
	.terms-modal-body ul li {
		font-size: 14px;
	}
}

/* Success Modal */
.success-modal {
	display: none;
	position: fixed;
	z-index: 10000;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.6);
	backdrop-filter: blur(5px);
	animation: fadeIn 0.3s ease;
}

.success-modal-content {
	background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
	margin: 10% auto;
	padding: 50px 40px;
	border-radius: 20px;
	width: 90%;
	max-width: 500px;
	text-align: center;
	box-shadow: 0 20px 60px rgba(1, 105, 232, 0.3);
	position: relative;
	animation: slideDown 0.4s ease;
}

.success-modal-close {
	color: #aaa;
	position: absolute;
	top: 20px;
	left: 25px;
	font-size: 35px;
	font-weight: 300;
	cursor: pointer;
	transition: color 0.3s;
	line-height: 1;
}

.success-modal-close:hover,
.success-modal-close:focus {
	color: #0169E8;
}

.success-modal-icon {
	width: 80px;
	height: 80px;
	background: linear-gradient(135deg, #0169E8 0%, #0152c7 100%);
	border-radius: 50%;
	margin: 0 auto 25px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 50px;
	color: white;
	font-weight: bold;
	animation: scaleIn 0.5s ease 0.2s both;
	box-shadow: 0 10px 30px rgba(1, 105, 232, 0.4);
}

.success-modal-content h2 {
	font-size: 42px;
	color: #0169E8;
	margin-bottom: 20px;
	font-weight: 700;
}

.success-modal-content p {
	font-size: 24px;
	color: #231F20;
	line-height: 1.8;
	margin: 0;
}

@keyframes fadeIn {
	from { opacity: 0; }
	to { opacity: 1; }
}

@keyframes slideDown {
	from {
		opacity: 0;
		transform: translateY(-50px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes scaleIn {
	from {
		transform: scale(0);
	}
	to {
		transform: scale(1);
	}
}

@media (max-width: 767px) {
	.success-modal-content {
		padding: 40px 30px;
		margin: 30% auto;
		max-width: 90%;
	}

	.success-modal-icon {
		width: 60px;
		height: 60px;
		font-size: 40px;
		margin-bottom: 20px;
	}

	.success-modal-content h2 {
		font-size: 28px;
		margin-bottom: 15px;
	}

	.success-modal-content p {
		font-size: 18px;
		line-height: 1.6;
	}

	.success-modal-close {
		font-size: 28px;
		top: 15px;
		left: 20px;
	}
}

/* Footer */

footer {
	padding: 30px 0;
	background: #0169E8;
}

/* Mobile footer fix */
@media (max-width: 767px) {
	.col-8 {
		flex: 0 0 auto;
		width: 100%;
	}
}


.btn-outline-light {
	font-size: 50px;
	height: 96px;
	border-radius: 116px;
	border: 1px solid #FFF;
	padding: 10px 50px;
	display: inline-flex;
}

.caret-icon {
	position: absolute;
	left: 25px;
	top: 50%;
	transform: translateY(-50%);
	pointer-events: none;
}


/* Media Query */

@media (min-width: 1400px) {

	.container,
	.container-lg,
	.container-md,
	.container-sm,
	.container-xl,
	.container-xxl {
		max-width: 1720px;
	}
}

@media (max-width: 1400px) {
	.hero-section .card h1 {
		font-size: 110.931px;
		line-height: 103.531px;
	}
}

@media (max-width: 1200px) {
	.our-project h2 {
		font-size: 75px;
		line-height: 80px;
	}


	.our-project ul {
		grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
	}

}

@media (max-width: 767px) {


	.our-project {
		padding: 60px 0 80px;
	}

	.our-project h2 {
		font-size: 20px;
		line-height: 25px;
		margin-bottom: 20px;
	}

	.our-project ul li h4 {
		font-size: 17.40px;
		line-height: 10.44px;
		margin-top: 5px;
		margin-bottom: 0;
	}

	.our-project ul li p {
		font-size: 10.87px;
		line-height: 1.5;
		margin-bottom: 0;
		margin-top: 5px;
	}

	.our-project ul {
		display: grid;
		align-items: center;
		grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
		gap: 10px;
	}

	.our-project ul li {
		border-radius: 10px;
		border-width: 2px;
	}

	.our-project ul li::before {
		border-radius: 10px;
	}

	.our-project ul li img {
		width: 30px;
	}

	.contact-section .form-control {
		height: 39.832px;
		font-size: 15.489px;
		padding: 5px 20px;
	}

	.contact-section .btn {
		height: 39.832px;

		font-size: 15.489px;
	}


	.contact-section .form-group {
		margin-bottom: 15px;
	}

	.hero-section .card h1 {
		font-size: 52px;
		line-height: 50.477px;
		margin-bottom: 30px !important;
	}

	.hero-section .card .card-body {
		padding: 70px 30px 20px;
	}

	.hero-vector {
		width: 150px;
	}

	.hero-section .card .dot-up {
		top: -6px;
		left: -41px;
		background: #0169E8;
	}

	.hero-section .card .dot-down {
		top: -6px;
		right: -41px;
		bottom: unset;
		background: #0169E8;
	}

	.hero-section h4 {
		font-size: 20px;
		line-height: 24px;
		text-shadow: none;

	}

	.hero-section h5 {
		font-size: 24px;
		margin-bottom: 10px;
	}

	.hero-section {
		color: #2D3135;
		min-height: 680px;
		margin-top: 500px;
	}

	.hero-section .card {
		margin-top: -460px;
	}

	.hero-section h4 span {
		font-size: 20px;

	}

	.hero-section p {
		font-size: 24px;
		line-height: 32px;

	}

	.hero-section h3 {
		font-size: 66px;
		line-height: 80px;
		color: #0169E8;
		margin-top: 20px;

	}

	.hero-section h3 span {
		font-size: 29px;

	}

	.hero-section .card {
		margin-bottom: 0;
		border-radius: 6px 6px 0 0;
		background-image: url('../../assets/images/card-bg.png');
		background-size: cover;
		background-repeat: no-repeat;
		box-shadow: none;
		padding-bottom: 25px;
		border: 0;
	}

	.hero-content {
		background: #fff;
		background-image: url('../../assets/images/card-bg.png');
		background-size: cover;
		background-repeat: no-repeat;
		padding: 0 20px 30px;
		border-radius: 0 0 6px 6px;
		margin-top: 0;
		box-shadow: 6px 4px 10px 0 #00000024;
	}

	.caret-icon {
		left: 15px;
		width: 10px;
	}

	.contact-section {
		padding: 40px 0 60px;
	}

	.hero-section {
		min-height: 580px;
	}

}

@media (max-width: 767px) {

	.our-project ul {
		grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));

	}

	.project-vector {
		width: 150px;
		max-width: 150px;
		bottom: -40px;
		right: 5%;
	}

	.btn-outline-light {
		font-size: 16px;
		height: 33px;
		padding: 4px 20px;
	}

	.btn-outline-light img {
		width: 16px;
	}

	.footer-logo {
		width: 60px;
	}

}

@media (max-width: 576px) {

	.our-project ul {
		grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
	}

	.container,
	.container-fluid,
	.container-sm,
	.container-md,
	.container-lg,
	.container-xl,
	.container-xxl {
		padding-left: 24px;
		padding-right: 24px;
	}
}

@media (max-width: 400px) {
	.our-project ul {
		grid-template-columns: repeat(auto-fit, minmax(90px, 1fr));
	}
}

/* Desktop only - card-bg-2 with built-in decorative elements */
@media (min-width: 768px) {
	.hero-section .card {
		background-image: url('../../assets/images/card-bg-2.png');
		background-color: transparent;
		border: 0;
	}

	.hero-section .card .card-body {
		padding: 60px 20px;
	}

	.hero-vector {
		display: none !important;
	}

	.hero-section .card .dot {
		display: none !important;
	}

	.hero-section .card .line {
		display: none !important;
	}
}

/* Responsive scaling for tablets and small desktops (768px - 991px) */
@media (min-width: 768px) and (max-width: 991px) {
	.container,
	.container-lg,
	.container-md,
	.container-sm,
	.container-xl,
	.container-xxl {
		max-width: 90%;
		padding-left: 20px;
		padding-right: 20px;
	}

	.hero-section {
		min-height: 650px;
		margin-top: 200px;
		padding: 0 0 40px;
	}

	.hero-section h3 {
		font-size: 80px;
		line-height: 70px;
	}

	.hero-section h3 span {
		font-size: 40px;
	}

	.hero-section h5 {
		font-size: 35px;
		margin-bottom: 10px;
	}

	.hero-section p {
		font-size: 28px;
		line-height: 32px;
	}

	.hero-section h4 {
		font-size: 28px;
		line-height: 32px;
	}

	.hero-section h4 span {
		font-size: 35px;
	}

	.hero-section .card {
		margin-top: -150px;
		margin-bottom: 40px;
	}

	.hero-section .card h1 {
		font-size: 60px;
		line-height: 58px;
	}

	.hero-section .card .card-body {
		padding: 29px 0px;
	}

	/* Show desktop hero image, hide mobile hero image */
	.hero-section .card img[src*="hero-mobile.png"] {
		display: none !important;
	}

	.hero-section .card img[src*="hero.png"] {
		display: block !important;
		max-width: 400px;
		width: 100%;
		margin: 0 auto;
	}

	.contact-section .form-control {
		height: 50px;
		font-size: 24px;
		padding: 8px 20px;
	}

	.contact-section .btn {
		height: 50px;
		font-size: 20px;
	}

	.caret-icon {
		width: 11px;
	}

	.project-vector {
		width: 180px;
		max-width: 180px;
		bottom: -50px;
	}

	.our-project {
		padding: 50px 0 60px;
	}

	.our-project h2 {
		font-size: 40px;
		line-height: 45px;
		margin-bottom: 30px;
	}

	.our-project ul {
		grid-template-columns: repeat(3, 1fr);
		gap: 15px;
	}

	.our-project ul li img {
		max-width: 80px !important;
	}

	.our-project ul li h4 {
		font-size: 32px;
		line-height: 28px;
	}

	.our-project ul li p {
		font-size: 20px;
		line-height: 1.5;
	}
}

/* Responsive scaling for medium laptops (992px - 1199px) */
@media (min-width: 992px) and (max-width: 1199px) {
	.container,
	.container-lg,
	.container-md,
	.container-sm,
	.container-xl,
	.container-xxl {
		max-width: 90%;
		padding-left: 30px;
		padding-right: 30px;
	}

	.hero-section {
		min-height: 800px;
		margin-top: 280px;
		padding: 0 0 50px;
	}

	.hero-section h3 {
		font-size: 110px;
		line-height: 95px;
	}

	.hero-section h3 span {
		font-size: 55px;
	}

	.hero-section h5 {
		font-size: 45px;
		margin-bottom: 12px;
	}

	.hero-section p {
		font-size: 35px;
		line-height: 38px;
	}

	.hero-section h4 {
		font-size: 35px;
		line-height: 40px;
	}

	.hero-section h4 span {
		font-size: 45px;
	}

	.hero-section .card {
		margin-top: -220px;
		margin-bottom: 50px;
	}

	.hero-section .card h1 {
		font-size: 85px;
		line-height: 80px;
	}

	.contact-section .form-control {
		height: 55px;
		font-size: 28px;
		padding: 8px 22px;
	}

	.contact-section .btn {
		height: 55px;
		font-size: 22px;
	}

	.caret-icon {
		width: 12px;
	}

	.project-vector {
		width: 200px;
		max-width: 200px;
		bottom: -60px;
	}

	.our-project {
		padding: 60px 0 70px;
	}

	.our-project h2 {
		font-size: 50px;
		line-height: 52px;
		margin-bottom: 35px;
	}

	.our-project ul {
		grid-template-columns: repeat(3, 1fr);
		gap: 18px;
	}

	.our-project ul li img {
		max-width: 100px !important;
	}

	.our-project ul li h4 {
		font-size: 42px;
		line-height: 32px;
	}

	.our-project ul li p {
		font-size: 26px;
		line-height: 1.5;
	}
}

/* Responsive scaling for large laptops (1200px - 1399px) */
@media (min-width: 1200px) and (max-width: 1399px) {
	.container,
	.container-lg,
	.container-md,
	.container-sm,
	.container-xl,
	.container-xxl {
		max-width: 1100px;
		padding-left: 40px;
		padding-right: 40px;
	}

	.hero-section {
		min-height: 1000px;
		margin-top: 340px;
		padding: 0 0 60px;
	}

	.hero-section h3 {
		font-size: 160px;
		line-height: 135px;
	}

	.hero-section h3 span {
		font-size: 75px;
	}

	.hero-section h5 {
		font-size: 60px;
		margin-bottom: 13px;
	}

	.hero-section p {
		font-size: 48px;
		line-height: 48px;
	}

	.hero-section h4 {
		font-size: 48px;
		line-height: 52px;
	}

	.hero-section h4 span {
		font-size: 60px;
	}

	.hero-section .card {
		margin-top: -270px;
		margin-bottom: 60px;
	}

	.hero-section .card h1 {
		font-size: 110px;
		line-height: 105px;
	}

	.contact-section .form-control {
		height: 60px;
		font-size: 32px;
		padding: 8px 23px;
	}

	.contact-section .btn {
		height: 60px;
		font-size: 26px;
	}

	.caret-icon {
		width: 13px;
	}

	.project-vector {
		width: 220px;
		max-width: 220px;
		bottom: -65px;
	}

	.our-project {
		padding: 70px 0 85px;
	}

	.our-project h2 {
		font-size: 65px;
		line-height: 65px;
		margin-bottom: 40px;
	}

	.our-project ul {
		grid-template-columns: repeat(3, 1fr);
		gap: 20px;
	}

	.our-project ul li img {
		max-width: 120px !important;
	}

	.our-project ul li h4 {
		font-size: 48px;
		line-height: 44px;
	}

	.our-project ul li p {
		font-size: 28px;
		line-height: 1.5;
	}
}

/* Responsive scaling for large desktops (1400px - 1599px) */
@media (min-width: 1400px) and (max-width: 1599px) {
	.container,
	.container-lg,
	.container-md,
	.container-sm,
	.container-xl,
	.container-xxl {
		max-width: 1300px;
		padding-left: 50px;
		padding-right: 50px;
	}

	.hero-section {
		min-height: 1200px;
		margin-top: 380px;
		padding: 0 0 70px;
	}

	.hero-section h3 {
		font-size: 200px;
		line-height: 170px;
	}

	.hero-section h3 span {
		font-size: 95px;
	}

	.hero-section h5 {
		font-size: 75px;
		margin-bottom: 14px;
	}

	.hero-section p {
		font-size: 60px;
		line-height: 58px;
	}

	.hero-section h4 {
		font-size: 60px;
		line-height: 64px;
	}

	.hero-section h4 span {
		font-size: 75px;
	}

	.hero-section .card {
		margin-top: -310px;
		margin-bottom: 70px;
	}

	.hero-section .card h1 {
		font-size: 135px;
		line-height: 128px;
	}

	.contact-section .form-control {
		height: 65px;
		font-size: 36px;
		padding: 8px 24px;
	}

	.contact-section .btn {
		height: 65px;
		font-size: 28px;
	}

	.caret-icon {
		width: 14px;
	}

	.project-vector {
		width: 240px;
		max-width: 240px;
		bottom: -70px;
	}

	.our-project {
		padding: 85px 0 100px;
	}

	.our-project h2 {
		font-size: 78px;
		line-height: 78px;
		margin-bottom: 45px;
	}

	.our-project ul {
		grid-template-columns: repeat(3, 1fr);
		gap: 22px;
	}

	.our-project ul li img {
		max-width: 150px !important;
	}

	.our-project ul li h4 {
		font-size: 52px;
		line-height: 48px;
	}

	.our-project ul li p {
		font-size: 30px;
		line-height: 1.5;
	}
}

/* Desktop scaling - reduce all elements for better UX on large screens */
@media (min-width: 1600px) {
	/* Container constraint */
	.container,
	.container-lg,
	.container-md,
	.container-sm,
	.container-xl,
	.container-xxl {
		max-width: 1400px !important;
	}

	/* Hero section scaling */
	.hero-section {
		min-height: 900px;
		margin-top: 350px;
		padding: 0 0 200px;
	}

	.hero-section h3 {
		font-size: 140px;
		line-height: 120px;
	}

	.hero-section h3 span {
		font-size: 70px;
	}

	.hero-section h5 {
		font-size: 55px;
	}

	.hero-section p {
		font-size: 45px;
		line-height: 40px;
	}

	.hero-section h4 {
		font-size: 45px;
		line-height: 45px;
	}

	.hero-section h4 span {
		font-size: 55px;
	}

	.hero-section .card {
		margin-bottom: 50px;
		margin-top: -300px;
	}

	.hero-section .card h1 {
		font-size: 146px;
		line-height: 140px;
	}

	.hero-section .card .card-body {
		padding: 60px 20px;
	}

	.hero-section .card .dot {
		width: 25px;
		height: 25px;
	}

	.hero-section .card .dot-up {
		top: -40px;
		left: 50%;
		transform: translateX(-50%);
	}

	.hero-section .card .dot-down {
		bottom: -40px;
		left: 50%;
		transform: translateX(-50%);
	}

	/* Header */
	header .logo img {
		max-width: 180px;
	}

	/* Service section */
	.service-section {
		padding: 60px 0 80px;
	}

	.main-heading {
		font-size: 55px;
		line-height: 55px;
		margin-bottom: 30px;
	}

	.service-section .service-card {
		padding: 30px 20px;
		border-radius: 15px;
	}

	.service-section .service-card img {
		max-width: 80px;
		margin-bottom: 20px;
	}

	.service-section .service-card h5 {
		font-size: 32px;
		margin-bottom: 10px;
	}

	.service-section .service-card p {
		font-size: 22px;
		line-height: 28px;
	}

	/* Contact section */
	.contact-section {
		padding: 60px 0;
	}

	.contact-section .container {
		max-width: 800px;
	}

	.form-control {
		height: 37.5px;
		font-size: 15px;
		border-radius: 6px;
	}

	.form-group {
		margin-bottom: 15px;
	}

	.btn {
		height: 37.5px;
		font-size: 15px;
		padding: 6px 19px 3px;
	}

	.caret-icon {
		left: 20px;
		width: 15px;
	}

	/* Projects section */
	.our-project {
		padding: 60px 0 80px;
	}

	.our-project h2 {
		font-size: 55px;
		line-height: 55px;
		margin-bottom: 35px;
	}

	.our-project ul {
		grid-template-columns: repeat(3, 1fr);
		gap: 20px;
	}


	.our-project ul li img {
		max-width: 140px !important;
		width: auto !important;
		height: auto !important;
	}

	.our-project ul li:first-child img {
		max-width: 170px !important;
	}

	.our-project ul li h4 {
		margin-top: 18px;
		font-size: 55px;
		line-height: 52px;
	}

	.our-project ul li p {
		font-size: 32px;
		line-height: 1.5;
	}

	.project-vector {
		width: 260px;
		max-width: 260px;
		bottom: -75px;
	}

	/* Footer */
	footer {
		padding: 25px 0;
	}

	.btn-outline-light {
		font-size: 30px;
		height: 60px;
		padding: 8px 35px;
		border-radius: 80px;
	}

	footer .logo img {
		max-width: 180px;
	}
}