/* ===== Global Reset & Base ===== */
*, *::before, *::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
    overflow-x: hidden;
}

html, body {
    font-family: 'Satoshi', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    color: #e0e4ea;
    background: #000000;
    line-height: 1.6;
}

a {
    color: #0077ee;
    text-decoration: none;
}

a:hover {
    text-decoration: underline;
}

img {
    max-width: 100%;
    height: auto;
}

/* ===== Utility ===== */
.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
}

.text-center {
    text-align: center;
}

/* ===== Hero Sections ===== */
.hero {
    background: #000000;
    color: #ffffff;
    padding: 5rem 2rem;
    text-align: left;
    position: relative;
    overflow: hidden;
}

/* Starfield layer - small stars pass 1 */
.hero .stars-sm {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: transparent;
    box-shadow:
        6.9vw 41.4vh #fff, 11.3vw 75.0vh #fff, 51.1vw 5.4vh #fff, 4.8vw 73.4vh #fff, 15.6vw 73.1vh #fff,
        63.0vw 50.4vh #fff, 85.4vw 60.2vh #fff, 57.3vw 40.1vh #fff, 25.0vw 14.2vh #fff, 42.4vw 37.7vh #fff,
        77.1vw 27.1vh #fff, 39.9vw 94.2vh #fff, 62.0vw 66.0vh #fff, 68.7vw 90.6vh #fff, 20.8vw 76.8vh #fff,
        6.8vw 25.7vh #fff, 59.5vw 32.0vh #fff, 48.8vw 22.5vh #fff, 25.7vw 43.8vh #fff, 61.1vw 69.1vh #fff,
        50.0vw 38.0vh #fff, 96.3vw 77.4vh #fff, 54.8vw 54.2vh #fff, 15.1vw 20.2vh #fff, 8.7vw 93.7vh #fff,
        82.7vw 6.7vh #fff, 69.2vw 37.5vh #fff, 66.3vw 43.8vh #fff, 32.9vw 7.8vh #fff, 19.5vw 42.7vh #fff,
        71.6vw 16.2vh #fff, 44.0vw 96.2vh #fff, 10.5vw 40.8vh #fff, 85.3vw 64.9vh #fff, 94.7vw 60.3vh #fff,
        64.6vw 23.4vh #fff, 40.8vw 52.5vh #fff, 86.9vw 66.7vh #fff, 37.3vw 87.7vh #fff, 61.3vw 72.1vh #fff,
        17.6vw 26.5vh #fff, 59.6vw 42.9vh #fff, 25.7vw 91.5vh #fff, 95.8vw 67.5vh #fff, 97.2vw 71.9vh #fff,
        45.6vw 12.6vh #fff, 56.5vw 90.3vh #fff, 57.1vw 73.7vh #fff, 37.8vw 3.1vh #fff, 51.1vw 34.5vh #fff,
        56.5vw 96.8vh #fff, 94.7vw 91.0vh #fff, 64.8vw 52.7vh #fff, 53.9vw 91.4vh #fff, 1.1vw 3.8vh #fff,
        8.0vw 45.1vh #fff, 98.5vw 89.7vh #fff, 55.9vw 94.8vh #fff, 72.2vw 81.4vh #fff, 26.0vw 12.1vh #fff,
        22.1vw 85.2vh #fff, 87.9vw 59.1vh #fff, 15.5vw 40.1vh #fff, 27.2vw 58.2vh #fff, 76.0vw 85.5vh #fff,
        60.4vw 31.4vh #fff, 35.7vw 21.7vh #fff, 11.8vw 4.5vh #fff, 12.6vw 91.3vh #fff, 50.7vw 96.1vh #fff,
        51.0vw 28.0vh #fff, 27.9vw 47.0vh #fff, 64.0vw 29.6vh #fff, 72.1vw 1.8vh #fff, 67.1vw 20.3vh #fff,
        12.8vw 82.1vh #fff, 75.4vw 23.1vh #fff, 3.9vw 72.4vh #fff, 91.3vw 10.1vh #fff, 95.0vw 76.8vh #fff,
        23.7vw 5.3vh #fff, 69.8vw 35.8vh #fff, 27.6vw 97.0vh #fff, 13.4vw 33.9vh #fff, 55.8vw 93.3vh #fff,
        6.6vw 7.3vh #fff, 8.7vw 24.7vh #fff, 33.3vw 46.8vh #fff, 36.0vw 20.1vh #fff, 55.5vw 18.2vh #fff,
        29.4vw 9.2vh #fff, 6.6vw 45.6vh #fff, 42.0vw 64.1vh #fff, 91.3vw 74.3vh #fff, 13.7vw 71.6vh #fff,
        62.5vw 77.0vh #fff, 1.4vw 28.5vh #fff, 92.1vw 89.8vh #fff, 12.6vw 18.9vh #fff, 17.4vw 33.3vh #fff,
        92.5vw 37.6vh #fff, 48.5vw 90.4vh #fff, 78.5vw 23.2vh #fff, 63.6vw 30.3vh #fff, 19.6vw 47.3vh #fff,
        89.3vw 48.4vh #fff, 89.1vw 49.4vh #fff, 10.7vw 96.3vh #fff, 5.2vw 90.2vh #fff, 41.5vw 79.4vh #fff,
        98.0vw 18.4vh #fff, 94.2vw 2.8vh #fff, 3.6vw 7.6vh #fff, 33.3vw 52.2vh #fff, 21.5vw 72.4vh #fff,
        51.4vw 49.6vh #fff, 3.6vw 9.5vh #fff, 70.4vw 81.6vh #fff, 96.6vw 49.4vh #fff, 4.7vw 47.4vh #fff,
        43.4vw 51.8vh #fff, 52.3vw 36.7vh #fff, 25.3vw 54.4vh #fff, 22.1vw 26.7vh #fff, 28.5vw 69.0vh #fff,
        59.7vw 56.5vh #fff, 1.7vw 51.2vh #fff, 53.3vw 71.7vh #fff, 67.7vw 52.8vh #fff, 19.3vw 21.7vh #fff,
        33.2vw 73.2vh #fff, 18.6vw 35.4vh #fff, 72.9vw 59.1vh #fff, 48.9vw 45.2vh #fff, 52.6vw 50.8vh #fff,
        77.3vw 84.6vh #fff, 21.1vw 22.1vh #fff, 60.2vw 55.3vh #fff, 65.6vw 26.4vh #fff, 28.1vw 10.4vh #fff,
        28.8vw 56.3vh #fff, 13.4vw 98.8vh #fff, 21.4vw 76.0vh #fff, 35.9vw 29.2vh #fff, 40.6vw 27.2vh #fff,
        70.8vw 37.9vh #fff, 74.2vw 85.9vh #fff, 88.8vw 96.1vh #fff, 94.1vw 60.8vh #fff, 63.3vw 28.9vh #fff,
        69.1vw 45.1vh #fff, 2.4vw 61.4vh #fff, 59.6vw 30.3vh #fff, 59.2vw 82.3vh #fff, 29.3vw 64.0vh #fff,
        33.8vw 41.1vh #fff, 7.5vw 33.5vh #fff, 43.9vw 52.9vh #fff, 41.8vw 3.8vh #fff, 37.7vw 43.4vh #fff,
        37.2vw 6.9vh #fff, 25.4vw 49.4vh #fff, 10.0vw 54.1vh #fff, 62.0vw 31.7vh #fff, 27.0vw 76.2vh #fff,
        83.5vw 95.6vh #fff, 61.5vw 73.0vh #fff, 54.7vw 75.8vh #fff, 83.6vw 21.0vh #fff, 89.5vw 43.1vh #fff;
    width: 1px;
    height: 1px;
    animation: twinkle1 3s ease-in-out infinite alternate;
}

