:root {
	--doa-black: #000;
	--doa-ink: #080d0a;
	--doa-panel: rgba(14, 20, 17, 0.76);
	--doa-panel-strong: #101713;
	--doa-glass: rgba(7, 14, 10, 0.62);
	--doa-glass-strong: rgba(8, 18, 12, 0.82);
	--doa-glass-edge: rgba(176, 255, 169, 0.16);
	--doa-line: rgba(72, 255, 48, 0.18);
	--doa-muted: #8d9a92;
	--doa-text: #f3f7f0;
	--doa-green: #49ff31;
	--doa-green-soft: #32df24;
	--doa-green-deep: #0d3d08;
	--doa-ease: cubic-bezier(0.19, 1, 0.22, 1);
}

html {
	scroll-behavior: smooth;
}

body.doa-cinematic-home {
	background: var(--doa-black);
	color: var(--doa-text);
	font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	overflow-x: hidden;
}

body.doa-cinematic-home ::selection {
	background: rgba(73, 255, 49, 0.28);
	color: #fafff8;
}

body.doa-cinematic-home a,
body.doa-cinematic-home button {
	cursor: pointer;
}

body.doa-cinematic-home a:focus-visible,
body.doa-cinematic-home button:focus-visible {
	box-shadow: 0 0 0 3px rgba(73, 255, 49, 0.28), 0 0 0 1px rgba(73, 255, 49, 0.88);
	outline: none;
}

body.doa-cinematic-home .site-header,
body.doa-cinematic-home .site-footer,
body.doa-cinematic-home #colophon {
	display: none;
}

body.doa-cinematic-home #content .ast-container {
	display: block;
	margin: 0;
	max-width: none;
	padding: 0;
	width: 100%;
}

body.doa-cinematic-home #primary {
	margin: 0;
	padding: 0;
	width: 100%;
}

body.doa-cinematic-home.no-scroll {
	overflow: hidden;
}

.doa-home {
	background: #000;
	min-height: 100vh;
	position: relative;
}

.doa-skip-link {
	background: var(--doa-green);
	border-radius: 999px;
	color: #031007;
	font-size: 0.85rem;
	font-weight: 900;
	left: 1rem;
	padding: 0.82rem 1rem;
	position: fixed;
	text-decoration: none;
	top: 1rem;
	transform: translateY(-160%);
	transition: transform 220ms var(--doa-ease);
	z-index: 160;
}

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

.doa-home::before {
	background: linear-gradient(90deg, transparent, rgba(73, 255, 49, 0.35), transparent);
	content: "";
	height: 1px;
	left: 0;
	opacity: calc(var(--scroll-progress, 0) * 0.75 + 0.18);
	position: fixed;
	right: auto;
	top: 0;
	transform-origin: left center;
	transform: scaleX(var(--scroll-progress, 0));
	width: 100%;
	z-index: 80;
}

.doa-splash {
	align-items: center;
	background:
		radial-gradient(circle at center, rgba(73, 255, 49, 0.17), transparent 22rem),
		#000;
	display: flex;
	inset: 0;
	justify-content: center;
	position: fixed;
	transition: opacity 900ms var(--doa-ease), transform 900ms var(--doa-ease), visibility 900ms var(--doa-ease);
	z-index: 120;
}

body.doa-entered .doa-splash {
	opacity: 0;
	pointer-events: none;
	transform: scale(1.04);
	visibility: hidden;
}

.doa-enter {
	align-items: center;
	aspect-ratio: 1;
	background:
		linear-gradient(135deg, rgba(73, 255, 49, 0.12), rgba(73, 255, 49, 0.035) 42%, rgba(255, 255, 255, 0.04)),
		rgba(0, 0, 0, 0.62);
	border: 1px solid rgba(176, 255, 169, 0.34);
	border-radius: 999px;
	box-shadow: 0 0 70px rgba(73, 255, 49, 0.2), inset 0 1px 0 rgba(255, 255, 255, 0.08);
	color: var(--doa-text);
	display: flex;
	flex-direction: column;
	gap: 0.7rem;
	justify-content: center;
	letter-spacing: 0;
	padding: 2rem;
	position: relative;
	transition: border-color 260ms ease, box-shadow 260ms ease, transform 260ms var(--doa-ease);
	width: min(72vw, 340px);
}

.doa-enter:hover {
	border-color: rgba(73, 255, 49, 0.72);
	box-shadow: 0 0 90px rgba(73, 255, 49, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.12);
	transform: translateY(-2px) scale(1.01);
}

.doa-enter::after {
	border: 1px solid rgba(73, 255, 49, 0.2);
	border-radius: inherit;
	content: "";
	inset: -18px;
	position: absolute;
}

.doa-enter__kicker,
.doa-eyebrow,
.doa-section__marker,
.doa-scroll-cue {
	color: var(--doa-green);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.18em;
	text-transform: uppercase;
}

.doa-enter__brand {
	font-size: clamp(2.2rem, 8vw, 5rem);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 0.9;
	text-align: center;
}

.doa-orbit {
	animation: doa-spin 24s linear infinite;
	aspect-ratio: 1;
	border: 1px solid rgba(73, 255, 49, 0.13);
	border-radius: 999px;
	position: absolute;
	width: min(86vw, 640px);
}

.doa-orbit span {
	border: 1px solid rgba(73, 255, 49, 0.13);
	border-radius: inherit;
	inset: 8%;
	position: absolute;
	transform: rotate(calc(var(--i, 1) * 22deg));
}

.doa-orbit span:nth-child(2) {
	--i: 2;
	inset: 18%;
}

.doa-orbit span:nth-child(3) {
	--i: 3;
	inset: 29%;
}

.doa-nav {
	align-items: center;
	display: flex;
	justify-content: flex-end;
	left: 0;
	padding: 1.25rem clamp(1rem, 4vw, 4rem);
	position: fixed;
	right: 0;
	top: 0;
	z-index: 70;
}

.doa-nav::before {
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.62), transparent);
	content: "";
	height: 6.2rem;
	inset: 0 0 auto;
	pointer-events: none;
	position: fixed;
	z-index: -1;
}

.doa-nav a {
	color: var(--doa-text);
	text-decoration: none;
}

.doa-nav__brand {
	color: #f7fff3 !important;
	font-size: clamp(0.9rem, 1.08vw, 1.08rem);
	font-weight: 850;
	left: 50%;
	letter-spacing: 0.08em;
	line-height: 1;
	padding: 0;
	position: absolute;
	text-shadow: 0 0 18px rgba(73, 255, 49, 0.5), 0 2px 24px #000, 0 0 2px #000;
	top: 50%;
	transform: translate(-50%, -50%);
	white-space: nowrap;
}

