@import "https://cdn.jsdelivr.net/npm/@fontsource/montserrat@latest/400.css";
@import "https://cdn.jsdelivr.net/npm/@fontsource/montserrat@latest/700.css";

html,
body {
margin: 0;
padding: 0
}

body {
font-family: 'Montserrat', sans-serif;
scrollbar-gutter: stable;
min-height: 100vh
}

.hd {
position: relative;
background-color: #171F2B;
overflow: hidden
}

.hd_pat {
position: absolute;
inset: 0;
pointer-events: none;
z-index: 0
}

.hd_inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 24px;
position: relative;
z-index: 1
}

.hd_top {
display: flex;
align-items: center;
justify-content: space-between;
padding: 16px 0 8px;
gap: 16px
}

.hd_contact_strip {
display: flex;
align-items: center;
gap: 16px
}

.hd_phone {
font-size: 14px;
color: #E4E8F3;
text-decoration: none;
letter-spacing: .02em;
transition: color .18s cubic-bezier(0.4, 0, 0.6, 1)
}

.hd_phone:hover {
color: #2384D4
}

.hd_phone:focus {
outline: 2px solid;
outline-image: linear-gradient(90deg, #2384D4, #E4E8F3) 1;
border-radius: 2px
}

.hd_email {
font-size: 14px;
color: #E4E8F3;
text-decoration: none;
letter-spacing: .02em;
transition: color .18s cubic-bezier(0.4, 0, 0.6, 1)
}

.hd_email:hover {
color: #2384D4
}

.hd_email:focus {
outline: 2px solid #2384D4;
border-radius: 2px
}

.hd_main_row {
display: flex;
align-items: center;
justify-content: space-between;
padding: 8px 0 24px;
gap: 24px
}

.logo_box {
flex: 0 0 auto;
display: flex;
align-items: center;
justify-content: center;
background-color: #E4E8F3;
border-radius: 14px;
padding: 8px;
box-shadow: 0 6px 28px 0 #2384d41a;
min-width: 100px;
min-height: 100px
}

.logo_box img {
width: 84px;
height: 84px;
display: block;
object-fit: contain
}

.hd_nav_left {
flex: 1;
display: flex;
align-items: center;
justify-content: flex-end;
gap: 4px;
flex-wrap: wrap
}

.hd_nav_right {
flex: 1;
display: flex;
align-items: center;
justify-content: flex-start;
gap: 4px;
flex-wrap: wrap
}

.hd_lnk {
font-family: 'Montserrat', sans-serif;
font-size: 14px;
font-weight: 700;
color: #E4E8F3;
text-decoration: none;
padding: 12px 16px;
border-radius: 7px;
transition: background-color .15s ease-out, color .15s ease-out, box-shadow .2s ease-out;
white-space: nowrap;
line-height: 1.15;
display: inline-block;
min-height: 44px;
display: flex;
align-items: center
}

.hd_lnk:hover {
background-color: #2384d42e;
color: #fff;
box-shadow: 0 2px 3px 0 #2384d412
}

.hd_lnk:focus {
outline: 2px solid #2384D4;
outline-offset: 2px;
border-radius: 7px
}

.hd_lnk_act {
background: linear-gradient(135deg, #2384D4 0%, #1a6ab0 100%);
color: #fff;
box-shadow: 0 6px 28px 0 #2384d41a
}

.hd_lnk_act:hover {
background: linear-gradient(200deg, #2384D4 0%, #1a6ab0 100%);
color: #fff
}

.hd_divider {
height: 1px;
background: linear-gradient(90deg, transparent, #2384d459, transparent);
margin: 0
}

.ft {
background-color: #171F2B;
position: relative
}

.ft_neo {
box-shadow: 0 -8px 36px 0 #171f2b1f 0 -2px 3px 0 #171f2b12
}

.ft_inner {
max-width: 1280px;
margin: 0 auto;
padding: 48px 24px 24px
}

.ft_grid {
display: grid;
grid-template-columns: 1.6fr 1fr 1fr;
gap: 48px;
align-items: start
}

.ft_brand_col {
display: flex;
flex-direction: column;
gap: 16px
}

.ft_logo_box {
display: flex;
align-items: center;
justify-content: flex-start
}

.ft_logo_wrap {
background-color: #E4E8F3;
border-radius: 14px;
padding: 8px;
box-shadow: 0 6px 28px 0 #2384d41a;
display: inline-flex;
align-items: center;
justify-content: center
}

.ft_logo_wrap img {
width: 72px;
height: 72px;
display: block;
object-fit: contain
}

.ft_tagline {
font-family: 'Montserrat', sans-serif;
font-size: 14px;
color: #E4E8F3;
line-height: 1.6;
opacity: .82
}

.ft_founded {
font-family: 'Montserrat', sans-serif;
font-size: 14px;
color: #2384D4;
font-weight: 700;
line-height: 1.15
}

.ft_col_head {
font-family: 'Montserrat', sans-serif;
font-size: 14px;
font-weight: 700;
color: #2384D4;
text-transform: uppercase;
letter-spacing: .08em;
line-height: 1.15;
margin: 0 0 16px
}

.ft_nav_list {
list-style: none;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
gap: 8px
}

.ft_nav_list li {
margin: 0;
padding: 0
}

.ft_nav_lnk {
font-family: 'Montserrat', sans-serif;
font-size: 14px;
color: #E4E8F3;
text-decoration: none;
line-height: 1.6;
opacity: .8;
transition: opacity .14s ease-out, color .14s ease-out;
display: inline-block;
padding: 4px 0;
min-height: 44px;
display: flex;
align-items: center
}

.ft_nav_lnk:hover {
opacity: 1;
color: #2384D4
}

.ft_nav_lnk:focus {
outline: 2px solid #2384D4;
outline-offset: 2px;
border-radius: 2px
}

.ft_contact_col {
display: flex;
flex-direction: column;
gap: 8px
}

.ft_contact_item {
display: flex;
align-items: flex-start;
gap: 8px
}

.ft_contact_icon {
flex-shrink: 0;
margin-top: 2px
}

.ft_contact_icon svg {
display: block
}

.ft_contact_txt {
font-family: 'Montserrat', sans-serif;
font-size: 14px;
color: #E4E8F3;
line-height: 1.6;
opacity: .8;
text-decoration: none;
transition: opacity .14s ease-out, color .14s ease-out
}

.ft_contact_txt:hover {
opacity: 1;
color: #2384D4
}

.ft_contact_txt:focus {
outline: 2px solid #2384D4;
outline-offset: 2px;
border-radius: 2px
}

.ft_bottom {
margin-top: 48px;
padding-top: 16px;
border-top: 1px solid #e4e8f31f;
display: flex;
align-items: center;
justify-content: space-between;
flex-wrap: wrap;
gap: 16px
}

.ft_copy {
font-family: 'Montserrat', sans-serif;
font-size: 14px;
color: #E4E8F3;
opacity: .55;
line-height: 1.4
}

.ft_policy_list {
list-style: none;
margin: 0;
padding: 0;
display: flex;
gap: 16px;
flex-wrap: wrap
}

.ft_policy_list li {
margin: 0;
padding: 0
}

.ft_pol_lnk {
font-family: 'Montserrat', sans-serif;
font-size: 14px;
color: #E4E8F3;
opacity: .55;
text-decoration: none;
line-height: 1.4;
transition: opacity .14s ease-out, color .17s ease-out
}

.ft_pol_lnk:hover {
opacity: 1;
color: #2384D4
}

.ft_pol_lnk:focus {
outline: 2px solid #2384D4;
outline-offset: 2px;
border-radius: 2px
}

.ck_toast {
display: none;
position: fixed;
bottom: 24px;
left: 24px;
z-index: 2000;
width: 340px;
max-width: calc(100vw - 48px);
background-color: #fff;
border-radius: 14px;
box-shadow: 0 8px 36px 0 #171f2b1f 0 2px 3px 0 #171f2b12;
overflow: hidden;
transform: translateY(24px);
opacity: 0;
transition: transform .42s cubic-bezier(0.4, 0, 0.6, 1), opacity .42s cubic-bezier(0.4, 0, 0.6, 1)
}

.ck_toast.shown {
transform: translateY(0);
opacity: 1
}

.ck_body {
padding: 24px
}

.ck_icon_row {
display: flex;
align-items: center;
gap: 8px;
margin-bottom: 8px
}

.ck_icon_svg {
display: block;
flex-shrink: 0
}

.ck_intro {
font-family: 'Montserrat', sans-serif;
font-size: 14px;
color: #171F2B;
line-height: 1.6;
margin: 0 0 8px
}

.ck_uses {
list-style: none;
margin: 0 0 16px;
padding: 0;
display: flex;
flex-direction: column;
gap: 4px
}

.ck_uses li {
font-family: 'Montserrat', sans-serif;
font-size: 14px;
color: #171F2B;
line-height: 1.4;
padding-left: 16px;
position: relative
}

.ck_uses li::before {
content: '';
position: absolute;
left: 0;
top: 7px;
width: 6px;
height: 6px;
border-radius: 50%;
background-color: #2384D4
}

.ck_detail_btn {
font-family: 'Montserrat', sans-serif;
font-size: 14px;
color: #2384D4;
background: none;
border: none;
padding: 0;
cursor: pointer;
text-decoration: underline;
line-height: 1.4;
transition: color .14s ease-out;
min-height: 44px;
display: flex;
align-items: center
}

.ck_detail_btn:hover {
color: #171F2B
}

.ck_detail_btn:focus {
outline: 2px solid #2384D4;
outline-offset: 2px;
border-radius: 2px
}

.ck_panel {
padding: 0 24px;
background-color: #E4E8F3;
max-height: 0;
overflow: hidden;
transition: max-height .22s ease-out, padding .22s ease-out
}

.ck_panel.open {
max-height: 200px;
padding: 16px 24px
}

.ck_toggle_row {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px
}

.ck_toggle_label {
font-family: 'Montserrat', sans-serif;
font-size: 14px;
color: #171F2B;
line-height: 1.4
}

.ck_toggle_inp {
width: 18px;
height: 18px;
cursor: pointer;
accent-color: #2384D4
}

.ck_sale_row {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
margin-top: 8px
}

.ck_sale_label {
font-family: 'Montserrat', sans-serif;
font-size: 14px;
color: #171F2B;
line-height: 1.4
}

.ck_sale_inp {
width: 18px;
height: 18px;
cursor: pointer;
accent-color: #2384D4
}

.ck_actions {
display: flex;
align-items: center;
justify-content: space-between;
padding: 16px 24px;
gap: 16px;
border-top: 1px solid #171f2b14
}

.ck_acc {
font-family: 'Montserrat', sans-serif;
font-size: 14px;
font-weight: 700;
color: #2384D4;
background: none;
border: none;
padding: 0;
cursor: pointer;
text-decoration: underline;
line-height: 1.4;
transition: color .14s ease-out;
min-height: 44px;
display: flex;
align-items: center
}

.ck_acc:hover {
color: #171F2B
}

.ck_acc:focus {
outline: 2px solid #2384D4;
outline-offset: 2px;
border-radius: 2px
}

.ck_rej {
font-family: 'Montserrat', sans-serif;
font-size: 14px;
font-weight: 700;
color: #171F2B;
background: none;
border: none;
padding: 0;
cursor: pointer;
text-decoration: underline;
line-height: 1.4;
transition: color .14s ease-out;
min-height: 44px;
display: flex;
align-items: center
}

.ck_rej:hover {
color: #2384D4
}

.ck_rej:focus {
outline: 2px solid #2384D4;
outline-offset: 2px;
border-radius: 2px
}

@media (max-width: 900px) {
.hd_main_row {
flex-wrap: wrap;
justify-content: center
}

.hd_nav_left,
.hd_nav_right {
justify-content: center;
flex: 0 0 100%;
order: 2
}

.logo_box {
order: 1
}

.ft_grid {
grid-template-columns: 1fr 1fr;
gap: 24px
}

.ft_brand_col {
grid-column: 1 / -1
}
}

@media (max-width: 600px) {
.ft_grid {
grid-template-columns: 1fr
}

.hd_top {
flex-direction: column;
align-items: flex-start;
gap: 8px
}

.ft_bottom {
flex-direction: column;
align-items: flex-start
}
}

.policy-data-xak {
max-width: 1280px;
margin: 0 auto;
padding: 48px 24px
}

.policy-data-xak h1 {
font-size: 55px;
line-height: 1.15;
color: #171F2B;
margin-bottom: 24px;
margin-top: 0
}

.policy-data-xak h2 {
font-size: 29px;
line-height: 1.15;
color: #171F2B;
margin-top: 48px;
margin-bottom: 16px
}

.policy-data-xak h3 {
font-size: 22px;
line-height: 1.4;
color: #171F2B;
margin-top: 24px;
margin-bottom: 16px
}

.policy-data-xak h4 {
font-size: 17px;
line-height: 1.4;
color: #171F2B;
margin-top: 24px;
margin-bottom: 8px
}

.policy-data-xak h5 {
font-size: 14px;
line-height: 1.4;
color: #171F2B;
text-transform: uppercase;
letter-spacing: .08em;
margin-top: 24px;
margin-bottom: 8px
}

.policy-data-xak h6 {
font-size: 14px;
line-height: 1.4;
color: #2384D4;
text-transform: uppercase;
letter-spacing: .08em;
margin-top: 16px;
margin-bottom: 8px
}

.policy-data-xak p {
font-size: 17px;
line-height: 1.6;
color: #171F2B;
margin-top: 0;
margin-bottom: 16px;
max-width: 74ch
}

.policy-data-xak em,
.policy-data-xak i {
font-style: italic;
color: #171F2B
}

.policy-data-xak hr {
border: none;
border-top: 2px solid #E4E8F3;
margin-top: 48px;
margin-bottom: 48px
}

.policy-data-xak table {
width: 100%;
border-collapse: collapse;
font-size: 17px;
line-height: 1.4;
margin-bottom: 24px;
box-shadow: 0 2px 3px 0 #171f2b12;
border-radius: 7px;
overflow: hidden
}

.policy-data-xak thead {
background-color: #E4E8F3
}

.policy-data-xak thead th {
font-size: 14px;
line-height: 1.4;
color: #171F2B;
text-transform: uppercase;
letter-spacing: .06em;
padding: 16px;
text-align: left;
border-bottom: 2px solid #2384D4
}

.policy-data-xak tbody tr {
transition: background-color .12s ease-out
}

.policy-data-xak tbody tr:nth-child(even) {
background-color: #E4E8F3
}

.policy-data-xak tbody tr:hover {
background-color: #d6ddf0
}

.policy-data-xak td {
font-size: 17px;
line-height: 1.6;
color: #171F2B;
padding: 16px;
border-bottom: 1px solid #E4E8F3;
vertical-align: top
}

.policy-data-xak tbody tr:last-child td {
border-bottom: none
}

@media (max-width: 700px) {
.policy-data-xak h1 {
font-size: 29px
}

.policy-data-xak h2 {
font-size: 22px
}

.policy-data-xak table {
display: block;
overflow-x: auto
}

.policy-data-xak p {
max-width: 100%
}
}

.lp_det {
background: #fff;
overflow-x: clip
}

.lp_det .cascade-1 {
animation: fadeUp .18s cubic-bezier(0.4, 0, 0.6, 1) both
}

.lp_det .cascade-2 {
animation: fadeUp .22s cubic-bezier(0.4, 0, 0.6, 1) .08s both
}

.lp_det .cascade-3 {
animation: fadeUp .2s cubic-bezier(0.4, 0, 0.6, 1) .14s both
}

.lp_det .cascade-4 {
animation: fadeUp .18s cubic-bezier(0.4, 0, 0.6, 1) .2s both
}

@keyframes fadeUp {
from {
opacity: 0;
transform: translateY(18px)
}

to {
opacity: 1;
transform: translateY(0)
}
}

.lp_det .top_band {
position: relative;
background: linear-gradient(211deg, #2384D4 0%, #E4E8F3 60%, #fff 100%);
padding: 48px 0 0;
overflow: hidden
}

.lp_det .top_band::before {
content: '';
position: absolute;
top: -40px;
right: -60px;
width: 340px;
height: 340px;
background: linear-gradient(211deg, #2384d42e 0%, #e4e8f31a 100%);
border-radius: 42px;
pointer-events: none
}

.lp_det .top_band::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 100%;
height: 4px;
background: linear-gradient(211deg, #2384D4, #E4E8F3)
}

.lp_det .band_inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 24px;
display: flex;
flex-direction: row;
gap: 48px;
align-items: flex-end
}

.lp_det .band_text {
flex: 1 1 0;
padding-bottom: 48px
}

.lp_det .band_meta {
display: flex;
flex-direction: row;
gap: 16px;
align-items: center;
margin-bottom: 16px;
flex-wrap: wrap
}

.lp_det .meta_tag {
font-size: 14px;
line-height: 1.4;
color: #171F2B;
background: #fff;
border: 1px solid #2384D4;
border-radius: 7px;
padding: 4px 16px
}

.lp_det .meta_tag.accent {
background: #2384D4;
color: #fff;
border-color: #2384D4
}

.lp_det .band_h1 {
font-size: 55px;
line-height: 1.15;
color: #171F2B;
margin: 0 0 16px;
letter-spacing: -.5px
}

.lp_det .band_h1 .word_acc {
background: linear-gradient(211deg, #2384D4, #171F2B);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text
}

.lp_det .band_sub {
font-size: 17px;
line-height: 1.6;
color: #171F2B;
margin: 0 0 24px;
max-width: 560px
}

.lp_det .band_stats {
display: flex;
flex-direction: row;
gap: 24px;
flex-wrap: wrap
}

.lp_det .stat_pill {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
font-size: 14px;
line-height: 1.4;
color: #171F2B
}

.lp_det .stat_dot {
width: 8px;
height: 8px;
border-radius: 42px;
background: #2384D4;
flex-shrink: 0
}

.lp_det .band_img_col {
flex: 0 0 420px;
position: relative;
align-self: flex-end
}

.lp_det .band_img_wrap {
border-radius: 14px 14px 0 0;
overflow: hidden;
position: relative;
box-shadow: 0 8px 36px 0 #2384d41f
}

.lp_det .band_img_wrap img {
display: block;
width: 100%;
height: 320px;
object-fit: cover
}

.lp_det .band_img_wrap::after {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
height: 60%;
background: linear-gradient(to bottom, #2384d461, transparent);
pointer-events: none
}

.lp_det .deco_arrow {
position: absolute;
left: -32px;
top: 50%;
transform: translateY(-50%);
pointer-events: none
}

.lp_det .deco_arrow svg {
display: block
}

.lp_det .divider_tri {
display: flex;
flex-direction: row;
justify-content: center;
align-items: center;
gap: 24px;
padding: 8px 0;
background: #fff
}

.lp_det .divider_tri svg {
display: block
}

.lp_det .body_wrap {
max-width: 1280px;
margin: 0 auto;
padding: 48px 24px;
display: flex;
flex-direction: row;
gap: 48px;
align-items: flex-start
}

.lp_det .body_main {
flex: 1 1 0;
min-width: 0
}

.lp_det .body_aside {
flex: 0 0 320px
}

.lp_det .prog_label {
font-size: 14px;
line-height: 1.4;
text-transform: uppercase;
letter-spacing: .12em;
color: #2384D4;
margin-bottom: 8px
}

.lp_det .prog_heading {
font-size: 29px;
line-height: 1.15;
color: #171F2B;
margin: 0 0 24px
}

.lp_det .prog_body {
font-size: 17px;
line-height: 1.6;
color: #171F2B
}

.lp_det .prog_body h2 {
font-size: 22px;
line-height: 1.4;
color: #171F2B;
margin: 24px 0 8px;
position: relative;
padding-left: 24px
}

.lp_det .num_circle {
display: inline-flex;
align-items: center;
justify-content: center;
width: 28px;
height: 28px;
border-radius: 42px;
background: #2384D4;
color: #fff;
font-size: 14px;
line-height: 1;
font-weight: 700;
position: absolute;
left: -8px;
top: -2px
}

.lp_det .prog_body p {
margin: 0 0 16px
}

.lp_det .prog_body ul {
margin: 0 0 16px;
padding-left: 24px
}

.lp_det .prog_body li {
margin-bottom: 8px;
font-size: 17px;
line-height: 1.6
}

.lp_det .prog_body dl {
margin: 0 0 16px
}

.lp_det .prog_body dt {
font-size: 17px;
line-height: 1.4;
color: #2384D4;
font-weight: 600
}

.lp_det .prog_body dd {
font-size: 17px;
line-height: 1.6;
margin: 0 0 8px 16px
}

.lp_det .prog_body cite {
font-size: 14px;
line-height: 1.4;
color: #171F2B;
font-style: italic
}

.lp_det .prog_body figure {
margin: 0 0 16px
}

.lp_det .prog_body figcaption {
font-size: 14px;
line-height: 1.4;
color: #2384D4
}

.lp_det .prog_body details {
border: 1px solid #E4E8F3;
border-radius: 7px;
padding: 8px 16px;
margin-bottom: 8px;
transition: border-color .16s ease-out
}

.lp_det .prog_body details:hover {
border-color: #2384D4
}

.lp_det .prog_body summary {
font-size: 17px;
line-height: 1.4;
color: #171F2B;
cursor: pointer;
padding: 4px 0
}

.lp_det .desc_area {
margin-top: 48px;
padding-top: 48px;
border-top: 1px solid #E4E8F3
}

.lp_det .desc_heading {
font-size: 29px;
line-height: 1.15;
color: #171F2B;
margin: 0 0 24px
}

.lp_det .desc_cols {
display: flex;
flex-direction: row;
gap: 24px;
align-items: flex-start
}

.lp_det .desc_text {
flex: 1 1 0;
font-size: 17px;
line-height: 1.6;
color: #171F2B
}

.lp_det .desc_text p {
margin: 0 0 16px
}

.lp_det .desc_text h2 {
font-size: 22px;
line-height: 1.4;
color: #171F2B;
margin: 24px 0 8px
}

.lp_det .desc_text small {
font-size: 14px;
line-height: 1.4
}

.lp_det .desc_text abbr {
border-bottom: 1px dashed #2384D4;
cursor: help
}

.lp_det .desc_text ul,
.lp_det .desc_text ol {
padding-left: 24px;
margin: 0 0 16px
}

.lp_det .desc_text li {
margin-bottom: 8px;
font-size: 17px;
line-height: 1.6
}

.lp_det .desc_text dl {
margin: 0 0 16px
}

.lp_det .desc_text dt {
font-size: 17px;
color: #2384D4;
font-weight: 600
}

.lp_det .desc_text dd {
font-size: 17px;
line-height: 1.6;
margin: 0 0 8px 16px
}

.lp_det .desc_text blockquote {
border: 1px solid #2384D4;
border-radius: 7px;
padding: 16px 24px;
margin: 0 0 16px;
font-size: 17px;
line-height: 1.6;
color: #171F2B
}

.lp_det .desc_text cite {
font-size: 14px;
font-style: italic;
color: #2384D4
}

.lp_det .pull_q {
flex: 0 0 220px;
font-size: 22px;
line-height: 1.4;
color: #2384D4;
border: 1px solid #2384D4;
border-radius: 7px;
padding: 16px;
align-self: flex-start;
position: sticky;
top: 24px
}

.lp_det .aside_card {
background: #171F2B;
border-radius: 14px;
padding: 24px;
box-shadow: 0 8px 36px 0 #171f2b1f;
position: sticky;
top: 24px
}

.lp_det .aside_price_label {
font-size: 14px;
line-height: 1.4;
color: #E4E8F3;
margin-bottom: 8px
}

.lp_det .aside_price {
font-size: 55px;
line-height: 1.15;
color: #fff;
margin-bottom: 4px
}

.lp_det .aside_pricedes {
font-size: 14px;
line-height: 1.4;
color: #E4E8F3;
margin-bottom: 24px
}

.lp_det .aside_seats {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
margin-bottom: 24px
}

.lp_det .seats_bar_track {
flex: 1 1 0;
height: 6px;
background: #e4e8f333;
border-radius: 2px;
overflow: hidden
}

.lp_det .seats_bar_fill {
height: 100%;
background: #2384D4;
border-radius: 2px;
width: 30%
}

.lp_det .seats_txt {
font-size: 14px;
line-height: 1.4;
color: #E4E8F3;
white-space: nowrap
}

.lp_det .aside_btn {
display: block;
width: 100%;
background: linear-gradient(211deg, #2384D4, #1a6fb0);
color: #fff;
font-size: 17px;
line-height: 1.4;
border: none;
border-radius: 14px;
padding: 16px 24px;
cursor: pointer;
text-align: center;
text-decoration: none;
transition: background .16s ease-out, box-shadow .18s ease-out, transform .14s ease-out;
box-shadow: 0 6px 28px 0 #2384d41a;
margin-bottom: 16px
}

.lp_det .aside_btn:hover {
background: linear-gradient(31deg, #2384D4, #1a6fb0);
box-shadow: 0 8px 36px 0 #2384d41f;
transform: translateY(-3px)
}

.lp_det .aside_btn:focus {
outline: 2px solid #E4E8F3;
outline-offset: 2px
}

.lp_det .aside_btn:active {
transform: translateY(0)
}

.lp_det .aside_meta_list {
list-style: none;
padding: 0;
margin: 0
}

.lp_det .aside_meta_list li {
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: center;
padding: 8px 0;
border-bottom: 1px solid #e4e8f31f;
font-size: 14px;
line-height: 1.4
}

.lp_det .aside_meta_list li:last-child {
border-bottom: none
}

.lp_det .aside_meta_list .m_key {
color: #E4E8F3
}

.lp_det .aside_meta_list .m_val {
color: #fff;
font-weight: 600
}

.lp_det .dashed_path {
position: absolute;
pointer-events: none;
top: 0;
left: 0;
width: 100%;
height: 100%;
overflow: hidden
}

@media (max-width: 1024px) {
.lp_det .band_img_col {
flex: 0 0 300px
}

.lp_det .band_h1 {
font-size: 55px
}
}

@media (max-width: 768px) {
.lp_det .band_inner {
flex-direction: column;
gap: 24px
}

.lp_det .band_img_col {
flex: none;
width: 100%
}

.lp_det .band_h1 {
font-size: 29px
}

.lp_det .body_wrap {
flex-direction: column
}

.lp_det .body_aside {
flex: none;
width: 100%
}

.lp_det .aside_card {
position: static
}

.lp_det .desc_cols {
flex-direction: column
}

.lp_det .pull_q {
position: static;
flex: none;
width: 100%
}
}

.frnt {
background: #fff;
overflow-x: clip
}

.frnt .pg_wrap {
max-width: 1280px;
margin: 0 auto;
padding: 0 24px
}

.frnt .s1 {
background: #171F2B;
padding: 48px 0;
position: relative
}

.frnt .s1_circles {
position: absolute;
inset: 0;
overflow: hidden;
pointer-events: none
}

.frnt .s1_circles::before {
content: '';
position: absolute;
width: 420px;
height: 420px;
border-radius: 50%;
background: #2384d412;
top: -80px;
right: 120px
}

.frnt .s1_circles::after {
content: '';
position: absolute;
width: 220px;
height: 220px;
border-radius: 50%;
background: #e4e8f30d;
bottom: -40px;
right: 340px
}

.frnt .s1_inner {
display: flex;
flex-direction: row;
gap: 48px;
align-items: stretch;
position: relative;
z-index: 1
}

.frnt .s1_img_strip {
width: 220px;
flex-shrink: 0;
border-radius: 14px;
overflow: hidden;
box-shadow: 0 8px 36px 0 #2384d41f
}

.frnt .s1_img_strip img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block
}

.frnt .s1_text {
flex: 1;
display: flex;
flex-direction: column;
gap: 24px;
justify-content: center
}

.frnt .s1_label {
display: inline-block;
border: 1px solid #2384d480;
border-radius: 2px;
padding: 4px 16px;
font-size: 14px;
color: #2384D4;
letter-spacing: .12em;
text-transform: uppercase
}

.frnt .s1_h1 {
font-size: 55px;
line-height: 1.15;
color: #fff;
margin: 0
}

.frnt .s1_h1 span {
background: linear-gradient(211deg, #2384D4, #E4E8F3);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text
}

.frnt .s1_desc {
font-size: 17px;
line-height: 1.6;
color: #E4E8F3;
max-width: 580px;
margin: 0
}

.frnt .s1_pull {
font-size: 22px;
line-height: 1.4;
color: #2384D4;
border-right: 3px solid #2384D4;
padding-right: 16px;
align-self: flex-end;
max-width: 280px;
text-align: right
}

.frnt .s1_actions {
display: flex;
flex-direction: row;
gap: 16px;
align-items: center
}

.frnt .btn_prim {
background: linear-gradient(211deg, #2384D4, #1a6fb8);
color: #fff;
border: none;
border-radius: 7px;
padding: 16px 48px;
font-size: 17px;
cursor: pointer;
transition: background .18s cubic-bezier(0.4, 0, 0.6, 1), box-shadow .15s ease-out;
box-shadow: 0 6px 28px 0 #2384d41a;
text-decoration: none;
display: inline-block
}

.frnt .btn_prim:hover {
background: linear-gradient(31deg, #2384D4, #1a6fb8);
box-shadow: 0 8px 36px 0 #2384d41f
}

.frnt .btn_sec {
background: transparent;
color: #E4E8F3;
border: 1px solid #e4e8f34d;
border-radius: 7px;
padding: 16px 32px;
font-size: 17px;
cursor: pointer;
transition: border-color .16s ease-out, color .16s ease-out;
text-decoration: none;
display: inline-block
}

.frnt .btn_sec:hover {
border-color: #2384D4;
color: #2384D4
}

.frnt .divider_a {
height: 4px;
background: linear-gradient(211deg, #2384D4, #E4E8F3)
}

.frnt .s2 {
padding: 48px 0;
background: #E4E8F3;
margin-left: 48px
}

.frnt .s2_inner {
display: flex;
flex-direction: row;
gap: 48px;
align-items: flex-start
}

.frnt .s2_left {
flex: 1
}

.frnt .s2_num {
font-size: 70px;
line-height: 1.15;
color: #2384d41a;
font-weight: 700;
margin: 0;
line-height: 1;
margin-bottom: -24px
}

.frnt .s2_h2 {
font-size: 29px;
line-height: 1.4;
color: #171F2B;
margin: 0 0 16px
}

.frnt .s2_body {
font-size: 17px;
line-height: 1.6;
color: #171F2B;
margin: 0 0 16px
}

.frnt .s2_right {
flex: 1;
display: flex;
flex-direction: column;
gap: 16px
}

.frnt .s2_img {
border-radius: 14px;
overflow: hidden;
box-shadow: 0 6px 28px 0 #171f2b1a
}

.frnt .s2_img img {
width: 100%;
height: 260px;
object-fit: cover;
display: block
}

.frnt .s2_schedule {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 8px
}

.frnt .s2_item {
background: #fff;
border-radius: 7px;
padding: 16px;
border-right: 3px solid #2384D4;
box-shadow: 0 2px 3px 0 #171f2b12
}

.frnt .s2_item_label {
font-size: 14px;
color: #2384D4;
text-transform: uppercase;
letter-spacing: .1em;
margin: 0 0 4px
}

.frnt .s2_item_val {
font-size: 17px;
color: #171F2B;
font-weight: 600;
margin: 0
}

.frnt .divider_b {
height: 4px;
background: #2384D4;
margin-right: 48px
}

.frnt .s3 {
padding: 48px 0;
background: #fff;
margin-right: 48px
}

.frnt .s3_inner {
display: flex;
flex-direction: row;
gap: 48px;
align-items: flex-start
}

.frnt .s3_img_wrap {
flex-shrink: 0;
width: 380px;
border-radius: 14px;
overflow: hidden;
position: relative;
box-shadow: 0 8px 36px 0 #171f2b1f
}

.frnt .s3_img_wrap img {
width: 100%;
height: 400px;
object-fit: cover;
display: block
}

.frnt .s3_overlay {
position: absolute;
inset: 0;
background: linear-gradient(211deg, #171f2b8c, #2384d42e)
}

.frnt .s3_text {
flex: 1;
display: flex;
flex-direction: column;
gap: 16px
}

.frnt .s3_num {
font-size: 70px;
line-height: 1;
color: #171f2b0f;
font-weight: 700;
margin: 0;
margin-bottom: -24px
}

.frnt .s3_h2 {
font-size: 29px;
line-height: 1.4;
color: #171F2B;
margin: 0 0 8px
}

.frnt .s3_body {
font-size: 17px;
line-height: 1.6;
color: #171F2B;
margin: 0
}

.frnt .s3_pull {
font-size: 22px;
line-height: 1.4;
color: #2384D4;
border-right: 3px solid #2384D4;
padding-right: 16px;
align-self: flex-end;
max-width: 260px;
text-align: right
}

.frnt .s3_tags {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px;
margin-top: 8px
}

.frnt .s3_tag {
border: 1px solid #2384D4;
border-radius: 2px;
padding: 4px 16px;
font-size: 14px;
color: #2384D4
}

.frnt .divider_c {
height: 4px;
background: #E4E8F3;
margin-left: 48px
}

.frnt .s4 {
padding: 48px 0;
background: #171F2B;
position: relative;
margin-left: 48px
}

.frnt .s4_bg {
position: absolute;
inset: 0;
overflow: hidden;
pointer-events: none
}

.frnt .s4_bg img {
width: 100%;
height: 100%;
object-fit: cover;
opacity: .13
}

.frnt .s4_inner {
position: relative;
z-index: 1;
display: flex;
flex-direction: column;
gap: 24px
}

.frnt .s4_num {
font-size: 70px;
line-height: 1;
color: #e4e8f30f;
font-weight: 700;
margin: 0;
margin-bottom: -24px
}

.frnt .s4_h2 {
font-size: 29px;
line-height: 1.4;
color: #fff;
margin: 0
}

.frnt .s4_cols {
display: flex;
flex-direction: row;
gap: 48px;
align-items: flex-start
}

.frnt .s4_col_a {
flex: 1;
border-right: 1px solid #e4e8f326;
padding-right: 48px
}

.frnt .s4_col_b {
flex: 1
}

.frnt .s4_body {
font-size: 17px;
line-height: 1.6;
color: #E4E8F3;
margin: 0 0 16px
}

.frnt .s4_pull {
font-size: 22px;
line-height: 1.4;
color: #2384D4;
border-right: 3px solid #2384D4;
padding-right: 16px;
text-align: right
}

.frnt .divider_d {
height: 4px;
background: linear-gradient(211deg, #E4E8F3, #2384D4);
margin-right: 48px
}

.frnt .s5 {
padding: 48px 0;
background: #E4E8F3;
margin-right: 48px
}

.frnt .s5_inner {
display: flex;
flex-direction: row;
gap: 48px;
align-items: flex-start
}

.frnt .s5_text {
flex: 1;
display: flex;
flex-direction: column;
gap: 16px
}

.frnt .s5_num {
font-size: 70px;
line-height: 1;
color: #171f2b0f;
font-weight: 700;
margin: 0;
margin-bottom: -24px
}

.frnt .s5_h2 {
font-size: 29px;
line-height: 1.4;
color: #171F2B;
margin: 0
}

.frnt .s5_body {
font-size: 17px;
line-height: 1.6;
color: #171F2B;
margin: 0
}

.frnt .s5_refs {
display: flex;
flex-direction: column;
gap: 16px;
flex: 1
}

.frnt .s5_ref_card {
background: #fff;
border-radius: 14px;
padding: 24px;
box-shadow: 0 2px 3px 0 #171f2b12;
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start
}

.frnt .s5_avatar {
width: 56px;
height: 56px;
border-radius: 50%;
overflow: hidden;
flex-shrink: 0
}

.frnt .s5_avatar img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: top
}

.frnt .s5_avatar_ph {
width: 56px;
height: 56px;
border-radius: 50%;
background: linear-gradient(211deg, #2384D4, #E4E8F3);
flex-shrink: 0;
display: flex;
align-items: center;
justify-content: center
}

.frnt .s5_avatar_ph svg {
width: 28px;
height: 28px
}

.frnt .s5_ref_body {
flex: 1
}

.frnt .s5_ref_text {
font-size: 17px;
line-height: 1.6;
color: #171F2B;
margin: 0 0 8px
}

.frnt .s5_ref_name {
font-size: 14px;
color: #2384D4;
font-weight: 600;
margin: 0
}

.frnt .s5_stars {
display: flex;
flex-direction: row;
gap: 4px;
margin-bottom: 8px
}

.frnt .s5_star {
width: 14px;
height: 14px
}

.frnt .divider_e {
height: 4px;
background: #2384D4;
margin-left: 48px
}

.frnt .s6 {
padding: 48px 0;
background: #fff;
margin-left: 48px
}

.frnt .s6_inner {
display: flex;
flex-direction: column;
gap: 24px
}

.frnt .s6_num {
font-size: 70px;
line-height: 1;
color: #171f2b0d;
font-weight: 700;
margin: 0;
margin-bottom: -24px
}

.frnt .s6_h2 {
font-size: 29px;
line-height: 1.4;
color: #171F2B;
margin: 0
}

.frnt .s6_row {
display: flex;
flex-direction: row;
gap: 48px;
align-items: flex-start
}

.frnt .s6_img_wrap {
flex-shrink: 0;
width: 340px;
border-radius: 14px;
overflow: hidden;
box-shadow: 0 6px 28px 0 #171f2b1a
}

.frnt .s6_img_wrap img {
width: 100%;
height: 300px;
object-fit: cover;
display: block
}

.frnt .s6_outcomes {
flex: 1;
display: flex;
flex-direction: column;
gap: 16px
}

.frnt .s6_body {
font-size: 17px;
line-height: 1.6;
color: #171F2B;
margin: 0
}

.frnt .s6_list {
display: flex;
flex-direction: column;
gap: 8px;
list-style: none;
padding: 0;
margin: 0
}

.frnt .s6_list li {
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start;
font-size: 17px;
line-height: 1.6;
color: #171F2B
}

.frnt .s6_dot {
width: 8px;
height: 8px;
border-radius: 50%;
background: #2384D4;
flex-shrink: 0;
margin-top: 8px
}

.frnt .s6_pull {
font-size: 22px;
line-height: 1.4;
color: #2384D4;
border-right: 3px solid #2384D4;
padding-right: 16px;
align-self: flex-end;
max-width: 300px;
text-align: right
}

@keyframes bg_flicker {

0%,
100% {
opacity: .13
}

45% {
opacity: .11
}

70% {
opacity: .14
}
}

.frnt .s4_bg img {
animation: bg_flicker 7s infinite
}

@media (max-width: 900px) {
.frnt .s2 {
margin-left: 0
}

.frnt .s3 {
margin-right: 0
}

.frnt .s4 {
margin-left: 0
}

.frnt .s5 {
margin-right: 0
}

.frnt .s6 {
margin-left: 0
}

.frnt .divider_b {
margin-right: 0
}

.frnt .divider_c {
margin-left: 0
}

.frnt .divider_d {
margin-right: 0
}

.frnt .divider_e {
margin-left: 0
}

.frnt .s1_inner {
flex-direction: column
}

.frnt .s1_img_strip {
width: 100%;
height: 220px
}

.frnt .s1_h1 {
font-size: 29px
}

.frnt .s1_pull {
align-self: flex-start;
text-align: left;
border-right: none;
border-left: 3px solid #2384D4;
padding-right: 0;
padding-left: 16px
}

.frnt .s2_inner {
flex-direction: column
}

.frnt .s3_inner {
flex-direction: column
}

.frnt .s3_img_wrap {
width: 100%
}

.frnt .s4_cols {
flex-direction: column;
gap: 24px
}

.frnt .s4_col_a {
border-right: none;
padding-right: 0;
border-bottom: 1px solid #e4e8f326;
padding-bottom: 24px
}

.frnt .s5_inner {
flex-direction: column
}

.frnt .s6_row {
flex-direction: column
}

.frnt .s6_img_wrap {
width: 100%
}
}

@media (max-width: 600px) {
.frnt .s2_schedule {
grid-template-columns: 1fr
}

.frnt .s1_actions {
flex-direction: column;
align-items: flex-start
}
}

.srvs {
background: #fff;
overflow-x: clip
}

.srvs .pit {
background: linear-gradient(211deg, #2384D4, #E4E8F3);
padding: 48px 24px;
position: relative
}

.srvs .pit_inner {
max-width: 1280px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: center;
gap: 48px
}

.srvs .pit_geo {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
overflow: hidden
}

.srvs .pit_geo svg {
position: absolute;
top: -40px;
right: -60px;
opacity: .08;
width: 420px;
height: 420px
}

.srvs .pit_geo svg.geo2 {
top: auto;
bottom: -80px;
right: auto;
left: -80px;
width: 300px;
height: 300px
}

.srvs .pit_text {
flex: 1;
min-width: 0
}

.srvs .pit_label {
display: inline-block;
border: 1px solid #2384D4;
border-radius: 2px;
padding: 4px 16px;
font-size: 14px;
line-height: 1.4;
color: #171F2B;
margin-bottom: 24px;
letter-spacing: .08em;
text-transform: uppercase
}

.srvs .pit_h1 {
font-size: 55px;
line-height: 1.15;
color: #171F2B;
margin: 0 0 16px;
font-weight: 800
}

.srvs .pit_sub {
font-size: 22px;
line-height: 1.4;
color: #171F2B;
margin: 0 0 24px;
opacity: .82
}

.srvs .pit_desc {
font-size: 17px;
line-height: 1.6;
color: #171F2B;
margin: 0;
max-width: 560px;
opacity: .78
}

.srvs .pit_img_col {
flex: 0 0 320px;
position: relative
}

.srvs .pit_img_wrap {
border-radius: 14px;
overflow: hidden;
width: 320px;
height: 240px;
box-shadow: 0 6px 28px 0 #2384d41a;
filter: grayscale(1) contrast(1.2)
}

.srvs .pit_img_wrap img {
width: 320px;
height: 240px;
object-fit: cover;
object-position: center;
display: block
}

.srvs .pit_scallop {
display: block;
width: 100%;
line-height: 0;
margin-top: -1px
}

.srvs .pit_scallop svg {
display: block;
width: 100%
}

.srvs .cards_row {
max-width: 1280px;
margin: 0 auto;
padding: 48px 24px
}

.srvs .cards_head {
margin-bottom: 48px
}

.srvs .cards_h2 {
font-size: 29px;
line-height: 1.15;
color: #171F2B;
margin: 0 0 8px
}

.srvs .cards_intro {
font-size: 17px;
line-height: 1.6;
color: #171F2B;
opacity: .72;
margin: 0;
max-width: 620px
}

.srvs .cards_grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 24px
}

.srvs .svc_card {
background: #fff;
border-radius: 14px;
box-shadow: 0 2px 3px 0 #171f2b12;
padding: 24px;
position: relative;
overflow: hidden;
transition: box-shadow .18s cubic-bezier(0.4, 0, 0.6, 1), transform .15s cubic-bezier(0.4, 0, 0.6, 1);
border: 1px solid #E4E8F3
}

.srvs .svc_card:hover {
box-shadow: 0 8px 36px 0 #2384d41f;
transform: translateY(-4px);
border-style: dashed
}

.srvs .svc_card:focus-within {
outline: 2px solid #2384D4 !important;
outline-offset: 2px !important
}

.srvs .card_corner {
position: absolute;
top: 0;
right: 0;
width: 0;
height: 0;
border-style: solid;
border-width: 0 48px 48px 0;
border-color: transparent #2384D4 transparent transparent;
border-radius: 0 14px 0 0
}

.srvs .card_num {
position: absolute;
top: -8px;
left: 16px;
font-size: 70px;
line-height: 1.15;
color: #E4E8F3;
font-weight: 900;
pointer-events: none;
user-select: none;
z-index: 0
}

.srvs .card_body {
position: relative;
z-index: 1
}

.srvs .card_icon {
width: 40px;
height: 40px;
margin-bottom: 16px;
display: flex;
flex-direction: row;
align-items: center;
justify-content: center
}

.srvs .card_icon svg {
width: 36px;
height: 36px
}

.srvs .card_h3 {
font-size: 22px;
line-height: 1.15;
color: #171F2B;
margin: 0 0 8px
}

.srvs .card_p {
font-size: 17px;
line-height: 1.6;
color: #171F2B;
opacity: .75;
margin: 0 0 16px
}

.srvs .card_tags {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px
}

.srvs .tag {
background: #E4E8F3;
border-radius: 7px;
padding: 4px 8px;
font-size: 14px;
line-height: 1.4;
color: #171F2B
}

.srvs .tag.accent {
background: #2384D4;
color: #fff
}

.srvs .svc_card:nth-child(1) {
animation: scaleIn .19s cubic-bezier(0.4, 0, 0.6, 1) both;
animation-delay: .04s
}

.srvs .svc_card:nth-child(2) {
animation: scaleIn .22s cubic-bezier(0.4, 0, 0.6, 1) both;
animation-delay: .1s
}

.srvs .svc_card:nth-child(3) {
animation: scaleIn .19s cubic-bezier(0.4, 0, 0.6, 1) both;
animation-delay: .16s
}

@keyframes scaleIn {
from {
opacity: 0;
transform: scale(0.96)
}

to {
opacity: 1;
transform: scale(1)
}
}

.srvs .bold_break {
background: #171F2B;
padding: 48px 24px;
position: relative
}

.srvs .bold_break_inner {
max-width: 1280px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 48px
}

.srvs .bb_left {
flex: 1;
min-width: 0
}

.srvs .bb_h2 {
font-size: 29px;
line-height: 1.15;
color: #E4E8F3;
margin: 0 0 24px
}

.srvs .bb_funnel {
display: flex;
flex-direction: column;
gap: 8px;
margin-bottom: 24px
}

.srvs .funnel_step {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px
}

.srvs .funnel_bar_wrap {
flex: 1
}

.srvs .funnel_bar {
height: 36px;
border-radius: 7px;
background: linear-gradient(211deg, #2384D4, #E4E8F3);
display: flex;
flex-direction: row;
align-items: center;
padding: 0 16px;
transition: opacity .15s ease-out
}

.srvs .funnel_bar:hover {
opacity: .85
}

.srvs .funnel_bar span {
font-size: 14px;
line-height: 1.4;
color: #171F2B;
font-weight: 700
}

.srvs .funnel_label {
font-size: 14px;
line-height: 1.4;
color: #E4E8F3;
min-width: 120px;
text-align: right;
opacity: .82
}

.srvs .bb_note {
font-size: 17px;
line-height: 1.6;
color: #E4E8F3;
opacity: .72;
margin: 0
}

.srvs .bb_right {
flex: 0 0 320px;
display: flex;
flex-direction: column;
gap: 16px
}

.srvs .bb_portrait {
border-radius: 26px;
overflow: hidden;
width: 320px;
height: 448px;
box-shadow: 0 6px 28px 0 #2384d41a;
flex-shrink: 0
}

.srvs .bb_portrait img {
width: 320px;
height: 448px;
object-fit: cover;
object-position: top;
display: block
}

.srvs .bb_portrait2 {
border-radius: 26px;
overflow: hidden;
width: 320px;
height: 200px;
box-shadow: 0 6px 28px 0 #2384d41a;
flex-shrink: 0
}

.srvs .bb_portrait2 img {
width: 320px;
height: 200px;
object-fit: cover;
object-position: top;
display: block
}

.srvs .bb_quote {
border: 1px solid #2384D4;
border-radius: 7px;
padding: 16px;
background: #2384d414
}

.srvs .bb_quote_text {
font-size: 17px;
line-height: 1.6;
color: #E4E8F3;
margin: 0 0 8px
}

.srvs .bb_quote_author {
font-size: 14px;
line-height: 1.4;
color: #2384D4;
margin: 0
}

.srvs .blob_bg {
background: #E4E8F3;
padding: 48px 24px;
position: relative
}

.srvs .blob_bg_deco {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
pointer-events: none;
overflow: hidden
}

.srvs .blob_bg_deco svg {
position: absolute;
top: -60px;
right: -80px;
opacity: .07;
width: 500px;
height: 500px
}

.srvs .blob_inner {
max-width: 1280px;
margin: 0 auto;
position: relative;
z-index: 1
}

.srvs .blob_h2 {
font-size: 29px;
line-height: 1.15;
color: #171F2B;
margin: 0 0 8px;
text-align: center
}

.srvs .blob_sub {
font-size: 17px;
line-height: 1.6;
color: #171F2B;
opacity: .72;
margin: 0 auto 48px;
max-width: 560px;
text-align: center
}

.srvs .steps_list {
display: flex;
flex-direction: column;
gap: 24px;
max-width: 820px;
margin: 0 auto
}

.srvs .step_row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 24px;
background: #fff;
border-radius: 14px;
padding: 24px;
box-shadow: 0 2px 3px 0 #171f2b12;
transition: box-shadow .12s ease-out
}

.srvs .step_row:hover {
box-shadow: 0 6px 28px 0 #2384d41a
}

.srvs .step_num_big {
font-size: 55px;
line-height: 1.15;
color: #E4E8F3;
font-weight: 900;
flex-shrink: 0;
width: 64px;
text-align: center;
user-select: none
}

.srvs .step_body {
flex: 1;
min-width: 0
}

.srvs .step_h4 {
font-size: 22px;
line-height: 1.15;
color: #171F2B;
margin: 0 0 8px
}

.srvs .step_p {
font-size: 17px;
line-height: 1.6;
color: #171F2B;
opacity: .75;
margin: 0 0 8px
}

.srvs .step_badges {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px
}

.srvs .badge {
background: #E4E8F3;
border-radius: 2px;
padding: 4px 8px;
font-size: 14px;
line-height: 1.4;
color: #171F2B;
border: 1px solid #2384D4
}

.srvs .badge.dark {
background: #171F2B;
color: #E4E8F3;
border-color: #171F2B
}

.srvs .dashed_box {
border: 2px dashed #2384D4;
border-radius: 14px;
padding: 24px;
margin-top: 48px;
display: flex;
flex-direction: row;
align-items: center;
gap: 24px;
background: #fff
}

.srvs .dashed_box_text {
flex: 1
}

.srvs .dashed_box_h3 {
font-size: 22px;
line-height: 1.15;
color: #171F2B;
margin: 0 0 8px
}

.srvs .dashed_box_p {
font-size: 17px;
line-height: 1.6;
color: #171F2B;
opacity: .75;
margin: 0
}

.srvs .dashed_box_cta {
flex-shrink: 0
}

.srvs .btn_primary {
display: inline-block;
background: linear-gradient(211deg, #2384D4, #1a6faa);
color: #fff;
border-radius: 7px;
padding: 16px 24px;
font-size: 17px;
line-height: 1.4;
text-decoration: none;
border: none;
cursor: pointer;
transition: background .18s cubic-bezier(0.4, 0, 0.6, 1), box-shadow .15s ease-out;
box-shadow: 0 2px 3px 0 #2384d412
}

.srvs .btn_primary:hover {
background: linear-gradient(31deg, #2384D4, #1a6faa);
box-shadow: 0 6px 28px 0 #2384d41a
}

.srvs .btn_primary:focus-visible {
outline: 3px solid #171F2B !important;
outline-offset: 3px !important
}

@media (max-width: 900px) {
.srvs .pit_inner {
flex-direction: column
}

.srvs .pit_img_col {
flex: unset;
width: 100%
}

.srvs .pit_img_wrap {
width: 100%;
height: 200px
}

.srvs .pit_img_wrap img {
width: 100%;
height: 200px
}

.srvs .cards_grid {
grid-template-columns: 1fr
}

.srvs .bold_break_inner {
flex-direction: column
}

.srvs .bb_right {
flex: unset;
width: 100%
}

.srvs .bb_portrait {
width: 100%;
height: 300px
}

.srvs .bb_portrait img {
width: 100%;
height: 300px
}

.srvs .bb_portrait2 {
width: 100%;
height: 180px
}

.srvs .bb_portrait2 img {
width: 100%;
height: 180px
}

.srvs .dashed_box {
flex-direction: column
}

.srvs .pit_h1 {
font-size: 29px
}
}

@media (max-width: 600px) {
.srvs .step_row {
flex-direction: column;
gap: 8px
}

.srvs .step_num_big {
width: auto;
text-align: left;
font-size: 29px
}

.srvs .funnel_label {
min-width: 80px;
font-size: 14px
}
}

.abt {
background: #fff;
overflow-x: clip
}

.abt .pg_wrap {
max-width: 1280px;
margin: 0 auto;
padding: 0 24px
}

.abt .t_block {
background: linear-gradient(211deg, #2384D4, #E4E8F3);
padding: 48px 0;
position: relative
}

.abt .t_block .dot_grid {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-image: radial-gradient(circle, #171F2B 1px, transparent 1px);
background-size: 22px 22px;
opacity: .08;
pointer-events: none;
overflow: hidden
}

.abt .t_inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 24px;
display: flex;
flex-direction: row;
align-items: center;
gap: 48px
}

.abt .t_text {
flex: 1;
min-width: 0
}

.abt .t_label {
display: inline-block;
border: 1.5px solid #171F2B;
border-radius: 2px;
font-size: 14px;
line-height: 1.4;
letter-spacing: .12em;
text-transform: uppercase;
color: #171F2B;
padding: 4px 16px;
margin-bottom: 16px
}

.abt .t_h1 {
font-size: 55px;
line-height: 1.15;
color: #171F2B;
margin: 0 0 16px
}

.abt .t_sub {
font-size: 22px;
line-height: 1.4;
color: #171F2B;
margin: 0 0 24px;
opacity: .82
}

.abt .t_desc {
font-size: 17px;
line-height: 1.6;
color: #171F2B;
margin: 0;
opacity: .75
}

.abt .t_img_wrap {
flex: 0 0 340px;
position: relative
}

.abt .t_img_frame {
width: 340px;
height: 260px;
border-radius: 14px;
overflow: hidden;
box-shadow: 0 8px 36px 0 #2384d41f;
position: relative
}

.abt .t_img_frame img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
filter: grayscale(100%);
display: block
}

.abt .t_img_frame::after {
content: '';
position: absolute;
inset: 0;
border-radius: 14px;
border: 2px solid #2384d44d;
pointer-events: none
}

.abt .t_badge {
position: absolute;
top: -12px;
right: -12px;
background: #2384D4;
color: #fff;
font-size: 14px;
line-height: 1.4;
font-weight: 700;
border-radius: 26px;
padding: 4px 16px;
box-shadow: 0 2px 3px 0 #2384d412
}

.abt .story_sec {
padding: 48px 0;
background: #fff;
border-top: 1px dotted #b0bcd4
}

.abt .story_grid {
display: grid;
grid-template-columns: 1fr 340px;
gap: 48px;
align-items: start
}

.abt .story_left {
display: flex;
flex-direction: column;
gap: 24px
}

.abt .story_num_head {
position: relative;
padding-top: 8px
}

.abt .story_faded_num {
position: absolute;
top: -16px;
left: -8px;
font-size: 70px;
line-height: 1.15;
color: #E4E8F3;
font-weight: 900;
pointer-events: none;
z-index: 0;
user-select: none
}

.abt .story_h2 {
font-size: 29px;
line-height: 1.4;
color: #171F2B;
margin: 0;
position: relative;
z-index: 1
}

.abt .story_body {
font-size: 17px;
line-height: 1.6;
color: #171F2B;
margin: 0;
opacity: .82
}

.abt .pull_wrap {
display: flex;
flex-direction: row;
gap: 24px;
align-items: flex-start
}

.abt .pull_main {
flex: 1;
font-size: 17px;
line-height: 1.6;
color: #171F2B;
margin: 0;
opacity: .82
}

.abt .pull_quote {
flex: 0 0 200px;
font-size: 22px;
line-height: 1.4;
color: #2384D4;
font-weight: 700;
border: 1.5px solid #2384D4;
border-radius: 7px;
padding: 16px
}

.abt .metrics_row {
display: flex;
flex-direction: row;
gap: 0;
border: 1.5px solid #E4E8F3;
border-radius: 14px;
overflow: hidden;
box-shadow: 0 2px 3px 0 #171f2b12
}

.abt .metric_item {
flex: 1;
padding: 24px 16px;
text-align: center;
background: #fff;
transition: background .18s ease-out
}

.abt .metric_item:not(:last-child) {
border-right: 1px solid #E4E8F3
}

.abt .metric_item:hover {
background: #E4E8F3
}

.abt .metric_val {
font-size: 29px;
line-height: 1.15;
color: #2384D4;
font-weight: 900;
display: block
}

.abt .metric_lbl {
font-size: 14px;
line-height: 1.4;
color: #171F2B;
opacity: .7;
display: block;
margin-top: 4px
}

.abt .story_right {
display: flex;
flex-direction: column;
gap: 16px
}

.abt .story_img_wrap {
width: 340px;
height: 280px;
border-radius: 14px;
overflow: hidden;
box-shadow: 0 6px 28px 0 #2384d41a;
position: relative
}

.abt .story_img_wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block
}

.abt .story_img_caption {
font-size: 14px;
line-height: 1.4;
color: #171F2B;
opacity: .6;
text-align: center
}

.abt .approach_sec {
padding: 48px 0;
background: #171F2B;
position: relative
}

.abt .approach_sec .edge_glow {
position: absolute;
inset: 0;
border-radius: 0;
pointer-events: none;
animation: edge_pulse 3.2s cubic-bezier(0.4, 0, 0.6, 1) infinite alternate;
box-shadow: inset 0 0 0 2px #2384d400
}

@keyframes edge_pulse {
0% {
box-shadow: 0 0 0 0 #2384d400 inset 0 0 40px 0 #2384d400
}

100% {
box-shadow: 0 0 60px 0 #2384d42e inset 0 0 40px 0 #2384d41a
}
}

.abt .approach_inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 24px;
position: relative;
z-index: 1
}

.abt .approach_top {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
gap: 24px;
margin-bottom: 48px
}

.abt .approach_h2 {
font-size: 29px;
line-height: 1.4;
color: #E4E8F3;
margin: 0
}

.abt .approach_sub {
font-size: 17px;
line-height: 1.6;
color: #E4E8F3;
opacity: .65;
margin: 0;
max-width: 400px;
text-align: right
}

.abt .approach_steps {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 24px
}

.abt .step_card {
background: #2384d414;
border: 1px solid #2384d438;
border-radius: 14px;
padding: 24px;
position: relative;
transition: background .15s ease-out, border-color .15s ease-out
}

.abt .step_card:hover {
background: #2384d429;
border-color: #2384d480;
transform: translateY(-4px);
box-shadow: 0 8px 36px 0 #2384d41f;
transition: background .15s ease-out, border-color .15s ease-out, transform .15s ease-out, box-shadow .15s ease-out
}

.abt .step_num_badge {
position: absolute;
top: -12px;
right: 16px;
background: #2384D4;
color: #fff;
font-size: 14px;
font-weight: 700;
line-height: 1.4;
border-radius: 26px;
padding: 4px 16px;
box-shadow: 0 2px 3px 0 #2384d412
}

.abt .step_h4 {
font-size: 22px;
line-height: 1.4;
color: #E4E8F3;
margin: 0 0 8px
}

.abt .step_p {
font-size: 17px;
line-height: 1.6;
color: #E4E8F3;
opacity: .72;
margin: 0
}

.abt .step_icon {
width: 36px;
height: 36px;
margin-bottom: 16px;
display: block
}

.abt .team_sec {
padding: 48px 0;
background: #E4E8F3;
border-top: 1px dotted #b0bcd4
}

.abt .team_grid {
display: grid;
grid-template-columns: 340px 1fr;
gap: 48px;
align-items: start
}

.abt .team_portrait_col {
display: flex;
flex-direction: column;
gap: 16px;
align-items: center
}

.abt .portrait_wrap {
width: 200px;
height: 200px;
border-radius: 50%;
overflow: hidden;
box-shadow: 0 6px 28px 0 #171f2b1a;
border: 4px solid #2384D4;
flex-shrink: 0
}

.abt .portrait_wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: top;
display: block
}

.abt .portrait_name {
font-size: 22px;
line-height: 1.4;
color: #171F2B;
font-weight: 700;
text-align: center;
margin: 0
}

.abt .portrait_role {
font-size: 14px;
line-height: 1.4;
color: #2384D4;
text-align: center;
letter-spacing: .08em;
text-transform: uppercase;
margin: 0
}

.abt .portrait_img_extra {
width: 340px;
height: 180px;
border-radius: 14px;
overflow: hidden;
box-shadow: 0 2px 3px 0 #171f2b12
}

.abt .portrait_img_extra img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block
}

.abt .team_text_col {
display: flex;
flex-direction: column;
gap: 24px
}

.abt .team_num_head {
position: relative;
padding-top: 8px
}

.abt .team_faded_num {
position: absolute;
top: -16px;
left: -8px;
font-size: 70px;
line-height: 1.15;
color: #2384d41f;
font-weight: 900;
pointer-events: none;
z-index: 0;
user-select: none
}

.abt .team_h2 {
font-size: 29px;
line-height: 1.4;
color: #171F2B;
margin: 0;
position: relative;
z-index: 1
}

.abt .team_body {
font-size: 17px;
line-height: 1.6;
color: #171F2B;
margin: 0;
opacity: .82
}

.abt .team_pull_wrap {
display: flex;
flex-direction: row;
gap: 24px;
align-items: flex-start
}

.abt .team_pull_main {
flex: 1;
font-size: 17px;
line-height: 1.6;
color: #171F2B;
margin: 0;
opacity: .82
}

.abt .team_pull_aside {
flex: 0 0 180px;
font-size: 17px;
line-height: 1.4;
color: #171F2B;
font-weight: 700;
border: 1.5px solid #171F2B;
border-radius: 7px;
padding: 16px;
background: #fff
}

.abt .contact_strip {
display: flex;
flex-direction: row;
gap: 16px;
flex-wrap: wrap;
margin-top: 8px
}

.abt .contact_item {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
font-size: 14px;
line-height: 1.4;
color: #171F2B;
text-decoration: none;
border: 1.5px solid #171F2B;
border-radius: 7px;
padding: 4px 16px;
background: #fff;
transition: background .12s ease-out, color .12s ease-out
}

.abt .contact_item:hover {
background: #171F2B;
color: #E4E8F3
}

.abt .contact_item:focus {
outline: 2px solid #2384D4;
outline-offset: 2px;
text-decoration: underline
}

.abt .ci_icon {
width: 16px;
height: 16px;
flex-shrink: 0
}

.abt .deco_lines {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
pointer-events: none;
overflow: hidden
}

.abt .deco_line_top {
position: absolute;
top: 12px;
left: 24px;
right: 24px;
height: 1px;
background: #2384d42e
}

.abt .deco_line_bottom {
position: absolute;
bottom: 12px;
left: 24px;
right: 24px;
height: 1px;
background: #2384d42e
}

@media (max-width: 900px) {
.abt .t_inner {
flex-direction: column;
gap: 24px
}

.abt .t_img_wrap {
flex: none;
width: 100%
}

.abt .t_img_frame {
width: 100%;
height: 200px
}

.abt .story_grid {
grid-template-columns: 1fr
}

.abt .story_img_wrap {
width: 100%;
height: 200px
}

.abt .story_right {
align-items: center
}

.abt .approach_steps {
grid-template-columns: 1fr
}

.abt .approach_top {
flex-direction: column;
align-items: flex-start
}

.abt .approach_sub {
text-align: left
}

.abt .team_grid {
grid-template-columns: 1fr
}

.abt .portrait_img_extra {
width: 100%
}

.abt .pull_wrap {
flex-direction: column
}

.abt .pull_quote {
flex: none;
width: 100%
}

.abt .team_pull_wrap {
flex-direction: column
}

.abt .team_pull_aside {
flex: none;
width: 100%
}

.abt .metrics_row {
flex-direction: column
}

.abt .metric_item:not(:last-child) {
border-right: none;
border-bottom: 1px solid #E4E8F3
}
}

@media (max-width: 600px) {
.abt .t_h1 {
font-size: 29px
}

.abt .t_sub {
font-size: 17px
}

.abt .contact_strip {
flex-direction: column
}
}

.lrn_prog {
background: #fff;
overflow-x: clip
}

.lrn_prog .pg_top {
display: flex;
flex-direction: row;
max-width: 1280px;
margin: 0 auto;
padding: 48px 24px;
gap: 48px;
align-items: stretch
}

.lrn_prog .pg_top_txt {
flex: 0 0 38%;
display: flex;
flex-direction: column;
justify-content: center;
gap: 24px;
position: relative
}

.lrn_prog .pg_top_fade_num {
position: absolute;
top: -16px;
left: -8px;
font-size: 160px;
font-weight: 900;
color: #E4E8F3;
line-height: 1.15;
z-index: 0;
pointer-events: none;
user-select: none;
letter-spacing: -8px
}

.lrn_prog .pg_top_txt_inner {
position: relative;
z-index: 1;
display: flex;
flex-direction: column;
gap: 16px
}

.lrn_prog .pg_badge {
display: inline-block;
border: 1.5px solid #2384D4;
border-radius: 2px;
padding: 4px 16px;
font-size: 14px;
color: #2384D4;
letter-spacing: .08em;
text-transform: uppercase;
width: fit-content
}

.lrn_prog .pg_h1 {
font-size: 55px;
line-height: 1.15;
color: #171F2B;
margin: 0
}

.lrn_prog .pg_h1 span {
background: linear-gradient(211deg, #2384D4, #E4E8F3);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text
}

.lrn_prog .pg_tagline {
font-size: 17px;
line-height: 1.6;
color: #3a4a5c;
margin: 0
}

.lrn_prog .pg_actions {
display: flex;
flex-direction: row;
gap: 16px;
flex-wrap: wrap
}

.lrn_prog .btn_prim {
background: linear-gradient(211deg, #2384D4, #1a6fb5);
color: #fff;
border: none;
border-radius: 7px;
padding: 16px 24px;
font-size: 17px;
cursor: pointer;
text-decoration: none;
display: inline-block;
transition: box-shadow .18s ease-out, transform .14s ease-out;
box-shadow: 0 2px 3px 0 #2384d412
}

.lrn_prog .btn_prim:hover {
background: linear-gradient(270deg, #2384D4, #1a6fb5);
box-shadow: 0 6px 28px 0 #2384d41a;
transform: translateY(-3px)
}

.lrn_prog .btn_sec {
background: #fff;
color: #171F2B;
border: 1.5px solid #E4E8F3;
border-radius: 7px;
padding: 16px 24px;
font-size: 17px;
cursor: pointer;
text-decoration: none;
display: inline-block;
transition: border-color .16s ease-out, box-shadow .18s ease-out
}

.lrn_prog .btn_sec:hover {
border-color: #2384D4;
box-shadow: 0 2px 3px 0 #2384d412
}

.lrn_prog .pg_top_img {
flex: 1;
position: relative;
min-height: 340px
}

.lrn_prog .img_frame {
width: 100%;
height: 100%;
border: 2px solid #E4E8F3;
border-radius: 14px;
overflow: hidden;
position: relative
}

.lrn_prog .img_frame img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block
}

.lrn_prog .img_scanline {
position: absolute;
inset: 0;
background: repeating-linear-gradient(0deg, transparent, transparent 3px, #171f2b0a 3px, #171f2b0a 4px);
pointer-events: none
}

.lrn_prog .img_accent {
position: absolute;
bottom: 16px;
left: 16px;
background: #ffffffb8;
backdrop-filter: blur(8px);
-webkit-backdrop-filter: blur(8px);
border-radius: 7px;
padding: 8px 16px;
border: 1px solid #2384d42e
}

.lrn_prog .img_accent_txt {
font-size: 14px;
color: #171F2B;
margin: 0
}

.lrn_prog .divider_band {
max-width: 480px;
margin: 0 auto;
height: 2px;
background: linear-gradient(211deg, #2384D4, #E4E8F3);
border-radius: 42px
}

.lrn_prog .cards_sec {
max-width: 1280px;
margin: 0 auto;
padding: 48px 24px
}

.lrn_prog .cards_sec_head {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
margin-bottom: 48px;
gap: 24px
}

.lrn_prog .cards_sec_h2 {
font-size: 29px;
line-height: 1.15;
color: #171F2B;
margin: 0
}

.lrn_prog .cards_sec_sub {
font-size: 17px;
line-height: 1.6;
color: #4a5a6e;
margin: 0;
max-width: 340px;
text-align: right
}

.lrn_prog .card_grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 24px
}

.lrn_prog .prog_card {
background: #fff;
border: 1.5px solid #E4E8F3;
border-radius: 14px;
overflow: hidden;
display: flex;
flex-direction: column;
box-shadow: 0 2px 3px 0 #171f2b12;
transition: box-shadow .18s ease-out, transform .14s ease-out
}

.lrn_prog .prog_card:hover {
box-shadow: 0 8px 36px 0 #171f2b1f;
transform: translateY(-5px)
}

.lrn_prog .card_img_wrap {
position: relative;
width: 100%;
aspect-ratio: 16/9;
overflow: hidden
}

.lrn_prog .card_img_wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block
}

.lrn_prog .card_img_overlay {
position: absolute;
inset: 0;
background: repeating-linear-gradient(0deg, transparent, transparent 4px, #171f2b08 4px, #171f2b08 5px);
pointer-events: none
}

.lrn_prog .card_user_tag {
position: absolute;
top: 16px;
left: 16px;
background: #2384D4;
color: #fff;
border-radius: 2px;
font-size: 14px;
padding: 4px 8px;
letter-spacing: .06em;
text-transform: uppercase
}

.lrn_prog .card_body {
padding: 24px;
display: flex;
flex-direction: column;
gap: 16px;
flex: 1
}

.lrn_prog .card_h3 {
font-size: 22px;
line-height: 1.4;
color: #171F2B;
margin: 0
}

.lrn_prog .card_desc {
font-size: 17px;
line-height: 1.6;
color: #4a5a6e;
margin: 0
}

.lrn_prog .card_meta_row {
display: flex;
flex-direction: row;
gap: 16px;
flex-wrap: wrap;
align-items: center
}

.lrn_prog .card_meta_item {
display: flex;
flex-direction: row;
align-items: center;
gap: 4px;
font-size: 14px;
color: #5a6a7e
}

.lrn_prog .card_meta_icon {
width: 14px;
height: 14px;
flex-shrink: 0
}

.lrn_prog .card_price_row {
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 16px;
flex-wrap: wrap;
margin-top: auto;
padding-top: 16px;
border-top: 1px solid #E4E8F3
}

.lrn_prog .card_price {
font-size: 29px;
font-weight: 700;
color: #171F2B;
line-height: 1.15
}

.lrn_prog .card_price_desc {
font-size: 14px;
color: #5a6a7e;
line-height: 1.4
}

.lrn_prog .card_seats {
font-size: 14px;
color: #2384D4;
border: 1px solid #2384D4;
border-radius: 2px;
padding: 4px 8px
}

.lrn_prog .card_cta {
display: inline-block;
background: linear-gradient(211deg, #2384D4, #1a6fb5);
color: #fff;
border-radius: 7px;
padding: 16px 24px;
font-size: 17px;
text-decoration: none;
text-align: center;
transition: box-shadow .18s ease-out, transform .14s ease-out, background .16s ease-out;
box-shadow: 0 2px 3px 0 #2384d412
}

.lrn_prog .card_cta:hover {
background: linear-gradient(270deg, #2384D4, #1a6fb5);
box-shadow: 0 6px 28px 0 #2384d41a;
transform: translateY(-2px)
}

.lrn_prog .card_cta:focus {
outline: 2px solid #2384D4;
outline-offset: 2px;
text-decoration: underline
}

.lrn_prog .divider_dots {
display: flex;
flex-direction: row;
justify-content: center;
gap: 8px;
padding: 24px 0
}

.lrn_prog .divider_dot {
width: 6px;
height: 6px;
border-radius: 42px;
background: #E4E8F3
}

.lrn_prog .divider_dot.mid {
background: #2384D4;
width: 24px
}

.lrn_prog .approach_sec {
background: #E4E8F3;
padding: 48px 0
}

.lrn_prog .approach_inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 24px;
display: flex;
flex-direction: row;
gap: 48px;
align-items: stretch
}

.lrn_prog .approach_img_col {
flex: 0 0 42%;
position: relative
}

.lrn_prog .approach_img_frame {
border: 2px solid #2384d433;
border-radius: 14px;
overflow: hidden;
height: 100%;
min-height: 320px
}

.lrn_prog .approach_img_frame img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block
}

.lrn_prog .approach_txt_col {
flex: 1;
display: flex;
flex-direction: column;
gap: 24px;
justify-content: center
}

.lrn_prog .approach_h2 {
font-size: 29px;
line-height: 1.15;
color: #171F2B;
margin: 0;
position: relative
}

.lrn_prog .approach_h2 .marker {
background: linear-gradient(211deg, #2384d438, #e4e8f399);
border-radius: 2px;
padding: 0 4px
}

.lrn_prog .approach_p {
font-size: 17px;
line-height: 1.6;
color: #2e3c4e;
margin: 0
}

.lrn_prog .approach_pull {
float: right;
margin-left: 24px;
margin-bottom: 8px;
max-width: 200px;
font-size: 22px;
line-height: 1.4;
color: #2384D4;
border: 1.5px solid #2384D4;
border-radius: 7px;
padding: 16px
}

.lrn_prog .approach_steps {
display: flex;
flex-direction: column;
gap: 16px
}

.lrn_prog .step_item {
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start
}

.lrn_prog .step_num {
flex-shrink: 0;
width: 32px;
height: 32px;
border-radius: 7px;
background: #2384D4;
color: #fff;
font-size: 14px;
display: flex;
align-items: center;
justify-content: center;
font-weight: 700
}

.lrn_prog .step_txt {
font-size: 17px;
line-height: 1.6;
color: #2e3c4e;
margin: 0;
padding-top: 4px
}

.lrn_prog .divider_line {
max-width: 1280px;
margin: 0 auto;
padding: 0 24px
}

.lrn_prog .divider_line hr {
border: none;
border-top: 1.5px solid #E4E8F3;
border-radius: 42px;
margin: 0
}

.lrn_prog .experts_sec {
max-width: 1280px;
margin: 0 auto;
padding: 48px 24px
}

.lrn_prog .experts_h2 {
font-size: 29px;
line-height: 1.15;
color: #171F2B;
margin: 0 0 48px;
text-align: center
}

.lrn_prog .experts_grid {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 24px
}

.lrn_prog .expert_card {
display: flex;
flex-direction: row;
gap: 24px;
align-items: flex-start;
background: #fff;
border: 1.5px solid #E4E8F3;
border-radius: 14px;
padding: 24px;
box-shadow: 0 2px 3px 0 #171f2b12;
transition: box-shadow .16s ease-out
}

.lrn_prog .expert_card:hover {
box-shadow: 0 6px 28px 0 #171f2b1a
}

.lrn_prog .expert_portrait {
flex-shrink: 0;
width: 80px;
height: 100px;
overflow: hidden;
border: 2px solid #E4E8F3;
border-radius: 0
}

.lrn_prog .expert_portrait img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: top;
display: block
}

.lrn_prog .expert_info {
display: flex;
flex-direction: column;
gap: 8px
}

.lrn_prog .expert_name {
font-size: 22px;
line-height: 1.4;
color: #171F2B;
margin: 0
}

.lrn_prog .expert_role {
font-size: 14px;
color: #2384D4;
text-transform: uppercase;
letter-spacing: .07em;
margin: 0
}

.lrn_prog .expert_bio {
font-size: 17px;
line-height: 1.6;
color: #4a5a6e;
margin: 0
}

@media (max-width: 900px) {
.lrn_prog .pg_top {
flex-direction: column;
padding: 24px 16px;
gap: 24px
}

.lrn_prog .pg_top_txt {
flex: none
}

.lrn_prog .pg_top_img {
min-height: 220px
}

.lrn_prog .pg_h1 {
font-size: 29px
}

.lrn_prog .pg_top_fade_num {
font-size: 80px
}

.lrn_prog .card_grid {
grid-template-columns: 1fr
}

.lrn_prog .approach_inner {
flex-direction: column;
gap: 24px
}

.lrn_prog .approach_img_col {
flex: none
}

.lrn_prog .approach_img_frame {
min-height: 200px
}

.lrn_prog .experts_grid {
grid-template-columns: 1fr
}

.lrn_prog .cards_sec_head {
flex-direction: column;
align-items: flex-start
}

.lrn_prog .cards_sec_sub {
text-align: left;
max-width: 100%
}

.lrn_prog .approach_pull {
float: none;
margin-left: 0;
max-width: 100%
}
}

@media (max-width: 600px) {
.lrn_prog .pg_top {
padding: 16px
}

.lrn_prog .cards_sec {
padding: 24px 16px
}

.lrn_prog .approach_inner {
padding: 0 16px
}

.lrn_prog .experts_sec {
padding: 24px 16px
}

.lrn_prog .card_price_row {
flex-direction: column;
align-items: flex-start
}

.lrn_prog .expert_card {
flex-direction: column;
gap: 16px
}
}

.ct_us {
background: #fff;
overflow-x: clip
}

.ct_us .pg_band {
width: 100%;
height: 4px;
background: linear-gradient(211deg, #2384D4, #E4E8F3)
}

.ct_us .hero_wrap {
background: #171F2B;
position: relative;
padding: 80px 24px 48px;
overflow: hidden
}

.ct_us .hero_wrap::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background-image: repeating-linear-gradient(90deg, transparent, transparent 28px, #2384d40a 28px, #2384d40a 30px), repeating-linear-gradient(0deg, transparent, transparent 28px, #2384d40a 28px, #2384d40a 30px);
pointer-events: none
}

.ct_us .hero_wrap::after {
content: '';
position: absolute;
top: -40px;
right: -60px;
width: 320px;
height: 320px;
background: linear-gradient(211deg, #2384d41f, #e4e8f30f);
border-radius: 42px;
transform: rotate(18deg);
pointer-events: none
}

.ct_us .hero_inner {
max-width: 1280px;
margin: 0 auto;
position: relative;
z-index: 1
}

.ct_us .hero_label {
display: inline-block;
border: 1px solid #2384d480;
border-radius: 2px;
padding: 4px 16px;
font-size: 14px;
color: #2384D4;
letter-spacing: .12em;
text-transform: uppercase;
margin-bottom: 24px
}

.ct_us .hero_row {
display: flex;
flex-direction: row;
align-items: flex-end;
gap: 48px
}

.ct_us .hero_left {
flex: 1 1 0
}

.ct_us .hero_h1 {
font-size: 55px;
line-height: 1.15;
color: #fff;
margin: 0 0 16px
}

.ct_us .hero_accent {
color: #2384D4
}

.ct_us .hero_sub {
font-size: 17px;
line-height: 1.6;
color: #e4e8f3b8;
max-width: 480px;
margin: 0
}

.ct_us .hero_counter {
flex: 0 0 auto;
text-align: right
}

.ct_us .counter_num {
font-size: 70px;
line-height: 1.15;
color: #2384D4;
display: block
}

.ct_us .counter_sup {
font-size: 22px;
color: #E4E8F3;
vertical-align: super
}

.ct_us .counter_label {
font-size: 14px;
color: #e4e8f38c;
text-transform: uppercase;
letter-spacing: .1em;
display: block;
margin-top: 4px
}

.ct_us .arrows_div {
display: flex;
flex-direction: row;
justify-content: center;
gap: 8px;
padding: 16px 0;
background: #E4E8F3
}

.ct_us .arr_shape {
width: 12px;
height: 12px;
border-right: 2px solid #2384d473;
border-bottom: 2px solid #2384d473;
transform: rotate(45deg);
display: inline-block
}

.ct_us .form_sec {
background: #fff;
padding: 48px 24px
}

.ct_us .form_sec_inner {
max-width: 1280px;
margin: 0 auto;
display: flex;
flex-direction: row;
gap: 48px;
align-items: flex-start
}

.ct_us .form_col {
flex: 1 1 0
}

.ct_us .aside_col {
flex: 0 0 320px
}

.ct_us .sec_num {
font-size: 70px;
line-height: 1.15;
color: #2384d414;
font-weight: 700;
display: block;
margin-bottom: -24px;
pointer-events: none;
user-select: none
}

.ct_us .form_h2 {
font-size: 29px;
line-height: 1.15;
color: #171F2B;
margin: 0 0 8px;
position: relative
}

.ct_us .form_desc {
font-size: 17px;
line-height: 1.6;
color: #4a5568;
margin: 0 0 24px
}

.ct_us .cf {
display: flex;
flex-direction: column;
gap: 16px
}

.ct_us .field_row {
display: flex;
flex-direction: row;
gap: 16px
}

.ct_us .field_grp {
display: flex;
flex-direction: column;
gap: 4px;
flex: 1 1 0
}

.ct_us .field_grp label {
font-size: 14px;
color: #171F2B;
font-weight: 600
}

.ct_us .fi {
border: 1px solid #c5cdd9;
border-radius: 7px;
padding: 12px 16px;
font-size: 17px;
color: #171F2B;
background: #fff;
transition: border-color .18s ease-out, box-shadow .14s ease-out;
outline: none;
width: 100%;
box-sizing: border-box
}

.ct_us .fi::placeholder {
font-size: 14px;
color: #9aa3b0
}

.ct_us .fi:focus {
border-color: #2384D4;
box-shadow: 0 2px 3px 0 #2384d412
}

.ct_us .chk_group {
display: flex;
flex-direction: column;
gap: 8px
}

.ct_us .chk_group_label {
font-size: 14px;
color: #171F2B;
font-weight: 600;
margin-bottom: 4px;
display: block
}

.ct_us .chk_row {
display: flex;
flex-direction: row;
gap: 16px;
flex-wrap: wrap
}

.ct_us .chk_item {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
cursor: pointer
}

.ct_us .chk_item input[type="checkbox"] {
width: 18px;
height: 18px;
accent-color: #2384D4;
cursor: pointer;
flex-shrink: 0
}

.ct_us .chk_item span {
font-size: 14px;
color: #171F2B;
line-height: 1.4
}

.ct_us .priv_row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 8px
}

.ct_us .priv_row input[type="checkbox"] {
width: 18px;
height: 18px;
accent-color: #2384D4;
cursor: pointer;
flex-shrink: 0;
margin-top: 2px
}

.ct_us .priv_txt {
font-size: 14px;
color: #4a5568;
line-height: 1.6
}

.ct_us .priv_txt a {
color: #2384D4;
text-decoration: none;
border-bottom: 1px solid transparent;
transition: border-color .16s ease-out
}

.ct_us .priv_txt a:focus {
border-bottom-color: #2384D4;
outline: 2px solid #2384D4;
outline-offset: 2px;
border-radius: 2px
}

.ct_us .priv_txt a:hover {
border-bottom-color: #2384D4
}

.ct_us .btn_submit {
background: linear-gradient(211deg, #2384D4, #1a6eb0);
color: #fff;
border: none;
border-radius: 14px;
padding: 16px 48px;
font-size: 17px;
cursor: pointer;
transition: box-shadow .18s ease-out, transform .14s ease-out, background .18s cubic-bezier(0.4, 0, 0.6, 1);
align-self: flex-start
}

.ct_us .btn_submit:hover {
background: linear-gradient(31deg, #2384D4, #1a6eb0);
box-shadow: 0 6px 28px 0 #2384d41a;
transform: translateY(-3px)
}

.ct_us .btn_submit:focus {
outline: 2px solid #2384D4;
outline-offset: 3px
}

.ct_us .btn_submit:active {
transform: translateY(-1px)
}

.ct_us .aside_card {
background: #171F2B;
border-radius: 14px;
padding: 24px;
box-shadow: 0 8px 36px 0 #171f2b1f
}

.ct_us .aside_h {
font-size: 22px;
line-height: 1.4;
color: #fff;
margin: 0 0 16px
}

.ct_us .info_list {
display: flex;
flex-direction: column;
gap: 16px;
list-style: none;
margin: 0;
padding: 0
}

.ct_us .info_item {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px
}

.ct_us .info_ico {
width: 36px;
height: 36px;
border-radius: 7px;
background: #2384d42e;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.ct_us .info_ico svg {
display: block
}

.ct_us .info_body {
display: flex;
flex-direction: column;
gap: 4px
}

.ct_us .info_lbl {
font-size: 14px;
color: #e4e8f380;
text-transform: uppercase;
letter-spacing: .08em
}

.ct_us .info_val {
font-size: 17px;
color: #E4E8F3;
line-height: 1.4;
text-decoration: none;
transition: color .16s ease-out
}

.ct_us .info_val:hover {
color: #2384D4
}

.ct_us .info_val:focus {
outline: 2px solid #2384D4;
outline-offset: 2px;
border-radius: 2px
}

.ct_us .aside_note {
margin-top: 24px;
padding-top: 16px;
border-top: 1px solid #e4e8f31a;
font-size: 14px;
color: #e4e8f373;
line-height: 1.6
}

.ct_us .about_sec {
background: linear-gradient(211deg, #E4E8F3, #2384d414);
padding: 48px 24px;
position: relative;
overflow: hidden
}

.ct_us .zz_pat {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
pointer-events: none;
overflow: hidden
}

.ct_us .zz_pat svg {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
opacity: .04
}

.ct_us .about_inner {
max-width: 1280px;
margin: 0 auto;
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 24px;
position: relative;
z-index: 1
}

.ct_us .about_head {
grid-column: 1 / -1;
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
gap: 24px
}

.ct_us .about_h2 {
font-size: 29px;
line-height: 1.15;
color: #171F2B;
margin: 0
}

.ct_us .about_pull {
max-width: 340px;
font-size: 17px;
line-height: 1.6;
color: #2384D4;
font-style: italic;
text-align: right;
margin: 0
}

.ct_us .stat_card {
background: #fff;
border-radius: 14px;
padding: 24px;
box-shadow: 0 2px 3px 0 #171f2b12;
transition: box-shadow .18s ease-out, transform .16s cubic-bezier(0.4, 0, 0.6, 1)
}

.ct_us .stat_card:hover {
box-shadow: 0 6px 28px 0 #171f2b1a;
transform: translateY(-4px)
}

.ct_us .stat_num {
font-size: 55px;
line-height: 1.15;
color: #2384D4;
font-weight: 700;
display: block
}

.ct_us .stat_unit {
font-size: 22px;
color: #171F2B;
vertical-align: super
}

.ct_us .stat_desc {
font-size: 17px;
line-height: 1.4;
color: #171F2B;
margin: 8px 0 0
}

.ct_us .draw_line {
display: block;
width: 0;
height: 2px;
background: #2384D4;
border-radius: 2px;
animation: line_draw .85s cubic-bezier(0.4, 0, 0.6, 1) .2s forwards;
margin-top: 8px
}

@keyframes line_draw {
to {
width: 100%
}
}

@media (max-width: 900px) {
.ct_us .hero_row {
flex-direction: column;
align-items: flex-start;
gap: 24px
}

.ct_us .hero_counter {
text-align: left
}

.ct_us .form_sec_inner {
flex-direction: column
}

.ct_us .aside_col {
flex: 1 1 auto;
width: 100%
}

.ct_us .about_inner {
grid-template-columns: 1fr 1fr
}

.ct_us .about_head {
flex-direction: column;
align-items: flex-start
}

.ct_us .about_pull {
text-align: left
}
}

@media (max-width: 600px) {
.ct_us .hero_h1 {
font-size: 29px
}

.ct_us .counter_num {
font-size: 55px
}

.ct_us .field_row {
flex-direction: column
}

.ct_us .about_inner {
grid-template-columns: 1fr
}

.ct_us .chk_row {
flex-direction: column;
gap: 8px
}
}

.sts {
background: #fff;
overflow-x: clip
}

.sts .pg_wrap {
max-width: 1280px;
margin: 0 auto;
padding: 0 24px
}

.sts .title_area {
padding: 96px 0 80px;
position: relative;
background: #E4E8F3
}

.sts .title_area_inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 24px;
display: flex;
flex-direction: row;
align-items: center;
gap: 48px
}

.sts .t_img_side {
flex: 0 0 220px;
position: relative
}

.sts .t_img_side img {
width: 220px;
height: 300px;
object-fit: cover;
object-position: center;
border-radius: 14px;
display: block;
box-shadow: 0 6px 28px 0 #2384d41a
}

.sts .t_img_overlay {
position: absolute;
inset: 0;
border-radius: 14px;
background: repeating-linear-gradient(0deg, #171f2b0f 0px, #171f2b0f 1px, transparent 1px, transparent 4px);
pointer-events: none
}

.sts .t_img_side_r {
flex: 0 0 220px;
position: relative
}

.sts .t_img_side_r img {
width: 220px;
height: 300px;
object-fit: cover;
object-position: top;
border-radius: 14px;
display: block;
box-shadow: 0 6px 28px 0 #2384d41a;
filter: grayscale(30%);
transition: filter .18s ease-out
}

.sts .t_img_side_r img:hover {
filter: grayscale(0%)
}

.sts .t_img_overlay_r {
position: absolute;
inset: 0;
border-radius: 14px;
background: repeating-linear-gradient(0deg, #171f2b0d 0px, #171f2b0d 1px, transparent 1px, transparent 4px);
pointer-events: none
}

.sts .t_spot1 {
position: absolute;
width: 180px;
height: 180px;
background: #2384d421;
border-radius: 50%;
filter: blur(48px);
top: -40px;
left: -60px;
pointer-events: none
}

.sts .t_spot2 {
position: absolute;
width: 120px;
height: 120px;
background: #e4e8f3b3;
border-radius: 50%;
filter: blur(32px);
bottom: -30px;
right: -40px;
pointer-events: none
}

.sts .t_mid {
flex: 1 1 0;
text-align: center;
position: relative
}

.sts .t_label {
display: inline-block;
border: 1.5px solid #2384D4;
border-radius: 2px;
padding: 4px 16px;
font-size: 14px;
color: #2384D4;
letter-spacing: .08em;
text-transform: uppercase;
margin-bottom: 16px
}

.sts .t_h1 {
font-size: 55px;
line-height: 1.15;
color: #171F2B;
margin: 0 0 16px
}

.sts .t_desc {
font-size: 17px;
line-height: 1.6;
color: #3a4a5c;
margin: 0 0 24px;
max-width: 420px;
margin-left: auto;
margin-right: auto
}

.sts .t_link {
display: inline-block;
background: linear-gradient(211deg, #2384D4, #E4E8F3);
color: #171F2B;
font-size: 17px;
font-weight: 600;
padding: 16px 48px;
border-radius: 7px;
text-decoration: none;
box-shadow: 0 6px 28px 0 #2384d41a;
transition: background .16s ease-out, box-shadow .14s ease-out
}

.sts .t_link:hover {
background: linear-gradient(31deg, #2384D4, #E4E8F3);
box-shadow: 0 8px 36px 0 #2384d41f
}

.sts .t_link:focus {
outline: 2px solid #2384D4;
outline-offset: 4px
}

.sts .div_curve1 {
display: block;
line-height: 0;
margin-top: -1px
}

.sts .div_curve1 svg {
display: block;
width: 100%
}

.sts .stories_row {
padding: 80px 0 64px;
background: #fff
}

.sts .stories_row_inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 24px
}

.sts .sr_head {
margin-bottom: 48px
}

.sts .sr_h2 {
font-size: 29px;
line-height: 1.15;
color: #171F2B;
margin: 0 0 8px
}

.sts .sr_sub {
font-size: 17px;
line-height: 1.6;
color: #3a4a5c;
margin: 0
}

.sts .story_list {
display: flex;
flex-direction: column;
gap: 48px
}

.sts .story_item {
display: flex;
flex-direction: row;
gap: 48px;
align-items: flex-start;
padding: 48px;
border-radius: 14px;
background: #E4E8F3;
box-shadow: 0 2px 3px 0 #171f2b12;
position: relative;
transition: box-shadow .18s ease-out, transform .16s ease-out
}

.sts .story_item:hover {
box-shadow: 0 8px 36px 0 #2384d41f;
transform: translateY(-4px)
}

.sts .story_item_alt {
background: #fff;
border: 1.5px solid #E4E8F3
}

.sts .si_num {
position: absolute;
top: 16px;
right: 24px;
font-size: 70px;
line-height: 1.15;
color: #2384d414;
font-weight: 700;
pointer-events: none;
user-select: none
}

.sts .si_portrait {
flex: 0 0 88px
}

.sts .si_portrait img {
width: 88px;
height: 88px;
border-radius: 50%;
object-fit: cover;
object-position: top;
display: block;
box-shadow: 0 2px 3px 0 #171f2b12;
filter: grayscale(20%);
transition: filter .2s ease-out
}

.sts .si_portrait img:hover {
filter: grayscale(0%)
}

.sts .si_body {
flex: 1 1 0
}

.sts .si_name {
font-size: 22px;
line-height: 1.15;
color: #171F2B;
margin: 0 0 4px
}

.sts .si_role {
font-size: 14px;
color: #2384D4;
margin: 0 0 16px;
letter-spacing: .04em
}

.sts .si_quote {
font-size: 17px;
line-height: 1.6;
color: #3a4a5c;
margin: 0 0 16px
}

.sts .si_pull {
float: right;
width: 38%;
margin: 0 0 16px 24px;
font-size: 22px;
line-height: 1.4;
color: #2384D4;
border: 1.5px solid #2384D4;
border-radius: 7px;
padding: 16px;
font-style: italic
}

.sts .si_detail {
font-size: 17px;
line-height: 1.6;
color: #3a4a5c;
margin: 0
}

.sts .si_no_portrait {
flex: 0 0 88px;
display: flex;
align-items: flex-start;
justify-content: center
}

.sts .si_avatar_css {
width: 88px;
height: 88px;
border-radius: 50%;
background: linear-gradient(211deg, #2384D4, #E4E8F3);
display: flex;
align-items: center;
justify-content: center
}

.sts .si_avatar_css svg {
width: 40px;
height: 40px
}

.sts .div_curve2 {
display: block;
line-height: 0
}

.sts .div_curve2 svg {
display: block;
width: 100%
}

.sts .metrics_band {
padding: 72px 0;
background: #171F2B;
position: relative
}

.sts .metrics_band_inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 24px
}

.sts .mb_grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr 1fr;
gap: 24px
}

.sts .mb_item {
text-align: center;
padding: 48px 16px;
border-radius: 14px;
border: 1.5px solid #2384d440;
position: relative;
overflow: hidden;
animation: mb_appear .22s ease-out both
}

.sts .mb_item:nth-child(1) {
animation-delay: .04s
}

.sts .mb_item:nth-child(2) {
animation-delay: .09s
}

.sts .mb_item:nth-child(3) {
animation-delay: .14s
}

.sts .mb_item:nth-child(4) {
animation-delay: .19s
}

@keyframes mb_appear {
from {
opacity: 0;
transform: translateY(16px)
}

to {
opacity: 1;
transform: translateY(0)
}
}

.sts .mb_val {
font-size: 55px;
line-height: 1.15;
color: #2384D4;
font-weight: 700;
display: block;
margin-bottom: 8px
}

.sts .mb_label {
font-size: 14px;
color: #E4E8F3;
letter-spacing: .06em;
text-transform: uppercase
}

.sts .mb_accent {
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 3px;
background: linear-gradient(211deg, #2384D4, transparent)
}

.sts .div_curve3 {
display: block;
line-height: 0
}

.sts .div_curve3 svg {
display: block;
width: 100%
}

.sts .prog_area {
padding: 80px 0 96px;
background: #fff;
position: relative
}

.sts .prog_area_inner {
max-width: 1280px;
margin: 0 auto;
padding: 0 24px;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 48px;
align-items: center
}

.sts .pa_img_wrap {
position: relative;
border-radius: 26px;
overflow: hidden;
box-shadow: 0 8px 36px 0 #2384d41f
}

.sts .pa_img_wrap img {
width: 100%;
height: 420px;
object-fit: cover;
object-position: center;
display: block;
filter: grayscale(15%);
transition: filter .2s ease-out
}

.sts .pa_img_wrap:hover img {
filter: grayscale(0%)
}

.sts .pa_img_overlay {
position: absolute;
inset: 0;
background: #e4e8f31f;
pointer-events: none
}

.sts .pa_text {
padding: 8px 0
}

.sts .pa_eyebrow {
display: inline-block;
border: 1.5px solid #171F2B;
border-radius: 2px;
padding: 4px 16px;
font-size: 14px;
color: #171F2B;
letter-spacing: .07em;
text-transform: uppercase;
margin-bottom: 16px
}

.sts .pa_h2 {
font-size: 29px;
line-height: 1.15;
color: #171F2B;
margin: 0 0 16px
}

.sts .pa_body {
font-size: 17px;
line-height: 1.6;
color: #3a4a5c;
margin: 0 0 24px
}

.sts .pa_steps {
display: flex;
flex-direction: column;
gap: 16px;
list-style: none;
padding: 0;
margin: 0
}

.sts .pa_step {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
padding: 16px;
border-radius: 7px;
background: #E4E8F3;
transition: background .14s ease-out
}

.sts .pa_step:hover {
background: #d6ddf0
}

.sts .pa_step_num {
flex: 0 0 32px;
height: 32px;
border-radius: 7px;
background: #2384D4;
color: #fff;
font-size: 14px;
font-weight: 700;
display: flex;
align-items: center;
justify-content: center
}

.sts .pa_step_txt {
font-size: 17px;
line-height: 1.4;
color: #171F2B
}

@media (max-width: 900px) {
.sts .title_area_inner {
flex-direction: column;
gap: 24px
}

.sts .t_img_side,
.sts .t_img_side_r {
flex: 0 0 auto
}

.sts .t_img_side img,
.sts .t_img_side_r img {
width: 160px;
height: 200px
}

.sts .t_h1 {
font-size: 29px
}

.sts .mb_grid {
grid-template-columns: 1fr 1fr
}

.sts .prog_area_inner {
grid-template-columns: 1fr
}

.sts .story_item {
flex-direction: column;
gap: 16px;
padding: 24px
}

.sts .si_pull {
float: none;
width: 100%;
margin: 0 0 16px
}
}

@media (max-width: 560px) {
.sts .mb_grid {
grid-template-columns: 1fr
}

.sts .t_link {
padding: 16px 24px
}
}

.suc_page {
min-height: 100vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 48px 24px;
background: #E4E8F3
}

.suc_card {
background: #fff;
border-radius: 14px;
box-shadow: 0 6px 28px 0 #2384d41a;
padding: 48px;
max-width: 520px;
width: 100%;
text-align: center
}

.suc_icon {
width: 56px;
height: 56px;
margin: 0 auto 24px;
display: block
}

.suc_heading {
font-size: 29px;
line-height: 1.15;
color: #171F2B;
margin: 0 0 16px
}

.suc_text {
font-size: 17px;
line-height: 1.6;
color: #171F2B;
margin: 0 0 24px;
opacity: .82
}

.suc_divider {
width: 48px;
height: 2px;
background: #2384D4;
border-radius: 2px;
margin: 0 auto 24px
}

.suc_link {
display: inline-block;
font-size: 17px;
line-height: 1.4;
color: #fff;
background: #2384D4;
border-radius: 7px;
padding: 16px 48px;
text-decoration: none;
transition: box-shadow .18s ease-out, background .14s cubic-bezier(0.4, 0, 0.6, 1);
box-shadow: 0 2px 3px 0 #2384d412
}

.suc_link:hover {
background: linear-gradient(211deg, #2384D4, #E4E8F3 180%);
box-shadow: 0 8px 36px 0 #2384d41f;
color: #171F2B
}

.suc_link:focus {
outline: 2px solid #2384D4;
outline-offset: 4px
}