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

html {
font-size: 100%;
scroll-behavior: smooth
}

body {
font-family: 'Inconsolata', monospace;
min-height: 100vh
}

:focus {
outline: none;
position: relative
}

:focus::before {
content: 'foco';
position: absolute;
top: -22px;
left: 0;
font-size: 15px;
font-family: 'Inconsolata', monospace;
color: #19055B;
background: #FBE71C;
padding: 0 8px;
border-radius: 6px;
line-height: 1.5;
pointer-events: none;
z-index: 100;
white-space: nowrap
}

::selection {
background: #19055B;
color: #FFFAE8
}

.site_header {
background: #19055B;
position: relative;
overflow: visible
}

.util_bar {
display: flex;
align-items: center;
justify-content: space-between;
max-width: 1200px;
margin: 0 auto;
padding: 16px 40px 0;
gap: 24px
}

.brand_mark {
display: flex;
align-items: center;
gap: 16px;
text-decoration: none
}

.logo_ring {
display: flex;
align-items: center;
justify-content: center;
width: 44px;
height: 56px;
border-radius: 6px;
background: #FFFAE8;
box-shadow: 0 0 0 2px #FBE71C, 1px 4px 25px 1px #fbe71c1a;
flex-shrink: 0
}

.logo_ring img {
width: 36px;
height: 48px;
object-fit: contain;
display: block
}

.brand_name {
font-size: 27px;
font-weight: 700;
color: #FBE71C;
letter-spacing: .02em;
line-height: 1.1
}

.util_credential {
font-size: 15px;
color: #FFFAE8;
letter-spacing: .01em;
line-height: 1.3;
opacity: .85;
text-align: right
}

.util_credential strong {
color: #FBE71C;
font-weight: 700
}

