*{
    box-sizing: border-box;
    outline: none;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

body{
    font-family: 'Open Sans', sans-serif;
    font-size: 16px;
    line-height: 24px;
    color: #000000;
}

img{
    max-width: 100%;
}

.logo{
    width: 184px;
    float: left;
    position: absolute;
    top: 18px;
    left: 28px;
    z-index: 2;
}

.first-screen {
    background: linear-gradient(107.31deg, rgba(238, 169, 218, 0.5) 0.36%, rgba(152, 146, 242, 0.5) 100%), #FFFFFF;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    width: 100%;
}

.first-screen .start {
    background: rgba(255, 255, 255, 0.7);
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.1), 0px 0px 45px rgba(0, 0, 0, 0.1);
    border-radius: 16px;
    background-image: url('/assets/images/bg-logo.png');
    background-repeat: no-repeat;
    background-position: center 7%;
    background-size: 31%;
    padding: 0;
    max-width: 1520px;
    width: 79vw;
    min-height: 81vh;
    display: flex;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    position: relative;
}

.first-screen .start .logo-big{
    max-width: 750px;
    width: 50%;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 25%;
}

.first-screen .start .button{
    max-width: 550px;
    width: 100%;
}

.first-screen .start-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 70px;
    width: 76%;
}

.first-screen .start-content p {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: normal;
    font-size: 26px;
    line-height: 50px;
    text-align: center;
    color: #333333;
    margin-top: 32px;
}

.first-screen .start-content p a,
.first-screen .start-content p a:active {
    color: #000C7E;
}

.container{
    height: 100vh;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    background: url("/assets/images/step1.jpg") repeat top center/contain;
}
.container.step-1 {
    background: url("/assets/images/step1.jpg") repeat top center/contain;
}

.container.step-2 {
    background: url("/assets/images/step2.jpg") repeat top center/contain;
}

.container.step-3 {
    background: url("/assets/images/step3.jpg") repeat top center/contain;
}

.container.step-4 {
    background: url("/assets/images/step4.jpg") repeat top center/contain;
}

.container::before{
    position: absolute;
    top: 0;
    left: 0;
    content: '';
    background: radial-gradient(49.17% 155.39% at 50% 50%, rgba(0, 0, 0, 0.4) 0%, rgba(0, 0, 0, 0) 100%);
    width: 100%;
    height: 100%;
    z-index: 1;
}

.slide{
    background: #FFFFFF;
    box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.5), 0px 0px 45px rgba(0, 0, 0, 0.5);
    border-radius: 16px;
    width: 90%;
    max-width: 960px;
    min-height: 540px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    position: relative;
    z-index: 2;
}

.content{
    padding: 0px 120px;
    width:100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
    min-height: 320px;
}

.content .title{
    font-weight: bold;
    font-size: 72px;
    line-height: 72px;
    text-transform: uppercase; 
    margin-bottom: 50px;
}

.content .text{
    font-weight: 600;
    font-size: 26px;
    line-height: 50px;
}

.content.error .title{
    font-weight: bold;
    font-size: 72px;
    line-height: 72px;
    text-transform: uppercase; 
    margin-bottom: 50px;
}

.content.error .text{
    font-size: 48px;
    line-height: 130%;
}

.content.questions-content .slide-panel{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    display: flex;
    justify-content: space-between;
}

.content.questions-content .slide-panel .counter{
    font-size: 26px;
    font-weight: 600;
    color: #C2C8CE;
    padding: 22px 25px 0 0;
}

.content.questions-content .slide-panel .back-button{
    padding: 13px 0 0 18px;
}

.content.questions-content .button{
    width: 550px;
    max-width: 100%;
}

.content.questions-content .text{
    margin-bottom: 50px;
}

.content.questions-content .form{
    width: 550px;
    max-width: 100%;
    display: flex;
    flex-direction: column;
    text-align: left;
}

.content.questions-content .form .button{
    width: 100%;
    margin-bottom: 25px;
}

.button{
    font-family: 'Montserrat', sans-serif;
    background: #45B61D;
    border-radius: 4px;
    font-style: normal;
    font-weight: 600;
    font-size: 27.4px;
    line-height: 41px;
    color: #FFFFFF;
    border:0;
    outline: 0;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
    padding: 16px;
    display: inline-block;
}

.uadicon {
    display: inline-block;
    width: 1em;
    height: 1em;
    transition: all .24s;
    fill: currentColor;
    stroke: currentColor;
    stroke-width: 0;
}

.content.questions-content .checkbox-row{
    margin-bottom: 0;
}

.content.questions-content .checkbox-row a {
    color: #000C7E;
}

.content.questions-content .form .errors{
    color: #f00;
    margin-bottom: 35px;
    font-size: 16px;
    line-height: 24px;
}

.content.questions-content .form .errors:empty{
    display: none;
}

.static{
    margin: 20px;
}

.static h1{
    font-size: 30px;
    line-height: 36px;
    font-weight: 700;
    margin-bottom: 30px;
}

.static h2{
    font-size: 24px;
    line-height: 30px;
    font-weight: 700;
    margin-bottom: 24px;
    display: inline-block;
}

.static p{
    margin-bottom: 16px;
}

.static ul{
    list-style-type: disc;
    list-style-position: inside;
    margin-bottom: 16px;
}

.static p + h2, .static ul + h2{
    margin-top: 20px;
}

.privacy-container {
    display: block;
    text-align: center;
    color: #FFFFFF;
    font-family: Open Sans;
    font-style: normal;
    font-weight: 600;
    font-size: 22px;
    line-height: 50px;
    position: absolute;
    bottom: 15px;
    left: 50%;
    transform: translate(-50%);
    z-index: 2;
}