.doa-nav__links {
	backdrop-filter: blur(18px);
	background:
		linear-gradient(135deg, rgba(255, 255, 255, 0.055), transparent 46%),
		var(--doa-glass);
	border: 1px solid var(--doa-glass-edge);
	border-radius: 999px;
	display: flex;
	gap: 0.25rem;
	padding: 0.34rem;
	box-shadow: 0 18px 70px rgba(0, 0, 0, 0.26), inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.doa-nav__links a {
	align-items: center;
	border-radius: 999px;
	color: rgba(243, 247, 240, 0.78);
	display: inline-flex;
	font-size: 0.85rem;
	min-height: 44px;
	padding: 0 0.74rem;
	transition: background 220ms ease, color 220ms ease, transform 220ms var(--doa-ease);
}

.doa-nav__links a:hover,
.doa-nav__links a:focus-visible,
.doa-nav__links a.is-current {
	background: rgba(73, 255, 49, 0.1);
	color: #f7fff3;
	transform: translateY(-1px);
}

.doa-cursor {
	border: 1px solid rgba(73, 255, 49, 0.55);
	border-radius: 999px;
	height: 34px;
	left: 0;
	mix-blend-mode: screen;
	opacity: 0;
	pointer-events: none;
	position: fixed;
	top: 0;
	transform: translate3d(-50%, -50%, 0) scale(0.65);
	transition: opacity 180ms ease, transform 240ms var(--doa-ease), background 240ms ease;
	width: 34px;
	z-index: 110;
}

.doa-cursor.is-visible {
	opacity: 1;
}

.doa-cursor.is-active {
	background: rgba(73, 255, 49, 0.16);
	transform: translate3d(-50%, -50%, 0) scale(1.75);
}

.doa-section {
	align-items: center;
	background: #000;
	filter: blur(var(--section-blur, 0px));
	display: grid;
	min-height: 100vh;
	opacity: var(--section-opacity, 1);
	overflow: clip;
	padding: clamp(6rem, 11vw, 10rem) clamp(1.2rem, 5vw, 6rem);
	position: relative;
	transform: translateY(var(--section-y, 0px));
	will-change: opacity, transform, filter;
}

.doa-home > .doa-section:not(.doa-hero) {
	min-height: 225vh;
	padding: 0;
}

.doa-section__sticky {
	align-items: center;
	box-sizing: border-box;
	display: grid;
	min-height: 100vh;
	padding: clamp(6rem, 11vw, 10rem) clamp(1.2rem, 5vw, 6rem);
	position: sticky;
	top: 0;
	width: 100%;
}

.doa-hero {
	background: transparent;
	display: block;
	min-height: 205vh;
	opacity: 1;
	overflow: visible;
	padding: 0;
	position: relative;
	text-align: center;
	transform: none;
}

.doa-about-hero .doa-ambient {
	display: none;
}

.doa-hero-bg {
	height: 100vh;
	left: 0;
	margin-bottom: -100vh;
	overflow: hidden;
	perspective: 1200px;
	position: sticky;
	right: 0;
	top: 0;
	transform: translateY(var(--hero-bg-y, 0px));
	z-index: 0;
}

.doa-hero-bg::before {
	background:
		radial-gradient(circle at 45% 45%, rgba(73, 255, 49, 0.16), transparent 24rem),
		linear-gradient(90deg, transparent, rgba(73, 255, 49, 0.06), transparent);
	content: "";
	inset: 0;
	position: absolute;
	transform: translate3d(var(--hero-far-x, 0px), var(--hero-far-y, 0px), 0);
	transition: transform 140ms ease-out;
}

.doa-system-map {
	animation: doa-map-idle 9s ease-in-out infinite alternate;
	height: min(88vh, 900px);
	left: 56%;
	position: absolute;
	top: 50%;
	transform:
		translate(calc(-50% + var(--hero-shift-x, 0px)), calc(-50% + var(--hero-shift-y, 0px)))
		rotateX(var(--hero-tilt-x, 0deg))
		rotateY(var(--hero-tilt-y, 0deg));
	transform-style: preserve-3d;
	transition: transform 110ms ease-out;
	width: min(73vw, 1140px);
}

.doa-system-map__links {
	height: 100%;
	inset: 0;
	overflow: visible;
	position: absolute;
	transform: translateZ(-55px);
	width: 100%;
	z-index: 1;
}

.doa-system-map__link {
	animation: doa-link-breathe 7.5s ease-in-out infinite alternate;
	fill: none;
	stroke: rgba(73, 255, 49, 0.22);
	stroke-linecap: round;
	stroke-width: 0.26;
	transition: opacity 320ms ease, stroke 320ms ease, stroke-width 320ms ease;
	vector-effect: non-scaling-stroke;
}

.doa-system-map__link--primary {
	filter: drop-shadow(0 0 6px rgba(73, 255, 49, 0.38));
	stroke: rgba(73, 255, 49, 0.34);
	stroke-width: 0.34;
}

.doa-system-map__link--secondary {
	animation-duration: 11s;
	stroke: rgba(73, 255, 49, 0.12);
	stroke-dasharray: 2 4;
}

.doa-system-map__link.is-active {
	opacity: 1;
	stroke: rgba(73, 255, 49, 0.72);
	stroke-width: 0.58;
}

.doa-system-map__panel {
	backdrop-filter: blur(18px);
	background:
		linear-gradient(135deg, rgba(73, 255, 49, 0.16), transparent 42%),
		linear-gradient(180deg, rgba(255, 255, 255, 0.045), transparent),
		rgba(0, 0, 0, 0.72);
	border: 1px solid rgba(176, 255, 169, 0.22);
	border-radius: 10px;
	box-shadow: 0 0 44px rgba(73, 255, 49, 0.1), inset 0 0 38px rgba(73, 255, 49, 0.05), inset 0 1px 0 rgba(255, 255, 255, 0.06);
	color: rgba(243, 247, 240, 0.72);
	font-weight: 800;
	min-width: clamp(104px, 10vw, 152px);
	overflow: hidden;
	padding: 0.88rem 1rem 0.78rem;
	position: absolute;
	text-transform: uppercase;
	transition: transform 110ms ease-out, border-color 900ms ease, box-shadow 900ms ease;
	z-index: 4;
}

.doa-system-map__panel::before,
.doa-system-map__panel::after {
	background: var(--doa-green);
	content: "";
	position: absolute;
}

.doa-system-map__panel::before {
	height: 1px;
	left: 0.8rem;
	opacity: 0.56;
	right: 0.8rem;
	top: 0.52rem;
}

.doa-system-map__panel::after {
	border-radius: 999px;
	box-shadow: 0 0 18px rgba(73, 255, 49, 0.72);
	height: 6px;
	right: 0.72rem;
	top: 0.72rem;
	width: 6px;
}

.doa-system-map__panel {
	animation: doa-panel-breathe 4.8s ease-in-out infinite alternate;
}

.doa-system-map__panel.is-active {
	animation-name: none;
	border-color: rgba(73, 255, 49, 0.58);
	box-shadow: 0 0 54px rgba(73, 255, 49, 0.18), inset 0 0 44px rgba(73, 255, 49, 0.08);
}

.doa-system-map__panel span {
	color: rgba(243, 247, 240, 0.86);
	display: block;
	font-size: clamp(0.58rem, 0.68vw, 0.74rem);
	letter-spacing: 0.12em;
	line-height: 1.12;
}

.doa-system-map__panel small {
	color: rgba(73, 255, 49, 0.7);
	display: block;
	font-size: 0.56rem;
	letter-spacing: 0.18em;
	line-height: 1;
	margin-top: 0.55rem;
}

.doa-system-map__core {
	align-items: center;
	aspect-ratio: 1;
	backdrop-filter: blur(18px);
	background:
		radial-gradient(circle, rgba(73, 255, 49, 0.16), transparent 58%),
		rgba(8, 20, 10, 0.5);
	border: 1px solid rgba(73, 255, 49, 0.28);
	border-radius: 999px;
	box-shadow: 0 0 58px rgba(73, 255, 49, 0.12), inset 0 0 44px rgba(73, 255, 49, 0.06);
	color: rgba(243, 247, 240, 0.72);
	display: flex;
	font-size: clamp(0.56rem, 0.74vw, 0.78rem);
	font-weight: 800;
	justify-content: center;
	letter-spacing: 0.18em;
	left: 50%;
	position: absolute;
	text-transform: uppercase;
	top: 46%;
	transform: translate(-50%, -50%) translate3d(var(--hero-core-x, 0px), var(--hero-core-y, 0px), 130px);
	transition: transform 110ms ease-out;
	width: min(16vw, 180px);
	z-index: 4;
}

.doa-system-map__panel--booking {
	left: 16%;
	top: 26%;
	transform: translate(-50%, -50%) translate3d(var(--hero-mid-x, 0px), var(--hero-mid-y, 0px), 80px);
}

.doa-system-map__panel--pos {
	left: 86%;
	top: 34%;
	transform: translate(-50%, -50%) translate3d(var(--hero-near-x, 0px), var(--hero-near-y, 0px), 95px);
}

.doa-system-map__panel--crm {
	left: 34%;
	top: 78%;
	transform: translate(-50%, -50%) translate3d(var(--hero-mid-x, 0px), var(--hero-mid-y, 0px), 65px);
}

.doa-system-map__panel--hr {
	left: 67%;
	top: 66%;
	transform: translate(-50%, -50%) translate3d(var(--hero-near-x, 0px), var(--hero-near-y, 0px), 112px);
}

.doa-system-map__panel--ecomm {
	left: 88%;
	top: 66%;
	transform: translate(-50%, -50%) translate3d(var(--hero-mid-x, 0px), var(--hero-mid-y, 0px), 76px);
}

.doa-system-map__panel--dashboard {
	left: 58%;
	top: 86%;
	transform: translate(-50%, -50%) translate3d(var(--hero-mid-x, 0px), var(--hero-mid-y, 0px), 72px);
}

.doa-system-map__panel--automation {
	left: 26%;
	top: 58%;
	transform: translate(-50%, -50%) translate3d(var(--hero-near-x, 0px), var(--hero-near-y, 0px), 104px);
}

.doa-system-map__panel--admin {
	left: 55%;
	top: 20%;
	transform: translate(-50%, -50%) translate3d(var(--hero-mid-x, 0px), var(--hero-mid-y, 0px), 84px);
}

.doa-system-map__node {
	animation: doa-node-pulse 2.8s ease-in-out infinite;
	background: var(--doa-green);
	border-radius: 999px;
	box-shadow: 0 0 30px rgba(73, 255, 49, 0.6);
	height: 7px;
	position: absolute;
	transform: translate3d(var(--hero-near-x, 0px), var(--hero-near-y, 0px), 120px);
	transition: transform 110ms ease-out;
	width: 7px;
}

.doa-system-map__node--b {
	animation-delay: 0.7s;
}

.doa-system-map__node--c {
	animation-delay: 1.35s;
}

.doa-system-map__node--a {
	left: 34%;
	top: 36%;
}

.doa-system-map__node--b {
	left: 70%;
	top: 39%;
}

.doa-system-map__node--c {
	left: 54%;
	top: 61%;
}

.doa-system-map__signal {
	background: var(--doa-green);
	border-radius: 999px;
	box-shadow:
		0 0 12px rgba(73, 255, 49, 0.95),
		0 0 32px rgba(73, 255, 49, 0.72),
		0 0 72px rgba(73, 255, 49, 0.36);
	height: 9px;
	left: 0;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	top: 0;
	transform: translate3d(-100px, -100px, 170px);
	width: 9px;
	z-index: 3;
}

.doa-system-map__signal::before {
	background: linear-gradient(90deg, transparent, rgba(73, 255, 49, 0.95));
	border-radius: 999px;
	content: "";
	height: 2px;
	opacity: 0.78;
	position: absolute;
	right: 4px;
	top: 50%;
	transform: translateY(-50%) rotate(var(--signal-angle, 0deg));
	transform-origin: right center;
	width: clamp(42px, 7vw, 90px);
}

.doa-system-map__signal::after {
	border: 1px solid rgba(73, 255, 49, 0.4);
	border-radius: 999px;
	content: "";
	inset: -11px;
	position: absolute;
}

.doa-hero h1,
.doa-vision h2,
.doa-problems h2,
.doa-process h2,
.doa-proof h2,
.doa-final h2 {
	color: var(--doa-text);
	font-size: clamp(3rem, 7.35vw, 7.35rem);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 0.94;
	margin: 0;
	max-width: 14ch;
	text-wrap: balance;
}

.doa-hero h1 {
	font-size: clamp(2.85rem, 6.65vw, 6.7rem);
	margin-left: clamp(1rem, 15vw, 18rem);
	max-width: 10.4ch;
	opacity: var(--hero-title-opacity, 1);
	position: absolute;
	top: clamp(10rem, 23vh, 16rem);
	text-align: left;
	transform: translateY(calc(-2vh + var(--hero-title-y, 0px)));
	transition: opacity 120ms linear;
	z-index: 2;
}

.doa-hero__copy {
	color: rgba(243, 247, 240, 0.78);
	font-size: clamp(1rem, 1.25vw, 1.28rem);
	line-height: 1.45;
	margin: 0 clamp(1.2rem, 7vw, 7rem) 0 auto;
	max-width: 380px;
	opacity: var(--hero-copy-opacity, 1);
	position: absolute !important;
	left: auto;
	right: 0;
	text-align: left;
	top: calc(100vh - clamp(13rem, 21vh, 15rem));
	transform: translateY(var(--hero-copy-y, 0px));
	transition: opacity 120ms linear;
	z-index: 2;
}

.doa-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.85rem;
	justify-content: center;
	margin-top: 2.2rem;
}