.nav_band {
background: linear-gradient(90deg, #19055B 0%, #2a0f7a 50%, #19055B 100%);
border-top: 2px solid #fbe71c2e;
border-bottom: 2px solid #fbe71c1a
}

.nav_inner {
max-width: 1200px;
margin: 0 auto;
padding: 0 40px;
display: flex;
align-items: stretch;
justify-content: center;
gap: 8px;
flex-wrap: wrap
}

.nav_item {
position: relative
}

.nav_link {
display: flex;
align-items: center;
padding: 16px 24px;
font-size: 15px;
font-weight: 700;
font-family: 'Inconsolata', monospace;
color: #FFFAE8;
text-decoration: none;
letter-spacing: .02em;
line-height: 1.3;
border-bottom: 3px solid transparent;
transition: color .2s cubic-bezier(0.34, 1.56, 0.64, 1), border-color .25s cubic-bezier(0.34, 1.56, 0.64, 1);
white-space: nowrap;
min-height: 44px;
perspective: 600px
}

.nav_link:hover,
.nav_link:focus {
color: #FBE71C;
border-bottom-color: #FBE71C;
transform: perspective(600px) rotateX(4deg)
}

.nav_item:hover .sub_panel,
.nav_item:focus-within .sub_panel {
opacity: 1;
pointer-events: auto;
transform: translateY(0px)
}

.sub_panel {
position: absolute;
top: calc(100% + 2px);
left: 0;
min-width: 220px;
background: #19055B;
border: 1px solid #fbe71c38;
border-radius: 6px;
box-shadow: 1px 9px 48px 1px #19055b1a;
opacity: 0;
pointer-events: none;
transform: translateY(-8px);
transition: opacity .2s cubic-bezier(0.34, 1.56, 0.64, 1), transform .25s cubic-bezier(0.34, 1.56, 0.64, 1);
z-index: 200;
padding: 8px 0
}

.sub_panel::before {
content: '';
position: absolute;
top: -10px;
left: 0;
right: 0;
height: 10px;
background: transparent
}

.sub_link {
display: block;
padding: 16px 24px;
font-size: 15px;
font-family: 'Inconsolata', monospace;
color: #FFFAE8;
text-decoration: none;
letter-spacing: .01em;
line-height: 1.5;
transition: color .2s cubic-bezier(0.34, 1.56, 0.64, 1), background .2s cubic-bezier(0.34, 1.56, 0.64, 1);
white-space: nowrap;
min-height: 44px
}

.sub_link:hover,
.sub_link:focus {
color: #FBE71C;
background: #fbe71c14
}

.site_footer {
background: #19055B;
border-top: 2px solid #fbe71c2e
}

.foot_grid {
max-width: 1200px;
margin: 0 auto;
padding: 40px 40px 24px;
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 40px;
align-items: start
}

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

.foot_logo_wrap {
display: flex;
align-items: center;
gap: 16px;
text-decoration: none
}

.foot_logo_ring {
display: flex;
align-items: center;
justify-content: center;
width: 44px;
height: 56px;
border-radius: 6px;
background: #FFFAE8;
box-shadow: 0 0 0 2px #FBE71C, 1px 2px 2px 1px #fbe71c0d;
flex-shrink: 0
}

.foot_logo_ring img {
width: 36px;
height: 48px;
object-fit: contain;
display: block
}

.foot_brand_name {
font-size: 21px;
font-weight: 700;
color: #FBE71C;
letter-spacing: .02em;
line-height: 1.1
}

.foot_tagline {
font-size: 15px;
color: #FFFAE8;
opacity: .75;
letter-spacing: .01em;
line-height: 1.5
}

.foot_nav_col {
display: flex;
flex-direction: column;
gap: 8px;
align-items: center
}

.foot_nav_label {
font-size: 15px;
font-weight: 700;
color: #FBE71C;
letter-spacing: .02em;
line-height: 1.3;
margin-bottom: 8px;
text-transform: uppercase
}

.foot_nav_link {
font-size: 15px;
font-family: 'Inconsolata', monospace;
color: #FFFAE8;
text-decoration: none;
letter-spacing: .01em;
line-height: 1.5;
opacity: .85;
padding: 8px 0;
min-height: 44px;
display: flex;
align-items: center;
transition: color .2s cubic-bezier(0.34, 1.56, 0.64, 1), opacity .2s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.foot_nav_link:hover,
.foot_nav_link:focus {
color: #FBE71C;
opacity: 1
}

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

.foot_contact_label {
font-size: 15px;
font-weight: 700;
color: #FBE71C;
letter-spacing: .02em;
line-height: 1.3;
margin-bottom: 8px;
text-transform: uppercase
}

.foot_contact_item {
font-size: 15px;
font-family: 'Inconsolata', monospace;
color: #FFFAE8;
opacity: .85;
letter-spacing: .01em;
line-height: 1.5
}

.foot_contact_link {
font-size: 15px;
font-family: 'Inconsolata', monospace;
color: #FFFAE8;
text-decoration: none;
opacity: .85;
letter-spacing: .01em;
line-height: 1.5;
min-height: 44px;
display: inline-flex;
align-items: center;
transition: color .22s cubic-bezier(0.34, 1.56, 0.64, 1), opacity .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.foot_contact_link:hover,
.foot_contact_link:focus {
color: #FBE71C;
opacity: 1
}

.foot_bottom {
max-width: 1200px;
margin: 0 auto;
padding: 16px 40px 24px;
display: flex;
align-items: center;
justify-content: space-between;
border-top: 1px solid #fbe71c1a;
flex-wrap: wrap;
gap: 16px
}

.foot_copy {
font-size: 15px;
color: #FFFAE8;
opacity: .55;
letter-spacing: .01em;
line-height: 1.5
}

.foot_policy_link {
font-size: 15px;
font-family: 'Inconsolata', monospace;
color: #FFFAE8;
text-decoration: none;
opacity: .55;
letter-spacing: .01em;
line-height: 1.5;
transition: color .2s cubic-bezier(0.34, 1.56, 0.64, 1), opacity .2s cubic-bezier(0.34, 1.56, 0.64, 1);
min-height: 44px;
display: inline-flex;
align-items: center
}

.foot_policy_link:hover,
.foot_policy_link:focus {
color: #FBE71C;
opacity: 1
}

.cookie_toast {
position: fixed;
bottom: 24px;
left: 0;
right: 0;
margin: 0 auto;
width: 520px;
max-width: calc(100vw - 48px);
background: #FFFAE8;
border-radius: 16px;
box-shadow: 1px 9px 48px 1px #19055b1a 1px 4px 25px 1px #19055b1a;
border: 1.5px solid #19055b1f;
z-index: 2000;
padding: 24px;
transform: translateY(-120%);
transition: transform .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.cookie_toast.slide_in {
transform: translateY(0)
}

.cookie_toast_body {
font-size: 15px;
font-family: 'Inconsolata', monospace;
color: #19055B;
line-height: 1.5;
letter-spacing: .01em;
margin-bottom: 16px
}

.cookie_prefs_panel {
margin-bottom: 16px;
display: flex;
flex-direction: column;
gap: 8px
}

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

.cookie_toggle_label {
font-size: 15px;
font-family: 'Inconsolata', monospace;
color: #19055B;
letter-spacing: .01em;
line-height: 1.3
}

.cookie_toggle_input {
width: 40px;
height: 24px;
accent-color: #19055B;
cursor: pointer
}

.cookie_btn_row {
display: flex;
gap: 16px;
flex-wrap: wrap
}

.cookie_btn {
flex: 1;
min-width: 100px;
padding: 16px 24px;
font-size: 15px;
font-family: 'Inconsolata', monospace;
font-weight: 700;
letter-spacing: .02em;
line-height: 1.1;
border-radius: 44px;
border: 2px solid #19055B;
cursor: pointer;
min-height: 44px;
transition: background .2s cubic-bezier(0.34, 1.56, 0.64, 1), color .2s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .22s cubic-bezier(0.34, 1.56, 0.64, 1);
outline: none;
position: relative
}

.cookie_btn_accept {
background: #19055B;
color: #FBE71C
}

.cookie_btn_accept:hover,
.cookie_btn_accept:focus {
box-shadow: 0 0 0 4px #19055b2e
}

.cookie_btn_decline {
background: transparent;
color: #19055B
}

.cookie_btn_decline:hover,
.cookie_btn_decline:focus {
background: #19055b0f;
box-shadow: 0 0 0 4px #19055b1a
}

.cookie_footer_txt {
margin-top: 16px;
font-size: 15px;
font-family: 'Inconsolata', monospace;
color: #19055B;
opacity: .6;
letter-spacing: .01em;
line-height: 1.5
}

.cookie_footer_txt a {
color: #19055B;
opacity: .8;
text-decoration: underline
}

.cookie_footer_txt a:hover {
opacity: 1
}

@media (max-width: 1024px) {
.util_bar {
padding: 16px 24px 0
}

.nav_inner {
padding: 0 24px
}

.foot_grid {
grid-template-columns: 1fr 1fr;
padding: 40px 24px 24px
}

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

.foot_bottom {
padding: 16px 24px 24px
}
}

@media (max-width: 640px) {
.util_bar {
flex-direction: column;
align-items: flex-start;
padding: 16px 16px 0;
gap: 16px
}

.util_credential {
text-align: left
}

.nav_inner {
padding: 0 8px;
justify-content: flex-start
}

.nav_link {
padding: 16px;
font-size: 15px
}

.foot_grid {
grid-template-columns: 1fr;
padding: 40px 16px 16px;
gap: 24px
}

.foot_nav_col {
align-items: flex-start
}

.foot_contact_col {
grid-column: auto
}

.foot_bottom {
padding: 16px 16px 24px;
flex-direction: column;
align-items: flex-start;
gap: 8px
}

.cookie_btn_row {
flex-direction: column
}
}

.legal-article {
max-width: 1200px;
margin: 0 auto;
padding: 72px 40px;
color: #19055B;
background-color: #fff
}

.legal-article h1 {
font-size: 51px;
line-height: 1.1;
letter-spacing: .01em;
margin-bottom: 40px;
margin-top: 0;
color: #19055B
}

.legal-article h2 {
font-size: 37px;
line-height: 1.3;
letter-spacing: .01em;
margin-top: 72px;
margin-bottom: 24px;
color: #19055B
}

.legal-article h3 {
font-size: 27px;
line-height: 1.3;
letter-spacing: .01em;
margin-top: 40px;
margin-bottom: 16px;
color: #19055B
}

.legal-article h4 {
font-size: 21px;
line-height: 1.5;
letter-spacing: .02em;
margin-top: 40px;
margin-bottom: 16px;
color: #19055B
}

.legal-article h5 {
font-size: 17px;
line-height: 1.5;
letter-spacing: .02em;
margin-top: 24px;
margin-bottom: 8px;
color: #19055B
}

.legal-article h6 {
font-size: 15px;
line-height: 1.5;
letter-spacing: .02em;
margin-top: 24px;
margin-bottom: 8px;
color: #19055B
}

.legal-article p {
font-size: 17px;
line-height: 1.7;
letter-spacing: .01em;
margin-top: 0;
margin-bottom: 24px;
color: #19055B
}

.legal-article strong,
.legal-article b {
font-weight: 700;
color: #19055B
}

.legal-article em,
.legal-article i {
font-style: italic;
color: #19055B
}

.legal-article div {
margin-bottom: 16px
}

.legal-article table {
width: 100%;
border-collapse: collapse;
margin-top: 24px;
margin-bottom: 40px;
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
box-shadow: 1px 4px 25px 1px #19055b1a;
border-radius: 16px;
overflow: hidden
}

.legal-article thead {
background-color: #19055B;
color: #FBE71C
}

.legal-article thead th {
font-size: 15px;
font-weight: 700;
letter-spacing: .02em;
line-height: 1.5;
padding: 16px 24px;
text-align: left;
color: #FBE71C;
border: none
}

.legal-article tbody tr {
background-color: #fff;
transition: background-color .2s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.legal-article tbody tr:nth-child(even) {
background-color: #FFFAE8
}

.legal-article tbody tr:hover {
background-color: #FFFAE8
}

.legal-article td {
font-size: 15px;
line-height: 1.7;
letter-spacing: .01em;
padding: 16px 24px;
color: #19055B;
border-bottom: 1px solid #19055b14;
vertical-align: top
}

.legal-article tbody tr:last-child td {
border-bottom: none
}

.legal-article th {
font-weight: 700
}

@media (max-width: 1024px) {
.legal-article {
padding: 40px 24px
}

.legal-article h1 {
font-size: 37px
}

.legal-article h2 {
font-size: 27px;
margin-top: 40px
}

.legal-article h3 {
font-size: 21px
}
}

@media (max-width: 640px) {
.legal-article {
padding: 40px 16px
}

.legal-article h1 {
font-size: 27px
}

.legal-article h2 {
font-size: 21px;
margin-top: 40px
}

.legal-article h3 {
font-size: 17px
}

.legal-article h4 {
font-size: 15px
}

.legal-article table {
display: block;
overflow-x: auto;
-webkit-overflow-scrolling: touch;
border-radius: 6px
}

.legal-article thead th,
.legal-article td {
padding: 16px;
white-space: nowrap
}
}

.how_works {
max-width: 100%;
overflow-x: hidden
}

.how_works .hw_inner {
max-width: 1200px;
margin: 0 auto;
padding: 0 24px
}

.how_works ::selection {
background: #19055B;
color: #FFFAE8
}

.how_works .accent_word {
display: inline-block;
border: 1.5px solid #FBE71C;
border-radius: 6px;
padding: 0 8px;
line-height: 1.3
}

.how_works .num_circle {
display: inline-flex;
align-items: center;
justify-content: center;
width: 40px;
height: 40px;
border-radius: 44px;
background: #19055B;
color: #FBE71C;
font-size: 17px;
font-weight: 700;
flex-shrink: 0;
box-shadow: 1px 4px 25px 1px #19055b1a
}

.how_works .svg_div {
display: block;
width: 100%;
overflow: hidden;
line-height: 0
}

.how_works .title_blk {
background: #FFFAE8;
padding: 72px 0 40px;
position: relative
}

.how_works .title_blk .hw_inner {
display: flex;
flex-direction: row;
align-items: center;
gap: 40px
}

.how_works .title_blk .img_frame {
flex: 0 0 420px;
position: relative;
border-radius: 16px;
overflow: hidden;
box-shadow: 1px 9px 48px 1px #19055b1a
}

.how_works .title_blk .img_frame img {
width: 100%;
aspect-ratio: 4/3;
object-fit: cover;
display: block;
filter: sepia(0.4) saturate(1.6) hue-rotate(0deg) brightness(0.92)
}

.how_works .title_blk .img_frame::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(160deg, #fbe71c38 0%, #19055b2e 100%);
z-index: 1;
pointer-events: none
}

.how_works .title_blk .img_frame .frame_border {
position: absolute;
inset: 12px;
border: 1.5px solid #fbe71c8c;
border-radius: 6px;
z-index: 2;
pointer-events: none
}

.how_works .title_blk .txt_side {
flex: 1;
position: relative
}

.how_works .title_blk .bg_num {
position: absolute;
top: -24px;
right: 0;
font-size: 120px;
font-weight: 900;
color: #fbe71c2e;
line-height: 1.1;
pointer-events: none;
user-select: none;
letter-spacing: -.04em
}

.how_works .title_blk .pre_label {
font-size: 15px;
letter-spacing: .08em;
text-transform: uppercase;
color: #19055B;
opacity: .6;
margin-bottom: 16px;
display: block
}

.how_works .title_blk .main_h {
font-size: 51px;
line-height: 1.1;
letter-spacing: .01em;
color: #19055B;
margin-bottom: 24px
}

.how_works .title_blk .sub_p {
font-size: 17px;
line-height: 1.7;
color: #2a1a5e;
max-width: 480px
}

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

.how_works .title_blk .deco_lines::before,
.how_works .title_blk .deco_lines::after {
content: '';
position: absolute;
border: 1px solid #19055b0f;
border-radius: 16px;
pointer-events: none
}

.how_works .title_blk .deco_lines::before {
top: 24px;
left: 24px;
right: 24px;
bottom: 24px
}

.how_works .title_blk .deco_lines::after {
top: 8px;
left: 8px;
right: 8px;
bottom: 8px
}

.how_works .steps_sec {
background: #fff;
padding: 72px 0 40px
}

.how_works .steps_sec .sec_head {
text-align: center;
margin-bottom: 40px
}

.how_works .steps_sec .sec_head h2 {
font-size: 37px;
line-height: 1.3;
letter-spacing: .01em;
color: #19055B;
margin-bottom: 16px;
text-decoration: underline;
text-decoration-color: #FBE71C;
text-underline-offset: 6px
}

.how_works .steps_sec .sec_head p {
font-size: 17px;
line-height: 1.7;
color: #2a1a5e;
max-width: 560px;
margin: 0 auto
}

.how_works .steps_grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 24px
}

.how_works .step_card {
border-radius: 16px;
padding: 40px 24px;
background: #FFFAE8;
box-shadow: 1px 2px 2px 1px #19055b0d;
display: flex;
flex-direction: column;
gap: 16px;
transition: transform .25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .2s cubic-bezier(0.34, 1.56, 0.64, 1);
cursor: default;
perspective: 800px
}

.how_works .step_card:hover {
transform: perspective(800px) rotateX(-3deg) rotateY(3deg) translateY(-4px);
box-shadow: 1px 9px 48px 1px #19055b1a
}

.how_works .steps_grid:has(.step_card:hover) .step_card:not(:hover) {
transform: scale(0.97);
transition: transform .2s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.how_works .step_card .card_top {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px
}

.how_works .step_card h3 {
font-size: 21px;
line-height: 1.3;
letter-spacing: .01em;
color: #19055B;
text-decoration: underline;
text-decoration-color: #fbe71cb3;
text-underline-offset: 4px
}

.how_works .step_card p {
font-size: 15px;
line-height: 1.7;
color: #2a1a5e
}

.how_works .step_card.accent_card {
background: #19055B;
grid-column: span 2;
flex-direction: row;
align-items: flex-start;
gap: 24px
}

.how_works .step_card.accent_card h3 {
color: #FBE71C;
text-decoration-color: #fbe71c66
}

.how_works .step_card.accent_card p {
color: #fffae8d9
}

.how_works .step_card.accent_card .num_circle {
background: #FBE71C;
color: #19055B;
flex-shrink: 0;
margin-top: 4px
}

.how_works .step_card.accent_card .card_body {
display: flex;
flex-direction: column;
gap: 16px
}

.how_works .metrics_sec {
position: relative;
padding: 72px 0
}

.how_works .metrics_sec .bg_img_wrap {
position: absolute;
inset: 0;
overflow: hidden;
border-radius: 0
}

.how_works .metrics_sec .bg_img_wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block
}

.how_works .metrics_sec .bg_overlay {
position: absolute;
inset: 0;
background: linear-gradient(155deg, #fffae8ed 0%, #fffae8b8 50%, #fbe71c4d 100%)
}

.how_works .metrics_sec .hw_inner {
position: relative;
z-index: 2
}

.how_works .metrics_sec .met_head {
margin-bottom: 40px
}

.how_works .metrics_sec .met_head h2 {
font-size: 37px;
line-height: 1.3;
letter-spacing: .01em;
color: #19055B;
margin-bottom: 16px;
text-decoration: underline;
text-decoration-color: #FBE71C;
text-underline-offset: 6px
}

.how_works .metrics_sec .met_head p {
font-size: 17px;
line-height: 1.7;
color: #19055B;
max-width: 600px
}

.how_works .stats_row {
display: flex;
flex-direction: row;
gap: 24px;
flex-wrap: wrap
}

.how_works .stat_item {
flex: 1 1 200px;
background: #ffffffd1;
border-radius: 16px;
padding: 24px;
display: flex;
flex-direction: column;
gap: 8px;
box-shadow: 1px 4px 25px 1px #19055b1a;
transition: transform .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.how_works .stat_item:hover {
transform: perspective(600px) rotateY(-4deg) translateY(-3px)
}

.how_works .stat_item .stat_icon {
width: 36px;
height: 36px;
display: flex;
align-items: center;
justify-content: center
}

.how_works .stat_item .stat_icon svg {
width: 28px;
height: 28px
}

.how_works .stat_item .stat_num {
font-size: 51px;
line-height: 1.1;
letter-spacing: .01em;
color: #19055B;
font-weight: 800
}

.how_works .stat_item .stat_label {
font-size: 15px;
line-height: 1.5;
color: #2a1a5e
}

.how_works .chart_wrap {
margin-top: 40px;
background: #ffffffe0;
border-radius: 16px;
padding: 24px;
box-shadow: 1px 4px 25px 1px #19055b1a
}

.how_works .chart_wrap .chart_label {
font-size: 15px;
color: #19055B;
letter-spacing: .01em;
margin-bottom: 16px;
font-weight: 600
}

.how_works .chart_wrap table.charts-css.bar {
height: 180px;
max-width: 100%
}

.how_works .expect_sec {
background: #19055B;
padding: 72px 0;
position: relative;
overflow: hidden
}

@keyframes temp_shift {
0% {
background: #19055B
}

35% {
background: #1e0a6e
}

65% {
background: #160448
}

100% {
background: #19055B
}
}

.how_works .expect_sec {
animation: temp_shift 12s ease-in-out infinite
}

.how_works .expect_sec .deco_frame_top,
.how_works .expect_sec .deco_frame_bot {
position: absolute;
left: 40px;
right: 40px;
height: 1px;
background: linear-gradient(90deg, transparent 0%, #fbe71c4d 30%, #fbe71c4d 70%, transparent 100%);
pointer-events: none
}

.how_works .expect_sec .deco_frame_top {
top: 24px
}

.how_works .expect_sec .deco_frame_bot {
bottom: 24px
}

.how_works .expect_sec .hw_inner {
position: relative;
z-index: 2
}

.how_works .expect_sec .exp_head {
margin-bottom: 40px;
display: flex;
flex-direction: row;
align-items: flex-end;
gap: 40px
}

.how_works .expect_sec .exp_head h2 {
font-size: 37px;
line-height: 1.3;
letter-spacing: .01em;
color: #FBE71C;
text-decoration: underline;
text-decoration-color: #fbe71c66;
text-underline-offset: 6px;
flex: 1;
margin: 0
}

.how_works .expect_sec .exp_head p {
font-size: 17px;
line-height: 1.7;
color: #fffae8cc;
flex: 1;
margin: 0
}

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

.how_works .exp_row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 24px;
background: #fffae80f;
border-radius: 16px;
padding: 24px;
border: 1px solid #fbe71c1f;
transition: background .2s cubic-bezier(0.34, 1.56, 0.64, 1), border-color .2s cubic-bezier(0.34, 1.56, 0.64, 1), transform .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.how_works .exp_row:hover {
background: #fbe71c14;
border-color: #fbe71c52;
transform: perspective(700px) rotateX(2deg) translateX(6px)
}

.how_works .exp_row .exp_num {
flex-shrink: 0
}

.how_works .exp_row .exp_num .num_circle {
background: #fbe71c26;
color: #FBE71C;
border: 1.5px solid #fbe71c66
}

.how_works .exp_row .exp_body {
flex: 1;
display: flex;
flex-direction: column;
gap: 8px
}

.how_works .exp_row h4 {
font-size: 21px;
line-height: 1.3;
letter-spacing: .01em;
color: #FFFAE8;
margin: 0;
text-decoration: underline;
text-decoration-color: #fbe71c59;
text-underline-offset: 4px
}

.how_works .exp_row p {
font-size: 15px;
line-height: 1.7;
color: #fffae8bf;
margin: 0
}

.how_works .exp_row .exp_tag {
display: inline-block;
font-size: 15px;
background: #fbe71c1f;
color: #FBE71C;
border-radius: 44px;
padding: 4px 16px;
letter-spacing: .02em;
align-self: flex-start;
border: 1px solid #fbe71c40
}

.how_works .exp_row.standout {
background: #FBE71C;
border-color: #FBE71C;
transform: none
}

.how_works .exp_row.standout:hover {
transform: perspective(700px) rotateX(2deg) translateX(8px) scale(1.02);
box-shadow: 1px 9px 48px 1px #fbe71c40
}

.how_works .exp_row.standout h4 {
color: #19055B;
text-decoration-color: #19055b4d
}

.how_works .exp_row.standout p {
color: #19055bcc
}

.how_works .exp_row.standout .num_circle {
background: #19055B;
color: #FBE71C;
border: none
}

.how_works .exp_row.standout .exp_tag {
background: #19055b1f;
color: #19055B;
border-color: #19055b40
}

@media (max-width: 1024px) {
.how_works .title_blk .img_frame {
flex: 0 0 340px
}

.how_works .title_blk .main_h {
font-size: 37px
}

.how_works .steps_grid {
grid-template-columns: 1fr 1fr
}

.how_works .step_card.accent_card {
grid-column: span 2
}

.how_works .expect_sec .exp_head {
flex-direction: column;
gap: 16px;
align-items: flex-start
}
}

@media (max-width: 640px) {
.how_works .title_blk .hw_inner {
flex-direction: column
}

.how_works .title_blk .img_frame {
flex: none;
width: 100%
}

.how_works .title_blk .main_h {
font-size: 27px
}

.how_works .title_blk .bg_num {
font-size: 72px
}

.how_works .steps_grid {
grid-template-columns: 1fr
}

.how_works .step_card.accent_card {
grid-column: span 1;
flex-direction: column
}

.how_works .stats_row {
flex-direction: column
}

.how_works .stat_item {
flex: none
}

.how_works .exp_head {
flex-direction: column !important;
gap: 16px !important;
align-items: flex-start !important
}

.how_works .exp_row {
flex-direction: column;
gap: 16px
}

.how_works .metrics_sec .met_head h2,
.how_works .steps_sec .sec_head h2,
.how_works .expect_sec .exp_head h2 {
font-size: 27px
}
}

.abt_us {
max-width: 100%;
overflow-x: hidden
}

.abt_us .pg_wrap {
max-width: 1200px;
margin: 0 auto;
padding: 0 24px
}

.abt_us ::selection {
background: #19055B;
color: #FFFAE8
}

.abt_us .framed {
display: inline;
border: 1.5px solid #FBE71C;
border-radius: 6px;
padding: 0 6px
}

.abt_us .accent_num {
font-size: 51px;
font-weight: 800;
color: #FBE71C;
line-height: 1.1;
letter-spacing: .01em
}

.abt_us .accent_num sup {
font-size: 21px;
font-weight: 600;
color: #FBE71C;
vertical-align: super
}

.abt_us .title_band {
background-color: #19055B;
background-image: repeating-linear-gradient(0deg, transparent, transparent 28px, #fbe71c0a 28px, #fbe71c0a 29px), repeating-linear-gradient(90deg, transparent, transparent 28px, #fbe71c0a 28px, #fbe71c0a 29px);
border-bottom: 3px solid #FBE71C;
padding: 40px 0;
position: relative
}

.abt_us .title_band::before {
content: '';
position: absolute;
left: 0;
top: 0;
bottom: 0;
width: 4px;
background: linear-gradient(180deg, #FBE71C 0%, transparent 100%)
}

.abt_us .title_strip {
display: flex;
flex-direction: row;
align-items: center;
gap: 40px
}

.abt_us .title_text {
flex: 1
}

.abt_us .title_img_wrap {
flex-shrink: 0;
width: 320px;
border-radius: 16px;
overflow: hidden;
box-shadow: 1px 9px 48px 1px #19055b1a;
filter: saturate(1.4) contrast(1.08) hue-rotate(0deg)
}

.abt_us .title_img_wrap img {
width: 100%;
aspect-ratio: 4/3;
object-fit: cover;
display: block;
filter: sepia(0.18) saturate(1.6) brightness(0.92)
}

.abt_us .band_label {
font-size: 15px;
color: #fbe71cb3;
letter-spacing: .08em;
text-transform: uppercase;
margin-bottom: 16px;
line-height: 1.3
}

.abt_us .band_h1 {
font-size: 51px;
line-height: 1.1;
letter-spacing: .01em;
color: #FFFAE8;
margin-bottom: 16px
}

.abt_us .band_h1 .grad_word {
background: linear-gradient(120deg, #FBE71C 30%, #fff8a0 100%);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text
}

.abt_us .band_sub {
font-size: 17px;
color: #fffae8bf;
line-height: 1.5;
letter-spacing: .01em;
max-width: 520px
}

.abt_us .who_sec {
background: #FFFAE8;
padding: 72px 0 40px;
position: relative;
clip-path: polygon(0 0, 100% 0, 100% 92%, 0 100%);
padding-bottom: 80px
}

.abt_us .who_sec .decor_circles {
position: absolute;
top: -40px;
right: -40px;
width: 180px;
height: 180px;
pointer-events: none;
overflow: hidden;
border-radius: 44px
}

.abt_us .who_sec .decor_circles::before,
.abt_us .who_sec .decor_circles::after {
content: '';
position: absolute;
border-radius: 44px;
border: 1.5px solid #19055b1a
}

.abt_us .who_sec .decor_circles::before {
width: 120px;
height: 120px;
top: 20px;
right: 20px
}

.abt_us .who_sec .decor_circles::after {
width: 160px;
height: 160px;
top: 0;
right: 0
}

.abt_us .who_float_img {
float: right;
width: 340px;
margin: 0 0 24px 40px;
border-radius: 16px;
overflow: hidden;
box-shadow: 1px 4px 25px 1px #19055b1a;
shape-outside: margin-box
}

.abt_us .who_float_img img {
width: 100%;
aspect-ratio: 4/3;
object-fit: cover;
display: block;
transition: transform .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.abt_us .who_float_img:hover img {
transform: scale(1.04) rotate(-1deg)
}

.abt_us .who_h2 {
font-size: 37px;
color: #19055B;
line-height: 1.1;
letter-spacing: .01em;
margin-bottom: 16px;
display: inline-block;
border-bottom: 2px solid #FBE71C;
padding-bottom: 8px
}

.abt_us .who_body {
font-size: 17px;
color: #19055B;
line-height: 1.7;
letter-spacing: .01em;
margin-bottom: 16px
}

.abt_us .who_clearfix::after {
content: '';
display: table;
clear: both
}

.abt_us .metrics_sec {
background: #19055B;
padding: 72px 0;
position: relative
}

.abt_us .metrics_sec .decor_corner {
position: absolute;
bottom: 16px;
left: 16px;
width: 140px;
height: 140px;
pointer-events: none;
overflow: hidden
}

.abt_us .metrics_sec .decor_corner::before,
.abt_us .metrics_sec .decor_corner::after {
content: '';
position: absolute;
border-radius: 44px;
border: 1.5px solid #fbe71c1f
}

.abt_us .metrics_sec .decor_corner::before {
width: 90px;
height: 90px;
bottom: 10px;
left: 10px
}

.abt_us .metrics_sec .decor_corner::after {
width: 130px;
height: 130px;
bottom: 0;
left: 0
}

.abt_us .metrics_grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
align-items: start
}

.abt_us .metrics_left {
display: flex;
flex-direction: column;
gap: 40px
}

.abt_us .metrics_h2 {
font-size: 37px;
color: #FFFAE8;
line-height: 1.1;
letter-spacing: .01em;
border-bottom: 2px solid #fbe71c59;
padding-bottom: 8px;
margin-bottom: 8px
}

.abt_us .stat_row {
display: flex;
flex-direction: row;
gap: 40px;
flex-wrap: wrap
}

.abt_us .stat_item {
display: flex;
flex-direction: column;
gap: 8px;
transform: scale(0.8);
animation: stat_pop .35s cubic-bezier(0.34, 1.56, 0.64, 1) forwards
}

.abt_us .stat_item:nth-child(2) {
animation-delay: .08s
}

.abt_us .stat_item:nth-child(3) {
animation-delay: .16s
}

@keyframes stat_pop {
to {
transform: scale(1)
}
}

.abt_us .stat_label {
font-size: 15px;
color: #fffae899;
letter-spacing: .02em;
line-height: 1.3
}

.abt_us .chart_bar_wrap {
margin-top: 8px
}

.abt_us .chart_bar_wrap table {
border: none;
width: 100%
}

.abt_us .metrics_right {
background: #fffae80d;
border-radius: 16px;
padding: 40px;
border: 1px solid #fbe71c26;
box-shadow: 1px 4px 25px 1px #19055b1a
}

.abt_us .checklist_h3 {
font-size: 21px;
color: #FBE71C;
line-height: 1.3;
letter-spacing: .01em;
margin-bottom: 24px;
border-bottom: 1px solid #fbe71c33;
padding-bottom: 8px
}

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

.abt_us .feat_list li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px;
font-size: 17px;
color: #FFFAE8;
line-height: 1.5;
letter-spacing: .01em
}

.abt_us .feat_list li .chk_icon {
flex-shrink: 0;
margin-top: 2px
}

.abt_us .team_sec {
background: #fff;
padding: 72px 0;
position: relative
}

.abt_us .team_sec::before {
content: '';
display: block;
height: 2px;
background: repeating-linear-gradient(90deg, #19055B 0px, #19055B 4px, transparent 4px, transparent 12px);
margin-bottom: 72px;
opacity: .15
}

.abt_us .team_layout {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 24px;
margin-bottom: 72px
}

.abt_us .team_h2 {
font-size: 37px;
color: #19055B;
line-height: 1.1;
letter-spacing: .01em;
margin-bottom: 24px;
grid-column: 1 / -1;
border-bottom: 2px solid #FBE71C;
padding-bottom: 8px;
display: inline-block
}

.abt_us .team_card {
background: #FFFAE8;
border-radius: 16px;
padding: 24px;
box-shadow: 1px 2px 2px 1px #19055b0d;
transition: transform .2s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .2s cubic-bezier(0.34, 1.56, 0.64, 1);
transform-style: preserve-3d;
perspective: 600px
}

.abt_us .team_card:hover {
transform: perspective(600px) rotateY(-4deg) rotateX(2deg) scale(1.02);
box-shadow: 1px 9px 48px 1px #19055b1a
}

.abt_us .team_name {
font-size: 17px;
font-weight: 700;
color: #19055B;
line-height: 1.3;
letter-spacing: .01em;
margin-bottom: 8px
}

.abt_us .team_role {
font-size: 15px;
color: #19055b8c;
line-height: 1.3;
letter-spacing: .02em;
margin-bottom: 8px
}

.abt_us .team_quote {
font-size: 15px;
color: #19055B;
line-height: 1.5;
letter-spacing: .01em
}

.abt_us .team_img_wide {
grid-column: 1 / -1;
border-radius: 16px;
overflow: hidden;
box-shadow: 1px 4px 25px 1px #19055b1a
}

.abt_us .team_img_wide img {
width: 100%;
aspect-ratio: 4/3;
object-fit: cover;
display: block;
max-height: 320px;
object-position: center
}

.abt_us .cta_band {
background: linear-gradient(160deg, #FFFAE8 0%, #fff 40%, #FFFAE8 100%);
border: 1.5px solid #19055b1a;
border-radius: 16px;
padding: 40px;
display: flex;
flex-direction: row;
align-items: center;
gap: 40px;
box-shadow: 1px 4px 25px 1px #19055b1a
}

.abt_us .cta_text {
flex: 1
}

.abt_us .cta_h3 {
font-size: 27px;
color: #19055B;
line-height: 1.3;
letter-spacing: .01em;
margin-bottom: 8px;
border-bottom: 2px solid #FBE71C;
padding-bottom: 8px;
display: inline-block
}

.abt_us .cta_desc {
font-size: 17px;
color: #19055B;
line-height: 1.5;
letter-spacing: .01em
}

.abt_us .cta_actions {
display: flex;
flex-direction: column;
gap: 16px;
flex-shrink: 0
}

.abt_us .btn_primary {
display: inline-block;
background: #19055B;
color: #FBE71C;
font-size: 17px;
font-weight: 700;
letter-spacing: .02em;
padding: 16px 40px;
border-radius: 44px;
text-decoration: none;
border: 2px solid #19055B;
box-shadow: 1px 2px 2px 1px #19055b0d;
transition: box-shadow .22s cubic-bezier(0.34, 1.56, 0.64, 1), outline-offset .2s cubic-bezier(0.34, 1.56, 0.64, 1), transform .2s cubic-bezier(0.34, 1.56, 0.64, 1);
outline: 2px solid transparent;
outline-offset: 0;
cursor: pointer
}

.abt_us .btn_primary:hover {
outline: 2px solid #19055B;
outline-offset: 4px;
box-shadow: 1px 9px 48px 1px #19055b1a;
transform: perspective(600px) rotateX(3deg) scale(1.03)
}

.abt_us .btn_secondary {
display: inline-block;
background: transparent;
color: #19055B;
font-size: 17px;
font-weight: 600;
letter-spacing: .02em;
padding: 16px 40px;
border-radius: 44px;
text-decoration: none;
border: 2px solid #19055B;
transition: background .22s cubic-bezier(0.68, -0.55, 0.27, 1.55), outline-offset .2s cubic-bezier(0.34, 1.56, 0.64, 1), transform .2s cubic-bezier(0.34, 1.56, 0.64, 1);
outline: 2px solid transparent;
outline-offset: 0;
cursor: pointer;
text-align: center
}

.abt_us .btn_secondary:hover {
outline: 2px solid #19055B;
outline-offset: 4px;
transform: perspective(600px) rotateX(-3deg) scale(1.03)
}

.abt_us .typing_label {
display: inline-block;
overflow: hidden;
white-space: nowrap;
border-right: 2px solid #FBE71C;
animation: typing_reveal 2.2s steps(28, end) forwards, caret_blink .75s step-end infinite;
max-width: 28ch
}

@keyframes typing_reveal {
from {
max-width: 0
}

to {
max-width: 28ch
}
}

@keyframes caret_blink {

0%,
100% {
border-color: #FBE71C
}

50% {
border-color: transparent
}
}

.abt_us .charts-css.bar {
--color: #FBE71C;
height: 24px;
border-radius: 6px
}

@media (max-width: 1024px) {
.abt_us .title_strip {
flex-direction: column;
gap: 24px
}

.abt_us .title_img_wrap {
width: 100%;
max-width: 480px
}

.abt_us .band_h1 {
font-size: 37px
}

.abt_us .metrics_grid {
grid-template-columns: 1fr;
gap: 40px
}

.abt_us .team_layout {
grid-template-columns: 1fr 1fr
}

.abt_us .cta_band {
flex-direction: column;
gap: 24px;
align-items: flex-start
}
}

@media (max-width: 640px) {
.abt_us .band_h1 {
font-size: 27px
}

.abt_us .who_float_img {
float: none;
width: 100%;
margin: 0 0 24px
}

.abt_us .team_layout {
grid-template-columns: 1fr
}

.abt_us .stat_row {
flex-direction: column;
gap: 24px
}

.abt_us .metrics_right {
padding: 24px
}

.abt_us .cta_band {
padding: 24px
}

.abt_us .cta_actions {
width: 100%
}

.abt_us .btn_primary,
.abt_us .btn_secondary {
text-align: center;
width: 100%
}

.abt_us .accent_num {
font-size: 37px
}
}

.cu_pg {
background: #FFFAE8;
overflow-x: clip
}

.cu_pg .pg_bound {
max-width: 1200px;
margin: 0 auto;
padding: 0 24px
}

.cu_pg .reveal_clip {
animation: clip_reveal .35s cubic-bezier(0.34, 1.56, 0.64, 1) both
}

@keyframes clip_reveal {
from {
clip-path: inset(0 50% 0 50%);
opacity: 0
}

to {
clip-path: inset(0 0% 0 0%);
opacity: 1
}
}

.cu_pg .top_band {
background: linear-gradient(170deg, #19055B 0%, #19055B 60%, #FBE71C 100%);
padding: 72px 24px;
position: relative
}

.cu_pg .top_band::before {
content: '';
position: absolute;
inset: 0;
background: radial-gradient(ellipse 80% 60% at 80% 50%, #fbe71c14 0%, transparent 70%);
pointer-events: none
}

.cu_pg .dot_field {
position: absolute;
inset: 0;
pointer-events: none;
overflow: hidden
}

.cu_pg .dot_field::before {
content: '';
position: absolute;
inset: 0;
background-image: radial-gradient(circle, #fbe71c2e 1px, transparent 1px);
background-size: 32px 32px
}

.cu_pg .top_inner {
max-width: 1200px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 72px;
position: relative;
z-index: 1
}

.cu_pg .top_left {
flex: 1 1 0;
min-width: 0
}

.cu_pg .top_eyebrow {
display: inline-block;
font-size: 15px;
font-weight: 600;
letter-spacing: .12em;
color: #FBE71C;
text-transform: uppercase;
margin-bottom: 24px;
border: 1px solid #fbe71c59;
border-radius: 44px;
padding: 6px 16px
}

.cu_pg .top_h {
font-size: 51px;
line-height: 1.1;
letter-spacing: .01em;
color: #FFFAE8;
font-weight: 800;
margin-bottom: 24px
}

.cu_pg .top_h span {
color: #FBE71C;
border-bottom: 3px solid #fbe71c80
}

.cu_pg .top_desc {
font-size: 17px;
line-height: 1.7;
color: #fffae8d1;
margin-bottom: 40px;
max-width: 480px
}

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

.cu_pg .coord_list li {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 16px
}

.cu_pg .coord_icon {
width: 40px;
height: 40px;
border-radius: 6px;
background: #fbe71c1f;
border: 1px solid #fbe71c40;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0
}

.cu_pg .coord_icon svg {
width: 18px;
height: 18px;
stroke: #FBE71C;
fill: none;
stroke-width: 1.8;
stroke-linecap: round;
stroke-linejoin: round
}

.cu_pg .coord_text {
display: flex;
flex-direction: column;
gap: 4px
}

.cu_pg .coord_label {
font-size: 15px;
color: #fffae88c;
letter-spacing: .02em
}

.cu_pg .coord_val {
font-size: 17px;
color: #FFFAE8;
line-height: 1.5;
letter-spacing: .01em
}

.cu_pg .coord_val a {
color: #FFFAE8;
text-decoration: none !important;
transition: color .2s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.cu_pg .coord_val a:hover {
color: #FBE71C
}

.cu_pg .divider_mono {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
margin: 0
}

.cu_pg .divider_mono::before,
.cu_pg .divider_mono::after {
content: '';
flex: 1;
height: 1px;
background: #fffae833
}

.cu_pg .divider_mono .mono_sym {
font-size: 21px;
color: #fbe71c99;
font-weight: 700;
letter-spacing: .05em
}

.cu_pg .form_col {
flex: 0 0 480px;
min-width: 0
}

.cu_pg .form_card {
background: #FFFAE8;
border-radius: 16px;
padding: 40px;
box-shadow: 1px 9px 48px 1px #19055b1a;
border: 2px solid #FBE71C;
outline: 6px solid #19055b14;
outline-offset: -2px;
position: relative
}

.cu_pg .form_card::before {
content: '';
position: absolute;
top: -1px;
left: 40px;
right: 40px;
height: 3px;
background: #FBE71C;
border-radius: 0 0 6px 6px
}

.cu_pg .form_ttl {
font-size: 27px;
line-height: 1.3;
color: #19055B;
font-weight: 700;
margin-bottom: 8px;
letter-spacing: .01em
}

.cu_pg .form_sub {
font-size: 15px;
color: #19055B;
opacity: .6;
margin-bottom: 24px;
line-height: 1.5
}

.cu_pg .field_grp {
display: flex;
flex-direction: column;
gap: 16px;
margin-bottom: 16px
}

.cu_pg .field_row {
display: flex;
flex-direction: column;
gap: 6px
}

.cu_pg .field_lbl {
font-size: 15px;
font-weight: 600;
color: #19055B;
letter-spacing: .01em
}

.cu_pg .field_lbl span {
color: #b8860b;
margin-left: 2px
}

.cu_pg .f_input {
width: 100%;
padding: 14px 16px;
border: 1.5px solid #19055b33;
border-radius: 6px;
background: #fff;
font-size: 17px;
color: #19055B;
line-height: 1.5;
letter-spacing: .01em;
box-sizing: border-box;
box-shadow: inset 4px 4px 10px #19055b0d;
transition: border-color .2s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .25s cubic-bezier(0.34, 1.56, 0.64, 1);
outline: none
}

.cu_pg .f_input::placeholder {
color: #19055b59;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap
}

.cu_pg .f_input:focus {
border-color: #19055B;
box-shadow: inset 4px 4px 10px #19055b0d 1px 4px 25px 1px #19055b1a
}

.cu_pg .f_textarea {
resize: vertical;
min-height: 120px
}

.cu_pg .privacy_row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 12px;
margin-bottom: 24px;
padding: 16px;
background: #19055b0a;
border-radius: 6px;
border: 1px solid #19055b1a
}

.cu_pg .privacy_row input[type="checkbox"] {
width: 18px;
height: 18px;
flex-shrink: 0;
margin-top: 2px;
accent-color: #19055B;
cursor: pointer
}

.cu_pg .privacy_txt {
font-size: 15px;
color: #19055B;
line-height: 1.5;
opacity: .8
}

.cu_pg .privacy_txt a {
color: #19055B;
font-weight: 600;
text-decoration: underline !important;
text-underline-offset: 2px;
transition: color .2s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.cu_pg .privacy_txt a:hover {
color: #FBE71C
}

.cu_pg .submit_btn {
width: 100%;
padding: 16px 40px;
background: #19055B;
color: #FBE71C;
font-size: 17px;
font-weight: 700;
letter-spacing: .04em;
border: 2px solid #19055B;
border-radius: 44px;
cursor: pointer;
position: relative;
transition: background .2s cubic-bezier(0.34, 1.56, 0.64, 1), color .2s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .25s cubic-bezier(0.34, 1.56, 0.64, 1), outline-offset .2s cubic-bezier(0.34, 1.56, 0.64, 1);
outline: 2px solid transparent;
outline-offset: 0;
transform-style: preserve-3d
}

.cu_pg .submit_btn:hover {
background: #FBE71C;
color: #19055B;
box-shadow: 1px 4px 25px 1px #19055b1a;
outline: 2px solid #19055B;
outline-offset: 4px;
transform: perspective(600px) rotateX(2deg) rotateY(-1deg)
}

.cu_pg .submit_btn:active {
transform: perspective(600px) rotateX(1deg) rotateY(-0.5deg) scale(0.98);
box-shadow: inset 4px 4px 10px #19055b14
}

.cu_pg .submit_btn:focus-visible {
outline: 3px solid #FBE71C;
outline-offset: 4px
}

.cu_pg .alt_band {
background: #fff;
padding: 72px 24px;
border-top: 1px solid #19055b14
}

.cu_pg .alt_inner {
max-width: 1200px;
margin: 0 auto;
display: flex;
flex-direction: row;
align-items: stretch;
gap: 40px
}

.cu_pg .quick_facts {
flex: 1 1 0;
min-width: 0;
display: flex;
flex-direction: column;
gap: 24px
}

.cu_pg .qf_head {
font-size: 27px;
line-height: 1.3;
color: #19055B;
font-weight: 700;
letter-spacing: .01em;
border-bottom: 2px solid #FBE71C;
padding-bottom: 16px
}

.cu_pg .qf_body {
font-size: 17px;
line-height: 1.7;
color: #19055B;
opacity: .8
}

.cu_pg .stat_row {
display: flex;
flex-direction: row;
gap: 16px;
flex-wrap: wrap
}

.cu_pg .stat_pill {
flex: 1 1 140px;
background: #FFFAE8;
border-radius: 16px;
padding: 24px 16px;
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 8px;
border: 1.5px solid #19055b1a;
box-shadow: 1px 2px 2px 1px #19055b0d;
transition: transform .25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .25s cubic-bezier(0.34, 1.56, 0.64, 1);
transform-style: preserve-3d
}

.cu_pg .stat_pill:hover {
transform: perspective(400px) rotateX(-3deg) rotateY(2deg) translateY(-4px);
box-shadow: 1px 9px 48px 1px #19055b1a
}

.cu_pg .stat_num {
font-size: 37px;
font-weight: 800;
color: #19055B;
line-height: 1.1;
letter-spacing: .01em
}

.cu_pg .stat_num em {
color: #b8860b;
font-style: normal
}

.cu_pg .stat_desc {
font-size: 15px;
color: #19055B;
opacity: .65;
line-height: 1.5
}

.cu_pg .chart_col {
flex: 0 0 340px;
min-width: 0;
display: flex;
flex-direction: column;
gap: 16px
}

.cu_pg .chart_ttl {
font-size: 21px;
font-weight: 700;
color: #19055B;
letter-spacing: .01em
}

.cu_pg .chart_sub {
font-size: 15px;
color: #19055B;
opacity: .6;
line-height: 1.5
}

.cu_pg .resp_bars {
display: flex;
flex-direction: column;
gap: 12px
}

.cu_pg .bar_item {
display: flex;
flex-direction: column;
gap: 6px
}

.cu_pg .bar_meta {
display: flex;
flex-direction: row;
justify-content: space-between;
align-items: baseline
}

.cu_pg .bar_label {
font-size: 15px;
color: #19055B;
font-weight: 600;
letter-spacing: .01em
}

.cu_pg .bar_val {
font-size: 15px;
color: #19055B;
opacity: .6
}

.cu_pg .bar_track {
height: 10px;
background: #19055b14;
border-radius: 6px;
overflow: hidden
}

.cu_pg .bar_fill {
height: 100%;
border-radius: 6px;
background: linear-gradient(90deg, #19055B 0%, #FBE71C 100%);
transform-origin: left center;
animation: bar_grow .35s cubic-bezier(0.34, 1.56, 0.64, 1) both
}

@keyframes bar_grow {
from {
transform: scaleX(0)
}

to {
transform: scaleX(1)
}
}

.cu_pg .bar_fill.b1 {
width: 88%;
animation-delay: .05s
}

.cu_pg .bar_fill.b2 {
width: 76%;
animation-delay: .12s
}

.cu_pg .bar_fill.b3 {
width: 94%;
animation-delay: .19s
}

.cu_pg .bar_fill.b4 {
width: 62%;
animation-delay: .26s
}

.cu_pg .framed_word {
display: inline;
border: 1.5px solid #FBE71C;
border-radius: 6px;
padding: 1px 6px;
color: #19055B
}

@media (max-width: 1024px) {
.cu_pg .top_inner {
flex-direction: column;
gap: 40px
}

.cu_pg .form_col {
flex: none;
width: 100%
}

.cu_pg .alt_inner {
flex-direction: column
}

.cu_pg .chart_col {
flex: none;
width: 100%
}
}

@media (max-width: 640px) {
.cu_pg .top_h {
font-size: 37px
}

.cu_pg .form_card {
padding: 24px 16px
}

.cu_pg .stat_row {
flex-direction: column
}

.cu_pg .top_band {
padding: 40px 16px
}

.cu_pg .alt_band {
padding: 40px 16px
}
}

.lrn_prog {
max-width: 100%;
overflow-x: hidden
}

.lrn_prog .pg_wrap {
max-width: 1200px;
margin: 0 auto;
padding: 0 24px
}

@keyframes settle_in {
from {
transform: scale(0.95);
opacity: 0
}

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

.lrn_prog ::selection {
background: #19055B;
color: #FFFAE8
}

.lrn_prog .diamond_sep {
display: inline-block;
width: 8px;
height: 8px;
background: #FBE71C;
transform: rotate(45deg);
margin: 0 8px;
flex-shrink: 0
}

.lrn_prog .title_block {
background: #FFFAE8;
padding: 72px 0 40px;
position: relative
}

.lrn_prog .title_block::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 340px;
height: 340px;
background: #fbe71c2e;
border-radius: 44px;
filter: blur(72px);
pointer-events: none
}

.lrn_prog .title_block::after {
content: '';
position: absolute;
bottom: 40px;
right: 0;
width: 260px;
height: 260px;
background: #19055b14;
border-radius: 44px;
filter: blur(60px);
pointer-events: none
}

.lrn_prog .title_inner {
display: flex;
flex-direction: row;
align-items: flex-end;
gap: 40px;
position: relative;
z-index: 1
}

.lrn_prog .title_text {
flex: 1 1 0;
min-width: 0
}

.lrn_prog .title_eyebrow {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
margin-bottom: 24px;
animation: settle_in .25s cubic-bezier(0.34, 1.56, 0.64, 1) both
}

.lrn_prog .eyebrow_label {
font-size: 15px;
line-height: 1.3;
letter-spacing: .02em;
color: #19055B;
font-weight: 600;
text-transform: uppercase
}

.lrn_prog .title_h1 {
font-size: 51px;
line-height: 1.1;
letter-spacing: .01em;
color: #19055B;
font-weight: 800;
margin-bottom: 24px;
animation: settle_in .28s cubic-bezier(0.34, 1.56, 0.64, 1) .05s both
}

.lrn_prog .title_h1 .num_accent {
color: #FBE71C;
font-size: 68px;
line-height: 1.1;
font-weight: 900;
display: inline;
-webkit-text-stroke: 1px #19055B
}

.lrn_prog .title_desc {
font-size: 17px;
line-height: 1.7;
letter-spacing: .01em;
color: #19055B;
opacity: .82;
max-width: 520px;
animation: settle_in .3s cubic-bezier(0.34, 1.56, 0.64, 1) .1s both
}

.lrn_prog .title_meta {
display: flex;
flex-direction: row;
align-items: center;
gap: 16px;
margin-top: 40px;
flex-wrap: wrap;
animation: settle_in .32s cubic-bezier(0.34, 1.56, 0.64, 1) .15s both
}

.lrn_prog .meta_pill {
background: #19055B;
color: #FFFAE8;
font-size: 15px;
line-height: 1.3;
letter-spacing: .01em;
padding: 8px 16px;
border-radius: 6px;
font-weight: 600
}

.lrn_prog .meta_plain {
font-size: 15px;
line-height: 1.3;
letter-spacing: .01em;
color: #19055B;
opacity: .7
}

.lrn_prog .title_img_col {
flex: 0 0 340px;
position: relative;
animation: settle_in .35s cubic-bezier(0.34, 1.56, 0.64, 1) .08s both
}

.lrn_prog .img_card {
border-radius: 16px;
overflow: hidden;
position: relative;
box-shadow: 1px 9px 48px 1px #19055b1a;
aspect-ratio: 4/3
}

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

.lrn_prog .img_tint {
position: absolute;
inset: 0;
background: #fbe71c38;
pointer-events: none
}

.lrn_prog .img_fade_edge {
position: absolute;
inset: 0;
background: linear-gradient(to right, #FFFAE8 0%, transparent 30%, transparent 70%, #FFFAE8 100%);
pointer-events: none
}

.lrn_prog .title_block .curved_divider {
position: relative;
margin-top: 40px;
line-height: 0
}

.lrn_prog .title_block .curved_divider svg {
display: block;
width: 100%
}

.lrn_prog .prog_detail {
background: #19055B;
padding: 72px 0;
position: relative
}

.lrn_prog .prog_detail::before {
content: '';
position: absolute;
top: -1px;
left: 0;
right: 0;
height: 60px;
background: #FFFAE8;
clip-path: ellipse(55% 100% at 50% 0%);
pointer-events: none
}

.lrn_prog .detail_grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 40px;
align-items: start
}

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

.lrn_prog .detail_h2 {
font-size: 37px;
line-height: 1.3;
letter-spacing: .01em;
color: #FBE71C;
font-weight: 800;
text-decoration: underline;
text-decoration-color: #fbe71c59;
text-underline-offset: 6px
}

.lrn_prog .detail_body {
font-size: 17px;
line-height: 1.7;
letter-spacing: .01em;
color: #FFFAE8;
opacity: .88
}

.lrn_prog .framed_word {
display: inline;
border: 1.5px solid #fbe71c99;
border-radius: 6px;
padding: 0 6px;
color: #FBE71C
}

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

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

.lrn_prog .step_num {
flex-shrink: 0;
width: 40px;
height: 40px;
border-radius: 6px;
background: #fbe71c1f;
border: 1.5px solid #fbe71c59;
display: flex;
align-items: center;
justify-content: center;
font-size: 17px;
font-weight: 800;
color: #FBE71C;
letter-spacing: .01em
}

.lrn_prog .step_text {
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
color: #FFFAE8;
opacity: .88;
padding-top: 8px
}

.lrn_prog .step_text strong {
color: #FBE71C;
font-weight: 700
}

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

.lrn_prog .metrics_row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px
}

.lrn_prog .metric_card {
background: #fbe71c12;
border: 1.5px solid #fbe71c2e;
border-radius: 16px;
padding: 24px 16px;
display: flex;
flex-direction: column;
gap: 8px;
box-shadow: 1px 4px 25px 1px #fbe71c1a;
transition: transform .22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .22s cubic-bezier(0.34, 1.56, 0.64, 1);
cursor: default;
position: relative;
overflow: hidden
}

.lrn_prog .metric_card::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 0;
background: #fbe71c1a;
transition: height .2s cubic-bezier(0.34, 1.56, 0.64, 1);
pointer-events: none
}

.lrn_prog .metric_card:hover::after {
height: 100%
}

.lrn_prog .metric_card:hover {
transform: perspective(600px) rotateX(3deg) rotateY(-2deg) scale(1.02);
box-shadow: 1px 9px 48px 1px #fbe71c1a
}

.lrn_prog .metric_val {
font-size: 37px;
line-height: 1.1;
letter-spacing: .01em;
color: #FBE71C;
font-weight: 900
}

.lrn_prog .metric_lbl {
font-size: 15px;
line-height: 1.3;
letter-spacing: .01em;
color: #FFFAE8;
opacity: .75
}

.lrn_prog .chart_block {
background: #fbe71c0d;
border: 1.5px solid #fbe71c26;
border-radius: 16px;
padding: 24px;
box-shadow: 1px 4px 25px 1px #fbe71c1a
}

.lrn_prog .chart_label {
font-size: 15px;
line-height: 1.3;
letter-spacing: .01em;
color: #FBE71C;
font-weight: 700;
margin-bottom: 16px
}

.lrn_prog .chart_block table.charts-css {
height: 140px;
--color: #fbe71cd9
}

.lrn_prog .chart_block table.charts-css tbody tr {
--start: 0
}

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

.lrn_prog .chart_legend span {
font-size: 15px;
line-height: 1.3;
color: #FFFAE8;
opacity: .65;
letter-spacing: .01em
}

.lrn_prog .outcomes_strip {
margin-top: 40px;
display: flex;
flex-direction: row;
gap: 16px;
flex-wrap: wrap;
align-items: center
}

.lrn_prog .outcome_tag {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
background: #fffae814;
border: 1.5px solid #fffae82e;
border-radius: 44px;
padding: 8px 16px;
font-size: 15px;
line-height: 1.3;
letter-spacing: .01em;
color: #FFFAE8;
transition: background .2s cubic-bezier(0.68, -0.55, 0.27, 1.55), border-color .2s cubic-bezier(0.68, -0.55, 0.27, 1.55);
cursor: default
}

.lrn_prog .outcome_tag:hover {
background: #fbe71c26;
border-color: #fbe71c80
}

.lrn_prog .enroll_band {
margin-top: 40px;
background: #FBE71C;
border-radius: 16px;
padding: 24px 40px;
display: flex;
flex-direction: row;
align-items: center;
justify-content: space-between;
gap: 24px;
flex-wrap: wrap;
box-shadow: 1px 4px 25px 1px #fbe71c1a
}

.lrn_prog .enroll_text {
font-size: 21px;
line-height: 1.3;
letter-spacing: .01em;
color: #19055B;
font-weight: 800
}

.lrn_prog .enroll_sub {
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
color: #19055B;
opacity: .75;
margin-top: 8px
}

.lrn_prog .enroll_btn {
display: inline-block;
background: #19055B;
color: #FFFAE8;
font-size: 17px;
font-weight: 700;
line-height: 1.3;
letter-spacing: .01em;
padding: 16px 40px;
border-radius: 6px;
border: 2.5px solid transparent;
cursor: pointer;
text-decoration: none;
transition: border-color .22s cubic-bezier(0.34, 1.56, 0.64, 1), transform .22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .22s cubic-bezier(0.34, 1.56, 0.64, 1);
white-space: nowrap;
flex-shrink: 0;
box-shadow: 1px 2px 2px 1px #19055b0d
}

.lrn_prog .enroll_btn:hover {
border-color: #19055B;
outline: 3px solid #19055B;
outline-offset: 3px;
transform: perspective(600px) rotateX(2deg) scale(1.03);
box-shadow: 1px 4px 25px 1px #19055b1a
}

.lrn_prog .enroll_btn:focus {
outline: 3px solid #19055B;
outline-offset: 3px
}

.lrn_prog .enroll_btn:active {
transform: scale(0.98);
box-shadow: inset 0 6px 10px #19055b1f
}

@media (max-width: 1024px) {
.lrn_prog .title_h1 {
font-size: 37px
}

.lrn_prog .title_h1 .num_accent {
font-size: 51px
}

.lrn_prog .title_img_col {
flex: 0 0 260px
}

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

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

@media (max-width: 640px) {
.lrn_prog .title_inner {
flex-direction: column;
align-items: flex-start
}

.lrn_prog .title_img_col {
flex: 0 0 auto;
width: 100%
}

.lrn_prog .title_h1 {
font-size: 27px
}

.lrn_prog .title_h1 .num_accent {
font-size: 37px
}

.lrn_prog .title_block {
padding: 40px 0 24px
}

.lrn_prog .prog_detail {
padding: 40px 0
}

.lrn_prog .detail_h2 {
font-size: 27px
}

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

.lrn_prog .enroll_band {
flex-direction: column;
align-items: flex-start;
padding: 24px
}

.lrn_prog .outcomes_strip {
gap: 8px
}
}

.frst {
max-width: 100%;
overflow-x: hidden
}

.frst .pg_wrap {
max-width: 1200px;
margin: 0 auto;
padding: 0 24px
}

.frst ::selection {
background: #19055B;
color: #FFFAE8
}

@keyframes zone_shift {
0% {
background-position: 0 50%
}

50% {
background-position: 100% 50%
}

100% {
background-position: 0 50%
}
}

@keyframes zone_drift {
0% {
background-position: 20% 30%
}

50% {
background-position: 80% 70%
}

100% {
background-position: 20% 30%
}
}

.frst .title_blk {
background: linear-gradient(to bottom, #19055B 0%, #2a0e7a 40%, #19055b26 80%, transparent 100%);
padding: 72px 24px 40px;
position: relative
}

.frst .title_blk .pg_wrap {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 40px
}

.frst .title_txt {
flex: 1 1 0;
padding-top: 24px
}

.frst .title_accent {
display: inline-block;
font-size: 15px;
font-weight: 700;
letter-spacing: .12em;
text-transform: uppercase;
color: #FBE71C;
border: 1.5px solid #FBE71C;
border-radius: 6px;
padding: 4px 16px;
margin-bottom: 24px
}

.frst .title_h {
font-size: 51px;
line-height: 1.1;
letter-spacing: .01em;
color: #FFFAE8;
margin-bottom: 24px
}

.frst .title_h span {
color: #FBE71C;
text-decoration: underline;
text-decoration-color: #fbe71c66;
text-underline-offset: 4px
}

.frst .title_sub {
font-size: 17px;
line-height: 1.5;
letter-spacing: .01em;
color: #fffae8d1;
max-width: 480px;
margin-bottom: 40px
}

.frst .title_cta {
display: inline-block;
background: #FBE71C;
color: #19055B;
font-size: 15px;
font-weight: 700;
letter-spacing: .02em;
border: 2.5px solid #FBE71C;
border-radius: 6px;
padding: 16px 40px;
cursor: pointer;
text-decoration: none;
transition: background .2s cubic-bezier(0.34, 1.56, 0.64, 1), color .2s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .25s cubic-bezier(0.34, 1.56, 0.64, 1), outline-offset .22s cubic-bezier(0.34, 1.56, 0.64, 1);
outline: 2.5px solid transparent;
outline-offset: 0
}

.frst .title_cta:hover {
background: transparent;
color: #FBE71C;
box-shadow: 1px 4px 25px 1px #fbe71c1a;
outline: 2.5px solid #FBE71C;
outline-offset: 5px
}

.frst .title_img_col {
flex: 0 0 420px;
position: relative
}

.frst .title_img_frame {
width: 100%;
aspect-ratio: 4/3;
overflow: hidden;
clip-path: polygon(0 0, 88% 0, 100% 12%, 100% 100%, 12% 100%, 0 88%);
border-radius: 6px
}

.frst .title_img_frame img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
filter: saturate(0.85) brightness(0.92)
}

.frst .value_blk {
background: #FFFAE8;
padding: 72px 24px;
position: relative;
overflow: hidden
}

.frst .value_blk::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: linear-gradient(135deg, #fbe71c2e 0%, transparent 45%, transparent 55%, #19055b0f 100%);
background-size: 200% 200%;
animation: zone_shift 18s ease-in-out infinite;
pointer-events: none
}

.frst .value_blk .pg_wrap {
position: relative
}

.frst .val_grid {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 24px;
margin-top: 40px
}

.frst .val_label {
font-size: 15px;
font-weight: 700;
letter-spacing: .08em;
text-transform: uppercase;
color: #19055B;
opacity: .55;
margin-bottom: 16px
}

.frst .val_h {
font-size: 37px;
line-height: 1.1;
letter-spacing: .01em;
color: #19055B;
margin-bottom: 24px;
text-decoration: underline;
text-decoration-color: #FBE71C;
text-underline-offset: 5px
}

.frst .val_intro {
font-size: 17px;
line-height: 1.5;
letter-spacing: .01em;
color: #19055B;
max-width: 360px
}

.frst .val_card {
background: #fff;
border-radius: 16px;
padding: 24px;
box-shadow: 1px 4px 25px 1px #19055b1a;
position: relative;
transition: transform .25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .22s cubic-bezier(0.34, 1.56, 0.64, 1);
cursor: default
}

.frst .val_card::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 40px;
background: linear-gradient(to top, #fbe71c38, transparent);
border-radius: 0 0 16px 16px;
pointer-events: none
}

.frst .val_card:hover {
transform: perspective(600px) rotateX(2deg) rotateY(-2deg) translateY(-4px);
box-shadow: 1px 9px 48px 1px #19055b1a
}

.frst .val_card_h {
font-size: 21px;
line-height: 1.3;
letter-spacing: .01em;
color: #19055B;
margin-bottom: 16px;
text-decoration: underline;
text-decoration-color: #FBE71C;
text-underline-offset: 3px
}

.frst .val_card_p {
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
color: #19055B
}

.frst .val_card .diamond_acc {
position: absolute;
top: -10px;
right: -10px;
width: 22px;
height: 22px;
background: #FBE71C;
transform: rotate(45deg);
border-radius: 6px
}

.frst .hesit_blk {
background: #19055B;
padding: 72px 24px;
position: relative;
overflow: hidden
}

.frst .hesit_blk::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(220deg, #fbe71c1a 0%, transparent 40%, transparent 60%, #fbe71c12 100%);
background-size: 300% 300%;
animation: zone_drift 22s ease-in-out infinite;
pointer-events: none
}

.frst .hesit_blk .pg_wrap {
position: relative;
display: flex;
flex-direction: row;
gap: 72px;
align-items: flex-start
}

.frst .hesit_left {
flex: 0 0 380px
}

.frst .hesit_img_wrap {
width: 100%;
aspect-ratio: 4/3;
border-radius: 16px;
overflow: hidden;
box-shadow: 1px 9px 48px 1px #fbe71c1a;
position: relative
}

.frst .hesit_img_wrap img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
filter: grayscale(100%) brightness(0.75)
}

.frst .hesit_img_tint {
position: absolute;
inset: 0;
background: #19055b73;
border-radius: 16px
}

.frst .hesit_right {
flex: 1 1 0;
padding-top: 8px
}

.frst .hesit_tag {
display: inline-block;
font-size: 15px;
font-weight: 700;
letter-spacing: .09em;
text-transform: uppercase;
color: #FBE71C;
border: 1.5px solid #fbe71c66;
border-radius: 6px;
padding: 4px 16px;
margin-bottom: 24px
}

.frst .hesit_h {
font-size: 37px;
line-height: 1.1;
letter-spacing: .01em;
color: #FFFAE8;
margin-bottom: 24px;
text-decoration: underline;
text-decoration-color: #fbe71c80;
text-underline-offset: 5px
}

.frst .hesit_p {
font-size: 17px;
line-height: 1.5;
letter-spacing: .01em;
color: #fffae8d1;
margin-bottom: 16px
}

.frst .hesit_note {
margin-top: 24px;
padding: 16px 24px;
border-radius: 6px;
border-top: 3px solid #FBE71C;
border-right: 1px solid #fbe71c33;
background: #fbe71c12
}

.frst .hesit_note_p {
font-size: 15px;
line-height: 1.5;
color: #FFFAE8
}

.frst .rep_blk {
background: #fff;
padding: 72px 24px;
position: relative
}

.frst .rep_blk .pg_wrap {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 72px;
align-items: start
}

.frst .rep_left {
position: sticky;
top: 40px
}

.frst .rep_label {
font-size: 15px;
font-weight: 700;
letter-spacing: .08em;
text-transform: uppercase;
color: #19055B;
opacity: .5;
margin-bottom: 16px
}

.frst .rep_h {
font-size: 37px;
line-height: 1.1;
letter-spacing: .01em;
color: #19055B;
margin-bottom: 24px;
text-decoration: underline;
text-decoration-color: #FBE71C;
text-underline-offset: 5px
}

.frst .rep_p {
font-size: 17px;
line-height: 1.5;
letter-spacing: .01em;
color: #19055B
}

.frst .rep_img_wrap {
margin-top: 40px;
width: 100%;
aspect-ratio: 4/3;
border-radius: 16px;
overflow: hidden;
box-shadow: 1px 4px 25px 1px #19055b1a
}

.frst .rep_img_wrap img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
filter: grayscale(100%)
}

.frst .rep_right {
display: flex;
flex-direction: column;
gap: 24px
}

.frst .rep_item {
border-radius: 16px;
padding: 24px;
background: #FFFAE8;
box-shadow: 1px 2px 2px 1px #19055b0d;
position: relative;
transition: transform .22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .22s cubic-bezier(0.34, 1.56, 0.64, 1), outline .18s cubic-bezier(0.34, 1.56, 0.64, 1), outline-offset .28s cubic-bezier(0.68, -0.55, 0.27, 1.55);
outline: 2px solid transparent;
outline-offset: 0
}

.frst .rep_item:hover {
transform: perspective(700px) rotateY(2deg) translateX(4px);
box-shadow: 1px 4px 25px 1px #19055b1a;
outline: 2px solid #FBE71C;
outline-offset: 4px
}

.frst .rep_item_h {
font-size: 21px;
line-height: 1.3;
letter-spacing: .01em;
color: #19055B;
margin-bottom: 8px;
text-decoration: underline;
text-decoration-color: #FBE71C;
text-underline-offset: 3px
}

.frst .rep_item_p {
font-size: 15px;
line-height: 1.5;
letter-spacing: .01em;
color: #19055B
}

.frst .rep_item_src {
margin-top: 8px;
font-size: 15px;
font-weight: 700;
letter-spacing: .05em;
color: #19055B;
opacity: .45
}

.frst .exp_blk {
background: linear-gradient(135deg, #fbe71c38 0%, transparent 50%, #19055b0f 100%);
background-color: #FFFAE8 !important;
background-size: 200% 200%;
animation: zone_shift 20s ease-in-out infinite;
padding: 72px 24px;
position: relative;
overflow: hidden
}

.frst .exp_blk .pg_wrap {
position: relative
}

.frst .exp_top {
display: flex;
flex-direction: row;
gap: 40px;
align-items: flex-end;
margin-bottom: 40px
}

.frst .exp_top_txt {
flex: 1 1 0
}

.frst .exp_label {
font-size: 15px;
font-weight: 700;
letter-spacing: .08em;
text-transform: uppercase;
color: #19055B;
opacity: .5;
margin-bottom: 16px
}

.frst .exp_h {
font-size: 37px;
line-height: 1.1;
letter-spacing: .01em;
color: #19055B;
margin-bottom: 0;
text-decoration: underline;
text-decoration-color: #FBE71C;
text-underline-offset: 5px
}

.frst .exp_top_img {
flex: 0 0 340px
}

.frst .exp_img_frame {
width: 100%;
aspect-ratio: 4/3;
border-radius: 16px;
overflow: hidden;
box-shadow: 1px 9px 48px 1px #19055b1a
}

.frst .exp_img_frame img {
width: 100%;
height: 100%;
object-fit: cover;
display: block;
filter: grayscale(80%) brightness(0.9);
transition: filter .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.frst .exp_img_frame:hover img {
filter: grayscale(0%) brightness(1)
}

.frst .exp_phases {
display: grid;
grid-template-columns: repeat(4, 1fr);
gap: 16px;
margin-top: 8px
}

.frst .exp_phase {
background: #fff;
border-radius: 16px;
padding: 24px;
box-shadow: 1px 2px 2px 1px #19055b0d;
position: relative;
transition: transform .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.frst .exp_phase:hover {
transform: perspective(600px) rotateX(-3deg) rotateY(1deg) translateY(-3px)
}

.frst .exp_phase::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
right: 0;
height: 32px;
background: linear-gradient(to top, #fbe71c2e, transparent);
border-radius: 0 0 16px 16px;
pointer-events: none
}

.frst .exp_num {
font-size: 37px;
line-height: 1.1;
font-weight: 700;
color: #FBE71C;
letter-spacing: -.01em;
margin-bottom: 8px;
text-shadow: 0 1px 0 #19055b26
}

.frst .exp_phase_h {
font-size: 17px;
line-height: 1.3;
letter-spacing: .01em;
color: #19055B;
margin-bottom: 8px;
text-decoration: underline;
text-decoration-color: #fbe71c99;
text-underline-offset: 3px
}

.frst .exp_phase_p {
font-size: 15px;
line-height: 1.5;
color: #19055B
}

.frst .exp_body_p {
font-size: 17px;
line-height: 1.5;
letter-spacing: .01em;
color: #19055B;
max-width: 640px;
margin-top: 40px
}

.frst .invest_blk {
background: #19055B;
padding: 72px 24px;
position: relative;
overflow: hidden
}

.frst .invest_blk::before {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(160deg, #fbe71c17 0%, transparent 50%, #fbe71c0d 100%);
background-size: 300% 300%;
animation: zone_drift 25s ease-in-out infinite;
pointer-events: none
}

.frst .invest_blk .pg_wrap {
position: relative;
display: flex;
flex-direction: row;
gap: 72px;
align-items: flex-start
}

.frst .invest_left {
flex: 1 1 0
}

.frst .invest_tag {
display: inline-block;
font-size: 15px;
font-weight: 700;
letter-spacing: .09em;
text-transform: uppercase;
color: #FBE71C;
border: 1.5px solid #fbe71c66;
border-radius: 6px;
padding: 4px 16px;
margin-bottom: 24px
}

.frst .invest_h {
font-size: 37px;
line-height: 1.1;
letter-spacing: .01em;
color: #FFFAE8;
margin-bottom: 24px;
text-decoration: underline;
text-decoration-color: #fbe71c73;
text-underline-offset: 5px
}

.frst .invest_p {
font-size: 17px;
line-height: 1.5;
letter-spacing: .01em;
color: #fffae8d1;
margin-bottom: 16px
}

.frst .invest_right {
flex: 0 0 380px;
display: flex;
flex-direction: column;
gap: 16px;
padding-top: 8px
}

.frst .invest_tier {
border-radius: 16px;
padding: 24px;
background: #fffae80f;
border-top: 3px solid #fbe71c59;
border-right: 1px solid #fbe71c1f;
position: relative;
transition: background .2s cubic-bezier(0.34, 1.56, 0.64, 1), transform .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.frst .invest_tier:hover {
background: #fffae81a;
transform: perspective(700px) rotateY(-2deg) translateX(-4px)
}

.frst .invest_tier.featured {
background: #fbe71c1f;
border-top: 3px solid #FBE71C;
border-right: 1px solid #fbe71c4d
}

.frst .invest_tier_name {
font-size: 15px;
font-weight: 700;
letter-spacing: .08em;
text-transform: uppercase;
color: #fffae88c;
margin-bottom: 8px
}

.frst .invest_price {
font-size: 37px;
line-height: 1.1;
font-weight: 700;
color: #FBE71C;
letter-spacing: -.01em;
margin-bottom: 8px
}

.frst .invest_price_note {
font-size: 15px;
color: #fffae88c;
margin-bottom: 8px
}

.frst .invest_tier_desc {
font-size: 15px;
line-height: 1.5;
color: #fffae8cc
}

.frst .invest_link {
display: inline-block;
margin-top: 40px;
background: transparent;
color: #FBE71C;
font-size: 15px;
font-weight: 700;
letter-spacing: .02em;
border: 2px solid #FBE71C;
border-radius: 6px;
padding: 16px 40px;
text-decoration: none;
transition: background .2s cubic-bezier(0.34, 1.56, 0.64, 1), color .2s cubic-bezier(0.34, 1.56, 0.64, 1), outline-offset .25s cubic-bezier(0.68, -0.55, 0.27, 1.55);
outline: 2px solid transparent;
outline-offset: 0
}

.frst .invest_link:hover {
background: #FBE71C;
color: #19055B;
outline: 2px solid #FBE71C;
outline-offset: 5px
}

@media (max-width: 1024px) {
.frst .title_blk .pg_wrap {
flex-direction: column
}

.frst .title_img_col {
flex: 0 0 auto;
width: 100%;
max-width: 480px
}

.frst .title_h {
font-size: 37px
}

.frst .val_grid {
grid-template-columns: 1fr 1fr
}

.frst .hesit_blk .pg_wrap {
flex-direction: column;
gap: 40px
}

.frst .hesit_left {
flex: 0 0 auto;
width: 100%;
max-width: 420px
}

.frst .rep_blk .pg_wrap {
grid-template-columns: 1fr;
gap: 40px
}

.frst .rep_left {
position: static
}

.frst .exp_phases {
grid-template-columns: 1fr 1fr
}

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

.frst .exp_top_img {
flex: 0 0 auto;
width: 100%;
max-width: 420px
}

.frst .invest_blk .pg_wrap {
flex-direction: column;
gap: 40px
}

.frst .invest_right {
flex: 0 0 auto;
width: 100%
}
}

@media (max-width: 640px) {
.frst .title_h {
font-size: 27px
}

.frst .val_grid {
grid-template-columns: 1fr
}

.frst .val_h {
font-size: 27px
}

.frst .hesit_h,
.frst .rep_h,
.frst .exp_h,
.frst .invest_h {
font-size: 27px
}

.frst .exp_phases {
grid-template-columns: 1fr
}

.frst .title_blk {
padding: 40px 16px 24px
}

.frst .value_blk,
.frst .hesit_blk,
.frst .rep_blk,
.frst .exp_blk,
.frst .invest_blk {
padding: 40px 16px
}
}

.success_page {
min-height: 80vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 72px 24px;
background: #FFFAE8
}

.success_page .success_card {
max-width: 560px;
width: 100%;
background: #fff;
border-radius: 16px;
padding: 40px;
box-shadow: 1px 9px 48px 1px #19055b1a;
display: flex;
flex-direction: column;
align-items: center;
gap: 24px
}

.success_page .icon_wrap {
width: 72px;
height: 72px;
border-radius: 44px;
background: #FBE71C;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 1px 4px 25px 1px #fbe71c1a;
flex-shrink: 0
}

.success_page .icon_wrap svg {
display: block
}

.success_page .success_heading {
font-size: 37px;
line-height: 1.1;
letter-spacing: .01em;
color: #19055B;
text-align: center;
margin: 0
}

.success_page .success_text {
font-size: 17px;
line-height: 1.5;
letter-spacing: .01em;
color: #19055B;
text-align: center;
margin: 0;
max-width: 420px
}

.success_page .divider_line {
width: 100%;
height: 1px;
background: linear-gradient(90deg, #FFFAE8 0%, #FBE71C 50%, #FFFAE8 100%);
border: none;
margin: 0
}

.success_page .detail_row {
display: flex;
flex-direction: column;
align-items: center;
gap: 8px;
width: 100%
}

.success_page .detail_label {
font-size: 15px;
line-height: 1.3;
letter-spacing: .02em;
color: #19055B;
opacity: .6;
text-align: center;
margin: 0
}

.success_page .detail_value {
font-size: 17px;
line-height: 1.5;
letter-spacing: .01em;
color: #19055B;
text-align: center;
margin: 0
}

.success_page .detail_value a {
color: #19055B;
text-decoration: underline;
text-underline-offset: 3px;
transition: opacity .2s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.success_page .detail_value a:hover {
opacity: .65
}

.success_page .back_btn {
display: inline-block;
padding: 16px 40px;
background: #19055B;
color: #FBE71C;
font-size: 17px;
line-height: 1.3;
letter-spacing: .02em;
border-radius: 6px;
text-decoration: none;
border: 2px solid #19055B;
transition: background .25s cubic-bezier(0.34, 1.56, 0.64, 1), color .25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .2s cubic-bezier(0.34, 1.56, 0.64, 1), outline-offset .2s cubic-bezier(0.34, 1.56, 0.64, 1);
outline: 2px solid transparent;
outline-offset: 0
}

.success_page .back_btn:hover {
background: #FBE71C;
color: #19055B;
box-shadow: 1px 4px 25px 1px #19055b1a;
outline: 2px solid #19055B;
outline-offset: 4px
}

.success_page .back_btn:focus-visible {
outline: 2px solid #19055B;
outline-offset: 4px
}

.success_page .back_btn:active {
box-shadow: inset 0 4px 8px #19055b1a
}

@media (max-width: 640px) {
.success_page {
padding: 40px 16px
}

.success_page .success_card {
padding: 24px 16px;
gap: 16px
}

.success_page .success_heading {
font-size: 27px
}

.success_page .back_btn {
width: 100%;
text-align: center
}
}