/* Lumensaur Learning Map: original visual language, data, and layout. */

.lumensaur-home {
	background: var(--lumensaur-ink);
	overflow: hidden;
}

.lumensaur-shell {
	box-sizing: border-box;
	margin: 0 auto;
	max-width: 1240px;
	padding-left: 32px;
	padding-right: 32px;
	width: 100%;
}

.lumensaur-site-header {
	background: rgba(7, 17, 31, 0.76);
	border-bottom: 1px solid var(--lumensaur-line);
	position: sticky;
	top: 0;
	-webkit-backdrop-filter: blur(18px);
	backdrop-filter: blur(18px);
	z-index: 50;
}

.lumensaur-site-header__inner {
	align-items: center;
	display: flex;
	justify-content: space-between;
	min-height: 76px;
}

.lumensaur-brand {
	align-items: center;
	color: var(--lumensaur-paper);
	display: inline-flex;
	font-family: var(--wp--preset--font-family--heading), Georgia, serif;
	font-size: 21px;
	font-weight: 700;
	gap: 9px;
	letter-spacing: -0.02em;
	text-decoration: none;
}

.lumensaur-brand:hover {
	color: var(--lumensaur-lime);
}

.lumensaur-brand__mark {
	align-items: center;
	border: 1px solid rgba(184, 243, 107, 0.8);
	border-radius: 50%;
	color: var(--lumensaur-lime);
	display: inline-flex;
	font-family: Arial, sans-serif;
	font-size: 24px;
	height: 30px;
	justify-content: center;
	line-height: 1;
	transform: rotate(-22deg);
	width: 30px;
}

.lumensaur-nav {
	align-items: center;
	display: flex;
	gap: 28px;
}

.lumensaur-nav a {
	color: var(--lumensaur-muted);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.02em;
	text-decoration: none;
	transition: color 180ms ease;
}

.lumensaur-nav a:hover {
	color: var(--lumensaur-paper);
}

.lumensaur-nav__cta {
	border: 1px solid rgba(184, 243, 107, 0.5);
	border-radius: 999px;
	color: var(--lumensaur-lime) !important;
	padding: 10px 16px;
}

.lumensaur-nav__cta:hover {
	background: var(--lumensaur-lime);
	color: var(--lumensaur-ink) !important;
}

