@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap');

:root {
	--ink: #10231f;
	--mint: #baf4d6;
	--accent: #02a66a;
}

html {
	scroll-behavior: smooth;
}

body {
	font-family: Manrope, sans-serif;
}

.site-header {
	position: absolute;
	z-index: 2;
	width: 100%;
}

.site-header .navbar {
	align-items: center;
	display: grid;
	grid-template-columns: 1fr auto 1fr;
	min-height: 5.5rem;
}

.site-header nav {
	align-items: center;
	display: flex;
	gap: 2.25rem;
	justify-content: center;
}

.site-header nav a {
	color: #345249;
	padding: .7rem 0;
	transition: color .2s ease;
}

.site-header nav a:hover {
	color: var(--accent);
}

.site-header .navbar>.btn {
	justify-self: end;
	min-width: 6.2rem;
}

.brand {
	color: var(--ink);
	font-size: 1.55rem;
	font-weight: 800;
	letter-spacing: -.08em;
}

.brand span {
	color: var(--accent);
}

.hero-section {
	min-height: 650px;
	overflow: hidden;
	position: relative;
	background: #effcf4;
}

.hero-glow {
	background: radial-gradient(circle, #b0f4cd 0%, rgba(176, 244, 205, 0) 68%);
	height: 650px;
	position: absolute;
	right: -12%;
	top: -15%;
	width: 650px;
}

.eyebrow {
	color: var(--accent);
	font-family: 'DM Mono', monospace;
	font-size: .72rem;
	font-weight: 500;
	letter-spacing: .12em;
	margin-bottom: 1.3rem;
}

h1,
h2,
h3 {
	color: var(--ink);
	letter-spacing: -.055em;
}

h1 {
	font-size: clamp(3rem, 7vw, 6.25rem);
	font-weight: 800;
	line-height: .96;
}

h1 em {
	color: var(--accent);
	font-style: normal;
}

h2 {
	font-size: clamp(2.3rem, 4vw, 4.3rem);
	font-weight: 800;
	line-height: 1.02;
}

.hero-copy,
.section-copy {
	color: #466058;
	font-size: 1.05rem;
	line-height: 1.8;
	margin: 2rem 0;
	max-width: 36rem;
}

.reserve-card {
	background: rgba(255, 255, 255, .9);
	border: 1px solid rgba(16, 35, 31, .1);
	border-radius: 2rem;
	box-shadow: 0 25px 70px rgba(16, 35, 31, .12);
	padding: 2rem;
	backdrop-filter: blur(12px);
}

.reserve-card-heading {
	align-items: flex-start;
	display: flex;
	justify-content: space-between;
	gap: 1rem;
}

.reserve-kicker {
	color: #71807a;
	font-family: 'DM Mono', monospace;
	font-size: .69rem;
	font-weight: 500;
	letter-spacing: .11em;
	margin: 0 0 .45rem;
}

.reserve-card h3 {
	font-size: 1.5rem;
	font-weight: 800;
	line-height: 1.15;
	margin: 0;
}

.reserve-badge {
	background: var(--ink);
	border-radius: 999px;
	color: var(--mint);
	font-family: 'DM Mono', monospace;
	font-size: .78rem;
	font-weight: 700;
	padding: .42rem .7rem;
	white-space: nowrap;
}

.reserve-intro {
	color: #5b6d66;
	font-size: .92rem;
	line-height: 1.6;
	margin: 1.25rem 0 1.5rem;
}

.reserve-flow {
	align-items: stretch;
	display: flex;
	gap: .65rem;
}

.flow-step {
	align-items: center;
	background: #f3faf6;
	border: 1px solid #dcece3;
	border-radius: 1rem;
	display: flex;
	flex: 1;
	flex-direction: column;
	justify-content: center;
	min-height: 155px;
	padding: 1rem .6rem;
	text-align: center;
}

.flow-step.flow-sdbc {
	background: var(--ink);
	border-color: var(--ink);
	color: #fff;
}

.flow-icon {
	align-items: center;
	background: #d7f8e5;
	border-radius: 50%;
	color: var(--ink);
	display: flex;
	font-family: 'DM Mono', monospace;
	font-size: 1.4rem;
	font-weight: 700;
	height: 2.7rem;
	justify-content: center;
	margin-bottom: .75rem;
	width: 2.7rem;
}

.flow-usd {
	background: #fff2cb;
	color: #7b5700;
}

.flow-redeem {
	background: #e7e9ff;
	color: #3d2eac;
}

.flow-step strong {
	display: block;
	font-size: .78rem;
	line-height: 1.35;
}

.flow-step small {
	color: #71807a;
	display: block;
	font-size: .65rem;
	line-height: 1.35;
	margin-top: .35rem;
}

.flow-sdbc small {
	color: #b7d4c5;
}

.flow-arrow {
	align-self: center;
	color: var(--accent);
	font-size: 1.15rem;
	font-weight: 700;
}

.reserve-notice {
	align-items: flex-start;
	border-top: 1px solid #dcece3;
	color: #64756e;
	display: flex;
	font-size: .72rem;
	gap: .5rem;
	line-height: 1.55;
	margin-top: 1.5rem;
	padding-top: 1rem;
}

.reserve-notice span {
	align-items: center;
	background: #e1f5e9;
	border-radius: 50%;
	color: var(--accent);
	display: flex;
	flex: 0 0 auto;
	font-family: serif;
	font-weight: 700;
	height: 1rem;
	justify-content: center;
	width: 1rem;
}

.reserve-notice p {
	margin: 0;
}

.principle-card {
	background: #fff;
	border: 1px solid #dcece3;
	border-radius: 1.25rem;
	min-height: 220px;
	padding: 1.75rem;
}

.principle-card span {
	color: var(--accent);
	font-family: 'DM Mono', monospace;
	font-size: .8rem;
}

.principle-card h3 {
	font-size: 1.45rem;
	font-weight: 800;
	margin: 3rem 0 1rem;
}

.principle-card p {
	color: #536961;
	line-height: 1.65;
}

@media(max-width:767px) {
	.site-header .navbar {
		grid-template-columns: 1fr auto;
		min-height: 4.5rem;
	}

	.site-header nav {
		display: none;
	}

	.hero-section {
		min-height: auto;
	}

	.reserve-flow {
		flex-direction: column;
	}

	.flow-step {
		flex-direction: row;
		justify-content: flex-start;
		min-height: auto;
		padding: 1rem;
		text-align: left;
	}

	.flow-icon {
		flex: 0 0 auto;
		margin: 0 .8rem 0 0;
	}

	.flow-arrow {
		align-self: center;
		transform: rotate(90deg);
	}
}

.sub-hero {
	background: #effcf4;
}

.sub-hero.compact h1 {
	font-size: clamp(2.8rem, 6vw, 5rem);
}

.swap-card,
.info-panel,
.dashboard-card,
.account-card {
	background: #fff;
	border: 1px solid #dcece3;
	border-radius: 1.5rem;
	padding: 2rem;
	box-shadow: 0 12px 35px rgba(16, 35, 31, .06);
}

.swap-tabs {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: .5rem;
	margin-bottom: 1.5rem;
}

.swap-tab {
	border-radius: .8rem;
	color: #60736b;
	font-weight: 700;
	padding: .8rem;
}

.swap-tab.active {
	background: var(--ink);
	color: #fff;
}

.swap-mode-copy {
	display: grid;
	gap: .3rem;
	margin-bottom: 1.5rem;
}

.swap-mode-copy strong {
	font-size: 1.15rem;
}

.swap-mode-copy span,
.muted-copy {
	color: #61736c;
	font-size: .88rem;
	line-height: 1.6;
}

.form-control {
	display: grid;
	gap: .45rem;
	margin-bottom: 1rem;
}

.amount-input {
	align-items: center;
	border: 1px solid #bfd4c8;
	border-radius: 1rem;
	display: flex;
	font-size: 1.25rem;
	font-weight: 800;
	justify-content: space-between;
	padding: 1rem;
}

.amount-input input {
	background: transparent;
	min-width: 0;
	outline: 0;
	width: 70%;
}

.amount-input.muted {
	background: #f4faf6;
	color: #5d7067;
}

.swap-arrow {
	color: var(--accent);
	font-size: 1.5rem;
	text-align: center;
}

.swap-summary {
	border-top: 1px solid #dcece3;
	display: flex;
	font-size: .85rem;
	justify-content: space-between;
	margin: 1.5rem 0;
	padding-top: 1rem;
}

.info-panel h3,
.dashboard-card h3 {
	font-size: 1.3rem;
	font-weight: 800;
	margin-bottom: 1rem;
}

.info-panel ol {
	display: grid;
	gap: 1rem;
	list-style: none;
	margin: 1.5rem 0;
	padding: 0;
}

.info-panel li {
	color: #52665d;
	font-size: .88rem;
	line-height: 1.5;
}

.info-panel b {
	color: var(--accent);
	font-family: 'DM Mono', monospace;
	margin-right: .7rem;
}

.notice-text {
	border-top: 1px solid #dcece3;
	color: #687a72;
	font-size: .75rem;
	line-height: 1.6;
	padding-top: 1rem;
}

.account-page {
	align-items: center;
	background: #effcf4;
	display: flex;
	justify-content: center;
	min-height: 75vh;
	padding: 7rem 1.25rem 3rem;
}

.account-card {
	display: grid;
	max-width: 30rem;
	width: 100%;
}

.account-card h2 {
	font-size: 2rem;
	margin-bottom: 1.5rem;
}

.form-message {
	font-size: .82rem;
	min-height: 1.3rem;
	margin-top: .8rem;
}

.account-link {
	color: #63766d;
	font-size: .85rem;
	margin-top: 1.3rem;
	text-align: center;
}

.account-link a {
	color: var(--accent);
	font-weight: 700;
}

.table-toolbar,
.card-head {
	align-items: center;
	display: flex;
	justify-content: space-between;
	margin-bottom: 1rem;
}

.table-toolbar h2 {
	font-size: 2rem;
}

.wallet-list {
	display: grid;
	gap: .7rem;
	margin-top: 1.2rem;
}

.wallet-row {
	align-items: center;
	background: #f3faf6;
	border-radius: .8rem;
	display: flex;
	font-family: 'DM Mono', monospace;
	font-size: .75rem;
	justify-content: space-between;
	padding: .85rem;
}

.wallet-row span {
	color: #60736b;
}

@media(max-width:767px) {
	.sub-hero .py-28 {
		padding-bottom: 5rem;
		padding-top: 8rem;
	}

	.swap-card,
	.info-panel,
	.dashboard-card,
	.account-card {
		border-radius: 1rem;
		padding: 1.25rem;
	}
}

.wallet-row small,
.wallet-row span {
	display: block;
	margin-top: .25rem;
}

.wallet-actions {
	align-items: center;
	display: flex;
	flex: 0 0 auto;
	gap: .35rem;
	margin-left: 1rem;
}

.secret-row {
	align-items: start;
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: .65rem;
}

.secret-row .input,
.secret-row .textarea {
	box-sizing: border-box;
	min-width: 0;
	width: 100%;
}

.secret-row .textarea {
	height: 8rem;
	min-height: 8rem;
	overflow-wrap: anywhere;
	resize: vertical;
	word-break: break-word;
}

#wallet-secret-modal {
	background: rgba(5, 20, 15, .46);
	padding: 1rem;
}