.doa-button {
	background: var(--doa-green);
	border: 1px solid var(--doa-green);
	border-radius: 999px;
	color: #04100a;
	display: inline-flex;
	min-height: 46px;
	align-items: center;
	justify-content: center;
	font-weight: 800;
	padding: 0.95rem 1.3rem;
	text-decoration: none;
	transition: background 240ms ease, box-shadow 240ms ease, color 240ms ease, transform 240ms ease;
}

.doa-button:hover,
.doa-button:focus {
	box-shadow: 0 0 34px rgba(73, 255, 49, 0.28);
	color: #04100a;
	transform: translateY(-2px);
}

.doa-button--ghost {
	background: transparent;
	color: var(--doa-text);
}

.doa-button--ghost:hover,
.doa-button--ghost:focus {
	background: rgba(73, 255, 49, 0.08);
	color: var(--doa-text);
}

.doa-ambient {
	background:
		radial-gradient(circle, rgba(73, 255, 49, 0.2), transparent 28rem),
		conic-gradient(from 120deg, transparent, rgba(73, 255, 49, 0.18), transparent, rgba(50, 223, 36, 0.12), transparent);
	border-radius: 999px;
	filter: blur(3px);
	height: min(72vw, 720px);
	position: absolute;
	transform: translateY(calc(var(--scroll-progress, 0) * 90px)) rotate(calc(var(--scroll-progress, 0) * 32deg));
	width: min(72vw, 720px);
	z-index: 0;
}

