:root {
	--u: 0.0625rem;
	--color-white: #ffffff;
	--color-black: #000000;
	--color-bg-fog: #f4f4f4;
	--color-bg-fog-alt: #e1e1e1;
	--color-paper: var(--color-bg-fog);
	--color-ash: var(--color-bg-fog-alt);
	--color-maroon: #5d1919;
	--color-maroon-light: #ff715b;
	--color-white-10: rgb(255 255 255 / 10%);
	--color-white-20: rgb(255 255 255 / 20%);
	--rule: var(--color-white-20);
	--color-white-30: rgb(255 255 255 / 30%);
	--color-white-40: rgb(255 255 255 / 40%);
	--color-white-50: rgb(255 255 255 / 50%);
	--color-white-60: rgb(255 255 255 / 60%);
	--color-white-70: rgb(255 255 255 / 70%);
	--color-white-80: rgb(255 255 255 / 80%);
	--color-white-90: rgb(255 255 255 / 90%);
	--color-black-10: rgb(0 0 0 / 10%);
	--color-black-20: rgb(0 0 0 / 20%);
	--color-black-30: rgb(0 0 0 / 30%);
	--color-black-40: rgb(0 0 0 / 40%);
	--color-black-50: rgb(0 0 0 / 50%);
	--color-black-60: rgb(0 0 0 / 60%);
	--color-black-70: rgb(0 0 0 / 70%);
	--color-black-80: rgb(0 0 0 / 80%);
	--color-black-90: rgb(0 0 0 / 90%);
	--color-glare: #9cff7b;
	--color-fill: #c8c8c8;
	--paper: 0;
	--page-bg: color-mix(
		in srgb,
		var(--color-black) calc((1 - var(--paper)) * 100%),
		var(--color-paper) calc(var(--paper) * 100%)
	);
	--font: HelveticaNeueCyr, Helvetica, Arial, sans-serif;
	--weight: 300;
	--leading: 1.2;
	--text-16: 1rem;
	--text-18: 1.125rem;
	--text-20: 1.25rem;
	--text-24: 1.5rem;
	--text-28: 1.75rem;
	--text-32: 2rem;
	--text-40: 2.5rem;
	--space-16: 1rem;
	--space-20: 1.25rem;
	--space-28: 1.75rem;
	--space-32: 2rem;
	--pad-x: 1rem;
	--grid-gap: 1rem;
	--col-2-left: calc(
		var(--pad-x) + (100vw - 2 * var(--pad-x) - 2 * var(--grid-gap)) / 3 + var(--grid-gap)
	);
	--nav-height: 3.5rem;
	--hero-copy-indent: 12.5rem;
	--text-link-duration: 0.45s;
	--text-link-ease: cubic-bezier(0.65, 0, 0.35, 1);
}

html {
	font-size: calc(100vw / 90);
	min-height: 100%;
	height: auto;
}

html.lenis,
html.lenis body {
	height: auto;
}

.lenis.lenis-smooth {
	scroll-behavior: auto !important;
}

@font-face {
	font-family: HelveticaNeueCyr;
	src: url("/assets/fonts/HelveticaNeueCyr-Light.ttf") format("truetype");
	font-weight: 300;
	font-style: normal;
	font-display: swap;
}

@property --line-fill {
	syntax: "<percentage>";
	inherits: false;
	initial-value: 50%;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	background: transparent;
}

html,
body {
	margin: 0;
	padding: 0;
	color: var(--color-white);
	font-family: var(--font);
	font-weight: var(--weight);
	font-style: normal;
	font-synthesis: none;
	-webkit-font-smoothing: antialiased;
	max-width: 100%;
	min-height: 100%;
	overflow-x: clip;
}

h1,
h2,
h3,
h4,
h5,
h6,
strong,
b,
th,
dt {
	font-weight: inherit;
}

body {
	background: var(--page-bg);
}

a {
	color: inherit;
	text-decoration: none;
}

.text-16,
.text-18,
.text-20,
.text-24,
.text-28,
.text-32,
.text-40 {
	font-family: var(--font);
	font-weight: var(--weight);
	font-style: normal;
	line-height: var(--leading);
}

.text-16 {
	font-size: var(--text-16);
	line-height: 1.25;
}

.text-18 {
	font-size: var(--text-18);
}

.text-20 {
	font-size: var(--text-20);
}

.text-24 {
	font-size: var(--text-24);
}

.text-28 {
	font-size: var(--text-28);
}

.text-32 {
	font-size: var(--text-32);
}

.text-40 {
	font-size: var(--text-40);
}

.page {
	width: 100%;
	max-width: none;
	min-height: 100vh;
	display: flex;
	flex-direction: column;
}

.shell {
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	margin-inline: auto;
	padding-inline: var(--pad-x);
}

.hero-shell {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	min-height: 0;
	height: 100%;
}

.works-shell,
.expertise-shell {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	width: 100%;
	gap: 12.5rem;
}

.footer-shell {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	min-height: 0;
	width: 100%;
	height: 100%;
	gap: var(--space-32);
}

.branding-hero-shell,
.branding-scope-shell,
.branding-dark-shell {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	width: 100%;
}

.policy-shell {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--space-16);
	width: 100%;
}

.navbar-slot {
	display: contents;
}

.navbar {
	position: sticky;
	top: 0;
	z-index: 10;
	flex: none;
	width: 100%;
	min-height: var(--nav-height);
	background: transparent;
	pointer-events: none;
}

.navbar-shell {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: flex-start;
	padding-top: var(--space-16);
	padding-bottom: var(--space-16);
	gap: var(--space-20);
	position: relative;
}

.navbar-logo,
.navbar-telegram,
.navbar-link,
.navbar-links,
.navbar-compact {
	pointer-events: auto;
}

.navbar-logo,
.navbar-telegram,
.navbar-link {
	flex: none;
	z-index: 0;
}

.navbar-telegram {
	z-index: 1;
}

.navbar-links {
	display: flex;
	flex-direction: row;
	align-items: center;
	padding: 0;
	gap: var(--space-32);
	position: absolute;
	left: var(--col-2-left);
	top: var(--space-16);
	z-index: 2;
}

.navbar-link {
	text-align: right;
}

.text-link {
	--link-ink: var(--color-white);
	position: relative;
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
	color: var(--link-ink);
	font-family: var(--font);
	font-style: normal;
	font-weight: var(--weight);
	font-size: var(--text-20);
	line-height: var(--leading);
	white-space: nowrap;
	font-kerning: none;
	text-decoration: none;
}

.text-link.is-black {
	--link-ink: var(--color-black);
}

.navbar .text-link {
	color: var(--color-white);
	mix-blend-mode: difference;
}

.navbar .text-link-line {
	background: var(--color-white);
}

.navbar.is-on-paper .text-link {
	--link-ink: var(--color-black);
	color: var(--color-black);
	mix-blend-mode: normal;
}

.navbar.is-on-paper .text-link-line {
	background: var(--color-black);
}

.text-link-label {
	display: block;
}

.text-link-line {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 1px;
	background: var(--link-ink);
	transform: scaleX(0);
	transform-origin: left;
	pointer-events: none;
	transition: transform var(--text-link-duration) var(--text-link-ease);
}

.text-link.is-in .text-link-line {
	transform: scaleX(1);
	transform-origin: left;
}

.text-link.is-out .text-link-line {
	transform: scaleX(0);
	transform-origin: right;
}

.text-link.is-reset .text-link-line {
	transition: none;
	transform: scaleX(0);
	transform-origin: left;
}

.text-link.is-lined .text-link-line {
	transform: scaleX(1);
	transform-origin: left;
}

.text-link.is-lined.is-out .text-link-line {
	transform: scaleX(0);
	transform-origin: right;
}

.text-link.is-lined.is-in .text-link-line {
	transform: scaleX(1);
	transform-origin: left;
}

.text-link.is-lined.is-reset .text-link-line {
	transition: none;
	transform: scaleX(0);
	transform-origin: left;
}

@media (prefers-reduced-motion: reduce) {
	.navbar.is-ready {
		transition: none;
	}

	.text-link-line {
		transition: none;
	}

	.text-link:hover .text-link-line,
	.text-link.is-lined .text-link-line {
		transform: scaleX(1);
		transform-origin: left;
	}
}

.hero {
	flex: none;
	flex-shrink: 0;
	display: flex;
	flex-direction: column;
	height: calc(100vh - var(--nav-height));
	min-height: calc(100vh - var(--nav-height));
	width: 100%;
	overflow: hidden;
}

.navbar-compact {
	display: none;
}

.hero-stage {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	min-height: 0;
	width: 100%;
}

.hero-copy-main,
.hero-copy-shift {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	overflow: hidden;
}

