 * {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}

*:before,
*:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

img {
	border: none;
}

textarea {
	overflow: auto;
}

input,
textarea,
input:active,
textarea:active {
	outline: none transparent !important;
	box-shadow: none;

	-moz-outline: none !important;
}

input[type="submit"],
button[type="submit"],
input[type="reset"],
button[type="reset"] {
	-webkit-border-radius: 0;

	-webkit-appearance: none;
}

:focus {
	outline: none;
}

:hover,
:active {
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-touch-callout: none;
}

::-ms-clear {
	display: none;
}

/*---------------
    Main styles
---------------*/
.clear {
	clear: both;
}

.left {
	float: left;
}

.right {
	float: right;
}

html {
	height: 100%;

	background: #fff url(../images/bg_heart.png) 50% 50% no-repeat;
	background-attachment: fixed;

	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

body {
	color: #000;
	font-family: "Raleway", "Arial", sans-serif;
	font-weight: normal;

	height: 100%;

	-webkit-tap-highlight-color: transparent;
	-webkit-touch-callout: none;
	-webkit-overflow-scrolling: touch;
	text-rendering: optimizeLegibility;
	text-decoration-skip: objects;
}

.body a {
    color: #123332;
    text-decoration: none;
}
.wrap {
	overflow: hidden;
}

.cont {
	position: relative;
	width: 100%;
	max-width: 1159px;
	margin: 0 auto;
	padding: 0 0px;
}

.insta_page .wrap {
	padding-bottom: 189px;
}

.bg-heart{
    z-index: -1;
    position: fixed;
    width: 100%;
    height: 100%;
}
.header .logo a, .header .logo img {
    height: 67px;
    margin: 0 0 0 4px;
}

.header .slogan {
    font-style: normal;
    font-weight: 700;
    font-size: 14px;
    line-height: 22px;
    color: #2D2C2F;
    padding: 6px 0 0 64px;
}
.header .slogan span {
    display: block;
}

.header > .cont {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.header {
    padding: 84px 0 45px 0;
}

/*----------------*/


.item {
    box-shadow: 0px 4px 10px 4px #44444B26;
    background: white;
    border-radius: 30px;
    padding: 15px 37px;
}

.item .icon {
    color: white;
    position: absolute;
    z-index: 8;
    right: 47px;
    display: flex;
    text-decoration: none;
    background: #532F6D;
    border-radius: 50%;
    width: 91px;
    height: 91px;
    justify-content: center;
    align-items: center;
    font-size: 20px;
    font-weight: 700;
    line-height: 30px;
    margin: -41px -55px 0px 0;
}

.item a {
    font-weight: 800;
    font-size: 26px;
}

.body {
    color: #123332;
}


.flex {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
}

.flex .item {
    max-width: calc(50% - 19px);
    width: 100%;
    margin: 0 0 20px;
    position: relative;
}

.item .descr {
    padding: 15px 59px 25px 9px;
}

.item .photo {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
	padding: 10px 0 0;
}
.flex .item.wide {
    max-width: 100%;
}

.item.green {
    background: #1E4948;
}
.item.green  a{
    color: white;
}
.item .sub {
    font-size: 14px;
    font-weight: 500;
}
.item.wide .descr {
    padding: 21px 59px 25px 9px;
}
.item .link {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: 100%;
}
.item.violet {
    background: #532F6D;
}

.item.violet a {
    color: white;
}
a.full-item-link {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 7;
    left: 0;
    top: 0;
}

.item.cert2 {
    position: relative;
}

.lectures .item.cert2 {background: #B55AA6;margin: 0px 0 0px;padding: 73px 55px;min-height: 405px;}
.item .bgheart {
    width: 100%;
    height: 100%;
    position: absolute;
    margin: -42px 0 0 -26px;
    z-index: 1;
}
.lectures .item.cert2 .bgheart {
    right: 0;
    margin: -101px -57px 0 0px;
    justify-content: flex-end;
    width: fit-content;
}

.item.cert2 .title.active {
    font-size: 40px;
    font-weight: 800;
    color: white;
	    line-height: 35px;
}
.lectures .item.cert2 .desc {
    font-size: 20px;
    font-weight: 500;
    line-height: 30px;
    color: white;
    width: 370px;
    max-width: 100%;
	margin: 24px 0 10px;
}

.lectures .item.cert2 .details {
    background: #532F6D;
    border: 1px solid #532F6D;
    color: white;
    z-index:2;
    border-radius: 20px;
    font-size: 16px;
    font-weight: 700;
    line-height: 61px;
    display: block;
    height: 61px;
    min-width: 224px;
    margin-top: 20px;
    padding: 0 20px;
    transition: .2s linear;
    text-decoration: none;
    width: fit-content;
    text-align: center;
}
.item .link .ico {
    margin: 0px 32px 0px 30px;
}

.item .link .text {
    color: #123332;
    font-weight: 700;
    text-decoration: underline;
}
/*----------------*/
.footer
{
        color: #FFF;
    font-size: 14px;
    line-height: 26px;
    margin-top: 138px;
    padding: 114px 0;
    background: #261536;
}
.footer_soc.line {
    margin: 0 auto;
    width: fit-content;
   display:flex;
	z-index: 10;
    padding: 0 30px;
}
.btns {
    display: flex;
    justify-content: center;
    align-items: center;
}

a.tech_button {
    border: 2px solid #FFFFFF;
    border-radius: 30px;
    color: #FFFFFF;
    display: block;
    text-align: center;
    margin: 0 11px 31px;
    max-width: 300px;
    font-weight: 500;
    font-size: 14px;
    line-height: 1;
    text-decoration: none;
    padding: 20px 21px;
}

.social__links  a {
    margin-right: 17px;
    text-decoration-line: underline;
    font-weight: 700;
}
.socials.sq a
{
    display: inline-block;
    width: 52px;
    height: 52px;
    vertical-align: top;
    border-radius: 10px;
    background: rgb(255 255 255 / 30%);
    box-shadow: 0px 4px 10px 4px rgb(68 68 75 / 15%);
		transition:.3s;
}
.socials.sq a.soci {
    display: flex;
    justify-content: center;
    align-items: center;
	margin: 0 11px;
}
.socials.sq a.soci:hover{background: rgb(255 255 255 / 50%);}
.socials.sq a.soci:before {
    content:'';
    width:35px;
    height:35px; 
	display:block;
    background-repeat: no-repeat;
    background-size: initial;
    background-position: center center;

}

.socials.sq a.soci.tiktok:before {
    background-image: url('/local/templates/main2023/images/tiktok.png');
}
.socials.sq a.soci.telegram:before {
    background-image: url('/local/templates/main2023/images/telegram.png');
}
.socials.sq a.soci.insta:before {
    background-image: url('/local/templates/main2023/images/instagram.png');
}
.socials.sq a.soci.youtube:before {
    background-image: url('/local/templates/main2023/images/youtube.png');
}
.socials.sq a.soci.vk:before {
    background-image: url('/local/templates/main2023/images/vk.png');
}
.socials.sq a.soci.fb:before {
    background-image: url('/local/templates/main2023/images/fb.png');
}
.socials.sq a.soci.ok:before {
    background-image: url('/local/templates/main2023/images/odnokl.png');
}
#auth-form .socials {
    margin: 10px 0;
}
footer .socials.sq a + a {
    margin-left: 23px;
}
.header, .body, .footer {
		margin: 0 auto;
		display: block;
		width: 100%;
		overflow: hidden;
		max-width: 100vw;
		position: relative;
	}

	.cont {
		padding: 0 24px;
	}

	.flex .item {
		overflow: visible;
	}

	.body {
		padding: 12px 0 0 0;
	}

	.footer {
		margin: 40px auto 0;
	}
} 