.lumensaur-hero {
	background: radial-gradient(circle at 78% 33%, rgba(51, 135, 157, 0.18), transparent 29%), linear-gradient(180deg, #07111f 0%, #081624 100%);
	min-height: 720px;
	overflow: hidden;
	position: relative;
}

.lumensaur-hero__grid {
	background-image: linear-gradient(rgba(130, 174, 191, 0.055) 1px, transparent 1px), linear-gradient(90deg, rgba(130, 174, 191, 0.055) 1px, transparent 1px);
	background-size: 58px 58px;
	height: 70%;
	mask-image: linear-gradient(to bottom, rgba(0,0,0,0.85), transparent);
	opacity: 0.44;
	position: absolute;
	right: -10%;
	top: 0;
	transform: perspective(600px) rotateX(58deg) rotateZ(-9deg) scale(1.25);
	transform-origin: center top;
	width: 73%;
}

.lumensaur-hero__glow {
	border-radius: 50%;
	filter: blur(4px);
	height: 260px;
	pointer-events: none;
	position: absolute;
	width: 260px;
}

.lumensaur-hero__glow--one {
	background: rgba(184, 243, 107, 0.07);
	right: 18%;
	top: 15%;
}

.lumensaur-hero__glow--two {
	background: rgba(115, 229, 232, 0.06);
	bottom: 10%;
	left: 12%;
}

.lumensaur-hero__inner {
	align-items: center;
	display: grid;
	gap: 48px;
	grid-template-columns: minmax(0, 1.12fr) minmax(380px, 0.88fr);
	min-height: 720px;
	position: relative;
	z-index: 1;
}

.lumensaur-hero__copy {
	max-width: 760px;
}

.lumensaur-kicker,
.lumensaur-eyebrow {
	color: var(--lumensaur-cyan);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.18em;
	margin: 0 0 24px;
	text-transform: uppercase;
}

.lumensaur-pulse {
	background: var(--lumensaur-lime);
	border-radius: 50%;
	display: inline-block;
	height: 7px;
	margin-right: 7px;
	vertical-align: 1px;
	width: 7px;
}

.lumensaur-hero h1,
.lumensaur-section-heading h2,
.lumensaur-contact h2,
.lumensaur-principles-section h2 {
	color: var(--lumensaur-paper);
	font-family: var(--wp--preset--font-family--heading), Georgia, serif;
	font-size: clamp(48px, 6.1vw, 86px);
	font-weight: 500;
	letter-spacing: -0.065em;
	line-height: 0.98;
	margin: 0;
}

.lumensaur-hero h1 {
	font-size: clamp(46px, 4.4vw, 64px);
}

.lumensaur-hero-title__line {
	display: inline-block;
	white-space: nowrap;
}

.lumensaur-hero h1 em,
.lumensaur-section-heading h2 em,
.lumensaur-contact h2 em,
.lumensaur-principles-section h2 em {
	color: var(--lumensaur-lime);
	font-style: italic;
}

.lumensaur-hero__lead {
	color: #c0d0d9;
	font-size: clamp(17px, 1.3vw, 20px);
	line-height: 1.65;
	margin: 30px 0 30px;
	max-width: 550px;
}

.lumensaur-actions {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
}

.lumensaur-button {
	align-items: center;
	border-radius: 999px;
	display: inline-flex;
	font-size: 13px;
	font-weight: 700;
	gap: 11px;
	justify-content: center;
	padding: 14px 20px;
	text-decoration: none;
	transition: transform 180ms ease, background 180ms ease, color 180ms ease;
}

.lumensaur-button:hover {
	transform: translateY(-2px);
}

.lumensaur-button--primary {
	background: var(--lumensaur-lime);
	color: var(--lumensaur-ink);
}

.lumensaur-button--primary:hover {
	background: #d1ff93;
	color: var(--lumensaur-ink);
}

.lumensaur-button--quiet {
	border: 1px solid var(--lumensaur-line);
	color: var(--lumensaur-paper);
}

.lumensaur-button--quiet:hover {
	background: rgba(255, 255, 255, 0.06);
	color: var(--lumensaur-paper);
}

.lumensaur-hero__note {
	color: #748b9b;
	font-size: 12px;
	letter-spacing: 0.03em;
	margin-top: 24px;
}

.lumensaur-hero-orbit {
	height: 500px;
	justify-self: end;
	position: relative;
	width: min(100%, 560px);
}

.lumensaur-orbit-ring,
.lumensaur-orbit-line {
	border: 1px solid rgba(115, 229, 232, 0.18);
	border-radius: 50%;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%) rotate(-22deg) skewX(-11deg);
}

.lumensaur-orbit-ring--outer {
	height: 350px;
	width: 510px;
}

.lumensaur-orbit-ring--inner {
	border-color: rgba(184, 243, 107, 0.22);
	height: 230px;
	transform: translate(-50%, -50%) rotate(29deg) skewX(11deg);
	width: 370px;
}

.lumensaur-orbit-line {
	border-color: rgba(165, 204, 225, 0.13);
	height: 420px;
	transform: translate(-50%, -50%) rotate(68deg) skewX(-8deg);
	width: 140px;
}

.lumensaur-orbit-line--two {
	height: 380px;
	transform: translate(-50%, -50%) rotate(-50deg) skewX(14deg);
	width: 118px;
}

.lumensaur-hero-node {
	align-items: center;
	background: rgba(13, 32, 53, 0.94);
	border: 1px solid rgba(115, 229, 232, 0.35);
	border-radius: 50%;
	box-shadow: 0 0 0 7px rgba(115, 229, 232, 0.035), 0 20px 50px rgba(0,0,0,0.22);
	color: #b7ced9;
	display: flex;
	font-size: 11px;
	font-weight: 600;
	height: 62px;
	justify-content: center;
	line-height: 1.1;
	position: absolute;
	text-align: center;
	width: 62px;
}

.lumensaur-hero-node--a { left: 18%; top: 34%; }
.lumensaur-hero-node--b { right: 15%; top: 26%; }
.lumensaur-hero-node--c { bottom: 18%; left: 28%; }