/* Starfield layer - small stars pass 2 */
.hero .stars-sm2 {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: transparent;
    box-shadow:
        96.3vw 55.9vh #fff, 47.4vw 52.3vh #fff, 76.6vw 98.4vh #fff, 42.1vw 23.4vh #fff, 37.5vw 7.2vh #fff,
        64.2vw 98.8vh #fff, 20.9vw 75.6vh #fff, 21.3vw 92.5vh #fff, 55.7vw 38.6vh #fff, 3.3vw 15.9vh #fff,
        90.0vw 19.0vh #fff, 61.4vw 55.8vh #fff, 44.4vw 71.1vh #fff, 12.8vw 66.9vh #fff, 6.6vw 21.7vh #fff,
        67.4vw 19.3vh #fff, 13.7vw 49.7vh #fff, 63.9vw 1.0vh #fff, 67.4vw 58.3vh #fff, 0.4vw 56.7vh #fff,
        0.4vw 55.4vh #fff, 60.9vw 38.6vh #fff, 36.0vw 79.0vh #fff, 19.6vw 46.5vh #fff, 49.9vw 4.9vh #fff,
        89.7vw 18.4vh #fff, 78.9vw 46.8vh #fff, 1.3vw 30.5vh #fff, 58.2vw 46.1vh #fff, 90.9vw 3.5vh #fff,
        82.7vw 85.9vh #fff, 16.5vw 50.9vh #fff, 5.2vw 57.8vh #fff, 69.3vw 29.1vh #fff, 78.4vw 24.6vh #fff,
        6.0vw 48.3vh #fff, 74.4vw 30.3vh #fff, 21.9vw 65.3vh #fff, 66.8vw 13.7vh #fff, 16.7vw 62.0vh #fff,
        78.9vw 14.7vh #fff, 63.9vw 65.8vh #fff, 4.4vw 68.0vh #fff, 48.6vw 11.1vh #fff, 13.7vw 25.9vh #fff,
        70.4vw 15.3vh #fff, 58.1vw 86.4vh #fff, 56.6vw 69.0vh #fff, 11.7vw 95.5vh #fff, 94.5vw 85.6vh #fff,
        23.4vw 59.0vh #fff, 75.0vw 13.7vh #fff, 13.4vw 89.6vh #fff, 56.0vw 91.7vh #fff, 42.1vw 93.4vh #fff,
        71.4vw 19.7vh #fff, 23.9vw 93.1vh #fff, 10.7vw 96.1vh #fff, 64.2vw 93.5vh #fff, 19.4vw 5.0vh #fff,
        93.1vw 53.6vh #fff, 28.6vw 60.4vh #fff, 14.5vw 69.7vh #fff, 62.9vw 65.5vh #fff, 37.8vw 40.4vh #fff,
        24.5vw 6.6vh #fff, 51.2vw 33.1vh #fff, 37.9vw 12.5vh #fff, 76.2vw 57.5vh #fff, 10.3vw 45.3vh #fff,
        43.1vw 83.2vh #fff, 36.1vw 31.0vh #fff, 53.2vw 84.1vh #fff, 2.4vw 94.9vh #fff, 8.5vw 3.3vh #fff,
        26.2vw 69.4vh #fff, 89.0vw 40.9vh #fff, 13.8vw 39.6vh #fff, 32.0vw 53.2vh #fff, 11.2vw 72.0vh #fff,
        85.2vw 25.8vh #fff, 45.1vw 98.6vh #fff, 22.3vw 1.2vh #fff, 67.5vw 46.5vh #fff, 42.6vw 24.6vh #fff,
        61.8vw 90.1vh #fff, 78.5vw 35.5vh #fff, 18.9vw 47.8vh #fff, 93.4vw 56.1vh #fff, 57.9vw 60.7vh #fff,
        91.0vw 98.3vh #fff, 22.0vw 73.9vh #fff, 70.3vw 47.2vh #fff, 69.6vw 11.7vh #fff, 47.1vw 12.8vh #fff,
        2.9vw 62.0vh #fff, 97.0vw 48.3vh #fff, 64.8vw 57.3vh #fff, 22.6vw 30.0vh #fff, 61.5vw 56.6vh #fff,
        5.3vw 49.0vh #fff, 53.8vw 67.2vh #fff, 12.2vw 89.4vh #fff, 53.2vw 75.5vh #fff, 73.8vw 27.6vh #fff,
        18.9vw 28.6vh #fff, 75.1vw 24.1vh #fff, 94.3vw 66.4vh #fff, 62.6vw 39.4vh #fff, 47.8vw 76.8vh #fff,
        48.6vw 85.7vh #fff, 97.8vw 55.7vh #fff, 84.7vw 17.1vh #fff, 14.7vw 36.5vh #fff, 90.9vw 8.0vh #fff,
        28.2vw 87.5vh #fff, 19.1vw 11.7vh #fff, 25.9vw 33.3vh #fff, 51.9vw 54.6vh #fff, 36.2vw 95.4vh #fff,
        70.8vw 79.9vh #fff, 75.1vw 54.0vh #fff, 75.5vw 76.8vh #fff, 92.3vw 79.4vh #fff, 72.3vw 97.7vh #fff,
        55.0vw 16.4vh #fff, 25.2vw 96.1vh #fff, 17.3vw 78.3vh #fff, 33.8vw 41.7vh #fff, 2.2vw 53.6vh #fff,
        84.0vw 76.1vh #fff, 2.1vw 63.5vh #fff, 80.3vw 30.0vh #fff, 13.0vw 16.1vh #fff, 58.1vw 22.6vh #fff,
        38.2vw 96.2vh #fff, 60.0vw 52.5vh #fff, 25.3vw 62.8vh #fff, 76.8vw 43.2vh #fff, 84.5vw 4.5vh #fff,
        18.0vw 63.8vh #fff, 14.4vw 89.2vh #fff, 31.2vw 87.6vh #fff, 2.1vw 20.5vh #fff, 73.7vw 43.1vh #fff,
        64.3vw 18.6vh #fff, 62.1vw 90.2vh #fff, 14.8vw 86.5vh #fff, 99.1vw 74.0vh #fff, 79.6vw 50.9vh #fff,
        86.2vw 69.0vh #fff, 27.4vw 72.7vh #fff, 49.9vw 80.8vh #fff, 63.0vw 85.8vh #fff, 4.8vw 71.4vh #fff,
        13.5vw 0.6vh #fff, 55.4vw 41.5vh #fff, 15.9vw 59.7vh #fff, 90.1vw 60.6vh #fff, 12.6vw 62.5vh #fff,
        96.9vw 11.7vh #fff, 1.3vw 27.1vh #fff, 25.6vw 5.1vh #fff, 35.7vw 25.2vh #fff, 12.0vw 68.8vh #fff,
        37.1vw 59.3vh #fff, 3.2vw 73.0vh #fff, 66.6vw 76.0vh #fff, 87.1vw 94.4vh #fff, 28.5vw 96.6vh #fff;
    width: 1px;
    height: 1px;
    animation: twinkle1 4s ease-in-out infinite alternate-reverse;
}

/* Starfield layer - small stars pass 3 */
.hero .stars-sm3 {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: transparent;
    box-shadow:
        44.5vw 29.6vh #fff, 90.7vw 48.4vh #fff, 9.0vw 74.7vh #fff, 7.8vw 20.5vh #fff, 7.6vw 62.7vh #fff,
        84.0vw 61.0vh #fff, 22.4vw 84.2vh #fff, 86.9vw 33.0vh #fff, 27.5vw 67.2vh #fff, 97.0vw 90.9vh #fff,
        87.4vw 71.4vh #fff, 22.9vw 61.2vh #fff, 42.8vw 63.7vh #fff, 48.7vw 20.9vh #fff, 89.5vw 4.1vh #fff,
        34.2vw 33.1vh #fff, 96.4vw 12.1vh #fff, 57.7vw 93.9vh #fff, 61.1vw 92.3vh #fff, 39.5vw 43.8vh #fff,
        37.1vw 37.0vh #fff, 34.9vw 7.9vh #fff, 98.2vw 73.1vh #fff, 67.7vw 53.2vh #fff, 20.2vw 22.8vh #fff,
        96.5vw 82.1vh #fff, 45.6vw 74.1vh #fff, 95.6vw 4.7vh #fff, 36.7vw 40.3vh #fff, 34.2vw 53.9vh #fff,
        29.6vw 12.5vh #fff, 86.7vw 42.5vh #fff, 80.0vw 13.5vh #fff, 30.9vw 49.3vh #fff, 4.0vw 41.5vh #fff,
        18.1vw 39.7vh #fff, 29.4vw 77.6vh #fff, 50.8vw 25.4vh #fff, 58.9vw 47.7vh #fff, 22.4vw 77.5vh #fff,
        58.1vw 1.8vh #fff, 54.1vw 39.9vh #fff, 8.9vw 96.6vh #fff, 62.0vw 98.8vh #fff, 47.7vw 43.8vh #fff,
        15.9vw 66.2vh #fff, 48.3vw 18.3vh #fff, 83.8vw 59.0vh #fff, 8.8vw 97.5vh #fff, 41.9vw 92.0vh #fff,
        41.1vw 5.7vh #fff, 54.9vw 40.9vh #fff, 77.9vw 49.5vh #fff, 37.1vw 41.3vh #fff, 48.2vw 72.9vh #fff,
        80.0vw 39.8vh #fff, 14.3vw 1.9vh #fff, 60.0vw 23.8vh #fff, 84.9vw 42.4vh #fff, 95.5vw 8.1vh #fff,
        83.3vw 12.2vh #fff, 24.6vw 41.1vh #fff, 28.2vw 44.8vh #fff, 50.5vw 61.6vh #fff, 3.3vw 60.9vh #fff,
        38.1vw 62.0vh #fff, 30.2vw 81.4vh #fff, 21.7vw 8.9vh #fff, 72.2vw 63.4vh #fff, 18.6vw 34.2vh #fff,
        41.5vw 20.4vh #fff, 55.7vw 42.5vh #fff, 57.8vw 76.4vh #fff, 18.7vw 27.0vh #fff, 66.5vw 59.6vh #fff,
        71.7vw 27.6vh #fff, 21.8vw 5.2vh #fff, 30.9vw 25.7vh #fff, 74.0vw 34.2vh #fff, 78.1vw 12.0vh #fff,
        29.0vw 42.9vh #fff, 23.4vw 47.8vh #fff, 96.9vw 45.7vh #fff, 20.3vw 59.3vh #fff, 52.6vw 82.5vh #fff,
        8.3vw 73.1vh #fff, 59.8vw 29.7vh #fff, 37.0vw 9.7vh #fff, 92.3vw 29.9vh #fff, 42.2vw 64.6vh #fff,
        74.1vw 60.5vh #fff, 40.9vw 64.2vh #fff, 53.0vw 32.0vh #fff, 82.9vw 15.1vh #fff, 17.0vw 46.8vh #fff,
        49.2vw 11.5vh #fff, 74.2vw 94.6vh #fff, 56.9vw 58.1vh #fff, 28.7vw 12.1vh #fff, 34.1vw 71.7vh #fff,
        85.8vw 37.1vh #fff, 34.2vw 33.9vh #fff, 54.3vw 27.3vh #fff, 51.1vw 82.3vh #fff, 16.6vw 66.9vh #fff,
        28.5vw 20.3vh #fff, 42.3vw 62.7vh #fff, 41.9vw 39.5vh #fff, 62.6vw 49.9vh #fff, 82.5vw 97.0vh #fff,
        91.6vw 65.6vh #fff, 15.8vw 43.0vh #fff, 29.4vw 53.3vh #fff, 10.7vw 93.3vh #fff, 25.5vw 26.7vh #fff,
        88.2vw 42.0vh #fff, 3.9vw 11.6vh #fff, 62.6vw 1.2vh #fff, 71.4vw 11.5vh #fff, 8.3vw 51.1vh #fff,
        17.5vw 1.6vh #fff, 55.3vw 16.5vh #fff, 42.8vw 95.1vh #fff, 84.7vw 87.9vh #fff, 48.7vw 62.8vh #fff,
        42.0vw 74.6vh #fff, 96.9vw 7.1vh #fff, 1.0vw 45.6vh #fff, 58.9vw 62.0vh #fff, 20.4vw 15.9vh #fff,
        40.8vw 80.5vh #fff, 40.7vw 76.6vh #fff, 46.7vw 81.1vh #fff, 11.8vw 64.2vh #fff, 26.1vw 39.6vh #fff,
        6.6vw 68.3vh #fff, 47.4vw 64.2vh #fff, 43.1vw 8.8vh #fff, 68.5vw 1.8vh #fff, 19.2vw 42.4vh #fff,
        77.6vw 48.4vh #fff, 63.7vw 90.3vh #fff, 83.9vw 18.2vh #fff, 37.3vw 12.3vh #fff, 83.5vw 54.4vh #fff,
        57.8vw 13.1vh #fff, 40.8vw 30.2vh #fff, 97.6vw 32.2vh #fff, 94.0vw 23.6vh #fff, 70.1vw 29.4vh #fff,
        26.5vw 29.3vh #fff, 94.7vw 61.3vh #fff, 25.8vw 36.2vh #fff, 61.1vw 46.6vh #fff, 62.0vw 5.2vh #fff,
        36.5vw 22.7vh #fff, 69.4vw 86.2vh #fff, 6.5vw 36.1vh #fff, 99.2vw 88.8vh #fff, 4.8vw 48.0vh #fff,
        63.0vw 43.9vh #fff, 67.7vw 56.9vh #fff, 43.3vw 36.8vh #fff, 11.5vw 90.9vh #fff, 31.3vw 18.6vh #fff,
        69.9vw 12.1vh #fff, 63.6vw 74.3vh #fff, 21.1vw 77.7vh #fff, 89.1vw 45.6vh #fff, 37.3vw 80.2vh #fff;
    width: 1px;
    height: 1px;
    animation: twinkle1 3.5s ease-in-out infinite alternate;
}

