@charset "UTF-8";

@font-face {
    font-family: montserrat;
    src: url(montserrat-regular-webfont-CsVPkN2Q.woff) format("woff");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: bebas;
    src: url(bebasneue-regular-webfont-DO8iU-GE.woff2) format("woff2");
    font-weight: 400;
    font-style: normal
}

@font-face {
    font-family: oswald;
    src: url(oswald-regular-webfont-CYQtD-ON.woff) format("woff");
    font-weight: 400;
    font-style: normal
}

:root {
    font-size: 16px
}

@media screen and (min-width:1700px) {
    :root {
        font-size: 20px
    }
}

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

ul,
ol,
li {
    list-style: none
}

a:link,
a:visited {
    text-decoration: none;
    color: inherit
}

a:hover {
    animation: neon-blink 1s infinite
}

button {
    border: none;
    background: none;
    cursor: pointer
}

input[type=checkbox] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer
}

input[type=submit] {
    cursor: pointer
}

input[type=color] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
    background-color: #fefefe
}

main {
    min-height: 90vh
}

body {
    font-family: montserrat, sans-serif;
    font-size: 1rem;
    background-image: url(city-light-bis-CmsROlnu.png);
    background-size: cover;
    background-attachment: fixed;
    color: #fefefe;
    cursor: none;
    overflow-x: hidden
}

html {
    scroll-behavior: smooth;
    overflow-x: hidden
}

.bg-blur {
    border-radius: 3rem;
    background-color: #ffffff0d;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    border: 2px solid rgba(255, 233, 35, .6)
}

.box-shadow {
    border: 2px solid rgb(255, 254, 185);
    box-shadow: 0 0 10px #ffe923, 0 0 4px #ffea00
}

.ttl {
    font-family: bebas, monospace;
    font-size: 4rem;
    text-shadow: 0 0 10px #FFE923, 0 0 4px #ffea00
}

.ttl--secondary {
    font-size: 2rem;
    text-transform: uppercase;
    letter-spacing: .1rem
}

@media screen and (max-width:768px) {
    .ttl--secondary {
        text-align: center
    }
}

.ttl--pro {
    font-size: 1.5rem;
    font-family: bebas, monospace;
    letter-spacing: .1rem
}

.ttl--job {
    font-size: 1rem;
    text-transform: uppercase
}

.ttl--job-date {
    font-style: italic;
    text-transform: none
}

.gallery {
    display: flex;
    flex-direction: column;
    gap: 3rem;
    padding: 3rem
}

@media screen and (max-width:768px) {
    .gallery {
        justify-content: center;
        padding: 1rem;
        width: 100%
    }
}

.gallery__mainProjectInfos {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 1rem
}

@media screen and (max-width:768px) {
    .gallery__mainProjectInfos {
        align-items: center
    }
}

.gallery__site {
    display: flex;
    flex-direction: row;
    gap: 2rem;
    width: 100%;
    align-items: flex-start;
    padding: 1rem;
    border-radius: 3rem;
    background-color: #00000080;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    border: 1px solid rgba(255, 233, 35, .6)
}

@media screen and (max-width:768px) {
    .gallery__site {
        flex-direction: column;
        align-items: center;
        justify-content: center
    }
}

.gallery__ttl {
    font-size: 1.5rem;
    text-shadow: 0 0 10px #ffd700, 0 0 4px #ffea00;
    color: #fefefe
}

.gallery__ttl--small {
    font-size: 1.1rem
}

.gallery__ttl:hover {
    animation: neon-blink .5s infinite
}

.gallery__date {
    font-size: 1.25rem
}

@media screen and (max-width:768px) {
    .gallery__date {
        text-align: center
    }
}

.gallery__description {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    text-align: start;
    line-height: 1.5
}

.gallery__lnk {
    text-align: left;
    padding: 1rem;
    line-height: 1.5;
    font-weight: 700;
    font-style: italic
}

@media screen and (max-width:768px) {
    .gallery__lnk {
        text-align: center
    }
}

.gallery__img {
    max-width: 20rem;
    aspect-ratio: 1;
    border-radius: 3rem
}

@media screen and (max-width:768px) {
    .gallery__img {
        width: 100%
    }
}

.gallery__relative {
    position: relative
}

.gallery__technos {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    text-align: left;
    gap: 1rem;
    width: 100%
}

.text {
    line-height: 1.5;
    padding: 1.5rem;
    border-radius: 0 2rem 2rem
}

@media screen and (min-width:768px) {
    .grid-2 {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem
    }

    .grid-3 {
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 4rem
    }
}

@media screen and (max-width:768px) {

    .grid-2,
    .grid-3 {
        width: 100%
    }
}

.logo:hover {
    filter: drop-shadow(0 0 0 .75rem #FFE923)
}

.active {
    animation: neon-blink 1s infinite
}

.hidden {
    display: none
}

.dot {
    font-size: 1.25rem;
    padding: .5rem;
    font-family: bebas, monospace;
    text-shadow: 0 0 10px #FFE923, 0 0 4px #ffea00
}

.flex-row {
    display: flex;
    flex-direction: row;
    gap: 3rem;
    align-items: flex-start;
    padding: 3rem
}

@media screen and (max-width:768px) {
    .flex-row {
        flex-direction: column;
        align-items: center;
        padding: 0
    }
}

.cursor-dot,
.cursor-dot-outline {
    pointer-events: none;
    position: fixed;
    z-index: 9999;
    border-radius: 50%;
    opacity: 1;
    transform: translate(-50%, -50%)
}

.cursor-dot {
    width: .5rem;
    height: .5rem;
    background-color: #fefefe;
    transition: width .2s, height .2s, opacity .2s
}

.cursor-dot-outline {
    width: 40px;
    height: 40px;
    background-color: #8a2be21a;
    box-shadow: 0 0 15px #ffe92380;
    transition: transform .15s ease-out, width .2s, height .2s, opacity .2s
}

.hover-effect .cursor-dot {
    width: 12px;
    height: 12px;
    background-color: #fff
}

.hover-effect .cursor-dot-outline {
    width: 60px;
    height: 60px;
    background-color: #ffe9234d
}

.click-effect .cursor-dot {
    transform: translate(-50%, -50%) scale(.5);
    background-color: #fff
}

.click-effect .cursor-dot-outline {
    transform: translate(-50%, -50%) scale(1.2);
    background-color: #ffe92366;
    opacity: .5
}

.cursor-trail {
    position: fixed;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: #ffe92380;
    pointer-events: none;
    z-index: 9998;
    opacity: 0;
    transition: opacity .5s ease;
    box-shadow: 0 0 10px #ffe923cc
}

.container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 2rem;
    max-width: 84.375rem;
    margin: auto;
    padding-top: 2rem
}

