@media only screen and (max-width: 1800px) {
	:root {
		--font-18: 17px;
		--font-20: 19px;
		--font-22: 21px;
		--font-24: 23px;
		--font-30: 28px;
		--font-40: 36px;
		--font-68: 60px;
		--font-100: 90px;
	}
}

@media only screen and (max-width: 1600px) {
	:root {
		--font-18: 16px;
		--font-20: 18px;
		--font-22: 20px;
		--font-24: 22px;
		--font-30: 26px;
		--font-40: 34px;
		--font-68: 55px;
		--font-100: 80px;
	}
}

@media only screen and (max-width: 1440px) {
	:root {
		--font-16: 14px;
		--font-18: 15px;
		--font-20: 16px;
		--font-22: 18px;
		--font-24: 20px;
		--font-30: 24px;
		--font-40: 30px;
		--font-68: 50px;
		--font-100: 70px;
	}
}

@media only screen and (max-width: 1360px) {
	:root {
		--font-22: 17px;
		--font-24: 18px;
		--font-30: 22px;
		--font-40: 28px;
		--font-68: 45px;
		--font-100: 60px;
	}
}

@media only screen and (max-width: 1200px) {
	:root {
		--font-40: 26px;
		--font-68: 40px;
		--font-100: 55px;
	}

	input.button,
	.button,
	.site-header .header-row ul li a:not(.button),
	.site-header,
	.site-header .header-row .sub-menu-tabing-nav ul li a {
		--font-18: 13px
	}

	.site-header .header-row ul {
		gap: 0.8rem;
	}

	.header-logo {
		max-width: 24rem;
	}

	.site-header .header-row .sub-menu-tabing-content ul li {
		padding: 3rem;
	}

	.site-header .header-row .sub-menu-tabing-content ul li {
		width: 100%;
		flex: 100%;
	}

	.sub-menu-row .sub-menu-item-content {
		width: 60%;
	}

	.sub-menu-row .submenu-call-to-action-block {
		width: 40%;
	}

	.site-footer {
		--font-18: 14px;
		--font-20: 14px;
		position: relative;
	}

	.footer-item ul:not(.social-media) {
		gap: 2rem;
	}

	.footer-bottom {
		flex-wrap: wrap;
	}

	.footer-bottom .footer-item:last-child {
		width: 100%;
		text-align: center;
		border-top: 0.5px solid rgba(255, 255, 255, 0.4);
		padding-top: 4rem;
	}

}

@media only screen and (max-width: 1023px) {
	:root {
		--font-40: 24px;
		--font-68: 38px;
		--font-100: 50px;
	}

	.header-logo {
		max-width: 20rem;
	}

	.site-header .header-row ul {
		gap: 0.5rem;
	}
}

