@keyframes marquee {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-100%);
	}
}
@font-face {
	font-family: "Nimbus";
	font-weight: 400;
	font-style: normal;
	font-display: swap;
	src: local("Nimbus"), local("Nimbus"), url("../fonts/Nimbus.woff2") format("woff2"), url("../fonts/Nimbus.woff") format("woff");
}
@font-face {
	font-family: "VictorSerif";
	font-weight: 400;
	font-style: normal;
	font-display: swap;
	src: local("VictorSerifTrial-50Medium"), local("VictorSerifTrial-50Medium"), url("../fonts/VictorSerifTrial-50Medium.woff2") format("woff2"), url("../fonts/VictorSerifTrial-50Medium.woff") format("woff");
}
*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
	        text-size-adjust: 100%;
}

body {
	margin: 0;
	color: #ffffff;
	background: #000000;
}

article,
aside,
figure,
footer,
header,
main,
nav {
	display: block;
}

ul {
	list-style: none;
}

blockquote,
embed,
fieldset,
figure,
iframe,
img,
legend,
object,
ul,
ol,
dl,
dd,
h1,
h2,
p {
	padding: 0;
	border: 0;
	margin: 0;
}

h2 {
	font-weight: normal;
}

html {
	font: normal 400 100%/1.4 "VictorSerif", serif;
}

body {
	min-height: 0vw;
}

.font\:nimbus {
	font-family: "Nimbus", sans-serif;
}

a {
	color: #ffffff;
	text-decoration: unset;
}

.text\:1 {
	font-size: 16.282px;
}
.text\:2 {
	letter-spacing: -0.95vw;
	line-height: 0.83;
}
.text\:2 {
	font-size: 40.71px;
}
.text\:3 {
	font-size: 2.5rem;
	line-height: 1;
}
.text\:4 {
	line-height: 0.833;
	letter-spacing: -0.127vw;
}
.text\:4 {
	font-size: 16.42px;
}
.text\:5 {
	line-height: 1;
}
.text\:5 {
	font-size: 16.42px;
}
.text\:6 {
	line-height: 1;
	letter-spacing: -0.25vw;
}
.text\:6 {
	font-size: 12.2px;
}
.text\:7 {
	line-height: 0.83;
}
.text\:7 {
	font-size: 21.1692px;
}
.text\:8 {
	font-size: 9.77px;
}
.text\:9 {
	line-height: 1;
}
.text\:9 {
	font-size: 14.652px;
}

.ar {
	position: relative;
}
.ar:before {
	display: block;
	content: "";
	width: 100%;
}

