@import url('https://fonts.googleapis.com/css2?family=Azeret+Mono:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap');

:root {
    --imperial-red: #fb3640ff;
    --lavender-blush: #ede3e4ff;
    --magnolia: #e7dfe8ff;
    --dark-purple: #161032ff;
    --licorice: #14080eff;
    --floral-white: #fff8f0ff;
    --sunset: #ffcf99ff;

    --large: 22px;
    --med: 20px;
    --small: 18px;
}

::selection {
    color: var(--lavender-blush);
    background-color: var(--imperial-red);
}

html {
    scroll-behavior: smooth;
}

*,
body {
    margin: 0;
    box-sizing: border-box;
    font-family: "Azeret Mono", monospace;
    color: var(--licorice);
}

body {
    background-color: var(--lavender-blush);
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' width='32' height='32' fill='none' stroke='%23e7dfe8ff'%3E%3Cpath d='M0 .5H31.5V32'/%3E%3C/svg%3E");
    background-repeat: repeat;
    background-size: 56px 56px;
}

main {
    background-image: url("./assets/images/tsunami_blue.svg");
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: scroll;

    min-height: 100dvh;
    display: flex;
    flex-direction: column;

    nav {
        width: 75%;
        margin: 0 auto;
        display: flex;
        justify-content: center;
        gap: 1rem;
        padding: 1rem;
        font-size: var(--med);

        a {
            text-decoration: none;
        }
    }

    .about-sec {
        width: 75%;
        margin: 0 auto;
        display: grid;
        flex: 1;
        grid-template-rows: 30% 50% 20%;
        grid-template-columns: 60% 40%;

        img {
            grid-column: 2 / -1;
        }
    }

    .acnt {
        place-self: center;
    }

    .abt-header {
        align-content: center;
        margin-left: 1.25rem;
    }

    .info {
        align-content: center;
        background-color: rgba(237, 227, 228, 0.5);

        p {
            margin: 0.5em 1.25rem;
            line-height: 1.2;
        }
    }


    .reach-out {
        display: flex;
        align-items: center;
        margin: 0 1.25rem;
        gap: 0.75rem;

        i {
            font-size: 1.75rem;
        }
    }
}

.canvas-cont {
    border: 1px solid var(--licorice);
    font-size: 5.5rem;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 6fr 4fr;
    grid-column: 1 / -1;

    canvas {
        width: 100%;
        place-self: center;
    }
}

.projects {
    padding-top: 1.25rem;
    min-height: 100dvh;

    .proj-cont {
        width: 75%;
        margin: 0 auto;

        .projects-header {
            align-content: center;
            margin-left: 1.25rem;
        }
    }

    .plist {
        display: flex;
        flex-direction: column;
        margin-top: 1.25rem;

        .pitem {
            display: flex;
            flex-direction: column;
            gap: 0.75rem;
            border: 1px solid var(--licorice);
            padding: 1.25rem;

            .title {
                font-size: 1.85rem;
            }

            .desc {
                line-height: 1.2;
            }

            button {
                width: fit-content;
                padding: 10px;
                border: 1px solid var(--licorice);
                background-color: transparent;

                &:hover {
                    background-color: var(--imperial-red);
                    color: var(--magnolia);

                    i {
                        color: var(--magnolia);
                    }
                }

                &:active {
                    box-shadow: 0px 0px, 0px 0px;
                    transform: translateY(1px);
                    transform: translateX(1px);
                }
            }
        }
    }
}

.sans {
    font-family: "Work Sans", sans-serif;
}

.small {
    font-size: var(--small);
}

.med {
    font-size: var(--med);
}

.large {
    font-size: var(--large);
}

.active {
    color: var(--imperial-red);
}

.box {
    box-shadow: 1px 1px var(--licorice), 1px 1px var(--licorice);
}

.hover-span:hover {
    background-color: var(--imperial-red);
    color: var(--magnolia);
}

.hover-a:hover {
    color: var(--imperial-red);
    cursor: pointer;
}

@media only screen and (max-width: 650px) {
    .canvas-cont {
        width: 100%;
        padding: 0.125em;

        .abt-header {
            margin: 0;
            font-size: 3.5rem;
        }

        canvas {
            display: none;
        }
    }

    .projects {
        .proj-cont {
            .projects-header {
                margin: 0;
                font-size: 3.5rem;
            }
        }
    }

    main {
        .about-sec {
            display: flex;
            flex-direction: column;
            gap: 0.75rem;
        }

        .reach-out {
            justify-content: center;
        }
    }

}

@media only screen and (max-width: 450px) {
    .canvas-cont {
        width: 100%;
        padding: 0.125em;

        .abt-header {
            margin: 0;
            font-size: 3rem;
        }

        canvas {
            display: none;
        }
    }

    .projects {
        .proj-cont {
            .projects-header {
                margin: 0;
                font-size: 3rem;
            }
        }
    }
}