/* Starfield layer - small stars pass 4 */
.hero .stars-sm4 {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: transparent;
    box-shadow:
        90.7vw 29.6vh #fff, 46.0vw 14.0vh #fff, 99.2vw 15.8vh #fff, 67.3vw 59.7vh #fff, 71.3vw 41.1vh #fff,
        38.1vw 40.1vh #fff, 7.5vw 32.2vh #fff, 27.7vw 77.8vh #fff, 44.6vw 10.0vh #fff, 3.5vw 34.8vh #fff,
        98.2vw 3.0vh #fff, 45.1vw 76.6vh #fff, 12.3vw 80.0vh #fff, 88.2vw 82.3vh #fff, 13.6vw 92.7vh #fff,
        23.1vw 79.7vh #fff, 79.5vw 52.3vh #fff, 75.0vw 77.0vh #fff, 79.9vw 31.1vh #fff, 96.0vw 62.1vh #fff,
        35.8vw 12.6vh #fff, 83.8vw 98.0vh #fff, 87.0vw 65.7vh #fff, 72.7vw 39.5vh #fff, 15.3vw 92.3vh #fff,
        77.1vw 54.6vh #fff, 87.1vw 15.5vh #fff, 10.3vw 27.5vh #fff, 89.6vw 35.9vh #fff, 9.4vw 18.5vh #fff,
        11.9vw 89.3vh #fff, 97.1vw 6.2vh #fff, 66.6vw 22.0vh #fff, 85.1vw 26.2vh #fff, 74.8vw 5.8vh #fff,
        57.2vw 42.7vh #fff, 13.0vw 91.7vh #fff, 46.7vw 73.7vh #fff, 19.0vw 31.9vh #fff, 87.8vw 51.9vh #fff,
        96.4vw 68.2vh #fff, 98.0vw 34.8vh #fff, 51.9vw 90.2vh #fff, 5.1vw 54.1vh #fff, 2.0vw 24.0vh #fff,
        42.2vw 25.2vh #fff, 7.6vw 8.2vh #fff, 66.7vw 86.6vh #fff, 60.2vw 34.0vh #fff, 72.9vw 3.4vh #fff,
        77.0vw 56.5vh #fff, 50.6vw 59.4vh #fff, 13.2vw 47.2vh #fff, 53.7vw 44.9vh #fff, 51.5vw 38.2vh #fff,
        60.7vw 35.9vh #fff, 94.0vw 26.0vh #fff, 77.7vw 54.5vh #fff, 87.3vw 77.1vh #fff, 46.7vw 99.0vh #fff,
        82.2vw 16.3vh #fff, 31.0vw 24.6vh #fff, 45.7vw 52.4vh #fff, 50.3vw 89.1vh #fff, 36.6vw 85.0vh #fff,
        44.2vw 67.9vh #fff, 13.9vw 74.5vh #fff, 24.0vw 70.8vh #fff, 33.6vw 79.1vh #fff, 77.0vw 8.7vh #fff,
        79.3vw 58.2vh #fff, 15.1vw 71.6vh #fff, 46.6vw 98.3vh #fff, 62.7vw 18.9vh #fff, 61.0vw 9.0vh #fff,
        20.1vw 10.7vh #fff, 6.9vw 49.1vh #fff, 97.9vw 46.3vh #fff, 27.5vw 2.9vh #fff, 43.8vw 35.9vh #fff,
        10.7vw 79.0vh #fff, 70.8vw 3.7vh #fff, 57.4vw 48.0vh #fff, 86.5vw 16.4vh #fff, 16.1vw 82.9vh #fff,
        24.1vw 42.2vh #fff, 13.5vw 23.1vh #fff, 84.2vw 13.3vh #fff, 77.8vw 20.5vh #fff, 70.9vw 64.6vh #fff,
        80.4vw 78.3vh #fff, 57.6vw 95.0vh #fff, 37.8vw 32.1vh #fff, 64.5vw 19.3vh #fff, 32.5vw 4.0vh #fff,
        59.2vw 52.9vh #fff, 41.2vw 35.0vh #fff, 41.3vw 30.0vh #fff, 39.0vw 51.5vh #fff, 92.1vw 4.9vh #fff,
        67.6vw 44.6vh #fff, 96.8vw 70.6vh #fff, 43.2vw 84.0vh #fff, 17.3vw 34.9vh #fff, 75.9vw 96.7vh #fff,
        52.1vw 85.7vh #fff, 90.9vw 78.9vh #fff, 32.5vw 23.9vh #fff, 77.4vw 77.1vh #fff, 26.2vw 23.1vh #fff,
        39.9vw 30.0vh #fff, 16.7vw 84.5vh #fff, 68.4vw 38.8vh #fff, 91.1vw 64.4vh #fff, 83.2vw 23.7vh #fff,
        1.8vw 19.8vh #fff, 10.8vw 79.7vh #fff, 1.1vw 85.0vh #fff, 98.1vw 48.5vh #fff, 95.1vw 86.3vh #fff,
        8.7vw 69.6vh #fff, 71.3vw 19.4vh #fff, 2.9vw 10.1vh #fff, 24.9vw 96.7vh #fff, 14.3vw 29.3vh #fff,
        71.7vw 63.9vh #fff, 6.9vw 24.1vh #fff, 50.8vw 25.2vh #fff, 23.2vw 51.6vh #fff, 74.9vw 98.4vh #fff,
        73.9vw 36.0vh #fff, 99.7vw 87.4vh #fff, 79.8vw 60.9vh #fff, 42.5vw 80.8vh #fff, 5.7vw 68.2vh #fff,
        55.2vw 21.0vh #fff, 91.6vw 85.1vh #fff, 42.1vw 64.8vh #fff, 16.3vw 39.4vh #fff, 57.5vw 73.7vh #fff,
        4.7vw 22.6vh #fff, 93.0vw 18.6vh #fff, 76.1vw 92.6vh #fff, 44.7vw 4.6vh #fff, 44.4vw 51.5vh #fff,
        79.5vw 46.2vh #fff, 50.9vw 60.7vh #fff, 70.4vw 75.7vh #fff, 81.4vw 74.7vh #fff, 63.0vw 75.7vh #fff,
        52.0vw 45.3vh #fff, 81.1vw 22.9vh #fff, 26.1vw 87.1vh #fff, 68.7vw 39.6vh #fff, 45.5vw 36.2vh #fff,
        53.1vw 26.9vh #fff, 98.2vw 84.2vh #fff, 36.4vw 11.8vh #fff, 17.4vw 25.5vh #fff, 93.4vw 38.7vh #fff,
        19.3vw 18.5vh #fff, 54.2vw 83.3vh #fff, 64.6vw 46.0vh #fff, 56.9vw 48.6vh #fff, 42.5vw 97.9vh #fff,
        36.4vw 81.2vh #fff, 79.2vw 50.1vh #fff, 64.6vw 52.6vh #fff, 19.2vw 67.9vh #fff, 33.2vw 39.8vh #fff;
    width: 1px;
    height: 1px;
    animation: twinkle2 3.2s ease-in-out infinite alternate-reverse;
}

/* Starfield layer - small stars pass 5 */
.hero .stars-sm5 {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: transparent;
    box-shadow:
        79.7vw 32.8vh #fff, 24.2vw 81.9vh #fff, 11.7vw 47.6vh #fff, 55.8vw 61.0vh #fff, 14.8vw 62.9vh #fff,
        50.1vw 84.8vh #fff, 3.1vw 95.3vh #fff, 17.5vw 81.0vh #fff, 50.7vw 83.2vh #fff, 18.5vw 32.3vh #fff,
        9.0vw 77.6vh #fff, 53.4vw 20.8vh #fff, 19.4vw 8.5vh #fff, 20.2vw 56.0vh #fff, 43.8vw 70.2vh #fff,
        7.9vw 83.6vh #fff, 97.9vw 73.7vh #fff, 74.2vw 84.6vh #fff, 9.7vw 46.2vh #fff, 8.2vw 77.9vh #fff,
        53.8vw 11.0vh #fff, 44.5vw 77.4vh #fff, 55.2vw 12.5vh #fff, 93.4vw 6.1vh #fff, 84.1vw 96.9vh #fff,
        75.0vw 94.1vh #fff, 53.1vw 22.2vh #fff, 47.2vw 73.6vh #fff, 76.7vw 38.5vh #fff, 94.5vw 4.0vh #fff,
        49.6vw 4.4vh #fff, 35.9vw 98.4vh #fff, 12.0vw 98.1vh #fff, 90.3vw 68.6vh #fff, 5.9vw 47.2vh #fff,
        69.1vw 9.9vh #fff, 29.9vw 9.6vh #fff, 84.1vw 91.1vh #fff, 92.1vw 74.8vh #fff, 57.5vw 6.7vh #fff,
        48.2vw 75.8vh #fff, 75.4vw 3.1vh #fff, 1.1vw 9.2vh #fff, 92.2vw 11.7vh #fff, 39.1vw 47.6vh #fff,
        88.1vw 13.9vh #fff, 26.3vw 76.9vh #fff, 8.8vw 16.8vh #fff, 2.8vw 95.4vh #fff, 23.5vw 50.1vh #fff,
        38.0vw 97.7vh #fff, 71.1vw 60.0vh #fff, 49.0vw 27.0vh #fff, 83.7vw 10.7vh #fff, 62.1vw 29.7vh #fff,
        27.8vw 45.4vh #fff, 19.1vw 59.1vh #fff, 7.3vw 2.4vh #fff, 14.3vw 9.4vh #fff, 87.6vw 51.0vh #fff,
        67.8vw 77.6vh #fff, 16.7vw 94.7vh #fff, 38.5vw 46.1vh #fff, 48.8vw 69.3vh #fff, 76.7vw 19.7vh #fff,
        82.6vw 42.9vh #fff, 25.3vw 86.1vh #fff, 87.0vw 85.4vh #fff, 32.5vw 91.0vh #fff, 77.4vw 96.5vh #fff,
        75.3vw 99.5vh #fff, 47.8vw 74.7vh #fff, 78.0vw 52.4vh #fff, 50.4vw 40.1vh #fff, 86.6vw 38.0vh #fff,
        74.5vw 56.1vh #fff, 70.6vw 31.1vh #fff, 8.1vw 67.3vh #fff, 14.7vw 36.1vh #fff, 78.0vw 5.4vh #fff,
        90.9vw 58.8vh #fff, 56.1vw 67.5vh #fff, 6.0vw 2.7vh #fff, 71.9vw 58.6vh #fff, 63.9vw 82.0vh #fff,
        27.2vw 16.4vh #fff, 96.6vw 6.5vh #fff, 51.6vw 62.3vh #fff, 95.2vw 9.1vh #fff, 70.1vw 8.3vh #fff,
        45.4vw 61.9vh #fff, 84.7vw 5.2vh #fff, 74.7vw 15.2vh #fff, 40.5vw 97.6vh #fff, 84.8vw 8.1vh #fff,
        0.8vw 3.6vh #fff, 77.9vw 4.3vh #fff, 78.3vw 80.4vh #fff, 81.6vw 93.2vh #fff, 63.2vw 82.2vh #fff,
        54.3vw 66.7vh #fff, 7.2vw 55.0vh #fff, 98.7vw 38.9vh #fff, 71.3vw 18.2vh #fff, 48.2vw 54.1vh #fff,
        76.8vw 32.4vh #fff, 46.9vw 19.3vh #fff, 57.7vw 93.5vh #fff, 38.7vw 65.8vh #fff, 55.6vw 19.9vh #fff,
        69.5vw 21.5vh #fff, 61.3vw 98.9vh #fff, 30.8vw 66.7vh #fff, 34.1vw 64.3vh #fff, 19.3vw 50.1vh #fff,
        78.3vw 21.6vh #fff, 35.6vw 22.8vh #fff, 16.0vw 66.8vh #fff, 82.9vw 52.7vh #fff, 44.7vw 30.4vh #fff,
        24.1vw 93.8vh #fff, 48.0vw 68.0vh #fff, 28.0vw 17.6vh #fff, 1.2vw 29.8vh #fff, 42.0vw 52.1vh #fff,
        61.6vw 68.9vh #fff, 87.4vw 79.9vh #fff, 68.6vw 80.2vh #fff, 54.2vw 47.3vh #fff, 91.3vw 89.0vh #fff,
        38.7vw 86.4vh #fff, 43.0vw 74.9vh #fff, 2.7vw 59.4vh #fff, 94.4vw 43.9vh #fff, 86.8vw 67.9vh #fff,
        2.3vw 8.1vh #fff, 33.2vw 96.7vh #fff, 65.6vw 59.7vh #fff, 85.8vw 35.2vh #fff, 14.8vw 44.6vh #fff,
        90.6vw 16.9vh #fff, 49.3vw 29.6vh #fff, 35.8vw 9.7vh #fff, 90.5vw 25.8vh #fff, 78.7vw 17.6vh #fff,
        42.7vw 2.9vh #fff, 58.8vw 51.0vh #fff, 43.2vw 20.3vh #fff, 63.7vw 4.0vh #fff, 93.1vw 48.3vh #fff,
        61.0vw 42.5vh #fff, 2.5vw 3.5vh #fff, 72.4vw 48.7vh #fff, 27.9vw 53.7vh #fff, 86.9vw 51.0vh #fff,
        51.8vw 58.3vh #fff, 87.1vw 3.6vh #fff, 66.2vw 57.6vh #fff, 71.5vw 16.8vh #fff, 82.7vw 79.1vh #fff,
        27.9vw 94.4vh #fff, 5.5vw 54.5vh #fff, 8.9vw 19.2vh #fff, 63.8vw 70.3vh #fff, 47.9vw 24.8vh #fff,
        54.5vw 44.9vh #fff, 38.4vw 41.1vh #fff, 46.2vw 37.1vh #fff, 12.5vw 49.7vh #fff, 28.5vw 79.0vh #fff;
    width: 1px;
    height: 1px;
    animation: twinkle1 2.8s ease-in-out infinite alternate;
}

