@media screen and (max-width: 768px) {
	.mobilemenu {
		display: block;
	}
	body {
		font-size: 16px;
		line-height: 22px;
		padding-top: 20px;
	}
	h1 {
		font-size: 36px;
		line-height: 42px;
	}
	h2 {
		font-size: 28px;
		line-height: 34px;
	}
	.content-wrapper {
		width: 100%;
		padding-left: 20px;
		padding-right: 20px;
	}
	header > div {
	}
	header > div > *:not(.site-link):not(.mobilemenu) {
		display: none;
	}
	header .site-logo {
		height: 64px;
	}
	header.sticky .site-logo {
		height: 44px;
	}
	.section-1 {
		background-position: bottom left;
		background-size: auto 45%;
	}
	.section-1 h1 {
		font-size: 32px;
	}
	.section-1 h1 + p {
		max-width: 100%;
		font-size: 19px;
	}
	.section-2 {
		padding: 60px 0 80px;
	}
	.section-3 .content-wrapper {
		padding-left: 0;
		padding-right: 0;
	}
	.section-3 .our-projects-inner > a {
		width: calc(100% / 2);
		padding-bottom: 50.001%;
	}
	.section-3 .our-projects-inner > a:hover .project-content {
		background: none;
	}
	.section-3 .our-projects-inner > a .project-content .project-name {
		font-size: 3.8vw;
		line-height: 4.3vw;
	}
	.section-3 .our-projects-inner > a:hover:after {
		background: rgba(0, 0, 0, 0.62);
	}
	.section-3 .our-projects-inner > a .project-content .hover {
		display: none;
	}
	.section-3 .our-projects-inner > a:hover .project-content > .project-name {
		opacity: initial;
		top: 0;
	}
	.section-4 {
		padding: 40px 0 60px;
	}
	.section-4 .references {
		margin: 40px 0 0 0;
	}
	.section-4 .references > div {
		float: unset;
		width: calc(100% / 1);
		max-width: 425px;
		margin: 0 auto;
	}
	.section-4 .references > div + div {
		margin-top: 40px;
	}
	.section-4 .references > div .text {
		font-size: 18px;
		line-height: 22px;
		height: auto;
	}
	.section-4 .references > div .text {
		padding: 60px 30px;
	}
	.section-4 .references > div .who {
		bottom: -80px;
	}
	.section-5 {
		padding: 40px 0 110px;
	}
	.diagonal-top-pink {
		top: -40px;
		height: 40px;
	}
	.diagonal-top-pink:after {
		height: 40px;
		border-bottom: 40px solid #ec008c;
		border-left: 768px solid transparent;
	}
	main {
		padding: 0;
	}
	footer {
		padding: 80px 0 40px;
	}
	footer:before {
		width: 110px;
	}
	footer .contact-methods {
		flex-direction: column;
	}
	footer .contact-methods span + span {
		margin-top: 10px;
	}
	footer .contact-methods span:not(:first-child):before {
		display: none;
	}
	footer .company-legal .company-legal-inner {
		margin: 40px 0 -30px 0;
	}
	footer .company-legal .company-legal-inner > div {
		width: calc(100% / 1 - 30px);
		margin: 0 0 30px 0;
	}
	.terms > div span {
		display: block;
	}
	.terms > div span:not(:first-child):before {
		display: none;
	}
	.viewer .viewer-inner {
		width: 100%;
		min-width: 100%;
		padding: 30px 20px 20px 20px;
		right: -100%;
	}
	.viewer .viewer-close {
		top: 5px;
		right: -100%;
		width: 50px;
		height: 50px;
		background-size: 24px 24px;
	}
	.viewer.appear .viewer-close {
		right: 5px;
	}
	.form .form-row {
		display: block;
	}
	.form .form-row > label {
		width: 100%;
		margin-bottom: 8px;
	}
	.form .form-row > div {
		width: 100%;
	}
	.form .form-row > div > b {
		top: 11px;
	}
}