/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.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:-.25em}sup{top:-.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}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .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}
/*# sourceMappingURL=normalize.min.css.map */

body {
    font-family: "Nunito Sans", Arial, Helvetica, sans-serif;
    background: rgba(255, 255, 255, 1);
    font-size: 16px;
    line-height: 1.42;
    color: rgba(0, 0, 0, 1);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: flex;
    justify-content: center;
}

* {
    box-sizing: border-box;
}

a {
    color: inherit;
}

ul {
    padding: 0;
    margin: 0;
}

ul li {
    list-style: none;
}

li {
    margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    font-weight: normal;
}

p {
    margin: 0;
}

.wrapper {
    min-height: 100%;
    overflow: hidden;
	width: 100%;
}

section {
	width: 100%;
	display: flex;
}

.container {
    margin: 0 auto;
    max-width: 1313px;
    display: flex;
    flex-direction: column;
	flex: 1;
}

@media (max-width: 1604px) {
	.container {
		padding: 0 146px;
	}
}

@media (max-width: 1604px) {
	.container {
		padding: 0 146px;
	}
}

@media (max-width: 900px) {
	.container {
		padding: 0 15px;
	}
}

/* Header */

.section__header {
	height: 100vh;
    background: url(img/header/header-img.jpg) top right no-repeat;
    background-size: cover;
	position: relative;
}

.section__header .container {
	height: 100%;
	justify-content: center;
}

@media (max-width: 768px) {	
	.section__header .container {
		display: block;
		height: auto;
	}
	.section__header {
		background: linear-gradient(0deg, rgba(0, 0, 0, 0.41), rgba(0, 0, 0, 0.61)), url(img/footer/footer.jpg);
		background-position: center left 43%;
		background-repeat: no-repeat;
		background-size: cover
	}
}

.header {
    display: flex;
    flex-direction: column;
	width: 50%;
    max-width: 534.5px;
	margin-top: -74px
}

.logo {
    margin-bottom: 45px;
}
.logo_img {
	max-width: 454px;
	width: 200%;
}
@media (max-width: 768px) {	
	.header {
		width: 100%;
		margin-top: 0;
		padding: 50px 0 30px;
		display: block;
	}
	.logo {
		margin-bottom: 20px;
	}
}
@media (max-width: 768px) {	
	.logo_img {
		width: 100%;
	}
}
.header__content {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 300px;
}

.header__title {
    font-size: 24px;
    color: rgba(255, 255, 255, 1);
    font-weight: 700;
    justify-content: flex-start;
	margin-bottom: 20px;
}

.header__text {
    font-size: 18px;
    color: rgba(255, 255, 255, 1);
    line-height: 1.8;
}
@media (max-width: 768px) {	
	.header__text {
		font-size: 16px;
	}
}
.socials {
	margin-top: 30px;
	display: block;
}

.socials__item__icon__wup .socials__link {
    background-image: url(img/socials/wup.svg);
}

.socials__item__icon__telegram .socials__link {
    background-image: url(img/socials/telegram.svg);
}

.socials__item {
    display: inline-block;
    vertical-align: middle;
    margin-right: 20px;
    width: 40px;
    height: 40px;
    border-radius: 5px;
    border: solid 1px rgba(255, 255, 255, 1);
	position: relative;

}


.socials__item:last-child {
    margin-right: 0;
}

.socials__link {
    display: block;
    text-decoration: none;
    width: 100%;
    height: 100%;
    background-size: 60%;
	background-position: center;
	background-repeat: no-repeat;
	padding: 9px;
}
.socials__link:hover {
	opacity: .7
}
.section__header__footer{
    background-color: #05090C;
}

.paper-transition {
	position: absolute;
	width: 100%;
	height: 73px;
	background: url(img/header/paper.svg);
	border: 0;
	margin: 0;
	bottom: -3px;
}

/* Hero */
.section__hero .container{
	align-items: center;
}

.hero {
    display: flex;
    flex-direction: column;
	flex: 1;
    min-height: 630px;
    max-width: 741px;
    justify-content: space-between;
}

.hero__content {
    display: flex;
    flex-direction: column;
    min-height: 500px;
    margin-top: 57px ;
    padding: 50px 50px 70px 50px;
    border-radius: 20px ;background: #FFFFFF;
	box-shadow: 0px 16px 25px rgba(0, 0, 0, 0.03);
	position: relative;
}

.hero__slide {
	display: none;
    flex-direction: column;
    justify-content: space-between;
}

.hero__slide.active {
    display: flex;
}

.decor {
	position: absolute;
	z-index: -1;
}

.hero__decor1 {
	left: -39.7px;
	top: -26.5px;
	width: 61px;
	height: 52px;
    background: url(img/hero/decor1.svg);
}

