* {
box-sizing: border-box
}

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

body {
margin: 0;
overscroll-behavior: contain;
overflow-x: hidden
}

.pg-head {
background: #fff;
border-bottom: 2px solid #EE418D;
font-family: 'Cabin', sans-serif
}

.nav-strip {
background: #057F98;
max-width: 1600px;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: flex-end;
gap: 0;
padding: 0 32px
}

.nav-strip a {
color: #fff;
font-size: 15px;
line-height: 1.8;
text-decoration: none;
padding: 8px 16px;
border-right: 1px solid #ffffff2e;
display: block;
transition: background .2s cubic-bezier(0.4, 0, 0.2, 1), color .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.nav-strip a:first-child {
border-left: 1px solid #ffffff2e
}

.nav-strip a:hover,
.nav-strip a:focus {
background: #ffffff1f;
color: #F5F8D5;
outline: none
}

.nav-strip a:focus {
border-color: #EE418D;
background: #ee418d26
}

.brand-row {
max-width: 1600px;
margin: 0 auto;
display: flex;
align-items: center;
justify-content: space-between;
padding: 16px 32px 16px 48px;
gap: 32px
}

.logo-pill {
display: flex;
align-items: center;
justify-content: center;
background: #F5F8D5;
border-radius: 40px;
padding: 8px 32px;
box-shadow: -1px 4px 20px 0 #ee418d14 0 0 0 2px #EE418D;
flex-shrink: 0
}

.logo-pill img {
width: 90px;
height: 90px;
object-fit: contain;
object-position: center;
display: block
}

.brand-trust {
display: flex;
flex-direction: column;
align-items: flex-end;
gap: 8px
}

.brand-name {
font-size: 20px;
font-weight: 700;
line-height: 1.2;
letter-spacing: -.03em;
color: #057F98;
font-family: 'Cabin', sans-serif
}

.trust-badge {
display: flex;
align-items: center;
gap: 8px;
background: #F5F8D5;
border: 1px solid #057F98;
border-radius: 8px;
padding: 4px 16px
}

.trust-badge-dot {
width: 8px;
height: 8px;
border-radius: 3px;
background: #EE418D;
flex-shrink: 0
}

.trust-badge-txt {
font-size: 15px;
line-height: 1.8;
color: #057F98;
font-family: 'Cabin', sans-serif;
font-weight: 700
}

.pg-foot {
background: #057F98;
font-family: 'Cabin', sans-serif;
position: relative;
overflow: hidden
}

.foot-texture {
position: absolute;
inset: 0;
background-image: radial-gradient(circle, #f5f8d512 1px, transparent 1px);
background-size: 24px 24px;
pointer-events: none
}

.foot-inner {
max-width: 1600px;
margin: 0 auto;
padding: 64px 32px 32px;
position: relative
}

.foot-grid {
display: grid;
grid-template-columns: 2fr 1fr 1fr;
gap: 32px;
align-items: start
}

.foot-brand-col {
display: flex;
flex-direction: column;
gap: 16px
}

.foot-logo-wrap {
border-top: 2px solid #f5f8d54d;
padding-top: 16px;
display: flex;
align-items: center;
gap: 16px
}

.foot-logo-pill {
background: #F5F8D5;
border-radius: 40px;
padding: 8px 24px;
box-shadow: -1px 3px 2px 0 #ee418d12;
display: flex;
align-items: center;
justify-content: center;
border: 1px solid #ee418d4d
}

.foot-logo-pill img {
width: 80px;
height: 80px;
object-fit: contain;
object-position: center;
display: block
}

.foot-brand-name {
font-size: 20px;
font-weight: 700;
color: #F5F8D5;
line-height: 1.2;
letter-spacing: -.02em
}

.foot-desc {
font-size: 15px;
line-height: 1.8;
color: #f5f8d5cc
}

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

.foot-contact-item {
font-size: 15px;
line-height: 1.8;
color: #f5f8d5bf;
text-decoration: none;
transition: color .18s cubic-bezier(0.4, 0, 0.2, 1)
}

.foot-contact-item:hover,
.foot-contact-item:focus {
color: #F5F8D5;
outline: none
}

.foot-col-label {
font-size: 15px;
font-weight: 700;
color: #EE418D;
line-height: 1.2;
letter-spacing: -.02em;
margin-bottom: 16px;
text-transform: uppercase
}

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

.foot-links li a {
font-size: 15px;
line-height: 1.8;
color: #f5f8d5cc;
text-decoration: none;
transition: color .22s cubic-bezier(0.0, 0, 0.2, 1);
display: inline-block;
border-bottom: 1px solid transparent;
transition: color .22s cubic-bezier(0.0, 0, 0.2, 1), border-color .22s cubic-bezier(0.0, 0, 0.2, 1)
}

.foot-links li a:hover,
.foot-links li a:focus {
color: #F5F8D5;
border-bottom-color: #EE418D;
outline: none
}

.foot-bottom {
margin-top: 32px;
padding-top: 16px;
border-top: 1px solid #f5f8d526;
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
flex-wrap: wrap
}

.foot-copy {
font-size: 15px;
line-height: 1.8;
color: #f5f8d580
}

.foot-addr {
font-size: 15px;
line-height: 1.8;
color: #f5f8d580
}

.cookie-bar {
position: fixed;
bottom: 0;
left: 0;
right: 0;
z-index: 1000;
background: #fff;
box-shadow: -1px 8px 52px 0 #ee418d1a;
border-top: 2px solid #EE418D;
font-family: 'Cabin', sans-serif
}

.cookie-card {
max-width: 1600px;
margin: 0 auto;
padding: 16px 32px;
display: flex;
align-items: center;
gap: 32px;
flex-wrap: wrap
}

.cookie-txt-block {
flex: 1;
min-width: 200px
}

.cookie-headline {
font-size: 15px;
font-weight: 700;
color: #057F98;
line-height: 1.2;
margin-bottom: 4px
}

.cookie-desc {
font-size: 15px;
line-height: 1.8;
color: #333
}

.cookie-btns {
display: flex;
gap: 16px;
flex-shrink: 0
}

.cookie-accept,
.cookie-decline {
font-size: 15px;
font-weight: 700;
font-family: 'Cabin', sans-serif;
padding: 8px 32px;
border-radius: 3px;
cursor: pointer;
border: 2px solid #EE418D;
min-width: 120px;
text-align: center;
transition: background .25s cubic-bezier(0.4, 0, 0.2, 1), color .25s cubic-bezier(0.4, 0, 0.2, 1), width .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.cookie-accept {
background: #EE418D;
color: #fff
}

.cookie-accept:hover,
.cookie-accept:focus {
background: #d4307c;
outline: none;
padding-left: 40px;
padding-right: 40px
}

.cookie-decline {
background: #fff;
color: #EE418D
}

.cookie-decline:hover,
.cookie-decline:focus {
background: #F5F8D5;
outline: none;
padding-left: 40px;
padding-right: 40px
}

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

.brand-row {
padding: 16px;
flex-wrap: wrap
}

.nav-strip {
flex-wrap: wrap;
justify-content: flex-start;
padding: 0 16px
}

.nav-strip a {
font-size: 15px;
padding: 8px 12px
}

.foot-inner {
padding: 32px 16px 16px
}

.cookie-card {
padding: 16px;
flex-direction: column;
align-items: flex-start
}

.cookie-btns {
width: 100%
}

.cookie-accept,
.cookie-decline {
flex: 1
}
}

.content-legal {
max-width: 1600px;
margin: 0 auto;
padding: 64px 32px
}

.content-legal h1 {
font-size: 68px;
line-height: 1.2;
letter-spacing: -.02em;
color: #111827;
margin-bottom: 32px;
margin-top: 0
}

.content-legal h2 {
font-size: 50px;
line-height: 1.2;
letter-spacing: -.015em;
color: #111827;
margin-top: 64px;
margin-bottom: 16px;
padding-bottom: 8px;
border-bottom: 2px solid #EE418D
}

.content-legal h3 {
font-size: 20px;
line-height: 1.8;
letter-spacing: -.01em;
color: #111827;
margin-top: 32px;
margin-bottom: 8px
}

.content-legal h4 {
font-size: 20px;
line-height: 1.8;
color: #057F98;
margin-top: 32px;
margin-bottom: 8px
}

.content-legal h5 {
font-size: 15px;
line-height: 1.8;
letter-spacing: .04em;
text-transform: uppercase;
color: #057F98;
margin-top: 32px;
margin-bottom: 8px
}

.content-legal h6 {
font-size: 15px;
line-height: 1.8;
color: #374151;
margin-top: 16px;
margin-bottom: 4px
}

.content-legal p {
font-size: 15px;
line-height: 1.8;
color: #1e293b;
margin-top: 0;
margin-bottom: 16px;
max-width: 72ch
}

.content-legal a {
color: #057F98;
text-decoration: underline;
text-decoration-color: #057f9866;
text-underline-offset: 3px;
transition: color .2s cubic-bezier(0.4, 0, 0.2, 1), text-decoration-color .15s cubic-bezier(0.0, 0, 0.2, 1)
}

.content-legal a:hover {
color: #EE418D;
text-decoration-color: #ee418d80
}

.content-legal hr {
border: none;
border-top: 1px solid #d1d5db;
margin-top: 64px;
margin-bottom: 64px
}

.content-legal table {
width: 100%;
border-collapse: collapse;
font-size: 15px;
line-height: 1.8;
margin-top: 32px;
margin-bottom: 32px;
border-radius: 8px;
overflow: hidden;
box-shadow: -1px 4px 20px 0 #ee418d14
}

.content-legal thead {
background-color: #057F98
}

.content-legal thead th {
color: #fff;
font-size: 15px;
letter-spacing: .03em;
text-align: left;
padding: 16px;
border: none
}

.content-legal tbody tr {
border-bottom: 1px solid #e9edf0;
transition: background-color .18s cubic-bezier(0.4, 0, 0.2, 1)
}

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

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

.content-legal tbody tr:hover {
background-color: #057f980f
}

.content-legal td {
padding: 16px;
color: #1e293b;
vertical-align: top
}

@media (max-width: 768px) {
.content-legal {
padding: 32px 16px
}

.content-legal h1 {
font-size: 50px
}

.content-legal h2 {
font-size: 20px;
margin-top: 32px
}

.content-legal table {
display: block;
overflow-x: auto;
-webkit-overflow-scrolling: touch
}
}

.au-pg {
max-width: 1600px;
margin: 0 auto;
overflow-x: clip
}

.au-pg .drop-in {
animation: dropBounce .55s cubic-bezier(0.4, 0, 0.2, 1) both
}

@keyframes dropBounce {
0% {
opacity: 0;
transform: translateY(-32px)
}

70% {
opacity: 1;
transform: translateY(6px)
}

85% {
transform: translateY(-3px)
}

100% {
opacity: 1;
transform: translateY(0)
}
}

.au-pg .fade-up {
animation: fadeUp .45s cubic-bezier(0.0, 0, 0.2, 1) both
}

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

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

.au-pg .t-blk {
display: grid;
grid-template-columns: 1fr 1.1fr;
min-height: 560px;
background: #fff;
padding: 64px;
gap: 64px;
align-items: center;
position: relative
}

.au-pg .t-img-wrap {
position: relative;
width: 100%;
height: 480px;
border-radius: 24px;
overflow: hidden
}

.au-pg .t-img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
transition: transform .55s cubic-bezier(0.4, 0, 0.2, 1)
}

.au-pg .t-img-wrap:hover img {
transform: scale(1.04)
}

.au-pg .t-vignette {
position: absolute;
inset: 0;
background: linear-gradient(160deg, transparent 40%, #057f988c 100%);
border-radius: 24px;
pointer-events: none
}

.au-pg .t-dots {
position: absolute;
bottom: 24px;
left: -24px;
display: grid;
grid-template-columns: repeat(5, 8px);
grid-template-rows: repeat(5, 8px);
gap: 8px;
pointer-events: none;
z-index: 1
}

.au-pg .t-dots span {
width: 8px;
height: 8px;
border-radius: 40px;
background: #057F98;
opacity: .25;
display: block
}

.au-pg .t-dots span:nth-child(3n) {
opacity: .5;
background: #EE418D
}

.au-pg .t-txt {
padding: 32px 16px 32px 0;
display: flex;
flex-direction: column;
gap: 32px
}

.au-pg .t-label {
display: inline-block;
font-size: 15px;
line-height: 1.2;
color: #057F98;
letter-spacing: .08em;
border-bottom: 2px solid #EE418D;
padding-bottom: 4px;
width: fit-content
}

.au-pg .t-h1 {
font-size: 68px;
line-height: 1.2;
letter-spacing: -.03em;
color: #111;
margin: 0;
text-shadow: -1px 3px 2px #ee418d12
}

.au-pg .t-h1 .outlined {
-webkit-text-stroke: 2px #EE418D;
color: transparent
}

.au-pg .t-desc {
font-size: 20px;
line-height: 1.8;
color: #222;
margin: 0;
max-width: 480px
}

.au-pg .t-stat-row {
display: flex;
flex-direction: row;
gap: 32px;
align-items: flex-start
}

.au-pg .t-stat {
display: flex;
flex-direction: column;
gap: 4px
}

.au-pg .t-stat-num {
font-size: 50px;
line-height: 1.2;
letter-spacing: -.04em;
color: #057F98;
font-weight: 700
}

.au-pg .t-stat-lbl {
font-size: 15px;
line-height: 1.2;
color: #444
}

.au-pg .ms-strip {
background: #057F98;
clip-path: polygon(0 0, 100% 0, 100% 88%, 0 100%);
padding: 64px 64px 96px;
display: flex;
flex-direction: column;
gap: 32px
}

.au-pg .ms-inner {
display: grid;
grid-template-columns: 1.4fr 1fr;
gap: 64px;
align-items: start;
max-width: 1600px
}

.au-pg .ms-h2 {
font-size: 50px;
line-height: 1.2;
letter-spacing: -.025em;
color: #F5F8D5;
margin: 0;
text-shadow: -1px 4px 20px #ee418d14
}

.au-pg .ms-h2 .outlined {
-webkit-text-stroke: 2px #F5F8D5;
color: transparent
}

.au-pg .ms-body {
display: flex;
flex-direction: column;
gap: 16px
}

.au-pg .ms-p {
font-size: 20px;
line-height: 1.8;
color: #F5F8D5;
margin: 0
}

.au-pg .ms-aside {
display: flex;
flex-direction: column;
gap: 32px;
padding-top: 8px
}

.au-pg .ms-pill {
background: #f5f8d51f;
border-radius: 14px;
padding: 16px 32px;
display: flex;
flex-direction: row;
gap: 16px;
align-items: flex-start;
box-shadow: inset -1px 3px 2px 0 #ee418d12;
transition: background .25s cubic-bezier(0.4, 0, 0.2, 1)
}

.au-pg .ms-pill:hover {
background: #f5f8d533
}

.au-pg .ms-icon {
width: 32px;
height: 32px;
flex-shrink: 0;
margin-top: 4px
}

.au-pg .ms-pill-txt {
display: flex;
flex-direction: column;
gap: 4px
}

.au-pg .ms-pill-h {
font-size: 15px;
line-height: 1.2;
color: #F5F8D5;
font-weight: 700;
letter-spacing: .04em
}

.au-pg .ms-pill-p {
font-size: 15px;
line-height: 1.8;
color: #f5f8d5cc;
margin: 0
}

.au-pg .ppl-blk {
background: #F5F8D5;
padding: 64px;
display: flex;
flex-direction: column;
gap: 32px
}

.au-pg .ppl-head {
display: flex;
flex-direction: row;
align-items: flex-end;
justify-content: space-between;
gap: 32px
}

.au-pg .ppl-h2 {
font-size: 50px;
line-height: 1.2;
letter-spacing: -.025em;
color: #111;
margin: 0;
text-shadow: -1px 3px 2px #057f9812
}

.au-pg .ppl-h2 .outlined {
-webkit-text-stroke: 2px #057F98;
color: transparent
}

.au-pg .ppl-sub {
font-size: 20px;
line-height: 1.8;
color: #333;
max-width: 420px;
margin: 0
}

.au-pg .ppl-grid {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 32px
}

.au-pg .ppl-card {
background: #fff;
border-radius: 14px;
overflow: hidden;
box-shadow: -1px 4px 20px 0 #ee418d14;
transition: box-shadow .2s cubic-bezier(0.4, 0, 0.2, 1), transform .2s cubic-bezier(0.4, 0, 0.2, 1);
position: relative
}

.au-pg .ppl-card:hover {
box-shadow: -1px 8px 52px 0 #ee418d1a;
transform: translateY(-4px)
}

.au-pg .ppl-img-wrap {
width: 100%;
height: 240px;
overflow: hidden;
position: relative
}

.au-pg .ppl-img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
transition: transform .45s cubic-bezier(0.4, 0, 0.2, 1)
}

.au-pg .ppl-card:hover .ppl-img-wrap img {
transform: scale(1.06)
}

.au-pg .ppl-card-body {
padding: 16px 32px 32px;
display: flex;
flex-direction: column;
gap: 8px
}

.au-pg .ppl-name {
font-size: 20px;
line-height: 1.2;
color: #111;
margin: 0;
font-weight: 700
}

.au-pg .ppl-role {
font-size: 15px;
line-height: 1.2;
color: #057F98;
font-weight: 600
}

.au-pg .ppl-bio {
font-size: 15px;
line-height: 1.8;
color: #333;
margin: 0
}

.au-pg .ppl-corner {
position: absolute;
top: 16px;
right: 16px;
width: 32px;
height: 32px
}

.au-pg .ppl-corner-sq {
width: 14px;
height: 14px;
border-radius: 3px;
border: 2px solid #EE418D;
position: absolute;
top: 0;
right: 0
}

.au-pg .ppl-corner-sq2 {
width: 14px;
height: 14px;
border-radius: 3px;
border: 2px solid #057F98;
position: absolute;
bottom: 0;
left: 0
}

.au-pg .val-blk {
background: #fff;
padding: 64px;
display: grid;
grid-template-columns: 1fr 1.6fr;
gap: 64px;
align-items: start
}

.au-pg .val-left {
display: flex;
flex-direction: column;
gap: 32px;
position: sticky;
top: 32px
}

.au-pg .val-h2 {
font-size: 50px;
line-height: 1.2;
letter-spacing: -.025em;
color: #111;
margin: 0;
text-shadow: -1px 3px 2px #ee418d12
}

.au-pg .val-h2 .outlined {
-webkit-text-stroke: 2px #EE418D;
color: transparent
}

.au-pg .val-img-wrap {
width: 100%;
height: 320px;
border-radius: 24px;
overflow: hidden;
position: relative
}

.au-pg .val-img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
transition: transform .5s cubic-bezier(0.4, 0, 0.2, 1)
}