.hero-lines {
	flex: 1 1 0;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: stretch;
	min-height: 0;
	width: 100%;
	padding: 0 1.75rem;
	position: relative;
	z-index: 0;
	pointer-events: none;
}

.hero-lines.is-mobile {
	display: none;
}

.hero-line-col {
	display: grid;
	grid-template-rows: var(--line-start) minmax(var(--line-size), 1fr) var(--line-end);
	width: 1px;
	flex: none;
	align-self: stretch;
	min-height: 0;
}

.hero-line-col > * {
	min-height: 0;
}

.hero-line {
	width: 1px;
	border-radius: 0;
}

.drift-line {
	width: 1px;
	border-radius: 0;
	--line-color: var(--color-white);
	--line-dim: var(--color-white-20);
	background: linear-gradient(
		0deg,
		var(--line-color) 0%,
		var(--line-color) var(--line-fill),
		var(--line-dim) var(--line-fill),
		var(--line-dim) 100%
	);
	will-change: --line-fill, opacity;
}

.hero-copy {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	position: relative;
	z-index: 1;
	flex: none;
	width: 100%;
	max-width: 100%;
	padding: 0 0 var(--space-20);
	margin: 0;
	font-size: inherit;
	font-weight: inherit;
}

.hero-copy-line {
	overflow: hidden;
	width: 100%;
}

@media (min-width: 90rem) {
	.hero-copy-line {
		white-space: nowrap;
	}
}

.hero-copy-line > span {
	display: block;
	font-family: var(--font);
	font-style: normal;
	font-weight: var(--weight);
	font-size: var(--text-40);
	line-height: var(--leading);
	color: var(--color-white);
}

.hero-copy-line.is-lead {
	padding-left: var(--hero-copy-indent);
}

html:has(.page.is-miss),
html:has(.page.is-miss) body {
	min-height: 100%;
	height: auto;
}

.page.is-miss {
	height: auto;
	min-height: 100vh;
	background: var(--color-black);
	color: var(--color-white);
}

.miss {
	position: relative;
	flex: 1 1 auto;
	min-height: calc(100vh - var(--nav-height));
	width: 100%;
	display: flex;
	flex-direction: column;
}

.miss-copy {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 2.5rem;
	flex: 1 1 auto;
	min-height: 0;
	width: calc(100% * 394 / 1440);
	margin-left: calc(100% * 725 / 1440);
	z-index: 1;
}

.miss-title,
.miss-code {
	margin: 0;
	padding: 0;
	font-family: var(--font);
	font-weight: var(--weight);
	font-style: normal;
	line-height: var(--leading);
	color: var(--color-white);
}

.miss-title {
	width: 100%;
	font-size: var(--text-40);
}

.miss-code {
	font-size: 5rem;
}

.miss-lines {
	position: absolute;
	left: 1.5rem;
	top: 17.0625rem;
	bottom: 1.5rem;
	width: calc(100% * 604 / 1440);
	padding: 0;
	flex: none;
	height: auto;
}

.is-loading .navbar,
.is-loading .hero-line,
.is-loading .hero-copy-line > span {
	visibility: hidden;
}

@media (prefers-reduced-motion: reduce) {
	.is-loading .navbar,
	.is-loading .hero-line,
	.is-loading .hero-copy-line > span {
		visibility: visible;
	}
}

@media (max-width: 47.99rem) {
	html {
		font-size: 16px;
	}

	:root {
		--pad-x: 0.75rem;
	}

	.navbar-slot {
		display: block;
		flex: none;
		height: var(--nav-height);
	}

	.navbar {
		display: block;
		padding: 0;
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		width: 100%;
		background: var(--color-black);
	}

	.navbar-shell {
		display: grid;
		grid-template-columns: 1fr 1fr;
		align-items: start;
		padding-top: var(--space-16);
		padding-bottom: var(--space-16);
		gap: 0;
	}

	.navbar .text-link,
	.navbar.is-on-paper .text-link {
		--link-ink: var(--color-white);
		color: var(--color-white);
		mix-blend-mode: normal;
	}

	.navbar .text-link-line,
	.navbar.is-on-paper .text-link-line {
		background: var(--color-white);
	}

	.navbar.is-ready {
		transition: transform 0.5s cubic-bezier(0.45, 0, 0.15, 1);
	}

	.navbar.is-hidden {
		transform: translate3d(0, -100%, 0);
	}

	.navbar-logo {
		grid-column: 1;
		justify-self: start;
	}

	.navbar-telegram,
	.navbar-links {
		display: none;
	}

	.navbar-compact {
		grid-column: 2;
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-self: start;
		justify-content: flex-start;
		gap: var(--space-16);
		white-space: nowrap;
		z-index: 1;
	}

	.text-link-line {
		display: none;
	}

	.page {
		height: auto;
		min-height: 100vh;
	}

	.page.is-miss {
		height: auto;
		min-height: 100vh;
		overflow: visible;
	}

	.miss {
		display: flex;
		flex-direction: column;
		padding: 0;
	}

	.miss-copy {
		width: 100%;
		margin-left: 0;
		gap: var(--space-20);
	}

	.miss-title {
		font-size: var(--text-28);
	}

	.miss-lines {
		display: none;
	}

	.hero {
		flex: none;
		height: calc(100vh - var(--nav-height));
		min-height: calc(100vh - var(--nav-height));
		padding: 0 0 var(--space-20);
		overflow: hidden;
		background: var(--color-black);
	}

	.hero-stage {
		position: relative;
		isolation: isolate;
		flex: 1 1 auto;
		min-height: 0;
		padding-top: var(--space-16);
		gap: var(--space-28);
	}

	.hero-lines.is-desktop {
		display: none;
	}

	.hero-lines.is-mobile {
		display: flex;
		flex: 1 1 0;
		min-height: 0;
		height: auto;
		padding: 0;
	}

	.hero-copy {
		position: static;
		z-index: 1;
		padding: 0;
	}

	.hero-copy-line.is-lead {
		padding-left: 4rem;
	}

	.hero-copy-main .hero-copy-line:not(.is-lead) > span::first-letter {
		text-transform: uppercase;
	}

	.hero-copy-shift {
		position: absolute;
		top: 0;
		left: 50%;
		width: 50%;
		display: block;
		z-index: 1;
		pointer-events: none;
		overflow: visible;
	}

	.hero-copy-shift .hero-copy-line {
		display: inline;
		overflow: visible;
		width: auto;
		white-space: normal;
	}

	.hero-copy-shift .hero-copy-line > span {
		display: inline;
		font-size: var(--text-20);
		color: var(--color-white-50);
	}
}

.works {
	position: relative;
	flex: none;
	box-sizing: border-box;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	width: 100%;
	padding: 1rem 0 7.5rem;
	background: var(--color-white);
	color: var(--color-black);
}

.works-row {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1rem;
	width: 100%;
}

.works-row.is-bottom .works-card:first-child {
	grid-column: 2;
}

.works-lower {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	gap: 2.5rem;
	width: 100%;
}

.works-intro {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1.75rem;
	box-sizing: border-box;
	width: calc(100% - (var(--col-2-left) - var(--pad-x)));
	margin-left: calc(var(--col-2-left) - var(--pad-x));
}

.works-heading {
	margin: 0;
	width: 100%;
	font-family: var(--font);
	font-weight: var(--weight);
	font-size: var(--text-40);
	line-height: var(--leading);
	color: var(--color-black);
}

.works-heading-lead,
.works-heading-rest {
	display: block;
}

.works-heading-lead {
	padding-left: 12.5rem;
}

.works-card {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.75rem;
	min-width: 0;
}

.works-card-visual {
	position: relative;
	width: 100%;
	aspect-ratio: 46 / 72;
	flex: none;
}

.works-card-media {
	width: 100%;
	height: 100%;
	overflow: hidden;
	background: var(--color-fill);
	border-radius: 0.25rem;
}

.works-card-media picture,
.works-card-media img {
	display: block;
	width: 100%;
	height: 100%;
}

.works-card-media img {
	object-fit: cover;
	object-position: center;
}

.works-card.is-link .works-card-media img {
	transform: scale(1);
	transition: transform 0.55s cubic-bezier(0, 0, 0.2, 1);
}

.works-card-cta {
	position: absolute;
	top: 50%;
	left: 50%;
	right: auto;
	z-index: 2;
	transform: translate(-50%, -50%);
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	width: 11rem;
	height: 3rem;
	margin: 0;
	padding: 0.875rem 2rem 0.75rem;
	gap: 0.625rem;
	border-radius: 999px;
	background: var(--color-black);
	color: var(--color-white);
	font-family: var(--font);
	font-weight: var(--weight);
	font-size: var(--text-18);
	line-height: var(--leading);
	white-space: nowrap;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.45s cubic-bezier(0.45, 0, 0.15, 1);
}

