@media all and (max-width:900px) {

	#closemenu,
	#openmenu {
		display: inline-block;
	}

	#navigation {
		position: fixed;
		top: 0;
		left: -320px;
		bottom: 0;
		height: 100vh;
		background-color: var(--color-dark);
		padding: 20px;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		width: 320px;
		overflow: auto;
	}

	#closemenu {
		float: right;
	}

	.menu {
		padding-top: 20px;
		overflow: hidden;
		clear: both;
	}

	.menu li {
		float: none;
		margin: 0px 0px;
		margin-bottom: 20px;
	}

	.wrapper-edge {
		-webkit-transform: translateY(0%);
		-ms-transform: translateY(0%);
		transform: translateY(0%);
		margin-bottom: 100px;
	}

	.aboutus-content {
		padding-right: 0px;
		margin-bottom: 50px;
	}

	.aboutus-img,
	.aboutus-content,
	.project-img,
	.project-content,
	.project-img a,
	.wrapper-contact,
	.wrapper-form {
		width: 100%;
	}

	.single-edge {
		margin-bottom: 50px;
	}

	.wrapper-services article,
	.single-progress {
		width: calc(50% - 20px);
	}

	.project-img {
		margin-bottom: 30px;
	}

	.project-content {
		padding-left: 0px;
	}

	.wrapper-contact {
		padding-right: 0px;
	}

	.wrapper-contact {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	.single-address {
		width: 50%;
	}

	.contact-block {
		flex: 1 1 calc(50% - 30px);
		min-width: 200px;
	}

	.wrapper-contact-info {
		gap: 20px;
	}

	.header-top {
		display: none;
	}

}

@media all and (max-width:650px) {

	.wrapper-services article,
	.single-progress {
		width: calc(100% - 20px);
	}

	.single-address {
		width: 100%;
		text-align: center;
	}

	.contact-block {
		flex: 1 1 100%;
		max-width: 100%;
	}

	.wrapper-input input {
		width: 100%;
	}

	#contact h2 {
		text-align: center;
	}

	/* Hero section improvements for medium mobile */
	.wrapper-header-content {
		height: 700px;
	}

	h1 {
		font-size: 55px;
	}

	h2 {
		font-size: 38px;
	}

}

@media all and (max-width:480px) {

	.wrapper-header-content {
		height: 100vh;
		min-height: 500px;
		padding-top: 80px;
	}

	.header-content {
		padding: 20px 15px;
	}

	.header-content h1 {
		font-size: 40px !important;
		line-height: 1.2;
		margin-bottom: 15px;
	}

	.header-content p {
		font-size: 1rem !important;
		margin: 15px 0 !important;
	}

	.header-content .btn {
		padding: 18px 35px !important;
		font-size: 13px !important;
		margin-top: 20px;
		white-space: normal;
		line-height: 1.4;
		display: block;
		width: 100%;
		max-width: 320px;
		margin-left: auto;
		margin-right: auto;
		box-shadow: 0 8px 20px rgba(106, 175, 8, 0.4);
		animation: subtle-pulse 3s ease-in-out infinite;
	}

	@keyframes subtle-pulse {

		0%,
		100% {
			transform: scale(1);
			box-shadow: 0 8px 20px rgba(106, 175, 8, 0.4);
		}

		50% {
			transform: scale(1.02);
			box-shadow: 0 10px 25px rgba(106, 175, 8, 0.5);
		}
	}

	h2 {
		font-size: 32px;
	}

	/* Fixed header adjustments */
	.wrapper-header-bottom {
		padding: 10px 0;
	}

	#logo {
		font-size: 1.5rem !important;
	}

}