.au-pg .val-img-wrap:hover img {
transform: scale(1.05)
}

.au-pg .val-img-overlay {
position: absolute;
inset: 0;
background: linear-gradient(200deg, transparent 50%, #ee418d59 100%);
border-radius: 24px;
pointer-events: none
}

.au-pg .val-right {
display: flex;
flex-direction: column;
gap: 16px
}

.au-pg .val-item {
border-radius: 8px;
padding: 32px;
background: #F5F8D5;
box-shadow: inset -1px 3px 2px 0 #057f9812;
display: grid;
grid-template-columns: 48px 1fr;
gap: 16px;
align-items: start;
transition: background .2s cubic-bezier(0.4, 0, 0.2, 1);
position: relative
}

.au-pg .val-item::before {
content: '';
position: absolute;
top: 8px;
left: 8px;
width: 12px;
height: 12px;
border-top: 2px solid #EE418D;
border-left: 2px solid #EE418D;
border-radius: 3px 0 0 0
}

.au-pg .val-item::after {
content: '';
position: absolute;
bottom: 8px;
right: 8px;
width: 12px;
height: 12px;
border-bottom: 2px solid #057F98;
border-right: 2px solid #057F98;
border-radius: 0 0 3px 0
}

.au-pg .val-item:hover {
background: #eef5c0
}

.au-pg .val-num {
font-size: 50px;
line-height: 1.2;
letter-spacing: -.05em;
color: #EE418D;
font-weight: 700;
opacity: .35
}

.au-pg .val-txt {
display: flex;
flex-direction: column;
gap: 8px
}

.au-pg .val-h4 {
font-size: 20px;
line-height: 1.2;
color: #111;
margin: 0;
font-weight: 700
}

.au-pg .val-p {
font-size: 15px;
line-height: 1.8;
color: #333;
margin: 0
}

.au-pg .ms-icon .ico-def {
display: block
}

.au-pg .ms-icon .ico-alt {
display: none
}

.au-pg .ms-pill:hover .ms-icon .ico-def {
display: none
}

.au-pg .ms-pill:hover .ms-icon .ico-alt {
display: block
}

@media (max-width: 900px) {
.au-pg .t-blk {
grid-template-columns: 1fr;
padding: 32px;
gap: 32px;
min-height: unset
}

.au-pg .t-img-wrap {
height: 280px
}

.au-pg .t-h1 {
font-size: 50px
}

.au-pg .ms-strip {
padding: 32px 32px 64px
}

.au-pg .ms-inner {
grid-template-columns: 1fr;
gap: 32px
}

.au-pg .ppl-blk {
padding: 32px
}

.au-pg .ppl-grid {
grid-template-columns: 1fr;
gap: 16px
}

.au-pg .ppl-head {
flex-direction: column;
align-items: flex-start
}

.au-pg .val-blk {
grid-template-columns: 1fr;
padding: 32px;
gap: 32px
}

.au-pg .val-left {
position: static
}

.au-pg .val-img-wrap {
height: 200px
}

.au-pg .t-dots {
display: none
}
}

@media (max-width: 600px) {
.au-pg .t-h1 {
font-size: 50px
}

.au-pg .ms-h2 {
font-size: 50px
}

.au-pg .ppl-h2 {
font-size: 50px
}

.au-pg .val-h2 {
font-size: 50px
}

.au-pg .t-stat-row {
flex-direction: column;
gap: 16px
}

.au-pg .t-blk {
padding: 16px
}

.au-pg .ms-strip {
padding: 32px 16px 64px
}

.au-pg .ppl-blk {
padding: 16px
}

.au-pg .val-blk {
padding: 16px
}
}

.cu-pg {
max-width: 1600px;
margin: 0 auto;
overflow-x: clip
}

.cu-pg .top-band {
padding: 64px 64px 96px;
background: linear-gradient(135deg, #fff 50%, #F5F8D5 100%);
position: relative
}

.cu-pg .top-band::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: linear-gradient(#057f980a 1px, transparent 1px), linear-gradient(90deg, #057f980a 1px, transparent 1px), linear-gradient(#ee418d06 2px, transparent 2px), linear-gradient(90deg, #ee418d06 2px, transparent 2px);
background-size: 40px 40px, 40px 40px, 120px 120px, 120px 120px;
pointer-events: none
}

.cu-pg .top-band::after {
content: '';
position: absolute;
left: 64px;
top: 32px;
width: 3px;
height: 80px;
background: linear-gradient(180deg, #EE418D 50%, #057F98 50%);
border-radius: 3px
}

.cu-pg .top-frame {
position: relative;
max-width: 860px
}

.cu-pg .top-frame::before {
content: '';
position: absolute;
top: -16px;
left: -16px;
width: 60px;
height: 60px;
border-top: 2px solid #EE418D;
border-left: 2px solid #EE418D;
border-radius: 3px 0 0 0;
pointer-events: none
}

.cu-pg .top-frame::after {
content: '';
position: absolute;
bottom: -16px;
right: -16px;
width: 60px;
height: 60px;
border-bottom: 2px solid #057F98;
border-right: 2px solid #057F98;
border-radius: 0 0 3px 0;
pointer-events: none
}

.cu-pg .pg-tag {
display: inline-block;
font-size: 15px;
line-height: 1.2;
letter-spacing: .08em;
color: #057F98;
text-transform: uppercase;
margin-bottom: 16px;
padding: 4px 16px;
border: 1px solid #057f984d;
border-radius: 3px
}

.cu-pg .pg-h1 {
font-size: 68px;
line-height: 1.2;
letter-spacing: -.03em;
color: #111827;
margin: 0 0 16px;
text-shadow: 2px 2px 0 #ee418d14
}

.cu-pg .pg-h1 span {
display: inline-block;
transition: color .18s cubic-bezier(0.4, 0, 0.2, 1);
cursor: default
}

.cu-pg .pg-h1 span:hover {
color: #EE418D
}

.cu-pg .pg-quote {
font-size: 20px;
line-height: 1.8;
color: #374151;
margin: 0;
max-width: 600px
}

.cu-pg .big-quote-mark {
position: absolute;
right: 64px;
top: 32px;
font-size: 200px;
line-height: 1;
color: #ee418d0f;
pointer-events: none;
user-select: none;
font-style: italic;
font-weight: 700
}

.cu-pg .divider-curve {
display: block;
width: 100%;
overflow: hidden;
line-height: 0
}

.cu-pg .divider-curve svg {
display: block;
width: 100%
}

.cu-pg .form-area {
padding: 64px;
background: #fff;
position: relative
}

.cu-pg .form-area::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: radial-gradient(ellipse 80% 60% at 50% 0%, #f5f8d580 0%, transparent 70%);
pointer-events: none
}

.cu-pg .fa-inner {
position: relative;
display: grid;
grid-template-columns: 1fr 1fr;
gap: 64px;
max-width: 1200px;
margin: 0 auto
}

.cu-pg .contact-col {
display: flex;
flex-direction: column;
gap: 32px
}

.cu-pg .col-head {
font-size: 50px;
line-height: 1.2;
letter-spacing: -.025em;
color: #111827;
margin: 0 0 8px;
text-shadow: 1px 1px 0 #057f981a
}

.cu-pg .col-sub {
font-size: 15px;
line-height: 1.8;
color: #374151;
margin: 0
}

.cu-pg .c-items {
display: flex;
flex-direction: column;
gap: 16px
}

.cu-pg .c-item {
display: flex;
flex-direction: column;
gap: 4px;
padding: 16px;
border-radius: 8px;
background: #F5F8D5;
position: relative;
overflow: hidden;
transition: box-shadow .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.cu-pg .c-item::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 0;
height: 100%;
background: #ee418d0f;
transition: width .25s cubic-bezier(0.0, 0, 0.2, 1);
border-radius: 8px
}

.cu-pg .c-item:hover::before {
width: 100%
}

.cu-pg .c-item:hover {
box-shadow: -1px 4px 20px 0 #ee418d14
}

.cu-pg .c-label {
font-size: 15px;
line-height: 1.2;
color: #057F98;
letter-spacing: .06em;
text-transform: uppercase
}

.cu-pg .c-val {
font-size: 20px;
line-height: 1.2;
color: #111827;
text-decoration: none;
transition: color .18s cubic-bezier(0.4, 0, 0.2, 1)
}

.cu-pg .c-val:hover {
color: #EE418D
}

.cu-pg .form-col {
display: flex;
flex-direction: column;
gap: 32px
}

.cu-pg .form-card {
background: #fff;
border-radius: 14px;
padding: 32px;
box-shadow: -1px 8px 52px 0 #ee418d1a;
box-sizing: border-box
}

.cu-pg .form-card form {
display: flex;
flex-direction: column;
gap: 16px
}

.cu-pg .f-row {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px
}

.cu-pg .f-group {
display: flex;
flex-direction: column;
gap: 8px
}

.cu-pg .f-group label {
font-size: 15px;
line-height: 1.2;
color: #374151;
letter-spacing: .02em
}

.cu-pg .f-group input[type="text"],
.cu-pg .f-group input[type="tel"] {
padding: 16px;
border: 1.5px solid #d1d5db;
border-radius: 8px;
font-size: 15px;
line-height: 1.2;
color: #111827;
background: #fff;
outline: none;
transition: border-color .2s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .2s cubic-bezier(0.4, 0, 0.2, 1);
box-sizing: border-box;
width: 100%
}

.cu-pg .f-group input[type="text"]::placeholder,
.cu-pg .f-group input[type="tel"]::placeholder {
color: #9ca3af
}

.cu-pg .f-group input[type="text"]:focus,
.cu-pg .f-group input[type="tel"]:focus {
border-color: #057F98;
box-shadow: -1px 3px 2px 0 #057f9812
}

.cu-pg .interest-label {
font-size: 15px;
line-height: 1.2;
color: #374151;
margin-bottom: 4px
}

.cu-pg .checks {
display: flex;
flex-direction: column;
gap: 8px
}

.cu-pg .chk-row {
display: flex;
flex-direction: row;
align-items: center;
gap: 8px;
cursor: pointer
}

.cu-pg .chk-row input[type="checkbox"] {
width: 20px;
height: 20px;
accent-color: #EE418D;
cursor: pointer;
flex-shrink: 0
}

.cu-pg .chk-row span {
font-size: 15px;
line-height: 1.8;
color: #374151
}

.cu-pg .privacy-row {
display: flex;
flex-direction: row;
align-items: flex-start;
gap: 8px;
padding: 16px;
background: #f5f8d5cc;
border-radius: 8px
}

.cu-pg .privacy-row input[type="checkbox"] {
width: 20px;
height: 20px;
accent-color: #057F98;
cursor: pointer;
flex-shrink: 0;
margin-top: 2px
}

.cu-pg .privacy-row span {
font-size: 15px;
line-height: 1.8;
color: #374151
}

.cu-pg .privacy-row a {
color: #057F98;
text-decoration: underline;
transition: color .18s cubic-bezier(0.4, 0, 0.2, 1)
}

.cu-pg .privacy-row a:hover {
color: #EE418D
}

.cu-pg .submit-wrap {
display: flex;
flex-direction: row;
align-items: center
}

.cu-pg .sub-btn {
padding: 16px 32px;
background: #EE418D;
color: #fff;
font-size: 20px;
line-height: 1.2;
border: none;
border-radius: 40px;
cursor: pointer;
letter-spacing: .01em;
transition: padding .2s cubic-bezier(0.4, 0, 0.2, 1), background .18s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .2s cubic-bezier(0.4, 0, 0.2, 1);
position: relative;
outline: none
}

.cu-pg .sub-btn::after {
content: '';
position: absolute;
inset: 0;
border-radius: 40px;
border: 2px solid transparent;
transition: border-color .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.cu-pg .sub-btn:hover {
padding: 16px 48px;
background: #d63580;
box-shadow: -1px 4px 20px 0 #ee418d14
}

.cu-pg .sub-btn:focus::after {
border-color: #057F98
}

.cu-pg .sub-btn:active {
background: #c02e72
}

.cu-pg .form-card .f-head {
font-size: 20px;
line-height: 1.2;
color: #111827;
margin: 0 0 16px;
letter-spacing: -.01em
}

.cu-pg .addr-block {
padding: 16px;
border-radius: 8px;
background: #fff;
box-shadow: -1px 3px 2px 0 #057f9812;
display: flex;
flex-direction: column;
gap: 4px
}

.cu-pg .addr-block .c-label {
font-size: 15px
}

.cu-pg .addr-block address {
font-style: normal;
font-size: 15px;
line-height: 1.8;
color: #374151
}

@media (max-width: 960px) {
.cu-pg .top-band {
padding: 32px 32px 64px
}

.cu-pg .top-band::after {
left: 32px
}

.cu-pg .big-quote-mark {
right: 32px;
font-size: 120px
}

.cu-pg .pg-h1 {
font-size: 50px
}

.cu-pg .form-area {
padding: 32px 32px 64px
}

.cu-pg .fa-inner {
grid-template-columns: 1fr;
gap: 32px
}
}

@media (max-width: 600px) {
.cu-pg .top-band {
padding: 32px 16px 64px
}

.cu-pg .top-band::after {
left: 16px
}

.cu-pg .top-frame::before,
.cu-pg .top-frame::after {
display: none
}

.cu-pg .pg-h1 {
font-size: 50px
}

.cu-pg .big-quote-mark {
display: none
}

.cu-pg .form-area {
padding: 32px 16px 64px
}

.cu-pg .f-row {
grid-template-columns: 1fr
}

.cu-pg .form-card {
padding: 16px
}

.cu-pg .col-head {
font-size: 50px
}
}

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

.lp-prog .prog-title {
max-width: 1600px;
margin: 0 auto;
padding: 64px 32px;
text-align: center
}

.lp-prog .prog-title .pt-label {
display: inline-block;
font-size: 15px;
line-height: 1.8;
color: #057F98;
border: 1px solid #057F98;
border-radius: 40px;
padding: 4px 16px;
margin-bottom: 16px;
letter-spacing: .04em
}

.lp-prog .prog-title h1 {
font-size: 68px;
line-height: 1.2;
letter-spacing: -.03em;
color: #111;
margin: 0 auto 16px;
max-width: 900px;
text-shadow: 1px 1px 0 #ee418d1a
}

.lp-prog .prog-title .pt-desc {
font-size: 20px;
line-height: 1.8;
color: #2a2a2a;
max-width: 620px;
margin: 0 auto 32px
}

.lp-prog .prog-title .pt-actions {
display: flex;
flex-direction: row;
gap: 16px;
justify-content: center;
flex-wrap: wrap;
margin-bottom: 48px
}

.lp-prog .prog-title .pt-actions .act-primary {
display: inline-block;
font-size: 15px;
line-height: 1.8;
background: #EE418D;
color: #fff;
border-radius: 8px;
padding: 8px 32px;
text-decoration: none;
border: none;
transition: padding .22s cubic-bezier(0.4, 0, 0.2, 1), background .18s cubic-bezier(0.4, 0, 0.2, 1)
}

.lp-prog .prog-title .pt-actions .act-primary:hover {
padding: 8px 40px;
background: #c7306f
}

.lp-prog .prog-title .pt-actions .act-secondary {
display: inline-block;
font-size: 15px;
line-height: 1.8;
color: #057F98;
border-radius: 8px;
padding: 8px 32px;
text-decoration: none;
border: 1.5px solid #057F98;
transition: padding .25s cubic-bezier(0.0, 0, 0.2, 1), background .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.lp-prog .prog-title .pt-actions .act-secondary:hover {
padding: 8px 40px;
background: #F5F8D5
}

.lp-prog .prog-title .pt-img-wrap {
max-width: 960px;
margin: 0 auto;
border-radius: 14px;
overflow: hidden;
width: 100%;
height: 480px;
position: relative;
box-shadow: -1px 8px 52px 0 #ee418d1a
}

.lp-prog .prog-title .pt-img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: saturate(0.55) contrast(1.1);
mix-blend-mode: normal
}

.lp-prog .prog-title .pt-img-wrap::after {
content: "";
position: absolute;
inset: 0;
background: linear-gradient(135deg, #ee418d47 50%, #057f9847 50%);
border-radius: 14px;
pointer-events: none
}

.lp-prog .prog-divider {
width: 100%;
height: 48px;
background: linear-gradient(to bottom, #fff 0%, #F5F8D5 100%);
display: block
}

.lp-prog .prog-detail {
background: #F5F8D5;
width: 100%;
padding: 0
}

.lp-prog .prog-detail .pd-full {
max-width: 1600px;
margin: 0 auto;
padding: 64px 32px
}

.lp-prog .prog-detail .pd-top {
display: grid;
grid-template-columns: 1fr 1fr 1fr;
gap: 32px;
align-items: start;
margin-bottom: 64px
}

.lp-prog .prog-detail .pd-lead {
grid-column: 1 / 2
}

.lp-prog .prog-detail .pd-lead h2 {
font-size: 50px;
line-height: 1.2;
letter-spacing: -.025em;
color: #111;
margin: 0 0 16px;
text-shadow: 1px 2px 0 #057f981a
}

.lp-prog .prog-detail .pd-lead .pd-sub {
font-size: 15px;
line-height: 1.8;
color: #2a2a2a;
margin: 0
}

.lp-prog .prog-detail .pd-metric {
grid-column: 2 / 3;
background: #fff;
border-radius: 24px;
padding: 32px;
box-shadow: -1px 4px 20px 0 #057f9814;
display: flex;
flex-direction: column;
gap: 8px;
align-self: stretch
}

.lp-prog .prog-detail .pd-metric .met-num {
font-size: 68px;
line-height: 1.2;
letter-spacing: -.04em;
color: #EE418D;
display: block
}

.lp-prog .prog-detail .pd-metric .met-lbl {
font-size: 20px;
line-height: 1.8;
color: #111;
display: block
}

.lp-prog .prog-detail .pd-metric .met-ctx {
font-size: 15px;
line-height: 1.8;
color: #444
}

.lp-prog .prog-detail .pd-text {
grid-column: 3 / 4;
display: flex;
flex-direction: column;
gap: 16px
}

.lp-prog .prog-detail .pd-text p {
font-size: 15px;
line-height: 1.8;
color: #2a2a2a;
margin: 0
}

.lp-prog .prog-detail .pd-cols {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 32px;
align-items: start
}

.lp-prog .prog-detail .pd-col-a {
background: #EE418D;
border-radius: 14px;
padding: 32px;
display: flex;
flex-direction: column;
gap: 16px
}

.lp-prog .prog-detail .pd-col-a h3 {
font-size: 20px;
line-height: 1.2;
color: #fff;
margin: 0;
letter-spacing: -.01em
}

.lp-prog .prog-detail .pd-col-a p {
font-size: 15px;
line-height: 1.8;
color: #fff;
margin: 0
}

.lp-prog .prog-detail .pd-col-b {
display: flex;
flex-direction: column;
gap: 16px
}

.lp-prog .prog-detail .pd-col-b .img-wrap {
border-radius: 14px;
overflow: hidden;
width: 100%;
height: 260px
}

.lp-prog .prog-detail .pd-col-b .img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
display: block;
filter: saturate(0.6);
transition: filter .28s cubic-bezier(0.4, 0, 0.2, 1)
}

.lp-prog .prog-detail .pd-col-b .img-wrap:hover img {
filter: saturate(1)
}

.lp-prog .prog-detail .pd-col-b .col-b-text h4 {
font-size: 20px;
line-height: 1.2;
color: #111;
margin: 0 0 8px;
letter-spacing: -.01em
}

.lp-prog .prog-detail .pd-col-b .col-b-text p {
font-size: 15px;
line-height: 1.8;
color: #2a2a2a;
margin: 0
}

.lp-prog .prog-detail .pd-stripe-item {
position: relative;
border-radius: 8px;
padding: 16px;
background: #fff;
box-shadow: -1px 3px 2px 0 #ee418d12;
overflow: hidden;
transition: box-shadow .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.lp-prog .prog-detail .pd-stripe-item::before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 4px;
height: 0;
background: #EE418D;
border-radius: 3px 0 0 3px;
transition: height .25s cubic-bezier(0.0, 0, 0.2, 1)
}

.lp-prog .prog-detail .pd-stripe-item:hover::before {
height: 100%
}

.lp-prog .prog-detail .pd-stripe-item:hover {
box-shadow: -1px 4px 20px 0 #ee418d14
}

.lp-prog .prog-detail .pd-stripe-item h5 {
font-size: 15px;
line-height: 1.2;
color: #111;
margin: 0 0 4px;
letter-spacing: -.01em
}

.lp-prog .prog-detail .pd-stripe-item p {
font-size: 15px;
line-height: 1.8;
color: #444;
margin: 0
}

.lp-prog .prog-detail .pd-items {
display: flex;
flex-direction: column;
gap: 8px
}

.lp-prog .prog-reveal {
animation: wipe-in .28s cubic-bezier(0.4, 0, 0.2, 1) both
}

@keyframes wipe-in {
from {
clip-path: inset(0 100% 0 0)
}

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

@media (max-width: 900px) {
.lp-prog .prog-title h1 {
font-size: 50px
}

.lp-prog .prog-title .pt-img-wrap {
height: 280px
}

.lp-prog .prog-detail .pd-top {
grid-template-columns: 1fr
}

.lp-prog .prog-detail .pd-lead {
grid-column: 1
}

.lp-prog .prog-detail .pd-metric {
grid-column: 1
}

.lp-prog .prog-detail .pd-text {
grid-column: 1
}

.lp-prog .prog-detail .pd-cols {
grid-template-columns: 1fr
}
}

@media (max-width: 600px) {
.lp-prog .prog-title h1 {
font-size: 50px
}

.lp-prog .prog-title .pt-img-wrap {
height: 200px
}

.lp-prog .prog-detail .pd-full {
padding: 32px 16px
}

.lp-prog .prog-title {
padding: 32px 16px
}
}

.frt {
max-width: 1600px;
margin: 0 auto;
overflow-x: clip
}

.frt .t-blk {
display: grid;
grid-template-columns: 1fr 1fr;
min-height: 580px;
position: relative;
background: #fff;
padding: 64px;
gap: 64px;
align-items: center
}

.frt .t-blk::before {
content: '';
position: absolute;
inset: 0;
background-image: radial-gradient(circle, #057F98 1px, transparent 1px);
background-size: 28px 28px;
opacity: .07;
pointer-events: none
}

.frt .t-blk::after {
content: '';
position: absolute;
top: 0;
right: 0;
width: 0;
height: 0;
border-style: solid;
border-width: 0 80px 80px 0;
border-color: transparent #EE418D transparent transparent;
pointer-events: none
}

.frt .t-txt {
position: relative;
z-index: 1
}

.frt .t-eyebrow {
display: inline-block;
font-size: 15px;
line-height: 1.8;
color: #057F98;
letter-spacing: .08em;
text-transform: uppercase;
margin-bottom: 16px;
border-bottom: 2px solid #EE418D;
padding-bottom: 4px
}

.frt .t-h1 {
font-size: 68px;
line-height: 1.2;
letter-spacing: -.04em;
color: #111;
margin-bottom: 32px;
text-shadow: 1px 1px 0 #ee418d1f;
animation: track-in .28s cubic-bezier(0.4, 0, 0.2, 1) both
}

@keyframes track-in {
from {
letter-spacing: .12em;
opacity: .4
}

to {
letter-spacing: -.04em;
opacity: 1
}
}

.frt .t-lead {
font-size: 20px;
line-height: 1.8;
color: #222;
margin-bottom: 32px
}

.frt .t-sub {
font-size: 15px;
line-height: 1.8;
color: #444;
margin-bottom: 32px
}

.frt .t-link {
display: inline-block;
font-size: 15px;
line-height: 1.2;
color: #fff;
background: #EE418D;
padding: 16px 32px;
border-radius: 8px;
text-decoration: none;
transition: padding .22s cubic-bezier(0.4, 0, 0.2, 1), background .18s cubic-bezier(0.0, 0, 0.2, 1)
}

.frt .t-link:hover {
padding: 16px 48px;
background: #057F98
}

.frt .t-img-col {
position: relative;
z-index: 1
}

.frt .t-img-wrap {
width: 100%;
height: 480px;
overflow: hidden;
border-radius: 14px;
box-shadow: -1px 8px 52px 0 #ee418d1a
}

.frt .t-img-wrap img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
filter: saturate(1.3) hue-rotate(0deg) contrast(1.05);
display: block
}

.frt .t-corner-dec {
position: absolute;
bottom: -16px;
left: -16px;
width: 0;
height: 0;
border-style: solid;
border-width: 56px 0 0 56px;
border-color: transparent transparent transparent #F5F8D5;
pointer-events: none
}

.frt .grad-sec {
background: #F5F8D5;
padding: 64px;
position: relative
}

.frt .grad-sec::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 0;
height: 0;
border-style: solid;
border-width: 60px 60px 0 0;
border-color: #EE418D transparent transparent;
pointer-events: none
}

.frt .grad-sec-inner {
display: grid;
grid-template-columns: 2fr 3fr;
gap: 64px;
align-items: start;
max-width: 1600px
}

.frt .grad-h2 {
font-size: 50px;
line-height: 1.2;
letter-spacing: -.03em;
color: #111;
text-shadow: 2px 2px 0 #057f981a;
margin-bottom: 16px
}

.frt .grad-label {
font-size: 15px;
line-height: 1.8;
color: #057F98;
margin-bottom: 32px
}

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

.frt .grad-list li {
font-size: 20px;
line-height: 1.8;
color: #222;
padding: 16px;
border-radius: 8px;
background: #fff;
box-shadow: -1px 3px 2px 0 #ee418d12;
transition: background .2s cubic-bezier(0.4, 0, 0.2, 1), color .2s cubic-bezier(0.4, 0, 0.2, 1);
cursor: default
}

.frt .grad-list li:hover {
background: #EE418D;
color: #fff
}

.frt .grad-img {
width: 100%;
height: 380px;
overflow: hidden;
border-radius: 14px
}

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

.frt .long-sec {
background: #fff;
padding: 64px;
position: relative
}

.frt .long-grid {
display: grid;
grid-template-columns: 3fr 2fr;
gap: 64px;
align-items: center
}

.frt .long-h2 {
font-size: 50px;
line-height: 1.2;
letter-spacing: -.03em;
color: #111;
text-shadow: -1px 2px 0 #ee418d17;
margin-bottom: 16px
}

.frt .long-p {
font-size: 15px;
line-height: 1.8;
color: #333;
margin-bottom: 16px
}

.frt .metrics-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 16px;
margin-top: 32px
}

.frt .metric-cell {
background: #057F98;
border-radius: 14px;
padding: 32px 16px;
text-align: center;
box-shadow: -1px 4px 20px 0 #057f9814
}

.frt .metric-cell.alt {
background: #EE418D
}

.frt .metric-num {
font-size: 50px;
line-height: 1.2;
color: #fff;
letter-spacing: -.04em;
display: block
}

.frt .metric-lbl {
font-size: 15px;
line-height: 1.8;
color: #ffffffe0;
display: block;
margin-top: 4px
}

.frt .long-img {
width: 100%;
height: 420px;
overflow: hidden;
border-radius: 24px;
box-shadow: -1px 8px 52px 0 #057f981a
}

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

.frt .avail-sec {
background: #057F98;
padding: 64px;
position: relative;
overflow: hidden
}

.frt .avail-sec::after {
content: '';
position: absolute;
bottom: 0;
right: 0;
width: 0;
height: 0;
border-style: solid;
border-width: 0 0 72px 72px;
border-color: transparent transparent #F5F8D5;
pointer-events: none
}

.frt .avail-head {
text-align: center;
margin-bottom: 64px
}

.frt .avail-h2 {
font-size: 50px;
line-height: 1.2;
letter-spacing: -.03em;
color: #fff;
text-shadow: 2px 2px 0 #ee418d40;
margin-bottom: 16px
}

.frt .avail-sub {
font-size: 20px;
line-height: 1.8;
color: #F5F8D5
}

.frt .avail-cards {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 32px
}

.frt .av-card {
background: #ffffff1a;
border-radius: 14px;
padding: 32px;
box-shadow: inset -1px 3px 2px 0 #ee418d12;
transition: background .25s cubic-bezier(0.4, 0, 0.2, 1)
}

.frt .av-card:hover {
background: #ffffff2e
}

.frt .av-card-num {
font-size: 50px;
line-height: 1.2;
color: #EE418D;
letter-spacing: -.04em;
display: block;
margin-bottom: 8px
}

.frt .av-card-title {
font-size: 20px;
line-height: 1.2;
color: #fff;
margin-bottom: 16px
}

.frt .av-card-p {
font-size: 15px;
line-height: 1.8;
color: #ffffffd1
}

.frt .av-card-link {
display: inline-block;
margin-top: 16px;
font-size: 15px;
line-height: 1.2;
color: #F5F8D5;
text-decoration: underline;
text-underline-offset: 3px;
transition: color .18s cubic-bezier(0.0, 0, 0.2, 1)
}

.frt .av-card-link:hover {
color: #EE418D
}

.frt .appr-sec {
background: #fff;
padding: 64px;
background-image: linear-gradient(#057F9820 1px, transparent 1px), linear-gradient(90deg, #057F9820 1px, transparent 1px), linear-gradient(#057F9808 1px, transparent 1px), linear-gradient(90deg, #057F9808 1px, transparent 1px);
background-size: 64px 64px, 64px 64px, 16px 16px, 16px 16px
}

.frt .appr-inner {
display: flex;
flex-direction: column;
gap: 32px;
max-width: 860px;
margin: 0 auto;
text-align: center
}

.frt .appr-h2 {
font-size: 50px;
line-height: 1.2;
letter-spacing: -.03em;
color: #111;
text-shadow: 1px 1px 0 #057f981f
}

.frt .appr-p {
font-size: 15px;
line-height: 1.8;
color: #333
}

.frt .appr-steps {
display: flex;
flex-direction: row;
gap: 16px;
justify-content: center;
flex-wrap: wrap;
margin-top: 16px
}

.frt .appr-step {
background: #F5F8D5;
border-radius: 24px;
padding: 32px;
flex: 1;
min-width: 200px;
max-width: 280px;
text-align: left;
box-shadow: -1px 4px 20px 0 #057f9814;
transition: box-shadow .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.frt .appr-step:hover {
box-shadow: -1px 8px 52px 0 #ee418d1a
}

.frt .appr-step-n {
font-size: 20px;
line-height: 1.2;
color: #EE418D;
font-weight: 700;
margin-bottom: 8px;
display: block
}

.frt .appr-step-t {
font-size: 15px;
line-height: 1.8;
color: #222
}

.frt .curr-sec {
background: #F5F8D5;
padding: 64px;
position: relative
}

.frt .curr-sec::before {
content: '';
position: absolute;
top: 0;
right: 0;
width: 0;
height: 0;
border-style: solid;
border-width: 0 64px 64px 0;
border-color: transparent #EE418D transparent transparent;
pointer-events: none
}

.frt .curr-grid {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 64px;
align-items: center
}

.frt .curr-img {
width: 100%;
height: 400px;
overflow: hidden;
border-radius: 14px;
box-shadow: -1px 8px 52px 0 #ee418d1a
}

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

.frt .curr-h2 {
font-size: 50px;
line-height: 1.2;
letter-spacing: -.03em;
color: #111;
text-shadow: 1px 2px 0 #ee418d1a;
margin-bottom: 16px
}

.frt .curr-p {
font-size: 15px;
line-height: 1.8;
color: #333;
margin-bottom: 16px
}

.frt .curr-badges {
display: flex;
flex-direction: row;
flex-wrap: wrap;
gap: 8px;
margin-top: 32px
}

.frt .curr-badge {
font-size: 15px;
line-height: 1.2;
color: #057F98;
background: #fff;
border-radius: 40px;
padding: 8px 16px;
box-shadow: -1px 3px 2px 0 #057f9812
}

@media (max-width: 900px) {
.frt .t-blk {
grid-template-columns: 1fr;
padding: 32px;
gap: 32px
}

.frt .t-h1 {
font-size: 50px
}

.frt .t-img-wrap {
height: 280px
}

.frt .grad-sec {
padding: 32px
}

.frt .grad-sec-inner {
grid-template-columns: 1fr;
gap: 32px
}

.frt .grad-img {
height: 240px
}

.frt .long-sec {
padding: 32px
}

.frt .long-grid {
grid-template-columns: 1fr;
gap: 32px
}

.frt .long-img {
height: 280px
}

.frt .avail-sec {
padding: 32px
}

.frt .avail-cards {
grid-template-columns: 1fr;
gap: 16px
}

.frt .appr-sec {
padding: 32px
}

.frt .curr-sec {
padding: 32px
}

.frt .curr-grid {
grid-template-columns: 1fr;
gap: 32px
}

.frt .curr-img {
height: 260px
}

.frt .grad-h2,
.frt .long-h2,
.frt .avail-h2,
.frt .appr-h2,
.frt .curr-h2 {
font-size: 50px
}
}

.suc-pg {
min-height: 80vh;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 64px 16px;
background: #fff
}

.suc-pg .suc-wrap {
max-width: 560px;
width: 100%;
text-align: center
}

.suc-pg .suc-icon {
width: 64px;
height: 64px;
margin: 0 auto 32px;
display: block
}

.suc-pg .suc-title {
font-size: 50px;
line-height: 1.2;
letter-spacing: -.02em;
color: #111;
margin: 0 0 16px;
text-shadow: 1px 1px 0 #057f981f
}

.suc-pg .suc-msg {
font-size: 20px;
line-height: 1.8;
color: #333;
margin: 0 0 32px
}

.suc-pg .suc-divider {
width: 48px;
height: 3px;
background: #EE418D;
border-radius: 3px;
margin: 0 auto 32px
}

.suc-pg .suc-note {
font-size: 15px;
line-height: 1.8;
color: #555;
margin: 0 0 32px
}

.suc-pg .suc-btn {
display: inline-block;
font-size: 15px;
line-height: 1.2;
color: #fff;
background: #057F98;
padding: 16px 32px;
border-radius: 8px;
text-decoration: none;
border: none;
cursor: pointer;
transition: padding .2s cubic-bezier(0.4, 0, 0.2, 1), background .18s cubic-bezier(0.0, 0, 0.2, 1);
box-shadow: -1px 3px 2px 0 #057f9812 -1px 4px 20px 0 #057f9814
}

.suc-pg .suc-btn:hover {
background: #046a80;
padding: 16px 40px
}

.suc-pg .suc-btn:focus {
outline: 2px solid #EE418D;
outline-offset: 4px
}