.works-card.is-on .works-card-cta {
	opacity: 1;
	pointer-events: auto;
}

.works-card-meta {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1.5rem;
	width: 100%;
	padding: 0 0.125rem;
	box-sizing: border-box;
}

.works-card-kicker {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	width: 100%;
	gap: 0.75rem;
}

.works-card-title,
.works-card-caption,
.works-card-body {
	margin: 0;
	font-family: var(--font);
	font-weight: var(--weight);
	color: var(--color-black);
}

.works-card-title,
.works-card-caption {
	font-size: var(--text-16);
	line-height: 1.25;
}

.works-card-caption {
	text-align: right;
}

.works-card-body {
	font-size: var(--text-24);
	line-height: var(--leading);
}

.works-card-body .is-mobile-copy {
	display: none;
}

.pill {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	width: max-content;
	height: auto;
	padding: 1.125rem 2.5rem 1rem;
	border-radius: 999px;
	background: var(--color-white);
	color: var(--color-black);
	font-family: var(--font);
	font-weight: var(--weight);
	font-size: var(--text-20);
	line-height: var(--leading);
	white-space: nowrap;
	transition:
		background-color 0.75s cubic-bezier(0.45, 0, 0.15, 1),
		color 0.75s cubic-bezier(0.45, 0, 0.15, 1);
}

.pill-label {
	white-space: nowrap;
}

.pill.is-black {
	background: var(--color-black);
	color: var(--color-white);
}

.pill.is-compact,
.pill.is-project {
	width: max-content;
	height: auto;
	padding: 1.125rem 2.5rem 1rem;
}

.expertise {
	flex: none;
	align-self: stretch;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	padding: 0 0 7.5rem;
	background: var(--color-black);
	color: var(--color-white);
	isolation: isolate;
}

.expertise-head {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	width: 100%;
	padding: var(--space-16) 0;
	box-sizing: border-box;
	background: var(--color-black);
}

.expertise-heading {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	align-items: center;
	width: 100%;
	margin: 0;
	padding: 0 0 0 var(--hero-copy-indent);
	gap: 0;
	font-size: inherit;
	font-weight: inherit;
	background: transparent;
}

.expertise-heading-kicker,
.expertise-heading-line {
	margin: 0;
	font-family: var(--font);
	font-weight: var(--weight);
	font-size: var(--text-40);
	line-height: var(--leading);
	color: var(--color-white);
}

.expertise-flow {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 7.5rem;
	width: calc(100% - (var(--col-2-left) - var(--pad-x)));
	margin-left: calc(var(--col-2-left) - var(--pad-x));
	box-sizing: border-box;
}

.expertise-intro {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 4rem;
	width: 100%;
}

.expertise-intro-copy {
	margin: 0;
	width: 100%;
	font-family: var(--font);
	font-weight: var(--weight);
	font-size: var(--text-40);
	line-height: var(--leading);
	color: var(--color-white);
}

.expertise-block {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 3.5rem;
	width: 100%;
	padding: 0;
}

.expertise-rule {
	width: 100%;
	height: 1px;
	background: var(--rule);
}

.audience-lines,
.audience-pill-wrap {
	display: none;
}

.audience-scroller {
	min-width: 0;
	width: 100%;
}

.audience-track,
.audience-main {
	width: 100%;
}

.expertise-label {
	margin: 0;
	padding: 0;
	font-size: var(--text-40);
	line-height: var(--leading);
}

.expertise-col {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 2.5rem;
	min-width: 0;
	width: 100%;
}

.service-item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--space-20);
	width: 100%;
	padding: 0 0 2.5rem;
}

.service-title {
	margin: 0;
	width: 100%;
	font-size: var(--text-32);
	font-weight: inherit;
	line-height: var(--leading);
}

.service-title-link {
	font-size: inherit;
	line-height: inherit;
	white-space: normal;
}

.is-mobile-title {
	display: none;
}

.service-body {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.5rem;
	width: 100%;
}

.service-cta {
	margin-top: 1.5rem;
}

.expertise-item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0;
	width: 100%;
	padding: 0;
	transition:
		padding-bottom 0.5s cubic-bezier(0.45, 0, 0.15, 1),
		gap 0.5s cubic-bezier(0.45, 0, 0.15, 1);
}

.expertise-item.is-open {
	gap: var(--space-20);
	padding-bottom: 2.5rem;
}

.expertise-trigger {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	gap: var(--space-20);
	width: 100%;
	margin: 0;
	padding: 0 0.25rem 0 0;
	border: 0;
	background: transparent;
	color: inherit;
	font: inherit;
	text-align: left;
	cursor: pointer;
}

.expertise-trigger-title {
	flex: 1 1 auto;
	min-width: 0;
	margin: 0;
	font-size: var(--text-32);
	font-weight: inherit;
	line-height: var(--leading);
}

.expertise-arrow {
	position: relative;
	flex: none;
	width: 1.5rem;
	height: 1.6875rem;
}

.expertise-arrow-icon {
	position: absolute;
	inset: 0;
	display: flex;
	transition:
		opacity 0.4s cubic-bezier(0.45, 0, 0.15, 1),
		transform 0.4s cubic-bezier(0.45, 0, 0.15, 1);
}

.expertise-arrow-icon svg {
	display: block;
	width: 1.5rem;
	height: 1.6875rem;
}

.expertise-arrow-icon.is-down svg {
	transform: scaleY(-1);
}

.expertise-arrow-icon.is-down {
	opacity: 1;
	transform: translateY(0);
}

.expertise-arrow-icon.is-up {
	opacity: 0;
	transform: translateY(-0.5rem);
}

.expertise-item.is-open .expertise-arrow-icon.is-down,
.is-fold.is-open .expertise-arrow-icon.is-down {
	opacity: 0;
	transform: translateY(-0.5rem);
}

.expertise-item.is-open .expertise-arrow-icon.is-up,
.is-fold.is-open .expertise-arrow-icon.is-up {
	opacity: 1;
	transform: translateY(0);
}

.expertise-body {
	display: grid;
	width: 100%;
	grid-template-rows: 0fr;
	transition: grid-template-rows 0.5s cubic-bezier(0.45, 0, 0.15, 1);
}

.expertise-item.is-open .expertise-body {
	grid-template-rows: 1fr;
}

.expertise-body-inner {
	overflow: hidden;
	min-height: 0;
}

.expertise-copy {
	margin: 0;
	width: 100%;
	font-size: var(--text-20);
	line-height: var(--leading);
	color: var(--color-white);
}

.site-footer {
	position: relative;
	isolation: isolate;
	container-type: inline-size;
	flex: none;
	align-self: stretch;
	display: flex;
	flex-direction: column;
	align-items: center;
	overflow: hidden;
	box-sizing: border-box;
	height: 100vh;
	min-height: 100vh;
	padding: calc(var(--nav-height) + 1.5rem) 0 1.5rem;
	background: var(--color-ash);
	color: var(--color-black);
}

.site-footer .text-link {
	--link-ink: var(--color-black);
	color: var(--color-black);
}

.site-footer .text-link-line {
	background: var(--color-black);
}

.footer-glare {
	position: absolute;
	left: 50%;
	top: 71.144%;
	width: 105.069%;
	aspect-ratio: 1513 / 1032;
	height: auto;
	border-radius: 50%;
	background: var(--color-glare);
	filter: blur(8.042375rem);
	filter: blur(8.936cqi);
	pointer-events: none;
	z-index: 0;
	transform: translate3d(-50%, 60%, 0);
	transition: transform 0.9s cubic-bezier(0.45, 0, 0.15, 1);
	will-change: transform;
}

.site-footer.is-glare-in .footer-glare {
	transform: translate3d(-50%, 0, 0);
}

.footer-heading,
.footer-stage,
.footer-city,
.footer-row,
.footer-legal,
.footer-copy,
.footer-meta {
	position: relative;
	z-index: 1;
}

.footer-heading {
	margin: 0;
	width: 100%;
	flex: none;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	font-size: var(--text-40);
	line-height: var(--leading);
	font-weight: var(--weight);
	color: var(--color-black);
}

.footer-heading-line {
	display: block;
}

.footer-stage {
	position: relative;
	width: 100%;
	margin-inline: 0;
	flex: 1 1 auto;
	min-height: 0;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 0;
	gap: var(--space-16);
}

.footer-rule {
	width: 100%;
	height: 1px;
	flex: none;
	background: linear-gradient(
		270deg,
		var(--color-black) 0%,
		var(--color-black) 49.99%,
		var(--color-black-20) 50%
	);
}

.footer-row {
	display: flex;
	flex-direction: row;
	align-items: stretch;
	width: 100%;
	flex: 1 1 auto;
	min-height: 0;
}