.hero__decor2 {
	right: -200.5px;
	top: -15.5px;
	width: 258px;
	height: 258px;
    background: url(img/hero/decor2.svg);
}

.hero__arrow {
	left: -74.5px;
	width: 45px;
	height: 57px;
	z-index: 10;
	cursor: pointer;
	transition: all .2s ease;
}
.hero__arrow:hover,
.hero__arrow:focus {
	opacity: .8
}
.hero__arrowup {
	top: 169px;
    background: url(img/hero/arrowup.svg);
}
.hero__arrowdown {
	top: 280px;
    background: url(img/hero/arrowdown.svg);
}



.hero__shadow1 {
	bottom: -33.5px;
	height: 84px;
	left: 31px;
	right: 31px;
	background: #FFFFFF;
	box-shadow: 0px 15px 23px rgba(0, 0, 0, 0.09);
	border-radius: 20px;
}

.hero__shadow2 {
	bottom: -58.5px;
	height: 74px;
	left: 74px;
	right: 74px;
	background: #FFFFFF;
	box-shadow: 0px 13px 21px rgba(0, 0, 0, 0.03);
	border-radius: 20px;
}

.section__title {
    font-size: 40px;
    font-weight: 700;
    text-align: center;
	line-height: 1.4
}

@media (max-width: 768px) {
	.section__title {
		font-size: 32px;
	}
}


.section__title__hero {
    margin-top: 100px;
}

@media (max-width: 700px) {	
	.section__title__hero {
		margin-top: 50px;
	}
}

.hero__title {
    font-size: 24px;
    font-weight: 700;
    text-align: center;
	padding-bottom: 26px;
}

.hero__text {
    font-size: 18px;
    text-align: center;
    line-height: 1.7;
	padding-bottom: 38px;
}

.wrapper__btn {
    display: flex;
}

.wrapper__btn__hero {
    justify-content: center;
}

.btn {
    background: rgba(71, 168, 247, 1);
    border-radius: 15.3px;
    padding: 15px 28px;
    color: rgba(255, 255, 255, 1);
    font-size: 18px;
    font-weight: 700;
    text-decoration: none;
    text-align: center;
    display: inline-block;
	transition: all .2s ease;
}

.btn:hover,
.btn:focus {
	background: rgba(71, 168, 247, .8);
}

.btn__color__white {
    background: #fff;
    color: #000;
}

@media (max-width: 700px) {	
	.hero__arrowup {
		top: 0;
		position: static;
		transform: rotate(-90deg);
		margin-right: 15px;
	}
	.hero__arrowdown {
		top: 0;
		position: static;
		transform: rotate(-90deg);
		margin-left: 15px;
	}
	.hero__arrows {
		display: flex;
		align-items: center;
		justify-content: center;
		margin-bottom: 20px;
	}
	.hero__content {
		padding: 30px 15px;
	}
	.hero__decor1 {
		left: -27.7px;
		top: -33.5px;
	}
	.hero__text {
		font-size: 14px;
	}
}

/* About */
aaaa .section__about{
    background: url(img/about/about-bg.svg) 77px 194px no-repeat,
    url(img/about/about-us.svg) 77px 548px no-repeat;
}
aaa .about::before {
    content: "";
    background: url(img/about/about-me.jpg) center center/cover no-repeat;
    display: block;
    width: 531.16px;
    height: 548.99px;
}

.about {
    display: flex;
    min-height: 833px;
    padding-top: 160px;
	padding-bottom: 110px;
}

.about__img {
	flex: 1;
	padding-right: 124px;
}

@media (max-width: 700px) {	
	.about {
		flex-direction: column;
	}
	.about__img {
		padding-right: 0;
	}
}

.about__img__wrap {
	position: relative;
}

.about__img__wrap .about__img__img {
	width: 100%;
}

.about__img__wrap .about__img__decor1 {
	left: -18%;
	top: 8%;
	width: 132%;
}

.about__img__wrap::before {
	position: absolute;
	display: block;
	left: -66px;
	bottom: -80px;
	width: 259px;
	height: 259px;
    background: url(img/about/about-us.svg);
	content: '';
	z-index: -1;
}

@media (max-width: 700px) {	
	.about__img__wrap::before {
		display: none;
	}
}

.about__desc {
	flex: 1;
    max-width: 707.8px;
}

@media (max-width: 700px) {	
	.about__desc {
		margin-top: 30px;
	}
}

.section__title__about {
    text-align: start;
}


.about__desc-text {
    margin-top: 20.16px;
    line-height: 1.5;
}

.about__link {
    color: #47A8F7;
}