.services .swiper-slide > div, .card\:tall > div,
.card\:tall article, .card > div {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.grid\:4 {
	-ms-overflow-style: none;
	/* IE and Edge */
	scrollbar-width: none;
	/* Firefox */
}
.grid\:4::-webkit-scrollbar {
	display: none;
}

.about .grid.desktop {
	display: none;
}
.about .bordered-text {
	padding: 0.76vw 1.25vw 0.5vw 1.25vw;
	display: inline-flex;
	width: auto;
	height: auto;
	transform: translateY(-1.2vw);
}

.button {
	border: 1px solid #ffffff;
	display: block;
	text-align: center;
	text-decoration: none;
	margin: 6.35vw auto 0 auto;
	padding: 1.78vw 0;
	width: 28.75vw;
	border-radius: 25.44vw;
}
.button:hover {
	background: #ffffff;
	color: #000000;
}

.card {
	text-align: center;
}
.card:before {
	padding-top: 113.6363636364%;
}
.card > div {
	flex-direction: column;
	padding: 3.05vw 3.5vw 4.58vw 3.5vw;
}
.card p {
	margin: 0 auto;
	width: 80vw;
}
.card\:1 > div {
	background: url("../images/gradients/1.svg") no-repeat;
	background-size: cover;
}
.card\:2 > div {
	background: url("../images/gradients/2.svg") no-repeat;
	background-size: cover;
}
.card\:3 > div {
	background: url("../images/gradients/3.svg") no-repeat;
	background-size: cover;
}
.card\:tall {
	width: 60.55vw;
}
.card\:tall:before {
	padding-top: 152.8384279476%;
}
.card\:tall:last-child {
	margin: 0 1.25rem 0 0;
}
.card\:tall figure {
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
}
.card\:tall h2 {
	margin: 0 auto;
	width: 55vw;
}
.card\:tall-statement {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 55vw;
}
.card\:tall article {
	flex-direction: column;
	text-align: center;
	visibility: hidden;
	opacity: 0;
	transition: opacity 250ms ease, visibility 250ms ease;
	padding: 2.54vw 2.5vw 3.05vw 2.5vw;
}
.card\:tall:nth-child(2) article {
	background: url("../images/gradients/3.svg") no-repeat;
	background-size: cover;
}
.card\:tall:nth-child(3) article {
	background: url("../images/gradients/1.svg") no-repeat;
	background-size: cover;
}
.card\:tall:nth-child(1) article, .card\:tall:nth-child(4) article {
	background: url("../images/gradients/2.svg") no-repeat;
	background-size: cover;
}
.card-active article {
	opacity: 1;
	visibility: visible;
}
.card-active .open {
	border: 1px solid black;
	transform: rotate(45deg);
}
.card-active .open, .card-active .open:hover {
	background: rgba(255, 255, 255, 0);
}

.site-footer {
	padding: 0 0 1.25rem 0;
}
.site-footer > div > div {
	background: rgba(255, 255, 255, 0.12);
	border-radius: 2.54vw;
	flex-direction: column;
	padding: 3.05vw 3.8vw 15.26vw 3.8vw;
}
.site-footer > div > div ul a {
	text-decoration: underline;
}
.site-footer > div > div > a {
	margin: 0 0 7.63vw 0;
	display: block;
	width: 10.17vw;
}
.site-footer > div > div div + div {
	margin: 4.58vw 0 0 0;
}
.site-footer a {
	color: #ffffff;
}
.site-footer ul {
	line-height: 1.2;
}

.site-header {
	text-align: center;
	position: fixed;
	top: 0;
	left: 0;
	padding: 0.5625rem 0;
	width: 100%;
	z-index: 20;
	transition: opacity 250ms ease, visibility 250ms ease;
	opacity: 1;
	visibility: visible;
}
.site-header span {
	margin: 0 0 0 1.272vw;
}
.site-header span,
.site-header img {
	height: 3.56vw;
	width: 7.12vw;
}
.site-header img {
	height: 100%;
	object-fit: contain;
}
.site-header p {
	margin: 0 auto;
	align-items: baseline;
	justify-content: center;
	letter-spacing: -0.2vw;
}

.hide-header .site-header {
	opacity: 0;
	visibility: hidden;
}

.landing {
	flex-direction: column;
	justify-content: center;
	height: 100vh;
	width: 100%;
	text-align: center;
}
.landing > div > p {
	margin: 0 auto;
	width: 81.42vw;
}
.landing .bordered-text {
	transform: translateY(-1vw);
	height: 5.08vw;
	border-color: #ffffff;
	display: inline-flex;
	width: 35vw;
}
.landing .symbol {
	margin: 1.78vw auto 0 auto;
}
.landing > p {
	left: 50%;
	transform: translateX(-50%);
	position: absolute;
	top: auto;
	line-height: 1;
	bottom: 1.0625rem;
	width: 100%;
	width: 77vw;
}

.marquee {
	height: 12.21vw;
	margin: 5.59vw 0 16.8vw 0;
	overflow: hidden;
	position: relative;
}
.marquee > div {
	height: 100%;
	overflow: hidden;
	position: absolute;
	transition: background-color 300ms ease, color 300ms ease;
	white-space: nowrap;
}
.marquee span {
	margin: 0 8.4vw 0 0;
}
.marquee p {
	animation: marquee 150000ms linear infinite;
	align-items: center;
	align-content: center;
	display: inline-flex;
	will-change: transform;
}

.open {
	background: rgba(255, 255, 255, 0.75);
	border-radius: 50%;
	border: 1px solid rgba(0, 0, 0, 0);
	position: absolute;
	width: 7.63vw;
	height: 7.63vw;
	right: 3.05vw;
	bottom: 3.05vw;
	top: auto;
	transform: rotate(0deg);
	transition: background 250ms ease, transform 250ms ease;
	z-index: 1;
}
.open:hover {
	background: white;
}
.open span::before, .open span::after {
	content: " ";
	display: block;
	height: 1.5px;
	width: 2.79vw;
	position: absolute;
	background: #000000;
	top: 50%;
	left: 50%;
}
.open span::before {
	transform: translate(-50%, -50%);
}
.open span::after {
	transform: translate(-50%, -50%) rotate(90deg);
}

.recent-work {
	overflow: hidden;
}
.recent-work .wrap {
	width: calc(100% + 1.25rem);
}

.section {
	padding: 16.28vw 0 4vw 0;
}
.section.thinking {
	padding: 16.28vw 0;
}
.section > div > h2 {
	margin: 0 0 2.29vw 0;
}
.services .swiper-slide > div {
	align-items: center;
	flex-direction: column;
	text-align: center;
	padding: 3.3vw 0 4.58vw 0;
}
.services .swiper-slide .button {
	margin: 0 auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.services .swiper-slide .symbol {
	margin: 1.017vw auto 0 auto;
}
.services .swiper-slide p {
	width: 84.73vw;
}
.services-swiper {
	position: relative;
}
.thinking li {
	position: relative;
}
.thinking .bordered-text {
	border-color: #ffffff;
	position: absolute;
	border-radius: 25.44vw;
	top: 50%;
	left: 50%;
	height: 7.63vw;
	transform: translate(-50%, -50%);
	width: 48.34vw;
	z-index: 1;
}

.bordered-text {
	border: 1px solid #000000;
	border-radius: 25.44vw;
	height: 7.63vw;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
	letter-spacing: -0.125vw;
	width: 29.26vw;
}

.desktop {
	display: none;
}

.slide-nav {
	display: none;
	background-color: rgba(255, 255, 255, 0.75);
	height: 2.5rem;
	width: 2.5rem;
	position: absolute;
	background-image: url("../images/icons/arrow.svg");
	background-position: 52.5% 50%;
	background-size: 0.625rem 1rem;
	background-repeat: no-repeat;
	border-radius: 50%;
	top: 50%;
	left: 1rem;
	transform: translateY(-50%) rotate(180deg);
	z-index: 5;
	cursor: pointer;
}
.slide-nav:hover {
	background-color: white;
}
.slide-nav + .slide-nav {
	transform: translateY(-50%);
	left: auto;
	right: 1rem;
}

/**
 * Swiper 6.8.4
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * https://swiperjs.com
 *
 * Copyright 2014-2021 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: August 23, 2021
 */
.swiper-container {
	margin-left: auto;
	margin-right: auto;
	position: relative;
	overflow: hidden;
	list-style: none;
	padding: 0;
	/* Fix of Webkit flickering */
	z-index: 1;
}

.swiper-container-vertical > .swiper-wrapper {
	flex-direction: column;
}

.swiper-wrapper {
	position: relative;
	width: 100%;
	height: auto;
	z-index: 1;
	display: flex;
	transition-property: transform;
	box-sizing: content-box;
}

.swiper-container-android .swiper-slide,
.swiper-wrapper {
	transform: translate3d(0px, 0, 0);
}

.swiper-container-multirow > .swiper-wrapper {
	flex-wrap: wrap;
}

.swiper-container-multirow-column > .swiper-wrapper {
	flex-wrap: wrap;
	flex-direction: column;
}

.swiper-container-free-mode > .swiper-wrapper {
	transition-timing-function: ease-out;
	margin: 0 auto;
}

.swiper-container-pointer-events {
	touch-action: pan-y;
}

.swiper-container-pointer-events.swiper-container-vertical {
	touch-action: pan-x;
}

.swiper-slide {
	flex-shrink: 0;
	width: 100%;
	height: 100%;
	position: relative;
	transition-property: transform;
}

.swiper-slide-invisible-blank {
	visibility: hidden;
}

/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
	height: auto;
}

.swiper-container-autoheight .swiper-wrapper {
	align-items: flex-start;
	transition-property: transform, height;
}

/* 3D Effects */
.swiper-container-3d {
	perspective: 1200px;
}

.swiper-container-3d .swiper-wrapper,
.swiper-container-3d .swiper-slide,
.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom,
.swiper-container-3d .swiper-cube-shadow {
	transform-style: preserve-3d;
}

.swiper-container-3d .swiper-slide-shadow-left,
.swiper-container-3d .swiper-slide-shadow-right,
.swiper-container-3d .swiper-slide-shadow-top,
.swiper-container-3d .swiper-slide-shadow-bottom {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 10;
}

.swiper-container-3d .swiper-slide-shadow-left {
	background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-right {
	background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-top {
	background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-bottom {
	background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

/* CSS Mode */
.swiper-container-css-mode > .swiper-wrapper {
	overflow: auto;
	scrollbar-width: none;
	/* For Firefox */
	-ms-overflow-style: none;
	/* For Internet Explorer and Edge */
}

.swiper-container-css-mode > .swiper-wrapper::-webkit-scrollbar {
	display: none;
}

.swiper-container-css-mode > .swiper-wrapper > .swiper-slide {
	scroll-snap-align: start start;
}

.swiper-container-horizontal.swiper-container-css-mode > .swiper-wrapper {
	-webkit-scroll-snap-type: x mandatory;
	        scroll-snap-type: x mandatory;
}

.swiper-container-vertical.swiper-container-css-mode > .swiper-wrapper {
	-webkit-scroll-snap-type: y mandatory;
	        scroll-snap-type: y mandatory;
}

:root {
	--swiper-navigation-size: 44px;
	/*
	--swiper-navigation-color: var(--swiper-theme-color);
	*/
}

:root {
	/*
	--swiper-pagination-color: var(--swiper-theme-color);
	*/
}

.swiper-pagination {
	margin: 2.56vw auto 0 auto;
	text-align: center;
	transition: 300ms opacity;
	transform: translate3d(0, 0, 0);
	z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
	opacity: 0;
}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal > .swiper-pagination-bullets {
	left: 0;
	width: 100%;
}

/* Bullets */
.swiper-pagination-bullets-dynamic {
	overflow: hidden;
	font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	transform: scale(0.33);
	position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
	transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
	transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
	transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
	transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
	transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
	transform: scale(0.33);
}

.swiper-pagination-bullet {
	width: 2.03vw;
	height: 2.03vw;
	display: inline-block;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.6);
}

button.swiper-pagination-bullet {
	border: none;
	margin: 0;
	padding: 0;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
	cursor: pointer;
}

.swiper-pagination-bullet:only-child {
	display: none !important;
}

.swiper-pagination-bullet-active {
	opacity: 1;
	background: rgba(255, 255, 255, 0.6);
	border: 1px solid #ffffff;
}

.swiper-container-vertical > .swiper-pagination-bullets {
	right: 10px;
	top: 50%;
	transform: translate3d(0px, -50%, 0);
}

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 6px 0;
	display: block;
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
	top: 50%;
	transform: translateY(-50%);
	width: 8px;
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	display: inline-block;
	transition: 200ms transform, 200ms top;
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0 4px;
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
	left: 50%;
	transform: translateX(-50%);
	white-space: nowrap;
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	transition: 200ms transform, 200ms left;
}

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	transition: 200ms transform, 200ms right;
}

.symbol {
	object-fit: contain;
	width: 16.28vw;
	height: 8.65vw;
}

.ar\:service-slide {
	padding-top: 100%;
}

.ar\:wide:before {
	padding-top: 49.8622589532%;
}

.bg\:light {
	background: #ffffff;
}
.bg\:dark {
	background: #000000;
}

.colour\:light {
	color: #ffffff;
}
.colour\:dark {
	color: #000000;
}

.cover {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	background-size: cover;
}

.flex {
	display: flex;
}

.grid {
	display: grid;
}
.grid\:2 {
	row-gap: 3.05vw;
}
.grid\:3 {
	grid-template-columns: repeat(3, 1fr);
	column-gap: 0.83vw;
}
.grid\:4 {
	column-gap: 3.05vw;
	grid-template-columns: repeat(4, 1fr);
	overflow-x: scroll;
	overflow-y: hidden;
}

.radius\:15 {
	border-radius: 2.544vw;
}

[data-reveal] {
	opacity: 0;
	transition: opacity 500ms ease;
	transition-delay: 500ms;
}

[data-reveal=revealed] {
	opacity: 1;
}

.spacious {
	justify-content: space-between;
}

.uppercase {
	text-transform: uppercase;
}

.wrap {
	padding: 0 1.25rem;
}

.has-js :focus {
	outline: none;
}
.has-tab-focus :focus {
	outline: 2px auto;
}
@media screen and (min-width: 320px) {
	.text\:1 {
		font-size: calc(16.282px + 32.518 * ((100vw - 320px) / 640));
	}
	.text\:2 {
		font-size: calc(40.71px + 81.29 * ((100vw - 320px) / 640));
	}
	.text\:4 {
		font-size: calc(16.42px + 32.38 * ((100vw - 320px) / 640));
	}
	.text\:5 {
		font-size: calc(16.42px + 32.38 * ((100vw - 320px) / 640));
	}
	.text\:6 {
		font-size: calc(12.2px + 24.4 * ((100vw - 320px) / 640));
	}
	.text\:7 {
		font-size: calc(21.1692px + 42.2708 * ((100vw - 320px) / 640));
	}
	.text\:8 {
		font-size: calc(9.77px + 19.51 * ((100vw - 320px) / 640));
	}
	.text\:9 {
		font-size: calc(14.652px + 29.268 * ((100vw - 320px) / 640));
	}
}
@media screen and (min-width: 630px) {
	.marquee {
		margin: 0;
		height: 3.958vw;
	}
}
@media screen and (min-width: 960px) {
	.text\:1 {
		font-size: 48.8px;
	}
	.text\:1 {
		line-height: 1.5;
	}
	.text\:1 {
		font-size: 20px;
	}
	.text\:2 {
		font-size: 122px;
	}
	.text\:2 {
		letter-spacing: -0.2vw;
	}
	.text\:2 {
		font-size: 50px;
	}
	.text\:4 {
		font-size: 48.8px;
	}
	.text\:4 {
		letter-spacing: -0.052vw;
	}
	.text\:4 {
		font-size: 15px;
	}
	.text\:5 {
		font-size: 48.8px;
	}
	.text\:5 {
		font-size: 15px;
	}
	.text\:6 {
		font-size: 36.6px;
	}
	.text\:6 {
		letter-spacing: -0.052vw;
	}
	.text\:6 {
		font-size: 10px;
	}
	.text\:7 {
		font-size: 63.44px;
	}
	.text\:7 {
		letter-spacing: -0.104vw;
	}
	.text\:7 {
		font-size: 27.5px;
	}
	.text\:8 {
		font-size: 29.28px;
	}
	.text\:8 {
		font-size: 7.5px;
	}
	.text\:9 {
		font-size: 43.92px;
	}
	.text\:9 {
		font-size: 15px;
	}
	.about .grid.desktop {
		display: grid;
	}
	.about .bordered-text {
		padding: 0.15625vw 0.46875vw 0.1vw 0.46875vw;
		transform: translateY(-0.26vw);
	}
	.button {
		border-radius: 1.5625vw;
		margin: 3.125vw auto 0 auto;
		padding: 0.72vw 0 0.625vw 0;
		width: 15.625vw;
	}
	.card > div {
		padding: 1.25vw;
	}
	.card p {
		width: 29.5vw;
	}
	.card .symbol {
		margin: 0.78125vw auto 0 auto;
	}
	.card\:tall {
		width: auto;
	}
	.card\:tall:last-child {
		margin: 0;
	}
	.card\:tall h2 {
		width: auto;
	}
	.card\:tall-statement {
		width: 21.2vw;
	}
	.card\:tall article {
		padding: 1.25vw 0.52vw;
	}
	.site-footer > div > div {
		padding: 1.19vw 1.5625vw 4.73vw 1.5625vw;
		border-radius: 0.78125vw;
		flex-direction: row;
	}
	.site-footer > div > div ul a {
		text-underline-offset: 0.2vw;
		text-decoration-thickness: 0.095vw;
	}
	.site-footer > div > div > a {
		margin: 0 12.13vw 0 0;
		width: 2.77vw;
	}
	.site-footer > div > div div + div {
		margin: 0 0 0 10.26vw;
	}
	.site-footer p {
		margin: 0 0 1.875vw 0;
	}
	.site-header span {
		margin: 0 0 0 0.36vw;
	}
	.site-header span,
.site-header img {
		height: auto;
		width: 2.77vw;
	}
	.site-header p {
		letter-spacing: -0.09365vw;
		width: 14.0625vw;
	}
	.landing {
		height: 100vh;
	}
	.landing > div > p {
		width: 70%;
	}
	.landing .bordered-text {
		height: 2.08vw;
		padding: 0;
		transform: translateY(-0.525vw);
		width: 9.85vw;
	}
	.landing .symbol {
		margin: 0.46875vw auto 0 auto;
	}
	.landing > p {
		letter-spacing: -0.026vw;
		bottom: 0.9375rem;
		width: 100%;
	}
	.marquee span {
		margin: 0 4.58vw 0 0;
	}
	.marquee p {
		animation: marquee 350000ms linear infinite;
	}
	.open {
		height: 2.08vw;
		width: 2.08vw;
		right: 1.25vw;
		bottom: 1.25vw;
	}
	.open span::before, .open span::after {
		height: 0.125rem;
		width: 0.83vw;
	}
	.recent-work {
		overflow: auto;
	}
	.recent-work .wrap {
		width: auto;
	}
	.section.thinking {
		padding: 11.875vw 0 10.41vw 0;
	}
	.section {
		padding: 11.875vw 0 10.41vw 0;
	}
	.section > div > h2 {
		margin: 0 0 0.83vw 0;
	}
	.services.section {
		padding: 0 0 10.41vw 0;
	}
	.services .swiper-slide > div {
		padding: 1.3vw 0;
	}
	.services .swiper-slide .symbol {
		margin: 0.26vw auto 0 auto;
	}
	.services .swiper-slide p {
		width: 45vw;
	}
	.thinking.section {
		padding: 0 0 10.41vw 0;
	}
	.thinking .bordered-text {
		border-radius: 1.04vw;
		height: 2.08vw;
		width: 15.625vw;
	}
	.bordered-text {
		border-radius: 1.04vw;
		height: 2.08vw;
		width: 7.98675vw;
		letter-spacing: -0.052vw;
	}
	.desktop {
		display: block;
	}
	.mobile {
		display: none;
	}
	.slide-nav {
		display: block;
	}
	.symbol {
		height: 3.4375vw;
		width: 7.1875vw;
	}
	.ar\:service-slide {
		padding-top: 37.25%;
	}
	.ar\:wide:before {
		padding-top: 36.7647058824%;
	}
	.grid\:2 {
		grid-template-columns: repeat(2, 1fr);
		column-gap: 0.83vw;
	}
	.grid\:4 {
		column-gap: 0.83vw;
		overflow-x: auto;
		overflow-y: auto;
	}
	.radius\:15 {
		border-radius: 0.78125vw;
	}
}
@media screen and (min-width: 960px) and (min-width: 2560px) {
	.text\:1 {
		font-size: 52px;
	}
	.text\:2 {
		font-size: 133px;
	}
	.text\:4 {
		font-size: 39.9px;
	}
	.text\:5 {
		font-size: 39.9px;
	}
	.text\:6 {
		font-size: 26.6px;
	}
	.text\:7 {
		font-size: 73.15px;
	}
	.text\:8 {
		font-size: 19.95px;
	}
	.text\:9 {
		font-size: 39.9px;
	}
}
@media screen and (min-width: 960px) and (min-width: 960px) {
	.text\:1 {
		font-size: calc(20px + 32 * ((100vw - 960px) / 1600));
	}
	.text\:2 {
		font-size: calc(50px + 83 * ((100vw - 960px) / 1600));
	}
	.text\:4 {
		font-size: calc(15px + 24.9 * ((100vw - 960px) / 1600));
	}
	.text\:5 {
		font-size: calc(15px + 24.9 * ((100vw - 960px) / 1600));
	}
	.text\:6 {
		font-size: calc(10px + 16.6 * ((100vw - 960px) / 1600));
	}
	.text\:7 {
		font-size: calc(27.5px + 45.65 * ((100vw - 960px) / 1600));
	}
	.text\:8 {
		font-size: calc(7.5px + 12.45 * ((100vw - 960px) / 1600));
	}
	.text\:9 {
		font-size: calc(15px + 24.9 * ((100vw - 960px) / 1600));
	}
}
@media screen and (max-width: 960px) {
	.about .swiper-about + .button {
		margin-top: 3.7vw;
		margin-bottom: 9.16vw;
	}
	.site-footer > div > div .text\:5 {
		font-size: 12.2px;
	}
}
@media screen and (max-width: 960px) and (min-width: 320px) {
	.site-footer > div > div .text\:5 {
		font-size: calc(12.2px + 24.4 * ((100vw - 320px) / 640));
	}
}
@media screen and (max-width: 960px) and (min-width: 960px) {
	.site-footer > div > div .text\:5 {
		font-size: 36.6px;
	}
}
@media screen and (max-device-width: 430px) {
	.landing {
		height: calc(100vh - 5.625rem);
	}
}
@media (hover: hover) {
	.site-footer > div > div ul a:hover {
		text-decoration: none;
	}
}
/*# sourceMappingURL=main.css.map */