#wallet-secret-modal .modal-box {
	box-sizing: border-box;
	max-height: calc(100vh - 2rem);
	overflow-x: hidden;
	overflow-y: auto;
	padding: 1.75rem;
	position: relative;
	width: min(42rem, calc(100vw - 2rem));
}

.wallet-modal-close {
	align-items: center;
	background: #fff;
	border: 1px solid #bfd4c8;
	border-radius: 50%;
	color: #10231f;
	display: flex;
	font-size: 1.5rem;
	height: 2.25rem;
	justify-content: center;
	line-height: 1;
	position: absolute;
	right: 1rem;
	top: 1rem;
	width: 2.25rem;
}

.wallet-modal-close:hover,
.wallet-modal-close:focus {
	background: #effcf4;
	border-color: #02a66a;
	color: #008a58;
}

#wallet-secret-modal .form-control {
	min-width: 0;
}

#wallet-secret-modal .copy-secret {
	align-self: start;
	min-width: 3.75rem;
	white-space: nowrap;
}

@media (max-width:540px) {
	#wallet-secret-modal {
		padding: .75rem;
	}

	#wallet-secret-modal .modal-box {
		max-height: calc(100vh - 1.5rem);
		padding: 1.5rem;
		width: calc(100vw - 1.5rem);
	}

	.secret-row {
		grid-template-columns: 1fr;
	}

	#wallet-secret-modal .copy-secret {
		justify-self: end;
	}
}