.footer-legal {
	flex: 1 1 50%;
	align-self: flex-start;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.footer-copy {
	margin: 0;
	font-size: var(--text-20);
	line-height: var(--leading);
	color: var(--color-black-50);
}

.footer-policy {
	margin: 0.25rem 0 0;
	font-size: var(--text-16);
	line-height: 1.25;
	color: var(--color-black-50);
}

.footer-policy.text-link,
.site-footer .footer-policy.text-link {
	--link-ink: var(--color-black-50);
	color: var(--color-black-50);
}

.site-footer .footer-policy .text-link-line {
	background: var(--color-black-50);
}

.footer-copy.is-mobile,
.footer-prefix.is-mobile,
.footer-lines.is-mobile {
	display: none;
}

.footer-meta {
	flex: 1 1 50%;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
	gap: 0;
	min-height: 0;
}

.footer-links {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 2.5rem;
	flex: none;
}

.footer-contacts,
.footer-nav {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.375rem;
	flex: none;
}

.footer-contacts p,
.footer-nav {
	margin: 0;
	font-size: var(--text-20);
	line-height: var(--leading);
	color: var(--color-black);
}

.footer-city {
	margin: 0;
	flex: none;
	font-size: var(--text-20);
	line-height: var(--leading);
	color: var(--color-black);
}

.footer-lines.is-desktop {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 37.75rem;
	height: 22.9375rem;
	pointer-events: none;
	z-index: 1;
}

.footer-line {
	position: absolute;
	width: 1px;
	--line-color: var(--color-black);
	--line-dim: var(--color-black-20);
}

@media (prefers-reduced-motion: reduce) {
	.footer-glare {
		transition: none;
		transform: translate3d(-50%, 60%, 0);
	}

	.site-footer.is-glare-in .footer-glare {
		transform: translate3d(-50%, 0, 0);
	}

	.works-card-cta {
		transition: none;
	}

	.works-card.is-link .works-card-media img {
		transition: none;
	}

	.expertise-item {
		transition: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.expertise-arrow-icon,
	.expertise-body {
		transition: none;
	}
}

@media (min-width: 48rem) {
	.works-card.is-link .works-card-visual:hover img {
		transform: scale(1.05);
	}

	.works-card-visual:hover .works-card-cta {
		opacity: 1;
		pointer-events: auto;
	}

	.pill:hover {
		background: var(--color-white-80);
	}

	.pill.is-black:hover {
		background: var(--color-black-80);
	}
}

@media (max-width: 47.99rem) {
	.works {
		padding: 0.5rem 0 7.5rem;
		background: var(--color-paper);
	}

	.works-shell {
		gap: 4rem;
	}

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

	.works-row.is-bottom .works-card:first-child {
		grid-column: auto;
	}

	.works-lower {
		gap: 4rem;
	}

	.works-intro {
		width: 100%;
		margin-left: 0;
		padding: 2.5rem 0.25rem;
		gap: 1.75rem;
	}

	.works-heading {
		font-size: var(--text-32);
	}

	.works-heading-lead {
		padding-left: 4rem;
	}

	.works-card-visual {
		aspect-ratio: 386 / 550;
	}

	.works-card-meta {
		gap: 1.25rem;
		padding: 0 0.25rem;
	}

	.works-card-kicker {
		flex-direction: column;
		align-items: flex-start;
		gap: 0;
	}

	.works-card-caption {
		text-align: left;
	}

	.expertise {
		padding: 1.5rem 0 7.5rem;
	}

	.expertise-shell {
		gap: 7.5rem;
	}

	.expertise-head {
		width: 100%;
		padding: 0;
	}

	.expertise-heading {
		padding-left: 0;
		flex-wrap: wrap;
	}

	.expertise-heading-kicker {
		display: none;
	}

	.expertise-heading-line {
		font-size: var(--text-28);
	}

	.expertise-flow {
		width: 100%;
		margin-left: 0;
		gap: 5rem;
	}

	.expertise-intro,
	.expertise-rule,
	.expertise-block.is-services .expertise-label {
		display: none;
	}

	.expertise-block.is-services {
		gap: 0;
	}

	.expertise-block.is-services .expertise-col {
		gap: 2.5rem;
	}

	.service-item {
		padding: 0;
		gap: 0;
	}

	.service-title {
		padding: 0 0 0 4rem;
		font-size: var(--text-28);
	}

	.is-desktop-title {
		display: none;
	}

	.is-mobile-title {
		display: inline;
	}

	.service-body {
		margin-top: 0;
	}

	.is-desktop-rule,
	.is-desktop-arrow {
		display: none;
	}

	.expertise-block.is-audience {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: var(--space-20);
		width: 100%;
	}

	.expertise-block.is-audience .expertise-label {
		font-size: var(--text-32);
	}

	.audience-lines {
		display: flex;
	}

	.audience-pill-wrap {
		display: flex;
	}

	.expertise-block.is-audience .expertise-arrow {
		display: none;
	}

	.expertise-block.is-audience .expertise-trigger {
		pointer-events: none;
		justify-content: flex-start;
	}

	.expertise-block.is-audience .expertise-item,
	.expertise-block.is-audience .expertise-item.is-open {
		padding: 0;
		gap: var(--space-32);
	}

	.expertise-block.is-audience .expertise-body {
		grid-template-rows: 1fr;
	}

	.expertise-block.is-audience .expertise-col {
		padding-top: 0;
	}

	.audience-scroller {
		width: 100%;
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		overscroll-behavior-x: contain;
		overscroll-behavior-y: auto;
		scrollbar-width: none;
		touch-action: pan-x pan-y;
	}

	.audience-scroller::-webkit-scrollbar {
		display: none;
	}

	.audience-track {
		display: flex;
		flex-direction: row;
		align-items: flex-start;
		gap: 4rem;
		width: max-content;
		padding-inline: 0;
		box-sizing: content-box;
	}

	.audience-main {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 4rem;
		width: max-content;
	}

	.audience-lines {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: stretch;
		width: 100%;
		height: 11.0625rem;
		flex: none;
		pointer-events: none;
		overflow: hidden;
	}

	.audience-line-col {
		display: grid;
		grid-template-rows: var(--line-start) minmax(var(--line-size), 1fr) var(--line-end);
		width: 1px;
		flex: none;
		align-self: stretch;
		min-height: 0;
	}

	.audience-line-col > * {
		min-height: 0;
	}

	.audience-cards {
		display: flex;
		flex-direction: row;
		align-items: flex-start;
		gap: 2.5rem;
		width: max-content;
	}

	.audience-card {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: var(--space-32);
		width: 60vw;
		flex: none;
	}

	.audience-card-title {
		margin: 0;
		width: 100%;
		font-size: var(--text-28);
		line-height: var(--leading);
		font-weight: var(--weight);
	}

	.audience-card-copy {
		margin: 0;
		width: 100%;
		font-size: var(--text-18);
		line-height: var(--leading);
		color: var(--color-white-70);
	}

	.audience-pill-wrap {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		padding: 1.25rem 0;
		gap: var(--space-20);
		width: 60vw;
		align-self: stretch;
		flex: none;
		position: relative;
		z-index: 1;
		background: var(--color-black);
	}

	.audience-pill {
		box-sizing: border-box;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		padding: 0 var(--space-32);
		gap: var(--space-20);
		width: 100%;
		flex: 1 1 auto;
		border: 1px solid var(--color-white);
		border-radius: 999px;
	}

	.audience-pill p {
		margin: 0;
		width: 100%;
		font-size: var(--text-18);
		line-height: var(--leading);
		color: var(--color-white);
	}

	.site-footer {
		height: auto;
		min-height: 100vh;
		padding: 1.5rem 0;
		align-items: flex-start;
	}

	.footer-shell {
		gap: 2rem;
	}

	.footer-heading {
		font-size: var(--text-32);
	}

	.footer-stage {
		width: 100%;
		margin-inline: 0;
		padding: 0;
		min-height: 0;
		flex: 1 1 auto;
		gap: var(--space-16);
	}

	.footer-row {
		flex: 1 1 auto;
		align-items: stretch;
		min-height: 0;
	}

	.footer-copy.is-desktop,
	.footer-prefix.is-desktop,
	.footer-lines.is-desktop {
		display: none;
	}

	.footer-copy.is-mobile {
		display: block;
	}

	.footer-policy {
		margin-top: 0;
	}

	.footer-prefix.is-mobile {
		display: inline;
	}

	.footer-city {
		margin: 0 auto;
		width: auto;
	}

	.footer-lines.is-mobile {
		display: block;
		position: absolute;
		left: 0.75rem;
		right: auto;
		top: auto;
		bottom: 0;
		width: 9.375rem;
		height: 11rem;
		z-index: 2;
		pointer-events: none;
	}

	.footer-glare {
		top: auto;
		bottom: -18%;
		width: 180%;
		transform: translate3d(-50%, 35%, 0);
	}

	.site-footer.is-glare-in .footer-glare {
		transform: translate3d(-50%, 12%, 0);
	}

	.footer-links {
		gap: 2.5rem;
	}

	.footer-contacts,
	.footer-nav {
		gap: 0.75rem;
	}

	.section-placeholder {
		background: var(--color-black);
	}

	.page.is-about .navbar {
		background: var(--color-maroon);
	}

	.page.is-about .navbar .text-link,
	.page.is-about .navbar.is-on-paper .text-link {
		--link-ink: var(--color-white);
		color: var(--color-white);
	}

	.about {
		--about-star-size: 15.625rem;
		padding: 21.25rem 0 7.5rem;
	}

	.about-star {
		top: calc(var(--nav-height) + 0.9375rem);
		width: var(--about-star-size);
		height: var(--about-star-size);
		margin-left: auto;
		margin-right: 0.75rem;
	}

	.about-intro {
		display: flex;
		flex-direction: column;
		gap: 2.5rem;
		padding: 0;
	}

	.about-kicker,
	.about-lead {
		font-size: var(--text-32);
	}

	.about-kicker {
		padding-left: 4rem;
	}

	.about-block.is-authors .about-kicker,
	.about-block.is-authors .about-lead {
		font-size: var(--text-18);
	}

	.about-block.is-authors .about-lead {
		padding-left: 4rem;
		max-width: 23.625rem;
	}

	.about-process {
		width: 100%;
		aspect-ratio: auto;
		height: 52.625rem;
		margin: 1.1875rem 0 0;
	}

	.about-lobe.is-research {
		left: -5.125rem;
		top: 6.25rem;
		width: 26.625rem;
		height: 24.25rem;
		border-radius: 0 99999px 99999px 0;
	}

	.about-lobe.is-craft {
		left: 0.9375rem;
		top: 14.3125rem;
		width: 26.625rem;
		height: 33.3125rem;
		border-radius: 99999px 0 0 99999px;
	}

	.about-process-id {
		display: none;
	}

	.about-process-item {
		gap: 0;
		font-size: var(--text-24);
	}

	.about-process-item.is-01 {
		left: 6.375rem;
		top: 10.75rem;
		transform: none;
	}

	.about-process-item.is-02 {
		left: 6.9375rem;
		top: 35.5625rem;
		transform: none;
	}

	.about-process-item.is-03 {
		left: 6.3125rem;
		top: 22.4375rem;
		transform: none;
	}

	.about-block.is-values-head {
		padding: 1.5rem 0 0;
		margin-bottom: 5rem;
	}

	.about-values {
		padding: 0;
		gap: 3.5rem;
	}

	.about-value {
		width: 100%;
		margin-left: 0;
		padding-left: 4rem;
		gap: 0;
	}

	.about-value-title,
	.about-value-body {
		font-size: var(--text-24);
	}

	.about-value-body {
		max-width: 19.625rem;
	}
}

html:has(.page.is-about),
body:has(.page.is-about) {
	background: var(--color-maroon);
}

.page.is-about {
	background: var(--color-maroon);
	color: var(--color-white);
}

.page.is-about .navbar .text-link {
	mix-blend-mode: normal;
	color: var(--color-white);
}

.page.is-about .navbar .text-link-line {
	background: var(--color-white);
}

.page.is-about .navbar.is-on-paper .text-link {
	--link-ink: var(--color-black);
	color: var(--color-black);
	mix-blend-mode: normal;
}

.page.is-about .navbar.is-on-paper .text-link-line {
	background: var(--color-black);
}

.about {
	--about-star-size: 15.625rem;
	position: relative;
	z-index: 0;
	flex: none;
	width: 100%;
	color: var(--color-white);
	background: var(--color-maroon);
}

.about-star-layer {
	position: absolute;
	inset: 0 0 var(--about-star-size) 0;
	z-index: 0;
	pointer-events: none;
}

.about-star {
	position: sticky;
}

.about-star-spin {
	display: block;
	width: 100%;
	height: 100%;
	transform: rotate(0deg);
	transform-origin: 50% 50%;
	will-change: transform;
}

.about-star-img {
	display: block;
	width: 100%;
	height: 100%;
}

.about-star-img.is-desktop {
	display: none;
}

.about-intro,
.about-block,
.about-process,
.about-values {
	position: relative;
	z-index: 1;
}

.about-block {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	margin: 0;
}

.about-kicker,
.about-lead {
	margin: 0;
	font-family: var(--font);
	font-weight: var(--weight);
	line-height: var(--leading);
	color: inherit;
}

.about-lobe {
	position: absolute;
	box-sizing: border-box;
	border: 1px solid var(--color-white);
	pointer-events: none;
}

.about-process-item {
	position: absolute;
	display: flex;
	flex-direction: column;
	margin: 0;
	font-family: var(--font);
	font-weight: var(--weight);
	line-height: var(--leading);
	color: var(--color-white);
}

.about-values {
	list-style: none;
	margin: 0;
	display: flex;
	flex-direction: column;
}

.about-value {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.about-value-title,
.about-value-body {
	margin: 0;
	font-family: var(--font);
	font-weight: var(--weight);
	line-height: var(--leading);
}

.about-value.is-accent {
	color: var(--color-maroon-light);
}

@media (min-width: 48rem) {
	.about {
		--about-star-size: 33.575rem;
		padding: 21.0625rem 0 7.5rem;
	}

	.about-star {
		position: sticky;
		top: 9.75rem;
		width: var(--about-star-size);
		height: var(--about-star-size);
		margin: 0 auto;
	}

	.about-star-img.is-desktop {
		display: block;
	}

	.about-star-img.is-mobile {
		display: none;
	}

	.about-intro {
		display: flex;
		flex-direction: column;
		gap: 2.5rem;
		padding: 0;
	}

	.about-kicker,
	.about-lead {
		font-size: var(--text-40);
	}

	.about-kicker {
		padding-left: var(--hero-copy-indent);
	}

	.about-process {
		width: min(63.6875rem, 100%);
		aspect-ratio: 1019 / 646;
		margin: 12.5rem 0 12.5rem auto;
	}

	.about-lobe.is-research {
		left: 0;
		top: 0;
		width: 69.872%;
		height: 100%;
		border-radius: 0 99999px 99999px 0;
	}

	.about-lobe.is-craft {
		left: 36.604%;
		top: 0;
		width: 63.396%;
		height: 100%;
		border-radius: 99999px;
	}

	.about-process-item {
		gap: 2.3125rem;
		font-size: var(--text-28);
	}

	.about-process-item.is-01 {
		left: 7.164%;
		top: 50%;
		transform: translateY(-50%);
	}

	.about-process-item.is-02 {
		left: 42.296%;
		top: 50%;
		transform: translateY(-50%);
	}

	.about-process-item.is-03 {
		left: 76.251%;
		top: 50%;
		transform: translateY(-50%);
	}

	.about-block.is-values-head {
		padding: 0;
		margin-bottom: 3rem;
	}

	.about-values {
		padding: 0;
		gap: 7.0625rem;
	}

	.about-value {
		gap: 2.5rem;
		width: calc(100% / 3);
	}

	.about-value:nth-child(2) {
		margin-left: calc(100% / 6);
	}

	.about-value:nth-child(3) {
		margin-left: calc(100% / 3);
	}

	.about-value:nth-child(4) {
		margin-left: 50%;
	}

	.about-value:nth-child(5) {
		margin-left: calc(100% * 2 / 3);
	}

	.about-value-title,
	.about-value-body {
		font-size: var(--text-28);
	}
}

.page.is-policy {
	background: var(--color-black);
	color: var(--color-white);
}

.policy {
	flex: none;
	align-self: stretch;
	display: flex;
	flex-direction: column;
	width: 100%;
	padding: 12.5rem 0 0;
}

.policy-list {
	grid-column: 2 / 4;
	justify-self: start;
	width: 100%;
	max-width: 62.5rem;
	display: flex;
	flex-direction: column;
	align-items: stretch;
}

.policy-row {
	box-sizing: border-box;
	display: grid;
	grid-template-columns: 15rem minmax(0, 1fr);
	column-gap: 5.11125rem;
	align-items: start;
	padding: var(--space-16) 0 2.5rem;
	border-top: 1px solid var(--rule);
}

.policy-label {
	margin: 0;
	min-width: 0;
	font-family: var(--font);
	font-weight: var(--weight);
	font-size: var(--text-16);
	line-height: 1.25;
	color: var(--color-white-50);
}

.policy-lead,
.policy-body {
	min-width: 0;
}

.policy-lead,
.policy-body p,
.policy-body li,
.policy-body h3 {
	margin: 0;
	font-family: var(--font);
	font-weight: var(--weight);
	font-size: var(--text-16);
	line-height: 1.25;
	color: var(--color-white);
}

.policy-body p,
.policy-body li {
	white-space: pre-line;
}

.policy-body {
	display: flex;
	flex-direction: column;
	gap: var(--space-32);
}

.policy-block {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.policy-dash {
	margin: 0;
	padding: 0;
	list-style: none;
}

.cookie-notice {
	position: fixed;
	right: 0.5rem;
	bottom: 0.5rem;
	z-index: 20;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 0.75rem 0.75rem 0.875rem;
	gap: 0.75rem;
	width: 18.625rem;
	background: color-mix(in srgb, var(--color-white) 5.5%, var(--color-black));
	border-radius: 0.25rem;
}

html.notice-dismissed .cookie-notice {
	display: none;
}

.cookie-notice-copy {
	margin: 0;
	width: 17.125rem;
	font-size: var(--text-16);
	line-height: 1.25;
	color: var(--color-white-40);
}

.cookie-notice .text-link {
	font-size: var(--text-16);
	line-height: 1.25;
	--link-ink: var(--color-white-40);
	color: var(--color-white-40);
}

.cookie-notice .text-link-line {
	background: var(--color-white-40);
}

.notice-btn {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	padding: 0.375rem 1rem 0.25rem;
	width: 5.875rem;
	height: 1.875rem;
	border: 0;
	border-radius: 999px;
	background: var(--color-white-10);
	color: var(--color-white-70);
	font-family: var(--font);
	font-style: normal;
	font-weight: var(--weight);
	font-size: var(--text-16);
	line-height: 1.25;
	cursor: pointer;
}

@media (max-width: 47.99rem) {
	.policy {
		display: flex;
		flex-direction: column;
		gap: 0;
		padding: 7.5rem 0 0;
	}

	.policy-shell {
		display: flex;
		flex-direction: column;
		gap: 0;
	}

	.policy-list {
		grid-column: auto;
		max-width: none;
		justify-self: auto;
	}

	.policy-row {
		grid-template-columns: minmax(0, 1fr);
		column-gap: 0;
		gap: var(--space-32);
	}
}

html:has(.page.is-case) {
	--paper: 1;
}

html:has(.page.is-case),
body:has(.page.is-case) {
	color: var(--color-black);
}

.page.is-case {
	background: var(--color-paper);
	color: var(--color-black);
}

.page.is-case.is-white {
	background: var(--color-white);
	color: var(--color-black);
}

html:has(.page.is-case.is-white) {
	--page-bg: var(--color-white);
}

.page.is-case.is-black {
	background: var(--color-black);
	color: var(--color-white);
}

html:has(.page.is-case.is-black) {
	--paper: 0;
	--page-bg: var(--color-black);
}

html:has(.page.is-case.is-black),
body:has(.page.is-case.is-black) {
	color: var(--color-white);
}

.page.is-case .navbar {
	--nav-ash: 0;
	background: color-mix(
		in srgb,
		var(--color-paper) calc((1 - var(--nav-ash)) * 100%),
		var(--color-ash) calc(var(--nav-ash) * 100%)
	);
}

.page.is-case .navbar .text-link {
	--link-ink: var(--color-black);
	color: var(--color-black);
	mix-blend-mode: normal;
}

.page.is-case .navbar .text-link-line {
	background: var(--color-black);
}

.page.is-case.is-white .navbar {
	background: color-mix(
		in srgb,
		var(--color-white) calc((1 - var(--nav-ash)) * 100%),
		var(--color-ash) calc(var(--nav-ash) * 100%)
	);
}

.page.is-case.is-black .navbar {
	background: color-mix(
		in srgb,
		var(--color-black) calc((1 - var(--nav-ash)) * 100%),
		var(--color-ash) calc(var(--nav-ash) * 100%)
	);
}

.page.is-case.is-black .navbar .text-link {
	--link-ink: color-mix(
		in srgb,
		var(--color-white) calc((1 - var(--nav-ash)) * 100%),
		var(--color-black) calc(var(--nav-ash) * 100%)
	);
	color: var(--link-ink);
	mix-blend-mode: normal;
}

.page.is-case.is-black .navbar .text-link-line {
	background: var(--link-ink);
}

.page.is-case.is-black .case-title,
.page.is-case.is-black .case-chapter-title,
.page.is-case.is-black .case-meta-row dd,
.page.is-case.is-black .case-chapter-row dd {
	color: var(--color-white);
}

.page.is-case.is-black .case-meta-row dt,
.page.is-case.is-black .case-chapter-row dt {
	color: var(--color-white-50);
}

.page.is-case.is-black .case-meta-row,
.page.is-case.is-black .case-chapter-row {
	border-top-color: var(--rule);
}

.page.is-case.is-black .case-figure {
	background: #c9d7b1;
}

.case {
	flex: none;
	align-self: stretch;
	display: flex;
	flex-direction: column;
	width: 100%;
}

.case-intro {
	display: grid;
	grid-template-columns: minmax(0, min(40rem, 50%)) minmax(0, 1fr);
	padding: 12.5rem 0 var(--space-16);
}

.case-title {
	grid-column: 2;
	margin: 0;
	font-family: var(--font);
	font-weight: var(--weight);
	font-size: var(--text-40);
	line-height: var(--leading);
	color: var(--color-black);
}

.case-title-lead {
	display: block;
	padding-left: 7.5rem;
}

.case-body {
	display: grid;
	grid-template-columns: minmax(0, min(40rem, 50%)) minmax(0, 1fr);
	align-items: stretch;
	padding: 0 0 var(--space-16);
}

.case-aside {
	min-width: 0;
	align-self: stretch;
}

.case-aside-pin {
	position: sticky;
	top: var(--nav-height);
	box-sizing: border-box;
	height: calc(100vh - var(--nav-height));
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	align-items: flex-start;
	padding: 0 2.5rem var(--space-16) 0;
}

.case-meta {
	margin: 0;
	width: 100%;
	display: flex;
	flex-direction: column;
}

.case-meta-row,
.case-chapter-row {
	box-sizing: border-box;
	display: grid;
	align-items: start;
	margin: 0;
	border-top: 1px solid var(--color-black-10);
}

.case-meta-row {
	grid-template-columns: 11rem minmax(0, 1fr);
	padding: 1.25rem 0;
}

.case-meta-row dt,
.case-chapter-row dt {
	margin: 0;
	font-family: var(--font);
	font-weight: var(--weight);
	font-size: var(--text-18);
	line-height: var(--leading);
	color: var(--color-black-50);
}

.case-meta-row dd,
.case-chapter-row dd {
	margin: 0;
	font-family: var(--font);
	font-weight: var(--weight);
	font-size: var(--text-18);
	line-height: var(--leading);
	color: var(--color-black);
}

.case-stream {
	display: flex;
	flex-direction: column;
	gap: var(--space-16);
	min-width: 0;
}

.case-figure {
	margin: 0;
	width: 100%;
	overflow: clip;
	border-radius: 0.25rem;
	background: transparent;
	line-height: 0;
}

.case-figure img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: inherit;
}

.case-chapter {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	padding: 7.5rem 0 0;
	gap: var(--space-32);
}

.case-chapter-title {
	margin: 0;
	font-family: var(--font);
	font-weight: var(--weight);
	font-size: var(--text-28);
	line-height: var(--leading);
	color: var(--color-black);
}

.case-chapter-rows {
	margin: 0;
	display: flex;
	flex-direction: column;
}

.case-chapter-row {
	grid-template-columns: 7.5rem minmax(0, 1fr);
	column-gap: 2.5rem;
	padding: 1.25rem 0;
}

@media (prefers-reduced-motion: reduce) {
	.works-card.is-link .works-card-visual:hover img {
		transform: none;
	}
}

@media (max-width: 47.99rem) {
	.page.is-case .navbar {
		background: color-mix(
			in srgb,
			var(--color-paper) calc((1 - var(--nav-ash)) * 100%),
			var(--color-ash) calc(var(--nav-ash) * 100%)
		);
	}

	.page.is-case.is-white .navbar {
		background: color-mix(
			in srgb,
			var(--color-white) calc((1 - var(--nav-ash)) * 100%),
			var(--color-ash) calc(var(--nav-ash) * 100%)
		);
	}

	.page.is-case.is-black .navbar {
		background: color-mix(
			in srgb,
			var(--color-black) calc((1 - var(--nav-ash)) * 100%),
			var(--color-ash) calc(var(--nav-ash) * 100%)
		);
	}

	.case-intro {
		display: flex;
		flex-direction: column;
		padding: 7.5rem 0 1.25rem;
	}

	.case-title {
		grid-column: auto;
		font-size: var(--text-32);
	}

	.case-title-lead {
		padding-left: 4rem;
	}

	.case-body {
		display: flex;
		flex-direction: column;
		gap: 1.1875rem;
		padding: 0 0 var(--space-16);
	}

	.case-aside {
		position: static;
		height: auto;
		padding: 0;
		gap: 0;
	}

	.case-aside-pin {
		position: static;
		height: auto;
		padding: 0;
	}

	.case-aside .pill {
		display: none;
	}

	.case-meta-row {
		grid-template-columns: minmax(0, 1fr);
		padding: 1rem 0;
	}

	.case-meta-row.is-services dt {
		display: none;
	}

	.case-meta-row:not(.is-services) {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		gap: 0.625rem;
	}

	.case-stream {
		gap: var(--space-16);
		padding-bottom: 0;
	}

	.case-figure {
		border-radius: 0.25rem;
	}

	.case-chapter {
		padding: 5rem 0 0;
		gap: 1.5rem;
	}

	.case-chapter-row {
		grid-template-columns: 5rem minmax(0, 1fr);
		column-gap: 1.5rem;
		padding: 1rem 0;
	}
}

html:has(.page.is-branding) {
	--paper: 1;
}

html:has(.page.is-branding),
html:has(.page.is-branding) body {
	color: var(--color-black);
	background: var(--color-paper);
}

.page.is-branding {
	color: var(--color-black);
	background: var(--color-paper);
}

.page.is-branding .navbar .text-link {
	color: var(--color-black);
	mix-blend-mode: normal;
}

.page.is-branding .navbar .text-link-line {
	background: var(--color-black);
}

.page.is-branding .navbar.is-on-dark .text-link {
	color: var(--color-white);
	mix-blend-mode: normal;
}

.page.is-branding .navbar.is-on-dark .text-link-line {
	background: var(--color-white);
}

.branding {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	width: 100%;
}

.branding-hero {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	padding: 0;
}

.branding-hero-copy,
.branding-title,
.branding-lead,
.branding-intro-copy,
.branding-heading,
.branding-service-name,
.branding-service-lead,
.branding-service-row dt,
.branding-service-row dd,
.branding-approach-copy p,
.branding-service-body {
	margin: 0;
	font-family: var(--font);
	font-weight: var(--weight);
	line-height: var(--leading);
	color: inherit;
}

.branding-mosaic {
	position: relative;
	display: grid;
	width: 100%;
	box-sizing: border-box;
}

.branding-mosaic-cell {
	display: flex;
	flex-direction: row;
	align-items: flex-end;
	width: 100%;
	min-width: 0;
	margin: 0;
	--mosaic-image: 47.058823529411764%;
	--mosaic-gap-image: 11.764705882352941%;
	--mosaic-square: 2.352941176470588%;
	--mosaic-gap-dot: 38.823529411764706%;
}

.branding-mosaic-shot {
	flex: none;
	width: var(--mosaic-image);
	min-width: 0;
	overflow: hidden;
	aspect-ratio: 160 / 220;
	background: #08130b;
}

.branding-mosaic-shot img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.branding-mosaic-gap {
	flex: none;
}

.branding-mosaic-gap.is-after-image {
	width: var(--mosaic-gap-image);
}

.branding-mosaic-gap.is-after-dot {
	width: var(--mosaic-gap-dot);
}

.branding-mosaic-dot {
	flex: none;
	width: 0.5rem;
	height: 0.5rem;
	background: var(--color-black);
}

.branding-intro {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.branding-scope,
.branding-dark,
.branding-approach,
.branding-cases,
.branding-audience,
.branding-faq {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	width: 100%;
}

.branding-service-rows {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	width: 100%;
}

.branding-service-row {
	display: grid;
	width: 100%;
}

.branding-service-row dt,
.branding-service-row dd {
	margin: 0;
}

.branding-service-body {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	width: 100%;
	min-width: 0;
}

.branding-qa .service-item {
	gap: 1rem;
}

.branding-qa .service-title,
.branding-qa .expertise-copy {
	font-size: var(--text-28);
	color: var(--color-white);
}

.branding-dark {
	background: var(--color-black);
	color: var(--color-white);
}

.page.is-branding .about-process {
	margin-left: auto;
	margin-right: 0;
}

.page.is-branding .branding-dark .works-card-title,
.page.is-branding .branding-dark .works-card-caption,
.page.is-branding .branding-dark .works-card-body {
	color: var(--color-white);
}

@media (max-width: 47.99rem) {
	.page.is-branding .navbar {
		background: var(--color-paper);
	}

	.page.is-branding .navbar .text-link,
	.page.is-branding .navbar.is-on-paper .text-link {
		--link-ink: var(--color-black);
		color: var(--color-black);
		mix-blend-mode: normal;
	}

	.page.is-branding .navbar.is-on-dark {
		background: var(--color-black);
	}

	.page.is-branding .navbar.is-on-dark .text-link {
		--link-ink: var(--color-white);
		color: var(--color-white);
	}

	.branding-hero {
		padding: 21.25rem 0 0;
	}

	.branding-hero-copy {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		padding: 0 0 1.25rem;
		gap: 0.75rem;
	}

	.branding-title,
	.branding-lead {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		width: 100%;
		font-size: var(--text-32);
	}

	.branding-title-shift,
	.branding-lead-shift {
		padding-left: 4rem;
	}

	.branding-title-rest,
	.branding-lead-rest {
		width: 100%;
	}

	.branding-mosaic {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 4.2328042328%;
		row-gap: 24.875622vw;
		padding: 2.5rem 0 0;
	}

	.branding-mosaic-cell {
		--mosaic-image: 71.8232044198895%;
		--mosaic-gap-image: 15.46961325966851%;
		--mosaic-square: 4.419889502762431%;
		--mosaic-gap-dot: 8.287292817679559%;
	}

	.branding-mosaic-cell.is-desktop-only,
	.branding-cases-row .works-card.is-desktop-only {
		display: none;
	}

	.branding-intro {
		padding: 1.25rem 0 4rem;
		gap: 0.75rem;
	}

	.branding-intro-copy {
		width: 100%;
		font-size: var(--text-20);
	}

	.branding-scope {
		padding: 1.5rem 0 4rem;
	}

	.branding-scope-shell {
		gap: 2rem;
	}

	.branding-heading {
		font-size: var(--text-32);
	}

	.branding-services {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		width: 100%;
	}

	.branding-service {
		box-sizing: border-box;
		padding: 1rem 0;
		border-top: 1px solid var(--color-black-10);
	}

	.branding-service-name {
		flex: 1 1 auto;
		min-width: 0;
		font-size: var(--text-24);
	}

	.branding-service-body {
		padding: 0 0 1rem;
		gap: 3rem;
	}

	.branding-service-lead {
		font-size: var(--text-24);
	}

	.branding-service-rows {
		gap: 2rem;
	}

	.branding-service-row {
		grid-template-columns: 7.375rem minmax(0, 1fr);
		column-gap: 0.75rem;
	}

	.branding-service-row dt,
	.branding-service-row dd {
		font-size: var(--text-20);
	}

	.branding-dark {
		padding: 1.5rem 0 7.5rem;
	}

	.branding-dark-shell {
		gap: 7.5rem;
	}

	.page.is-branding .about-process {
		width: 100%;
		margin: 0;
	}

	.branding-approach {
		gap: 5rem;
	}

	.branding-approach-copy {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 1rem;
		width: 100%;
	}

	.branding-approach-copy p {
		font-size: var(--text-24);
	}

	.branding-cases {
		gap: 2.5rem;
		width: 100%;
	}

	.branding-cases-row {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 2.5rem;
		width: 100%;
	}

	.page.is-branding .branding-qa.expertise-flow {
		width: 100%;
		margin-left: 0;
		gap: 5rem;
	}

	.page.is-branding .branding-qa .expertise-rule {
		display: block;
	}

	.page.is-branding .branding-qa .expertise-block {
		gap: 3rem;
	}

	.page.is-branding .branding-qa .expertise-col {
		gap: 3rem;
	}

	.page.is-branding .branding-qa .service-item {
		padding: 0;
		gap: 1rem;
	}

	.page.is-branding .branding-qa .service-title,
	.page.is-branding .branding-qa .expertise-copy {
		padding-left: 0;
		font-size: var(--text-24);
	}

	.page.is-branding .branding-qa .expertise-label {
		font-size: var(--text-32);
	}

	.page.is-branding .footer-nav {
		display: flex;
	}
}

@media (min-width: 48rem) {
	.branding-hero {
		padding: 21.0625rem 0 0;
		gap: 4rem;
	}

	.branding-hero-copy {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		padding: 0;
		width: 100%;
	}

	.branding-title,
	.branding-lead {
		font-size: var(--text-40);
	}

	.branding-title {
		padding-left: var(--hero-copy-indent);
	}

	.branding-mosaic {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		column-gap: 1.1363636364%;
		row-gap: 7.5rem;
		padding: 0;
	}

	.branding-intro {
		flex-direction: row;
		align-items: flex-start;
		padding: 0;
		gap: 2.5rem;
	}

	.branding-intro-copy {
		flex: 1 1 0;
		min-width: 0;
		font-size: var(--text-24);
	}

	.branding-scope {
		padding: 9.375rem 0 7.5rem;
	}

	.branding-hero-shell {
		gap: 4rem;
	}

	.branding-scope-shell {
		gap: 2.5rem;
	}

	.branding-heading {
		padding-left: var(--hero-copy-indent);
		font-size: var(--text-40);
	}

	.branding-services {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 7.5rem;
		width: 100%;
	}

	.branding-service {
		display: grid;
		grid-template-columns: 458.67fr 933.33fr;
		column-gap: 1rem;
		align-items: start;
		width: 100%;
	}

	.branding-service-name {
		font-size: var(--text-28);
	}

	.branding-service-body {
		gap: 3rem;
	}

	.branding-service:nth-child(n + 2) .branding-service-body {
		gap: 4rem;
	}

	.branding-service-lead {
		font-size: var(--text-28);
	}

	.branding-service-rows {
		gap: 2rem;
	}

	.branding-service-row {
		grid-template-columns: 303.11fr 618.22fr;
		column-gap: 0.75rem;
	}

	.branding-service-row dt,
	.branding-service-row dd {
		font-size: var(--text-20);
	}

	.branding-dark {
		padding: 2.5rem 0;
	}

	.branding-dark-shell {
		gap: 12.5rem;
	}

	.branding-approach {
		align-items: flex-end;
		gap: 0;
	}

	.branding-approach .branding-heading {
		align-self: stretch;
		margin-bottom: 7.5rem;
	}

	.page.is-branding .about-process {
		width: min(63.6875rem, 100%);
		margin: 0 0 6.25rem auto;
	}

	.branding-approach-copy {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		gap: 2.5rem;
		width: min(63.6875rem, 100%);
	}

	.branding-approach-copy p {
		font-size: var(--text-28);
	}

	.branding-cases {
		gap: 1.25rem;
	}

	.branding-cases-row {
		display: flex;
		flex-direction: row;
		align-items: flex-start;
		gap: 1rem;
		width: 100%;
	}

	.branding-cases-row .works-card {
		flex: 1 1 0;
		min-width: 0;
	}

	.page.is-branding .branding-qa .service-title,
	.page.is-branding .branding-qa .expertise-copy {
		font-size: var(--text-28);
	}
}

.page.is-web .branding-mosaic-cell {
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
}

.page.is-web .branding-mosaic-gap.is-after-dot {
	width: auto;
	flex: none;
}

.page.is-web .branding-mosaic-shot {
	width: 100%;
}

@media (max-width: 47.99rem) {
	.page.is-web .branding-mosaic {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 1rem;
		row-gap: 6.25rem;
		padding: 2.5rem 0 0;
	}

	.page.is-web .branding-mosaic-cell {
		--mosaic-image: 71.8232044198895%;
	}

	.page.is-web .branding-mosaic-gap.is-after-dot {
		height: 1.75rem;
	}

	.page.is-web .branding-mosaic-shot {
		width: var(--mosaic-image);
		aspect-ratio: 130 / 180;
	}
}

@media (min-width: 48rem) {
	.page.is-web .branding-mosaic {
		grid-template-columns: repeat(4, 13.75rem);
		justify-content: start;
		column-gap: 8.5rem;
		row-gap: 0;
		padding: 0;
	}

	.page.is-web .branding-mosaic-gap.is-after-dot {
		height: 2rem;
	}

	.page.is-web .branding-mosaic-shot {
		width: 13.75rem;
		aspect-ratio: 220 / 310;
	}
}

.case-close {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	width: 100%;
	background: var(--color-black);
	color: var(--color-white);
}

.case-close-kicker,
.case-close-lead,
.case-close-more-head {
	margin: 0;
	font-family: var(--font);
	font-weight: var(--weight);
	line-height: var(--leading);
	color: var(--color-white);
}

.case-close-cta {
	display: flex;
	flex-direction: column;
	align-items: stretch;
}

.case-close-offer {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.case-close-copy {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.case-close-rule {
	width: 100%;
}

.case-close-rule span {
	display: block;
	width: 100%;
	height: 1px;
	background: var(--color-white-20);
}

.case-close-more {
	display: flex;
	flex-direction: column;
	align-items: stretch;
}

.case-close:not(.is-on-paper) .works-card-title,
.case-close:not(.is-on-paper) .works-card-caption,
.case-close:not(.is-on-paper) .works-card-body {
	color: var(--color-white);
}

.case-close.is-on-paper {
	background: var(--color-paper);
	color: var(--color-black);
}

.case-close.is-on-paper .case-close-kicker,
.case-close.is-on-paper .case-close-lead,
.case-close.is-on-paper .case-close-more-head {
	color: var(--color-black);
}

.case-close.is-on-paper .drift-line {
	--line-color: var(--color-black);
	--line-dim: var(--color-black-20);
}

.case-close.is-on-paper .case-close-rule span {
	background: var(--color-black-20);
}

.page.is-case:not(.is-black) .navbar.is-on-dark {
	background: var(--color-black);
}

.page.is-case:not(.is-black) .navbar.is-on-dark .text-link {
	--link-ink: var(--color-white);
	color: var(--color-white);
	mix-blend-mode: normal;
}

.page.is-case:not(.is-black) .navbar.is-on-dark .text-link-line {
	background: var(--color-white);
}

@media (min-width: 48rem) {
	.case-aside-pin .pill.is-project {
		opacity: var(--cta-fade, 1);
		pointer-events: var(--cta-hit, auto);
		transition: opacity 0.55s cubic-bezier(0.45, 0, 0.15, 1);
	}

	.case-close-cta {
		align-items: flex-end;
		padding: 5rem 0 7.5rem;
		gap: 4rem;
	}

	.case-close-cta .hero-lines.is-desktop {
		flex: none;
		align-self: stretch;
		height: 22.9375rem;
		padding: 0 1.75rem;
	}

	.case-close-offer {
		width: 50%;
		gap: 4rem;
	}

	.case-close-copy {
		gap: 1rem;
		width: 100%;
	}

	.case-close-kicker {
		font-size: var(--text-24);
	}

	.case-close-lead {
		font-size: var(--text-40);
	}

	.case-close-more-shell {
		padding-block: 1.5rem 3rem;
	}

	.case-close-more {
		gap: 3rem;
	}

	.case-close-more-head,
	.case-close-more-row {
		width: calc(50% + var(--pad-x));
		margin-left: auto;
		margin-right: calc(-1 * var(--pad-x));
	}

	.case-close-more-head {
		font-size: var(--text-24);
	}

	.case-close-more-head .is-mobile-copy {
		display: none;
	}

	.case-close-more-row {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 1rem;
	}
}

@media (max-width: 47.99rem) {
	.case-close-cta {
		padding: 1rem 0 4rem;
		gap: 3rem;
		border-bottom: 1px solid var(--color-white-20);
	}

	.case-close.is-on-paper .case-close-cta {
		border-bottom-color: var(--color-black-20);
	}

	.case-close-rule {
		display: none;
	}

	.case-close-cta .hero-lines.is-mobile {
		display: flex;
		flex: none;
		height: 18.75rem;
		padding: 0;
	}

	.case-close-offer {
		gap: 1.75rem;
		width: 100%;
	}

	.case-close-copy {
		gap: 0.75rem;
		width: 100%;
	}

	.case-close-kicker {
		font-size: var(--text-20);
	}

	.case-close-lead {
		font-size: var(--text-32);
	}

	.case-close-more-shell {
		padding-block: 1.75rem 0;
	}

	.case-close-more {
		gap: 2rem;
	}

	.case-close-more-head {
		font-size: var(--text-24);
	}

	.case-close-more-head .is-desktop-copy {
		display: none;
	}

	.case-close-more-row {
		display: flex;
		flex-direction: column;
		align-items: stretch;
		gap: 2rem;
		width: 100%;
	}
}

@media (prefers-reduced-motion: reduce) {
	.case-aside-pin .pill.is-project {
		opacity: 1;
		pointer-events: auto;
		transition: none;
	}
}