@media screen and (max-width:768px) {
    .container {
        margin: 0;
        padding: 1rem;
        width: 100%
    }
}

.container--contact {
    align-items: center;
    justify-content: center
}

.stack {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    align-items: center
}

.html:before {
    content: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M7.34428%2021.4141L0%2014.0258V9.93372L7.34428%202.58728V7.39372L2.22666%2011.9285L7.34428%2016.6342V21.4141Z'%20fill='%23FFE923'/%3e%3cpath%20d='M8.59875%2024L13.4692%200H15.0079L10.1261%2024H8.59875Z'%20fill='%23FFE923'/%3e%3cpath%20d='M16.6558%2021.4143V16.6345L21.7724%2011.9667L16.6558%207.33503V2.58557L24%209.94153V14.009L16.6558%2021.4143Z'%20fill='%23FFE923'/%3e%3c/svg%3e")
}

.css:before {
    content: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M21.9999%203H20.0001V1.9998C20.0001%200.8943%2019.1055%200%2018%200H2.0001C0.8955%200%200%200.8943%200%201.9998V6C0%207.1046%200.8943%207.9998%202.0001%207.9998H18C19.1046%207.9998%2020.0001%207.1055%2020.0001%206V4.9998H21.9999V9.9999H12.9999C10.791%209.9999%209%2011.7891%209%2013.9998V15.9999L8.0001%2016.9998V24H12V16.9998L11.0001%2015.9999V13.9998C11.0001%2012.8943%2011.8953%2012%2012.9999%2012H21.9999C23.1045%2012%2024%2011.1054%2024%209.9999V4.9998C24%203.8952%2023.1057%203%2021.9999%203Z'%20fill='%23FFE923'/%3e%3c/svg%3e")
}

.javascript:before {
    content: url("data:image/svg+xml,%3csvg%20width='24'%20height='23'%20viewBox='0%200%2024%2023'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M4.72047%207.87893C4.72047%207.87893%205.75384%208.29549%205.7172%209.32985C5.68106%2010.3647%202.37471%2010.8139%202.37471%2014.8977C2.37471%2018.9814%206.93977%2022.1909%2012.0192%2022.1909C17.0982%2022.1909%2024%2019.2138%2024%2013.2425C24%203.21702%2023.2407%2010.164%2015.3296%2010.164C12.7023%2010.164%2012.2335%209.26712%2012.6486%208.75571C14.6109%206.34119%2015.3296%200%208.92468%200C4.74557%200.0868244%203.7363%203.48602%203.74282%204.3096C3.74684%204.88826%203.13856%205.08399%200.07512%204.96605C-0.69576%207.78609%204.72047%207.87893%204.72047%207.87893ZM6.61254%202.6765C7.16661%202.6765%207.61629%203.12668%207.61629%203.68025C7.61629%204.23432%207.16661%204.684%206.61254%204.684C6.05898%204.684%205.60879%204.23432%205.60879%203.68025C5.60879%203.12668%206.05898%202.6765%206.61254%202.6765Z'%20fill='%23FFE923'/%3e%3c/svg%3e");
    animation: float 3s infinite
}

.laravel:before {
    content: url("data:image/svg+xml,%3csvg%20width='24'%20height='25'%20viewBox='0%200%2024%2025'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M9.67456%2018.5278L18.1884%2013.6686L14.3206%2011.4416L5.81239%2016.3408L9.67456%2018.5278ZM18.5799%208.58875L14.708%206.3618V10.7709L18.5807%2012.9987L18.5799%208.58875ZM18.9666%203.46415L15.0954%205.69111L18.9666%207.91806L22.8369%205.69029L18.9666%203.46415ZM7.04389%2014.7373L9.29037%2013.4439V3.73031L5.41762%205.9589V15.6725L7.04389%2014.7373ZM5.03018%200.83348L1.15906%203.06125L5.03018%205.28902L8.89887%203.06125L5.03018%200.83348ZM0.770806%203.73113V18.7501L9.28793%2023.6516V19.1985L4.83402%2016.6786C4.81937%2016.668%204.80798%2016.6566%204.79251%2016.6468C4.78112%2016.6362%204.76809%2016.6281%204.7567%2016.6191L4.75588%2016.6167C4.74367%2016.6045%204.73309%2016.5915%204.72414%2016.5768L4.72333%2016.576C4.71193%2016.5654%204.70298%2016.5532%204.69484%2016.5394L4.69402%2016.5386H4.69158C4.68507%2016.5264%204.67856%2016.5101%204.67205%2016.4938L4.67123%2016.4905C4.66554%2016.4783%204.65902%2016.4645%204.65333%2016.449L4.65251%2016.4466C4.64926%2016.4303%204.646%2016.41%204.64437%2016.3896V16.388C4.64193%2016.3758%204.63949%2016.3611%204.63786%2016.3465V16.3457V5.96052L2.39381%204.66635L0.770806%203.73113ZM18.5807%2018.7492V14.336L10.0636%2019.1985V23.6508L18.5807%2018.7492ZM23.2235%2010.7709V6.3618L19.3524%208.58957V12.9987L23.2235%2010.7709ZM23.9853%205.59018C23.9943%205.62111%2024%205.65611%2024%205.69274V10.994C24%2011.1372%2023.9227%2011.2618%2023.8071%2011.3285L23.8055%2011.3293L19.3548%2013.8924V18.9723C19.3548%2019.1147%2019.2775%2019.2392%2019.1627%2019.3068L19.1611%2019.3076L9.86909%2024.6552C9.84956%2024.6658%209.82676%2024.6756%209.80316%2024.6821L9.80072%2024.6829L9.7763%2024.6935C9.747%2024.7024%209.71281%2024.7073%209.67781%2024.7073C9.64281%2024.7073%209.60863%2024.7024%209.57607%2024.6927L9.57851%2024.6935C9.5663%2024.6902%209.55654%2024.6862%209.54677%2024.6805L9.54758%2024.6813C9.52235%2024.6723%209.50119%2024.6642%209.48084%2024.6544L9.48409%2024.656L0.194533%2019.3084C0.0773249%2019.24%200%2019.1155%200%2018.9731V3.06206C0%203.02625%200.00569766%202.99125%200.015465%202.95869L0.014651%202.96113C0.0179068%202.94893%200.0252323%202.94079%200.0293021%202.92858C0.0366276%202.90497%200.044767%202.88544%200.0537204%202.86672L0.0529065%202.86916C0.0594181%202.85614%200.0675575%202.84474%200.0765109%202.83497L0.110697%202.78858L0.148952%202.7609C0.163603%202.74869%200.176626%202.73649%200.191277%202.7259H0.192091L4.83809%200.0520925C4.89344%200.0195347%204.96018%200%205.031%200C5.10181%200%205.16855%200.0195347%205.22553%200.0529065L5.2239%200.0520925L9.87153%202.7259C9.887%202.73649%209.90002%202.74788%209.91304%202.76009L9.95211%202.78776C9.96514%202.80242%209.97246%202.81869%209.9863%202.83416C9.99607%202.84393%2010.0042%202.85532%2010.0115%202.86753L10.0123%202.86834C10.0205%202.88462%2010.0286%202.90416%2010.0359%202.92451L10.0368%202.92776L10.0498%202.96032C10.0587%202.98881%2010.0644%203.02218%2010.0644%203.05637C10.0644%203.05799%2010.0644%203.05962%2010.0644%203.06125V12.9979L13.9356%2010.7701V5.69029C13.9356%205.68948%2013.9356%205.68867%2013.9356%205.68867C13.9356%205.65367%2013.9404%205.61948%2013.9494%205.58692L13.9486%205.58936C13.9518%205.57878%2013.9592%205.56902%2013.9616%205.55681C13.9697%205.53239%2013.9779%205.51285%2013.9877%205.49332L13.986%205.49657C13.9934%205.48437%2014.0047%205.47623%2014.0121%205.46239C14.0243%205.44692%2014.034%205.43146%2014.0463%205.41844C14.0577%205.40785%2014.0699%205.39809%2014.0829%205.38995L14.0837%205.38913C14.0984%205.37855%2014.1106%205.36553%2014.126%205.35658H14.1268L18.7728%202.68195C18.8282%202.64939%2018.8949%202.62986%2018.9657%202.62986C19.0366%202.62986%2019.1033%202.64939%2019.1603%202.68276L19.1587%202.68195L23.8047%205.35658C23.8209%205.36716%2023.8323%205.37855%2023.8478%205.38832C23.86%205.3989%2023.8738%205.40704%2023.8852%205.41681C23.8983%205.43146%2023.908%205.44774%2023.9202%205.46239C23.9292%205.47216%2023.9373%205.48355%2023.9447%205.49495L23.9455%205.49576C23.9552%205.51367%2023.9634%205.53402%2023.9699%205.55518L23.9707%205.55762C23.9772%205.56739%2023.9821%205.57797%2023.9862%205.58936L23.9853%205.59018Z'%20fill='%23FFE923'/%3e%3c/svg%3e")
}