.doa-hero > *:not(.doa-ambient):not(.doa-hero-bg):not(h1):not(.doa-hero__copy):not(.doa-scroll-cue) {
	position: relative;
	z-index: 1;
}

.doa-scroll-cue {
	align-items: center;
	bottom: clamp(0.85rem, 1.8vw, 1.55rem);
	color: rgba(224, 235, 232, 0.82);
	display: inline-flex;
	gap: 0.85rem;
	left: clamp(1.2rem, 4vw, 3rem);
	opacity: var(--scroll-cue-opacity, 1);
	pointer-events: none;
	position: fixed;
	text-shadow: 0 0 16px rgba(73, 255, 49, 0.16);
	transform: translateY(calc(var(--scroll-cue-y, 0px) * -1));
	transition: opacity 260ms ease, transform 320ms var(--doa-ease);
	text-decoration: none;
	z-index: 60;
}

body.doa-scroll-dismissed .doa-scroll-cue {
	opacity: 0 !important;
	pointer-events: none;
}

.doa-scroll-cue span {
	white-space: nowrap;
}

.doa-scroll-cue i {
	display: block;
	height: 28px;
	position: relative;
	width: 18px;
}

.doa-scroll-cue i::before {
	background: rgba(224, 235, 232, 0.34);
	content: "";
	height: 23px;
	left: 50%;
	position: absolute;
	top: 0;
	transform: translateX(-50%);
	width: 2px;
}

.doa-scroll-cue i::after {
	border-bottom: 2px solid rgba(224, 235, 232, 0.34);
	border-right: 2px solid rgba(224, 235, 232, 0.34);
	bottom: 1px;
	content: "";
	height: 10px;
	left: 50%;
	position: absolute;
	transform: translateX(-50%) rotate(45deg);
	width: 10px;
}

.doa-vision-rail {
	background: linear-gradient(180deg, transparent, rgba(73, 255, 49, 0.98) 18%, rgba(73, 255, 49, 0.98) 82%, transparent);
	box-shadow: 0 0 18px rgba(73, 255, 49, 0.72), 0 0 58px rgba(73, 255, 49, 0.34);
	height: min(54vh, 520px);
	left: 50%;
	opacity: var(--vision-rail-opacity, 0);
	pointer-events: none;
	position: fixed;
	top: 50%;
	transform: translate(-50%, -50%) scaleY(var(--vision-rail-scale, 0.2));
	transform-origin: center;
	width: 2px;
	z-index: 58;
}

.doa-vision {
	align-items: start;
	justify-items: center;
	padding-left: clamp(1.5rem, 2.6vw, 3.4rem);
	padding-right: clamp(1.5rem, 2.6vw, 3.4rem);
	padding-top: clamp(9rem, 15vh, 13rem);
	text-align: left;
}

.doa-vision__grid,
.doa-proof {
	display: grid;
	gap: clamp(2rem, 7vw, 7rem);
	grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.9fr);
}

.doa-vision__grid {
	align-items: start;
	column-gap: clamp(8rem, 20vw, 30rem);
	grid-template-columns: minmax(560px, 0.98fr) minmax(320px, 0.68fr);
	justify-items: stretch;
	max-width: 1920px;
	width: 100%;
}

.doa-vision h2 {
	font-size: clamp(2.9rem, 5.6vw, 5.95rem);
	max-width: 13ch;
	position: relative;
	text-align: left;
	top: auto;
}

.doa-vision__story {
	align-self: start;
	display: grid;
	gap: clamp(1.4rem, 3vw, 2.4rem);
	justify-items: start;
	padding-top: clamp(4.3rem, 9vh, 6.6rem);
	position: relative;
	transform: translateX(clamp(2rem, 6vw, 8.5rem));
}

.doa-vision p,
.doa-proof p,
.doa-modules__intro p {
	color: rgba(243, 247, 240, 0.68);
	font-size: clamp(1.05rem, 2vw, 1.65rem);
	line-height: 1.55;
	max-width: 660px;
}

.doa-vision p {
	font-size: clamp(1.15rem, 2.18vw, 1.85rem);
	max-width: 720px;
	text-align: left;
}