/* Starfield layer - small stars pass 6 */
.hero .stars-sm6 {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: transparent;
    box-shadow:
        73.0vw 91.0vh #fff, 4.0vw 0.9vh #fff, 99.0vw 32.0vh #fff, 19.8vw 49.9vh #fff, 55.1vw 73.7vh #fff,
        60.8vw 54.4vh #fff, 75.5vw 26.4vh #fff, 46.8vw 88.7vh #fff, 72.4vw 60.2vh #fff, 12.8vw 93.4vh #fff,
        4.7vw 80.8vh #fff, 15.1vw 50.0vh #fff, 68.6vw 53.5vh #fff, 1.5vw 20.5vh #fff, 42.3vw 29.5vh #fff,
        11.5vw 12.5vh #fff, 73.0vw 54.4vh #fff, 46.5vw 3.4vh #fff, 76.1vw 98.5vh #fff, 72.7vw 48.1vh #fff,
        71.0vw 62.8vh #fff, 13.8vw 54.8vh #fff, 61.5vw 19.3vh #fff, 26.6vw 32.0vh #fff, 36.9vw 31.0vh #fff,
        95.5vw 88.0vh #fff, 48.9vw 17.6vh #fff, 91.9vw 84.5vh #fff, 2.0vw 81.1vh #fff, 1.6vw 84.9vh #fff,
        59.4vw 92.3vh #fff, 63.5vw 14.8vh #fff, 52.7vw 88.5vh #fff, 39.1vw 61.8vh #fff, 35.5vw 66.4vh #fff,
        35.1vw 27.3vh #fff, 0.8vw 91.7vh #fff, 60.7vw 88.7vh #fff, 69.2vw 31.0vh #fff, 7.3vw 96.9vh #fff,
        91.2vw 90.0vh #fff, 37.7vw 58.9vh #fff, 74.9vw 33.0vh #fff, 26.5vw 26.2vh #fff, 49.9vw 40.4vh #fff,
        86.4vw 81.7vh #fff, 13.7vw 29.2vh #fff, 45.5vw 95.0vh #fff, 83.4vw 44.0vh #fff, 82.3vw 12.8vh #fff,
        7.9vw 90.4vh #fff, 18.0vw 82.3vh #fff, 91.0vw 42.9vh #fff, 34.4vw 4.5vh #fff, 3.4vw 94.0vh #fff,
        86.9vw 11.3vh #fff, 36.5vw 66.7vh #fff, 35.9vw 2.4vh #fff, 93.4vw 54.9vh #fff, 28.1vw 89.7vh #fff,
        34.3vw 98.9vh #fff, 67.5vw 92.4vh #fff, 36.9vw 60.7vh #fff, 77.4vw 55.5vh #fff, 59.5vw 61.6vh #fff,
        96.1vw 91.3vh #fff, 45.5vw 33.3vh #fff, 79.0vw 52.8vh #fff, 30.9vw 34.2vh #fff, 24.6vw 26.5vh #fff,
        48.1vw 38.4vh #fff, 12.1vw 88.8vh #fff, 31.4vw 92.8vh #fff, 69.5vw 95.8vh #fff, 69.6vw 94.1vh #fff,
        47.6vw 71.4vh #fff, 61.9vw 4.9vh #fff, 93.9vw 75.5vh #fff, 8.9vw 69.8vh #fff, 64.4vw 96.2vh #fff,
        50.7vw 9.1vh #fff, 48.5vw 51.5vh #fff, 54.9vw 45.7vh #fff, 3.7vw 42.7vh #fff, 24.1vw 94.0vh #fff,
        32.6vw 96.4vh #fff, 35.3vw 37.0vh #fff, 0.9vw 81.3vh #fff, 8.8vw 73.1vh #fff, 68.3vw 56.1vh #fff,
        31.6vw 90.3vh #fff, 75.5vw 39.1vh #fff, 82.7vw 1.6vh #fff, 77.1vw 11.4vh #fff, 59.8vw 72.3vh #fff,
        93.1vw 10.1vh #fff, 73.0vw 74.0vh #fff, 56.9vw 14.6vh #fff, 92.8vw 4.0vh #fff, 63.4vw 17.0vh #fff,
        93.3vw 15.9vh #fff, 56.4vw 29.3vh #fff, 45.2vw 53.9vh #fff, 20.5vw 28.5vh #fff, 28.1vw 40.0vh #fff,
        49.8vw 5.6vh #fff, 41.0vw 60.4vh #fff, 46.6vw 25.5vh #fff, 88.9vw 25.5vh #fff, 76.7vw 9.9vh #fff,
        62.1vw 77.2vh #fff, 74.3vw 60.4vh #fff, 41.5vw 90.9vh #fff, 97.5vw 62.6vh #fff, 58.8vw 83.3vh #fff,
        53.1vw 94.3vh #fff, 62.1vw 48.4vh #fff, 21.4vw 46.2vh #fff, 60.4vw 33.1vh #fff, 45.2vw 30.3vh #fff,
        59.9vw 48.9vh #fff, 88.9vw 81.5vh #fff, 72.6vw 85.8vh #fff, 13.3vw 80.5vh #fff, 89.2vw 56.7vh #fff,
        8.3vw 23.5vh #fff, 18.8vw 87.3vh #fff, 31.7vw 50.5vh #fff, 1.7vw 56.4vh #fff, 55.2vw 15.2vh #fff,
        20.9vw 17.9vh #fff, 9.2vw 70.0vh #fff, 52.8vw 78.9vh #fff, 54.6vw 90.4vh #fff, 40.6vw 51.5vh #fff,
        56.8vw 54.3vh #fff, 46.5vw 21.1vh #fff, 68.8vw 52.7vh #fff, 0.4vw 74.8vh #fff, 7.2vw 31.7vh #fff,
        21.2vw 38.1vh #fff, 28.3vw 11.4vh #fff, 20.1vw 65.8vh #fff, 10.8vw 43.9vh #fff, 87.3vw 59.0vh #fff,
        88.9vw 28.9vh #fff, 55.5vw 79.5vh #fff, 41.6vw 26.7vh #fff, 21.6vw 17.4vh #fff, 90.1vw 76.2vh #fff,
        98.8vw 72.6vh #fff, 95.7vw 44.2vh #fff, 83.5vw 92.2vh #fff, 38.7vw 85.0vh #fff, 53.3vw 52.9vh #fff,
        26.4vw 98.9vh #fff, 38.7vw 98.7vh #fff, 24.3vw 70.4vh #fff, 75.3vw 42.0vh #fff, 66.5vw 59.6vh #fff,
        98.3vw 9.0vh #fff, 90.3vw 0.7vh #fff, 85.9vw 32.3vh #fff, 77.1vw 36.5vh #fff, 41.1vw 26.0vh #fff,
        81.2vw 20.9vh #fff, 98.6vw 50.1vh #fff, 44.8vw 98.7vh #fff, 74.9vw 41.2vh #fff, 83.9vw 93.7vh #fff;
    width: 1px;
    height: 1px;
    animation: twinkle2 3.7s ease-in-out infinite alternate-reverse;
}

