@font-face {
	font-family: 'DM Sans';
	font-style: normal;
	font-weight: 400 700;
	font-display: swap;
	src: url('/assets/fonts/dm-sans-latin.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'DM Sans';
	font-style: normal;
	font-weight: 400 700;
	font-display: swap;
	src: url('/assets/fonts/dm-sans-latin-ext.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: 'Manrope';
	font-style: normal;
	font-weight: 500 800;
	font-display: swap;
	src: url('/assets/fonts/manrope-latin.woff2') format('woff2');
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'Manrope';
	font-style: normal;
	font-weight: 500 800;
	font-display: swap;
	src: url('/assets/fonts/manrope-latin-ext.woff2') format('woff2');
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

:root {
	--ink: #f8f5ff;
	--muted: #aaa3b7;
	--muted-strong: #d1c9dc;
	--bg: #080610;
	--bg-soft: #0e0a18;
	--panel: #151020;
	--line: rgba(202, 171, 255, 0.14);
	--line-strong: rgba(202, 171, 255, 0.28);
	--violet: #9d5cff;
	--violet-light: #c99fff;
	--lavender: #e7d8ff;
	--green: #68dfa5;
	--red: #ff6f86;
	--shadow: 0 28px 90px rgba(0, 0, 0, 0.42);
	--radius-lg: 32px;
	--radius-md: 22px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
html[lang='en'] .lang-de, html[lang='de'] .lang-en { display: none !important; }

body {
	margin: 0;
	min-width: 320px;
	background: var(--bg);
	color: var(--ink);
	font-family: 'DM Sans', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
	-webkit-font-smoothing: antialiased;
	overflow-x: hidden;
}

a { color: inherit; }
img { display: block; max-width: 100%; }
button, a { -webkit-tap-highlight-color: transparent; }
::selection { background: rgba(157, 92, 255, 0.44); color: #fff; }

.skip-link {
	position: fixed;
	left: 1rem;
	top: -5rem;
	z-index: 200;
	padding: 0.8rem 1.2rem;
	border-radius: 999px;
	background: #fff;
	color: #120c1e;
	font-weight: 700;
	transition: top 0.2s ease;
}
.skip-link:focus { top: 1rem; }

.section-shell { width: min(1180px, calc(100% - 3rem)); margin-inline: auto; }

.status-dock {
	position: fixed;
	top: 1rem;
	left: 50%;
	z-index: 100;
	display: flex;
	align-items: center;
	transform: translateX(-50%);
	border: 1px solid rgba(201, 159, 255, 0.24);
	border-radius: 999px;
	background: linear-gradient(135deg,rgba(26,17,41,.94),rgba(9,6,16,.94));
	box-shadow: 0 14px 46px rgba(0,0,0,.46),0 0 36px rgba(139,77,220,.2),inset 0 1px rgba(255,255,255,.07);
	backdrop-filter: blur(18px);
	-webkit-backdrop-filter: blur(18px);
	overflow: hidden;
}

.status-item {
	display: flex;
	align-items: center;
	gap: 0.48rem;
	padding: 0.72rem 1.05rem;
	border-left: 1px solid rgba(255, 255, 255, 0.08);
	color: var(--muted-strong);
	font-size: 0.82rem;
	font-weight: 600;
	white-space: nowrap;
}
.status-item:first-child { border-left: 0; }
.status-item span { text-shadow:0 0 12px rgba(235,215,255,.2); }
.status-item strong { color:var(--text); font-size:inherit; font-variant-numeric:tabular-nums; }
.status-checked { color:var(--muted-strong); }

.status-dot {
	width: 0.48rem;
	height: 0.48rem;
	border-radius: 50%;
	background: var(--red);
	box-shadow: 0 0 0 4px rgba(255, 111, 134, 0.12), 0 0 16px rgba(255, 111, 134, 0.8);
}
.status-main.is-online .status-dot { background: var(--green); box-shadow: 0 0 0 4px rgba(104, 223, 165, 0.12), 0 0 16px rgba(104, 223, 165, 0.8); }

.hero {
	position: relative;
	min-height: clamp(780px, 88svh, 900px);
	padding-top: 9.5rem;
	padding-bottom: 4.5rem;
	background: #090711;
	overflow: hidden;
}

.hero-backdrop {
	position: absolute;
	inset: 0;
	background:
		radial-gradient(circle at 72% 38%, rgba(110, 55, 174, 0.2), transparent 28rem),
		radial-gradient(circle at 14% 18%, rgba(76, 53, 151, 0.12), transparent 25rem),
		linear-gradient(145deg, #090711 0%, #0d0917 55%, #07050c 100%);
}

.hero-backdrop::after {
	content: '';
	position: absolute;
	inset: 0;
	background-image: linear-gradient(rgba(255,255,255,.018) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
	background-size: 72px 72px;
	mask-image: linear-gradient(to bottom, black, transparent 80%);
}

.aurora { position: absolute; border-radius: 50%; filter: blur(70px); opacity: 0.6; }
.aurora-one { width: 30rem; height: 20rem; right: 3%; top: 20%; background: rgba(147, 65, 239, 0.18); transform: rotate(-15deg); }
.aurora-two { width: 25rem; height: 16rem; left: -8rem; bottom: 12%; background: rgba(72, 55, 174, 0.13); }
.page-fireflies { position:fixed; inset:0; z-index:0; overflow:hidden; pointer-events:none; }
.page-fireflies span { position:absolute; width:5px; height:5px; border-radius:50%; background:#f0d8ff; box-shadow:0 0 9px 3px rgba(215,174,255,.78),0 0 24px 7px rgba(154,79,239,.34); opacity:.2; animation:firefly-drift 10s ease-in-out infinite,firefly-glow 3.2s ease-in-out infinite; }
.page-fireflies span:nth-child(1){left:4%;top:10%;animation-delay:-1s,-.5s}.page-fireflies span:nth-child(2){left:12%;top:40%;animation-delay:-5s,-2s}.page-fireflies span:nth-child(3){left:20%;top:75%;animation-delay:-3s,-1s}.page-fireflies span:nth-child(4){left:28%;top:22%;animation-delay:-7s,-2.5s}.page-fireflies span:nth-child(5){left:36%;top:58%;animation-delay:-2s,-1.7s}.page-fireflies span:nth-child(6){left:44%;top:88%;animation-delay:-8s,-.7s}.page-fireflies span:nth-child(7){left:52%;top:14%;animation-delay:-4s,-2.2s}.page-fireflies span:nth-child(8){left:60%;top:46%;animation-delay:-9s,-1.2s}.page-fireflies span:nth-child(9){left:68%;top:78%;animation-delay:-6s,-2.8s}.page-fireflies span:nth-child(10){left:76%;top:28%;animation-delay:-.5s,-1.5s}.page-fireflies span:nth-child(11){left:84%;top:62%;animation-delay:-7.5s,-.3s}.page-fireflies span:nth-child(12){left:93%;top:90%;animation-delay:-3.5s,-2.4s}.page-fireflies span:nth-child(13){left:8%;top:92%;animation-delay:-6.5s,-1.4s}.page-fireflies span:nth-child(14){left:16%;top:18%;animation-delay:-2.5s,-2.6s}.page-fireflies span:nth-child(15){left:24%;top:52%;animation-delay:-9.5s,-.9s}.page-fireflies span:nth-child(16){left:32%;top:82%;animation-delay:-4.5s,-2.1s}.page-fireflies span:nth-child(17){left:40%;top:32%;animation-delay:-7.2s,-1.1s}.page-fireflies span:nth-child(18){left:48%;top:68%;animation-delay:-1.8s,-2.7s}.page-fireflies span:nth-child(19){left:56%;top:94%;animation-delay:-8.4s,-.4s}.page-fireflies span:nth-child(20){left:64%;top:7%;animation-delay:-3.2s,-1.9s}.page-fireflies span:nth-child(21){left:72%;top:52%;animation-delay:-6.2s,-2.3s}.page-fireflies span:nth-child(22){left:80%;top:84%;animation-delay:-.8s,-1.3s}.page-fireflies span:nth-child(23){left:88%;top:36%;animation-delay:-5.2s,-2.9s}.page-fireflies span:nth-child(24){left:96%;top:70%;animation-delay:-9.2s,-.6s}
@keyframes firefly-drift { 0%,100% { transform:translate3d(0,0,0); } 25% { transform:translate3d(18px,-22px,0); } 50% { transform:translate3d(-10px,-40px,0); } 75% { transform:translate3d(-24px,-12px,0); } }
@keyframes firefly-glow { 0%,100% { opacity:.08; } 45% { opacity:.82; } 65% { opacity:.24; } }

.brand-moon { font-size:1.55rem; animation:moon-breathe 4s ease-in-out infinite; }

.site-nav {
	position: absolute;
	top: 5.35rem;
	left: 50%;
	z-index: 50;
	display: flex;
	width: min(1180px, calc(100% - 3rem));
	align-items: center;
	justify-content: space-between;
	gap: 1.5rem;
	transform: translateX(-50%);
}

.brand { display: inline-flex; align-items: center; gap: 0.78rem; text-decoration: none; }
.brand-mark {
	display: grid;
	width: 2.55rem;
	height: 2.55rem;
	place-items: center;
	border: 1px solid rgba(225, 200, 255, 0.38);
	border-radius: 14px;
	background: linear-gradient(145deg, rgba(186, 118, 255, 0.3), rgba(72, 37, 116, 0.2));
	box-shadow: inset 0 1px rgba(255,255,255,.22), 0 8px 28px rgba(108,45,194,.3);
	color: var(--lavender);
}
.brand-copy { display: flex; flex-direction: column; line-height: 1.15; }
.brand-copy strong { font-family: 'Manrope', sans-serif; font-size: 0.92rem; letter-spacing: -0.02em; }
.brand-copy small { margin-top: 0.2rem; color: rgba(235,225,248,.58); font-size: 0.57rem; font-weight: 700; letter-spacing: 0.11em; text-transform: uppercase; }

.nav-links { display: flex; align-items: center; gap: 1.7rem; }
.nav-links a { color: rgba(248,245,255,.68); font-size: 0.8rem; font-weight: 600; text-decoration: none; transition: color .2s ease; }
.nav-links a:hover { color: #fff; }
.nav-actions { display: flex; align-items: center; gap: 0.7rem; }

.language-switch {
	display: flex;
	padding: 0.2rem;
	border: 1px solid rgba(255,255,255,.11);
	border-radius: 999px;
	background: rgba(255,255,255,.04);
}
.language-switch button {
	width: 2.2rem;
	height: 1.9rem;
	border: 0;
	border-radius: 999px;
	background: transparent;
	color: rgba(255,255,255,.48);
	cursor: pointer;
	font: 700 .66rem/1 'DM Sans', sans-serif;
	transition: color .2s ease, background .2s ease, box-shadow .2s ease;
}
.language-switch button.is-active { background: rgba(174,109,255,.24); box-shadow: inset 0 0 0 1px rgba(199,155,255,.22); color: #fff; }

.nav-cta {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	padding: 0.68rem 0.95rem;
	border: 1px solid rgba(255,255,255,.15);
	border-radius: 999px;
	background: rgba(255,255,255,.07);
	font-size: 0.76rem;
	font-weight: 700;
	text-decoration: none;
	transition: background .2s ease, border-color .2s ease;
}
.nav-cta:hover { border-color: rgba(198,156,255,.35); background: rgba(157,92,255,.13); }

.hero-layout {
	position: relative;
	z-index: 10;
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(340px, .72fr);
	gap: clamp(3rem, 8vw, 8rem);
	align-items: center;
	min-height: 570px;
}

.hero-content { max-width: 690px; }
.eyebrow { display: flex; align-items: center; gap: .7rem; margin: 0 0 1.3rem; color: var(--violet-light); font-size: .78rem; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; }
.eyebrow > span:first-child { flex: 0 0 auto; width: 1.7rem; height: 1px; background: currentColor; box-shadow: 0 0 12px currentColor; }
h1, h2, h3, h4, p { margin-top: 0; }
h1, h2, h3, h4 { font-family: 'Manrope', sans-serif; }

.hero h1 { margin-bottom: 1.35rem; font-size: clamp(3.3rem, 6.4vw, 6.5rem); font-weight: 700; letter-spacing: -.067em; line-height: .95; }
h1 em, h2 em { background: linear-gradient(100deg, #fff 5%, var(--violet-light) 54%, #9e65ff 98%); -webkit-background-clip: text; background-clip: text; color: transparent; font-style: normal; }
.hero-lead { max-width: 620px; margin-bottom: 1.8rem; color: rgba(244,238,251,.7); font-size: clamp(1rem,1.5vw,1.15rem); line-height: 1.7; }
.hero-actions, .cta-actions { display: flex; flex-wrap: wrap; gap: .8rem; }

.button {
	display: inline-flex;
	min-height: 3.25rem;
	align-items: center;
	justify-content: center;
	gap: .72rem;
	padding: .82rem 1.25rem;
	border: 1px solid transparent;
	border-radius: 14px;
	font-size: .86rem;
	font-weight: 700;
	text-decoration: none;
	transition: transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.button:hover { transform: translateY(-2px); }
.button img { width: 1.2rem; height: 1.2rem; }
.button-primary { background: linear-gradient(135deg,#aa65ff,#7538d5); box-shadow: 0 12px 34px rgba(120,56,214,.35), inset 0 1px rgba(255,255,255,.24); color:#fff; }
.button-primary:hover { box-shadow: 0 16px 42px rgba(148,71,238,.48), inset 0 1px rgba(255,255,255,.28); }
.button-secondary { border-color: rgba(255,255,255,.15); background: rgba(255,255,255,.045); color: rgba(255,255,255,.86); }
.button-secondary:hover { border-color: rgba(198,156,255,.4); background: rgba(172,109,255,.1); }

.hero-action-help { display: flex; align-items: flex-start; gap: .65rem; max-width: 650px; margin-top: 1.3rem; color: rgba(228,219,238,.62); font-size: .79rem; line-height: 1.6; }
.hero-action-help strong { color: rgba(245,239,252,.78); }
.help-dot { flex: 0 0 auto; width: .38rem; height: .38rem; margin-top: .34rem; border-radius: 50%; background: var(--violet-light); box-shadow: 0 0 12px rgba(201,159,255,.8); }

.nyors-panel { position:relative; width:min(460px,100%); justify-self:end; padding:1.15rem; border:1px solid rgba(201,159,255,.24); border-radius:30px; background:linear-gradient(145deg,rgba(31,20,48,.92),rgba(12,8,20,.94)); box-shadow:var(--shadow),inset 0 1px rgba(255,255,255,.05); overflow:hidden; }
.nyors-panel::before { content:''; position:absolute; inset:0; pointer-events:none; background:linear-gradient(120deg,rgba(255,255,255,.035),transparent 28%,transparent 70%,rgba(169,93,255,.045)); }
.nyors-panel-glow { position:absolute; right:-7rem; top:-6rem; width:18rem; height:18rem; border-radius:50%; background:rgba(155,74,246,.24); filter:blur(55px); }
.nyors-panel-head { position:relative; z-index:1; display:grid; grid-template-columns:auto 1fr auto; gap:.8rem; align-items:center; padding:.2rem .2rem 1rem; border-bottom:1px solid var(--line); }
.nyors-mark { display:grid; width:2.75rem; height:2.75rem; padding:.32rem; place-items:center; border:1px solid rgba(201,159,255,.28); border-radius:14px; background:transparent; box-shadow:0 0 22px rgba(144,72,225,.15); overflow:hidden; }
.nyors-mark img { width:100%; height:100%; object-fit:contain; filter:contrast(1.14) drop-shadow(0 0 4px rgba(219,190,255,.28)); }
.nyors-panel-head > div:nth-child(2) { display:flex; flex-direction:column; }
.nyors-panel-head > div:nth-child(2) > span { color:var(--muted); font-size:.7rem; }
.nyors-panel-head strong { margin-top:.12rem; font-size:.94rem; }
.connection-state { display:flex; align-items:center; gap:.42rem; color:rgba(223,214,235,.65); font-size:.67rem; }
.connection-state i { width:.42rem; height:.42rem; border-radius:50%; background:var(--green); box-shadow:0 0 0 4px rgba(104,223,165,.09),0 0 12px rgba(104,223,165,.6); }
.nyors-panel-copy { position:relative; z-index:1; padding:1.5rem .2rem 1.25rem; }
.nyors-panel-copy h2 { margin-bottom:.75rem; font-size:clamp(1.8rem,3.1vw,2.65rem); letter-spacing:-.05em; line-height:1.05; }
.nyors-panel-copy p { margin:0; color:var(--muted); font-size:.82rem; line-height:1.65; }
.nyors-feature-grid { position:relative; z-index:1; display:grid; grid-template-columns:repeat(2,1fr); gap:.55rem; }
.nyors-feature-grid a { display:grid; grid-template-columns:1.6rem 1fr; padding:.8rem; border:1px solid rgba(203,173,255,.11); border-radius:14px; background:rgba(255,255,255,.025); color:inherit; text-decoration:none; transition:border-color .2s ease,background .2s ease,transform .2s ease; }
.nyors-feature-grid a:hover { transform:translateY(-2px); border-color:rgba(201,159,255,.34); background:rgba(157,92,255,.07); }
.nyors-feature-grid a > span { grid-row:1/3; color:var(--violet-light); font-size:1rem; }
.nyors-feature-grid strong { font-size:.74rem; }
.nyors-feature-grid small { margin-top:.12rem; color:var(--muted); font-size:.65rem; }
.nyors-actions { position:relative; z-index:1; display:flex; align-items:center; gap:1rem; margin-top:1rem; }
.nyors-actions .button { min-height:2.9rem; font-size:.75rem; }
.panel-text-link { display:inline-flex; align-items:center; gap:.45rem; color:rgba(231,219,246,.72); font-size:.7rem; font-weight:700; text-decoration:none; }
.panel-text-link:hover { color:var(--violet-light); }
.purple-emoji,.feature-emoji { filter:grayscale(1) sepia(1) saturate(6) hue-rotate(225deg) brightness(1.2); opacity:.9; }

.about { display:grid; grid-template-columns:1.15fr .85fr; gap:clamp(3rem,8vw,8rem); padding-block:clamp(5rem,8vw,7.5rem) 3rem; }
.about-heading h2, .section-heading h2, .home-section h2 { margin:0; font-size:clamp(2.7rem,5vw,5.1rem); font-weight:700; letter-spacing:-.057em; line-height:1.02; }
.about-copy { padding-top:2.2rem; color:var(--muted); font-size:.94rem; line-height:1.8; }
.about-copy .section-lead { color:var(--muted-strong); font-size:1.06rem; }
.principle-row { grid-column:1/-1; display:grid; grid-template-columns:repeat(3,1fr); margin-top:1rem; border-block:1px solid var(--line); }
.principle-row article { display:grid; grid-template-columns:2rem 1fr; gap:1rem; padding:1.7rem; border-left:1px solid var(--line); }
.principle-row article:first-child { border-left:0; padding-left:0; }
.principle-row article > span { color:var(--violet-light); font-size:1.4rem; font-weight:700; }
.principle-row h3 { margin-bottom:.35rem; font-size:.95rem; }
.principle-row p { margin:0; color:var(--muted); font-size:.84rem; line-height:1.55; }

.brand-visual { position:relative; padding:.55rem; border:1px solid var(--line-strong); border-radius:var(--radius-lg); background:rgba(255,255,255,.025); box-shadow:var(--shadow); overflow:hidden; }
.brand-visual img { width:100%; aspect-ratio:2.5/1; border-radius:calc(var(--radius-lg) - 8px); object-fit:cover; }
.brand-visual-quote { max-width:920px; margin:1.15rem auto .65rem; padding:0 clamp(.75rem,3vw,2rem); color:rgba(216,203,231,.72); font-family:'DM Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; font-size:clamp(.83rem,1.4vw,1rem); font-weight:400; font-style:italic; letter-spacing:.005em; line-height:1.75; text-align:center; }

.discord-section { padding-block:clamp(5rem,8vw,7rem); }
.section-heading.centered { max-width:760px; margin:0 auto 3.5rem; text-align:center; }
.section-heading.centered .eyebrow { justify-content:center; }
.section-heading.centered > p:not(.eyebrow) { max-width:620px; margin:1.5rem auto 0; color:var(--muted); line-height:1.7; }
.community-join-banner { display:grid; grid-template-columns:auto 1fr auto; gap:1.2rem; align-items:center; margin-bottom:1rem; padding:1.35rem; border:1px solid rgba(167,101,255,.34); border-radius:var(--radius-md); background:linear-gradient(135deg,rgba(78,39,125,.68),rgba(24,15,38,.88)); box-shadow:0 20px 55px rgba(0,0,0,.22); }
.community-join-banner .choice-icon { margin:0; }
.community-join-banner h3 { margin:.2rem 0 .35rem; font-size:1.25rem; }
.community-join-banner p:not(.choice-kicker) { margin:0; color:var(--muted); font-size:.79rem; line-height:1.55; }
.access-choice-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; }
.discord-choice { position:relative; min-height:465px; padding:2rem; border:1px solid var(--line); border-radius:var(--radius-lg); background:linear-gradient(145deg,rgba(36,24,55,.65),rgba(16,11,25,.86)); overflow:hidden; }
.discord-choice::after { content:''; position:absolute; right:-6rem; top:-6rem; width:18rem; height:18rem; border-radius:50%; background:rgba(151,75,238,.12); filter:blur(35px); }
.join-choice { border-color:rgba(182,122,255,.3); background:linear-gradient(145deg,rgba(70,36,111,.72),rgba(21,13,33,.9)); }
.overlay-choice { border-color:rgba(182,122,255,.28); background:linear-gradient(145deg,rgba(48,27,75,.8),rgba(16,11,25,.9)); }
.choice-moon { position:absolute; right:1.5rem; top:1.25rem; font-size:2rem; }
.choice-icon { position:relative; z-index:1; display:grid; width:3.25rem; height:3.25rem; margin-bottom:4rem; place-items:center; border:1px solid rgba(255,255,255,.14); border-radius:16px; background:rgba(255,255,255,.07); }
.choice-icon img { width:1.5rem; }
.login-icon,.overlay-icon { color:var(--violet-light); font-size:1.3rem; }
.choice-kicker { margin-bottom:.75rem; color:var(--violet-light); font-size:.73rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; }
.discord-choice h3 { margin-bottom:.8rem; font-size:clamp(1.6rem,3vw,2.35rem); letter-spacing:-.045em; }
.discord-choice > p:not(.choice-kicker) { max-width:470px; margin-bottom:1.6rem; color:var(--muted); font-size:.88rem; line-height:1.7; }

.features-section { padding-block:6.5rem; border-block:1px solid rgba(197,160,255,.08); background:radial-gradient(circle at 0 15%,rgba(135,63,220,.13),transparent 27rem),linear-gradient(180deg,rgba(21,14,34,.75),rgba(10,7,16,.9)); }
.section-heading.feature-heading { display:grid; grid-template-columns:1.25fr .75fr; gap:4rem; align-items:end; margin-bottom:4rem; }
.section-heading.feature-heading > p { margin-bottom:.6rem; color:var(--muted); line-height:1.75; }
.feature-partner-copy { margin-bottom:.6rem; }
.feature-partner-copy p { margin-bottom:.8rem; color:var(--muted); line-height:1.75; }
.feature-partner-copy a { color:var(--violet-light); font-size:.78rem; font-weight:700; text-decoration:none; }
.feature-groups { display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; }
.feature-group { padding:1.7rem; border:1px solid var(--line); border-radius:var(--radius-md); background:rgba(17,12,27,.72); box-shadow:inset 0 1px rgba(255,255,255,.025); }
.feature-group-head { display:grid; grid-template-columns:2.2rem 1fr; gap:1rem; padding-bottom:1.35rem; border-bottom:1px solid var(--line); }
.feature-group-head > span { display:grid; width:2.15rem; height:2.15rem; place-items:center; border:1px solid var(--line-strong); border-radius:50%; color:var(--violet-light); font-size:1.25rem; font-weight:700; }
.feature-group-head small { color:rgba(201,159,255,.72); font-size:.67rem; font-weight:700; letter-spacing:.14em; }
.feature-group-head h3 { margin:.25rem 0 0; font-size:1.28rem; letter-spacing:-.035em; }
.feature-list article { display:grid; grid-template-columns:1.3rem 1fr; gap:.65rem; padding:1.05rem 0; border-bottom:1px solid rgba(202,171,255,.09); }
.feature-list article:last-child { padding-bottom:0; border-bottom:0; }
.feature-bullet { color:var(--violet-light); font-size:.9rem; }
.feature-list h4 { margin-bottom:.32rem; font-size:.86rem; letter-spacing:-.01em; }
.feature-list p { margin:0; color:var(--muted); font-size:.84rem; line-height:1.62; }

.moon-symbol { color:#d5b1ff !important; text-shadow:0 0 7px rgba(211,174,255,.38); animation:moon-breathe 4.8s ease-in-out infinite; }
@keyframes moon-breathe { 0%,100% { opacity:.45; text-shadow:0 0 5px rgba(211,174,255,.22); } 50% { opacity:1; text-shadow:0 0 10px rgba(211,174,255,.75),0 0 24px rgba(148,77,230,.42); } }

.rules-section { display:grid; grid-template-columns:.82fr 1.18fr; gap:clamp(3rem,7vw,7rem); align-items:start; padding-block:6.5rem; }
.rules-intro { position:sticky; top:7rem; }
.rules-intro h2 { margin-bottom:1.25rem; font-size:clamp(2.7rem,4.8vw,4.8rem); font-weight:700; letter-spacing:-.057em; line-height:1.02; }
.rules-intro > p:not(.eyebrow) { color:var(--muted); line-height:1.75; }
.rules-notice { display:grid; grid-template-columns:2rem 1fr; gap:.8rem; margin:1.5rem 0; padding:1rem; border:1px solid rgba(201,159,255,.2); border-radius:15px; background:rgba(157,92,255,.06); }
.rules-notice > span { display:grid; width:1.75rem; height:1.75rem; place-items:center; border:1px solid rgba(201,159,255,.34); border-radius:50%; color:var(--violet-light); font-weight:800; }
.rules-notice p { margin:0; color:var(--muted); font-size:.78rem; line-height:1.6; }
.rules-notice strong { display:block; margin-bottom:.16rem; color:var(--ink); font-size:.82rem; }
.rules-content { display:grid; gap:.75rem; }
.rule-category { border:1px solid var(--line); border-radius:var(--radius-md); background:linear-gradient(145deg,rgba(30,20,46,.65),rgba(15,10,23,.82)); overflow:hidden; }
.rule-category[open] { border-color:rgba(201,159,255,.28); }
.rule-category summary { display:grid; grid-template-columns:3rem 1fr auto; gap:1rem; align-items:center; padding:1.2rem 1.3rem; cursor:pointer; list-style:none; }
.rule-category summary::-webkit-details-marker { display:none; }
.rule-category-icon { display:grid; width:2.7rem; height:2.7rem; place-items:center; border:1px solid var(--line-strong); border-radius:14px; background:rgba(157,92,255,.08); font-size:1.15rem; }
.rule-category summary > span:nth-child(2) { display:flex; flex-direction:column; }
.rule-category summary small { color:var(--violet-light); font-size:.63rem; font-weight:700; letter-spacing:.12em; text-transform:uppercase; }
.rule-category summary strong { margin-top:.16rem; font-size:1.08rem; }
.rule-category summary i { color:var(--violet-light); font-size:1.25rem; font-style:normal; transition:transform .2s ease; }
.rule-category[open] summary i { transform:rotate(45deg); }
.rule-items { padding:0 1.3rem 1.3rem; }
.rule-items article { display:grid; grid-template-columns:1.3rem 1fr; gap:.65rem; padding:1rem 0; border-top:1px solid rgba(202,171,255,.1); }
.rule-items article > span { color:var(--violet-light); }
.rule-items h3 { margin-bottom:.35rem; font-size:.9rem; }
.rule-items p { margin:0; color:var(--muted); font-size:.8rem; line-height:1.62; }
.packlimits-head { margin:2.3rem 0 1rem; }
.packlimits-head .eyebrow { margin-bottom:.55rem; }
.packlimits-head h3 { margin:0; font-size:1.45rem; }
.packlimit-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:.75rem; padding:0 1.3rem 1.3rem; }
.packlimits-category { margin-top:0; }
.packlimit-card { padding:1rem; border:1px solid var(--line); border-radius:18px; background:rgba(16,11,25,.75); }
.packlimit-card h4 { display:flex; align-items:center; gap:.55rem; margin-bottom:.8rem; font-size:.88rem; }
.packlimit-card p { display:flex; justify-content:space-between; margin:0; padding:.38rem .15rem; border-top:1px solid rgba(202,171,255,.08); color:var(--muted); font-size:.72rem; }
.packlimit-card p strong { color:var(--lavender); }

.home-section { display:grid; grid-template-columns:1.05fr .95fr; gap:clamp(3rem,8vw,8rem); align-items:center; padding-block:6.5rem; }
.home-copy { padding:2rem; border-left:1px solid var(--line-strong); color:var(--muted); line-height:1.8; }
.home-copy p:last-child { margin-bottom:0; color:var(--muted-strong); }

.cta-section { position:relative; margin-bottom:6rem; padding:clamp(4rem,8vw,7rem) clamp(1.5rem,7vw,6rem); border:1px solid var(--line-strong); border-radius:var(--radius-lg); background:linear-gradient(135deg,rgba(70,36,111,.84),rgba(17,11,27,.95)); box-shadow:var(--shadow); overflow:hidden; }
.cta-section::after { content:'✦'; position:absolute; right:5%; top:50%; color:rgba(214,180,255,.12); font-size:18rem; line-height:1; transform:translateY(-50%) rotate(12deg); }
.cta-section > * { position:relative; z-index:1; }
.cta-section h2 { margin-bottom:.8rem; max-width:900px; font-size:clamp(2.6rem,6vw,5.4rem); letter-spacing:-.06em; line-height:1; }
.cta-section > p:not(.eyebrow) { max-width:650px; margin-bottom:1.8rem; color:rgba(241,232,251,.72); line-height:1.7; }
.cta-glow { position:absolute; right:-8%; bottom:-90%; z-index:0; width:34rem; height:34rem; border-radius:50%; background:rgba(160,76,255,.3); filter:blur(55px); }

.site-footer { padding:0 1.5rem 3rem; }
.footer-inner { display:grid; grid-template-columns:1fr auto 1fr; gap:2rem; align-items:center; width:min(1180px,100%); margin-inline:auto; padding-top:2rem; border-top:1px solid var(--line); }
.footer-inner > p { margin:0; color:var(--muted); font-size:.82rem; }
.footer-meta { display:flex; align-items:flex-end; justify-content:flex-end; gap:.55rem; flex-direction:column; color:rgba(204,197,216,.7); font-size:.79rem; }
.footer-links { display:flex; align-items:center; justify-content:flex-end; gap:1rem; flex-wrap:wrap; }
.footer-links a, .footer-links button { padding:0; border:0; background:none; color:inherit; font:inherit; text-decoration:none; cursor:pointer; }
.footer-links a:hover, .footer-links button:hover { color:var(--violet-light); }
.footer-brand .brand-mark { width:2.25rem; height:2.25rem; }

.legal-dialog { width:min(860px,calc(100% - 2rem)); max-width:none; max-height:min(860px,calc(100% - 2rem)); padding:0; border:1px solid var(--line-strong); border-radius:26px; background:transparent; color:var(--text); box-shadow:0 34px 100px rgba(0,0,0,.7); overflow:hidden; }
.legal-dialog::backdrop { background:rgba(5,3,10,.78); backdrop-filter:blur(8px); }
.legal-dialog-card { position:relative; max-height:min(860px,calc(100vh - 2rem)); padding:clamp(1.6rem,5vw,2.7rem); background:linear-gradient(145deg,rgba(34,21,52,.98),rgba(11,7,18,.99)); overflow:auto; scrollbar-color:rgba(201,159,255,.3) transparent; }
.legal-dialog-card h2 { margin:.75rem 0 1rem; font-size:clamp(2rem,6vw,3.2rem); letter-spacing:-.04em; }
.legal-dialog-card > p { margin:0; color:var(--muted-strong); line-height:1.75; }
.legal-placeholder { display:inline-flex; padding:.42rem .68rem; border:1px solid rgba(201,159,255,.26); border-radius:999px; background:rgba(157,92,255,.12); color:var(--lavender); font-size:.66rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.legal-placeholder-note { margin-top:1.3rem !important; padding-top:1.1rem; border-top:1px solid var(--line); color:var(--muted) !important; font-size:.82rem; }
.legal-dialog-close { position:absolute; top:1rem; right:1rem; display:grid; width:2.35rem; height:2.35rem; place-items:center; border:1px solid var(--line); border-radius:50%; background:rgba(255,255,255,.04); color:var(--text); font:inherit; font-size:1.35rem; line-height:1; cursor:pointer; }
.legal-dialog-close:hover { border-color:var(--line-strong); background:rgba(157,92,255,.14); }
.legal-content { padding-right:.65rem; color:var(--muted-strong); font-size:.91rem; line-height:1.72; }
.legal-content h1,.legal-content h2,.legal-content h3,.legal-content h4 { color:var(--text); font-family:'Manrope',sans-serif; letter-spacing:-.025em; }
.legal-content h1 { margin:0 3rem 1.5rem 0; font-size:clamp(2rem,5vw,3.25rem); }
.legal-content h2 { margin:1.8rem 3rem .9rem 0; font-size:clamp(1.55rem,4vw,2.35rem); }
.legal-content h2:first-child { margin-top:0; }
.legal-content h3 { margin:1.5rem 0 .65rem; font-size:1.12rem; }
.legal-content h4 { margin:1.2rem 0 .5rem; font-size:.98rem; }
.legal-content p { margin:.65rem 0; }
.legal-content ul,.legal-content ol { display:grid; gap:.42rem; padding-left:1.25rem; }
.legal-content a { color:var(--lavender); overflow-wrap:anywhere; }
.legal-content small { color:var(--muted); }
.legal-content table { display:block; width:100%!important; margin:1rem 0; border:0!important; border-collapse:separate!important; border-spacing:0; overflow-x:auto; }
.legal-content th,.legal-content td { min-width:150px; padding:.7rem!important; border:1px solid rgba(202,171,255,.13)!important; background:rgba(255,255,255,.025); text-align:left; vertical-align:top; }
.legal-content th { background:rgba(157,92,255,.12); color:var(--text); }

.consent-banner { position:fixed; right:1rem; bottom:1rem; left:1rem; z-index:10000; display:grid; grid-template-columns:minmax(0,1fr) auto; gap:1.4rem; width:min(1080px,calc(100% - 2rem)); margin:auto; padding:1.3rem; border:1px solid rgba(201,159,255,.3); border-radius:24px; background:linear-gradient(145deg,rgba(30,20,46,.94),rgba(10,7,17,.97)); box-shadow:0 28px 90px rgba(0,0,0,.65),0 0 45px rgba(116,53,196,.13),inset 0 1px rgba(255,255,255,.06); backdrop-filter:blur(20px); }
.consent-banner[hidden] { display:none; }
.consent-banner-copy { max-width:700px; }
.consent-kicker { color:var(--lavender); font-size:.65rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.consent-banner h2,.consent-dialog h2 { margin:.35rem 0 .5rem; color:var(--text); font-family:'Manrope',sans-serif; letter-spacing:-.035em; }
.consent-banner h2 { font-size:clamp(1.35rem,3vw,2rem); }
.consent-banner p,.consent-dialog-card > p { margin:0; color:var(--muted-strong); font-size:.86rem; line-height:1.6; }
.consent-actions,.consent-dialog-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.6rem; }
.consent-actions { justify-content:flex-end; align-self:center; }
.consent-button { min-height:42px; padding:.68rem .95rem; border:1px solid rgba(201,159,255,.24); border-radius:12px; background:rgba(255,255,255,.04); color:var(--text); font:inherit; font-size:.76rem; font-weight:800; cursor:pointer; }
.consent-button:hover { border-color:rgba(201,159,255,.5); background:rgba(157,92,255,.12); }
.consent-button-primary { background:linear-gradient(135deg,#ad66ff,#7d3bd4); border-color:rgba(220,187,255,.5); box-shadow:0 10px 28px rgba(125,59,212,.28); }
.consent-button-primary:hover { background:linear-gradient(135deg,#ba7aff,#8b48e0); }
.consent-button-quiet { color:var(--lavender); }
.consent-dialog { width:min(680px,calc(100% - 2rem)); max-width:none; padding:0; border:1px solid rgba(201,159,255,.3); border-radius:26px; background:transparent; color:var(--text); box-shadow:0 34px 100px rgba(0,0,0,.72); }
.consent-dialog::backdrop { background:rgba(5,3,10,.8); backdrop-filter:blur(8px); }
.consent-dialog-card { position:relative; padding:clamp(1.5rem,5vw,2.6rem); background:linear-gradient(145deg,rgba(34,21,52,.99),rgba(11,7,18,.99)); }
.consent-dialog-close { position:absolute; top:1rem; right:1rem; display:grid; width:2.35rem; height:2.35rem; place-items:center; border:1px solid var(--line); border-radius:50%; background:rgba(255,255,255,.04); color:var(--text); font:inherit; font-size:1.35rem; cursor:pointer; }
.consent-category { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:1rem; align-items:center; margin-top:.8rem; padding:1rem; border:1px solid var(--line); border-radius:16px; background:rgba(255,255,255,.03); }
.consent-category:first-of-type { margin-top:1.25rem; }
.consent-category > div { display:flex; min-width:0; flex-direction:column; gap:.25rem; }
.consent-category strong { color:var(--text); font-size:.9rem; }
.consent-category small { color:var(--muted); font-size:.74rem; line-height:1.45; }
.consent-switch { display:grid; grid-template-columns:42px auto; gap:.55rem; align-items:center; cursor:pointer; }
.consent-switch input { position:absolute; opacity:0; pointer-events:none; }
.consent-switch > span { position:relative; width:42px; height:24px; border:1px solid rgba(201,159,255,.25); border-radius:999px; background:rgba(255,255,255,.07); transition:.2s; }
.consent-switch > span::after { content:''; position:absolute; top:3px; left:3px; width:16px; height:16px; border-radius:50%; background:#a39aac; transition:.2s; }
.consent-switch input:checked + span { background:rgba(157,92,255,.32); border-color:rgba(201,159,255,.55); }
.consent-switch input:checked + span::after { left:21px; background:#e6d2ff; box-shadow:0 0 12px rgba(201,159,255,.45); }
.consent-switch em { color:var(--muted); font-size:.68rem; font-style:normal; font-weight:700; }
.consent-policy-link { margin:1rem 0; }
.consent-policy-link button { padding:0; border:0; background:none; color:var(--lavender); font:inherit; font-size:.76rem; font-weight:700; text-decoration:underline; cursor:pointer; }
.external-media-placeholder { display:grid; min-height:220px; place-items:center; padding:1.5rem; border:1px solid rgba(201,159,255,.2); border-radius:20px; background:linear-gradient(145deg,rgba(30,20,46,.62),rgba(15,10,23,.82)); text-align:center; }
.external-media-placeholder > div { display:flex; max-width:520px; flex-direction:column; align-items:center; gap:.75rem; }
.external-media-placeholder strong { color:var(--text); }
.external-media-placeholder p { margin:0; color:var(--muted); line-height:1.55; }
@media (max-width:780px) { .consent-banner { grid-template-columns:1fr; } .consent-actions { justify-content:flex-start; } }
@media (max-width:520px) { .consent-banner { right:.6rem; bottom:.6rem; left:.6rem; width:calc(100% - 1.2rem); padding:1rem; border-radius:19px; } .consent-actions,.consent-dialog-actions { display:grid; grid-template-columns:1fr; } .consent-button { width:100%; } .consent-category { grid-template-columns:1fr; } .legal-dialog { width:calc(100% - 1rem); max-height:calc(100% - 1rem); } }

.back-to-top { position:fixed; right:1.4rem; bottom:1.4rem; z-index:40; display:grid; width:3.15rem; height:3.15rem; place-items:center; border:1px solid rgba(201,159,255,.32); border-radius:50%; background:linear-gradient(145deg,rgba(54,31,82,.94),rgba(17,10,27,.96)); box-shadow:0 14px 38px rgba(0,0,0,.48),0 0 24px rgba(157,92,255,.14); color:var(--lavender); font:700 1.4rem/1 system-ui,sans-serif; opacity:0; visibility:hidden; pointer-events:none; transform:translateY(12px); transition:opacity .2s ease,visibility .2s ease,transform .2s ease,border-color .2s ease,background .2s ease; cursor:pointer; }
.back-to-top.is-visible { opacity:1; visibility:visible; pointer-events:auto; transform:translateY(0); }
.back-to-top:hover { border-color:rgba(201,159,255,.68); background:linear-gradient(145deg,rgba(117,61,178,.96),rgba(35,19,53,.98)); color:#fff; }
.back-to-top:focus-visible { outline:2px solid var(--violet-light); outline-offset:4px; }

[data-reveal] { opacity:0; transform:translateY(24px); transition:opacity .75s cubic-bezier(.2,.8,.2,1),transform .75s cubic-bezier(.2,.8,.2,1); }
[data-reveal].is-visible { opacity:1; transform:translateY(0); }
.discord-choice:nth-child(2), .feature-group:nth-child(2) { transition-delay:80ms; }
.feature-group:nth-child(3) { transition-delay:160ms; }
.feature-group:nth-child(4) { transition-delay:240ms; }

@media (max-width: 1020px) {
	.nav-links { display:none; }
	.hero-layout { grid-template-columns:1fr .82fr; gap:3rem; }
	.about { grid-template-columns:1fr; gap:2rem; }
	.about-copy { padding-top:0; max-width:720px; }
	.section-heading.feature-heading { grid-template-columns:1fr; gap:1.2rem; }
	.section-heading.feature-heading > p { max-width:680px; }
	.rules-section { grid-template-columns:1fr; }
	.rules-intro { position:static; max-width:720px; }
	.footer-inner { grid-template-columns:1fr 1fr; }
	.footer-inner > p { display:none; }
}

@media (max-width: 760px) {
	:root { --radius-lg:25px; --radius-md:19px; }
	.status-dock { top:.65rem; max-width:calc(100% - 1rem); overflow-x:auto; scrollbar-width:none; }
	.status-dock::-webkit-scrollbar { display:none; }
	.status-item { padding:.62rem .72rem; font-size:.7rem; }
	#discordMembers { display:none; }
	.section-shell { width:min(100% - 2rem,1180px); }
	.site-nav { top:4.4rem; width:calc(100% - 2rem); }
	.brand-copy small { display:none; }
	.nav-actions { gap:.45rem; }
	.nav-cta { display:none; }
	.language-switch button { width:2rem; }
	.hero { min-height:1180px; padding-top:9rem; padding-bottom:5rem; }
	.hero-layout { display:flex; min-height:0; flex-direction:column; gap:3.3rem; }
	.hero h1 { font-size:clamp(3rem,14vw,4.4rem); }
	.hero-lead { font-size:.94rem; }
	.hero-actions .button { width:100%; }
	.hero-action-help { font-size:.73rem; }
	.nyors-panel { width:min(460px,100%); align-self:center; }
	.about { padding-block:4.75rem 2.5rem; }
	.about-heading h2, .section-heading h2, .home-section h2 { font-size:clamp(2.45rem,12vw,3.6rem); }
	.principle-row { grid-template-columns:1fr; }
	.principle-row article, .principle-row article:first-child { padding:1.25rem 0; border-left:0; border-top:1px solid var(--line); }
	.principle-row article:first-child { border-top:0; }
	.brand-visual { width:calc(100% - 2rem); }
	.brand-visual img { aspect-ratio:1.7/1; }
	.brand-visual-quote { margin-top:1rem; }
	.discord-section { padding-block:4.75rem; }
	.access-choice-grid, .feature-groups { grid-template-columns:1fr; }
	.community-join-banner { grid-template-columns:auto 1fr; }
	.community-join-banner > .button { grid-column:1/-1; width:100%; }
	.discord-choice { min-height:430px; padding:1.5rem; }
	.choice-icon { margin-bottom:3rem; }
	.features-section { padding-block:4.75rem; }
	.feature-group { padding:1.35rem; }
	.rules-section { padding-block:4.75rem; }
	.packlimit-grid { grid-template-columns:1fr; }
	.home-section { grid-template-columns:1fr; gap:2.4rem; padding-block:4.75rem; }
	.home-copy { padding:0 0 0 1.25rem; }
	.cta-section { margin-bottom:5rem; padding-inline:1.35rem; }
	.cta-section::after { right:-20%; font-size:12rem; }
	.cta-actions .button { width:100%; }
	.footer-inner { display:flex; flex-direction:column; align-items:flex-start; }
	.footer-meta { width:100%; align-items:flex-start; }
	.footer-links { justify-content:flex-start; }
	.back-to-top { right:1rem; bottom:1rem; width:2.9rem; height:2.9rem; }
}

@media (max-width: 430px) {
	.hero { min-height:1210px; }
	.brand-copy strong { font-size:.78rem; }
	.nyors-panel { padding:.9rem; border-radius:23px; }
	.nyors-panel-head { grid-template-columns:auto 1fr; }
	.connection-state { display:none; }
	.nyors-feature-grid { grid-template-columns:1fr 1fr; }
	.nyors-actions { align-items:stretch; flex-direction:column; }
	.nyors-actions .button { width:100%; }
	.panel-text-link { justify-content:center; padding:.45rem; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior:auto; }
	*,*::before,*::after { transition-duration:.01ms !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; }
	[data-reveal] { opacity:1; transform:none; }
}
