@import url('https://fonts.googleapis.com/css2?family=Nunito:ital,wght@0,200..1000;1,200..1000&display=swap');

:root {
    --primary-color: rgb(32, 115, 180);
    --primary-color-dark: rgb(25, 91, 142);
}

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

html,
body {
    color: rgb(34, 33, 40);

    /* Background */
    background: rgba(218, 208, 190, 0.059);
    background-image: radial-gradient(rgba(216, 188, 131, 0.445) 1px, transparent 0);
    background-size: 20px 20px;
    background-position: -19px -19px;

    /* Font Family */
    font-family: "Nunito", sans-serif;
    font-optical-sizing: auto;
    font-weight: normal;
    font-style: normal;
}

.section {
    height: 100vh;
    padding: 25px 30px 0 30px;
}

#front-section {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0;

    /* display: none; */
}

.text-small {
    font-size: 1.6rem;
    font-weight: 200;
}

.text-large {
    font-size: 2.8rem;
    font-weight: 900;
}

#headline-text {
    min-height: 2em;
    font-size: 1.2rem;
    font-weight: 500;
    margin-top: 10px;
    background-color: var(--primary-color);
    color: white;
    padding: 5px 10px;
}

.highlight {
    color: var(--primary-color-dark);
}

.action-btn {
    background-color: white;
    border: 3px solid rgb(60, 60, 60);
    color: black;
    border-radius: 0.7em;
    padding: 15px 22px;
    margin-top: 25px;
    font-size: 1.1rem;
    font-weight: 500;
    cursor: pointer;
    transition: 0.1s;
    box-shadow: 6px 6px 0px rgb(60, 60, 60);
}

.action-btn-dark {
    background-color: rgb(34, 33, 40);
    box-shadow: 7px 7px 0px rgb(34, 33, 40);
    border: 2px solid white;
    color: white;
}

.action-btn:active {
    box-shadow: none;
}

#action-btn-container {
    display: flex;
    gap: 15px;
}

.contact-btn:active {
    transform: scale(0.9, 0.9);
}

.section-heading {
    display: block;
    font-size: 2.5rem;
    font-weight: 900;
    margin-bottom: 7px;
}

.section-subheading {
    display: block;
    font-size: 1.2rem;
    font-weight: 500;
    color: rgb(72, 72, 72);
    margin-bottom: 40px;
}

.section-heading-hashtag {
    color: var(--primary-color);
}

.section-heading-hashtag::before {
    content: "#";
    color: var(--primary-color-dark);
}

#social-icons {
    display: flex;
    gap: 20px;
    margin-top: 30px;
    font-size: 30px;
    color: rgb(34, 33, 40);
}

a,
a:visited,
a:hover,
a:active {
    color: rgb(34, 33, 40);
    transition: 0.1s;
    text-decoration: none;
}

#navbar {
    position: absolute;
    top: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#navbar-icon {
    width: 45px;
    height: 45px;
    border-radius: 1.1em;
    border: 3px solid var(--primary-color);
    transform: rotateZ(-8deg);
}

#navbar-sitename {
    margin-left: 5px;
    font-size: 1.5rem;
    font-weight: 800;
    margin-left: 10px;
}

.primary {
    display: inline-block;
    color: var(--primary-color);
}

.early-start {
    margin-top: -20px;
}

#tagline {
    margin-top: 15px;
    text-align: center;
    background-color: var(--primary-color);
    color: white;
    font-weight: 700;
    margin-bottom: 20px;
    padding: 10px 25px;

    clip-path: polygon(0 0,
            100% 0,
            calc(100% - 15px) 50%,
            100% 100%,
            0 100%,
            15px 50%);
}

.cloud {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 80px;
    user-select: none;
    -webkit-user-drag: none;
    pointer-events: none;
}

@media (min-width: 768px) {
    .cloud {
        width: 60%;
        left: 50%;
        transform: translateX(-50%);
    }
}

#showcase-section {
    height: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 30px;
}

#showcase-section-heading {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    font-weight: 900;
    margin-bottom: 20px;
}

#showcase-section-heading img {
    margin-left: 8px;
    width: 30px;
    height: 30px;
}

.showcase-badge {
    position: relative;
    display: inline-block;
    padding: 1rem 4rem 1.4rem 4rem;
    font-size: 2.5rem;
    font-weight: 900;
    text-transform: uppercase;
    margin: 0;
    color: white;
    font-style: italic;
    text-align: center;
}

.showcase-badge span {
    display: block;
}

.showcase-description {
    font-size: 1rem;
    font-weight: 800;
    color: white;
    opacity: 0.75;
}

.showcase-badge::before {
    content: '';
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background: black;
    z-index: -1;
    clip-path: url(#clip);
}

#github-showcase-badge::before {
    background: #24292E;
}

#pypi-showcase-badge::before {
    background: #006dad;
}