/* Starfield layer - medium stars pass 1 */
.hero .stars-md {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: transparent;
    box-shadow:
        15.6vw 22.3vh 1px rgba(200,220,255,0.9), 2.5vw 41.7vh 1px rgba(255,250,240,0.85),
        51.1vw 31.2vh 1px rgba(200,220,255,0.9), 34.9vw 52.1vh 1px rgba(255,250,240,0.85),
        22.1vw 33.8vh 1px rgba(200,220,255,0.9), 55.0vw 46.6vh 1px rgba(255,250,240,0.85),
        79.2vw 80.3vh 1px rgba(200,220,255,0.9), 67.8vw 57.8vh 1px rgba(255,250,240,0.85),
        29.8vw 76.0vh 1px rgba(200,220,255,0.9), 73.2vw 31.6vh 1px rgba(255,250,240,0.85),
        21.1vw 45.0vh 1px rgba(200,220,255,0.9), 34.1vw 35.1vh 1px rgba(255,250,240,0.85),
        36.1vw 37.6vh 1px rgba(200,220,255,0.9), 3.3vw 51.5vh 1px rgba(255,250,240,0.85),
        93.0vw 9.8vh 1px rgba(200,220,255,0.9), 70.1vw 67.7vh 1px rgba(255,250,240,0.85),
        95.5vw 25.9vh 1px rgba(200,220,255,0.9), 61.0vw 8.0vh 1px rgba(255,250,240,0.85),
        14.7vw 61.9vh 1px rgba(200,220,255,0.9), 19.0vw 12.8vh 1px rgba(255,250,240,0.85),
        80.5vw 60.0vh 1px rgba(200,220,255,0.9), 65.5vw 50.0vh 1px rgba(255,250,240,0.85),
        87.2vw 61.3vh 1px rgba(200,220,255,0.9), 41.4vw 99.4vh 1px rgba(255,250,240,0.85),
        54.5vw 24.9vh 1px rgba(200,220,255,0.9), 31.4vw 87.1vh 1px rgba(255,250,240,0.85),
        75.0vw 49.7vh 1px rgba(200,220,255,0.9), 62.8vw 32.0vh 1px rgba(255,250,240,0.85),
        22.2vw 7.4vh 1px rgba(200,220,255,0.9), 68.1vw 48.9vh 1px rgba(255,250,240,0.85),
        85.0vw 67.2vh 1px rgba(200,220,255,0.9), 41.0vw 69.9vh 1px rgba(255,250,240,0.85),
        29.8vw 41.5vh 1px rgba(200,220,255,0.9), 73.7vw 53.8vh 1px rgba(255,250,240,0.85),
        5.0vw 10.3vh 1px rgba(200,220,255,0.9), 79.5vw 62.7vh 1px rgba(255,250,240,0.85),
        5.1vw 89.4vh 1px rgba(200,220,255,0.9), 33.9vw 43.6vh 1px rgba(255,250,240,0.85),
        7.9vw 73.0vh 1px rgba(200,220,255,0.9), 32.3vw 12.7vh 1px rgba(255,250,240,0.85),
        99.5vw 26.5vh 1px rgba(200,220,255,0.9), 23.8vw 39.8vh 1px rgba(255,250,240,0.85),
        52.6vw 1.0vh 1px rgba(200,220,255,0.9), 37.4vw 70.4vh 1px rgba(255,250,240,0.85),
        76.7vw 28.7vh 1px rgba(200,220,255,0.9), 37.4vw 52.3vh 1px rgba(255,250,240,0.85),
        84.5vw 70.6vh 1px rgba(200,220,255,0.9), 6.4vw 73.4vh 1px rgba(255,250,240,0.85),
        21.9vw 11.4vh 1px rgba(200,220,255,0.9), 29.9vw 26.5vh 1px rgba(255,250,240,0.85),
        33.2vw 0.6vh 1px rgba(200,220,255,0.9), 85.9vw 80.3vh 1px rgba(255,250,240,0.85),
        10.1vw 31.8vh 1px rgba(200,220,255,0.9), 55.9vw 26.6vh 1px rgba(255,250,240,0.85),
        98.1vw 58.6vh 1px rgba(200,220,255,0.9), 25.1vw 12.9vh 1px rgba(255,250,240,0.85),
        57.9vw 56.5vh 1px rgba(200,220,255,0.9), 77.9vw 44.8vh 1px rgba(255,250,240,0.85),
        58.5vw 97.4vh 1px rgba(200,220,255,0.9), 12.8vw 21.5vh 1px rgba(255,250,240,0.85),
        60.9vw 13.1vh 1px rgba(200,220,255,0.9), 71.9vw 9.8vh 1px rgba(255,250,240,0.85),
        31.7vw 77.6vh 1px rgba(200,220,255,0.9), 63.1vw 97.9vh 1px rgba(255,250,240,0.85),
        57.1vw 24.7vh 1px rgba(200,220,255,0.9), 13.7vw 26.6vh 1px rgba(255,250,240,0.85),
        48.5vw 73.3vh 1px rgba(200,220,255,0.9), 32.0vw 6.8vh 1px rgba(255,250,240,0.85),
        3.4vw 63.1vh 1px rgba(200,220,255,0.9), 91.5vw 81.4vh 1px rgba(255,250,240,0.85),
        92.0vw 31.1vh 1px rgba(200,220,255,0.9), 56.4vw 22.5vh 1px rgba(255,250,240,0.85),
        87.5vw 21.3vh 1px rgba(200,220,255,0.9), 18.9vw 91.7vh 1px rgba(255,250,240,0.85),
        94.7vw 37.1vh 1px rgba(200,220,255,0.9);
    width: 2px;
    height: 2px;
    border-radius: 50%;
    animation: twinkle2 5s ease-in-out infinite alternate;
}

/* Starfield layer - medium stars pass 2 */
.hero .stars-md2 {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: transparent;
    box-shadow:
        48.4vw 85.3vh 1px rgba(200,220,255,0.9), 55.0vw 59.3vh 1px rgba(255,250,240,0.85),
        5.5vw 36.9vh 1px rgba(200,220,255,0.9), 93.9vw 38.6vh 1px rgba(255,250,240,0.85),
        95.9vw 81.8vh 1px rgba(200,220,255,0.9), 93.5vw 55.5vh 1px rgba(255,250,240,0.85),
        34.8vw 9.3vh 1px rgba(200,220,255,0.9), 35.5vw 52.6vh 1px rgba(255,250,240,0.85),
        17.6vw 54.3vh 1px rgba(200,220,255,0.9), 33.0vw 55.5vh 1px rgba(255,250,240,0.85),
        42.7vw 14.5vh 1px rgba(200,220,255,0.9), 40.5vw 74.7vh 1px rgba(255,250,240,0.85),
        3.4vw 40.7vh 1px rgba(200,220,255,0.9), 56.2vw 1.8vh 1px rgba(255,250,240,0.85),
        38.4vw 37.9vh 1px rgba(200,220,255,0.9), 75.6vw 53.7vh 1px rgba(255,250,240,0.85),
        95.2vw 80.2vh 1px rgba(200,220,255,0.9), 84.8vw 75.8vh 1px rgba(255,250,240,0.85),
        51.6vw 12.4vh 1px rgba(200,220,255,0.9), 45.7vw 20.5vh 1px rgba(255,250,240,0.85),
        9.4vw 77.4vh 1px rgba(200,220,255,0.9), 79.9vw 91.6vh 1px rgba(255,250,240,0.85),
        29.4vw 16.4vh 1px rgba(200,220,255,0.9), 17.8vw 84.3vh 1px rgba(255,250,240,0.85),
        48.2vw 40.7vh 1px rgba(200,220,255,0.9), 3.3vw 33.5vh 1px rgba(255,250,240,0.85),
        16.0vw 50.2vh 1px rgba(200,220,255,0.9), 57.3vw 19.7vh 1px rgba(255,250,240,0.85),
        85.9vw 68.7vh 1px rgba(200,220,255,0.9), 8.5vw 67.2vh 1px rgba(255,250,240,0.85),
        42.6vw 53.6vh 1px rgba(200,220,255,0.9), 90.8vw 99.2vh 1px rgba(255,250,240,0.85),
        86.0vw 93.3vh 1px rgba(200,220,255,0.9), 95.4vw 38.8vh 1px rgba(255,250,240,0.85),
        51.7vw 65.4vh 1px rgba(200,220,255,0.9), 20.8vw 6.0vh 1px rgba(255,250,240,0.85),
        35.5vw 8.8vh 1px rgba(200,220,255,0.9), 91.3vw 64.8vh 1px rgba(255,250,240,0.85),
        16.7vw 18.8vh 1px rgba(200,220,255,0.9), 47.9vw 53.8vh 1px rgba(255,250,240,0.85),
        71.8vw 34.3vh 1px rgba(200,220,255,0.9), 14.3vw 10.6vh 1px rgba(255,250,240,0.85),
        11.6vw 8.5vh 1px rgba(200,220,255,0.9), 97.8vw 22.9vh 1px rgba(255,250,240,0.85),
        30.9vw 26.7vh 1px rgba(200,220,255,0.9), 24.6vw 50.4vh 1px rgba(255,250,240,0.85),
        69.5vw 51.6vh 1px rgba(200,220,255,0.9), 60.2vw 98.5vh 1px rgba(255,250,240,0.85),
        64.7vw 64.6vh 1px rgba(200,220,255,0.9), 41.6vw 85.9vh 1px rgba(255,250,240,0.85),
        77.5vw 5.1vh 1px rgba(200,220,255,0.9), 83.4vw 10.5vh 1px rgba(255,250,240,0.85),
        88.8vw 41.7vh 1px rgba(200,220,255,0.9), 73.1vw 84.6vh 1px rgba(255,250,240,0.85),
        91.8vw 24.1vh 1px rgba(200,220,255,0.9), 73.3vw 2.8vh 1px rgba(255,250,240,0.85),
        49.9vw 71.3vh 1px rgba(200,220,255,0.9), 11.4vw 9.2vh 1px rgba(255,250,240,0.85),
        45.5vw 32.0vh 1px rgba(200,220,255,0.9), 5.0vw 93.1vh 1px rgba(255,250,240,0.85),
        24.3vw 44.0vh 1px rgba(200,220,255,0.9), 25.3vw 96.3vh 1px rgba(255,250,240,0.85),
        37.2vw 69.0vh 1px rgba(200,220,255,0.9), 54.3vw 12.0vh 1px rgba(255,250,240,0.85),
        0.6vw 64.7vh 1px rgba(200,220,255,0.9), 33.4vw 17.5vh 1px rgba(255,250,240,0.85),
        46.5vw 44.5vh 1px rgba(200,220,255,0.9), 24.4vw 32.4vh 1px rgba(255,250,240,0.85),
        43.3vw 15.2vh 1px rgba(200,220,255,0.9), 79.2vw 24.4vh 1px rgba(255,250,240,0.85),
        9.8vw 35.4vh 1px rgba(200,220,255,0.9), 40.3vw 11.5vh 1px rgba(255,250,240,0.85),
        12.8vw 56.5vh 1px rgba(200,220,255,0.9), 95.3vw 35.4vh 1px rgba(255,250,240,0.85),
        97.2vw 80.5vh 1px rgba(200,220,255,0.9);
    width: 2px;
    height: 2px;
    border-radius: 50%;
    animation: twinkle2 4.5s ease-in-out infinite alternate-reverse;
}