.doa-vision__video {
	display: block;
	height: auto;
	margin-left: 0;
	margin-top: clamp(0.5rem, 2vh, 1.4rem);
	object-fit: contain;
	opacity: 1;
	pointer-events: none;
	position: relative;
	transform: translate3d(0, var(--vision-media-y, 0px), 0);
	width: min(100%, 320px);
	z-index: 0;
}

.doa-section__marker {
	left: clamp(1.2rem, 5vw, 6rem);
	position: absolute;
	top: clamp(5rem, 9vw, 7rem);
	text-shadow: 0 0 22px rgba(73, 255, 49, 0.28);
}

.doa-vision .doa-section__marker {
	font-size: 0.98rem;
	left: 50%;
	text-align: center;
	transform: translateX(-50%);
}

.doa-problems {
	align-content: center;
	gap: clamp(3.4rem, 9vh, 7.8rem);
	justify-items: stretch;
	padding-left: 0;
	padding-right: 0;
	text-align: center;
}

.doa-problems .doa-section__sticky {
	align-content: center;
	gap: clamp(3.4rem, 9vh, 7.8rem);
	justify-items: stretch;
}

.doa-problems .doa-section__marker {
	font-size: clamp(1.04rem, 1.26vw, 1.34rem);
	left: 50%;
	text-align: center;
	top: clamp(5rem, 8vh, 6.6rem);
	transform: translateX(-50%);
}

.doa-problems h2 {
	align-self: end;
	font-size: clamp(2.15rem, 4.2vw, 4.95rem);
	justify-self: start;
	margin-left: clamp(1.25rem, 4vw, 5.5rem);
	margin-top: clamp(0.5rem, 2vh, 1.4rem);
	max-width: 12.4ch;
	text-align: left;
}

.doa-problem-track {
	overflow: hidden;
	position: relative;
	width: 100%;
}

.doa-problem-track::before,
.doa-problem-track::after {
	content: "";
	inset-block: 0;
	pointer-events: none;
	position: absolute;
	width: min(18vw, 260px);
	z-index: 2;
}

