@charset "UTF-8";

:root {
	--arca-paper: #f3f0e8;
	--arca-paper-deep: #e8e2d5;
	--arca-paper-light: #fbf8f1;
	--arca-ink: #273840;
	--arca-ink-soft: #506067;
	--arca-indigo: #245376;
	--arca-indigo-deep: #173a56;
	--arca-sage: #809886;
	--arca-sage-light: #a8b7aa;
	--arca-terra: #b66d5c;
	--arca-ochre: #c49a4a;
	--arca-white: #fffdf8;
	--arca-line: rgba(39, 56, 64, 0.17);
	--arca-shadow: 0 24px 70px rgba(31, 47, 54, 0.1);
	--arca-container: min(1180px, calc(100% - 64px));
	--arca-serif: "Yu Mincho", "Hiragino Mincho ProN", "Hiragino Mincho Pro", "Noto Serif JP", serif;
	--arca-sans: "Helvetica Neue", "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic", "Noto Sans JP", sans-serif;
	--arca-ease: cubic-bezier(0.22, 1, 0.36, 1);
}

html {
	scroll-behavior: smooth;
}

body.arca-site {
	margin: 0;
	overflow-x: hidden;
	background: var(--arca-paper);
	color: var(--arca-ink);
	font-family: var(--arca-sans);
	font-size: 16px;
	font-weight: 400;
	line-height: 1.9;
	letter-spacing: 0.035em;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}

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

.arca-site img {
	display: block;
	max-width: 100%;
	height: auto;
}

:where(.arca-site) a {
	color: inherit;
	text-decoration: none;
}

.arca-site button,
.arca-site input,
.arca-site textarea,
.arca-site select {
	font: inherit;
}

.arca-site h1,
.arca-site h2,
.arca-site h3,
.arca-site h4,
.arca-site p,
.arca-site ul,
.arca-site ol,
.arca-site dl {
	margin-top: 0;
}

.arca-container {
	width: var(--arca-container);
	margin-inline: auto;
}

.arca-main {
	overflow: hidden;
}

.arca-section {
	position: relative;
	padding: 144px 0;
}

.arca-skip-link {
	position: fixed;
	z-index: 9999;
	top: 12px;
	left: 12px;
	padding: 10px 16px;
	transform: translateY(-180%);
	border-radius: 4px;
	background: var(--arca-white);
	box-shadow: var(--arca-shadow);
	color: var(--arca-ink);
	transition: transform 0.2s ease;
}

.arca-skip-link:focus {
	transform: translateY(0);
}

.arca-eyebrow {
	margin-bottom: 24px;
	color: var(--arca-indigo);
	font-size: 11px;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.25em;
	text-transform: uppercase;
}

.arca-eyebrow--light {
	color: rgba(255, 253, 248, 0.72);
}

.arca-heading {
	margin-bottom: 0;
	font-family: var(--arca-serif);
	font-size: clamp(40px, 4.2vw, 64px);
	font-weight: 500;
	line-height: 1.43;
	letter-spacing: 0.055em;
}

.arca-heading--light {
	color: var(--arca-white);
}

.arca-section-marker {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 14px;
	color: var(--arca-indigo);
}

.arca-section-marker > span {
	display: grid;
	width: 46px;
	height: 46px;
	border: 1px solid currentColor;
	border-radius: 50%;
	place-items: center;
	font-family: var(--arca-serif);
	font-size: 13px;
}

.arca-section-marker > p {
	margin: 0;
	font-size: 9px;
	font-weight: 700;
	line-height: 1.65;
	letter-spacing: 0.2em;
}

.arca-section-marker--light {
	color: rgba(255, 253, 248, 0.7);
}

/* Header */
.arca-header {
	position: relative;
	z-index: 1000;
	width: 100%;
	border-bottom: 1px solid rgba(39, 56, 64, 0.11);
	background: rgba(243, 240, 232, 0.94);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
}

.arca-header.is-sticky {
	position: fixed;
	top: 0;
	box-shadow: 0 8px 28px rgba(39, 56, 64, 0.08);
	animation: arca-header-in 0.45s var(--arca-ease) both;
}

.admin-bar .arca-header.is-sticky {
	top: 32px;
}

.arca-header__inner {
	display: flex;
	width: min(1320px, calc(100% - 64px));
	min-height: 86px;
	margin-inline: auto;
	align-items: center;
	justify-content: space-between;
	gap: 36px;
}

.arca-brand {
	display: inline-flex;
	align-items: center;
	gap: 13px;
	flex: 0 0 auto;
}

.arca-brand__mark {
	width: 42px;
	height: 42px;
}

.arca-brand__type {
	display: flex;
	flex-direction: column;
	gap: 3px;
	line-height: 1;
}

.arca-brand__type strong {
	font-size: 17px;
	font-weight: 650;
	letter-spacing: 0.12em;
}

.arca-brand__type small {
	color: var(--arca-ink-soft);
	font-size: 7px;
	font-weight: 700;
	letter-spacing: 0.19em;
}

.arca-brand__custom-logo img,
.arca-brand__custom-logo .custom-logo {
	display: block;
	width: auto;
	max-width: 260px;
	height: 54px;
	object-fit: contain;
}

.arca-nav {
	display: flex;
	align-items: center;
	gap: 34px;
}

.arca-nav__list {
	display: flex;
	margin: 0;
	padding: 0;
	align-items: center;
	gap: clamp(20px, 2.4vw, 42px);
	list-style: none;
}

.arca-nav__list > li {
	position: relative;
	margin: 0;
}