.password-divider {
	border-top: 1px solid #dcece3;
	margin: 2rem 0 1.5rem;
}

.about-hero {
	background: linear-gradient(135deg, #effcf4 0%, #effcf4 52%, #d9fae9 100%);
}

.about-hero-actions {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	margin-top: 2rem;
}

.about-section {
	position: relative;
}

.about-tint {
	background: #f4fbf7;
}

.about-section-heading {
	margin-bottom: 3.5rem;
	max-width: 48rem;
}

.about-section-heading .section-copy {
	margin-bottom: 0;
}

.model-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.model-card {
	background: #fff;
	border: 1px solid #dcece3;
	border-radius: 1.25rem;
	min-height: 16rem;
	padding: 1.75rem;
}

.model-card-dark {
	background: var(--ink);
	border-color: var(--ink);
}

.model-number {
	color: var(--accent);
	font-family: 'DM Mono', monospace;
	font-size: .78rem;
	font-weight: 700;
}

.model-card h3 {
	font-size: 1.45rem;
	font-weight: 800;
	margin: 2.75rem 0 .85rem;
}

.model-card p {
	color: #536961;
	font-size: .9rem;
	line-height: 1.7;
	margin: 0;
}

.model-card-dark h3 {
	color: #fff;
}

.model-card-dark p {
	color: #c2d7ce;
}

.model-rule {
	align-items: center;
	background: #effcf4;
	border: 1px solid #dcece3;
	border-radius: 1rem;
	display: flex;
	flex-wrap: wrap;
	gap: .7rem;
	justify-content: center;
	margin-top: 1rem;
	padding: 1.2rem;
	text-align: center;
}

.model-rule strong {
	color: var(--ink);
	font-size: .88rem;
	margin-right: 1rem;
}

.model-rule span {
	color: #52665d;
	font-size: .82rem;
}

.model-rule b {
	color: var(--accent);
}

.model-rule i {
	background: #b9d9c7;
	height: 1.1rem;
	margin: 0 .2rem;
	width: 1px;
}

.issuance-grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.issuance-card {
	background: #fff;
	border: 1px solid #dcece3;
	border-radius: 1.5rem;
	padding: 2rem;
}

.issuance-title {
	align-items: baseline;
	border-bottom: 1px solid #dcece3;
	display: flex;
	gap: .7rem;
	margin-bottom: 1.25rem;
	padding-bottom: 1rem;
}

.issuance-title span {
	color: var(--accent);
	font-family: 'DM Mono', monospace;
	font-size: .75rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.issuance-title strong {
	color: var(--ink);
	font-size: 1.25rem;
}

.issuance-card ol {
	display: grid;
	gap: 1rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.issuance-card li {
	align-items: flex-start;
	color: #52665d;
	display: flex;
	font-size: .88rem;
	gap: .85rem;
	line-height: 1.65;
}

.issuance-card li b {
	color: var(--accent);
	font-family: 'DM Mono', monospace;
	font-size: .78rem;
}

.about-footnote {
	color: #60736b;
	font-size: .8rem;
	line-height: 1.65;
	margin: 1.25rem 0 0;
}

.about-dark {
	background: var(--ink);
}

.about-dark h2 {
	color: #fff;
}

.about-dark .section-copy {
	color: #c2d7ce;
}

.about-split {
	align-items: center;
	display: grid;
	gap: 4rem;
	grid-template-columns: 1.15fr .85fr;
}

.contract-facts {
	border-top: 1px solid rgba(255, 255, 255, .22);
	margin: 0;
}

.contract-facts div {
	align-items: baseline;
	border-bottom: 1px solid rgba(255, 255, 255, .14);
	display: flex;
	gap: 1rem;
	justify-content: space-between;
	padding: 1.1rem 0;
}

.contract-facts dt {
	color: #a9c2b7;
	font-size: .76rem;
}

.contract-facts dd {
	color: #fff;
	font-size: .88rem;
	font-weight: 700;
	margin: 0;
	text-align: right;
}

.contract-facts a {
	color: var(--mint);
	font-family: 'DM Mono', monospace;
	font-size: .78rem;
}

.notice-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.notice-grid article {
	border-top: 2px solid var(--accent);
	padding: 1.4rem 0;
}

.notice-grid h3 {
	font-size: 1.12rem;
	font-weight: 800;
	margin: 0 0 .75rem;
}

.notice-grid p {
	color: #536961;
	font-size: .88rem;
	line-height: 1.7;
	margin: 0;
}

.about-cta {
	align-items: center;
	background: #effcf4;
	border-radius: 1.5rem;
	display: flex;
	justify-content: space-between;
	margin-top: 3rem;
	padding: 2rem;
}

.about-cta .eyebrow {
	margin-bottom: .7rem;
}

.about-cta h3 {
	font-size: 1.5rem;
	font-weight: 800;
	margin: 0;
}

@media(max-width:767px) {
	.about-section-heading {
		margin-bottom: 2.25rem;
	}

	.model-grid,
	.issuance-grid,
	.notice-grid,
	.about-split {
		grid-template-columns: 1fr;
	}

	.model-card {
		min-height: auto;
	}

	.model-card h3 {
		margin-top: 2rem;
	}

	.model-rule {
		align-items: center;
		flex-direction: column;
	}

	.model-rule strong {
		margin: 0 0 .25rem;
	}

	.model-rule i {
		height: 1px;
		margin: .15rem 0;
		width: 1.5rem;
	}

	.about-split {
		gap: 2rem;
	}

	.about-cta {
		align-items: flex-start;
		flex-direction: column;
		gap: 1.5rem;
		padding: 1.5rem;
	}
}

.home-hero .hero-copy {
	max-width: 38rem;
}

.hero-network-note {
	color: #587068;
	font-family: 'DM Mono', monospace;
	font-size: .7rem;
	letter-spacing: .03em;
	margin-top: 1.75rem;
}

.hero-network-note span {
	color: var(--accent);
	font-size: .8rem;
}

.home-intro {
	border-bottom: 1px solid #e5eee9;
}

.text-link {
	color: var(--ink);
	font-size: .9rem;
	font-weight: 800;
}

.text-link span {
	color: var(--accent);
	margin-left: .35rem;
}

.home-steps {
	background: #f4f7f5;
}

.home-section-title {
	align-items: end;
	display: flex;
	gap: 4rem;
	justify-content: space-between;
	margin-bottom: 3.5rem;
}

.home-section-title>p {
	color: #536961;
	font-size: .98rem;
	line-height: 1.75;
	margin: 0;
	max-width: 30rem;
}

.step-grid {
	display: grid;
	gap: 1px;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	overflow: hidden;
}

.step-grid article {
	background: #fff;
	min-height: 14rem;
	padding: 1.7rem;
}

.step-grid span {
	color: var(--accent);
	font-family: 'DM Mono', monospace;
	font-size: .78rem;
	font-weight: 700;
}

.step-grid h3 {
	font-size: 1.3rem;
	font-weight: 800;
	margin: 2.2rem 0 .8rem;
}

.step-grid p {
	color: #536961;
	font-size: .86rem;
	line-height: 1.65;
	margin: 0;
}

.home-action-row {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	margin-top: 2rem;
}

.home-proof-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

.home-proof-grid article {
	background: #effcf4;
	border-radius: 1.25rem;
	min-height: 14rem;
	padding: 1.7rem;
}

.proof-mark {
	color: var(--accent);
	font-family: 'DM Mono', monospace;
	font-size: .78rem;
	font-weight: 700;
}

.home-proof-grid h3 {
	font-size: 1.25rem;
	font-weight: 800;
	margin: 2rem 0 .75rem;
}

.home-proof-grid p {
	color: #536961;
	font-size: .86rem;
	line-height: 1.65;
	margin: 0;
}

.home-final {
	background: var(--ink);
}

.home-final-card {
	align-items: center;
	display: flex;
	gap: 2rem;
	justify-content: space-between;
}

.home-final h2 {
	color: #fff;
}

.home-final p:not(.eyebrow) {
	color: #bdd2c8;
	font-size: .95rem;
	line-height: 1.7;
	margin: 1.25rem 0 0;
	max-width: 38rem;
}

.home-final-actions {
	display: flex;
	flex: 0 0 auto;
	flex-wrap: wrap;
	gap: .75rem;
}

.home-final .btn-outline {
	border-color: #96b6a7;
	color: #fff;
}

.contact-hero {
	background: linear-gradient(135deg, #effcf4 0%, #effcf4 55%, #d9fae9 100%);
}

.contact-layout {
	align-items: start;
	display: grid;
	gap: 5rem;
	grid-template-columns: .8fr 1.2fr;
}

.contact-layout > * {
	min-width: 0;
}

.contact-aside h2 {
	font-size: clamp(2.4rem, 4.5vw, 4rem);
}

.contact-guide {
	display: grid;
	gap: 1.4rem;
	margin-top: 2.5rem;
}

.contact-guide article {
	border-top: 1px solid #dcece3;
	padding-top: 1rem;
}

.contact-guide strong {
	color: var(--ink);
	font-size: .92rem;
}

.contact-guide p {
	color: #536961;
	font-size: .83rem;
	line-height: 1.65;
	margin: .5rem 0 0;
}

.contact-form {
	background: #f4f7f5;
	border: 1px solid #e1ece5;
	border-radius: 1.5rem;
	box-sizing: border-box;
	display: grid;
	min-width: 0;
	padding: 2rem;
	width: 100%;
}

.contact-form .form-control {
	margin-bottom: .3rem;
	min-width: 0;
	width: 100%;
}

.contact-form .input,
.contact-form .textarea,
.contact-form .file-input {
	box-sizing: border-box;
	max-width: 100%;
	width: 100%;
}

.contact-form .label-text {
	color: #30493f;
	font-size: .84rem;
	font-weight: 600;
}

.contact-message {
	min-height: 10rem;
	resize: vertical;
}

@media(max-width:767px) {

	.home-section-title,
	.home-final-card {
		align-items: flex-start;
		flex-direction: column;
		gap: 1.5rem;
		margin-bottom: 2.25rem;
	}

	.step-grid,
	.home-proof-grid,
	.contact-layout {
		grid-template-columns: 1fr;
	}

	.step-grid {
		gap: 1px;
	}

	.step-grid article {
		min-height: auto;
	}

	.step-grid h3 {
		margin-top: 1.4rem;
	}

	.home-final-actions {
		width: 100%;
	}

	.home-final-actions .btn {
		flex: 1;
	}

	.contact-layout {
		gap: 2.5rem;
	}

	.contact-form {
		border-radius: 1rem;
		padding: 1.25rem;
	}
}

.browser-wallet-lock {
	background: #effcf4;
	border: 1px solid #dcece3;
	border-radius: 1rem;
	padding: 1rem;
}

.browser-wallet-lock strong {
	color: var(--ink);
	font-size: .92rem;
}

.browser-wallet-lock p {
	color: #536961;
	font-size: .78rem;
	line-height: 1.6;
	margin: .45rem 0 0;
}

.unlock-modal-box {
	max-width: 28rem;
}

.browser-wallet-address {
	background: #effcf4;
	border-radius: .65rem;
	color: #496158;
	font-family: 'DM Mono', monospace;
	font-size: .73rem;
	margin: 1rem 0 0;
	overflow-wrap: anywhere;
	padding: .75rem;
}

#browser-wallet-unlock-modal {
	background: rgba(5, 20, 15, .46);
	padding: 1rem;
}

#browser-wallet-unlock-modal .modal-box {
	box-sizing: border-box;
	max-height: calc(100vh - 2rem);
	overflow-y: auto;
	width: min(28rem, calc(100vw - 2rem));
}

#browser-wallet-connect-modal {
	background: rgba(5, 20, 15, .46);
	padding: 1rem;
}

#browser-wallet-connect-modal .modal-box {
	box-sizing: border-box;
	max-height: calc(100vh - 2rem);
	overflow-y: auto;
	padding: 1.75rem;
	position: relative;
	width: min(28rem, calc(100vw - 2rem));
}