.privacy-link{
    color: #FFFFFF;
    text-decoration: underline;
}
.logotip{
    width: 100%;
    max-width: 185px;
    max-height: 40px;
}
.page-title{
    font-family: Montserrat;
    font-style: normal;
    font-weight: normal;
    font-size: 96px;
    line-height: 130%;
    display: block;
    text-align: center;
}
.page-header{
    margin: 25px 0px;
}

.privacy-content, .terms-conditions-content{
    margin: 0 auto;
    max-width: 1375px;
    width: 100%;
    padding: 30px 25px;
}

main.privacy h3,h4{
    font-style: normal;
    font-weight: bold;
    margin: 15px 0;
}

main.privacy h3{
    font-family: Montserrat;
    font-size: 30px;
    line-height: 42px;
}

main.privacy h4,.terms-conditions h4{
    font-family: Open Sans;
    font-size: 20px;
    line-height: 24px;
}

main.privacy p{
    font-family: Open Sans;
    font-style: normal;
    font-weight: normal;
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 10px;
}

ul.list {
    list-style:disc;
    padding-left: 25px;
    margin-bottom: 15px;
}

ul.list li{
    margin-bottom: 5px;
}

.terms-conditions-content .page-title{
    font-size: 64px;
}

.terms-conditions h2{
    font-family: Montserrat;
    font-style: normal;
    font-weight: bold;
    font-size: 30px;
    line-height: 42px;
    text-align: center;
    text-transform: uppercase;
    margin-top: 50px;
    margin-bottom: 30px;
}
@media (max-width: 1280px){
    .first-screen .start-content {
        width: 91%;
    }

    .first-screen .start-content p{
        font-size: 24px;
        line-height: 34px;
    }
}

@media (max-width: 1023px){
    .first-screen .start-content p{
        font-size: 18px;
        line-height: 145%;
        margin-top: 20px;
    }

    .container.step-1{
        background-image: url("/assets/images/mobile_step1.jpg");
    }

    .container.step-2{
        background-image: url("/assets/images/mobile_step2.jpg");
    }

    .container.step-3{
        background-image: url("/assets/images/mobile_step3.jpg");
    }

    .container.step-4{
        background-image: url("/assets/images/mobile_step4.jpg");
    }

    .slide{
        border-radius: 6px;
        min-height: 275px;
    }

    .logo{
        width: 110px;
        top: 10px;
        left: 10px;
    }

    .content{
        padding: 35px 25px;
        min-height: 230px;
    }

    .button{
        font-size: 18px;
        line-height: 18px;
        height: 44px;
        padding: 14px 16px;
    }
    
    .content .title{
        font-size: 36px;
        line-height: 36px;
    }

    .content.error .title{
        font-size: 36px;
        line-height: 36px;
    }

    .content.error .text{
        font-size: 18px;
        line-height: 145%;
    }

    .content.questions-content .slide-panel .counter{
        font-size: 12px;
        line-height: 19px;
        padding: 10px 15px 0 0;
    }

    .content.questions-content .text{
        font-size: 16px;
        line-height: 145%;
        margin-bottom: 35px;
    }

    .content.questions-content .slide-panel .back-button{
        width: 30px;
        padding: 10px 0 0 10px;
    }

    .content.questions-content .button{
        max-width: 80%;
    }
    
    .content.questions-content .form .button{
        max-width: 100%;
        margin-bottom: 15px;
    }

    .content.questions-content .form .errors{
        color: #f00;
        margin-bottom: 15px;
        font-size: 14px;
        line-height: 18px;
    }

    .terms-conditions-content .page-title{
        font-size: 48px;
    }
}

@media (max-width: 768px){
    .first-screen {
        padding: 0 25px;
    }

    .first-screen .start {
        width: 100%;
        min-height: 74vh;
        background-size: 77%;
        background-position: center 9%;
    }

    .first-screen .start .logo-big {
        width: 67%;
        min-width: 208px;
        top: 30%;
    }

    .first-screen .start-content {
        width: 81%;
        bottom: 25px;
    }

    .first-screen .start-content .button {
        max-width: 200px;
        height: 44px;
    }
    .first-screen .start-content p{
        font-size: 14px;
        line-height: 145%;
        margin-top: 15px;
    }

    .container::before{
        position: absolute;
        top: auto;
        left: 0;
        bottom: 0;
        content: '';
        background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.3) 100%);
        width: 100%;
        height: 78px;
        z-index: 1;
    }
    .page-title{
        font-size: 64px;
    }

    .terms-conditions-content .page-title{
        font-size: 42px;
    }

    .terms-conditions h2{
        font-size: 24px;
    }

    main.privacy h3{
        font-size: 24px;
    }

    main.privacy h4{
        font-size: 20px;
    }
    .privacy-container {
        font-size: 16px;
        line-height: 22px;
        width: calc(100% - 50px);
    }
}

@media (max-width: 576px){
    .logotip{
        max-width: 123px;
        max-height: 26px;
    }
    .privacy-link{
        font-size: 16px;
    }

    .privacy-content .page-title{
        font-size: 42px;
    }

    .terms-conditions-content .page-title{
        font-size: 28px;
    }
    .terms-conditions h2{
        font-size: 20px;
    }

    main.privacy h3{
        font-size: 18px;
    }

    main.privacy h4{
        font-size: 16px;
    }
}

.hide {
    display: none !important;
}