/* Offer */
.offer {
    display: flex;
    min-height: 440px;
	justify-content: center;
	align-items: center;
	padding-bottom: 70px;
}

.offer__desc {
    display: flex;
    flex-direction: column;
    max-width: 960px;
    justify-content: space-around;
    padding: 125.4px 252px 93px 81.3px;
	background: #1F1F1F;
	border-radius: 18px;
	flex: 1;
	margin-right: -195px;
}

.offer__title {
    font-size: 32px;
    font-weight: 600;
    color: rgba(255, 255, 255, 1);
	position: relative;
	padding-bottom: 60px;
}

.offer__title::before {
	content: '';
	background: url('img/offer/quotes.svg');
	width: 113px;
	height: 90px;
	left: -25px;
	top: -45px;
	display: block;
	position: absolute;
}

.offer__img {
	position: relative;
}

@media (max-width: 700px) {	
	.offer__img {
		width: 250px;
		margin: 0 auto;
	}
	.offer__img img {
		display: block;
		width: 100%;
	}	
}

.offer__img__decor1 {
	left: 262px;
	top: -27px;
	width: 27px;
	height: 27px;
    background: url(img/offer/ellipse.svg);
	z-index: 1;
}

.offer__img__decor2 {
	right: -70px;
	top: 201px;
	width: 57px;
	height: 43px;
    background: url(img/offer/vector.svg);
	z-index: 1;
}

@media (max-width: 1150px) {
	.offer {
		flex-direction: column-reverse;
		padding-bottom: 70px;
	}
	.offer__desc {
		margin-right: 0;
		margin-top: -195px;
		padding: 250px 20px 53px 20px;
	}
	.wrapper__btn {
		justify-content: center;
	}
	.offer__title {
		font-size: 24px;
		text-align: center;
		margin-bottom: 0;
		padding-bottom: 25px;
	}
	.offer__title:before {
		left: 94px;
	}
}

/* Examples */
.examples__wrapper {
    display: flex;
    align-items: flex-start;
	flex: 1;
}

.examples {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
	flex: 1;
}


.examples__list {
    display: flex;
    justify-content: space-between;
    max-width: 972px;
	width: 100%;
    min-height: 331px;
	padding: 72px 0 120px;
	flex-wrap: wrap;
	gap: 30px;
}

@media (max-width: 1150px) {
	.examples__list {
		padding: 30px 0 80px;
	}
}

.examples__item {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    max-height: 336px;
	max-width: 304px;
	flex: 1;
	margin: auto;
}

.link__wrapper {
	padding-top: 26px;
}

.examples__link {
    display: block;
    text-decoration: none;
    width: 304px;
    height: 284px;
    border-radius: 16.5px;
    box-shadow: inset 0 0 70px 50px rgba(212, 212, 212, 100);
	justify-content: center;
	align-items: center;
	display: flex;
}

.example__link {
    font-size: 18px;
    color: rgba(71, 168, 247, 1);
    font-weight: 500;	
    text-decoration: none;
    margin-right: 12.5px;
}

.examples__link img {
	mix-blend-mode: multiply;
}

.link__wrapper {
    display: flex;
    justify-content: center;
}


/* Reasons */
.reasons__wrapper {
    display: flex;
    align-items: flex-start;
	padding-top: 63px;
	padding-bottom: 109px;
}

.reasons {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    margin: auto;
}

.reasons__list {
	padding-top: 78px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
	counter-reset: reason;
	margin: 0;
	padding-left: 0;
}

@media (max-width: 768px) {
	.reasons__wrapper {
		padding-top: 0;
	}
	.reasons__list {
		padding-top: 40px;
	}
}


.img__border {
    height: 117px;
    width: 117px;
    margin-right: 46px;
    border-radius: 14px;
    box-shadow: inset 0 2px 14px 5px rgba(223, 181, 109, 0.08);
    display: flex;
    align-items: center;
}

.reasons__img {
    size: 27px 27px;
    margin: auto;
}

.reasons__content {
    display: flex;
    flex-direction: column;
    min-height: 176px;
    padding: 39px;
    justify-content: flex-end;
    border-radius: 14px;
	box-shadow: 0px 16px 25px rgba(0, 0, 0, 0.03);
}

.reasons__title {
    font-size: 21px;
    font-weight: 700;
    margin-bottom: 13px;
}

.reasons__item {
    display: flex;
    align-items: center;
	margin-bottom: 25px;
}

.reasons__item::before {
	content: counter(reason);
	counter-increment: reason;
	display: flex;
	width: 117px;
	height: 117px;
	background: #FFFFFF;
	box-shadow: inset 0px 2px 14px rgba(0, 0, 0, 0.08);
	border-radius: 14px;
	flex-shrink: 0;
	font-weight: bold;
	font-size: 45px;
	line-height: 27px;
	justify-content: center;
	align-items: center;
	margin-right: 47px;
}