.doa-problem-track::before {
	background: linear-gradient(90deg, #000, transparent);
	left: 0;
}

.doa-problem-track::after {
	background: linear-gradient(270deg, #000, transparent);
	right: 0;
}

.doa-problem-grid {
	--problem-gap: clamp(1.1rem, 3vw, 3.2rem);
	animation: doa-problem-marquee 88s linear infinite;
	display: flex;
	gap: 0;
	width: max-content;
}

.doa-problem-set {
	display: flex;
	flex: 0 0 auto;
	gap: var(--problem-gap);
	padding-right: var(--problem-gap);
}

.doa-problem,
.doa-process__step,
.doa-proof__item {
	background:
		linear-gradient(145deg, rgba(73, 255, 49, 0.1), rgba(255, 255, 255, 0.025)),
		var(--doa-glass);
	border: 1px solid var(--doa-glass-edge);
	border-radius: 8px;
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.045);
	min-height: 190px;
	padding: 1.2rem;
}

.doa-problems .doa-problem {
	align-items: center;
	aspect-ratio: 1;
	background:
		radial-gradient(circle at center, rgba(73, 255, 49, 0.08), rgba(73, 255, 49, 0.015) 58%, transparent 59%),
		rgba(0, 0, 0, 0.18);
	border: 1px solid rgba(73, 255, 49, 0.2);
	border-radius: 999px;
	display: flex;
	flex: 0 0 clamp(210px, 15.5vw, 300px);
	justify-content: center;
	min-height: auto;
	padding: clamp(1.2rem, 2.5vw, 2.4rem);
	position: relative;
}

.doa-problems .doa-problem::after {
	color: rgba(243, 247, 240, 0.52);
	content: "\2192";
	font-size: clamp(1.4rem, 2.2vw, 2.4rem);
	position: absolute;
	right: clamp(-2.4rem, -2vw, -1rem);
	top: 50%;
	transform: translateY(-50%);
}

.doa-problems .doa-problem-set .doa-problem:last-child::after {
	content: "";
}

.doa-process__step span {
	color: var(--doa-green);
	font-size: 0.8rem;
	font-weight: 800;
}

.doa-problem p,
.doa-process__step p {
	color: var(--doa-text);
	font-size: clamp(1.25rem, 2.15vw, 2.45rem);
	font-weight: 760;
	line-height: 1.05;
	margin: 3rem 0 0;
}

.doa-problems .doa-problem p {
	font-size: clamp(0.82rem, 0.92vw, 1.02rem);
	letter-spacing: 0.08em;
	line-height: 1.22;
	margin: 0;
	max-width: 17ch;
	text-align: center;
	text-transform: uppercase;
}

.doa-modules {
	--module-exit: 0;
	--module-curve: 0px;
	--module-card-scale: 1;
	--module-split: 0;
	min-height: 690vh;
	position: relative;
}

.doa-modules__sticky {
	align-items: center;
	display: grid;
	gap: clamp(2rem, 5vw, 5rem);
	grid-template-columns: minmax(260px, 0.72fr) minmax(0, 1fr);
	min-height: 100vh;
	padding: clamp(5rem, 9vw, 8rem) clamp(1.2rem, 5vw, 6rem);
	position: sticky;
	top: 0;
}

.doa-modules__marker,
.doa-process .doa-section__marker {
	font-size: clamp(1.04rem, 1.26vw, 1.34rem);
	left: 50%;
	text-align: center;
	top: clamp(5rem, 8vh, 6.6rem);
	transform: translateX(-50%);
}

.doa-modules__intro h2 {
	font-size: clamp(2.35rem, 4.8vw, 5.05rem);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 0.95;
	margin: 1rem 0 1.5rem;
	text-wrap: balance;
}

.doa-module-stage {
	display: grid;
	min-height: min(66vh, 720px);
	position: relative;
}

.doa-module-card {
	align-content: space-between;
	background:
		linear-gradient(135deg, rgba(73, 255, 49, 0.18), rgba(73, 255, 49, 0.02) 38%, rgba(255, 255, 255, 0.035)),
		var(--doa-panel);
	border: 1px solid var(--doa-glass-edge);
	border-radius: 8px;
	box-shadow: 0 28px 100px rgba(0, 0, 0, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.055);
	display: grid;
	grid-area: 1 / 1;
	min-height: inherit;
	opacity: 0;
	padding: clamp(1.2rem, 3vw, 2.6rem);
	position: relative;
	transform: translateY(42px) scale(0.96);
	transition: opacity 500ms var(--doa-ease), transform 700ms var(--doa-ease), filter 500ms var(--doa-ease);
}

.doa-module-card::before {
	background:
		linear-gradient(rgba(73, 255, 49, 0.045) 1px, transparent 1px),
		linear-gradient(90deg, rgba(73, 255, 49, 0.04) 1px, transparent 1px);
	background-size: 42px 42px;
	content: "";
	inset: 0;
	opacity: 0.34;
	pointer-events: none;
	position: absolute;
}

.doa-module-card > * {
	position: relative;
	z-index: 1;
}

.doa-module-card.is-active {
	filter: blur(calc(var(--module-exit, 0) * 7px));
	opacity: calc(1 - (var(--module-exit, 0) * 0.46));
	transform:
		translate3d(
			calc(var(--module-exit, 0) * -8vw),
			calc((var(--module-exit, 0) * 8vh) - (var(--module-curve, 0px) * 0.35)),
			0
		)
		rotate(calc(var(--module-exit, 0) * -3deg))
		scale(var(--module-card-scale, 1));
}

.doa-module-card h3 {
	color: var(--doa-text);
	font-size: clamp(2.2rem, 4.8vw, 5.2rem);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 0.94;
	margin: 1rem 0;
	max-width: 11ch;
}

.doa-module-card p {
	color: rgba(243, 247, 240, 0.7);
	font-size: clamp(1rem, 1.5vw, 1.28rem);
	line-height: 1.45;
	max-width: 620px;
}

.doa-module-card__line {
	background: linear-gradient(90deg, var(--doa-green), transparent);
	height: 1px;
	margin: 1.4rem 0;
	width: 100%;
}

.doa-module-bridge {
	inset: 0;
	opacity: var(--module-bridge-opacity, 0);
	pointer-events: none;
	position: fixed;
	z-index: 66;
}

.doa-module-bridge__single,
.doa-module-bridge span {
	background:
		linear-gradient(135deg, rgba(73, 255, 49, 0.54), rgba(73, 255, 49, 0.18)),
		#041a06;
	border: 1px solid rgba(73, 255, 49, 0.82);
	border-radius: 8px;
	box-shadow: 0 0 44px rgba(73, 255, 49, 0.52), inset 0 0 30px rgba(73, 255, 49, 0.14);
	height: clamp(54px, 5vw, 82px);
	left: calc(52% + (var(--module-exit, 0) * 10vw));
	position: absolute;
	top: calc(34% + (var(--module-exit, 0) * -2vh));
	width: clamp(92px, 9vw, 150px);
}

.doa-module-bridge__single {
	opacity: calc(var(--module-exit, 0) * (1 - var(--module-split, 0)) * 1.18);
	transform:
		translate3d(
			calc(var(--module-exit, 0) * -28vw),
			calc((var(--module-exit, 0) * 28vh) - var(--module-curve, 0px)),
			0
		)
		rotate(calc(var(--module-exit, 0) * -7deg))
		scale(calc(0.92 + (var(--module-exit, 0) * 0.08)));
}

.doa-module-bridge span {
	--bridge-spread: calc((var(--bridge-index) - 2.5) * 4.2vw);
	opacity: var(--module-split, 0);
	transform:
		translate3d(
			calc((var(--module-exit, 0) * -28vw) + (var(--module-split, 0) * var(--bridge-spread))),
			calc((var(--module-exit, 0) * 28vh) - (var(--module-curve, 0px) * (0.92 + (var(--bridge-index) * 0.04))) + (var(--module-split, 0) * ((var(--bridge-index) - 2.5) * 0.55vh))),
			0
		)
		rotate(calc((var(--bridge-index) - 2.5) * var(--module-split, 0) * 7deg))
		scale(calc(0.8 + (var(--module-split, 0) * 0.2)));
}

.doa-process {
	align-content: center;
	gap: 3rem;
}

.doa-process .doa-section__sticky {
	align-content: center;
	gap: 3rem;
	justify-items: center;
	text-align: center;
}

.doa-process h2 {
	font-size: clamp(2rem, 4.2vw, 4.8rem);
	max-width: 15ch;
	text-align: center;
}

.doa-process__track {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(6, minmax(160px, 1fr));
	overflow-x: auto;
	padding-bottom: 1rem;
}

.doa-process__step {
	min-height: 260px;
	text-align: left;
}

.doa-process__step.reveal {
	--process-from-x: 0px;
	--process-from-y: 90px;
	--process-card-progress: 0;
	filter: blur(calc((1 - var(--process-card-progress, 0)) * 18px));
	opacity: var(--process-card-progress, 0);
	transform:
		translate3d(
			calc(var(--process-from-x) * (1 - var(--process-card-progress, 0))),
			calc(var(--process-from-y) * (1 - var(--process-card-progress, 0))),
			0
		)
		scale(calc(0.92 + (var(--process-card-progress, 0) * 0.08)));
}

.doa-process__step.reveal.is-visible {
	opacity: var(--process-card-progress, 0);
	transform:
		translate3d(
			calc(var(--process-from-x) * (1 - var(--process-card-progress, 0))),
			calc(var(--process-from-y) * (1 - var(--process-card-progress, 0))),
			0
		)
		scale(calc(0.92 + (var(--process-card-progress, 0) * 0.08)));
}

.doa-process__step:nth-child(1) {
	--process-from-x: 28vw;
	--process-from-y: -12vh;
}

.doa-process__step:nth-child(2) {
	--process-from-x: 16vw;
	--process-from-y: -5vh;
}

.doa-process__step:nth-child(3) {
	--process-from-x: 7vw;
	--process-from-y: 8vh;
}

.doa-process__step:nth-child(4) {
	--process-from-x: -7vw;
	--process-from-y: 8vh;
}

.doa-process__step:nth-child(5) {
	--process-from-x: -16vw;
	--process-from-y: -5vh;
}

.doa-process__step:nth-child(6) {
	--process-from-x: -28vw;
	--process-from-y: -12vh;
}

.doa-process__step p {
	filter: blur(calc((1 - var(--process-card-progress, 0)) * 10px));
	font-size: clamp(1.15rem, 1.65vw, 1.95rem);
	opacity: var(--process-card-progress, 0);
	transform: translateY(calc((1 - var(--process-card-progress, 0)) * 16px));
}

.doa-proof {
	display: grid;
}

.doa-proof .doa-section__sticky {
	display: grid;
	gap: clamp(2rem, 7vw, 7rem);
	grid-template-columns: minmax(0, 1.1fr) minmax(280px, 0.9fr);
}

.doa-proof__list {
	display: grid;
	gap: 0.85rem;
}

.doa-proof__item {
	align-items: center;
	display: flex;
	font-size: clamp(1.15rem, 2vw, 1.8rem);
	font-weight: 720;
	min-height: 96px;
	transition: border-color 240ms ease, color 240ms ease, transform 260ms var(--doa-ease), background 240ms ease;
}

.doa-proof__item:hover {
	background: linear-gradient(145deg, rgba(73, 255, 49, 0.14), rgba(255, 255, 255, 0.035));
	border-color: rgba(73, 255, 49, 0.34);
	transform: translateX(6px);
}

.doa-final {
	justify-items: center;
	text-align: center;
}

.doa-final .doa-section__sticky {
	justify-items: center;
	overflow: hidden;
	text-align: center;
}

.doa-final h2 {
	max-width: 11ch;
}

.doa-final .doa-button {
	margin-top: 2.5rem;
}

.doa-final__halo {
	background: radial-gradient(circle, rgba(73, 255, 49, 0.28), transparent 35rem);
	border: 1px solid rgba(73, 255, 49, 0.16);
	border-radius: 999px;
	height: min(84vw, 820px);
	position: absolute;
	width: min(84vw, 820px);
}

.doa-final__halo::after {
	border: 1px solid rgba(73, 255, 49, 0.12);
	border-radius: inherit;
	content: "";
	inset: 11%;
	position: absolute;
}

.doa-about-hero {
	justify-items: center;
	text-align: center;
}

.doa-about-hero h1 {
	color: var(--doa-text);
	font-size: clamp(3rem, 7.8vw, 8rem);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 0.92;
	margin: 0;
	max-width: 13ch;
	text-wrap: balance;
}

.doa-about-split {
	gap: clamp(2rem, 7vw, 7rem);
	grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.95fr);
}

