@import url("reset.css");
@import url("nav.css");
@import url("languages.css");


body {
    min-height: 100vh;
    margin-inline: 0; 
    padding-block-start: 0; 
    padding-block-end: 0; 
    display: flex;
    flex-direction: column;
    width:100%;
    font-family: sans-serif;
}
body.locked {
    overflow-y: hidden;
}


header {
    position: sticky;
    top: 0;
    background-color: white;
    z-index: 10;
    transition:0.3s;
}


main{
    flex:1;
}



.back-to-top {
    position: fixed;
    bottom: 2rem;
    right: 2rem;
    z-index: 10000;
    width: 42px;
    height: 42px;
    background-color: var(--primary-color-lighter);
    border-radius: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    cursor: pointer;
    transition: 0.2s;
    opacity: 0;
    visibility: hidden;
}

    .back-to-top.show {
        opacity: 1;
        visibility: visible;
    }


a{
    text-decoration: none;
    transition: all 0.3s;
    display: inline-block;
    cursor: pointer;
}

img{
    display:inline-block;
    max-width:100%;
}

p:first-child{
    margin-block-start: 0;
}
p:last-child{
    margin-block-end: 0;
}

.material-symbols-outlined{
    max-width: 24px;
    overflow: hidden;
}

.container{
    width: clamp(300px, 100% , 1400px);
    margin: 0 auto;
    padding-inline: 1rem;
}
.container-narrow{
    width: clamp(300px, 100% , 1200px);
    margin: 0 auto;
    padding-inline: 1rem;
}

[x-cloak] {
    display: none !important;
}

table{
    max-width: 100%;
}

/* Components */
section{
    position: relative;
    .section-bg{
        position: absolute;
        inset:0;
        overflow: hidden;
        z-index: -1;
        .bg-image{
            position: relative;
            width: 100%;
            height: 100%;
            z-index: 0;
            img{
                width: 100%;
                height: 100%;
                object-fit: cover;
            }
        }
        .bg-overlay{
            position: absolute;
            inset:0;
            z-index: 1;
        }
    }
}

.block{
    position: relative;
    .block-bg{
        position: absolute;
        inset:0;
        overflow: hidden;
        z-index: 0;
        .block-bg-image{
            position: relative;
            width: 100%;
            height: 100%;
            z-index: 1;
            img{
                width: 100%;
                height: 100%;
                object-fit: cover;
            }
        }
        .block-bg-overlay{
            position: absolute;
            inset:0;
            z-index: 2;
        }
    }
    .block-content{
        position: relative;
        z-index: 3;
    }
}