.mysql:before {
    content: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cg%20clip-path='url(%23clip0_4231_62)'%3e%3cpath%20d='M11.9975%2013.086C7.49119%2013.086%203.71484%2011.7621%202.68381%209.97729C2.50254%2010.2914%202.39673%2010.6179%202.39673%2010.9567V13.8775C2.39673%2016.134%206.69639%2017.9647%2011.9975%2017.9647C17.302%2017.9647%2021.6033%2016.134%2021.6033%2013.8775V10.9567C21.6033%2010.6179%2021.4958%2010.2914%2021.3129%209.97729C20.2819%2011.7613%2016.5088%2013.086%2011.9975%2013.086Z'%20fill='%23FFE923'/%3e%3cpath%20d='M11.9975%2019.1196C7.49119%2019.1196%203.71484%2017.7941%202.68381%2016.0126C2.50254%2016.3251%202.39673%2016.6515%202.39673%2016.9895V19.9128C2.39673%2022.1701%206.69639%2024%2011.9975%2024C17.302%2024%2021.6033%2022.1709%2021.6033%2019.9128V16.9895C21.6033%2016.6515%2021.4958%2016.3251%2021.3129%2016.0134C20.2819%2017.7941%2016.5088%2019.1196%2011.9975%2019.1196Z'%20fill='%23FFE923'/%3e%3cpath%20d='M21.3408%204.13562C21.1522%205.78921%2017.0494%207.11224%2011.9975%207.11224C6.9482%207.11224%202.8454%205.78921%202.65756%204.13644C2.4927%204.43665%202.39673%204.74997%202.39673%205.07233V7.99317C2.39673%2010.2505%206.69639%2012.0804%2011.9975%2012.0804C17.302%2012.0804%2021.6033%2010.2513%2021.6033%207.99317V5.07233C21.6033%204.74997%2021.5057%204.43665%2021.3408%204.13562Z'%20fill='%23FFE923'/%3e%3cpath%20d='M11.9976%206.18537C17.1675%206.18537%2021.3564%204.80164%2021.3564%203.09228C21.3564%201.38455%2017.1675%200%2011.9976%200C6.83095%200.000820232%202.64038%201.38537%202.64038%203.0931C2.64038%204.80164%206.83095%206.18537%2011.9976%206.18537Z'%20fill='%23FFE923'/%3e%3c/g%3e%3cdefs%3e%3cclipPath%20id='clip0_4231_62'%3e%3crect%20width='24'%20height='24'%20fill='white'/%3e%3c/clipPath%3e%3c/defs%3e%3c/svg%3e")
}

.php:before {
    content: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M11.9964%2014.2003V23.8032C9.00504%2023.8014%206.12215%2022.6827%203.91251%2020.6664C1.70287%2018.65%200.325702%2015.8813%200.0508151%2012.9026C-0.224072%209.92393%200.623129%206.94993%202.42644%204.56325C4.22976%202.17658%206.85923%200.549225%209.79972%200L11.9964%202.19666H17.9982C19.5879%202.19666%2021.1127%202.82734%2022.2379%203.9503C23.3631%205.07327%2023.9968%206.59677%2024%208.18647V19.0137C23.9968%2020.2851%2023.4896%2021.5033%2022.5895%2022.4011C21.6894%2023.299%2020.4699%2023.8032%2019.1986%2023.8032V21.4024C19.8353%2021.4024%2020.4459%2021.1495%2020.8961%2020.6993C21.3463%2020.2491%2021.5993%2019.6384%2021.5993%2019.0017C21.5993%2018.365%2021.3463%2017.7544%2020.8961%2017.3042C20.4459%2016.8539%2019.8353%2016.601%2019.1986%2016.601H14.3971L11.9964%2014.2003ZM18.5984%2010.5992C19.0759%2010.5992%2019.5339%2010.4095%2019.8715%2010.0718C20.2092%209.73416%2020.3989%209.27618%2020.3989%208.79865C20.3989%208.32112%2020.2092%207.86314%2019.8715%207.52547C19.5339%207.18781%2019.0759%206.99811%2018.5984%206.99811C18.1208%206.99811%2017.6629%207.18781%2017.3252%207.52547C16.9875%207.86314%2016.7978%208.32112%2016.7978%208.79865C16.7978%209.27618%2016.9875%209.73416%2017.3252%2010.0718C17.6629%2010.4095%2018.1208%2010.5992%2018.5984%2010.5992Z'%20fill='%23FFE923'/%3e%3c/svg%3e")
}

