body { background-color:#000;}
.mirpass * { box-sizing:border-box;}
.l-content--section { position:relative; margin-top:0;}
.logo { position:relative; padding:150px 0 170px;}
.logo:before { content:""; width:322px; height:22px; background:url(/mirpass/images/logo.svg) no-repeat; position:absolute; top:104px; left:0;}
h1 { font-size:64px; font-weight:600; line-height:120%;background: linear-gradient(99.25deg, rgba(219, 223, 223, 0.72) 28.82%, rgba(255, 255, 255, 0.93) 49.49%, rgba(216, 222, 222, 0.71) 68.69%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; text-fill-color: transparent; width:400px; }
.logo ul { padding:32px 0 60px;}
.logo li { font-size: 20px; line-height: 24px; color: #FFFFFF; position:relative; padding-left:32px; margin-bottom:16px;}
.logo li:before { content:""; position:absolute; top:calc(50% - 10px); left:0; width:20px; height:21px; background:url(/mirpass/images/arr.svg) center center no-repeat;}
a.button {display: inline-block; text-align:center; padding: 20px 32px; background: #FFFFFF; border: 1px solid #FFFFFF; border-radius: 8px; font-weight: 600; font-size: 20px; line-height: 24px; color:#000;}
.top:before { content:""; position:absolute; top:-49px; left: calc(50% - 78px); width:847px; height:993px; background:url(/mirpass/images/topbg.png) no-repeat; background-size:contain;}
.hasborder { z-index:2; margin-bottom:96px;}
.border { position: relative; padding: 48px; color: #FFF; background: #000; background-clip: padding-box; border: solid 2px transparent; border-radius: 24px;}
.border:before { content: ''; position: absolute; top: 0; right: 0; bottom: 0; left: 0; z-index: -1; margin: -2px; border-radius: inherit; background: linear-gradient(93.42deg, #7F8FAF 4.1%, #B9D6B3 98.63%);}
.border h4 { font-weight: 600; font-size: 32px; line-height: 120%; color: #FFFFFF; margin-bottom:4px;}
.border p {font-style: normal; font-weight: 500; font-size: 32px; line-height: 120%; color: #828282; margin-bottom:48px;}
.border .button { color:#000;}
.gradient {background: linear-gradient(93.19deg, #A498C8 -7.71%, #BCE0AF 104.1%) !important; border:none !important;}
.flex { display:flex; justify-content: space-between; margin-bottom:48px;}
.flex .block { width:561px; padding:220px 48px 48px; background: #FFFFFF; border: 1px solid #E0E0E0; border-radius: 24px; position:relative;}
.flex .block:before { content:""; position:absolute; top:48px; left:48px; width: 124px; height: 124px; border-radius: 100px; background: #F3F3F3 center center no-repeat;}
.flex .icon1:before { background-image: url(/mirpass/images/icon1.svg);}
.flex .icon2:before { background-image: url(/mirpass/images/icon2.svg);}
.flex h3 { font-weight: 600; font-size: 42px; line-height: 120%; color: #000000; margin-bottom:32px;}
.flex p { font-weight: 600; font-size: 24px; line-height: 140%; color: #000000; margin-bottom:34px;}
.flex a { color:#2F80ED;}
.flex a:hover { text-decoration:underline;}
section.gradient {border-radius: 24px; padding:48px; font-weight: 500; font-size: 32px; line-height: 120%; color: #000000; margin-bottom:96px;}
section.gradient span { color:#FFF;}
.accordion { padding:48px; background: #FFFFFF; border: 1px solid #E0E0E0; border-radius: 24px; margin-bottom:170px;}
.accordion h3 { font-weight: 600; font-size: 42px; line-height: 120%; color: #000000; margin-bottom:24px;}
.accordion .item { padding: 32px 0; border-bottom: 1px solid #E0E0E0;}
.accordion .item:last-child { border:none;}
.accordion .item .title { font-weight: 500; font-size: 24px; line-height: 140%; color: #000000; position:relative; padding-right:100px; cursor:pointer;}
.accordion .item .title:before { content:""; position:absolute; top: calc(50% - 7px); right:0; width:21px; height:14px; background:url(/mirpass/images/arr2.svg) center center no-repeat;}
.accordion .item.opened .title:before { transform:scaleY(-1);}
.accordion .item .desc { font-size: 20px; line-height: 140%; color: #000000; padding-top:32px; display:none; padding-right:100px;}
.accordion .item .desc a { color:#2F80ED;}
.accordion .item .desc a:hover { text-decoration:underline;}
.bot { padding-top:170px; margin-bottom:243px !important;}
.bot h4 {font-weight: 600; font-size: 32px; line-height: 120%; color: #FFFFFF; margin-bottom:42px;}
.bot p { font-weight: 500; font-size: 32px; line-height: 120%; color: #828282; width:570px; margin-bottom:48px;}
.bot:before { content:""; background:url(/mirpass/images/botbg.png) no-repeat; width:1600px; height:1077px; position:absolute; top:18px; left:0; z-index:-1;}
.l-header .logo { padding:0;}
.l-footer .logo { padding:18px 0 0;}
.l-header .logo:before, .l-footer .logo:before { display:none;}

@media screen and (max-width: 1024px), screen and (max-height: 600px) and (orientation: landscape) and (pointer: coarse) {
	.logo { padding:105px 0 584px;}
	.logo:before { top:60px;}
	h1 { font-size:50px; width:auto;}
	.logo ul { padding:16px 0 46px;}
	.logo li, a.button {font-size: 18px; line-height: 22px;}
	.top:before { left:calc(50% - 423px); top:calc(100% - 700px);}
	.border p {font-size: 24px; line-height: 140%;}
	.flex { display:block;}
	.flex .block { width:auto;}
	.flex .block:first-child { margin-bottom:48px;}
	.flex h3, .accordion h3 {font-size: 32px;}
	.flex p { font-size:18px;}
	section.gradient {font-size: 24px; line-height: 130%;}
	.accordion { margin-bottom:200px;}
	.bot { padding-top:0; margin-bottom:684px !important;}
	.bot h4 { margin-bottom:32px;}
	.bot p { font-size:24px; width:400px;}
	.bot:before { top:216px; left:calc(50% - 1127px);}
}
@media screen and (max-width: 480px) and (orientation: portrait), screen and (max-height: 500px) and (orientation: landscape) and (pointer: coarse) {
	.l-header .l-header--section { width:270px;}
	.logo { padding:90px 0 296px;}
	.logo:before { width:210px; background-size:contain;}
	h1 { font-size:40px;}
	.logo ul { padding:16px 0 16px;}
	.logo li {font-size: 14px; line-height: 17px;}
	.logo li br { display:none;}
	a.button {font-size: 16px; line-height: 19px; padding:14.5px 0; display:block;}
	.top:before { width:462px; height:542px; background-size:contain; left:calc(50% - 231px); top:369px;}
	.hasborder { margin-bottom:48px;}
	.border { padding:22px;}
	.border h4 { font-size:24px;}
	.border p { font-size:18px; margin-bottom:24px;}
	.flex .block { padding:136px 24px 24px;}
	.flex .block:before { width:88px; height:88px; top:24px; left:24px; background-size:50%;}
	.flex, .flex .block:first-child { margin-bottom:24px;}
	.flex h3 { font-size:24px; margin-bottom:24px;}
	.flex p { font-size:14px; margin-bottom:20px;}
	section.gradient { padding:24px; font-size:18px; margin-bottom:48px;}
	.accordion { padding:24px; margin-bottom:111px;}
	.accordion h3 { font-size:24px; margin-bottom:16px;}
	.accordion .item { padding:16px 0;}
	.accordion .item .title { font-size:16px; padding-right:45px;}
	.accordion .item .title:before { width:16px; height:10px; background-size:contain;}
	.accordion .item .desc { font-size:14px; padding-right:0; padding-top:16px;}
	.bot { margin-bottom:352px !important;}
	.bot:before { width:700px; height:472px; top:285px; left:calc(50% - 494px); background-size:contain;}
	.bot h4 { font-size:24px; margin-bottom:24px; padding-right:30px;}
	.bot p { font-size:18px; width:auto; margin-bottom:32px;}
}