*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
    --accent: #ea7814;
    --accent-dim: rgba(234, 120, 20, 0.12);
    --accent-border: rgba(234, 120, 20, 0.3);
    --bg: #0d0f18;
    --card-bg: rgba(255, 255, 255, 0.04);
    --card-border: rgba(255, 255, 255, 0.1);
    --text: rgba(255, 255, 255, 0.85);
    --text-muted: rgba(255, 255, 255, 0.4);
}

html, body {
    min-height: 100vh;
    background-color: var(--bg);
    font-family: 'Inter', sans-serif;
    color: var(--text);
    overscroll-behavior: none;
}

/* Star background */
.stars-layer {
    position: fixed;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    overflow: hidden;
}

#stars1, #stars2, #stars3 {
    position: absolute;
    border-radius: 50%;
    background: transparent;
    animation: moveStar linear infinite;
}

#stars1 { width: 1px; height: 1px; animation-duration: 120s;
    box-shadow: 779px 1331px #fff, 324px 42px #fff, 303px 586px #fff, 1312px 276px #fff, 451px 625px #fff, 521px 931px #fff, 887px 871px #fff, 136px 546px #fff, 332px 934px #fff, 698px 901px #fff, 418px 664px #fff, 448px 957px #fff, 884px 232px #fff, 547px 776px #fff, 722px 243px #fff, 629px 835px #fff, 479px 669px #fff, 531px 960px #fff, 386px 384px #fff, 464px 527px #fff, 208px 646px #fff, 550px 426px #fff, 465px 757px #fff, 556px 782px #fff, 360px 461px #fff, 475px 741px #fff, 743px 514px #fff, 318px 628px #fff, 342px 343px #fff, 497px 880px #fff, 764px 230px #fff, 739px 302px #fff, 436px 959px #fff, 304px 686px #fff, 614px 751px #fff, 935px 816px #fff, 428px 460px #fff, 555px 335px #fff, 594px 158px #fff, 390px 460px #fff, 553px 162px #fff, 639px 825px #fff, 945px 587px #fff, 749px 785px #fff, 987px 172px #fff, 701px 237px #fff, 239px 342px #fff, 585px 481px #fff, 495px 948px #fff, 524px 932px #fff;
}

#stars2 { width: 2px; height: 2px; animation-duration: 200s;
    box-shadow: 100px 200px #fff, 400px 300px #fff, 700px 100px #fff, 200px 500px #fff, 900px 400px #fff, 350px 750px #fff, 600px 50px #fff, 800px 650px #fff, 150px 850px #fff, 500px 600px #fff, 250px 150px #fff, 750px 350px #fff, 450px 450px #fff, 650px 550px #fff, 300px 700px #fff, 850px 250px #fff, 50px 400px #fff, 950px 800px #fff, 120px 320px #fff, 680px 480px #fff;
}

#stars3 { width: 3px; height: 3px; animation-duration: 280s;
    box-shadow: 200px 100px rgba(255,255,255,0.8), 600px 400px rgba(255,255,255,0.8), 100px 700px rgba(255,255,255,0.8), 800px 200px rgba(255,255,255,0.8), 400px 600px rgba(255,255,255,0.8), 700px 800px rgba(255,255,255,0.8), 300px 300px rgba(255,255,255,0.8), 900px 500px rgba(255,255,255,0.8);
}

@keyframes moveStar {
    from { transform: translateY(0); }
    to   { transform: translateY(-2000px); }
}

/* Glow overlay */
.glow {
    position: fixed;
    inset: 0;
    z-index: 0;
    pointer-events: none;
    background:
        radial-gradient(ellipse at 30% 15%, rgba(234,120,20,0.07) 0%, transparent 55%),
        radial-gradient(ellipse at 75% 85%, rgba(234,120,20,0.05) 0%, transparent 45%);
}

/* Page wrapper */
.page {
    position: relative;
    z-index: 1;
    max-width: 520px;
    margin: 0 auto;
    padding: 48px 20px 80px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

/* Header / logo */
.logo-ring {
    width: 90px;
    height: 90px;
    border-radius: 50%;
    border: 2px solid var(--accent-border);
    background: rgba(255,255,255,0.04);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    margin-bottom: 14px;
}

.logo-ring img {
    width: 72px;
    height: 72px;
    object-fit: contain;
    border-radius: 50%;
}

.page-title {
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 3px;
    text-transform: uppercase;
    text-align: center;
    color: #fff;
}

.page-subtitle {
    font-size: 11px;
    color: var(--text-muted);
    letter-spacing: 2px;
    text-align: center;
    margin-top: 4px;
    text-transform: uppercase;
}

/* Address block */
.address-block {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-top: 16px;
    background: var(--card-bg);
    border: 0.5px solid var(--card-border);
    border-radius: 10px;
    padding: 10px 16px;
    font-size: 12px;
    color: var(--text-muted);
    text-align: center;
    line-height: 1.6;
    width: 100%;
    justify-content: center;
    flex-wrap: wrap;
}

.address-block .pin-icon {
    color: var(--accent);
    flex-shrink: 0;
    font-size: 16px;
}

.address-block strong {
    color: rgba(255,255,255,0.7);
}

/* Section divider & badge */
.section-sep {
    width: 100%;
    height: 0.5px;
    background: rgba(255,255,255,0.07);
    margin: 24px 0 16px;
}

.section-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    background: var(--accent-dim);
    border: 0.5px solid var(--accent-border);
    border-radius: 20px;
    padding: 4px 12px 4px 10px;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 1.5px;
    color: var(--accent);
    text-transform: uppercase;
    margin-bottom: 12px;
    align-self: flex-start;
}

.section-badge i { font-size: 13px; }

/* Link cards */
.links {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.link-item {
    display: flex;
    align-items: center;
    gap: 14px;
    background: var(--card-bg);
    border: 0.5px solid var(--card-border);
    border-radius: 12px;
    padding: 11px 14px;
    text-decoration: none;
    color: inherit;
    transition: border-color 0.15s, background 0.15s;
}

.link-item:hover {
    border-color: var(--accent-border);
    background: rgba(234,120,20,0.06);
}

.link-icon {
    width: 36px;
    height: 36px;
    border-radius: 9px;
    background: var(--accent-dim);
    border: 0.5px solid var(--accent-border);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: var(--accent);
    font-size: 18px;
}

.link-text { flex: 1; }
.link-name  { font-size: 13px; font-weight: 500; color: var(--text); }
.link-domain { font-size: 11px; color: var(--text-muted); margin-top: 2px; }

.link-arrow {
    color: var(--text-muted);
    font-size: 15px;
    flex-shrink: 0;
}

/* Responsive */
@media (max-width: 480px) {
    .page { padding: 36px 16px 64px; }
    .page-title { font-size: 18px; letter-spacing: 2px; }
}