.github:before {
    content: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20fill-rule='evenodd'%20clip-rule='evenodd'%20d='M12%200C18.6276%200%2024%205.50792%2024%2012.3035C24%2017.7383%2020.5656%2022.3487%2015.8004%2023.9771C15.192%2024.0983%2014.976%2023.7141%2014.976%2023.3865C14.976%2022.9809%2014.9904%2021.6562%2014.9904%2020.0098C14.9904%2018.8626%2014.6064%2018.1138%2014.1756%2017.7322C16.848%2017.4274%2019.656%2016.3869%2019.656%2011.6613C19.656%2010.3173%2019.1904%209.22058%2018.42%208.35898C18.5448%208.04818%2018.9564%206.79674%2018.3024%205.10234C18.3024%205.10234%2017.2968%204.77267%2015.006%206.36387C14.0472%206.09147%2013.02%205.95441%2012%205.94961C10.98%205.95441%209.954%206.09147%208.9964%206.36387C6.7032%204.77267%205.6952%205.10234%205.6952%205.10234C5.0436%206.79674%205.4552%208.04818%205.5788%208.35898C4.812%209.22058%204.3428%2010.3173%204.3428%2011.6613C4.3428%2016.3749%207.1448%2017.4314%209.81%2017.7422C9.4668%2018.0494%209.156%2018.5913%209.048%2019.3869C8.364%2019.7013%206.6264%2020.2454%205.556%2018.365C5.556%2018.365%204.9212%2017.1829%203.7164%2017.0965C3.7164%2017.0965%202.5464%2017.0809%203.6348%2017.8441C3.6348%2017.8441%204.4208%2018.2221%204.9668%2019.6441C4.9668%2019.6441%205.6712%2021.8401%209.0096%2021.0961C9.0156%2022.1245%209.0264%2023.0937%209.0264%2023.3865C9.0264%2023.7117%208.8056%2024.0923%208.2068%2023.9783C3.438%2022.3523%200%2017.7395%200%2012.3035C0%205.50792%205.3736%200%2012%200Z'%20fill='%23FFE923'/%3e%3c/svg%3e")
}

.docker:before {
    content: url("data:image/svg+xml,%3csvg%20width='34'%20height='24'%20viewBox='0%200%2034%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M33.0975%209.05511C32.4133%208.60419%2031.5729%208.33521%2030.67%208.33521C30.5662%208.33521%2030.4635%208.33856%2030.3619%208.34525L30.3753%208.34414C29.8775%208.34525%2029.3909%208.3899%2028.9176%208.47249L28.969%208.46468C28.7067%206.9501%2027.825%205.67995%2026.6006%204.90313L26.5794%204.89085L26.1005%204.61405L25.7858%205.06943C25.4108%205.64089%2025.1172%206.3061%2024.942%207.01707L24.9331%207.0606C24.8337%207.42222%2024.7768%207.83742%2024.7768%208.26601C24.7768%209.19351%2025.0447%2010.0574%2025.5068%2010.7862L25.4956%2010.7672C24.7846%2011.101%2023.9542%2011.3119%2023.0803%2011.3521H23.0658H1.04581C0.469888%2011.3532%200.00334842%2011.8186%200.00111618%2012.3934C5.21035e-08%2012.4559%200%2012.5307%200%2012.6055C0%2014.5598%200.353811%2016.4316%201.00116%2018.1604L0.965447%2018.0511C1.58824%2019.8737%202.76464%2021.3715%204.29149%2022.3827L4.32275%2022.4017C6.26926%2023.4096%208.57294%2024%2011.0139%2024C11.2449%2024%2011.4737%2023.9944%2011.7026%2023.9844L11.6702%2023.9855C11.6903%2023.9855%2011.7137%2023.9855%2011.7372%2023.9855C13.1569%2023.9855%2014.5442%2023.8504%2015.8891%2023.5926L15.7518%2023.6149C17.7553%2023.2399%2019.5411%2022.5669%2021.1595%2021.6361L21.0769%2021.6796C22.4798%2020.8592%2023.6786%2019.8703%2024.6987%2018.7196L24.7121%2018.704C26.191%2016.9628%2027.3941%2014.9304%2028.2223%2012.716L28.2681%2012.5765H28.5761C28.6375%2012.5787%2028.7089%2012.5809%2028.7804%2012.5809C30.1487%2012.5809%2031.3921%2012.0441%2032.3107%2011.169L32.3084%2011.1713C32.7292%2010.7717%2033.0629%2010.2862%2033.2828%209.74153L33.2928%209.71474L33.429%209.31405L33.0975%209.05511ZM3.08608%2010.7092H6.03934C6.18109%2010.7081%206.29605%2010.5931%206.29605%2010.4514V7.82291C6.29605%207.68116%206.18109%207.56508%206.03934%207.56397H3.08608C2.94433%207.56508%202.82937%207.68004%202.82937%207.82179V10.4514C2.82937%2010.5931%202.94433%2010.7092%203.08608%2010.7092ZM7.15323%2010.7092H10.1043C10.246%2010.7092%2010.3621%2010.5942%2010.3621%2010.4514V7.82291C10.3621%207.68116%2010.2471%207.56508%2010.1054%207.56397H7.15212C7.00925%207.56397%206.89318%207.68004%206.89318%207.82291V10.4514C6.89429%2010.5942%207.01037%2010.7092%207.15323%2010.7092ZM11.2807%2010.7092H14.2339C14.3757%2010.7081%2014.4906%2010.5931%2014.4906%2010.4514V7.82291C14.4906%207.68116%2014.3757%207.56508%2014.2339%207.56397H11.2807C11.1389%207.56508%2011.024%207.68004%2011.024%207.82179V10.4514C11.024%2010.5931%2011.1389%2010.7092%2011.2818%2010.7092H11.2807ZM15.3612%2010.7092H18.3111C18.454%2010.7092%2018.5689%2010.5942%2018.5701%2010.4514V7.82291C18.5701%207.68004%2018.454%207.56397%2018.3111%207.56397H15.3612C15.2195%207.56397%2015.1034%207.67893%2015.1034%207.82179V10.4514C15.1034%2010.5931%2015.2183%2010.7092%2015.3601%2010.7092C15.3601%2010.7092%2015.3601%2010.7092%2015.3612%2010.7092ZM7.15323%206.92778H10.1043C10.2471%206.92666%2010.3621%206.8117%2010.3621%206.66884V4.04037C10.3621%203.89862%2010.2471%203.78254%2010.1043%203.78254H7.15323C7.01037%203.78254%206.89541%203.8975%206.89429%204.04037V6.66884C6.89541%206.8117%207.01037%206.92666%207.15323%206.92778ZM11.2807%206.92778H14.2339C14.3757%206.92666%2014.4906%206.81058%2014.4906%206.66884V4.04037C14.4906%203.89862%2014.3757%203.78254%2014.2328%203.78254H11.2829C11.1411%203.78254%2011.0251%203.8975%2011.0251%204.04037V6.66884C11.0262%206.8117%2011.14%206.92666%2011.2829%206.92778H11.2807ZM15.3612%206.92778H18.3111C18.454%206.92666%2018.5689%206.8117%2018.5701%206.66884V4.04037C18.5689%203.8975%2018.454%203.78254%2018.3111%203.78254H15.3612C15.2195%203.78254%2015.1034%203.8975%2015.1034%204.04037V6.66884C15.1034%206.8117%2015.2183%206.92666%2015.3612%206.92778ZM15.3612%203.14635H18.3111C18.454%203.14635%2018.5701%203.03027%2018.5701%202.88741V0.257824C18.5689%200.114961%2018.454%200%2018.3111%200H15.3612C15.2195%200%2015.1034%200.114961%2015.1034%200.257824V2.88741C15.1034%203.02916%2015.2183%203.14523%2015.3601%203.14523C15.3601%203.14523%2015.3601%203.14523%2015.3612%203.14523V3.14635ZM19.4764%2010.7092H22.4274C22.5702%2010.7092%2022.6852%2010.5942%2022.6863%2010.4514V7.82291C22.6863%207.68004%2022.5702%207.56397%2022.4274%207.56397H19.4764C19.3335%207.56397%2019.2185%207.67893%2019.2185%207.82179V10.4514C19.2185%2010.5931%2019.3335%2010.7092%2019.4764%2010.7092Z'%20fill='%23FFE923'/%3e%3c/svg%3e")
}

