:root {
            --black: #000;
            --panel: #0a0a0a;
            --surface: #131314;
            --line: #343535;
            --line-soft: #222;
            --text: #fff;
            --muted: #cac8aa;
            --muted-dim: rgba(202, 200, 170, .58);
            --yellow: #eaea00;
            --container: 1280px;
            --margin: clamp(16px, 5.6vw, 64px);
            --mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Consolas, monospace;
            --display: "Space Grotesk", Arial, sans-serif;
        }

        * {
            box-sizing: border-box;
            margin: 0;
            padding: 0;
        }

        html {
            scroll-behavior: smooth;
        }

        body {
            min-height: 100vh;
            background: var(--black);
            color: var(--text);
            font-family: var(--mono);
            font-size: 16px;
            line-height: 1.6;
        }

        #diffusi-bg {
            position: fixed;
            inset: 0;
            width: 100%;
            height: 100%;
            z-index: 0;
            pointer-events: none;
        }

        a {
            color: inherit;
        }

        .site-header,
        main,
        .site-footer {
            position: relative;
            z-index: 1;
        }

        .site-header,
        .site-footer {
            background: var(--surface);
            border-color: var(--line);
        }

        .site-header {
            position: sticky;
            top: 0;
            z-index: 10;
            border-bottom: 1px solid var(--line);
        }

        .nav,
        .footer-inner,
        .section {
            width: min(100%, var(--container));
            margin: 0 auto;
            padding-left: var(--margin);
            padding-right: var(--margin);
        }

        .nav {
            min-height: 70px;
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 24px;
        }

        .header-logo {
            display: block;
            width: 108px;
            height: auto;
        }

        .nav-links {
            display: flex;
            align-items: center;
            gap: clamp(20px, 3vw, 36px);
            list-style: none;
        }

        .nav-link,
        .label,
        .footer-link {
            font-family: var(--mono);
            font-size: 12px;
            font-weight: 700;
            letter-spacing: .1em;
        }

        .nav-link {
            color: var(--muted);
            text-decoration: none;
            transition: color .16s ease;
        }

        .nav-link:hover,
        .nav-link.active {
            color: var(--yellow);
        }

        .nav-link.active {
            border-bottom: 1px solid var(--yellow);
            padding-bottom: 5px;
        }

        .contact-button:hover {
            background: var(--text);
            color: var(--black);
            border-color: var(--text);
        }

        .hero {
            min-height: calc(100vh - 70px);
            display: flex;
            align-items: center;
            justify-content: center;
            border-bottom: 1px solid var(--line);
            text-align: center;
            padding-top: 56px;
            padding-bottom: 56px;
            background: linear-gradient(180deg, rgba(0, 0, 0, .66), rgba(0, 0, 0, .84));
        }

        .hero-inner {
            width: min(100%, 760px);
            display: flex;
            flex-direction: column;
            align-items: center;
        }

        .hero-logo {
            width: min(100%, 670px);
            height: auto;
            margin-bottom: 58px;
        }

        h1 {
            font-family: var(--display);
            font-size: clamp(44px, 6vw, 72px);
            font-weight: 700;
            line-height: 1.08;
            text-transform: uppercase;
        }

        h1 span {
            color: var(--yellow);
        }

        .hero-copy {
            max-width: 720px;
            margin: 56px auto 0;
            color: var(--muted);
            font-size: clamp(13px, 1.35vw, 16px);
            line-height: 1.65;
        }

        .hero-status {
            display: flex;
            align-items: center;
            justify-content: center;
            flex-wrap: wrap;
            gap: 18px 32px;
            margin-top: 36px;
            color: rgba(202, 200, 170, .48);
            font-family: var(--mono);
            font-size: 11px;
            line-height: 1;
            letter-spacing: .12em;
            text-transform: uppercase;
        }

        .status-item {
            display: inline-flex;
            align-items: center;
            gap: 8px;
        }

        .status-item::before {
            content: "";
            width: 7px;
            height: 7px;
            background: #d1ad5c;
        }

        .status-item.online::before {
            background: #00d6c9;
        }

        .status-label {
            color: var(--muted);
        }

        .contact-button {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            min-width: 196px;
            min-height: 48px;
            margin-top: 60px;
            background: var(--yellow);
            color: #1d1d00;
            font-family: var(--mono);
            font-size: 12px;
            font-weight: 700;
            letter-spacing: .08em;
            text-decoration: none;
            border: 1px solid transparent;
            transition: background .16s ease, color .16s ease, border-color .16s ease;
        }

        .portals {
            padding-top: 96px;
            padding-bottom: 96px;
            background: rgba(0, 0, 0, .74);
        }

        .section-title {
            display: grid;
            grid-template-columns: auto auto 1fr;
            align-items: center;
            gap: 16px;
            margin-bottom: 70px;
        }

        .marker {
            width: 16px;
            height: 16px;
            background: var(--yellow);
        }

        h2 {
            font-family: var(--display);
            font-size: clamp(25px, 3vw, 34px);
            line-height: 1.2;
            text-transform: uppercase;
        }

        .rule {
            height: 1px;
            background: var(--line);
            margin-left: 14px;
        }

        .portal-grid {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            border-top: 1px solid var(--line);
            border-left: 1px solid var(--line);
        }

        .portal {
            min-height: 200px;
            position: relative;
            display: flex;
            align-items: center;
            justify-content: center;
            overflow: hidden;
            background: var(--panel);
            border-right: 1px solid var(--line);
            border-bottom: 1px solid var(--line);
            color: rgba(255, 255, 255, .7);
            text-decoration: none;
            transition: background .16s ease, color .16s ease;
        }

        .portal:hover {
            background: #111;
            color: #fff;
        }

        .portal-logo {
            display: block;
            width: auto;
            max-width: min(70%, 250px);
            max-height: 78px;
            object-fit: contain;
            opacity: .72;
            transition: opacity .16s ease, transform .16s ease;
        }

        .portal:hover .portal-logo {
            opacity: 1;
            transform: translateY(-2px);
        }

        .portal.gamer .portal-logo {
            max-width: min(64%, 360px);
            max-height: 108px;
        }

        .portal.fakultativ .portal-logo {
            max-width: min(74%, 270px);
            max-height: 76px;
        }

        .portal.streamlife .portal-logo {
            max-width: min(76%, 280px);
            max-height: 74px;
        }

        .portal.brothers .portal-logo,
        .portal.connectedhome .portal-logo,
        .portal.hublife .portal-logo {
            max-width: min(76%, 280px);
            max-height: 82px;
        }

        .portal.spacelife {
            grid-column: span 2;
            min-height: 220px;
        }

        .portal.spacelife .portal-logo {
            max-width: min(58%, 360px);
            max-height: 96px;
        }

        .portal.real .portal-logo {
            max-height: 88px;
        }

        .label {
            position: absolute;
            left: 16px;
            bottom: 16px;
            color: var(--muted);
            text-transform: uppercase;
            transition: color .16s ease;
        }

        .portal:hover .label {
            color: var(--yellow);
        }

        .site-footer {
            border-top: 1px solid var(--line);
        }

        .footer-inner {
            min-height: 80px;
            display: grid;
            grid-template-columns: auto 1fr auto;
            align-items: center;
            gap: 20px;
            padding-top: 16px;
            padding-bottom: 16px;
        }

        .footer-links {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            gap: 8px 18px;
        }

        .footer-link {
            color: var(--muted);
            opacity: .85;
            transition: color .16s ease, opacity .16s ease;
        }

        .footer-link:hover,
        .footer-link.mail {
            color: var(--yellow);
            opacity: 1;
        }

        .footer-logo {
            display: block;
            width: 110px;
            height: auto;
        }

        .copyright {
            max-width: 290px;
            color: rgba(202, 200, 170, .5);
            font-size: 12px;
            letter-spacing: .1em;
            line-height: 1.35;
            text-transform: uppercase;
        }

        @media (max-width: 860px) {
            .nav-links {
                gap: 18px;
            }

            .hero {
                min-height: auto;
            }

            .hero-logo {
                margin-bottom: 42px;
            }

            .hero-copy {
                margin-top: 36px;
            }

            .hero-status {
                margin-top: 28px;
            }

            .contact-button {
                margin-top: 42px;
            }

            .portal-grid {
                grid-template-columns: 1fr;
            }

            .portal.spacelife {
                grid-column: auto;
                min-height: 200px;
            }

            .footer-inner {
                grid-template-columns: 1fr;
            }
        }

        @media (max-width: 520px) {
            .hero {
                padding-top: 42px;
                padding-bottom: 48px;
            }

            .hero-logo {
                margin-bottom: 34px;
            }

            h1 {
                font-size: clamp(36px, 13vw, 48px);
            }

            .header-logo {
                width: 92px;
            }

            .nav-link {
                font-size: 10px;
            }

            .portals {
                padding-top: 64px;
                padding-bottom: 64px;
            }

            .section-title {
                gap: 12px;
                margin-bottom: 42px;
            }

            .rule {
                margin-left: 0;
            }

            .portal {
                min-height: 170px;
            }
        }