.arca-nav__list > li > a {
	position: relative;
	display: block;
	padding: 28px 0;
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.arca-nav__list > li > a::after {
	position: absolute;
	right: 0;
	bottom: 22px;
	left: 0;
	height: 1px;
	content: "";
	transform: scaleX(0);
	transform-origin: right;
	background: var(--arca-terra);
	transition: transform 0.35s var(--arca-ease);
}

.arca-nav__list > li > a:hover::after,
.arca-nav__list > li.current-menu-item > a::after {
	transform: scaleX(1);
	transform-origin: left;
}

.arca-nav__list .sub-menu {
	position: absolute;
	top: calc(100% - 8px);
	left: -24px;
	min-width: 210px;
	margin: 0;
	padding: 12px 0;
	transform: translateY(8px);
	border: 1px solid var(--arca-line);
	border-radius: 3px;
	background: var(--arca-white);
	box-shadow: var(--arca-shadow);
	visibility: hidden;
	opacity: 0;
	list-style: none;
	transition: 0.25s ease;
}

.arca-nav__list li:hover > .sub-menu,
.arca-nav__list li:focus-within > .sub-menu {
	transform: translateY(0);
	visibility: visible;
	opacity: 1;
}

.arca-nav__list .sub-menu a {
	display: block;
	padding: 10px 24px;
	font-size: 12px;
}

.arca-nav__contact {
	display: inline-flex;
	min-width: 126px;
	min-height: 46px;
	padding: 10px 17px;
	border-radius: 999px;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	background: var(--arca-ink);
	color: var(--arca-white);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
	transition: transform 0.3s var(--arca-ease), background 0.3s ease;
}

.arca-nav__contact:hover {
	transform: translateY(-2px);
	background: var(--arca-indigo);
}

.arca-menu-toggle {
	display: none;
	border: 0;
	background: transparent;
	color: var(--arca-ink);
}

/* Hero */
.arca-hero {
	position: relative;
	min-height: 790px;
	padding: 118px 0 100px;
	isolation: isolate;
	background:
		radial-gradient(circle at 72% 44%, rgba(196, 154, 74, 0.13), transparent 24%),
		linear-gradient(135deg, var(--arca-paper-light) 0%, var(--arca-paper) 52%, var(--arca-paper-deep) 100%);
}

.arca-hero::before {
	position: absolute;
	z-index: -1;
	top: 0;
	right: 0;
	width: 48%;
	height: 100%;
	content: "";
	border-left: 1px solid rgba(39, 56, 64, 0.08);
	background: repeating-linear-gradient(90deg, transparent 0, transparent 89px, rgba(39, 56, 64, 0.04) 90px);
}

.arca-hero__grain,
.arca-origin__texture {
	position: absolute;
	z-index: -1;
	inset: 0;
	opacity: 0.5;
	background-image: url("../images/paper-grain.svg");
	background-size: 260px 260px;
	mix-blend-mode: multiply;
	pointer-events: none;
}

.arca-hero__inner {
	display: grid;
	align-items: center;
	grid-template-columns: minmax(0, 620px) minmax(500px, 1fr);
	gap: 20px;
}

.arca-hero__content {
	position: relative;
	z-index: 2;
	padding-left: 4px;
}

.arca-hero__title {
	margin: 0 0 36px;
	font-family: var(--arca-serif);
	font-size: clamp(50px, 4.2vw, 56px);
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0.035em;
}

.arca-hero__title::after {
	display: block;
	width: 70px;
	height: 1px;
	margin-top: 28px;
	content: "";
	background: var(--arca-terra);
}

.arca-hero__lead {
	max-width: 590px;
	margin-bottom: 36px;
	color: var(--arca-ink-soft);
	font-size: 15px;
	line-height: 2.05;
}

.arca-hero__actions {
	display: flex;
	align-items: center;
	gap: 32px;
}

.arca-button {
	display: inline-flex;
	min-width: 208px;
	min-height: 58px;
	padding: 14px 20px 14px 24px;
	border: 1px solid transparent;
	border-radius: 999px;
	align-items: center;
	justify-content: space-between;
	gap: 28px;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.1em;
	transition: transform 0.35s var(--arca-ease), background 0.35s ease, color 0.35s ease, border 0.35s ease;
}

.arca-button i {
	display: grid;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	place-items: center;
	font-style: normal;
	transition: transform 0.35s var(--arca-ease);
}

.arca-button:hover {
	transform: translateY(-3px);
}

.arca-button:hover i {
	transform: translateX(3px);
}

.arca-button--primary {
	background: var(--arca-ink);
	color: var(--arca-white);
}

.arca-button--primary i {
	background: rgba(255, 255, 255, 0.12);
}

.arca-button--primary:hover {
	background: var(--arca-indigo);
	color: var(--arca-white);
}

.arca-button--light {
	border-color: rgba(255, 255, 255, 0.4);
	color: var(--arca-white);
}

.arca-button--light i {
	background: rgba(255, 255, 255, 0.12);
}

.arca-button--light:hover {
	border-color: var(--arca-white);
	background: var(--arca-white);
	color: var(--arca-ink);
}

.arca-button--outline {
	border-color: var(--arca-ink);
	color: var(--arca-ink);
}

.arca-button--outline i {
	background: rgba(39, 56, 64, 0.08);
}

.arca-button--outline:hover {
	background: var(--arca-ink);
	color: var(--arca-white);
}

.arca-text-link {
	position: relative;
	display: inline-flex;
	padding: 5px 0;
	align-items: center;
	gap: 14px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.12em;
}

.arca-text-link::after {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 1px;
	content: "";
	transform: scaleX(0.3);
	transform-origin: left;
	background: currentColor;
	transition: transform 0.35s var(--arca-ease);
}

.arca-text-link:hover::after {
	transform: scaleX(1);
}

.arca-hero__visual {
	position: relative;
	z-index: 1;
}

.arca-hero__visual::before {
	position: absolute;
	z-index: -1;
	top: 50%;
	left: 50%;
	width: 76%;
	aspect-ratio: 1;
	content: "";
	transform: translate(-50%, -50%);
	border: 1px solid rgba(39, 56, 64, 0.08);
	border-radius: 50%;
}

.arca-hero__visual img {
	width: 100%;
	filter: drop-shadow(0 32px 40px rgba(39, 56, 64, 0.1));
}

.arca-hero__visual-label {
	position: absolute;
	padding: 4px 8px;
	background: rgba(243, 240, 232, 0.76);
	color: var(--arca-ink-soft);
	font-size: 7px;
	font-weight: 700;
	letter-spacing: 0.16em;
}

.arca-hero__visual-label--one {
	top: 30%;
	left: 5%;
}

.arca-hero__visual-label--two {
	top: 20%;
	left: 48%;
}

.arca-hero__visual-label--three {
	right: 4%;
	bottom: 22%;
}

.arca-hero__scroll {
	position: absolute;
	bottom: 31px;
	left: max(32px, calc((100% - 1180px) / 2));
	display: flex;
	align-items: center;
	gap: 14px;
	color: var(--arca-ink-soft);
	font-size: 7px;
	font-weight: 700;
	letter-spacing: 0.2em;
	transform: rotate(-90deg) translateX(100%);
	transform-origin: left bottom;
}

.arca-hero__scroll i {
	display: block;
	width: 48px;
	height: 1px;
	background: var(--arca-ink-soft);
}

/* Intro */
.arca-intro {
	background: var(--arca-white);
}

.arca-intro::before {
	position: absolute;
	top: 0;
	left: calc(50% + 470px);
	width: 1px;
	height: 100%;
	content: "";
	background: var(--arca-line);
}

.arca-intro__grid {
	display: grid;
	grid-template-columns: 100px minmax(0, 1fr) 260px;
	gap: 48px;
}

.arca-intro__content {
	max-width: 680px;
}

.arca-intro__body {
	display: grid;
	margin-top: 56px;
	grid-template-columns: repeat(2, 1fr);
	gap: 42px;
	color: var(--arca-ink-soft);
	font-size: 14px;
	line-height: 2.15;
}

.arca-intro__body p {
	margin: 0;
}

.arca-intro__note {
	position: relative;
	padding: 92px 0 0 35px;
	align-self: end;
	color: var(--arca-indigo);
	font-family: var(--arca-serif);
	font-size: 17px;
	line-height: 2.05;
	letter-spacing: 0.08em;
	writing-mode: vertical-rl;
}

.arca-intro__note-line {
	position: absolute;
	top: 0;
	right: 20px;
	width: 1px;
	height: 70px;
	background: var(--arca-terra);
}

/* Thinking OS */
.arca-os {
	background:
		radial-gradient(circle at 70% 40%, rgba(128, 152, 134, 0.17), transparent 32%),
		var(--arca-indigo-deep);
	color: var(--arca-white);
}

.arca-os::before {
	position: absolute;
	inset: 0;
	content: "";
	opacity: 0.22;
	background-image: url("../images/network-lines.svg");
	background-position: center;
	background-size: cover;
	pointer-events: none;
}

.arca-os__heading {
	position: relative;
	display: grid;
	align-items: start;
	grid-template-columns: 100px minmax(0, 1fr) 350px;
	gap: 48px;
}

.arca-os__lead {
	margin: 62px 0 0;
	color: rgba(255, 253, 248, 0.68);
	font-size: 14px;
	line-height: 2.1;
}

.arca-os-map {
	position: relative;
	display: grid;
	margin-top: 108px;
	grid-template-columns: repeat(5, 1fr);
}

.arca-os-map__line {
	position: absolute;
	top: 48px;
	right: 8%;
	left: 8%;
	height: 1px;
	background: linear-gradient(90deg, var(--arca-terra), var(--arca-ochre), var(--arca-sage), var(--arca-indigo));
}

.arca-os-node {
	position: relative;
	z-index: 1;
	padding: 0 12px;
	text-align: center;
}

.arca-os-node__number {
	position: absolute;
	top: -33px;
	left: 50%;
	color: rgba(255, 255, 255, 0.42);
	font-size: 8px;
	letter-spacing: 0.12em;
	transform: translateX(-50%);
}

.arca-os-node i {
	display: block;
	width: 96px;
	height: 96px;
	margin: 0 auto 30px;
	border: 1px solid rgba(255, 255, 255, 0.35);
	border-radius: 47% 53% 59% 41% / 52% 42% 58% 48%;
	background: var(--arca-indigo-deep);
	box-shadow: 0 0 0 7px rgba(255, 255, 255, 0.025);
}

.arca-os-node i::before {
	display: block;
	width: 12px;
	height: 12px;
	margin: 41px auto;
	content: "";
	border-radius: 50%;
	background: var(--arca-white);
	box-shadow: 0 0 0 8px rgba(255, 255, 255, 0.09);
}

.arca-os-node--1 i {
	border-color: var(--arca-terra);
}

.arca-os-node--1 i::before {
	background: var(--arca-terra);
}

.arca-os-node--2 i {
	border-color: var(--arca-ochre);
}

.arca-os-node--2 i::before {
	background: var(--arca-ochre);
}

.arca-os-node--3 i {
	border-color: var(--arca-sage-light);
}

.arca-os-node--3 i::before {
	background: var(--arca-sage-light);
}

.arca-os-node--4 i {
	border-color: #7e9eb3;
}

.arca-os-node--4 i::before {
	background: #7e9eb3;
}

.arca-os-node--5 i {
	border-color: #c0b0a7;
}

.arca-os-node--5 i::before {
	background: #c0b0a7;
}

.arca-os-node h3 {
	margin-bottom: 13px;
	color: var(--arca-white);
	font-family: var(--arca-serif);
	font-size: 17px;
	font-weight: 500;
	letter-spacing: 0.08em;
}

.arca-os-node p {
	margin: 0;
	color: rgba(255, 253, 248, 0.53);
	font-size: 10px;
	line-height: 1.85;
}

.arca-os__footer {
	display: flex;
	margin-top: 80px;
	padding-top: 40px;
	border-top: 1px solid rgba(255, 255, 255, 0.14);
	align-items: center;
	justify-content: space-between;
}

.arca-os__footer > p {
	margin: 0;
	color: rgba(255, 253, 248, 0.7);
	font-family: var(--arca-serif);
	font-size: 17px;
	line-height: 1.8;
	letter-spacing: 0.08em;
}

/* Value */
.arca-value {
	background: var(--arca-paper);
}

.arca-value__grid {
	display: grid;
	align-items: center;
	grid-template-columns: 100px minmax(0, 1fr) minmax(420px, 0.9fr);
	gap: 48px;
}

.arca-value__lead {
	max-width: 520px;
	margin: 42px 0 0;
	color: var(--arca-ink-soft);
	font-size: 14px;
	line-height: 2.15;
}

.arca-value__visual {
	padding-left: 30px;
}

.arca-value__visual img {
	width: 100%;
}

.arca-values {
	display: grid;
	margin-top: 100px;
	border-top: 1px solid var(--arca-line);
	border-left: 1px solid var(--arca-line);
	grid-template-columns: repeat(4, 1fr);
}

.arca-values article {
	min-height: 220px;
	padding: 34px 30px;
	border-right: 1px solid var(--arca-line);
	border-bottom: 1px solid var(--arca-line);
}

.arca-values article > span {
	color: var(--arca-terra);
	font-family: var(--arca-serif);
	font-size: 12px;
}

.arca-values h3 {
	margin: 54px 0 12px;
	font-family: var(--arca-serif);
	font-size: 17px;
	font-weight: 500;
	letter-spacing: 0.04em;
}

.arca-values p {
	margin: 0;
	color: var(--arca-ink-soft);
	font-size: 11px;
	line-height: 1.8;
}

/* Services */
.arca-services {
	background: var(--arca-white);
}

.arca-services__heading {
	display: grid;
	align-items: start;
	grid-template-columns: 100px minmax(0, 1fr) 350px;
	gap: 48px;
}

.arca-services__lead {
	margin: 60px 0 0;
	color: var(--arca-ink-soft);
	font-size: 14px;
	line-height: 2.1;
}

.arca-service-list {
	margin-top: 90px;
	border-top: 1px solid var(--arca-line);
}

.arca-service {
	display: grid;
	min-height: 276px;
	padding: 48px 0;
	border-bottom: 1px solid var(--arca-line);
	align-items: center;
	grid-template-columns: 76px 220px 1fr;
	gap: 48px;
	transition: padding 0.4s var(--arca-ease), background 0.4s ease;
}

.arca-service:hover {
	padding-right: 28px;
	padding-left: 28px;
	background: rgba(232, 226, 213, 0.45);
}

.arca-service__number {
	align-self: start;
	color: var(--arca-terra);
	font-family: var(--arca-serif);
	font-size: 14px;
}

.arca-service__icon {
	position: relative;
	width: 160px;
	height: 150px;
	margin-inline: auto;
}

.arca-service__icon i {
	position: absolute;
	display: block;
	border: 1px solid var(--arca-ink);
	border-radius: 50%;
}

.arca-service__icon--training i:nth-child(1) {
	top: 18px;
	left: 34px;
	width: 74px;
	height: 74px;
	background: rgba(196, 154, 74, 0.16);
}

.arca-service__icon--training i:nth-child(2) {
	right: 18px;
	bottom: 10px;
	width: 60px;
	height: 60px;
	background: rgba(128, 152, 134, 0.17);
}

.arca-service__icon--training i:nth-child(3) {
	bottom: 20px;
	left: 10px;
	width: 32px;
	height: 32px;
	border-color: var(--arca-terra);
	background: var(--arca-terra);
}

.arca-service__icon--support i:nth-child(1) {
	top: 20px;
	left: 20px;
	width: 54px;
	height: 54px;
	background: rgba(182, 109, 92, 0.16);
}

.arca-service__icon--support i:nth-child(2) {
	top: 8px;
	right: 14px;
	width: 42px;
	height: 42px;
	background: rgba(196, 154, 74, 0.17);
}

.arca-service__icon--support i:nth-child(3) {
	right: 31px;
	bottom: 8px;
	width: 64px;
	height: 64px;
	background: rgba(128, 152, 134, 0.18);
}

.arca-service__icon--support i:nth-child(4) {
	bottom: 14px;
	left: 18px;
	width: 24px;
	height: 24px;
	border-color: var(--arca-indigo);
	background: var(--arca-indigo);
}

.arca-service__icon--consulting i:nth-child(1) {
	top: 10px;
	left: 10px;
	width: 135px;
	height: 125px;
	border-color: rgba(39, 56, 64, 0.32);
	border-radius: 41% 59% 44% 56% / 55% 42% 58% 45%;
}

.arca-service__icon--consulting i:nth-child(2) {
	top: 54px;
	left: 56px;
	width: 45px;
	height: 45px;
	border-color: var(--arca-indigo);
	background: var(--arca-indigo);
}

.arca-service__icon--consulting i:nth-child(3) {
	top: 69px;
	left: 71px;
	width: 15px;
	height: 15px;
	border-color: var(--arca-white);
}

.arca-service__en {
	margin-bottom: 9px;
	color: var(--arca-indigo);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.19em;
}

.arca-service__copy h3 {
	margin-bottom: 16px;
	font-family: var(--arca-serif);
	font-size: 28px;
	font-weight: 500;
	letter-spacing: 0.07em;
}

.arca-service__copy > p:not(.arca-service__en) {
	max-width: 640px;
	margin-bottom: 16px;
	color: var(--arca-ink-soft);
	font-size: 13px;
	line-height: 2;
}

.arca-service__copy ul {
	display: flex;
	margin: 0;
	padding: 0;
	gap: 10px;
	list-style: none;
}

.arca-service__copy li {
	padding: 4px 12px;
	border: 1px solid var(--arca-line);
	border-radius: 999px;
	color: var(--arca-ink-soft);
	font-size: 9px;
}

.arca-services__action {
	display: flex;
	margin-top: 56px;
	justify-content: flex-end;
}

/* Proof */
.arca-proof {
	position: relative;
	padding: 100px 0;
	background: var(--arca-sage);
	color: var(--arca-white);
}

.arca-proof::before {
	position: absolute;
	inset: 0;
	content: "";
	opacity: 0.16;
	background-image: url("../images/paper-grain.svg");
	mix-blend-mode: multiply;
}

.arca-proof__inner {
	position: relative;
}

.arca-proof__numbers {
	display: grid;
	align-items: center;
	grid-template-columns: 1fr 1px 1fr 1px 1fr;
	gap: 44px;
}

.arca-proof__item {
	text-align: center;
}

.arca-proof__item strong {
	display: inline-block;
	font-family: var(--arca-serif);
	font-size: clamp(58px, 6vw, 88px);
	font-weight: 400;
	line-height: 1;
	letter-spacing: -0.03em;
}

.arca-proof__item strong span {
	margin-right: 4px;
	font-family: var(--arca-sans);
	font-size: 12px;
	letter-spacing: 0.05em;
}

.arca-proof__item em {
	margin-left: 8px;
	font-size: 10px;
	font-style: normal;
	letter-spacing: 0.12em;
}

.arca-proof__item p {
	margin: 18px 0 0;
	color: rgba(255, 255, 255, 0.72);
	font-size: 10px;
	letter-spacing: 0.12em;
}

.arca-proof__divider {
	width: 1px;
	height: 90px;
	background: rgba(255, 255, 255, 0.28);
}

.arca-proof__note {
	max-width: 720px;
	margin: 64px auto 0;
	padding-top: 30px;
	border-top: 1px solid rgba(255, 255, 255, 0.25);
	color: rgba(255, 255, 255, 0.72);
	font-size: 12px;
	text-align: center;
}

/* Knowledge */
.arca-knowledge {
	background: var(--arca-paper);
}

.arca-knowledge__grid {
	display: grid;
	align-items: center;
	grid-template-columns: 100px minmax(360px, 0.9fr) minmax(0, 1fr);
	gap: 65px;
}

.arca-knowledge__visual {
	position: relative;
}

.arca-knowledge__visual::before {
	position: absolute;
	z-index: -1;
	top: 50%;
	left: 50%;
	width: 78%;
	aspect-ratio: 1;
	content: "";
	transform: translate(-50%, -50%);
	border-radius: 50%;
	background: rgba(128, 152, 134, 0.12);
}

.arca-knowledge__visual img {
	width: 100%;
	max-height: 550px;
	object-fit: contain;
	filter: drop-shadow(0 30px 32px rgba(39, 56, 64, 0.15));
}

.arca-knowledge__content {
	max-width: 520px;
}

.arca-knowledge__content .arca-heading {
	font-size: clamp(48px, 4.5vw, 68px);
}

.arca-knowledge__sub {
	margin: 15px 0 32px;
	color: var(--arca-indigo);
	font-family: var(--arca-serif);
	font-size: 17px;
	letter-spacing: 0.1em;
}

.arca-knowledge__content > p:not(.arca-eyebrow, .arca-knowledge__sub) {
	margin-bottom: 34px;
	color: var(--arca-ink-soft);
	font-size: 13px;
	line-height: 2.1;
}

/* Origin */
.arca-origin {
	overflow: hidden;
	background: var(--arca-ink);
	color: var(--arca-white);
}

.arca-origin::before {
	position: absolute;
	top: -35%;
	right: -12%;
	width: 70%;
	aspect-ratio: 1;
	content: "";
	border: 1px solid rgba(255, 255, 255, 0.08);
	border-radius: 50%;
}

.arca-origin__grid {
	position: relative;
	display: grid;
	align-items: center;
	grid-template-columns: minmax(0, 1fr) 440px;
	gap: 100px;
}

.arca-origin__content {
	max-width: 680px;
}

.arca-origin__body {
	display: grid;
	margin: 48px 0;
	grid-template-columns: 0.8fr 1.2fr;
	gap: 50px;
	color: rgba(255, 255, 255, 0.67);
	font-size: 13px;
	line-height: 2.1;
}

.arca-origin__body strong {
	color: var(--arca-white);
	font-family: var(--arca-serif);
	font-size: 19px;
	font-weight: 500;
	letter-spacing: 0.09em;
}

.arca-origin__mark {
	position: relative;
	display: grid;
	min-height: 440px;
	align-items: center;
	justify-items: center;
}

.arca-origin__mark img {
	position: absolute;
	width: 390px;
	opacity: 0.8;
}

.arca-origin__mark span {
	position: relative;
	z-index: 2;
	font-family: var(--arca-serif);
	font-size: 22px;
	letter-spacing: 0.25em;
}

.arca-origin__mark i {
	position: relative;
	z-index: 2;
	width: 1px;
	height: 70px;
	background: var(--arca-terra);
}

/* Contact */
.arca-contact {
	position: relative;
	overflow: hidden;
	padding: 130px 0 180px;
	background: var(--arca-paper-light);
}

.arca-contact__inner {
	position: relative;
	z-index: 2;
	display: grid;
	align-items: end;
	grid-template-columns: 1fr 410px;
	gap: 100px;
}

.arca-contact__copy {
	display: grid;
	grid-template-columns: 1fr 160px;
	align-items: center;
	gap: 35px;
}

.arca-contact__copy > p {
	margin: 0;
	color: var(--arca-ink-soft);
	font-size: 12px;
	line-height: 2;
}

.arca-contact__circle {
	display: flex;
	width: 154px;
	height: 154px;
	padding: 28px;
	border-radius: 50%;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: var(--arca-terra);
	color: var(--arca-white);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.18em;
	transition: transform 0.4s var(--arca-ease), background 0.35s ease;
}

.arca-contact__circle i {
	font-size: 18px;
	font-style: normal;
}

.arca-contact__circle:hover {
	transform: rotate(-5deg) scale(1.05);
	background: var(--arca-indigo);
	color: var(--arca-white);
}

.arca-contact__word {
	position: absolute;
	right: -20px;
	bottom: -155px;
	margin: 0;
	color: transparent;
	font-family: var(--arca-serif);
	font-size: clamp(170px, 22vw, 350px);
	font-weight: 600;
	line-height: 1;
	letter-spacing: -0.04em;
	-webkit-text-stroke: 1px rgba(39, 56, 64, 0.08);
}

/* Footer */
.arca-footer {
	padding: 90px 0 30px;
	background: #1e2c32;
	color: var(--arca-white);
}

.arca-footer__grid {
	display: grid;
	grid-template-columns: 1.3fr 1fr 0.6fr;
	gap: 60px;
}

.arca-brand--footer .arca-brand__type small {
	color: rgba(255, 255, 255, 0.48);
}

.arca-footer__brand > p {
	margin: 35px 0 0;
	color: rgba(255, 255, 255, 0.55);
	font-family: var(--arca-serif);
	font-size: 14px;
	line-height: 1.9;
	letter-spacing: 0.08em;
}

.arca-footer__links {
	display: grid;
	margin: 0;
	padding: 0;
	grid-template-columns: repeat(2, 1fr);
	gap: 16px 30px;
	list-style: none;
}

.arca-footer__links li {
	margin: 0;
}

.arca-footer__links a,
.arca-footer__legal a {
	color: rgba(255, 255, 255, 0.72);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.arca-footer__links a:hover,
.arca-footer__legal a:hover {
	color: var(--arca-white);
}

.arca-footer__legal {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.arca-footer__bottom {
	display: flex;
	margin-top: 70px;
	padding-top: 24px;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	justify-content: space-between;
	color: rgba(255, 255, 255, 0.4);
	font-size: 8px;
	letter-spacing: 0.13em;
}

/* Interior pages */
.arca-page-hero {
	position: relative;
	min-height: 470px;
	padding: 150px 0 100px;
	overflow: hidden;
	background:
		linear-gradient(115deg, rgba(255, 255, 255, 0.38), transparent 40%),
		var(--arca-paper-deep);
}

.arca-page-hero::after {
	position: absolute;
	right: -2%;
	bottom: -42%;
	width: 48%;
	aspect-ratio: 1;
	content: "";
	border: 1px solid rgba(39, 56, 64, 0.12);
	border-radius: 44% 56% 61% 39% / 48% 37% 63% 52%;
}

.arca-page-hero__art {
	position: absolute;
	top: -50px;
	right: 7%;
	width: min(580px, 50vw);
	height: 540px;
	opacity: 0.25;
	background: url("../images/network-lines-dark.svg") center / contain no-repeat;
}

.arca-page-hero .arca-container {
	position: relative;
	z-index: 2;
}

.arca-page-hero h1 {
	max-width: 900px;
	margin: 0;
	font-family: var(--arca-serif);
	font-size: clamp(56px, 7vw, 92px);
	font-weight: 500;
	line-height: 1.25;
	letter-spacing: 0.09em;
}

.arca-page-hero__lead {
	max-width: 610px;
	margin: 30px 0 0;
	color: var(--arca-ink-soft);
	font-size: 14px;
}

.arca-page__container {
	max-width: 900px;
	padding-top: 100px;
	padding-bottom: 120px;
}

.arca-entry__content {
	color: var(--arca-ink);
	font-size: 15px;
	line-height: 2.1;
}

.arca-entry__content > * {
	max-width: 100%;
}

.arca-entry__content h2 {
	margin: 80px 0 28px;
	padding-bottom: 16px;
	border-bottom: 1px solid var(--arca-line);
	font-family: var(--arca-serif);
	font-size: 32px;
	font-weight: 500;
	line-height: 1.55;
	letter-spacing: 0.06em;
}

.arca-entry__content h3 {
	margin: 52px 0 20px;
	color: var(--arca-indigo);
	font-family: var(--arca-serif);
	font-size: 23px;
	font-weight: 500;
}

.arca-entry__content p {
	margin-bottom: 28px;
}

.arca-entry__content a {
	border-bottom: 1px solid currentColor;
	color: var(--arca-indigo);
}

.arca-entry__content ul,
.arca-entry__content ol {
	margin-bottom: 30px;
	padding-left: 1.5em;
}

.arca-entry__content blockquote {
	margin: 48px 0;
	padding: 30px 36px;
	border: 0;
	border-left: 3px solid var(--arca-terra);
	background: var(--arca-paper-deep);
	font-family: var(--arca-serif);
}

.arca-entry__featured {
	margin-bottom: 50px;
}

.arca-posts {
	display: grid;
	gap: 0;
}

.arca-post-card {
	padding: 45px 0;
	border-bottom: 1px solid var(--arca-line);
}

.arca-post-card:first-child {
	border-top: 1px solid var(--arca-line);
}

.arca-post-card__date {
	margin-bottom: 12px;
	color: var(--arca-terra);
	font-size: 10px;
	letter-spacing: 0.16em;
}

.arca-post-card h2 {
	margin-bottom: 20px;
	font-family: var(--arca-serif);
	font-size: 27px;
	font-weight: 500;
}

.arca-post-card__excerpt {
	margin-bottom: 20px;
	color: var(--arca-ink-soft);
	font-size: 13px;
}

.arca-error {
	padding-top: 170px;
	padding-bottom: 170px;
}

.arca-error h1 {
	margin-bottom: 24px;
	font-family: var(--arca-serif);
	font-size: clamp(40px, 5vw, 68px);
	font-weight: 500;
}

.arca-error > p:not(.arca-eyebrow) {
	margin-bottom: 38px;
	color: var(--arca-ink-soft);
}

/* Detail templates */
.arca-detail-intro {
	background: var(--arca-white);
}

.arca-detail-intro__grid {
	display: grid;
	grid-template-columns: 100px minmax(0, 1fr) 390px;
	gap: 48px;
}

.arca-detail-intro__body {
	padding-top: 42px;
	color: var(--arca-ink-soft);
	font-size: 13px;
	line-height: 2.15;
}

.arca-process-detail {
	background: var(--arca-paper);
}

.arca-process-detail__heading {
	display: grid;
	grid-template-columns: 100px 1fr;
	gap: 48px;
}

.arca-process-detail__list {
	margin-top: 90px;
	border-top: 1px solid var(--arca-line);
}

.arca-process-detail__list article {
	display: grid;
	min-height: 160px;
	padding: 34px 0;
	border-bottom: 1px solid var(--arca-line);
	align-items: center;
	grid-template-columns: 90px 330px 1fr;
	gap: 30px;
}

.arca-process-detail__list article > span {
	color: var(--arca-terra);
	font-family: var(--arca-serif);
	font-size: 15px;
}

.arca-process-detail__list article > div p {
	margin-bottom: 4px;
	color: var(--arca-indigo);
	font-size: 8px;
	font-weight: 700;
	letter-spacing: 0.17em;
}

.arca-process-detail__list h3 {
	margin: 0;
	font-family: var(--arca-serif);
	font-size: 27px;
	font-weight: 500;
	letter-spacing: 0.08em;
}

.arca-process-detail__list article > p {
	margin: 0;
	color: var(--arca-ink-soft);
	font-size: 13px;
}

.arca-os-effect {
	background: var(--arca-indigo-deep);
	color: var(--arca-white);
}

.arca-os-effect__grid {
	display: grid;
	grid-template-columns: 0.8fr 1.2fr;
	gap: 100px;
}

.arca-os-effect__items {
	display: grid;
}

.arca-os-effect__items article {
	display: grid;
	padding: 30px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.14);
	grid-template-columns: 48px 210px 1fr;
	gap: 20px;
}

.arca-os-effect__items article:first-child {
	border-top: 1px solid rgba(255, 255, 255, 0.14);
}

.arca-os-effect__items span {
	color: var(--arca-terra);
	font-family: var(--arca-serif);
}

.arca-os-effect__items h3 {
	margin: 0;
	font-family: var(--arca-serif);
	font-size: 18px;
	font-weight: 500;
}

.arca-os-effect__items p {
	margin: 0;
	color: rgba(255, 255, 255, 0.62);
	font-size: 11px;
}

.arca-template-content {
	background: var(--arca-white);
}

.arca-template-content__inner {
	max-width: 900px;
}

.arca-inline-cta {
	padding: 90px 0;
	background: var(--arca-paper-deep);
}

.arca-inline-cta .arca-container {
	display: flex;
	align-items: end;
	justify-content: space-between;
	gap: 60px;
}

.arca-inline-cta h2 {
	margin: 0;
	font-family: var(--arca-serif);
	font-size: clamp(31px, 4vw, 50px);
	font-weight: 500;
	line-height: 1.55;
	letter-spacing: 0.06em;
}

.arca-service-detail {
	background: var(--arca-paper);
}

.arca-service-detail__item {
	display: grid;
	padding: 72px 0;
	border-top: 1px solid var(--arca-line);
	grid-template-columns: 90px 360px 1fr;
	gap: 40px;
}

.arca-service-detail__item:last-child {
	border-bottom: 1px solid var(--arca-line);
}

.arca-service-detail__number {
	color: var(--arca-terra);
	font-family: var(--arca-serif);
	font-size: 16px;
}

.arca-service-detail__title > p {
	margin-bottom: 8px;
	color: var(--arca-indigo);
	font-size: 8px;
	font-weight: 700;
	letter-spacing: 0.18em;
}

.arca-service-detail__title h2 {
	margin-bottom: 15px;
	font-family: var(--arca-serif);
	font-size: 33px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0.06em;
}

.arca-service-detail__title span {
	color: var(--arca-ink-soft);
	font-size: 10px;
}

.arca-service-detail__body > p {
	margin-bottom: 30px;
	color: var(--arca-ink-soft);
	font-size: 13px;
	line-height: 2.1;
}

.arca-service-detail__body dl {
	margin: 0;
	border-top: 1px solid var(--arca-line);
}

.arca-service-detail__body dl > div {
	display: grid;
	padding: 12px 0;
	border-bottom: 1px solid var(--arca-line);
	grid-template-columns: 90px 1fr;
	gap: 20px;
	font-size: 11px;
}

.arca-service-detail__body dt {
	color: var(--arca-indigo);
	font-weight: 700;
}

.arca-service-detail__body dd {
	margin: 0;
	color: var(--arca-ink-soft);
}

.arca-engagement {
	background: var(--arca-white);
}

.arca-engagement__heading {
	display: flex;
	align-items: end;
	justify-content: space-between;
}

.arca-engagement__steps {
	display: grid;
	margin: 80px 0 0;
	padding: 0;
	border-top: 1px solid var(--arca-line);
	border-left: 1px solid var(--arca-line);
	grid-template-columns: repeat(5, 1fr);
	list-style: none;
}

.arca-engagement__steps li {
	position: relative;
	min-height: 220px;
	padding: 28px 24px;
	border-right: 1px solid var(--arca-line);
	border-bottom: 1px solid var(--arca-line);
}

.arca-engagement__steps li:not(:last-child)::after {
	position: absolute;
	z-index: 2;
	top: 50%;
	right: -8px;
	width: 15px;
	height: 15px;
	content: "";
	transform: translateY(-50%) rotate(45deg);
	border-top: 1px solid var(--arca-line);
	border-right: 1px solid var(--arca-line);
	background: var(--arca-white);
}

.arca-engagement__steps span {
	color: var(--arca-terra);
	font-family: var(--arca-serif);
	font-size: 12px;
}

.arca-engagement__steps h3 {
	margin: 65px 0 10px;
	font-family: var(--arca-serif);
	font-size: 21px;
	font-weight: 500;
}

.arca-engagement__steps p {
	margin: 0;
	color: var(--arca-ink-soft);
	font-size: 10px;
}

.arca-company-mission {
	background: var(--arca-white);
}

.arca-company-mission__grid {
	display: grid;
	grid-template-columns: 100px minmax(0, 1fr) 390px;
	gap: 48px;
}

.arca-company-mission__body {
	padding-top: 42px;
	color: var(--arca-ink-soft);
	font-size: 13px;
	line-height: 2.15;
}

.arca-company-origin {
	background: var(--arca-indigo-deep);
	color: var(--arca-white);
}

.arca-company-origin__grid {
	display: grid;
	align-items: center;
	grid-template-columns: 0.8fr 1.2fr;
	gap: 100px;
}

.arca-company-origin__words {
	display: grid;
	align-items: center;
	grid-template-columns: 1fr 30px 1fr;
	gap: 24px;
}

.arca-company-origin__words > i {
	color: rgba(255, 255, 255, 0.38);
	font-size: 24px;
	font-style: normal;
	text-align: center;
}

.arca-company-origin__words article {
	min-height: 280px;
	padding: 36px 30px;
	border: 1px solid rgba(255, 255, 255, 0.18);
}

.arca-company-origin__words strong {
	display: block;
	margin-top: 30px;
	font-family: var(--arca-serif);
	font-size: 31px;
	font-weight: 500;
	letter-spacing: 0.12em;
}

.arca-company-origin__words span {
	color: var(--arca-terra);
	font-size: 8px;
	letter-spacing: 0.16em;
}

.arca-company-origin__words p {
	margin: 48px 0 0;
	color: rgba(255, 255, 255, 0.62);
	font-size: 11px;
}

.arca-company-values {
	background: var(--arca-paper);
}

.arca-company-values__heading {
	display: grid;
	grid-template-columns: 100px 1fr;
	gap: 48px;
}

.arca-company-values__list {
	display: grid;
	margin-top: 80px;
	grid-template-columns: repeat(2, 1fr);
}

.arca-company-values__list article {
	display: grid;
	min-height: 180px;
	padding: 36px 0;
	border-top: 1px solid var(--arca-line);
	align-items: center;
	grid-template-columns: 50px 1fr;
}

.arca-company-values__list article:nth-child(odd) {
	padding-right: 50px;
	border-right: 1px solid var(--arca-line);
}

.arca-company-values__list article:nth-child(even) {
	padding-left: 50px;
}

.arca-company-values__list span {
	align-self: start;
	color: var(--arca-terra);
	font-family: var(--arca-serif);
}

.arca-company-values__list p {
	margin: 0;
	font-family: var(--arca-serif);
	font-size: 19px;
}

.arca-company-values__list h3 {
	margin: 10px 0 0 50px;
	color: var(--arca-indigo);
	font-family: var(--arca-serif);
	font-size: 25px;
	font-weight: 500;
	grid-column: 2;
}

.arca-company-info {
	background: var(--arca-white);
}

.arca-company-info__grid {
	display: grid;
	align-items: start;
	grid-template-columns: minmax(240px, 0.65fr) 1fr;
	gap: 100px;
}

.arca-company-info__list {
	margin: 0;
	border-top: 1px solid var(--arca-line);
}

.arca-company-info__list > div {
	display: grid;
	padding: 25px 0;
	border-bottom: 1px solid var(--arca-line);
	grid-template-columns: 120px 1fr;
	gap: 32px;
}

.arca-company-info__list dt {
	color: var(--arca-terra);
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.1em;
}

.arca-company-info__list dd {
	margin: 0;
	color: var(--arca-ink-soft);
	font-size: 13px;
	line-height: 1.9;
}

.arca-company-info__list a {
	border-bottom: 1px solid currentColor;
	color: var(--arca-indigo);
}

.arca-profile {
	background: var(--arca-white);
}

.arca-profile__grid {
	display: grid;
	align-items: start;
	grid-template-columns: 420px 1fr;
	gap: 100px;
}

.arca-profile__portrait-placeholder {
	overflow: hidden;
	aspect-ratio: 4 / 5;
	background: var(--arca-paper-deep);
}

.arca-profile__portrait-placeholder img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.arca-profile__portrait > p {
	margin-top: 12px;
	color: var(--arca-ink-soft);
	font-size: 8px;
	letter-spacing: 0.18em;
}

.arca-profile__content h2 {
	margin-bottom: 42px;
	font-family: var(--arca-serif);
	font-size: 42px;
	font-weight: 500;
	letter-spacing: 0.08em;
}

.arca-profile__content h2 small {
	display: block;
	margin-top: 8px;
	color: var(--arca-indigo);
	font-family: var(--arca-sans);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.18em;
}

.arca-profile__editor {
	color: var(--arca-ink-soft);
	font-size: 13px;
	line-height: 2.15;
}

.arca-profile__note,
.arca-content-placeholder {
	margin-top: 34px;
	padding: 24px 28px;
	border: 1px dashed rgba(39, 56, 64, 0.25);
	background: rgba(232, 226, 213, 0.34);
	color: var(--arca-ink-soft);
	font-size: 11px;
	line-height: 1.8;
}

.arca-works-summary {
	background: var(--arca-paper);
}

.arca-proof__numbers--dark {
	color: var(--arca-ink);
}

.arca-proof__numbers--dark .arca-proof__divider {
	background: var(--arca-line);
}

.arca-proof__numbers--dark .arca-proof__item p {
	color: var(--arca-ink-soft);
}

.arca-contact-page {
	background: var(--arca-white);
}

.arca-contact-page__grid {
	display: grid;
	grid-template-columns: 0.78fr 1.22fr;
	gap: 100px;
}

.arca-contact-page__guide {
	position: sticky;
	top: 130px;
	align-self: start;
}

.arca-contact-page__guide h2 {
	margin-bottom: 30px;
	font-family: var(--arca-serif);
	font-size: 40px;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0.07em;
}

.arca-contact-page__guide > p:not(.arca-eyebrow) {
	color: var(--arca-ink-soft);
	font-size: 12px;
}

.arca-contact-page__guide ul {
	margin: 35px 0 0;
	padding: 24px 0 0;
	border-top: 1px solid var(--arca-line);
	list-style: none;
}

.arca-contact-page__guide li {
	position: relative;
	margin-bottom: 8px;
	padding-left: 18px;
	color: var(--arca-ink-soft);
	font-size: 11px;
}

.arca-contact-page__guide li::before {
	position: absolute;
	top: 0.78em;
	left: 0;
	width: 6px;
	height: 6px;
	content: "";
	border-radius: 50%;
	background: var(--arca-terra);
}

.arca-contact-page__form input:not([type="submit"], [type="checkbox"], [type="radio"]),
.arca-contact-page__form textarea,
.arca-contact-page__form select {
	width: 100%;
	padding: 14px 16px;
	border: 1px solid var(--arca-line);
	border-radius: 0;
	background: var(--arca-paper-light);
}

.arca-contact-page__form input:focus,
.arca-contact-page__form textarea:focus,
.arca-contact-page__form select:focus {
	border-color: var(--arca-indigo);
	outline: 2px solid rgba(36, 83, 118, 0.12);
}

.arca-contact-page__form input[type="submit"],
.arca-contact-page__form button[type="submit"] {
	min-width: 210px;
	padding: 15px 28px;
	border: 0;
	border-radius: 999px;
	background: var(--arca-ink);
	color: var(--arca-white);
	cursor: pointer;
}

/* Homepage free content and automatic posts */
.arca-free-content {
	background: var(--arca-white);
}

.arca-free-content__inner {
	color: var(--arca-ink);
	font-size: 15px;
	line-height: 2;
}

.arca-free-content__inner > *:first-child {
	margin-top: 0;
}

.arca-free-content__inner > *:last-child {
	margin-bottom: 0;
}

.arca-free-content__inner h2,
.arca-free-content__inner h3 {
	margin: 1.8em 0 0.8em;
	font-family: var(--arca-serif);
	font-weight: 500;
	line-height: 1.5;
}

.arca-free-content__inner h2 {
	font-size: clamp(27px, 3.2vw, 43px);
}

.arca-free-content__inner h3 {
	color: var(--arca-indigo);
	font-size: clamp(21px, 2.4vw, 29px);
}

.arca-free-content__inner p,
.arca-free-content__inner ul,
.arca-free-content__inner ol,
.arca-free-content__inner figure,
.arca-free-content__inner .wp-block-group {
	margin-bottom: 1.6em;
}

.arca-free-content__inner img {
	height: auto;
}

.arca-free-content__inner a {
	border-bottom: 1px solid currentColor;
	color: var(--arca-indigo);
}

.arca-insights {
	background: var(--arca-paper);
}

.arca-insights__heading {
	display: grid;
	align-items: end;
	grid-template-columns: minmax(0, 1fr) minmax(260px, 0.52fr);
	gap: 80px;
}

.arca-insights__lead {
	margin: 0 0 10px;
	color: var(--arca-ink-soft);
	font-size: 13px;
	line-height: 2;
}

.arca-insights__grid {
	display: grid;
	margin-top: 72px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 28px;
}

.arca-insight-card {
	min-width: 0;
}

.arca-insight-card__link {
	position: relative;
	display: block;
	height: 100%;
	padding-bottom: 28px;
	border-bottom: 1px solid var(--arca-line);
	color: inherit;
}

.arca-insight-card__media {
	position: relative;
	display: grid;
	overflow: hidden;
	margin-bottom: 25px;
	aspect-ratio: 16 / 10;
	background:
		linear-gradient(135deg, rgba(36, 83, 118, 0.92), rgba(107, 116, 112, 0.8)),
		var(--arca-indigo);
	place-items: center;
}

.arca-insight-card__media::after {
	position: absolute;
	width: 42%;
	height: 62%;
	border: 1px solid rgba(255, 255, 255, 0.32);
	border-radius: 50%;
	content: "";
	transform: rotate(34deg);
}

.arca-insight-card__media img {
	position: relative;
	z-index: 1;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.7s var(--arca-ease);
}

.arca-insight-card__media span {
	position: relative;
	z-index: 1;
	color: rgba(255, 255, 255, 0.74);
	font-family: var(--arca-serif);
	font-size: 12px;
	letter-spacing: 0.28em;
}

.arca-insight-card__meta {
	display: flex;
	margin-bottom: 16px;
	align-items: center;
	justify-content: space-between;
	color: var(--arca-ink-muted);
	font-size: 9px;
	letter-spacing: 0.12em;
}

.arca-insight-card__meta span {
	color: var(--arca-terra);
	font-weight: 700;
}

.arca-insight-card h3 {
	margin: 0;
	padding-right: 25px;
	font-family: var(--arca-serif);
	font-size: 21px;
	font-weight: 500;
	line-height: 1.55;
}

.arca-insight-card p {
	margin: 15px 0 0;
	color: var(--arca-ink-soft);
	font-size: 11px;
	line-height: 1.9;
}

.arca-insight-card__link > i {
	position: absolute;
	right: 0;
	bottom: 27px;
	color: var(--arca-terra);
	font-size: 13px;
	font-style: normal;
	transition: transform 0.3s var(--arca-ease);
}

.arca-insight-card__link:hover .arca-insight-card__media img {
	transform: scale(1.04);
}

.arca-insight-card__link:hover > i {
	transform: translate(3px, -3px);
}

/* Reveal animation */
.arca-reveal,
.arca-observe {
	transition: opacity 0.9s var(--arca-ease), transform 0.9s var(--arca-ease);
}

.js .arca-reveal,
.js .arca-observe {
	transform: translateY(24px);
	opacity: 0;
}

.js .arca-reveal.is-visible,
.js .arca-observe.is-visible {
	transform: translateY(0);
	opacity: 1;
}

.arca-reveal--delay-1 {
	transition-delay: 0.12s;
}

.arca-reveal--delay-2 {
	transition-delay: 0.24s;
}

.arca-reveal--delay-3 {
	transition-delay: 0.36s;
}

@keyframes arca-header-in {
	from {
		transform: translateY(-100%);
	}
	to {
		transform: translateY(0);
	}
}

/* Tablet */
@media (max-width: 1100px) {
	:root {
		--arca-container: min(calc(100% - 48px), 960px);
	}

	.arca-header__inner {
		width: calc(100% - 48px);
	}

	.arca-nav {
		gap: 22px;
	}

	.arca-nav__list {
		gap: 18px;
	}

	.arca-nav__list > li > a {
		font-size: 9px;
	}

	.arca-hero {
		min-height: 720px;
	}

	.arca-hero__inner {
		grid-template-columns: minmax(0, 0.95fr) minmax(430px, 1.05fr);
	}

	.arca-hero__title {
		font-size: clamp(47px, 5vw, 54px);
		letter-spacing: 0.025em;
	}

	.arca-intro__grid,
	.arca-value__grid,
	.arca-knowledge__grid,
	.arca-detail-intro__grid,
	.arca-company-mission__grid {
		grid-template-columns: 74px minmax(0, 1fr);
	}

	.arca-intro__note {
		display: none;
	}

	.arca-value__visual,
	.arca-knowledge__content,
	.arca-detail-intro__body,
	.arca-company-mission__body {
		grid-column: 2;
	}

	.arca-os__heading,
	.arca-services__heading {
		grid-template-columns: 74px minmax(0, 1fr) 280px;
		gap: 34px;
	}

	.arca-os-node h3 {
		font-size: 15px;
	}

	.arca-os-node p {
		font-size: 9px;
	}

	.arca-service {
		grid-template-columns: 60px 170px 1fr;
		gap: 30px;
	}

	.arca-origin__grid,
	.arca-company-origin__grid {
		gap: 60px;
	}

	.arca-contact__inner {
		grid-template-columns: 1fr 360px;
		gap: 60px;
	}

	.arca-service-detail__item {
		grid-template-columns: 60px 300px 1fr;
	}

	.arca-profile__grid {
		grid-template-columns: 350px 1fr;
		gap: 60px;
	}
}

/* Mobile navigation and layout */
@media (max-width: 860px) {
	:root {
		--arca-container: calc(100% - 40px);
	}

	body.arca-site {
		font-size: 15px;
	}

	.arca-section {
		padding: 92px 0;
	}

	.arca-heading {
		font-size: clamp(34px, 9vw, 48px);
	}

	.arca-header__inner {
		width: calc(100% - 32px);
		min-height: 72px;
	}

	.arca-brand__mark {
		width: 36px;
		height: 36px;
	}

	.arca-brand__type strong {
		font-size: 14px;
	}

	.arca-brand__type small {
		font-size: 6px;
	}

	.arca-menu-toggle {
		position: relative;
		z-index: 1002;
		display: flex;
		padding: 8px 0;
		align-items: center;
		gap: 10px;
		cursor: pointer;
	}

	.arca-menu-toggle__label {
		font-size: 8px;
		font-weight: 700;
		letter-spacing: 0.15em;
	}

	.arca-menu-toggle__lines {
		display: flex;
		width: 25px;
		height: 20px;
		flex-direction: column;
		justify-content: center;
		gap: 6px;
	}

	.arca-menu-toggle__lines i {
		display: block;
		width: 100%;
		height: 1px;
		background: currentColor;
		transition: transform 0.3s var(--arca-ease);
	}

	.arca-menu-toggle[aria-expanded="true"] .arca-menu-toggle__lines i:first-child {
		transform: translateY(3.5px) rotate(45deg);
	}

	.arca-menu-toggle[aria-expanded="true"] .arca-menu-toggle__lines i:last-child {
		transform: translateY(-3.5px) rotate(-45deg);
	}

	.arca-nav {
		position: fixed;
		z-index: 1001;
		inset: 0;
		display: flex;
		padding: 110px 36px 48px;
		transform: translateY(-14px);
		background:
			radial-gradient(circle at 80% 20%, rgba(196, 154, 74, 0.18), transparent 24%),
			var(--arca-paper);
		flex-direction: column;
		align-items: stretch;
		justify-content: space-between;
		visibility: hidden;
		opacity: 0;
		pointer-events: none;
		transition: transform 0.45s var(--arca-ease), opacity 0.35s ease, visibility 0.45s;
	}

	.arca-nav.is-open {
		transform: translateY(0);
		visibility: visible;
		opacity: 1;
		pointer-events: auto;
	}

	.arca-nav__list {
		display: flex;
		border-top: 1px solid var(--arca-line);
		flex-direction: column;
		align-items: stretch;
		gap: 0;
	}

	.arca-nav__list > li {
		border-bottom: 1px solid var(--arca-line);
	}

	.arca-nav__list > li > a {
		padding: 18px 0;
		font-family: var(--arca-serif);
		font-size: 22px;
		font-weight: 500;
		letter-spacing: 0.08em;
	}

	.arca-nav__list > li > a::after {
		display: none;
	}

	.arca-nav__list .sub-menu {
		position: static;
		display: block;
		min-width: 0;
		padding: 0 0 12px 14px;
		transform: none;
		border: 0;
		background: transparent;
		box-shadow: none;
		visibility: visible;
		opacity: 1;
	}

	.arca-nav__contact {
		min-height: 58px;
	}

	body.arca-menu-open {
		overflow: hidden;
	}

	.admin-bar .arca-header.is-sticky {
		top: 46px;
	}

	.arca-hero {
		min-height: auto;
		padding: 85px 0 105px;
	}

	.arca-hero::before {
		top: auto;
		bottom: 0;
		width: 100%;
		height: 47%;
		border-top: 1px solid rgba(39, 56, 64, 0.08);
		border-left: 0;
	}

	.arca-hero__inner {
		display: flex;
		flex-direction: column;
		gap: 35px;
	}

	.arca-hero__title {
		margin-bottom: 26px;
		font-size: clamp(43px, 12vw, 62px);
		line-height: 1.42;
	}

	.arca-hero__lead {
		font-size: 13px;
	}

	.arca-hero__visual {
		width: min(100%, 560px);
		margin-top: -12px;
		align-self: center;
	}

	.arca-hero__scroll {
		display: none;
	}

	.arca-intro__grid,
	.arca-value__grid,
	.arca-knowledge__grid,
	.arca-detail-intro__grid,
	.arca-company-mission__grid {
		grid-template-columns: 54px minmax(0, 1fr);
		gap: 26px;
	}

	.arca-section-marker > span {
		width: 38px;
		height: 38px;
		font-size: 11px;
	}

	.arca-section-marker > p {
		font-size: 7px;
	}

	.arca-intro__body {
		margin-top: 38px;
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.arca-os__heading,
	.arca-services__heading {
		grid-template-columns: 54px 1fr;
		gap: 26px;
	}

	.arca-os__lead,
	.arca-services__lead {
		margin: 32px 0 0;
		grid-column: 2;
	}

	.arca-os-map {
		display: flex;
		margin-top: 70px;
		padding-left: 30px;
		flex-direction: column;
		gap: 0;
	}

	.arca-os-map__line {
		top: 30px;
		right: auto;
		bottom: 70px;
		left: 60px;
		width: 1px;
		height: auto;
	}

	.arca-os-node {
		display: grid;
		min-height: 116px;
		padding: 0;
		align-items: center;
		text-align: left;
		grid-template-columns: 72px 1fr;
		column-gap: 25px;
	}

	.arca-os-node__number {
		top: 16px;
		left: -31px;
		transform: none;
	}

	.arca-os-node i {
		width: 62px;
		height: 62px;
		margin: 0;
		grid-row: span 2;
	}

	.arca-os-node i::before {
		width: 9px;
		height: 9px;
		margin: 26px auto;
	}

	.arca-os-node h3 {
		margin: 13px 0 0;
		font-size: 17px;
	}

	.arca-os-node p {
		margin: 0 0 13px;
	}

	.arca-os__footer {
		align-items: flex-start;
		flex-direction: column;
		gap: 30px;
	}

	.arca-value__visual,
	.arca-knowledge__content,
	.arca-detail-intro__body,
	.arca-company-mission__body {
		grid-column: 1 / -1;
	}

	.arca-value__visual {
		margin-top: 40px;
		padding-left: 0;
	}

	.arca-values {
		margin-top: 65px;
		grid-template-columns: repeat(2, 1fr);
	}

	.arca-service {
		grid-template-columns: 42px 130px 1fr;
		gap: 20px;
	}

	.arca-service__icon {
		width: 120px;
		transform: scale(0.78);
		transform-origin: center;
	}

	.arca-proof__numbers {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.arca-proof__divider {
		width: 100%;
		height: 1px;
	}

	.arca-knowledge__visual {
		grid-column: 2;
	}

	.arca-origin__grid,
	.arca-company-origin__grid {
		grid-template-columns: 1fr;
		gap: 60px;
	}

	.arca-origin__body {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.arca-origin__mark {
		min-height: 330px;
	}

	.arca-origin__mark img {
		width: 320px;
	}

	.arca-contact__inner {
		grid-template-columns: 1fr;
		gap: 45px;
	}

	.arca-contact__copy {
		grid-template-columns: 1fr 140px;
	}

	.arca-contact__circle {
		width: 136px;
		height: 136px;
	}

	.arca-footer__grid {
		grid-template-columns: 1fr 1fr;
	}

	.arca-footer__legal {
		grid-column: 2;
	}

	.arca-page-hero {
		min-height: 390px;
		padding: 110px 0 70px;
	}

	.arca-page-hero h1 {
		font-size: clamp(45px, 12vw, 70px);
	}

	.arca-process-detail__heading,
	.arca-company-values__heading {
		grid-template-columns: 54px 1fr;
		gap: 26px;
	}

	.arca-process-detail__list article {
		grid-template-columns: 45px 210px 1fr;
	}

	.arca-os-effect__grid {
		grid-template-columns: 1fr;
		gap: 60px;
	}

	.arca-inline-cta .arca-container {
		align-items: flex-start;
		flex-direction: column;
	}

	.arca-service-detail__item {
		grid-template-columns: 44px 240px 1fr;
		gap: 24px;
	}

	.arca-engagement__steps {
		grid-template-columns: repeat(3, 1fr);
	}

	.arca-company-origin__words {
		max-width: 680px;
	}

	.arca-profile__grid,
	.arca-contact-page__grid {
		grid-template-columns: 1fr;
		gap: 60px;
	}

	.arca-profile__portrait {
		max-width: 420px;
	}

	.arca-contact-page__guide {
		position: static;
	}
}

@media (max-width: 560px) {
	:root {
		--arca-container: calc(100% - 32px);
	}

	.arca-section {
		padding: 74px 0;
	}

	.arca-header__inner {
		width: calc(100% - 28px);
	}

	.arca-brand__type small {
		display: none;
	}

	.arca-hero {
		padding-top: 65px;
	}

	.arca-hero__title {
		font-size: 34px;
	}

	.arca-hero__actions {
		align-items: flex-start;
		flex-direction: column;
		gap: 18px;
	}

	.arca-hero__visual-label {
		display: none;
	}

	.arca-heading {
		font-size: 33px;
		line-height: 1.5;
	}

	.arca-intro__grid,
	.arca-value__grid,
	.arca-knowledge__grid,
	.arca-detail-intro__grid,
	.arca-company-mission__grid,
	.arca-os__heading,
	.arca-services__heading {
		grid-template-columns: 1fr;
	}

	.arca-section-marker {
		flex-direction: row;
		align-items: center;
	}

	.arca-section-marker > p br {
		display: none;
	}

	.arca-os__lead,
	.arca-services__lead,
	.arca-value__visual,
	.arca-knowledge__content,
	.arca-detail-intro__body,
	.arca-company-mission__body,
	.arca-knowledge__visual {
		grid-column: 1;
	}

	.arca-os-map {
		margin-top: 55px;
	}

	.arca-os__footer > p {
		font-size: 15px;
	}

	.arca-values {
		grid-template-columns: 1fr;
	}

	.arca-values article {
		min-height: 190px;
	}

	.arca-service {
		display: grid;
		padding: 40px 0;
		grid-template-columns: 40px 1fr;
		gap: 16px;
	}

	.arca-service:hover {
		padding-right: 0;
		padding-left: 0;
	}

	.arca-service__icon {
		display: none;
	}

	.arca-service__copy h3 {
		font-size: 25px;
	}

	.arca-service__copy ul {
		align-items: flex-start;
		flex-direction: column;
	}

	.arca-knowledge__visual {
		padding: 0 20px;
	}

	.arca-origin__mark {
		min-height: 280px;
	}

	.arca-origin__mark img {
		width: 260px;
	}

	.arca-contact {
		padding: 85px 0 120px;
	}

	.arca-contact__copy {
		grid-template-columns: 1fr;
	}

	.arca-contact__circle {
		width: 130px;
		height: 130px;
		justify-self: end;
	}

	.arca-footer__grid {
		grid-template-columns: 1fr;
	}

	.arca-footer__links {
		margin-top: 20px;
	}

	.arca-footer__legal {
		grid-column: 1;
	}

	.arca-footer__bottom {
		align-items: flex-start;
		flex-direction: column;
		gap: 8px;
	}

	.arca-page-hero {
		min-height: 340px;
		padding-top: 90px;
	}

	.arca-page-hero h1 {
		font-size: 42px;
	}

	.arca-page-hero__art {
		right: -35%;
		width: 100%;
	}

	.arca-process-detail__heading,
	.arca-company-values__heading {
		grid-template-columns: 1fr;
	}

	.arca-process-detail__list article {
		padding: 30px 0;
		grid-template-columns: 40px 1fr;
	}

	.arca-process-detail__list article > p {
		grid-column: 2;
	}

	.arca-os-effect__items article {
		grid-template-columns: 35px 1fr;
	}

	.arca-os-effect__items article p {
		grid-column: 2;
	}

	.arca-service-detail__item {
		padding: 50px 0;
		grid-template-columns: 34px 1fr;
	}

	.arca-service-detail__body {
		grid-column: 2;
	}

	.arca-engagement__steps {
		grid-template-columns: 1fr;
	}

	.arca-engagement__steps li {
		min-height: 150px;
	}

	.arca-engagement__steps li:not(:last-child)::after {
		top: auto;
		right: 50%;
		bottom: -8px;
		transform: translateX(50%) rotate(135deg);
	}

	.arca-engagement__steps h3 {
		margin-top: 34px;
	}

	.arca-company-origin__words {
		grid-template-columns: 1fr;
	}

	.arca-company-origin__words > i {
		transform: rotate(45deg);
	}

	.arca-company-values__list {
		grid-template-columns: 1fr;
	}

	.arca-company-values__list article:nth-child(odd),
	.arca-company-values__list article:nth-child(even) {
		padding-right: 0;
		padding-left: 0;
		border-right: 0;
	}

	.arca-profile__content h2 {
		font-size: 35px;
	}
}

@media (max-width: 860px) {
	.arca-insights__heading,
	.arca-company-info__grid {
		grid-template-columns: 1fr;
		gap: 34px;
	}

	.arca-insights__grid {
		margin-top: 52px;
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 560px) {
	.arca-insights__grid {
		grid-template-columns: 1fr;
		gap: 42px;
	}

	.arca-insight-card h3 {
		font-size: 20px;
	}

	.arca-company-info__list > div {
		grid-template-columns: 88px 1fr;
		gap: 18px;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	.arca-site *,
	.arca-site *::before,
	.arca-site *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}

	.js .arca-reveal,
	.js .arca-observe {
		transform: none;
		opacity: 1;
	}
}