#browser-wallet-restore-modal {
	background: rgba(5, 20, 15, .46);
	padding: 1rem;
}

#browser-wallet-restore-modal .modal-box {
	box-sizing: border-box;
	max-height: calc(100vh - 2rem);
	overflow-y: auto;
	padding: 1.75rem;
	position: relative;
	width: min(34rem, calc(100vw - 2rem));
}

#browser-wallet-restore-modal textarea {
	min-height: 6.5rem;
	resize: vertical;
}

.restore-divider {
	color: #61736c;
	font-size: .8rem;
	font-weight: 700;
	margin: .15rem 0;
	text-align: center;
}

.page-home {
	background: #fff;
}

.page-home .site-header .brand {
	color: #f7fff9;
}

.page-home .site-header nav a {
	color: #bfd7cc;
}

.page-home .site-header nav a:hover,
.page-home .site-header nav a.active {
	color: #a7ffd0;
}

.page-home .site-header .btn-primary {
	background: #a7ffd0;
	border-color: #a7ffd0;
	color: #09251e;
}

.home-relaunch {
	overflow: hidden;
}

.home-stage {
	background: #09251e;
	color: #f6fff8;
	min-height: 45rem;
	overflow: hidden;
	position: relative;
}

.home-stage:before {
	background: linear-gradient(115deg, rgba(167, 255, 208, .15), rgba(167, 255, 208, 0) 38%);
	content: '';
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.home-stage:after {
	background-image: linear-gradient(rgba(167, 255, 208, .07) 1px, transparent 1px), linear-gradient(90deg, rgba(167, 255, 208, .07) 1px, transparent 1px);
	background-size: 4rem 4rem;
	content: '';
	inset: 0;
	mask-image: linear-gradient(to right, rgba(0, 0, 0, .5), transparent 72%);
	opacity: .55;
	pointer-events: none;
	position: absolute;
}

.home-stage-orbit {
	border: 1px solid rgba(167, 255, 208, .24);
	border-radius: 50%;
	pointer-events: none;
	position: absolute;
}

.orbit-one {
	height: 43rem;
	right: -20rem;
	top: -15rem;
	width: 43rem;
}

.orbit-two {
	height: 28rem;
	right: -5rem;
	top: 15rem;
	width: 28rem;
}

.home-stage .max-w-7xl {
	position: relative;
	z-index: 1;
}

.home-stage-copy {
	max-width: 47rem;
}

.home-kicker,
.home-label {
	color: #00a96d;
	font-family: 'DM Mono', monospace;
	font-size: .7rem;
	font-weight: 500;
	letter-spacing: .14em;
	margin: 0 0 1.5rem;
}

.home-kicker {
	color: #a7ffd0;
}

.home-kicker span {
	background: #a7ffd0;
	border-radius: 50%;
	display: inline-block;
	height: .48rem;
	margin-right: .55rem;
	vertical-align: middle;
	width: .48rem;
}

.home-stage h1 {
	color: #f7fff9;
	font-size: clamp(4rem, 8.2vw, 7.6rem);
	letter-spacing: -.075em;
	line-height: .88;
	margin: 0;
}

.home-stage h1 em {
	color: #a7ffd0;
}

.home-stage-copy>p:not(.home-kicker) {
	color: #c6dbd1;
	font-size: 1.08rem;
	line-height: 1.75;
	margin: 2rem 0;
	max-width: 37rem;
}

.home-stage-actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 1.3rem;
}