@media (max-width: 500px) {
	.reasons__item {
		flex-direction: column;
	}
	.reasons__item::before {
		margin-right: 0;
	}
}


/* Footer */

.section__footer {	
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.41), rgba(0, 0, 0, 0.61)), url(img/footer/footer.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.footer {
    display: flex;
    justify-content: center;
	padding: 70px 0

}

.contacts__desc {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.contacts {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    text-align: center;
}

.contacts__title {
    font-size: 40px;
    font-weight: 700;
    color: #fff;
    font-style: normal;
	margin-bottom: 25px
}

.contacts__phone,
.contacts__mail {
    font-size: 24px;
    font-weight: 700;
    color: #fff;
    font-style: normal;
    text-decoration: none;
	margin-bottom: 15px;
	display: inline-block;
	transition: all .2s ease;
}

.contacts__phone:hover,
.contacts__mail:hover {
	opacity: 0.6
}

.socials__item__footer {
    display: inline-block;
    vertical-align: middle;
    margin-right: 31px;
    width: 56.3px;
    height: 56.3px;

}

.socials__align__center {
    display: flex;
    justify-content: center;
}

.footer::before {
    content: "";
    background: url(img/footer/decor.svg);
    position: absolute;
    display: block;
    width: 250px;
    height: 250px;
    margin-right: 1563px;
    margin-top: -95px;
}

/** Popup **/
.popup-container {
	position: fixed;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	z-index: 100;
}
.popup-container::before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;	
	background: black;
	opacity: 0.6;
}
.hidden {
	display: none;
}
.popup {
	max-width: 659px;
	padding: 37px;
	background: white;
	border-radius: 20px;
	z-index: 1;
	position: relative;
	max-height: 100%;
	overflow: auto;
}
.popup .close {
	background: url(img/popup/close.svg);
	position: absolute;
	width: 24px;
	height: 24px;
	right: 55px;
	top: 37px;
	display: block;
}
.popup h3 {
	font-weight: bold;
	font-size: 24px;
	line-height: 24px;
	padding-bottom: 29px;
}
.popup p {
	font-size: 16px;
	line-height: 28px;
}
.popup a {
	color: rgba(71, 168, 247, 1);
}
.popup a:hover,
.popup a:focus {
	text-decoration: none;
}

.modal-cta .popup {
	width: 400px;
}

@media (max-width: 500px) {
	.modal-cta .popup {
		width: 100%;
	}
}

.modal-cta__btn {
	width: 100%;
	border: 0;
    cursor: pointer;
}


.control {
  margin-bottom: 15px;
  margin-bottom: 0.9375rem;
}

input.has-error {
  border-color: #dc3545 !important;
}

.control__label {
  margin-bottom: 5px;
  margin-bottom: 0.3125rem;
  font-weight: 600;
}

.control__input {
  font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #000;
  display: block;
  width: 100%;
  padding: 5px 15px;
  padding: 0.3125rem 0.9375rem;
  height: 48px;
  height: 3rem;
  background-color: #fff;
  background-image: none;
  border: 1px solid rgba(0, 0, 0, 0.1);
  -webkit-transition: all .1s ease-in;
  transition: all .1s ease-in;
  -webkit-appearance: none;
  border-radius: 8px;
  border-radius: 0.5rem;
}

@media (min-width: 768px) {
  .control__input {
    font-size: 16px;
    font-size: 1rem;
  }
}

.control__input:focus {
  background-color: #fff;
  outline: none;
  border-color: #CC9933;
  outline: 0;
}

.control__input::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
}

.control__input::-moz-placeholder {
  color: rgba(0, 0, 0, 0.5);
}

.control__input:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
}

.control__input::-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.5);
}

.control__input::placeholder {
  color: rgba(0, 0, 0, 0.5);
}

.control__textarea {
	font-size: 14px;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #000;
  display: block;
  width: 100%;
  padding: 15px 15px;
  min-height: 120px;
  background-color: #fff;
  background-image: none;
  border: 1px solid rgba(0, 0, 0, 0.1);
  -webkit-transition: all .1s ease-in;
  transition: all .1s ease-in;
  -webkit-appearance: none;
  border-radius: 8px;
  resize: none;
  border-radius: 0.5rem;
}


@media (min-width: 768px) {
	.control__textarea {
		font-size: 16px;
	}
}

.control__textarea:focus {
  background-color: #fff;
  outline: none;
  border-color: #CC9933;
  outline: 0;
}

.control__textarea::placeholder {
  color: rgba(0, 0, 0, 0.5);
}


