html {
    font-family: Arial, Helvetica, sans-serif;
}

body {
    margin: 0 auto;
    width: 100vw;
    background: #f4f1ef;
    flex-direction: column;
    display: flex;
    min-height: 100vh;
    min-width: 100vw;
}

.menu-bar {
    background: white;
    height: 100px;
    width: 100vw;
    margin-top: 30px;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: MirandaSans;
    font-size: 16px;
    color: #986798;
    font-weight: 600;
}

.menu-bar-item {
    display: flex;
    align-items: center;
    gap: 4px;
    user-select: none;
    margin-left: 20px;
}

.menu-bar-item:hover {
    color: #cc90cc;

    .drop-down-icon {
        transform: rotate(180deg);
        margin-bottom: 3px;
    }
}

.menu-bar-logo {
    width: 100px;
    height: 100px;
    margin-right: 20px;
}

.drop-down-icon {
    font-family: MaterialSymbolsRounded;
    display: flex;
    align-items: center;
    font-size: 24px;
    margin-top: 3px;
}

.banner {
    width: 100vw;
    height: 30vh;
    background: linear-gradient(135deg, #f3d7f3, #c48cc4);
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    margin-top: 20px;
    user-select: none;
}

.banner-content {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    animation: pulseBanner 7.5s infinite ease-in-out;
}

.banner-text {
    font-family: MirandaSans, Arial, sans-serif;
    font-size: 3rem;
    font-weight: 700;
    color: white;
    letter-spacing: 4px;
}

.construction-icon {
    font-family: MaterialSymbolsRounded;
    display: flex;
    align-items: center;
    font-size: 5rem;
    color: white;
    margin-right: 20px;
}

.search-box {
    position: relative;
    display: inline-block;
    margin-left: 30px;
}

.user-icon {
    background-color: #ffffff;
    margin-left: 25px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.user-icon-content {
    font-family: MaterialSymbolsRounded;
    font-size: 3.8rem;
    font-weight: 300;
    font-variation-settings:
    'FILL' 1,
    'wght' 100,
    'GRAD' 0,
    'opsz' 24
}

.textbox {
    min-width: 250px;
    height: 38px;
    border: 1.5px solid #986798;
    border-radius: 5px;
    padding: 0 40px 0 10px;
    box-sizing: border-box;
    text-align: left;
    color: #5b5b5b;
    font-family: MirandaSans;
}

.textbox::placeholder {
    color: #5b5b5b;
}

.textbox:focus {
    outline: none;
    border: 2px solid #cc90cc;
}

.search-box:focus-within .search-icon {
    color: #cc90cc;
    font-weight: 400;
}

.search-icon {
    font-family: MaterialSymbolsRounded;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
    color: #986798;
    pointer-events: none;
    font-size: 25px;
    font-weight: 300;
}

.contact-footer {
    width: 100vw;
    height: fit-content;
    background-color: #dbd8d7;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-top: auto;
    margin-bottom: 40px;
    font-family: MirandaSans;
    overflow: hidden;
}

.contact-footer-row {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}

.contact-footer-column {
    margin-top: 40px;
    margin-bottom: 40px;
    width: 100%;
    max-width: 400px;
    display: flex;
    flex-direction: column;
    margin: 20px;
}

.contact-footer-column-header {
    margin-bottom: 20px;
    font-weight: bold;
    color: #986798;
    user-select: none;
}

.contact-footer-column-big-value {
    font-size: 1.5rem;
    color: #986798;
}

.contact-footer-column-text {
    color: #986798;
    user-select: none;
}

@keyframes pulseBanner {
    0% {
        transform: scale(1);
    }
    50% {
        transform: scale(0.85);
    }
    100% {
        transform: scale(1);
    }
}

@font-face {
    font-family: MirandaSans;
    src: url(./Fonts/MirandaSans-VariableFont_wght.ttf);
}

@font-face {
    font-family: MaterialSymbolsRounded;
    src: url(./Fonts/MaterialSymbolsRounded-VariableFont_FILL\,GRAD\,opsz\,wght.ttf);
}