.composer:before {
    content: url(composer-BQXut8LD.svg)
}

.vite:before {
    content: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M22.4127%204.6095L12.5563%2022.2343C12.3528%2022.5981%2011.83%2022.6003%2011.6234%2022.2382L1.57167%204.61115C1.34667%204.2165%201.68402%203.73852%202.13117%203.8184L11.9982%205.5821C12.0611%205.59335%2012.1255%205.59325%2012.1884%205.5818L21.849%203.82095C22.2947%203.73972%2022.6338%204.2141%2022.4127%204.6095Z'%20fill='url(%23paint0_linear_4233_93)'/%3e%3cpath%20d='M16.6983%201.50518L9.40431%202.93438C9.34602%202.94578%209.29318%202.97624%209.25409%203.02097C9.215%203.06569%209.19189%203.12214%209.18839%203.18143L8.73974%2010.7593C8.72924%2010.9378%208.89311%2011.0763%209.06726%2011.0361L11.098%2010.5675C11.2881%2010.5236%2011.4598%2010.691%2011.4207%2010.8821L10.8174%2013.8365C10.7767%2014.0353%2010.9634%2014.2054%2011.1576%2014.1464L12.4119%2013.7653C12.6064%2013.7063%2012.7932%2013.8768%2012.7521%2014.0758L11.7933%2018.7166C11.7333%2019.0068%2012.1194%2019.1651%2012.2804%2018.9162L12.388%2018.75L18.3315%206.8886C18.431%206.69%2018.2595%206.46358%2018.0412%206.50565L15.951%206.90908C15.7545%206.94695%2015.5874%206.76403%2015.6428%206.5718L17.0071%201.8423C17.0626%201.6497%2016.8949%201.46663%2016.6983%201.50518Z'%20fill='url(%23paint1_linear_4233_93)'/%3e%3cdefs%3e%3clinearGradient%20id='paint0_linear_4233_93'%20x1='1.32622'%20y1='3.18844'%20x2='13.5926'%20y2='19.8472'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%2341D1FF'/%3e%3cstop%20offset='1'%20stop-color='%23BD34FE'/%3e%3c/linearGradient%3e%3clinearGradient%20id='paint1_linear_4233_93'%20x1='11.4313'%20y1='1.89315'%20x2='13.6502'%20y2='17.1148'%20gradientUnits='userSpaceOnUse'%3e%3cstop%20stop-color='%23FFEA83'/%3e%3cstop%20offset='0.0833'%20stop-color='%23FFDD35'/%3e%3cstop%20offset='1'%20stop-color='%23FFA800'/%3e%3c/linearGradient%3e%3c/defs%3e%3c/svg%3e")
}

.figma:before {
    content: url("data:image/svg+xml,%3csvg%20width='20'%20height='28'%20viewBox='0%200%2020%2028'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M10%202H6C3.79087%202%202%203.79087%202%206C2%208.20913%203.79087%2010%206%2010M10%202V10M10%202H14C16.2092%202%2018%203.79087%2018%206C18%208.20913%2016.2092%2010%2014%2010M6%2010H10M6%2010C3.79087%2010%202%2011.7908%202%2014C2%2016.2092%203.79087%2018%206%2018M10%2010H14M10%2010V18M14%2010C16.2092%2010%2018%2011.7908%2018%2014C18%2016.2092%2016.2092%2018%2014%2018C11.7908%2018%2010%2016.2092%2010%2014C10%2011.7908%2011.7908%2010%2014%2010ZM10%2018H6M10%2018V22C10%2024.2092%208.2092%2026%206%2026C3.79087%2026%202%2024.2092%202%2022C2%2019.7908%203.79087%2018%206%2018'%20stroke='%23FFE923'%20stroke-width='3'%20stroke-linecap='round'%20stroke-linejoin='round'/%3e%3c/svg%3e")
}

