/* Explain: Base reset and page background glows. */
* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    background: var(--background-color);
}

body {
    overflow-x: hidden;
    min-height: 100vh;
    color: var(--text-color);
    font-family: var(--font-body);
    -webkit-font-smoothing: antialiased;
    background:
        radial-gradient(1100px 620px at 12% -12%, rgba(16, 185, 129, 0.2), transparent 60%),
        radial-gradient(900px 520px at 92% 0%, rgba(14, 165, 233, 0.18), transparent 58%),
        radial-gradient(760px 520px at 50% 118%, rgba(139, 92, 246, 0.22), transparent 62%),
        radial-gradient(680px 460px at 4% 60%, rgba(236, 72, 153, 0.14), transparent 60%),
        radial-gradient(680px 460px at 98% 72%, rgba(34, 211, 238, 0.14), transparent 60%),
        var(--background-color);
    background-attachment: fixed;
}

h1, h2, h3, h4 {
    font-family: var(--font-heading);
    letter-spacing: 0.01em;
    line-height: 1.2;
}

a {
    color: var(--secondary-color);
}

a:hover {
    color: var(--primary-color);
}

::selection {
    background: var(--primary-color);
    color: #04150f;
}

::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

::-webkit-scrollbar-track {
    background: var(--surface-color);
}

::-webkit-scrollbar-thumb {
    background: var(--border-color);
    border-radius: 99px;
}

::-webkit-scrollbar-thumb:hover {
    background: var(--secondary-color);
}