.doa-about-split h2,
.doa-services h2,
.doa-advantage h2,
.doa-packages h2 {
	color: var(--doa-text);
	font-size: clamp(2.45rem, 5.4vw, 5.7rem);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 0.95;
	margin: 0;
	text-wrap: balance;
}

.doa-about-copy,
.doa-advantage p {
	color: rgba(243, 247, 240, 0.72);
	font-size: clamp(1.05rem, 2vw, 1.55rem);
	line-height: 1.55;
}

.doa-about-copy p + p {
	margin-top: 1.25rem;
}

.doa-about-principles {
	gap: 1rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.doa-principle,
.doa-service,
.doa-package {
	background: linear-gradient(145deg, rgba(73, 255, 49, 0.1), rgba(255, 255, 255, 0.025));
	border: 1px solid var(--doa-line);
	border-radius: 8px;
	box-shadow: 0 28px 100px rgba(0, 0, 0, 0.24);
}

.doa-principle {
	align-content: end;
	display: grid;
	min-height: 52vh;
	padding: clamp(1.4rem, 3vw, 3rem);
}

.doa-principle span,
.doa-package p {
	color: var(--doa-green);
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.16em;
	text-transform: uppercase;
}

.doa-principle p {
	color: var(--doa-text);
	font-size: clamp(1.45rem, 3vw, 3.35rem);
	font-weight: 780;
	line-height: 1.03;
	margin: 2rem 0 0;
}

.doa-services,
.doa-packages {
	align-content: center;
	gap: 3rem;
}

.doa-service-grid,
.doa-package-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.doa-service {
	align-items: end;
	color: var(--doa-text);
	display: flex;
	font-size: clamp(1.05rem, 1.55vw, 1.45rem);
	font-weight: 750;
	min-height: 190px;
	padding: 1.2rem;
}

.doa-advantage {
	gap: clamp(2rem, 7vw, 7rem);
	grid-template-columns: minmax(0, 1.05fr) minmax(280px, 0.8fr);
}

.doa-package {
	min-height: 420px;
	padding: 1.2rem;
}

.doa-package h3 {
	color: var(--doa-text);
	font-size: clamp(2rem, 3.5vw, 3.8rem);
	font-weight: 800;
	letter-spacing: 0;
	line-height: 0.96;
	margin: 1rem 0 2rem;
}

.doa-package ul {
	display: grid;
	gap: 0.75rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.doa-package li {
	color: rgba(243, 247, 240, 0.74);
	line-height: 1.35;
}

.doa-package li::before {
	color: var(--doa-green);
	content: "+";
	font-weight: 900;
	margin-right: 0.5rem;
}

.reveal {
	filter: blur(14px);
	opacity: 0;
	transform: translateY(36px);
	transition: opacity 1050ms var(--doa-ease), transform 1150ms var(--doa-ease), filter 1150ms var(--doa-ease);
}

.reveal.is-visible {
	filter: blur(0);
	opacity: 1;
	transform: translateY(0);
}

.doa-line-reveal {
	display: grid;
	gap: 0.02em;
}

.doa-line-reveal .doa-line {
	display: block;
}

.doa-line-reveal .doa-word {
	display: inline-block;
	filter: blur(18px);
	margin-right: 0.18em;
	opacity: 0;
	transform: translateY(0.38em);
	transition:
		opacity 980ms var(--doa-ease) calc(var(--word-index, 0) * 95ms),
		transform 1120ms var(--doa-ease) calc(var(--word-index, 0) * 95ms),
		filter 1120ms var(--doa-ease) calc(var(--word-index, 0) * 95ms);
}

.doa-line-reveal.is-visible .doa-word {
	filter: blur(0);
	opacity: 1;
	transform: translateY(0);
}

.doa-problem:nth-child(2),
.doa-process__step:nth-child(2),
.doa-proof__item:nth-child(2) {
	transition-delay: 90ms;
}

.doa-problem:nth-child(3),
.doa-process__step:nth-child(3),
.doa-proof__item:nth-child(3) {
	transition-delay: 180ms;
}

.doa-problem:nth-child(4),
.doa-process__step:nth-child(4),
.doa-proof__item:nth-child(4) {
	transition-delay: 270ms;
}

.doa-problem:nth-child(5),
.doa-process__step:nth-child(5) {
	transition-delay: 360ms;
}

.doa-problem:nth-child(6),
.doa-process__step:nth-child(6) {
	transition-delay: 450ms;
}

@keyframes doa-spin {
	to {
		transform: rotate(360deg);
	}
}

@keyframes doa-map-idle {
	0% {
		transform:
			translate(calc(-50% + var(--hero-shift-x, 0px) - 22px), calc(-50% + var(--hero-shift-y, 0px) - 10px))
			rotateX(calc(var(--hero-tilt-x, 0deg) - 3deg))
			rotateY(calc(var(--hero-tilt-y, 0deg) + 4deg))
			rotateZ(-1deg)
			scale(0.985);
	}
	50% {
		transform:
			translate(calc(-50% + var(--hero-shift-x, 0px) + 14px), calc(-50% + var(--hero-shift-y, 0px) + 18px))
			rotateX(calc(var(--hero-tilt-x, 0deg) + 2deg))
			rotateY(calc(var(--hero-tilt-y, 0deg) - 3deg))
			rotateZ(1.2deg)
			scale(1.012);
	}
	100% {
		transform:
			translate(calc(-50% + var(--hero-shift-x, 0px) + 28px), calc(-50% + var(--hero-shift-y, 0px) - 4px))
			rotateX(calc(var(--hero-tilt-x, 0deg) + 4deg))
			rotateY(calc(var(--hero-tilt-y, 0deg) - 5deg))
			rotateZ(0.4deg)
			scale(1.025);
	}
}

@keyframes doa-link-breathe {
	0% {
		opacity: 0.62;
	}
	100% {
		opacity: 1;
	}
}

@keyframes doa-panel-breathe {
	0% {
		border-color: rgba(73, 255, 49, 0.16);
		box-shadow: 0 0 26px rgba(73, 255, 49, 0.05), inset 0 0 26px rgba(73, 255, 49, 0.035);
	}
	100% {
		border-color: rgba(73, 255, 49, 0.32);
		box-shadow: 0 0 58px rgba(73, 255, 49, 0.14), inset 0 0 44px rgba(73, 255, 49, 0.07);
	}
}

@keyframes doa-node-pulse {
	0%,
	100% {
		opacity: 0.55;
		box-shadow: 0 0 18px rgba(73, 255, 49, 0.38);
	}
	50% {
		opacity: 1;
		box-shadow: 0 0 42px rgba(73, 255, 49, 0.78);
	}
}

@keyframes doa-problem-marquee {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-33.333333%);
	}
}