.windev:before {
    content: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M23.418%200.621909C21.7177%20-1.19555%2016.1787%200.860152%209.26498%208.24995C6.92395%2010.7523%204.94746%2013.368%203.54346%2015.8201C1.62454%2015.8502%200.147699%2017.9101%200.0827308%2018.0032C-0.0260661%2018.1581%20-0.0277067%2018.3709%200.0786995%2018.5276C0.185059%2018.6841%200.375277%2018.7477%200.546465%2018.6869C1.18467%2018.455%201.73545%2018.4368%202.20701%2018.5502C1.31498%2020.8141%201.28573%2022.4773%202.12864%2023.3777C2.5116%2023.7868%203.0884%2024%203.83231%2024C6.39257%2023.9995%2010.9244%2021.4761%2016.2816%2015.7499C23.1955%208.35958%2025.1187%202.43972%2023.418%200.621909ZM1.63762%2017.609C1.62834%2017.609%201.61906%2017.609%201.60996%2017.609C2.1712%2017.0566%202.95349%2016.6288%203.78951%2016.7203C4.77932%2016.8303%205.68256%2017.7279%206.47779%2019.3977L6.01687%2019.6424C6.00154%2019.6506%205.98677%2019.6588%205.97243%2019.6691L5.15057%2020.2543C4.77581%2019.42%204.09321%2018.452%203.09609%2017.9455C3.05943%2017.9015%203.01424%2017.8642%202.96095%2017.8379C2.89785%2017.8065%202.83129%2017.8029%202.76614%2017.8066C2.42282%2017.6772%202.04693%2017.609%201.63762%2017.609ZM2.71326%2022.7546C2.14078%2022.1429%202.2401%2020.7437%202.97506%2018.8813C4.07221%2019.583%204.54129%2020.9747%204.57078%2021.0648C4.61278%2021.1939%204.70845%2021.2951%204.82981%2021.3386C4.87279%2021.3542%204.91742%2021.3614%204.96185%2021.3614C5.04238%2021.3614%205.12217%2021.3362%205.19079%2021.2875L6.40977%2020.4187L7.21368%2019.9893C7.41393%2019.8823%207.49812%2019.6242%207.40343%2019.4071C6.56929%2017.4964%205.59677%2016.3419%204.45959%2015.9602C5.18732%2014.7266%206.04307%2013.4525%207.07671%2012.1745V15.1716C7.07671%2016.3916%207.95745%2017.388%209.09909%2017.388H13.4201C9.06548%2021.3654%204.17342%2024.3158%202.71326%2022.7546ZM15.697%2015.1287C15.2612%2015.5945%2014.8106%2016.0622%2014.3506%2016.5042H9.09904C8.41345%2016.5042%207.90359%2015.9045%207.90359%2015.1717V11.1971C7.90359%2011.1803%207.87668%2011.1643%207.87494%2011.148C8.50382%2010.3857%209.18355%209.62525%209.88555%208.87494C10.1795%208.56074%2010.4877%208.24935%2010.7978%207.94186V11.6395C10.7978%2012.614%2011.4934%2013.4106%2012.4075%2013.4106H17.2206C16.7249%2013.963%2016.2148%2014.5751%2015.697%2015.1287ZM17.9225%2012.554C17.8775%2012.5361%2017.8293%2012.5268%2017.7785%2012.5268H12.4075C11.9494%2012.5268%2011.6247%2012.1269%2011.6247%2011.6395V7.21972C11.6247%207.19221%2011.5976%207.16545%2011.5931%207.13925C16.0792%202.85468%2021.3233%20-0.379464%2022.8453%201.2477C24.2906%202.79275%2021.6244%207.9348%2017.9225%2012.554Z'%20fill='%23FFE923'/%3e%3c/svg%3e")
}

.kanban:before {
    content: url("data:image/svg+xml,%3csvg%20width='24'%20height='24'%20viewBox='0%200%2024%2024'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cpath%20d='M8.72727%201.2V22.8H15.2727V1.2H8.72727ZM7.63636%201.2H2.72727C1.82353%201.2%201.09091%202.00589%201.09091%203V21C1.09091%2021.9941%201.82353%2022.8%202.72727%2022.8H7.63636V1.2ZM16.3636%201.2V22.8H21.2727C22.1765%2022.8%2022.9091%2021.9941%2022.9091%2021V3C22.9091%202.00589%2022.1765%201.2%2021.2727%201.2H16.3636ZM0%203C0%201.34315%201.22104%200%202.72727%200H21.2727C22.779%200%2024%201.34315%2024%203V21C24%2022.6569%2022.779%2024%2021.2727%2024H2.72727C1.22104%2024%200%2022.6569%200%2021V3ZM3.27273%204.8H5.45455C6.05704%204.8%206.54545%205.33726%206.54545%206V7.2C6.54545%207.86274%206.05704%208.4%205.45455%208.4H3.27273C2.67023%208.4%202.18182%207.86274%202.18182%207.2V6C2.18182%205.33726%202.67023%204.8%203.27273%204.8ZM3.27273%209.6H5.45455C6.05704%209.6%206.54545%2010.1373%206.54545%2010.8V12C6.54545%2012.6627%206.05704%2013.2%205.45455%2013.2H3.27273C2.67023%2013.2%202.18182%2012.6627%202.18182%2012V10.8C2.18182%2010.1373%202.67023%209.6%203.27273%209.6ZM10.9091%204.8H13.0909C13.6934%204.8%2014.1818%205.33726%2014.1818%206V7.2C14.1818%207.86274%2013.6934%208.4%2013.0909%208.4H10.9091C10.3066%208.4%209.81818%207.86274%209.81818%207.2V6C9.81818%205.33726%2010.3066%204.8%2010.9091%204.8ZM18.5455%204.8H20.7273C21.3298%204.8%2021.8182%205.33726%2021.8182%206V7.2C21.8182%207.86274%2021.3298%208.4%2020.7273%208.4H18.5455C17.943%208.4%2017.4545%207.86274%2017.4545%207.2V6C17.4545%205.33726%2017.943%204.8%2018.5455%204.8ZM18.5455%209.6H20.7273C21.3298%209.6%2021.8182%2010.1373%2021.8182%2010.8V12C21.8182%2012.6627%2021.3298%2013.2%2020.7273%2013.2H18.5455C17.943%2013.2%2017.4545%2012.6627%2017.4545%2012V10.8C17.4545%2010.1373%2017.943%209.6%2018.5455%209.6ZM18.5455%2014.4H20.7273C21.3298%2014.4%2021.8182%2014.9373%2021.8182%2015.6V16.8C21.8182%2017.4627%2021.3298%2018%2020.7273%2018H18.5455C17.943%2018%2017.4545%2017.4627%2017.4545%2016.8V15.6C17.4545%2014.9373%2017.943%2014.4%2018.5455%2014.4ZM3.27273%206V7.2H5.45455V6H3.27273ZM3.27273%2010.8V12H5.45455V10.8H3.27273ZM10.9091%206V7.2H13.0909V6H10.9091ZM18.5455%206V7.2H20.7273V6H18.5455ZM18.5455%2010.8V12H20.7273V10.8H18.5455ZM18.5455%2015.6V16.8H20.7273V15.6H18.5455ZM2.72727%203.6C2.42603%203.6%202.18182%203.33137%202.18182%203C2.18182%202.66863%202.42603%202.4%202.72727%202.4H6C6.30125%202.4%206.54545%202.66863%206.54545%203C6.54545%203.33137%206.30125%203.6%206%203.6H2.72727ZM10.3636%203.6C10.0624%203.6%209.81818%203.33137%209.81818%203C9.81818%202.66863%2010.0624%202.4%2010.3636%202.4H13.6364C13.9376%202.4%2014.1818%202.66863%2014.1818%203C14.1818%203.33137%2013.9376%203.6%2013.6364%203.6H10.3636ZM18%203.6C17.6988%203.6%2017.4545%203.33137%2017.4545%203C17.4545%202.66863%2017.6988%202.4%2018%202.4H21.2727C21.574%202.4%2021.8182%202.66863%2021.8182%203C21.8182%203.33137%2021.574%203.6%2021.2727%203.6H18Z'%20fill='%23FFE923'/%3e%3c/svg%3e")
}

