/* =========================================
   RESET
========================================= */

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

/* =========================================
   TYPOGRAPHY
========================================= */

html {
    font-family: "DM Sans", sans-serif;
    scroll-behavior: smooth;
}

body {
    background: white;
    color: #111827;
    transition: 0.35s;
}

h1,
h2,
h3,
h4 {
    font-family: "PT Sans", sans-serif;
}

/* =========================================
   BACKGROUND NOISE
========================================= */

body::before {
    content: "";

    position: fixed;

    inset: 0;

    pointer-events: none;

    opacity: 0.05;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* =========================================
   SCROLLBAR
========================================= */

::-webkit-scrollbar {
    width: 6px;
}

::-webkit-scrollbar-thumb {
    background: #ff6b2b;
    border-radius: 100px;
}

/* =========================================
   GLASS EFFECT
========================================= */

.glass {
    backdrop-filter: blur(18px);
    background: rgba(255, 255, 255, 0.75);
}

.dark .glass {
    background: rgba(10, 10, 10, 0.75);
}

/* =========================================
   HERO
========================================= */

.hero-gradient {
    position: absolute;
    width: 600px;
    height: 600px;
    border-radius: 100%;
    filter: blur(120px);
    background: #ff6b2b20;
    pointer-events: none;
}