@media (max-width: 960px) {
	.doa-vision__grid,
	.doa-proof .doa-section__sticky,
	.doa-proof,
	.doa-modules__sticky,
	.doa-about-split,
	.doa-advantage {
		grid-template-columns: 1fr;
	}

	.doa-vision {
		padding-left: 1.2rem;
		padding-right: 1.2rem;
	}

	.doa-vision h2 {
		position: relative;
		text-align: left;
		top: auto;
	}

	.doa-vision__story {
		justify-items: start;
		padding-top: 0;
		transform: none;
	}

	.doa-vision__video {
		width: min(100%, 310px);
	}

	.doa-about-principles,
	.doa-service-grid,
	.doa-package-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.doa-problem-grid {
		animation-duration: 78s;
	}

	.doa-modules {
		min-height: auto;
	}

	.doa-modules__sticky {
		position: relative;
	}

	.doa-modules__marker,
	.doa-process .doa-section__marker {
		position: relative;
		top: auto;
	}

	.doa-module-bridge {
		display: none;
	}

	.doa-module-stage {
		display: grid;
		gap: 1rem;
	}

	.doa-module-card {
		grid-area: auto;
		min-height: 430px;
		opacity: 1;
		transform: none;
	}
}

@media (max-width: 640px) {
	.doa-nav {
		justify-content: center;
		padding: 0.9rem;
	}

	.doa-nav__brand {
		font-size: 0.78rem;
		left: 50%;
		padding: 0;
	}

	.doa-nav__links {
		display: none;
	}

	.doa-vision-rail {
		display: none;
	}

	.doa-section {
		filter: none !important;
		min-height: auto;
		opacity: 1 !important;
		padding: 7rem 1rem;
		transform: none !important;
	}

	.doa-home > .doa-section:not(.doa-hero) {
		min-height: auto;
		padding: 0;
	}

	.doa-section__sticky {
		min-height: auto;
		padding: 7rem 1rem;
		position: relative;
		top: auto;
	}

	.doa-hero {
		min-height: 100svh;
		padding: 0;
	}

	.doa-hero h1,
	.doa-about-hero h1,
	.doa-vision h2,
	.doa-problems h2,
	.doa-process h2,
	.doa-proof h2,
	.doa-final h2,
	.doa-about-split h2,
	.doa-services h2,
	.doa-advantage h2,
	.doa-packages h2 {
		font-size: clamp(2.65rem, 12vw, 4.35rem);
	}

	.doa-vision {
		padding-top: 6.5rem;
	}

	.doa-vision h2,
	.doa-vision p {
		text-align: center;
	}

	.doa-vision__grid,
	.doa-vision__story {
		justify-items: center;
	}

	.doa-hero h1 {
		font-size: clamp(2.55rem, 11vw, 4rem);
		left: 50%;
		margin-left: 0;
		max-width: 11ch;
		opacity: 1 !important;
		text-align: center;
		top: 18svh;
		transform: translateX(-50%) !important;
		width: min(92vw, 520px);
	}

	.doa-hero__copy {
		left: 0;
		margin: 0 1rem;
		max-width: none;
		opacity: 1 !important;
		right: 0;
		text-align: center;
		top: auto;
		bottom: clamp(5.5rem, 12svh, 7.2rem);
		transform: none !important;
	}

	.doa-system-map {
		height: 48svh;
		left: 50%;
		opacity: 0.32;
		pointer-events: none;
		top: 52%;
		width: 118vw;
	}

	.doa-system-map__panel {
		min-width: 64px;
		padding: 0.56rem 0.62rem;
	}

	.doa-system-map__panel span {
		font-size: 0.5rem;
		letter-spacing: 0.1em;
	}

	.doa-system-map__panel small {
		display: none;
	}

	.doa-problem-grid {
		animation-duration: 68s;
	}

	.doa-problems h2 {
		margin-left: 1rem;
		max-width: 11.5ch;
		text-align: left;
	}

	.doa-problem,
	.doa-process__step {
		min-height: 150px;
	}

	.doa-problems .doa-problem {
		flex-basis: 210px;
	}

	.doa-problems .doa-problem p {
		font-size: 0.86rem;
	}

	.doa-process__track {
		grid-template-columns: 1fr;
		overflow: visible;
	}

	.doa-about-principles,
	.doa-service-grid,
	.doa-package-grid {
		grid-template-columns: 1fr;
	}

	.doa-principle {
		min-height: 360px;
	}
}

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

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

	.reveal,
	.doa-line-reveal .doa-word {
		filter: none !important;
		opacity: 1;
		transform: none;
	}
}