.header {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    gap: 3rem;
    padding: 1.5rem;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 10
}

@media screen and (max-width:768px) {
    .header {
        flex-direction: column;
        align-items: flex-start
    }
}

@media screen and (min-width:768px) {
    .header {
        position: sticky
    }
}

.card {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    padding: 0 0 2rem 2rem;
    width: 100%
}

@media screen and (max-width:768px) {
    .card {
        padding-left: 0
    }
}

.button {
    font-size: 1.5rem;
    padding: .5rem 1rem;
    border-radius: 3rem;
    background-color: transparent;
    cursor: pointer;
    border: 2px solid #fefefe;
    color: #fefefe;
    animation: neon-blink 3s infinite;
    box-shadow: 0 0 10px #ffe923, 0 0 4px #ffea00
}

.button:hover {
    animation: neon-blink 1200s infinite
}

.list {
    display: flex;
    flex-direction: column;
    gap: 1rem
}

@media screen and (max-width:768px) {
    .list {
        margin-left: 2rem
    }
}

.list__itm {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 1rem
}

.list__itm:before {
    width: 1.5rem;
    font-size: 1rem
}

.contact {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 3rem;
    background-color: #ffffff1a;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    border: 2px solid rgba(255, 233, 35, .6);
    border-radius: 100%;
    padding: 1rem
}

