:root {
    --accent: #3e4095;
    --accent_rgb: 62, 64, 149;
    --sub-accent: #c14835;
    --sub-accent_rgb: 193, 72, 53;
    --color-1: #46789D;
    --color-2: #45A3AA;
    --color-3: #D7B439;

}

body,
html {
    margin: 0;
    padding: 0;
    background-color: #fffef4;
    font-family: system-ui
}

.gridicons--location {
    display: inline-block;
    width: 1em;
    height: 1em;
    --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M19 9A7 7 0 1 0 5 9c0 1.387.409 2.677 1.105 3.765h-.008L12 22l5.903-9.235h-.007A6.97 6.97 0 0 0 19 9m-7 3a3 3 0 1 1 0-6a3 3 0 0 1 0 6'/%3E%3C/svg%3E");
    background-color: currentColor;
    -webkit-mask-image: var(--svg);
    mask-image: var(--svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%
}

.ic--round-mail {
    display: inline-block;
    width: 1em;
    height: 1em;
    --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M20 4H4c-1.1 0-2 .9-2 2v12c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2m-.4 4.25l-6.54 4.09c-.65.41-1.47.41-2.12 0L4.4 8.25a.85.85 0 1 1 .9-1.44L12 11l6.7-4.19a.85.85 0 1 1 .9 1.44'/%3E%3C/svg%3E");
    background-color: currentColor;
    -webkit-mask-image: var(--svg);
    mask-image: var(--svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%
}

.si--youtube-fill {
    display: inline-block;
    width: 1em;
    height: 1em;
    --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' fill-rule='evenodd' d='M22.54 6.42a2.77 2.77 0 0 0-1.945-1.957C18.88 4 12 4 12 4s-6.88 0-8.595.463A2.77 2.77 0 0 0 1.46 6.42C1 8.148 1 11.75 1 11.75s0 3.602.46 5.33a2.77 2.77 0 0 0 1.945 1.958C5.121 19.5 12 19.5 12 19.5s6.88 0 8.595-.462a2.77 2.77 0 0 0 1.945-1.958c.46-1.726.46-5.33.46-5.33s0-3.602-.46-5.33M9.75 8.479v6.542l5.75-3.271z' clip-rule='evenodd'/%3E%3C/svg%3E");
    background-color: currentColor;
    -webkit-mask-image: var(--svg);
    mask-image: var(--svg);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 100% 100%;
    mask-size: 100% 100%
}

.skill-icons--instagram {
    display: inline-block;
    width: 1em;
    height: 1em;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cg fill='none'%3E%3Crect width='256' height='256' fill='url(%23skillIconsInstagram0)' rx='60'/%3E%3Crect width='256' height='256' fill='url(%23skillIconsInstagram1)' rx='60'/%3E%3Cpath fill='%23fff' d='M128.009 28c-27.158 0-30.567.119-41.233.604c-10.646.488-17.913 2.173-24.271 4.646c-6.578 2.554-12.157 5.971-17.715 11.531c-5.563 5.559-8.98 11.138-11.542 17.713c-2.48 6.36-4.167 13.63-4.646 24.271c-.477 10.667-.602 14.077-.602 41.236s.12 30.557.604 41.223c.49 10.646 2.175 17.913 4.646 24.271c2.556 6.578 5.973 12.157 11.533 17.715c5.557 5.563 11.136 8.988 17.709 11.542c6.363 2.473 13.631 4.158 24.275 4.646c10.667.485 14.073.604 41.23.604c27.161 0 30.559-.119 41.225-.604c10.646-.488 17.921-2.173 24.284-4.646c6.575-2.554 12.146-5.979 17.702-11.542c5.563-5.558 8.979-11.137 11.542-17.712c2.458-6.361 4.146-13.63 4.646-24.272c.479-10.666.604-14.066.604-41.225s-.125-30.567-.604-41.234c-.5-10.646-2.188-17.912-4.646-24.27c-2.563-6.578-5.979-12.157-11.542-17.716c-5.562-5.562-11.125-8.979-17.708-11.53c-6.375-2.474-13.646-4.16-24.292-4.647c-10.667-.485-14.063-.604-41.23-.604zm-8.971 18.021c2.663-.004 5.634 0 8.971 0c26.701 0 29.865.096 40.409.575c9.75.446 15.042 2.075 18.567 3.444c4.667 1.812 7.994 3.979 11.492 7.48c3.5 3.5 5.666 6.833 7.483 11.5c1.369 3.52 3 8.812 3.444 18.562c.479 10.542.583 13.708.583 40.396s-.104 29.855-.583 40.396c-.446 9.75-2.075 15.042-3.444 18.563c-1.812 4.667-3.983 7.99-7.483 11.488c-3.5 3.5-6.823 5.666-11.492 7.479c-3.521 1.375-8.817 3-18.567 3.446c-10.542.479-13.708.583-40.409.583c-26.702 0-29.867-.104-40.408-.583c-9.75-.45-15.042-2.079-18.57-3.448c-4.666-1.813-8-3.979-11.5-7.479s-5.666-6.825-7.483-11.494c-1.369-3.521-3-8.813-3.444-18.563c-.479-10.542-.575-13.708-.575-40.413s.096-29.854.575-40.396c.446-9.75 2.075-15.042 3.444-18.567c1.813-4.667 3.983-8 7.484-11.5s6.833-5.667 11.5-7.483c3.525-1.375 8.819-3 18.569-3.448c9.225-.417 12.8-.542 31.437-.563zm62.351 16.604c-6.625 0-12 5.37-12 11.996c0 6.625 5.375 12 12 12s12-5.375 12-12s-5.375-12-12-12zm-53.38 14.021c-28.36 0-51.354 22.994-51.354 51.355s22.994 51.344 51.354 51.344c28.361 0 51.347-22.983 51.347-51.344c0-28.36-22.988-51.355-51.349-51.355zm0 18.021c18.409 0 33.334 14.923 33.334 33.334c0 18.409-14.925 33.334-33.334 33.334s-33.333-14.925-33.333-33.334c0-18.411 14.923-33.334 33.333-33.334'/%3E%3Cdefs%3E%3CradialGradient id='skillIconsInstagram0' cx='0' cy='0' r='1' gradientTransform='matrix(0 -253.715 235.975 0 68 275.717)' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%23fd5'/%3E%3Cstop offset='.1' stop-color='%23fd5'/%3E%3Cstop offset='.5' stop-color='%23ff543e'/%3E%3Cstop offset='1' stop-color='%23c837ab'/%3E%3C/radialGradient%3E%3CradialGradient id='skillIconsInstagram1' cx='0' cy='0' r='1' gradientTransform='matrix(22.25952 111.2061 -458.39518 91.75449 -42.881 18.441)' gradientUnits='userSpaceOnUse'%3E%3Cstop stop-color='%233771c8'/%3E%3Cstop offset='.128' stop-color='%233771c8'/%3E%3Cstop offset='1' stop-color='%2360f' stop-opacity='0'/%3E%3C/radialGradient%3E%3C/defs%3E%3C/g%3E%3C/svg%3E")
}

.faded-divider {
    margin: 40px 0;
    padding: 0 30px;
    width: 100%;
    box-sizing: border-box
}

.faded-divider div {
    height: 2px;
    width: 100%;
    background-image: linear-gradient(91deg, transparent, #000, transparent)
}

.color-accent {
    color: var(--accent)
}

.firstlevel-container {
    background-image: url("../img/bg-img.png");
    background-size: cover;
    background-repeat: no-repeat;
    height: 100vh;
    width: 100vw;
    display: flex;
    align-items: center;
    justify-content: center;
}

.logo-container {
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    margin-top: -80px
}

.logo-container h1 {
    font-size: 3.5vh;
    margin: 0;
    margin-top: 10px;
    text-align: center;
    text-shadow: 0 4px 4px rgb(0 0 0 / 20%);
    margin: 30px 5px 0 5px
}

.logo-container p {
    margin: 0;
    font-weight: 600;
    color: #000;
    font-size: 2.5vh
}

.logo-container img {
    width: 15vh;
    filter: drop-shadow(0 4px 10px rgba(0, 0, 0, .25))
}

.content-container {
    background: rgba(255, 255, 255, .6);
    border: 2px solid rgba(62, 127, 189, .58);
    backdrop-filter: blur(13.5px);
    border-radius: 40px;
    padding: 20px
}

.link-container {
    display: flex;
    align-items: center;
    gap: 20px
}

.link-container span {
    font-size: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    color: #1818b3;
    border-radius: 7px
}

.social-link {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 20px;
    background: rgba(255, 255, 255, .6);
    border: 1px solid rgba(62, 127, 189, .58);
    box-shadow: 0 6px 14px -2px rgba(0, 0, 0, .2);
    border-radius: 30px;
    font-weight: 600
}

@keyframes slideUp {
    from {
        transform: translateY(300px)
    }

    to {
        transform: translateY(0)
    }
}

@keyframes slideDown {
    from {
        transform: translateY(-300px)
    }

    to {
        transform: translateY(0)
    }
}

@keyframes slideLeft {
    from {
        transform: translateX(300px)
    }

    to {
        transform: translateX(0)
    }
}

.font-bold {
    font-weight: 700
}

.font-600 {
    font-weight: 600
}

.font-13px {
    font-size: 13px
}

.font-14px {
    font-size: 14px
}

.font-15px {
    font-size: 15px
}

.font-17px {
    font-size: 17px
}

.font-20px {
    font-size: 20px
}

.font-23px {
    font-size: 23px
}

.font-25px {
    font-size: 25px
}

.font-30px {
    font-size: 30px
}

.font-35px {
    font-size: 35px
}

.text-accent {
    color: var(--accent)
}

.text-danger {
    color: #ce0202
}

.text-black {
    color: #000
}

.decoration-none {
    text-decoration: none
}

.m-0 {
    margin: 0
}

.mt-0px {
    margin-top: 0
}

.mt-5px {
    margin-top: 5px
}

.mt-10px {
    margin-top: 10px
}

.mt-20px {
    margin-top: 20px
}

.mt-25px {
    margin-top: 25px
}

.mt-30px {
    margin-top: 30px
}

.mt-35px {
    margin-top: 35px
}

.mt-45px {
    margin-top: 45px
}

.mt-50px {
    margin-top: 50px
}

.mt-60px {
    margin-top: 60px
}

.mt-70px {
    margin-top: 70px
}

.mt-100px {
    margin-top: 100px
}

.p-10px {
    padding: 10px
}

.p-15px {
    padding: 15px
}

.px-7px {
    padding-left: 7px;
    padding-right: 7px
}

.px-10px {
    padding-left: 10px;
    padding-right: 10px
}

.px-15px {
    padding-left: 15px;
    padding-right: 15px
}

.px-20px {
    padding-left: 20px;
    padding-right: 20px
}

.px-30px {
    padding-left: 30px;
    padding-right: 30px
}

.px-50px {
    padding-left: 50px;
    padding-right: 50px
}

.h-1px {
    height: 1px
}

.h-2px {
    height: 2px
}

.h-3px {
    height: 3px
}

.h-4px {
    height: 4px
}

.h-5px {
    height: 5px
}

.h-7px {
    height: 7px
}

.h-10px {
    height: 10px
}

.h-50px {
    height: 50px
}

.h-100px {
    height: 100px
}

.w-1px {
    width: 1px
}

.w-2px {
    width: 2px
}

.w-20 {
    width: 20px
}

.w-25 {
    width: 25px
}

.w-30 {
    width: 30px
}

.w-40 {
    width: 40px
}

.w-45 {
    width: 45px
}

.w-50 {
    width: 50px
}

.w-100 {
    width: 100px
}

.grid {
    display: grid
}

.grid-cols-2 {
    grid-template-columns: repeat(2, 1fr)
}

.grid-cols-1-10 {
    grid-template-columns: 1fr 10fr
}

.grid-cols-3-10 {
    grid-template-columns: 3fr 10fr
}

.grid-cols-4-10 {
    grid-template-columns: 4fr 10fr
}

.flex {
    display: flex
}

.flex-col {
    flex-direction: column
}

.justify-evenly {
    justify-content: space-evenly
}

.flex-shrink-0 {
    flex-shrink: 0
}

.gap-5px {
    gap: 5px
}

.gap-7px {
    gap: 7px
}

.gap-10px {
    gap: 10px
}

.gap-15px {
    gap: 15px
}

.gap-20px {
    gap: 20px
}

.gap-25px {
    gap: 25px
}

.gap-30px {
    gap: 30px
}

.gap-35px {
    gap: 35px
}

.gap-y-7px {
    row-gap: 7px
}

.gap-y-10px {
    row-gap: 10px
}