@media only screen and (max-width: 991px) {
	:root {
		--font-68: 36px;
		--font-100: 40px;
	}

	br {
		display: none;
	}

	.menu-website-header-menu-container {
		position: fixed;
		bottom: 0;
		right: -100%;
		opacity: 0;
		visibility: hidden;
		width: 100%;
		background: #000000;
		height: 100%;
		z-index: -1;
		padding-top: 18rem;
		transition: 0.5s all;
		-webkit-transition: 0.5s all;
		-moz-transition: 0.5s all;
		-ms-transition: 0.5s all;
		-o-transition: 0.5s all;
	}

	.menu-website-header-menu-container.active {
		right: 0;
		opacity: 1;
		visibility: visible;
	}

	.site-header .header-row .menu-website-header-menu-container ul {
		flex-direction: column;
		height: 100%;
		overflow: auto;
		padding-bottom: 10rem;
		gap: 0;
	}

	.site-header .header-row ul li {
		border-bottom: 0.5px solid rgba(255, 255, 255, 0.1);
		position: relative;
	}

	.header-item .fa-angle-down {
		display: block;
		position: absolute;
		top: 0;
		right: 25px;
		width: 55px;
		height: 55px;
		display: flex;
		align-items: center;
		justify-content: flex-end;
	}

	.site-header .header-row ul li:last-child {
		border-bottom: none;
	}

	.site-header .header-row ul li a:not(.button), .site-header .header-row ul li ul.sub-menu a {
		width: 100%;
		font-size: 15px !important;
		padding: 20px 25px !important;
		border: none;
		border-radius: 0;
		background: transparent;
	}

	.mega-sub-menu,
	.site-header .header-row ul.sub-menu {
		position: unset;
		opacity: 1;
		visibility: visible;
		margin-top: 0;
		margin-bottom: -1px;
		border-radius: 0;
		padding: 0;
		gap: 0;
		height: auto;
		overflow: unset;
		display: none;
		transition: unset;
	}

	.sub-menu-tabing-nav {
		width: 100%;
		border-right: none;
	}

	.site-header .header-row .sub-menu-tabing-nav ul {
		padding: 0;
	}

	.site-header .header-row .sub-menu-tabing-nav ul li a {
		padding-left: 25px;
		padding-right: 25px;
	}

	.site-header .header-row .sub-menu-tabing-nav ul li:last-child {
		border-bottom: none;
	}

	.site-header .header-row ul li a:not(.button)::after {
		display: none;
	}

	.sub-menu-tabing-content {
		display: none;
	}

	.header-logo {
		max-width: 28rem;
	}

	.button-menu-toggle {
		display: inline-flex;
		align-items: center;
		flex-direction: row-reverse;
		gap: 3rem;
	}

	.menu-toggle {
		position: relative;
		width: 32px;
		height: 24px;
		cursor: pointer;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
		background: transparent;
		border: none;
		padding: 0;
		z-index: 1001;
	}

	.menu-toggle span {
		display: block;
		height: 3px;
		width: 100%;
		background: var(--secondary);
		border-radius: 2px;
		transition: all 0.3s ease;
		transform-origin: center;
	}

	.menu-toggle.active span:nth-child(1) {
		transform: translateY(10px) rotate(45deg);
	}

	.menu-toggle.active span:nth-child(2) {
		opacity: 0;
	}

	.menu-toggle.active span:nth-child(3) {
		transform: translateY(-11.1px) rotate(-45deg);
	}

	.footer-middle .footer-item {
		width: 50%;
		padding: 3rem;
	}

	.footer-middle {
		margin: 4rem -3rem -3rem -3rem;
		flex-wrap: wrap;
		gap: 0;
	}

	.image-content-box-row .content {
		padding: 5rem 8rem;
	}

	.image-content-box-item {
		min-width: 70vw;
	}

	.book-demo {
		max-width: 100%;
	}

	.features-row .left-part {
		width: 40%;
	}

	.features-row .right-part {
		width: 55%;
	}

	.tech-stack-logos .tech-stack-logo-item {
		flex: calc(33.33% - 2rem);
		max-width: unset;
	}

	.our-team-row {
		gap: 6rem;
	}

	.grid .our-team-row {
		gap: 0;
	}

	.our-team-row .right-part,
	.our-team-row .left-part {
		width: 100%;
	}

	.our-team-section.grid .our-team-row .our-team-list .our-team-block {
		width: calc(50% - 2rem);
	}

	.contact-item-row {
		margin: -3rem -5rem;
	}

	.contact-item-row .contact-information-item {
		width: 100%;
		flex: 100%;
		padding: 3rem 5rem;
	}

	.single-blog-row {
		max-width: 100%;
	}

	.image-boxes-row.archive-post {
		grid-template-columns: repeat(2, 1fr);
	}

}

@media only screen and (max-width: 767px) {
	.container {
		max-width: calc(100% - 50px);
	}

	.footer-bottom .footer-item {
		width: 100%;
	}

	.footer-bottom .footer-item .button,
	.icon-boxes {
		width: 100%;
	}

	.footer-bottom .footer-item:nth-child(2) {
		order: unset;
	}

	.counter-row {
		flex-wrap: wrap;
		gap: 0;
		justify-content: center;
	}

	section.section.counter-section {
		padding: 0;
	}

	section.section.counter-section .container {
		max-width: 100%;
	}

	.counter-row .sep {
		display: none;
	}

	.counter-item {
		width: 33.33%;
		flex: 33.33%;
		padding: 5rem 4rem;
		border-right: 1px solid rgba(255, 255, 255, 0.1);
		border-bottom: 1px solid rgba(255, 255, 255, 0.1);
		text-align: center;
	}

	.heading-group:not(:last-child) {
		margin-bottom: 6rem;
	}

	.our-services-row {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
	}

	.our-services-item {
		flex-direction: column;
		align-items: flex-start;
		justify-content: inherit;
		padding: 5rem;
		gap: 4rem;
	}

	.image-content-box-item {
		min-width: 95vw;
	}

	.image-content-box-row .content {
		padding: 5rem 4rem;
	}

	.boxes-row .left-box,
	.boxes-row .right-box,
	.testimonial-row {
		width: 100%;
	}

	.boxes-row {
		gap: 5rem;
	}

	.google-review-box {
		padding: 4rem;
	}

	.call-to-action-row {
		gap: 10rem;
	}

	.call-to-action-row .left-part,
	.call-to-action-row .right-part,
	.features-grid-row .middle-part {
		width: 100%;
	}

	.heading-group p {
		max-width: 100%;
	}

	.features-grid-row .left-part,
	.features-grid-row .right-part {
		width: 48%;
	}

	.features-row {
		gap: 6rem;
	}

	.features-section.style-2 .features-row {
		gap: 0;
	}

	.features-row .left-part,
	.features-row .right-part {
		width: 100%;
	}

	.features-list-item {
		padding: 4rem;
	}

	.col-6.form-group {
		width: 100%;
	}


}