.contact:hover {
    filter: drop-shadow(0 0 10px #FFE923)
}

.contact__flex {
    display: flex;
    gap: 1rem
}

.contact__gallery {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    background-color: #ffffff1a;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    border: 2px solid rgba(255, 233, 35, .6);
    border-radius: 100%;
    padding: 1rem;
    width: 5rem;
    aspect-ratio: 1
}

.contact__gallery__container {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    justify-content: center;
    align-items: center
}

.contact__text {
    font-size: 1.5rem;
    font-family: bebas, monospace
}

.contact__img {
    width: 3rem
}

.form {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    width: fit-content;
    padding: 3rem;
    margin-bottom: 3rem
}

.form__list {
    display: flex;
    flex-direction: column;
    gap: 2rem
}

.form__itm {
    display: flex;
    flex-direction: column;
    gap: 1rem
}

.form__itm--details {
    opacity: 0;
    position: absolute;
    top: -10000000;
    right: -10000000;
    padding: 0;
    margin: 0;
    border: none;
    width: 0;
    height: 0
}

.form__input {
    border: 2px solid rgba(255, 233, 35, .6);
    border-radius: 3rem;
    width: 100%;
    padding: .5rem;
    font-size: 1.25rem
}

.form__input:hover {
    box-shadow: 0 0 10px #ffe923, 0 0 4px #ffea00
}

.form__input:focus {
    box-shadow: 0 0 10px #ffe923, 0 0 4px #ffea00
}

.form__text-area {
    border-radius: 1rem;
    height: 14rem
}

.notif {
    font-size: 1.75rem;
    padding: 2rem;
    position: fixed;
    top: 25%;
    left: 50%;
    transform: translate(-50%);
    background-color: #000000e6;
    text-align: center;
    z-index: 100;
    width: auto;
    min-width: 300px;
    max-width: 90vw;
    border-radius: .75rem;
    box-shadow: 0 4px 12px #0000004d;
    transition: opacity .6s ease, transform .6s ease;
    opacity: 1
}

@media screen and (max-width:600px) {
    .notif {
        font-size: 1.25rem
    }
}

.notif--error {
    display: flex;
    justify-content: center;
    color: #a72e47;
    border-left: 5px solid #A72E47
}

.notif--success {
    color: #ffe923;
    border-left: 5px solid #FFE923
}

.notif__container {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 1rem
}

.notif__close {
    color: #fefefe;
    font-size: 1rem;
    border: 1px solid #fefefe;
    border-radius: .5rem;
    padding: .25rem .5rem;
    cursor: pointer;
    background: #ffffff1a;
    transition: background .3s ease
}

.notif__close:hover {
    background: #ffffff4d
}

.pro__lst {
    display: flex;
    flex-direction: column;
    gap: 1rem
}

.pro__card {
    display: flex;
    flex-direction: row;
    gap: 3rem;
    line-height: 1.5;
    padding: 1.5rem;
    border: 0px
}

@media screen and (max-width:768px) {
    .pro__card {
        flex-direction: column;
        gap: 2rem
    }
}

.pro__titles {
    min-width: 30rem;
    overflow: hidden
}

@media screen and (max-width:768px) {
    .pro__titles {
        min-width: 100%
    }
}

.nav {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%
}

.nav__lst {
    display: flex;
    gap: 2rem;
    margin: auto
}

.avatar {
    width: 15rem;
    border-radius: 2rem
}

.avatar__box {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: 13rem;
    aspect-ratio: 1
}

.avatar__mask {
    max-width: 8.5rem;
    position: absolute;
    bottom: 32%;
    left: 18%;
    z-index: 5
}

.avatar__svg {
    opacity: 1;
    fill: #0d0d0d !important;
    transition: ease-in-out .1s opacity
}

.avatar__rectangle {
    width: 7rem;
    height: 2rem;
    position: absolute;
    z-index: 2
}

@keyframes neon-blink {

    0%,
    to {
        text-shadow: 0 0 5px #ffd700, 0 0 10px #ffd700, 0 0 20px #ffd700, 0 0 30px #ffd700, 0 0 40px #ffea00;
        opacity: 1
    }

    50% {
        text-shadow: 0 0 5px #ffd700, 0 0 10px #ffd700, 0 0 20px #ffd700, 0 0 30px #ffd700, 0 0 0 #ffd700;
        opacity: .5
    }
}

.neon {
    color: #f4e9a5;
    animation: neon-blink 5s infinite
}

@keyframes glitch {
    0% {
        opacity: 1;
        transform: translate(0)
    }

    20% {
        opacity: .8;
        transform: translate(-2px, 2px)
    }

    40% {
        opacity: .6;
        transform: translate(2px, -2px)
    }

    60% {
        opacity: .9;
        transform: translate(-1px, 1px)
    }

    80% {
        opacity: .7;
        transform: translate(1px, -1px)
    }

    to {
        opacity: 1;
        transform: translate(0)
    }
}

.glitch {
    font-size: 48px;
    color: #ffe227;
    animation: glitch .5s infinite;
    position: relative;
    overflow: hidden;
    text-shadow: 1px 1px 0 rgba(255, 255, 255, .6), -1px -1px 0 rgba(0, 0, 0, .6)
}

@keyframes float {

    0%,
    to {
        transform: translateY(0)
    }

    50% {
        transform: translateY(-10px)
    }
}

.float {
    font-size: 48px;
    color: #fbee32;
    animation: float 2s infinite
}

@keyframes scale-shake {
    0% {
        transform: scaleZ(1)
    }

    1.666667% {
        transform: scale3d(1.16971, 1.16971, 1)
    }

    3.333333% {
        transform: scale3d(1.27101, 1.27101, 1)
    }

    5% {
        transform: scale3d(1.31969, 1.31969, 1)
    }

    6.666667% {
        transform: scale3d(1.32993, 1.32993, 1)
    }

    8.333333% {
        transform: scale3d(1.31385, 1.31385, 1)
    }

    10% {
        transform: scale3d(1.28134, 1.28134, 1)
    }

    11.666667% {
        transform: scale3d(1.24015, 1.24015, 1)
    }

    13.333333% {
        transform: scale3d(1.19603, 1.19603, 1)
    }

    15% {
        transform: scale3d(1.15302, 1.15302, 1)
    }

    16.666667% {
        transform: scale3d(1.11374, 1.11374, 1)
    }

    18.333333% {
        transform: scale3d(1.07967, 1.07967, 1)
    }

    20% {
        transform: scale3d(1.05144, 1.05144, 1)
    }

    21.666667% {
        transform: scale3d(1.02905, 1.02905, 1)
    }

    23.333333% {
        transform: scale3d(1.01212, 1.01212, 1)
    }

    25% {
        transform: scaleZ(1)
    }

    26.666667% {
        transform: scale3d(.99192, .99192, 1)
    }

    28.333333% {
        transform: scale3d(.9871, .9871, 1)
    }

    30% {
        transform: scale3d(.98478, .98478, 1)
    }

    31.666667% {
        transform: scale3d(.9843, .9843, 1)
    }

    33.333333% {
        transform: scale3d(.98506, .98506, 1)
    }

    35% {
        transform: scale3d(.98661, .98661, 1)
    }

    36.666667% {
        transform: scale3d(.98857, .98857, 1)
    }

    38.333333% {
        transform: scale3d(.99067, .99067, 1)
    }

    40% {
        transform: scale3d(.99272, .99272, 1)
    }

    41.666667% {
        transform: scale3d(.99459, .99459, 1)
    }

    43.333333% {
        transform: scale3d(.99621, .99621, 1)
    }

    45% {
        transform: scale3d(.99755, .99755, 1)
    }

    46.666667% {
        transform: scale3d(.99862, .99862, 1)
    }

    48.333333% {
        transform: scale3d(.99942, .99942, 1)
    }

    50% {
        transform: scaleZ(1)
    }

    51.666667% {
        transform: scale3d(1.00038, 1.00038, 1)
    }

    53.333333% {
        transform: scale3d(1.00061, 1.00061, 1)
    }

    55% {
        transform: scale3d(1.00072, 1.00072, 1)
    }

    56.666667% {
        transform: scale3d(1.00075, 1.00075, 1)
    }

    58.333333% {
        transform: scale3d(1.00071, 1.00071, 1)
    }

    60% {
        transform: scale3d(1.00064, 1.00064, 1)
    }

    61.666667% {
        transform: scale3d(1.00054, 1.00054, 1)
    }

    63.333333% {
        transform: scale3d(1.00044, 1.00044, 1)
    }

    65% {
        transform: scale3d(1.00035, 1.00035, 1)
    }

    66.666667% {
        transform: scale3d(1.00026, 1.00026, 1)
    }

    68.333333% {
        transform: scale3d(1.00018, 1.00018, 1)
    }

    70% {
        transform: scale3d(1.00012, 1.00012, 1)
    }

    71.666667% {
        transform: scale3d(1.00007, 1.00007, 1)
    }

    73.333333% {
        transform: scale3d(1.00003, 1.00003, 1)
    }

    75% {
        transform: scaleZ(1)
    }

    76.666667% {
        transform: scale3d(.99998, .99998, 1)
    }

    78.333333% {
        transform: scale3d(.99997, .99997, 1)
    }

    80% {
        transform: scale3d(.99997, .99997, 1)
    }

    81.666667% {
        transform: scale3d(.99996, .99996, 1)
    }

    83.333333% {
        transform: scale3d(.99997, .99997, 1)
    }

    85% {
        transform: scale3d(.99997, .99997, 1)
    }

    86.666667% {
        transform: scale3d(.99997, .99997, 1)
    }

    88.333333% {
        transform: scale3d(.99998, .99998, 1)
    }

    90% {
        transform: scale3d(.99998, .99998, 1)
    }

    91.666667% {
        transform: scale3d(.99999, .99999, 1)
    }

    93.333333% {
        transform: scale3d(.99999, .99999, 1)
    }

    95% {
        transform: scale3d(.99999, .99999, 1)
    }

    96.666667% {
        transform: scaleZ(1)
    }

    98.333333% {
        transform: scaleZ(1)
    }

    to {
        transform: scaleZ(1)
    }
}

.shake {
    animation: scale-shake 1s infinite
}

.footer {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 3rem;
    width: 100%;
    background-color: #ffffff1a;
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    border-top: 2px solid rgba(255, 233, 35, .6);
    padding: 3rem
}