.official-contract-panel {
	align-items: center;
	background: #f6fcf8;
	border: 1px solid #cfe5d8;
	border-radius: 1rem;
	display: flex;
	gap: 1rem;
	justify-content: space-between;
	padding: .85rem 1rem;
}

.official-contract-heading {
	align-items: center;
	display: flex;
	flex: 0 0 auto;
	gap: .55rem;
}

.official-contract-heading > span {
	align-items: center;
	background: #d7f8e5;
	border-radius: 50%;
	color: #008d59;
	display: inline-flex;
	font-size: .75rem;
	height: 1.55rem;
	justify-content: center;
	width: 1.55rem;
}

.official-contract-heading div {
	display: grid;
	gap: .12rem;
}

.official-contract-heading strong {
	color: #163b2e;
	font-size: .78rem;
}

.official-contract-heading small {
	color: #678177;
	font-family: 'DM Mono', monospace;
	font-size: .58rem;
}

.official-contract-actions {
	align-items: center;
	display: flex;
	gap: .45rem;
	min-width: 0;
}

.official-contract-actions code {
	background: #fff;
	border: 1px solid #d9e8df;
	border-radius: .55rem;
	color: #087e50;
	font-family: 'DM Mono', monospace;
	font-size: .7rem;
	overflow: hidden;
	padding: .48rem .6rem;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.contract-copy,
.contract-explorer-link {
	align-items: center;
	background: #fff;
	border: 1px solid #bfd8ca;
	border-radius: .55rem;
	color: #173d30;
	display: inline-flex;
	flex: 0 0 auto;
	font-size: .72rem;
	font-weight: 800;
	gap: .25rem;
	justify-content: center;
	min-height: 2.1rem;
	padding: 0 .65rem;
}

.contract-copy:hover,
.contract-explorer-link:hover {
	border-color: #02a66a;
	color: #007d4d;
}

.contract-explorer-link {
	background: #e9fbf2;
	border-color: #91dfb4;
}

.home-stage .official-contract-panel {
	background: rgba(8, 47, 36, .72);
	border-color: rgba(167, 255, 208, .32);
}

.home-stage .official-contract-heading strong,
.home-stage .official-contract-actions code,
.home-stage .contract-copy,
.home-stage .contract-explorer-link {
	background: rgba(255, 255, 255, .96);
}

@media(max-width:767px) {
	.official-contract-panel,
	.official-contract-actions {
		align-items: stretch;
		flex-direction: column;
	}

	.official-contract-actions code {
		max-width: 100%;
		width: 100%;
	}

	.contract-copy,
	.contract-explorer-link {
		width: 100%;
	}
}

.home-stage-actions .btn-primary,
.closing-actions .btn-primary {
	background: #a7ffd0;
	border-color: #a7ffd0;
	color: #09251e;
}

.home-stage-actions .btn-primary span {
	font-size: 1.2rem;
	margin-left: .5rem;
}

.home-quiet-link {
	color: #eaffef;
	font-size: .88rem;
	font-weight: 700;
	text-decoration: underline;
	text-decoration-color: rgba(234, 255, 239, .35);
	text-underline-offset: .35rem;
}

.home-swap-preview {
	background: #f7fff9;
	border: 1px solid rgba(255, 255, 255, .26);
	border-radius: 1.75rem;
	box-shadow: 0 2rem 5rem rgba(0, 0, 0, .25);
	color: #09251e;
	overflow: hidden;
	padding: 1.6rem;
	position: relative;
}

.home-swap-preview:before {
	background: #a7ffd0;
	border-radius: 50%;
	content: '';
	filter: blur(10px);
	height: 9rem;
	opacity: .4;
	position: absolute;
	right: -4rem;
	top: -4rem;
	width: 9rem;
}

.preview-topline {
	align-items: center;
	border-bottom: 1px solid #d8e8de;
	display: flex;
	font-family: 'DM Mono', monospace;
	font-size: .66rem;
	justify-content: space-between;
	letter-spacing: .09em;
	padding-bottom: 1rem;
	position: relative;
}

.preview-topline span {
	color: #526a60;
}

.preview-topline b {
	color: #008a58;
}

.preview-asset {
	align-items: center;
	display: flex;
	justify-content: space-between;
	padding: 1.5rem 0;
	position: relative;
}

.preview-asset small {
	color: #667c72;
	display: block;
	font-family: 'DM Mono', monospace;
	font-size: .65rem;
	letter-spacing: .08em;
	margin-bottom: .3rem;
}

.preview-asset strong {
	font-size: 2rem;
	font-weight: 800;
	letter-spacing: -.06em;
}

.preview-token {
	align-items: center;
	border-radius: 1rem;
	display: flex;
	font-family: 'DM Mono', monospace;
	font-size: 1.5rem;
	font-weight: 700;
	height: 4rem;
	justify-content: center;
	width: 4rem;
}

.preview-token.usdt {
	background: #fff0bf;
	color: #856000;
}

.preview-token.sdbc {
	background: #09251e;
	color: #a7ffd0;
}

.preview-route {
	align-items: center;
	display: flex;
	gap: .6rem;
}

.preview-route i {
	background: #d7e8df;
	flex: 1;
	height: 1px;
}

.preview-route span {
	background: #e5faed;
	border-radius: 999px;
	color: #008a58;
	font-family: 'DM Mono', monospace;
	font-size: .7rem;
	font-weight: 700;
	padding: .35rem .55rem;
}

.preview-meta {
	border-top: 1px solid #d8e8de;
	color: #61786d;
	display: flex;
	font-size: .76rem;
	justify-content: space-between;
	padding: 1rem 0;
}

.preview-meta b {
	color: #09251e;
	font-family: 'DM Mono', monospace;
}

.preview-button {
	background: #09251e;
	border-radius: .8rem;
	color: #f5fff8;
	display: flex;
	font-size: .88rem;
	font-weight: 700;
	justify-content: space-between;
	padding: 1rem;
}

.preview-button span {
	color: #a7ffd0;
}

.home-marquee {
	background: #a7ffd0;
	color: #09251e;
	overflow: hidden;
	white-space: nowrap;
}

.home-marquee div {
	align-items: center;
	display: flex;
	font-family: 'DM Mono', monospace;
	font-size: .74rem;
	font-weight: 700;
	gap: 1.1rem;
	letter-spacing: .08em;
	min-height: 3.4rem;
	width: max-content;
}

.home-marquee span {
	padding-left: 1.1rem;
}

.home-marquee b {
	color: #00a96d;
	font-size: 1rem;
}

.home-signal {
	padding-bottom: 8rem;
	padding-top: 8rem;
}

.signal-intro {
	align-items: end;
	display: flex;
	justify-content: space-between;
	margin-bottom: 3rem;
}

.signal-intro h2 {
	font-size: clamp(2.8rem, 5vw, 5.4rem);
	max-width: 47rem;
}

.signal-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: 1.1fr 1fr 1fr;
}