@media only screen and (max-width: 640px) {
	.counter-item {
		width: 50%;
		flex: 50%;
	}

	.image-boxes-row {
		grid-template-columns: repeat(1, 1fr);
		padding-bottom: 0;
	}

	.image-boxes-row .image-box-item:nth-child(even) {
		top: 0;
	}

	.book-demo {
		gap: 6rem;
	}

	.book-demo>div {
		width: 100%;
	}

	.features-section.style-2 .features-list-row {
		grid-template-columns: repeat(1, 1fr);
	}

	.tech-stacks-item,
	.introduction-content-row {
		gap: 6rem;
	}

	.tech-stacks-item .left-part,
	.tech-stacks-item .right-part,
	.introduction-content-row .right-part {
		width: 100%;
	}

	.contact-information-section .left-part,
	.contact-information-section .right-part {
		width: 100%;
	}

	.contact-information-section .right-part {
		padding-left: 0;
		padding-right: 0;
		padding-top: 0;
		border: none;
	}

	.comment-respond {
		padding: 5rem;
	}

	.comment-form-author,
	.comment-form-email {
		width: 100%;
	}

	.image-boxes-row.archive-post {
		grid-template-columns: repeat(1, 1fr);
	}

}

@media only screen and (max-width: 580px) {

	.header-top-bar ul {
		gap: 1rem;
	}

	.header-top-bar ul li a {
		font-size: 0;
	}

	.header-top-bar ul li a i {
		font-size: var(--font-16);
	}

	body {
		padding-bottom: 14rem;
	}

	.button-menu-toggle .button {
		position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		border-radius: 0;
		padding: 18px 25px;
	}

	.icon-row {
		flex-direction: column;
		gap: 4rem;
	}

	.footer-top {
		flex-direction: column;
	}

	.site-footer .container {
		flex-direction: column;
		display: flex;
	}

	.footer-middle {
		order: 1;
	}

	.footer-bottom {
		gap: 5rem;
		margin-top: 5rem;
		padding-top: 0;
		border-top: none;
	}

	.footer-top {
		gap: 5rem;
	}

	.footer-top .footer-item {
		width: 100%;
		text-align: center;
	}

	.icon-boxes i {
		width: 10rem;
		height: 10rem;
	}

	.social-media li,
	.social-media li a {
		flex: 1;
		width: 100%;
	}

	.footer-bottom .footer-item:last-child {
		position: absolute;
		bottom: -5.5rem;
		left: 0;
		right: 0;
		padding: 11px;
		font-size: 12px;
		background: #000000;
		border: none;
	}

	.our-services-row {
		grid-template-columns: repeat(1, 1fr);
	}

	.features-grid-row .left-part,
	.features-grid-row .right-part {
		width: 100%;
	}

	.our-team-block {
		flex-direction: column;
	}

	.our-team-block .our-team-image {
		width: 100%;
		margin: 0 0 2rem 0;
		border-radius: 1rem;
	}

	.our-team-block .our-team-content,
	.our-team-content .social-media a {
		width: 100%;
		gap: 3rem;
		text-align: center;
		padding-bottom: 0;
	}

	.our-team-section.grid .our-team-row .our-team-list .our-team-block {
		width: 100%;
	}

	.grid .our-team-content .social-media {
		margin: 0;
	}

}

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


	.footer-middle .footer-item {
		padding: 3rem 2rem;
	}

	.footer-middle {
		margin-left: -2rem;
		margin-right: -2rem;
	}
}

@media only screen and (max-width: 390px) {
	.footer-middle .footer-item {
		width: 100%;
	}
}