html{
    line-height:1.15;
    -webkit-text-size-adjust:100%;
}

body{
    margin:0;
}

main{
    display:block;
}

h1{
    font-size:2em;
    margin:0.67em 0;
}

hr{
    box-sizing:content-box;
    height:0;
    overflow:visible;
}

pre{
    font-family:monospace, monospace;
    font-size:1em;
}

a{
    background-color:transparent;
}

abbr[title]{
    border-bottom:none;
    text-decoration:underline;
    text-decoration:underline dotted;
}

b,
strong{
    font-weight:bolder;
}

code,
kbd,
samp{
    font-family:monospace, monospace;
    font-size:1em;
}

small{
    font-size:80%;
}

sub,
sup{
    font-size:75%;
    line-height:0;
    position:relative;
    vertical-align:baseline;
}

sub{
    bottom:-0.25em;
}

sup{
    top:-0.5em;
}

img{
    border-style:none;
}

button,
input,
optgroup,
select,
textarea{
    font-family:inherit;
    font-size:100%;
    line-height:1.15;
    margin:0;
}

button,
input{
    overflow:visible;
}

button,
select{
    text-transform:none;
}

button,
[type="button"],
[type="reset"],
[type="submit"]{
    -webkit-appearance:button;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner{
    border-style:none;
    padding:0;
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring{
    outline:1px dotted ButtonText;
}

fieldset{
    padding:0.35em 0.75em 0.625em;
}

legend{
    box-sizing:border-box;
    color:inherit;
    display:table;
    max-width:100%;
    padding:0;
    white-space:normal;
}

progress{
    vertical-align:baseline;
}

textarea{
    overflow:auto;
}

[type="checkbox"],
[type="radio"]{
    box-sizing:border-box;
    padding:0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button{
    height:auto;
}

[type="search"]{
    -webkit-appearance:textfield;
    outline-offset:-2px;
}

[type="search"]::-webkit-search-decoration{
    -webkit-appearance:none;
}

::-webkit-file-upload-button{
    -webkit-appearance:button;
    font:inherit;
}

details{
    display:block;
}

summary{
    display:list-item;
}

template{
    display:none;
}

[hidden]{
    display:none;
}

:root{
    --main-back:#181818;
    --main-color:#FBFBFB;
    --link:rgb(0, 200, 255);
}

*,
*::before,
*::after{
    box-sizing:border-box;
}

html,
body{
    margin:0;
    padding:0;
    min-height:100vh;
}

html{
    font-style:normal;
    font-weight:400;
    line-height:1.15;
    font-family:"Arial", sans-serif;
    color:var(--main-color);
    background-color:var(--main-back);
    scroll-behavior:smooth;

    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
    text-rendering:optimizeLegibility;
}

body{
    width:100%;
    height:100%;
}

a{
    color:var(--main-color);
    text-decoration:none;
}

img,
video{
    display:block;
    max-width:100%;
    height:auto;
    object-fit:contain;
}

textarea{
    resize:none;
}

input,
textarea{
    border-radius:0;

    &::placeholder{
        opacity:1;
    }

    &:invalid{
        box-shadow:none;
    }
}

select{
    border-radius:0;
}

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration{
    appearance:none;
}

input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button{
    margin:0;

    appearance:none;
}

input[type="number"]{
    appearance:textfield;
}

select,
textarea,
input:matches([type="email"],
    [type="number"],
    [type="password"],
    [type="search"],
    [type="tel"],
    [type="text"],
    [type="url"]){
    appearance:none;
}

button,
[type="button"],
[type="reset"],
[type="submit"]{
    appearance:none;
    border:0;
    padding:0;
    background:none;
    border:none;
    cursor:pointer;
}

.wrapper{
    position:relative;

    display:flex;
    flex-direction:column;
    min-height:100vh;
    min-height:100dvh;
    max-width:120rem;
    margin:0 auto;

    .header,
    .footer{
        flex-shrink:0;
    }

    main{
        flex-grow:1;
    }
}

.visually-hidden{
    position:absolute;

    width:1px;
    height:1px;
    margin:-1px;
    padding:0;
    overflow:hidden;

    white-space:nowrap;

    border:0;

    clip:rect(0 0 0 0);
    clip-path:inset(100%);
}

.scroll-lock-ios{
    position:fixed;

    overflow:hidden;
}

.scroll-lock{
    overflow:hidden;
}

.no-scrollbar{
    -ms-overflow-style:none;
    scrollbar-width:none;

    &::-webkit-scrollbar{
        display:none;
    }
}

.no-transition{
    transition:none !important;
}

.js-focus-visible :focus:not(.focus-visible){
    outline:none;
}

.container{
    width:100%;
    max-width:90rem;
    margin:0 auto;
    padding:0 1.5rem;
    @media (max-width: 120rem){
        padding:0 1.5rem;
    }
    @media (max-width: 89.9375rem){
        padding:0 1.5rem;
    }
    @media (max-width: 63.9375rem){
        padding:0 1.25rem;
    }
    @media (max-width: 47.9375rem){
        padding:0 1rem;
    }
}

header, footer{
    padding:0.8rem 0;
}

header .container,
footer .container{
    display:flex;
}

header .container{
    justify-content:space-between;
}

footer .container{
    justify-content:center;
}

.link{
    display:inline-block;
    padding:0.3em 0;
    font-size:1.2em;
    color:var(--link);
}

.link:hover{
    opacity:0.6;
    transition:opacity 0.3s ease;
}

.link--btn{
    padding:0.3em;
}

.link--ico{
    display:inline-flex;
    position:relative;

    &::after{
        content:"";
        display:block;
        width:1em;
        aspect-ratio:1/1;
        margin-left:0.2em;
        background-size:contain;
        background-repeat:no-repeat;
        background-position:center;
    }
}

.link--tg::after{
    background-image:url(../img/telegram.webp);
}