.lumensaur-hero-node--focus {
	background: radial-gradient(circle at 35% 28%, rgba(255,255,255,0.18), transparent 28%), linear-gradient(145deg, #b8f36b, #6de1a0);
	border: 0;
	box-shadow: 0 0 0 14px rgba(184, 243, 107, 0.06), 0 0 45px rgba(184, 243, 107, 0.27), 0 22px 60px rgba(0, 0, 0, 0.34);
	color: #07111f;
	height: 112px;
	left: 50%;
	top: 48%;
	transform: translate(-50%, -50%);
	width: 112px;
}

.lumensaur-orbit-caption {
	bottom: 30px;
	color: #7f9aaa;
	font-size: 11px;
	letter-spacing: 0.08em;
	position: absolute;
	right: 28px;
	text-transform: uppercase;
}

.lumensaur-orbit-caption__dot {
	background: var(--lumensaur-lime);
	border-radius: 50%;
	display: inline-block;
	height: 6px;
	margin-right: 7px;
	width: 6px;
}

.lumensaur-hero__scroll {
	bottom: 24px;
	color: #617a8c;
	font-size: 10px;
	left: 50%;
	letter-spacing: 0.16em;
	position: absolute;
	text-transform: uppercase;
	transform: translateX(-50%);
	z-index: 2;
}

.lumensaur-hero__scroll span { color: var(--lumensaur-lime); font-size: 17px; margin-left: 8px; }

.lumensaur-section {
	padding: 138px 0;
}

.lumensaur-intro {
	background: var(--lumensaur-paper);
	color: var(--lumensaur-ink);
}

.lumensaur-intro .lumensaur-eyebrow,
.lumensaur-build .lumensaur-eyebrow,
.lumensaur-principles-section .lumensaur-eyebrow,
.lumensaur-contact .lumensaur-eyebrow { color: #167d88; }

.lumensaur-section-heading h2 {
	color: var(--lumensaur-ink);
	font-size: clamp(42px, 5vw, 68px);
}

.lumensaur-intro .lumensaur-section-heading h2 em,
.lumensaur-build .lumensaur-section-heading h2 em { color: #15919c; }

.lumensaur-intro__body {
	margin: 44px 0 58px auto;
	max-width: 500px;
}

.lumensaur-intro__body p,
.lumensaur-principles-section__copy > p {
	color: #42616a;
	font-size: 17px;
	line-height: 1.75;
	margin: 0;
}

.lumensaur-principles {
	display: grid;
	gap: 1px;
	grid-template-columns: repeat(3, 1fr);
}

.lumensaur-principle-card {
	border-top: 1px solid rgba(7, 17, 31, 0.18);
	padding: 30px 28px 0 0;
}

.lumensaur-principle-card + .lumensaur-principle-card { padding-left: 28px; }
.lumensaur-card-index { color: #15919c; font-size: 11px; font-weight: 700; letter-spacing: 0.15em; }
.lumensaur-principle-card h3 { color: var(--lumensaur-ink); font-size: 24px; letter-spacing: -0.04em; margin: 28px 0 13px; }
.lumensaur-principle-card p { color: #58747c; font-size: 14px; line-height: 1.7; margin: 0; max-width: 270px; }

.lumensaur-lab-section { background: #091726; color: var(--lumensaur-paper); }
.lumensaur-lab-section .lumensaur-section-heading h2 { color: var(--lumensaur-paper); }
.lumensaur-lab-section .lumensaur-section-heading h2 em { color: var(--lumensaur-lime); }

.lumensaur-section-heading--split {
	align-items: end;
	display: flex;
	gap: 50px;
	justify-content: space-between;
}

.lumensaur-section-heading__aside { color: #91a8b7; font-size: 15px; line-height: 1.75; margin: 0 0 4px; max-width: 360px; }

.lumensaur-lab { margin-top: 48px; position: relative; }
.lumensaur-lab__toolbar { align-items: center; display: flex; gap: 20px; justify-content: space-between; margin-bottom: 18px; }

.lumensaur-search {
	align-items: center;
	background: rgba(13, 32, 53, 0.88);
	border: 1px solid rgba(165, 204, 225, 0.22);
	border-radius: 12px;
	display: flex;
	gap: 12px;
	max-width: 560px;
	padding: 0 14px;
	transition: border-color 180ms ease, box-shadow 180ms ease;
	width: 100%;
}

.lumensaur-search:focus-within { border-color: rgba(184, 243, 107, 0.72); box-shadow: 0 0 0 4px rgba(184, 243, 107, 0.07); }
.lumensaur-search__icon { color: var(--lumensaur-cyan); font-size: 26px; line-height: 1; transform: rotate(-20deg); }
.lumensaur-search input { background: transparent; border: 0; color: var(--lumensaur-paper); font: inherit; font-size: 15px; outline: 0; padding: 17px 0; width: 100%; }
.lumensaur-search input::placeholder { color: #728c9c; }
.lumensaur-search__hint { border: 1px solid rgba(165, 204, 225, 0.2); border-radius: 5px; color: #718997; font-size: 10px; padding: 3px 6px; white-space: nowrap; }
.lumensaur-lab__toolbar-meta { color: #8aa3b0; font-size: 12px; white-space: nowrap; }
.lumensaur-status-dot { background: var(--lumensaur-lime); border-radius: 50%; box-shadow: 0 0 12px rgba(184,243,107,0.7); display: inline-block; height: 6px; margin-right: 6px; width: 6px; }

.lumensaur-search-results { background: #10243b; border: 1px solid rgba(165, 204, 225, 0.17); border-radius: 12px; box-shadow: 0 18px 40px rgba(0,0,0,0.23); left: 0; max-width: 560px; overflow: hidden; position: absolute; top: 65px; width: 100%; z-index: 10; }
.lumensaur-search-results button { background: transparent; border: 0; border-bottom: 1px solid rgba(165, 204, 225, 0.1); color: var(--lumensaur-paper); cursor: pointer; display: block; padding: 13px 16px; text-align: left; width: 100%; }
.lumensaur-search-results button:last-child { border-bottom: 0; }
.lumensaur-search-results button:hover, .lumensaur-search-results button:focus-visible { background: rgba(184,243,107,0.08); outline: 0; }
.lumensaur-search-result__name { display: block; font-size: 13px; font-weight: 700; }
.lumensaur-search-result__meta { color: #7993a5; display: block; font-size: 11px; margin-top: 4px; }
.lumensaur-search-empty { color: #87a0b1; font-size: 13px; padding: 17px; }

.lumensaur-lab__workspace { align-items: stretch; display: grid; gap: 18px; grid-template-columns: minmax(0, 1.5fr) minmax(320px, 0.72fr); }
.lumensaur-graph-wrap { min-width: 0; }
.lumensaur-graph-stage { background: radial-gradient(circle at 50% 48%, rgba(29, 90, 98, 0.42), transparent 36%), linear-gradient(180deg, #0d2238 0%, #081522 100%); border: 1px solid rgba(165, 204, 225, 0.17); border-radius: 18px; box-shadow: inset 0 1px 0 rgba(255,255,255,0.04), 0 26px 60px rgba(0,0,0,0.22); height: min(58vw, 560px); min-height: 500px; overflow: hidden; perspective: 1000px; position: relative; }
.lumensaur-graph-stage__stars { background-image: radial-gradient(circle at 22% 24%, rgba(255,255,255,0.56) 0 1px, transparent 1.5px), radial-gradient(circle at 75% 72%, rgba(115,229,232,0.55) 0 1px, transparent 1.4px), radial-gradient(circle at 88% 18%, rgba(184,243,107,0.5) 0 1px, transparent 1.5px); background-size: 190px 170px, 250px 220px, 310px 250px; inset: 0; opacity: 0.5; position: absolute; }
.lumensaur-graph-stage__plane { border: 1px solid rgba(115, 229, 232, 0.14); border-radius: 50%; height: 72%; left: 9%; position: absolute; top: 16%; transform: perspective(720px) rotateX(62deg) rotateZ(-8deg); width: 82%; }
.lumensaur-graph-stage__plane::before, .lumensaur-graph-stage__plane::after { border: 1px solid rgba(165,204,225,0.09); border-radius: 50%; content: ""; inset: 13% 8%; position: absolute; }
.lumensaur-graph-stage__plane::after { inset: 30% 20%; }
.lumensaur-graph-canvas { cursor: grab; height: 100%; inset: 0; position: absolute; touch-action: none; width: 100%; z-index: 2; }
.lumensaur-graph-canvas.is-dragging { cursor: grabbing; }
.lumensaur-graph-stage__labels { inset: 0; pointer-events: none; position: absolute; z-index: 3; }
.lumensaur-graph-stage__label { color: #7d9aa6; font-size: 10px; font-weight: 700; letter-spacing: 0.14em; position: absolute; text-transform: uppercase; }
.lumensaur-graph-stage__label--before { left: 20px; top: 19px; }
.lumensaur-graph-stage__label--focus { color: var(--lumensaur-lime); left: 50%; top: 19px; transform: translateX(-50%); }
.lumensaur-graph-stage__label--after { right: 20px; top: 19px; }
.lumensaur-graph-stage__hint { align-items: center; background: rgba(7,17,31,0.58); border: 1px solid rgba(165,204,225,0.14); border-radius: 999px; bottom: 16px; color: #a4bac2; display: flex; font-size: 11px; gap: 4px; left: 50%; padding: 7px 12px; pointer-events: none; position: absolute; transform: translateX(-50%); white-space: nowrap; z-index: 4; }
.lumensaur-graph-legend { align-items: center; color: #7190a0; display: flex; flex-wrap: wrap; font-size: 11px; gap: 18px; justify-content: flex-end; margin-top: 12px; }
.legend-dot { border-radius: 50%; display: inline-block; height: 7px; margin-right: 5px; width: 7px; }
.legend-dot--focus { background: var(--lumensaur-lime); box-shadow: 0 0 10px rgba(184,243,107,0.6); }
.legend-line { border-top: 1px solid rgba(115,229,232,0.7); display: inline-block; margin: 0 5px 3px 0; width: 18px; }
.legend-line--branch { border-color: rgba(255,189,114,0.75); border-style: dashed; }

.lumensaur-node-panel { background: linear-gradient(180deg, rgba(18,36,59,0.94), rgba(10,25,42,0.94)); border: 1px solid rgba(165,204,225,0.17); border-radius: 18px; display: flex; flex-direction: column; min-height: 500px; padding: 24px; }
.lumensaur-node-panel__topline { align-items: center; display: flex; justify-content: space-between; }
.lumensaur-node-panel__topline-actions { align-items: center; display: flex; gap: 10px; }
.lumensaur-panel-label { color: #6d8d9e; display: block; font-size: 9px; font-weight: 700; letter-spacing: 0.16em; text-transform: uppercase; }
.lumensaur-panel-id { color: #4e7083; font-family: monospace; font-size: 9px; }
.lumensaur-return-search { background: rgba(115,229,232,0.08); border: 1px solid rgba(115,229,232,0.28); border-radius: 999px; color: #9edbdd; cursor: pointer; font-size: 10px; padding: 6px 9px; }
.lumensaur-return-search:hover, .lumensaur-return-search:focus-visible { background: rgba(184,243,107,0.12); border-color: rgba(184,243,107,0.55); color: var(--lumensaur-lime); outline: 0; }
.lumensaur-node-panel__domain { color: var(--lumensaur-cyan); font-size: 11px; font-weight: 700; letter-spacing: 0.1em; margin-top: 22px; text-transform: uppercase; }
.lumensaur-node-panel__stage { background: rgba(184,243,107,0.1); border: 1px solid rgba(184,243,107,0.24); border-radius: 999px; color: var(--lumensaur-lime); display: inline-flex; font-size: 10px; margin-top: 13px; padding: 5px 9px; }
.lumensaur-node-panel h3 { color: var(--lumensaur-paper); font-family: var(--wp--preset--font-family--heading), Georgia, serif; font-size: 32px; font-weight: 500; letter-spacing: -0.045em; line-height: 1.08; margin: 14px 0 3px; }
.lumensaur-node-panel__english { color: #6f8e9d; font-size: 11px; margin: 0 0 17px; }
.lumensaur-node-panel__description, .lumensaur-node-panel__section p { color: #a3b9c3; font-size: 14px; line-height: 1.7; margin: 0; }
.lumensaur-node-panel__section { border-top: 1px solid var(--lumensaur-line); margin-top: 20px; padding-top: 16px; }
.lumensaur-node-panel__section p { color: #d0dedd; margin-top: 8px; }
.lumensaur-node-panel__connections { border-top: 1px solid var(--lumensaur-line); display: grid; gap: 16px; grid-template-columns: 1fr 1fr; margin-top: 20px; padding-top: 16px; }
.lumensaur-node-panel__connections ul { list-style: none; margin: 9px 0 0; padding: 0; }
.lumensaur-node-panel__connections li { margin: 0 0 8px; }
.lumensaur-path-link { background: transparent; border: 0; color: #bcd0d3; cursor: pointer; display: block; padding: 0; text-align: left; width: 100%; }
.lumensaur-path-link:hover .lumensaur-path-link__title, .lumensaur-path-link:focus-visible .lumensaur-path-link__title { color: var(--lumensaur-lime); text-decoration: underline; text-underline-offset: 3px; }
.lumensaur-path-link__title { display: block; font-size: 12px; font-weight: 700; line-height: 1.35; }
.lumensaur-path-link__relation { color: #6e8d9c; display: block; font-size: 10px; margin-top: 3px; }
.lumensaur-path-empty { color: #6e8d9c; font-size: 11px; line-height: 1.45; }
.lumensaur-node-panel__hint { color: #7795a2; font-size: 11px; line-height: 1.5; margin: auto 0 0; padding-top: 20px; }
.lumensaur-lab__disclaimer { color: #58768a; font-size: 11px; margin: 14px 0 0; }

.lumensaur-build { background: var(--lumensaur-paper); color: var(--lumensaur-ink); }
.lumensaur-build .lumensaur-section-heading h2 { color: var(--lumensaur-ink); }
.lumensaur-text-link { color: #167d88; font-size: 13px; font-weight: 700; text-decoration: none; }
.lumensaur-text-link:hover { color: #0b4e5a; }
.lumensaur-build-grid { display: grid; gap: 1px; grid-template-columns: 1.28fr 1fr 1fr; margin-top: 60px; }
.lumensaur-build-card { border-left: 1px solid rgba(7,17,31,0.18); min-height: 260px; padding: 0 28px; }
.lumensaur-build-card:first-child { border-left: 0; padding-left: 0; }
.lumensaur-build-card--featured { background: #d9eee8; border: 0; border-radius: 15px; margin-right: 18px; padding: 27px 28px; }
.lumensaur-build-card__tag { color: #167d88; font-size: 9px; font-weight: 700; letter-spacing: 0.14em; }
.lumensaur-build-card h3 { color: var(--lumensaur-ink); font-family: var(--wp--preset--font-family--heading), Georgia, serif; font-size: 25px; font-weight: 600; letter-spacing: -0.04em; line-height: 1.15; margin: 28px 0 14px; }
.lumensaur-build-card p { color: #55717a; font-size: 13px; line-height: 1.7; margin: 0; max-width: 300px; }
.lumensaur-build-card a { color: #167d88; display: inline-block; font-size: 12px; font-weight: 700; margin-top: 25px; text-decoration: none; }
.lumensaur-build-card a:hover { color: var(--lumensaur-ink); }

.lumensaur-principles-section { background: #cce9e1; color: var(--lumensaur-ink); }
.lumensaur-principles-section__inner { display: grid; gap: 80px; grid-template-columns: 0.85fr 1fr; }
.lumensaur-principles-section h2 { color: var(--lumensaur-ink); font-size: clamp(44px, 5.5vw, 72px); }
.lumensaur-principles-section h2 em { color: #167d88; }
.lumensaur-principles-section__copy { align-self: end; max-width: 550px; }
.lumensaur-mini-list { border-top: 1px solid rgba(7,17,31,0.2); display: grid; gap: 14px; margin-top: 38px; padding-top: 20px; }
.lumensaur-mini-list span { color: #305e64; font-size: 13px; }
.lumensaur-mini-list b { color: #167d88; font-size: 10px; letter-spacing: 0.1em; margin-right: 13px; }

.lumensaur-contact { background: var(--lumensaur-ink); }
.lumensaur-contact__inner { align-items: end; display: grid; gap: 80px; grid-template-columns: 1fr 1fr; }
.lumensaur-contact h2 { font-size: clamp(44px, 5.6vw, 76px); }
.lumensaur-contact__copy { max-width: 430px; }
.lumensaur-contact__copy p { color: #a2b5c1; font-size: 17px; line-height: 1.7; margin: 0 0 28px; }

.lumensaur-site-footer { background: #050a12; border-top: 1px solid rgba(165,204,225,0.12); padding: 55px 0 20px; }
.lumensaur-site-footer__main { align-items: start; display: flex; justify-content: space-between; }
.lumensaur-brand--footer { font-size: 18px; }
.lumensaur-site-footer p { color: #728b9a; font-size: 12px; line-height: 1.7; margin: 18px 0 0; }
.lumensaur-site-footer__links { display: flex; flex-wrap: wrap; gap: 22px; }
.lumensaur-site-footer__links a { color: #9bb0bd; font-size: 12px; text-decoration: none; }
.lumensaur-site-footer__links a:hover { color: var(--lumensaur-lime); }
.lumensaur-site-footer__bottom { border-top: 1px solid rgba(165,204,225,0.12); color: #536c7c; display: flex; font-size: 10px; justify-content: space-between; margin-top: 50px; padding-top: 18px; }

@media (max-width: 920px) {
	.lumensaur-hero__inner { gap: 30px; grid-template-columns: 1fr; padding-bottom: 70px; padding-top: 80px; }
	.lumensaur-hero { min-height: 0; }
	.lumensaur-hero-orbit { height: 420px; justify-self: center; max-width: 600px; }
	.lumensaur-hero__scroll { display: none; }
	.lumensaur-lab__workspace { grid-template-columns: 1fr; }
	.lumensaur-node-panel { min-height: 0; }
	.lumensaur-node-panel__hint { margin-top: 24px; }
}

@media (max-width: 680px) {
	.lumensaur-shell { padding-left: 20px; padding-right: 20px; }
	.lumensaur-site-header__inner { min-height: 66px; }
	.lumensaur-nav { gap: 10px; }
	.lumensaur-nav a:not(.lumensaur-nav__cta) { display: none; }
	.lumensaur-nav__cta { font-size: 11px !important; padding: 8px 11px; }
	.lumensaur-hero__inner { padding-top: 72px; }
	.lumensaur-hero h1 { font-size: clamp(38px, 11.5vw, 52px); }
	.lumensaur-hero-title__line {
		display: inline-block;
		white-space: nowrap;
	}
	.lumensaur-hero-title__line:last-child > em {
		display: block;
		white-space: nowrap;
	}
	.lumensaur-hero-orbit { height: 320px; margin-top: 10px; transform: scale(0.84); transform-origin: center top; width: 120%; }
	.lumensaur-orbit-caption { bottom: 0; right: 12px; }
	.lumensaur-section { padding: 92px 0; }
	.lumensaur-section-heading--split { align-items: start; flex-direction: column; gap: 22px; }
	.lumensaur-section-heading__aside { max-width: none; }
	.lumensaur-principles, .lumensaur-build-grid, .lumensaur-principles-section__inner, .lumensaur-contact__inner { grid-template-columns: 1fr; }
	.lumensaur-principle-card, .lumensaur-principle-card + .lumensaur-principle-card { border-left: 0; border-top: 1px solid rgba(7,17,31,0.18); padding: 25px 0; }
	.lumensaur-principle-card:first-child { border-top: 0; }
	.lumensaur-build-card, .lumensaur-build-card:first-child { border-left: 0; border-top: 1px solid rgba(7,17,31,0.18); min-height: 0; padding: 26px 0; }
	.lumensaur-build-card--featured { margin: 0; }
	.lumensaur-principles-section__inner, .lumensaur-contact__inner { gap: 38px; }
	.lumensaur-lab__toolbar { align-items: stretch; flex-direction: column; gap: 12px; }
	.lumensaur-lab__toolbar-meta { padding-left: 2px; }
	.lumensaur-search-results { max-width: none; top: 64px; }
	.lumensaur-graph-stage { height: 400px; min-height: 400px; }
	.lumensaur-graph-stage__label { font-size: 8px; }
	.lumensaur-graph-stage__label--before { left: 14px; }
	.lumensaur-graph-stage__label--after { right: 14px; }
	.lumensaur-graph-stage__hint { bottom: 12px; font-size: 10px; }
	.lumensaur-graph-canvas { touch-action: pan-y; }
	.lumensaur-graph-legend { justify-content: flex-start; }
	.lumensaur-node-panel { padding: 20px; }
	.lumensaur-node-panel h3 { font-size: 28px; }
	.lumensaur-node-panel__connections { grid-template-columns: 1fr; }
	.lumensaur-node-panel__topline-actions { gap: 7px; }
	.lumensaur-return-search { font-size: 9px; padding: 5px 8px; }
	.lumensaur-site-footer__main, .lumensaur-site-footer__bottom { align-items: start; flex-direction: column; gap: 24px; }
	.lumensaur-site-footer__bottom { gap: 8px; }
}

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { scroll-behavior: auto !important; transition-duration: 0.01ms !important; }
}
