/* variables: */
:root {
    --blue: #1c1bff;
    --blue-light: #2b8af9;
}

html {
    font-family: "Quicksand", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
    font-size: 16px;
    scroll-behavior: smooth;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4 {
    font-family: "Nunito Sans", sans-serif;
    font-optical-sizing: auto;
    font-weight: bold;
    font-style: normal;
}

h1 {
    font-size: 64px;
    line-height: 64px;
}

h2 {
    font-size: 36px;
}

.text-md {
    font-size: 1.5rem;
}

.container {
    max-width: 1340px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

.gradient {
    background: rgb(43,138,249);
    background: linear-gradient(135deg, var(--blue-light) 0%, var(--blue) 100%);
}

.gradient-text {
    font-size: 64px;
    font-weight: bold;
    background: rgb(43,138,249);
    background: linear-gradient(135deg, var(--blue-light) 0%, var(--blue) 100%);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.hover-link:hover {
    color: red;
}

.white-text {
    font-size: 64px;
    font-weight: bold;
    color: white;
    text-align: center;
}

.gradient-white  {
    height: 200%; 
    width: 50%;
    background: linear-gradient(90deg, rgba(255,255,255,0.2) 0%, transparent 100%);
}

.fill-div {
    width: 50%;
    height: 200%;
}

.nav-link:hover {
    color: var(--blue);
}

.btn-primary {
    background: rgb(43,138,249);
    background: linear-gradient(135deg, var(--blue-light) 0%, var(--blue) 100%);
    border-radius: 9999px;
    padding: 8px 24px 10px 24px;
    color: white;
    position: relative;
    transition-property: padding;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 300ms;
}
.btn-primary-circle {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    right: 4px;
    top: 4px;
    height: 34px;
    width: 34px;
    border-radius: 100%;
    background-color: white;
    opacity: 0;
    transition-property: opacity;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms;
}
.group:hover .btn-primary-circle {
    opacity: 100;
    transition-delay: 50ms;
}

.group:hover.btn-primary {
    padding: 8px 48px 10px 24px;
}

.h-24 {
    height: 96px;
}

.hamburger {
    width: 32px;
    height: 32px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    justify-content: center;
}

.line {
    width: 100%;
    height: 3px;
    border-radius: 9999px;
    background-color: black;
    transition-property: transform, translate, scale, rotate, opacity;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); /* cubic-bezier(0.4, 0, 0.2, 1) */
    transition-duration: 300ms; /* 150ms */
}

.mobile-height {
    height: calc(100vh - 96px);
}

@media screen and (min-width: 768px) {
    .md\:hidden {
        display: none;
    }
}