.signal-feature {
	background: #f0f5f2;
	border-radius: 1.35rem;
	min-height: 21rem;
	padding: 1.7rem;
	position: relative;
}

.signal-feature p {
	color: #008a58;
	font-family: 'DM Mono', monospace;
	font-size: .68rem;
	font-weight: 700;
	letter-spacing: .08em;
	margin: 0;
}

.signal-feature h3 {
	font-size: clamp(1.8rem, 2.6vw, 2.7rem);
	font-weight: 800;
	line-height: 1;
	margin: 4.5rem 0 0;
}

.signal-feature>span {
	bottom: 1.7rem;
	color: #536961;
	font-size: .84rem;
	line-height: 1.55;
	max-width: 16rem;
	position: absolute;
}

.feature-contrast {
	background: #09251e;
}

.feature-contrast h3 {
	color: #fff;
}

.feature-contrast p {
	color: #a7ffd0;
}

.feature-contrast>span {
	color: #bed5ca;
}

.feature-accent {
	background: #00a96d;
}

.feature-accent p {
	color: #09251e;
}

.feature-accent>span {
	color: #093a2b;
}

.home-journey {
	background: #f5f7f6;
	border-top: 1px solid #e4ece7;
}

.journey-header {
	align-items: end;
	display: flex;
	gap: 4rem;
	justify-content: space-between;
	margin-bottom: 4rem;
}