/* Starfield layer - medium stars pass 3 */
.hero .stars-md3 {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: transparent;
    box-shadow:
        12.3vw 82.4vh 1px rgba(200,220,255,0.9), 15.3vw 10.7vh 1px rgba(255,250,240,0.85),
        6.6vw 36.9vh 1px rgba(200,220,255,0.9), 1.8vw 74.7vh 1px rgba(255,250,240,0.85),
        26.1vw 83.6vh 1px rgba(200,220,255,0.9), 14.8vw 56.1vh 1px rgba(255,250,240,0.85),
        2.9vw 86.8vh 1px rgba(200,220,255,0.9), 11.9vw 24.3vh 1px rgba(255,250,240,0.85),
        83.2vw 47.6vh 1px rgba(200,220,255,0.9), 60.7vw 97.7vh 1px rgba(255,250,240,0.85),
        96.2vw 75.5vh 1px rgba(200,220,255,0.9), 75.7vw 74.9vh 1px rgba(255,250,240,0.85),
        48.5vw 98.3vh 1px rgba(200,220,255,0.9), 9.5vw 94.7vh 1px rgba(255,250,240,0.85),
        56.2vw 43.6vh 1px rgba(200,220,255,0.9), 21.7vw 24.0vh 1px rgba(255,250,240,0.85),
        32.3vw 7.8vh 1px rgba(200,220,255,0.9), 59.2vw 59.2vh 1px rgba(255,250,240,0.85),
        20.9vw 78.4vh 1px rgba(200,220,255,0.9), 80.9vw 95.5vh 1px rgba(255,250,240,0.85),
        75.5vw 44.2vh 1px rgba(200,220,255,0.9), 27.9vw 57.7vh 1px rgba(255,250,240,0.85),
        93.8vw 25.5vh 1px rgba(200,220,255,0.9), 83.6vw 84.0vh 1px rgba(255,250,240,0.85),
        47.6vw 34.1vh 1px rgba(200,220,255,0.9), 27.7vw 51.8vh 1px rgba(255,250,240,0.85),
        75.7vw 47.8vh 1px rgba(200,220,255,0.9), 7.5vw 11.7vh 1px rgba(255,250,240,0.85),
        49.2vw 26.3vh 1px rgba(200,220,255,0.9), 50.1vw 86.4vh 1px rgba(255,250,240,0.85),
        23.2vw 31.7vh 1px rgba(200,220,255,0.9), 5.9vw 86.3vh 1px rgba(255,250,240,0.85),
        22.9vw 82.1vh 1px rgba(200,220,255,0.9), 86.8vw 3.0vh 1px rgba(255,250,240,0.85),
        37.5vw 44.4vh 1px rgba(200,220,255,0.9), 61.5vw 83.4vh 1px rgba(255,250,240,0.85),
        31.6vw 95.2vh 1px rgba(200,220,255,0.9), 97.0vw 5.2vh 1px rgba(255,250,240,0.85),
        95.4vw 57.8vh 1px rgba(200,220,255,0.9), 70.5vw 19.8vh 1px rgba(255,250,240,0.85),
        81.0vw 20.9vh 1px rgba(200,220,255,0.9), 30.6vw 3.2vh 1px rgba(255,250,240,0.85),
        53.3vw 36.2vh 1px rgba(200,220,255,0.9), 93.1vw 24.1vh 1px rgba(255,250,240,0.85),
        51.8vw 80.5vh 1px rgba(200,220,255,0.9), 64.3vw 29.7vh 1px rgba(255,250,240,0.85),
        45.4vw 86.4vh 1px rgba(200,220,255,0.9), 58.1vw 68.8vh 1px rgba(255,250,240,0.85),
        40.0vw 76.5vh 1px rgba(200,220,255,0.9), 12.5vw 14.8vh 1px rgba(255,250,240,0.85),
        75.2vw 62.9vh 1px rgba(200,220,255,0.9), 51.9vw 55.9vh 1px rgba(255,250,240,0.85),
        59.7vw 35.8vh 1px rgba(200,220,255,0.9), 89.1vw 44.6vh 1px rgba(255,250,240,0.85),
        75.8vw 45.5vh 1px rgba(200,220,255,0.9), 34.7vw 53.1vh 1px rgba(255,250,240,0.85),
        91.8vw 47.3vh 1px rgba(200,220,255,0.9), 25.7vw 0.9vh 1px rgba(255,250,240,0.85),
        50.2vw 50.3vh 1px rgba(200,220,255,0.9), 65.2vw 10.3vh 1px rgba(255,250,240,0.85),
        7.8vw 31.9vh 1px rgba(200,220,255,0.9), 87.2vw 28.5vh 1px rgba(255,250,240,0.85),
        98.5vw 87.3vh 1px rgba(200,220,255,0.9), 1.0vw 31.6vh 1px rgba(255,250,240,0.85),
        44.2vw 55.8vh 1px rgba(200,220,255,0.9), 30.1vw 52.1vh 1px rgba(255,250,240,0.85),
        57.3vw 74.0vh 1px rgba(200,220,255,0.9), 77.2vw 83.1vh 1px rgba(255,250,240,0.85),
        32.9vw 50.4vh 1px rgba(200,220,255,0.9), 43.0vw 79.3vh 1px rgba(255,250,240,0.85),
        3.0vw 79.7vh 1px rgba(200,220,255,0.9), 20.5vw 89.2vh 1px rgba(255,250,240,0.85),
        92.3vw 40.1vh 1px rgba(200,220,255,0.9), 11.4vw 26.4vh 1px rgba(255,250,240,0.85),
        12.6vw 83.8vh 1px rgba(200,220,255,0.9);
    width: 2px;
    height: 2px;
    border-radius: 50%;
    animation: twinkle1 5.5s ease-in-out infinite alternate;
}

/* Starfield layer - bright stars pass 1 */
.hero .stars-lg {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: transparent;
    box-shadow:
        80.6vw 95.1vh 2px rgba(200,220,255,1), 97.6vw 40.5vh 2px rgba(255,240,220,0.95),
        20.4vw 43.4vh 2px rgba(200,220,255,1), 17.9vw 83.3vh 2px rgba(255,240,220,0.95),
        30.9vw 13.4vh 2px rgba(200,220,255,1), 15.7vw 88.0vh 2px rgba(255,240,220,0.95),
        40.8vw 81.5vh 2px rgba(200,220,255,1), 91.1vw 90.0vh 2px rgba(255,240,220,0.95),
        31.8vw 92.8vh 2px rgba(200,220,255,1), 64.6vw 86.4vh 2px rgba(255,240,220,0.95),
        63.2vw 65.1vh 2px rgba(200,220,255,1), 69.4vw 25.0vh 2px rgba(255,240,220,0.95),
        2.8vw 65.6vh 2px rgba(200,220,255,1), 85.8vw 98.5vh 2px rgba(255,240,220,0.95),
        42.4vw 43.2vh 2px rgba(200,220,255,1), 64.1vw 57.0vh 2px rgba(255,240,220,0.95),
        76.5vw 56.9vh 2px rgba(200,220,255,1), 7.6vw 74.1vh 2px rgba(255,240,220,0.95),
        84.7vw 89.3vh 2px rgba(200,220,255,1), 83.9vw 23.8vh 2px rgba(255,240,220,0.95),
        41.8vw 11.4vh 2px rgba(200,220,255,1), 17.9vw 85.6vh 2px rgba(255,240,220,0.95),
        50.4vw 83.9vh 2px rgba(200,220,255,1), 75.4vw 90.5vh 2px rgba(255,240,220,0.95),
        89.5vw 17.7vh 2px rgba(200,220,255,1), 14.8vw 97.1vh 2px rgba(255,240,220,0.95),
        62.5vw 62.8vh 2px rgba(200,220,255,1), 35.6vw 67.4vh 2px rgba(255,240,220,0.95),
        50.0vw 6.8vh 2px rgba(200,220,255,1), 78.1vw 7.6vh 2px rgba(255,240,220,0.95);
    width: 3px;
    height: 3px;
    border-radius: 50%;
    animation: twinkle3 4s ease-in-out infinite alternate;
}

/* Starfield layer - bright stars pass 2 */
.hero .stars-lg2 {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: transparent;
    box-shadow:
        42.4vw 55.0vh 2px rgba(200,220,255,1), 46.0vw 16.2vh 2px rgba(255,240,220,0.95),
        35.8vw 42.9vh 2px rgba(200,220,255,1), 14.5vw 18.6vh 2px rgba(255,240,220,0.95),
        51.1vw 28.5vh 2px rgba(200,220,255,1), 96.6vw 18.1vh 2px rgba(255,240,220,0.95),
        30.8vw 62.3vh 2px rgba(200,220,255,1), 73.5vw 25.4vh 2px rgba(255,240,220,0.95),
        13.0vw 61.5vh 2px rgba(200,220,255,1), 2.8vw 68.2vh 2px rgba(255,240,220,0.95),
        1.5vw 36.7vh 2px rgba(200,220,255,1), 35.6vw 12.3vh 2px rgba(255,240,220,0.95),
        27.1vw 72.4vh 2px rgba(200,220,255,1), 76.5vw 45.2vh 2px rgba(255,240,220,0.95),
        20.9vw 64.5vh 2px rgba(200,220,255,1), 40.7vw 51.8vh 2px rgba(255,240,220,0.95),
        93.6vw 22.1vh 2px rgba(200,220,255,1), 41.0vw 33.3vh 2px rgba(255,240,220,0.95),
        50.2vw 82.6vh 2px rgba(200,220,255,1), 12.5vw 51.3vh 2px rgba(255,240,220,0.95),
        78.3vw 86.0vh 2px rgba(200,220,255,1), 70.3vw 52.8vh 2px rgba(255,240,220,0.95),
        55.3vw 1.3vh 2px rgba(200,220,255,1), 19.6vw 6.3vh 2px rgba(255,240,220,0.95),
        45.2vw 91.7vh 2px rgba(200,220,255,1), 65.6vw 88.2vh 2px rgba(255,240,220,0.95),
        42.2vw 56.3vh 2px rgba(200,220,255,1), 35.5vw 77.8vh 2px rgba(255,240,220,0.95),
        60.1vw 48.5vh 2px rgba(200,220,255,1), 9.3vw 34.0vh 2px rgba(255,240,220,0.95);
    width: 3px;
    height: 3px;
    border-radius: 50%;
    animation: twinkle3 3.5s ease-in-out infinite alternate-reverse;
}

/* Shooting stars */
.hero .shooting-star {
    position: absolute;
    z-index: 1;
    pointer-events: none;
    width: 3px;
    height: 3px;
    border-radius: 50%;
    opacity: 0;
}

/* Glow color variants */
.hero .shooting-star.glow-blue {
    background: #4dc9f6;
    box-shadow: 0 0 6px 2px rgba(77, 201, 246, 0.8), 0 0 14px 4px rgba(77, 201, 246, 0.4);
}
.hero .shooting-star.glow-blue::after {
    background: linear-gradient(to right, rgba(77, 201, 246, 0.7), transparent);
}

.hero .shooting-star.glow-green {
    background: #00ff66;
    box-shadow: 0 0 6px 2px rgba(0, 255, 102, 0.8), 0 0 14px 4px rgba(0, 255, 102, 0.4);
}
.hero .shooting-star.glow-green::after {
    background: linear-gradient(to right, rgba(0, 255, 102, 0.7), transparent);
}

.hero .shooting-star.glow-purple {
    background: #b266ff;
    box-shadow: 0 0 6px 2px rgba(178, 102, 255, 0.8), 0 0 14px 4px rgba(178, 102, 255, 0.4);
}
.hero .shooting-star.glow-purple::after {
    background: linear-gradient(to right, rgba(178, 102, 255, 0.7), transparent);
}

.hero .shooting-star.glow-red {
    background: #ff4444;
    box-shadow: 0 0 6px 2px rgba(255, 68, 68, 0.8), 0 0 14px 4px rgba(255, 68, 68, 0.4);
}
.hero .shooting-star.glow-red::after {
    background: linear-gradient(to right, rgba(255, 68, 68, 0.7), transparent);
}

