@font-face {
    font-family: NotoSans;
    src: url(../fonts/noto/notosans.ttf);
}

:root {
    --primary-light-color: #6d91c4;
    --primary-dark-color: #315789;
    --secondary-color: #F6F4FB;

    --primary-light-color-hover: #597db0;
    --primary-dark-color-hover: #2a4465;

    --border-radius: 0;
    --border-extended-radius: 0;
    --border-color: #EAE8E1;

    --text-primary-color: #2a4465;
    --text-secondary-color: #4d5d6d;

    --bg-color: #FBFBFC;

    --overlay-color: #424267;

    --section-padding: 80px;
    --section-reduced-padding: 40px;
    --block-padding: 20px;
    --block-extended-padding: 40px;
    
    --placeholder-color: #B9B9B9;

    --failure-color: #FF0000;
    --success-color: #00C610;
}

::selection {
    color: #FFFFFF;
    -webkit-text-fill-color: #FFFFFF;
    background: var(--primary-dark-color);

    text-shadow: none;
}

::-webkit-selection {
    color: #FFFFFF;
    -webkit-text-fill-color: #FFFFFF;
    background: var(--primary-dark-color);

    text-shadow: none;
}

::-moz-selection {
    color: #FFFFFF;
    -webkit-text-fill-color: #FFFFFF;
    background: var(--primary-dark-color);

    text-shadow: none;
}

::placeholder {
    color: var(--placeholder-color);

    opacity: 1;
}

:-ms-input-placeholder {
    color: var(--placeholder-color);
}
  
::-ms-input-placeholder {
    color: var(--placeholder-color);
}

::-webkit-scrollbar {
    width: 10px;

    background-color: transparent;

    display: none;
}

::-webkit-scrollbar-track {
    background-color: transparent;

    display: none;
}

::-webkit-scrollbar-thumb {
    border: 5px solid #BABAC0;
    border-radius: 10px;
    
    color: #BABAC0;

    display: none;
}

::-webkit-scrollbar-button {
    display: none;
}

* {
    font-family: NotoSans, Helvetica, Arial, sans-serif;

    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
}

html {
    scroll-behavior: smooth;

    overflow-x: hidden;
}

body {
    margin: 0;

    overflow-x: hidden;
}

h1 {
    color: var(--text-primary-color);

    letter-spacing: 0px;

    line-height: 1.2;

    margin: 0;
}

h2 {
    color: var(--text-primary-color);

    font-weight: 800;

    line-height: 1.4;

    margin: 0;
}

h3, h4, h5 {
    color: var(--text-primary-color);

    font-weight: 800;

    line-height: 1.4;

    margin: 0;
}

p {
    color: var(--text-secondary-color);

    font-size: 16px;
    font-weight: 400;

    line-height: 1.4;

    margin: 0;
}

span {
    color: var(--text-secondary-color);

    font-size: 16px;
    font-weight: 400;

    line-height: 1.4;
}

a {
    color: var(--text-secondary-color);

    font-size: 16px;
    font-weight: 400;

    text-decoration: none;
}

a:focus {
	outline: none !important;
}

b {
    font-weight: 800;
}

button {
    color: var(--text-primary-color);
    
    line-height: 1;
}

select {
    color: var(--placeholder-color);
    
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
}

input {
    font-size: 16px;
}

input[type="submit"] {
    cursor: pointer;

    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
}

ul {
    list-style: none;

    padding: 0;
    margin: 0;
}

li {
    color: var(--text-primary-color);

    font-size: 16px;
    font-weight: 400;

    line-height: 1.4;
}

img {
    object-fit: cover;
    -o-object-fit: cover;

    object-position: center center;
    -o-object-position: center center;
}

@media only screen and (max-width: 1000px) {
    
}

@media only screen and (max-width: 800px) {
    :root {
        --section-padding: 60px;
    }
}

@media only screen and (max-width: 600px) {
    :root {
        --section-padding: 40px;
    }

    body::-webkit-scrollbar {
        display: none;
    }
}

@media only screen and (max-width: 400px) {
    :root {
        --section-padding: 20px;
    }
}