.journey-header h2 {
	font-size: clamp(2.8rem, 5vw, 5.2rem);
}

.journey-header>p {
	color: #52685e;
	font-size: 1rem;
	line-height: 1.7;
	margin: 0;
	max-width: 27rem;
}

.journey-track {
	align-items: stretch;
	display: grid;
	grid-template-columns: 1fr auto 1fr auto 1fr auto 1fr;
}

.journey-track article {
	background: #fff;
	border: 1px solid #dfe9e3;
	min-height: 17rem;
	padding: 1.5rem;
}

.journey-index {
	color: #00a96d;
	font-family: 'DM Mono', monospace;
	font-size: .72rem;
	font-weight: 700;
}

.journey-icon {
	align-items: center;
	background: #e7f9ee;
	border-radius: 50%;
	color: #008a58;
	display: flex;
	font-family: 'DM Mono', monospace;
	font-size: 1.25rem;
	height: 2.8rem;
	justify-content: center;
	margin: 2.2rem 0 1rem;
	width: 2.8rem;
}

.journey-track h3 {
	font-size: 1.2rem;
	font-weight: 800;
	margin: 0 0 .6rem;
}

.journey-track p {
	color: #5d7168;
	font-size: .8rem;
	line-height: 1.6;
	margin: 0;
}

.journey-line {
	align-items: center;
	display: flex;
	padding: 0 .5rem;
}

.journey-line span {
	background: #00a96d;
	display: block;
	height: 1px;
	position: relative;
	width: 2rem;
}

.journey-line span:after {
	border-bottom: 4px solid transparent;
	border-left: 6px solid #00a96d;
	border-top: 4px solid transparent;
	content: '';
	position: absolute;
	right: -1px;
	top: -3.5px;
}

.journey-actions {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	margin-top: 2rem;
}

.journey-actions .btn-ghost {
	color: #09251e;
	font-weight: 700;
}

.journey-actions .btn-ghost span {
	color: #00a96d;
	margin-left: .45rem;
}

.home-proof {
	background: #09251e;
	color: #fff;
}