.hero .shooting-star::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 100%;
    width: 60px;
    height: 1px;
    transform: translateY(-50%);
}

.hero .shooting-star-1 {
    top: 8%;
    right: -60px;
    animation: shoot1 60s linear infinite;
    animation-delay: 3s;
}

.hero .shooting-star-2 {
    top: 22%;
    right: -60px;
    animation: shoot2 80s linear infinite;
    animation-delay: 25s;
}

.hero .shooting-star-3 {
    top: 42%;
    right: -60px;
    animation: shoot3 70s linear infinite;
    animation-delay: 45s;
}

.hero .shooting-star-4 {
    top: 15%;
    right: -60px;
    animation: shoot2 55s linear infinite;
    animation-delay: 12s;
}

.hero .shooting-star-5 {
    top: 50%;
    right: -60px;
    animation: shoot1 75s linear infinite;
    animation-delay: 35s;
}

.hero .shooting-star-6 {
    top: 65%;
    right: -60px;
    animation: shoot3 65s linear infinite;
    animation-delay: 8s;
}

.hero .shooting-star-7 {
    top: 30%;
    right: -60px;
    animation: shoot1 85s linear infinite;
    animation-delay: 55s;
}

.hero .shooting-star-8 {
    top: 72%;
    right: -60px;
    animation: shoot2 50s linear infinite;
    animation-delay: 20s;
}

.hero .shooting-star-9 {
    top: 5%;
    right: -60px;
    animation: shoot3 90s linear infinite;
    animation-delay: 60s;
}

@keyframes shoot1 {
    0%    { transform: translate(0, 0) rotate(-15deg); opacity: 0; }
    0.2%  { opacity: 0.9; }
    5.0%  { transform: translate(-100vw, 30vh) rotate(-15deg); opacity: 0; }
    100%  { opacity: 0; }
}

@keyframes shoot2 {
    0%    { transform: translate(0, 0) rotate(-12deg); opacity: 0; }
    0.15% { opacity: 0.9; }
    3.8%  { transform: translate(-100vw, 20vh) rotate(-12deg); opacity: 0; }
    100%  { opacity: 0; }
}

@keyframes shoot3 {
    0%    { transform: translate(0, 0) rotate(-18deg); opacity: 0; }
    0.17% { opacity: 0.9; }
    4.3%  { transform: translate(-100vw, 35vh) rotate(-18deg); opacity: 0; }
    100%  { opacity: 0; }
}

@keyframes twinkle1 {
    0%   { opacity: 0.4; }
    50%  { opacity: 1; }
    100% { opacity: 0.5; }
}

@keyframes twinkle2 {
    0%   { opacity: 0.3; }
    50%  { opacity: 0.95; }
    100% { opacity: 0.5; }
}

@keyframes twinkle3 {
    0%   { opacity: 0.6; }
    50%  { opacity: 1; }
    100% { opacity: 0.7; }
}

/* ===== Floating Orbs ===== */
.hero .orb {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
    z-index: 1;
    opacity: 0;
}

.hero .orb-1 {
    width: 4px; height: 4px;
    background: #4dc9f6;
    box-shadow: 0 0 8px 3px rgba(77, 201, 246, 0.6), 0 0 20px 6px rgba(77, 201, 246, 0.25);
    top: 15%; left: 10%;
    animation: orbFloat1 18s ease-in-out infinite;
}
.hero .orb-2 {
    width: 6px; height: 6px;
    background: #00ff66;
    box-shadow: 0 0 10px 4px rgba(0, 255, 102, 0.6), 0 0 24px 8px rgba(0, 255, 102, 0.2);
    top: 60%; left: 75%;
    animation: orbFloat2 22s ease-in-out infinite;
    animation-delay: -5s;
}
.hero .orb-3 {
    width: 3px; height: 3px;
    background: #b266ff;
    box-shadow: 0 0 6px 2px rgba(178, 102, 255, 0.7), 0 0 16px 5px rgba(178, 102, 255, 0.25);
    top: 35%; left: 85%;
    animation: orbFloat3 25s ease-in-out infinite;
    animation-delay: -10s;
}
.hero .orb-4 {
    width: 5px; height: 5px;
    background: #ff4444;
    box-shadow: 0 0 8px 3px rgba(255, 68, 68, 0.6), 0 0 20px 6px rgba(255, 68, 68, 0.2);
    top: 75%; left: 20%;
    animation: orbFloat4 20s ease-in-out infinite;
    animation-delay: -3s;
}
.hero .orb-5 {
    width: 3px; height: 3px;
    background: #4dc9f6;
    box-shadow: 0 0 6px 2px rgba(77, 201, 246, 0.7), 0 0 14px 4px rgba(77, 201, 246, 0.25);
    top: 45%; left: 50%;
    animation: orbFloat5 16s ease-in-out infinite;
    animation-delay: -8s;
}
.hero .orb-6 {
    width: 7px; height: 7px;
    background: #00ff66;
    box-shadow: 0 0 12px 5px rgba(0, 255, 102, 0.5), 0 0 28px 10px rgba(0, 255, 102, 0.15);
    top: 20%; left: 60%;
    animation: orbFloat6 28s ease-in-out infinite;
    animation-delay: -14s;
}
.hero .orb-7 {
    width: 2px; height: 2px;
    background: #b266ff;
    box-shadow: 0 0 5px 2px rgba(178, 102, 255, 0.8), 0 0 12px 4px rgba(178, 102, 255, 0.3);
    top: 80%; left: 45%;
    animation: orbFloat1 21s ease-in-out infinite;
    animation-delay: -7s;
}
.hero .orb-8 {
    width: 4px; height: 4px;
    background: #ff4444;
    box-shadow: 0 0 8px 3px rgba(255, 68, 68, 0.6), 0 0 18px 6px rgba(255, 68, 68, 0.2);
    top: 10%; left: 35%;
    animation: orbFloat3 19s ease-in-out infinite;
    animation-delay: -12s;
}

@keyframes orbFloat1 {
    0%   { transform: translate(0, 0); opacity: 0; }
    5%   { opacity: 0.8; }
    25%  { transform: translate(8vw, -6vh); opacity: 0.9; }
    50%  { transform: translate(-3vw, 4vh); opacity: 0.6; }
    75%  { transform: translate(5vw, 8vh); opacity: 0.85; }
    95%  { opacity: 0.7; }
    100% { transform: translate(0, 0); opacity: 0; }
}

@keyframes orbFloat2 {
    0%   { transform: translate(0, 0); opacity: 0; }
    5%   { opacity: 0.7; }
    20%  { transform: translate(-10vw, 3vh); opacity: 0.8; }
    40%  { transform: translate(-5vw, -8vh); opacity: 0.6; }
    60%  { transform: translate(6vw, -4vh); opacity: 0.85; }
    80%  { transform: translate(3vw, 6vh); opacity: 0.7; }
    95%  { opacity: 0.6; }
    100% { transform: translate(0, 0); opacity: 0; }
}

@keyframes orbFloat3 {
    0%   { transform: translate(0, 0); opacity: 0; }
    5%   { opacity: 0.75; }
    30%  { transform: translate(-7vw, 5vh); opacity: 0.85; }
    50%  { transform: translate(4vw, 10vh); opacity: 0.5; }
    70%  { transform: translate(-2vw, -6vh); opacity: 0.9; }
    95%  { opacity: 0.65; }
    100% { transform: translate(0, 0); opacity: 0; }
}

@keyframes orbFloat4 {
    0%   { transform: translate(0, 0); opacity: 0; }
    5%   { opacity: 0.8; }
    25%  { transform: translate(12vw, -3vh); opacity: 0.7; }
    50%  { transform: translate(6vw, 7vh); opacity: 0.9; }
    75%  { transform: translate(-4vw, 2vh); opacity: 0.6; }
    95%  { opacity: 0.7; }
    100% { transform: translate(0, 0); opacity: 0; }
}

@keyframes orbFloat5 {
    0%   { transform: translate(0, 0); opacity: 0; }
    5%   { opacity: 0.7; }
    20%  { transform: translate(-6vw, -5vh); opacity: 0.85; }
    45%  { transform: translate(8vw, 3vh); opacity: 0.6; }
    65%  { transform: translate(2vw, -9vh); opacity: 0.8; }
    85%  { transform: translate(-3vw, 5vh); opacity: 0.7; }
    95%  { opacity: 0.6; }
    100% { transform: translate(0, 0); opacity: 0; }
}

@keyframes orbFloat6 {
    0%   { transform: translate(0, 0); opacity: 0; }
    5%   { opacity: 0.65; }
    15%  { transform: translate(-9vw, -4vh); opacity: 0.8; }
    35%  { transform: translate(4vw, 8vh); opacity: 0.5; }
    55%  { transform: translate(10vw, -2vh); opacity: 0.75; }
    75%  { transform: translate(-3vw, -7vh); opacity: 0.85; }
    95%  { opacity: 0.6; }
    100% { transform: translate(0, 0); opacity: 0; }
}

.hero-content {
    position: relative;
    z-index: 2;
    max-width: 800px;
    margin: 0;
    padding-left: 4rem;
}

.hero h1 {
    font-size: 2.8rem;
    font-weight: 700;
    margin-bottom: 1rem;
    line-height: 1.2;
    border: none;
    outline: none;
}

.hero h2 {
    font-size: 1.2rem;
    font-weight: 400;
    color: #b0bec5;
    margin-bottom: 2rem;
    line-height: 1.6;
}

/* Centered hero for inner pages */
.hero-centered {
    text-align: left;
}

.hero-centered .hero-content {
    max-width: 900px;
    margin: 0 auto;
    padding-left: 0;
}

/* About page hero — match about-intro width */
.hero-about .hero-content {
    max-width: 1100px;
    margin: 0 auto;
    padding-left: 0;
}

/* Contact page hero — match contact-layout width */
.hero-contact .hero-content {
    max-width: 1100px;
    margin: 0 auto;
    padding-left: 0;
}

.hero-badges {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 1rem;
    margin-bottom: 2.5rem;
}

.badge {
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 50px;
    padding: 0.6rem 1.4rem;
    font-size: 0.9rem;
    color: #e0e0e0;
    backdrop-filter: blur(10px);
}

.hero-buttons {
    display: flex;
    gap: 1rem;
    justify-content: flex-start;
    flex-wrap: wrap;
}

/* ===== Buttons ===== */
.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.8rem 2rem;
    border-radius: 8px;
    font-weight: 600;
    font-size: 1rem;
    text-decoration: none;
    transition: all 0.3s ease;
    border: 2px solid transparent;
    cursor: pointer;
}

.btn:hover {
    text-decoration: none;
}

.btn-primary {
    background: rgba(0, 100, 220, 0.25);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    color: #ffffff;
    border-color: #0077ee;
}

.btn-primary:hover {
    background: rgba(0, 100, 220, 0.4);
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 120, 238, 0.3);
}

.btn-outline {
    background: rgba(0, 100, 220, 0.25);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    color: #ffffff;
    border-color: #0077ee;
}

