.esm {font-family: "Golos Text", "Arimo", "Arial", sans-serif; font-size: 16px; line-height: 1.5; font-weight: 400; padding: 30px 0 0; color: #161E25;}
.esm * {text-transform: unset; box-sizing: border-box;}
.esm a {text-decoration: none; color: #056DC7;}
.esm a:hover {color: #4392D5; text-decoration: none;}
.esm a:active,
.esm a:focus {color: #045CA7; text-decoration: none;}
.esm a:focus {outline: none;}
.esm ul,
.esm ol {list-style-type: none; margin: 0; padding: 0;}

.esm-btns {display: flex; gap: 24px;}
.esm-btn {display: flex; align-items: center; justify-content: center; text-align: center; font-weight: 600; min-height: 48px; padding: 12px 24px; border-radius: 8px; box-sizing: border-box; cursor: pointer;}
.esm-btn.esm-btn__primary {color: #FFFFFF; background-color: #056DC7;}
.esm-btn.esm-btn__primary:hover {color: #FFFFFF; background-color: #4392D5;}
.esm-btn.esm-btn__primary:active,
.esm-btn.esm-btn__primary:focus {color: #FFFFFF; background-color: #045CA7;}
.esm-btn.esm-btn__secondary {color: #056DC7; background-color: #F2F8FC; border: 1px solid #056DC7;}
.esm-btn.esm-btn__secondary:hover {color: #4392D5; border-color: #4392D5;}
.esm-btn.esm-btn__secondary:active,
.esm-btn.esm-btn__secondary:focus {color: #045CA7; border-color: #045CA7;}

.esm__head {display: grid; grid-template-columns: 371px 1fr; gap: 24px; padding-bottom: 60px;}
.esm__head * {margin: 0;}
.esm__head-title {display: flex; flex-direction: column; gap: 24px;}
.esm__head-title h2 {font-size: 48px; font-weight: 700; line-height: 56px;}
.esm__head-title p {position: relative; font-weight: 500; padding-left: 12px;}
.esm__head-title p::before {position: absolute; content: ""; left: 0; top: 0; width: 4px; height: 100%; background: #FF6B35; border-radius: 100px 0 0 100px;}
.esm__head-desc {display: flex; flex-direction: column; gap: 8px; padding: 24px; background: #E6EDF5; border-radius: 24px;}
.esm__head-desc-link {font-weight: 700; text-align: right; color: #284A69;}

.esm-main {display: flex; flex-direction: column; align-items: center; max-width: 578px; padding: 60px 0; margin: 0 auto; text-align: center;}
.esm-main .esm-main__img {display: block; margin-bottom: 8px; width: 291px; max-width: 100%;}
.esm-main .esm-main__title {font-size: 26px; line-height: 28px; font-weight: 700; letter-spacing: 2%; margin-bottom: 32px;}
.esm-main .esm-main__desc {font-size: 18px; line-height: 28px; font-weight: 500; margin: 0;}

.esm-reasons {display: grid; grid-template-columns: 1fr 371px; gap: 24px; padding: 60px 0;}
.esm-reasons__img {display: block; border-radius: 16px; max-width: 371px;}
.esm-reasons__desc {display: flex; flex-direction: column; gap: 32px;}
.esm-reasons__title {display: flex; align-items: baseline; gap: 8px; margin: 0;}
.esm-reasons__title > *:nth-child(1) {font-size: 60px; line-height: 60px; font-weight: 500;}
.esm-reasons__title > *:nth-child(2) {font-size: 32px; line-height: 40px; font-weight: 600;}
.esm-reasons__list {display: flex; flex-direction: column; gap: 24px;}
.esm-reasons__list-item {position: relative; padding-left: 40px;}
.esm-reasons__list-item::before {position: absolute; content: ""; left: 0; top: 0; width: 24px; height: 24px; background: url(../img/check-square.svg) 50% 50% / cover no-repeat;}
.esm-reasons__list-item h3 {font-size: 18px; line-height: 24px; font-weight: 600; margin-bottom: 8px;}
.esm-reasons__list-item p {margin: 0;}
.esm-reasons .esm-btns {padding-left: 40px;}

.esm-certified {text-align: center; padding: 44px 20px; border-radius: 40px; color: #ffffff; background: linear-gradient(to bottom, rgba(0, 0, 0, 0.2), rgba(102, 102, 102, 0.2)), #060633; background-size: cover; background-position: center;}
.esm-certified__title {font-size: 32px; line-height: 40px; font-weight: 700; margin-bottom: 40px;}
.esm-certified__list-title {font-size: 22px; line-height: 28px; font-weight: 600; margin-bottom: 24px;}
.esm-certified__list {display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px;}
.esm .esm-certified__list {margin-bottom: 40px;}
.esm-certified__list-item {display: flex; align-items: center; justify-content: center; padding: 24px 16px; border-radius: 16px; border: 1px solid #08BCCC; background-color: rgba(255, 255, 255, 0.1);}

.esm-connect {display: grid; grid-template-columns: 567px 1fr; gap: 24px; padding: 60px 0;}
.esm-connect__instruction-title {font-size: 32px; line-height: 40px; font-weight: 600; max-width: 350px; margin-bottom: 32px;}
.esm-connect__instruction-list {display: flex; flex-direction: column; gap: 24px; border-left: 2px solid rgba(5, 109, 199, 0.5); counter-reset: item;}
.esm .esm-connect__instruction-list {margin-bottom: 32px; margin-left: 11px;}
.esm-connect__instruction-list-item {position: relative; padding-left: 27px; margin: 0;}
.esm-connect__instruction-list-item::before {position: absolute; left: -12px; top: 0; display: flex; align-items: center; justify-content: center; width: 24px; height: 24px; padding-bottom: 1px; color: #82B6E3; border: 2px solid #82B6E3; border-radius: 100%; background-color: #ffffff; content: counter(item); counter-increment: item;}
.esm-connect .esm-btns {padding-left: 40px;}

.esm-nodelay {display: grid; grid-template-columns: 764px 1fr; gap: 24px; align-items: center; padding: 60px 0;}
.esm-nodelay__desc-title {font-size: 32px; line-height: 40px; font-weight: 600; margin-bottom: 32px;}
.esm-nodelay__desc-desc {display: flex; flex-direction: column; gap: 8px; margin-bottom: 32px;}
.esm-nodelay__desc-desc p {margin-bottom: 0;}
.esm-nodelay__partner {display: flex; flex-direction: column; gap: 0; text-align: right;}
.esm-nodelay__partner-code {font-size: 96px; line-height: 104px; background: linear-gradient(to bottom, #A6A6A6, #161E25); -webkit-background-clip: text; -webkit-text-fill-color: transparent;}

.esm-footer {display: flex; flex-direction: column; align-items: center; gap: 10px; padding: 24px 0 0; text-align: center;}
.esm-footer__line {width: 160px; height: 1px; background: #D9D9D9;}
.esm-footer p {margin: 0;}

.esm__modal .modal-header {padding-bottom: 10px;}
.esm__modal .modal-body {padding-top: 0;}

@media (max-width: 1220px) {
	.esm {font-size: 15px; line-height: 20px;}

	.esm-btns {flex-direction: column; gap: 16px;}
	.esm-btn {font-size: 14px; width: 100%; padding: 12px;}

	.esm__head {grid-template-columns: 1fr;}
	.esm__head-title {gap: 8px;}
	.esm__head-desc {padding: 16px;}

	.esm-main .esm-main__title {margin-bottom: 40px;}
	.esm-main .esm-main__desc {font-size: 15px; line-height: 20px; font-weight: 400;}
	.esm-main .esm-main__desc a {font-weight: 600;}

	.esm-reasons {display: grid; grid-template-columns: 1fr; padding: 24px 0 60px;}
	.esm-reasons__img {order: 0; width: 371px; max-width: 100%;}
	.esm-reasons__desc {order: 1;}
	.esm-reasons__title {align-items: center;}
	.esm-reasons__title > *:nth-child(2) {font-size: 24px; line-height: 28px;}
	.esm-reasons__list {gap: 16px;}
	.esm-reasons__list-item {padding-left: 28px;}
	.esm-reasons__list-item::before {width: 20px; height: 20px;}
	.esm-reasons__list-item h3 {font-size: 17px; margin-bottom: 4px;}
	.esm-reasons .esm-btns {padding-left: 0;}

	.esm-certified {padding: 24px 8px; border-radius: 24px;}
	.esm-certified__title {font-size: 20px; line-height: 28px; margin-bottom: 24px;}
	.esm-certified__list-title {font-size: 20px; margin-bottom: 16px;}
	.esm-certified__list {grid-template-columns: 1fr; gap: 16px;}
	.esm .esm-certified__list {margin-bottom: 24px;}

	.esm-connect {grid-template-columns: 1fr; padding: 40px 0 0;}
	.esm-connect__instruction-title {font-size: 24px; line-height: 28px;}
	.esm .esm-connect__instruction-list {margin-bottom: 24px;}
	.esm-connect .esm-btns {padding-left: 0;}

	.esm-nodelay {grid-template-columns: 1fr; align-items: stretch; padding: 60px 0 24px;}
	.esm-nodelay__desc-title {font-size: 24px; line-height: 28px; margin-bottom: 16px;}
	.esm-nodelay__desc-desc {margin-bottom: 16px;}
	.esm-nodelay__partner {flex-direction: row; align-items: center; justify-content: center; gap: 8px; text-align: right;}
	.esm-nodelay__partner-code {font-size: 48px; line-height: 56px;}
	.esm-nodelay__partner-desc {font-size: 16px; line-height: 24px; text-align: left; width: 75px;}
}

@media (max-width: 768px) {
	.esm {margin-right: -15px; margin-left: -15px;}
}

@media (max-width: 400px) {
	.esm-btn {font-size: 13px; padding: 5px;}
}