.proof-head {
	align-items: center;
	border-bottom: 1px solid rgba(255, 255, 255, .22);
	display: flex;
	justify-content: space-between;
	padding-bottom: 1rem;
}

.proof-head .home-label {
	color: #a7ffd0;
	margin: 0;
}

.proof-head>span {
	color: #b9d1c5;
	font-size: .78rem;
}

.proof-statement {
	align-items: end;
	display: flex;
	gap: 3rem;
	justify-content: space-between;
	padding: 5.5rem 0;
}

.proof-statement>p {
	color: #f6fff8;
	font-size: clamp(2.7rem, 5.2vw, 5.8rem);
	font-weight: 800;
	letter-spacing: -.075em;
	line-height: .95;
	margin: 0;
}

.proof-detail {
	display: grid;
	gap: .55rem;
	max-width: 18rem;
}

.proof-detail strong {
	color: #a7ffd0;
	font-family: 'DM Mono', monospace;
	font-size: 1.08rem;
}

.proof-detail>span {
	color: #c7ddd2;
	font-size: .86rem;
}

.proof-detail a {
	color: #fff;
	font-size: .85rem;
	font-weight: 700;
	margin-top: 1.1rem;
}

.proof-detail a b {
	color: #a7ffd0;
	font-size: 1rem;
	margin-left: .3rem;
}

.proof-rules {
	border-top: 1px solid rgba(255, 255, 255, .22);
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	padding-top: 1.2rem;
}

.proof-rules span {
	color: #d6e7de;
	font-size: .76rem;
	padding: 0 1rem;
}

.proof-rules span:first-child {
	padding-left: 0;
}

.proof-rules span+span {
	border-left: 1px solid rgba(255, 255, 255, .2);
}

.whitepaper-panel {
	align-items: end;
	border-top: 1px solid rgba(255, 255, 255, .22);
	display: flex;
	gap: 2rem;
	justify-content: space-between;
	margin-top: 3rem;
	padding-top: 2rem;
}

.whitepaper-panel .home-label {
	color: #a7ffd0;
	margin: 0 0 .75rem;
}

.whitepaper-panel h3 {
	color: #fff;
	font-size: clamp(1.55rem, 2.7vw, 2.35rem);
	font-weight: 800;
	letter-spacing: -.05em;
	margin: 0;
}

.whitepaper-panel p:not(.home-label) {
	color: #c7ddd2;
	font-size: .86rem;
	line-height: 1.65;
	margin: .65rem 0 0;
	max-width: 33rem;
}

.whitepaper-links {
	display: flex;
	flex: 0 0 auto;
	flex-wrap: wrap;
	gap: .65rem;
}

.whitepaper-links a {
	border: 1px solid rgba(167, 255, 208, .55);
	border-radius: 999px;
	color: #fff;
	font-size: .8rem;
	font-weight: 700;
	padding: .72rem 1rem;
}

.whitepaper-links a:hover {
	background: #a7ffd0;
	border-color: #a7ffd0;
	color: #09251e;
}

.whitepaper-links span {
	color: #a7ffd0;
	margin-left: .35rem;
}

.whitepaper-links a:hover span {
	color: #09251e;
}

.home-closing {
	background: #a7ffd0;
}

.closing-card {
	align-items: end;
	display: flex;
	gap: 4rem;
	justify-content: space-between;
}

.closing-card .home-label {
	color: #007c50;
}

.closing-card h2 {
	font-size: clamp(2.7rem, 4.7vw, 5rem);
	max-width: 39rem;
}

.closing-card>div:last-child {
	max-width: 23rem;
}

.closing-card p:not(.home-label) {
	color: #194b3b;
	font-size: .92rem;
	line-height: 1.7;
	margin: 0;
}

.closing-actions {
	display: flex;
	flex-wrap: wrap;
	gap: .75rem;
	margin-top: 1.75rem;
}

.closing-actions .btn-outline {
	border-color: #09251e;
	color: #09251e;
}

@media(max-width:767px) {
	.page-home .site-header nav {
		display: none;
	}

	.home-stage {
		min-height: auto;
	}

	.home-stage h1 {
		font-size: clamp(3.5rem, 15vw, 5.4rem);
	}

	.home-stage-copy>p:not(.home-kicker) {
		font-size: .96rem;
	}

	.home-swap-preview {
		margin-top: 1rem;
	}

	.home-marquee div {
		font-size: .65rem;
	}

	.signal-intro,
	.journey-header,
	.proof-statement,
	.whitepaper-panel,
	.closing-card {
		align-items: flex-start;
		flex-direction: column;
	}

	.signal-grid,
	.proof-rules {
		grid-template-columns: 1fr;
	}

	.signal-feature {
		min-height: 16rem;
	}

	.signal-feature h3 {
		margin-top: 2.6rem;
	}

	.journey-header {
		gap: 1.2rem;
		margin-bottom: 2.5rem;
	}

	.journey-track {
		gap: 0;
		grid-template-columns: 1fr;
	}

	.journey-line {
		display: none;
	}

	.journey-track article {
		min-height: auto;
	}

	.journey-icon {
		margin: 1.4rem 0 .8rem;
	}

	.proof-statement {
		gap: 2rem;
		padding: 3.5rem 0;
	}

	.proof-rules {
		gap: .8rem;
	}

	.proof-rules span {
		padding: 0;
	}

	.proof-rules span+span {
		border-left: 0;
	}

	.whitepaper-panel {
		align-items: flex-start;
		gap: 1.25rem;
		margin-top: 2.25rem;
	}

	.closing-card {
		gap: 2rem;
	}
}
