* 
{
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    user-select: none;
}

body 
{
    background-color: whitesmoke;
    font-family: 'Montserrat', sans-serif;
    color: rgb(53, 53, 53);
    height: 100vh;
}

.main-container
{
    height: 61.5vh;
    text-align: center;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.main-title 
{
    font-size: 8vh;
    font-weight: 400;
    letter-spacing: 2vh;
    margin-bottom: 0.5vh;
}

.sub-title-wrapper 
{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2vh;
    margin-bottom: 2.5vh;
}

.sub-title 
{
    font-size: 2.4vh;
    font-weight: 500;
    letter-spacing: 0.8vh;
}

.line 
{
    height: 0.2vh;
    width: 8vh;
    background-color: rgb(53, 53, 53);
}

.status 
{
    font-size: 2vh;
    font-weight: 00;
    letter-spacing: 0.3vh;
    margin-bottom: 4vh;
}

.qr-wrapper 
{
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
}

.qr-code 
{
    background-image: url("https://api.qrserver.com/v1/create-qr-code/?size=150x150&data=https://pilatesroom.by" );
    background-position: center;
    background-size: cover;
    width: 10vh;
    height: 10vh;
}

.handle 
{
    font-size: 2vh;
    letter-spacing: 0.1vh;
    text-decoration: none;
    color: rgb(53, 53, 53);
    border-bottom: 0.1vh solid whitesmoke;
    transition: 0.1s;
}

.handle:hover
{
    border-bottom: 0.1vh solid #666;
    color: #666;
}

@media (max-width: 480px) 
{
    .main-title {
        font-size: 4.5vh;
        letter-spacing: 0.8vh;
    }
    .line {
        width: 4vh;
    }
    .sub-title {
        font-size: 18px;
    }
}

.site-footer 
{
    background-color: rgb(53, 53, 53);
    color: whitesmoke;
    padding: 6vh 2vh 0.2vh;
    font-family: 'Montserrat', sans-serif;
    width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;

}

.footer-container 
{
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    gap: 30vh;
}

.footer-section
{
    max-width: fit-content;
    display: flex;
    flex-direction: column;
    min-width: 10vh;
}

.footer-section h4 
{
    font-size: 1.4vh;
    text-transform: uppercase;
    letter-spacing: 0.2vh;
    margin-bottom: 2vh;
    border-bottom: 0.1px solid whitesmoke;
    padding-bottom: 10px;
    display: inline-block;
}

.footer-links 
{
    list-style: none;
}

.footer-links li 
{
    margin-bottom: 1vh;
}

.footer-links a, .map-link, .social-links a {
    color: #999;
    text-decoration: none;
    font-size: 1.3vh;
    transition: color 0.3s;
}

.footer-links a:hover, .map-link:hover, .social-links a:hover {
    color: whitesmoke;
}

.work-hours {
    font-size: 1.3vh;
    color: #999;
    margin-top: 1vh;
}

.social-links {
    display: flex;
    flex-direction: column;
    gap: 1vh;
}

.footer-bottom {
    max-width: 120vh;
    margin: 4vh auto 0;
    padding-top: 2vh;
    border-top: 0.1vh solid whitesmoke;
    text-align: center;
}

.footer-bottom 
{
    font-size: 1.5vh;
    color: whitesmoke;
    width: 56%;
    margin-bottom: 1.5vh;
}

@media (max-width: 768px) 
{
    .footer-container 
    {
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
        gap: 5vh;
    }
}