.btn-outline:hover {
    background: rgba(0, 100, 220, 0.4);
    border-color: #0077ee;
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 120, 238, 0.3);
}

.btn-lg {
    padding: 1rem 2.5rem;
    font-size: 1.1rem;
}

/* ===== Section Styles ===== */
.section {
    padding: 5rem 2rem;
}

.section-dark {
    background: #0a0a0a;
}

.section-title {
    font-size: 2.2rem;
    font-weight: 700;
    text-align: center;
    margin-bottom: 1rem;
    color: #ffffff;
}

.section-subtitle {
    text-align: center;
    color: #94a3b8;
    font-size: 1.1rem;
    max-width: 700px;
    margin: 0 auto 3rem;
    line-height: 1.7;
}

/* ===== Card Grid ===== */
.card-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 2rem;
    max-width: 1200px;
    margin: 0 auto;
}

.card {
    background: #111111;
    border: 1px solid #1e1e2e;
    border-radius: 12px;
    padding: 2rem;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.3);
}

.card-icon {
    font-size: 2.5rem;
    margin-bottom: 1rem;
}

.card h3 {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    color: #FB5151;
}

.card p {
    color: #94a3b8;
    line-height: 1.7;
    font-size: 0.95rem;
}

/* ===== Stats Row ===== */
.stats-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 3rem;
    max-width: 1000px;
    margin: 0 auto;
}

.stat {
    text-align: center;
    min-width: 140px;
}

.stat-number {
    font-size: 2.8rem;
    font-weight: 700;
    color: #FB5151;
    display: block;
}

.stat-label {
    font-size: 0.9rem;
    color: #94a3b8;
    margin-top: 0.3rem;
}

/* ===== Trusted By Banner ===== */
.trusted-by {
    text-align: center;
    margin-top: 3rem;
    padding-top: 2rem;
    border-top: 1px solid rgba(255, 255, 255, 0.06);
}

.trusted-by-label {
    color: #64748b;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.15em;
    margin-bottom: 1.5rem;
}

.trusted-logos {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 2rem 3rem;
}

.trusted-logo {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    transition: opacity 0.3s;
    opacity: 0.8;
}

.trusted-logo:hover {
    opacity: 1;
}

.trusted-logo img {
    height: 22px;
    width: auto;
}

.trusted-logo span {
    color: #64748b;
    font-size: 0.85rem;
    font-weight: 600;
    letter-spacing: 0.02em;
}

/* ===== Tech Stack Strip ===== */
.tech-stack-strip {
    position: relative;
    z-index: 2;
    margin-top: 2.5rem;
    padding-top: 1.5rem;
}

.tech-stack-row {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    gap: 1.5rem 2rem;
}

.tech-icon {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.4rem;
    opacity: 0.85;
    transition: opacity 0.3s;
}

.tech-icon:hover {
    opacity: 1;
}

.tech-icon img {
    height: 26px;
    width: auto;
}

.tech-icon span {
    font-size: 0.65rem;
    color: #94a3b8;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

/* ===== Process Steps ===== */
.process-steps {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 1.5rem;
    max-width: 1000px;
    margin: 2rem auto 0;
}

.process-step {
    text-align: center;
    padding: 1.5rem 1rem;
    border-radius: 12px;
    background: #111111;
    border: 1px solid #1e1e2e;
    transition: transform 0.3s ease;
}

.process-step:hover {
    transform: translateY(-3px);
}

.step-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2563eb, #7c3aed);
    color: #ffffff;
    font-weight: 700;
    font-size: 1.1rem;
    margin-bottom: 0.75rem;
}

.process-step h4 {
    font-size: 1rem;
    font-weight: 600;
    color: #ffffff;
}

/* ===== CTA Banner ===== */
.cta-banner {
    background: linear-gradient(135deg, #0a1628 0%, #1a1040 100%);
    color: #ffffff;
    text-align: center;
    padding: 4rem 2rem;
}

.cta-banner h2 {
    font-size: 2rem;
    margin-bottom: 0.75rem;
}

.cta-banner p {
    color: #b0bec5;
    font-size: 1.1rem;
    margin-bottom: 2rem;
}

/* ===== About Page ===== */
.about-intro {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    align-items: center;
    max-width: 1100px;
    margin: 0 auto;
}

.about-text h2 {
    font-size: 1.8rem;
    font-weight: 700;
    margin-bottom: 1rem;
    color: #ffffff;
}

.about-text p {
    color: #94a3b8;
    line-height: 1.8;
    margin-bottom: 1rem;
}

.about-image-placeholder {
    background: linear-gradient(135deg, #1a1a2e, #111111);
    border-radius: 16px;
    aspect-ratio: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 4rem;
    overflow: hidden;
}

.about-profile-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 16px;
}

.values-list {
    list-style: none;
    padding: 0;
}

.values-list li {
    padding: 0.5rem 0;
    padding-left: 1.5rem;
    position: relative;
    color: #94a3b8;
    line-height: 1.7;
}

.values-list li::before {
    content: '✓';
    position: absolute;
    left: 0;
    color: #0077ee;
    font-weight: 700;
}

/* ===== Contact Form ===== */
.contact-layout {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3rem;
    max-width: 1100px;
    margin: 0 auto;
}

.contact-info h2 {
    font-size: 1.5rem;
    margin-bottom: 1rem;
    color: #ffffff;
}

.contact-info p {
    color: #94a3b8;
    line-height: 1.7;
    margin-bottom: 1.5rem;
}

.contact-detail {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1rem;
    color: #94a3b8;
}

.contact-detail-icon {
    font-size: 1.3rem;
}

.contact-form {
    background: #111111;
    border: 2px solid #0077ee;
    border-radius: 12px;
    padding: 2rem;
}

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

.form-group {
    display: flex;
    flex-direction: column;
    margin-bottom: 1rem;
}

.form-group.full-width {
    grid-column: 1 / -1;
}

.form-group label {
    font-size: 0.85rem;
    font-weight: 600;
    color: #c0c8d8;
    margin-bottom: 0.3rem;
}

.form-group input,
.form-group select,
.form-group textarea {
    padding: 0.7rem 1rem;
    border: 1px solid #2a2a3a;
    border-radius: 8px;
    font-family: inherit;
    font-size: 0.95rem;
    transition: border-color 0.2s;
    background: #0a0a0a;
    color: #e0e4ea;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus {
    outline: none;
    border-color: #2563eb;
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

.form-group textarea {
    resize: vertical;
    min-height: 120px;
}

/* ===== Services Detail ===== */
.services-detail {
    max-width: 900px;
    margin: 0 auto;
}

.service-detail-card {
    display: flex;
    gap: 2rem;
    margin-bottom: 2.5rem;
    padding: 2rem;
    border-radius: 12px;
    border: 1px solid #1e1e2e;
    background: #111111;
    transition: transform 0.2s;
}

.service-detail-card:hover {
    transform: translateX(4px);
}

.service-icon-large {
    font-size: 3rem;
    flex-shrink: 0;
}

.service-detail-card h3 {
    font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: #FB5151;
}

.service-detail-card p {
    color: #94a3b8;
    line-height: 1.7;
}

/* ===== Development Process Detail ===== */
.process-detail {
    max-width: 800px;
    margin: 0 auto;
}

.process-detail-step {
    display: flex;
    gap: 1.5rem;
    margin-bottom: 2rem;
    padding: 1.5rem;
}

.process-detail-number {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    min-width: 48px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2563eb, #7c3aed);
    color: #ffffff;
    font-weight: 700;
    font-size: 1.2rem;
}

.process-detail-content h4 {
    font-size: 1.15rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: #ffffff;
}

.process-detail-content p {
    color: #94a3b8;
    line-height: 1.7;
}

/* ===== Responsive ===== */

/* Large tablets / small laptops */
@media (max-width: 1024px) {
    .card-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .about-intro {
        gap: 2rem;
    }

    .hero {
        padding: 4rem 1.5rem;
    }

    .hero-content h1 {
        font-size: 2.4rem;
    }

    .hero-content h2 {
        font-size: 1.1rem;
    }

    .section {
        padding: 4rem 1.5rem;
    }

    .cta-banner {
        padding: 3rem 1.5rem;
    }

    .cta-banner h2 {
        font-size: 1.75rem;
    }
}

/* Tablets */
@media (max-width: 768px) {
    .hero {
        padding: 3rem 1.25rem 5rem;
        overflow: visible;
    }

    .hero-content {
        padding-left: 0;
    }

    .hero h1,
    .hero-content h1 {
        font-size: 2rem;
    }

    .hero h2,
    .hero-content h2 {
        font-size: 1rem;
    }

    .section-title {
        font-size: 1.7rem;
    }

    .section {
        padding: 3rem 1.25rem;
    }

    .card-grid {
        grid-template-columns: 1fr;
        gap: 1.5rem;
    }

    .about-intro {
        grid-template-columns: 1fr;
    }

    .about-image-placeholder {
        max-width: 300px;
        margin: 0 auto;
    }

    .contact-layout {
        grid-template-columns: 1fr;
    }

    .form-grid {
        grid-template-columns: 1fr;
    }

    .stats-row {
        gap: 2rem;
    }

    .service-detail-card {
        flex-direction: column;
        gap: 1rem;
    }

    .hero-badges {
        flex-wrap: wrap;
    }

    .hero-buttons {
        flex-direction: column;
        align-items: stretch;
    }

    .hero-buttons .btn {
        text-align: center;
    }

    .tech-stack-row {
        justify-content: center;
    }

    .cta-banner h2 {
        font-size: 1.5rem;
    }

    .cta-banner p {
        font-size: 1rem;
    }

    .process-steps {
        grid-template-columns: repeat(2, 1fr);
    }

    .trusted-logos {
        gap: 1.5rem 2rem;
    }
}

/* Small phones */
@media (max-width: 480px) {
    .hero {
        padding: 2.5rem 1rem 5rem;
        overflow: visible;
    }

    .hero-content {
        padding-left: 0;
    }

    .hero h1,
    .hero-content h1 {
        font-size: 1.6rem;
    }

    .hero h2,
    .hero-content h2 {
        font-size: 0.9rem;
    }

    .section-title {
        font-size: 1.4rem;
    }

    .section {
        padding: 2.5rem 1rem;
    }

    .section-subtitle {
        font-size: 0.95rem;
    }

    .card {
        padding: 1.5rem;
    }

    .btn-lg {
        padding: 0.85rem 2rem;
        font-size: 1rem;
    }

    .stat-number {
        font-size: 2.2rem;
    }

    .process-steps {
        grid-template-columns: 1fr;
    }

    .about-text h2 {
        font-size: 1.5rem;
    }

    .contact-form {
        padding: 1.5rem;
    }

    .cta-banner {
        padding: 2.5rem 1rem;
    }

    .cta-banner h2 {
        font-size: 1.3rem;
    }

    .process-detail-step {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
        padding: 1rem;
    }
}

/* ===== Form validation ===== */
.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid #e50000;
}

.validation-message {
    color: #e50000;
}

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

.blazor-error-boundary::after {
    content: "An error has occurred."
}
